001    package edu.nrao.sss.validation;
002    
003    /**
004     * The reason why an object is to be validated.
005     * <p>
006     * <b>Version Info:</b>
007     * <table style="margin-left:2em">
008     *   <tr><td>$Revision: 329 $</td></tr>
009     *   <tr><td>$Date: 2007-02-06 11:43:05 -0700 (Tue, 06 Feb 2007) $</td></tr>
010     *   <tr><td>$Author: dharland $</td></tr>
011     * </table></p>
012     * 
013     * @author David M. Harland
014     * @since 2007-02-02
015     */
016    public enum ValidationPurpose
017    {
018      /**
019       * Indicates that the strictest possible validation is performed.
020       * In this case the client is indicating that an object is fully
021       * formed and ready for use, and wishes validation to ensure that
022       * the object is properly formed.
023       */
024      CERTIFY_READY_TO_USE,
025      
026      /**
027       * Indicates that the client wishes to cease work on an object and
028       * store it somewhere for later recall.  The client may or may not
029       * have fully formed the object.  The validation performed in this
030       * situation will not treat an incomplete object as dangerously
031       * flawed.
032       */
033      SAVE_IN_REPOSITORY;
034    }