Coverage Report - org.naftulin.configmgr.ConfigurationManagementEntry
 
Classes in this File Line Coverage Branch Coverage Complexity
ConfigurationManagementEntry
N/A
N/A
1
 
 1  
 package org.naftulin.configmgr;
 2  
 
 3  
 import java.io.Serializable;
 4  
 import java.util.Date;
 5  
 
 6  
 import org.naftulin.configmgr.parsers.ConfigEntryParser;
 7  
 
 8  
 /**
 9  
  * Configuration management entry associates a key to a configuration, stored as a content.
 10  
  * In addition to key and content, it registers the file name from which a configuration was read,
 11  
  * whether the configuration is in an error state, and whether or not it was overwritten.
 12  
  * The entry is considered to be in error, if it cannot be parsed from the configuration file.
 13  
  * In such case, instead of the configuration, an exception would be stored in the configuration entry 
 14  
  * content. If the configuration in error is requested, the exception is returned.
 15  
  * The owervritten stands flag is to show whether a configuration was programmatically 
 16  
  * ovewrittend (by using {@link ConfigurationManagement#addConfigurationManagmentEntry(ConfigurationManagementEntry) 
 17  
  * add configuration method}. Otherwise it is false; it is also reset when reload is called
 18  
  * on {@link ConfigurationManagement ConfigurationManagement}. It could also be set by user.
 19  
  * 
 20  
  * @author Henry Naftulin
 21  
  * @since 1.0
 22  
  */
 23  
 public interface ConfigurationManagementEntry extends Serializable {
 24  
         /**
 25  
          * Returns configuration the key associated with this record.
 26  
          * @return configuration the key associated with this record.
 27  
          */
 28  
         String getKey();
 29  
         
 30  
         /**
 31  
          * Returns the file name from where the configuration was read. 
 32  
          * @return the file name from where the configuration was read.
 33  
          */
 34  
         String getFileName();
 35  
         
 36  
         /**
 37  
          * Returns true if the record was overwritten.
 38  
          * @return true if the record was overwritten.
 39  
          */
 40  
         boolean isOverwritten();
 41  
         
 42  
         /**
 43  
          * Returns true if the record is in error state.
 44  
          * @return true if the record is in error state.
 45  
          */
 46  
         boolean isError();        
 47  
         /**
 48  
          * Returns the parsed configuration. 
 49  
          * @return the parsed configuration.
 50  
          */
 51  
         Object getContent();
 52  
         
 53  
         /**
 54  
          * Returns the string representation of this entry.
 55  
          * @return the string representation of this entry.
 56  
          */
 57  
         String toString();
 58  
         
 59  
         /**
 60  
          * Returns the date and time when this entry was created.
 61  
          * @return the date and time when this entry was created.
 62  
          */
 63  
         Date getCreateDate();
 64  
         
 65  
         /**
 66  
          * Returns the date and time when this entry was modified.
 67  
          * @return the date and time when this entry was modified.
 68  
          */
 69  
         Date getModifiedDate();
 70  
         
 71  
         /**
 72  
          * Sets the date the entry was modified.
 73  
          * @param modifiedDate modified date
 74  
          */
 75  
         void setModifiedDate(Date modifiedDate);
 76  
         
 77  
         /**
 78  
          * Returns the processor that parsed the cofiguration from the configuration file.
 79  
          * @return the processor that parsed the cofiguration from the configuration file.
 80  
          */
 81  
         ConfigEntryParser getProcessor();
 82  
         
 83  
         /**
 84  
          * Sets the owerwritten flag.
 85  
          * @param overwritten true if the record was overwritten.
 86  
          */
 87  
         void setOverwritten(boolean overwritten);
 88  
         
 89  
         /**
 90  
          * Returns the configuration type of this entry.
 91  
          * @return the configuration type of this entry.
 92  
          */
 93  
         ConfigurationType getConfigurationType();
 94  
         
 95  
 }