Interface IConfigStore

  • All Superinterfaces:
    ISourceConfigStore, java.io.Serializable

    public interface IConfigStore
    extends ISourceConfigStore
    An interface represents a configuration store. A configuration store is an abstraction of a hierarchical store to keep arbitrary data indexed by string names.

    In the following example:

          param1=value1
          configStore1.param11=value11
          configStore1.param12=value12
          configStore1.subStore1.param111=value111
          configStore1.subStore1.param112=value112
          configStore2.param21=value21
     
    The top config store has parameters param1 and sub-stores configStore1 and configStore2.
    The following illustrates how a config store is used.
     // the top config store is passed to the following method.
     public void init(IConfigStore config) throws EBaseException {
         IConfigStore store = config;
         String valx = config.getString("param1");
         // valx is "value1" <p>
    
         IConfigStore substore1 = config.getSubStore("configStore1");
         String valy = substore1.getString("param11");
         // valy is "value11" <p>
    
         IConfigStore substore2 = config.getSubStore("configStore2");
         String valz = substore2.getString("param21");
         // valz is "value21" <p>
     }
     
    Version:
    $Revision$, $Date$
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      void commit​(boolean createBackup)
      Commits all the data into file immediately.
      java.math.BigInteger getBigInteger​(java.lang.String name)
      Retrieves the given property as a big integer.
      java.math.BigInteger getBigInteger​(java.lang.String name, java.math.BigInteger defval)
      Retrieves the given property as a big integer.
      boolean getBoolean​(java.lang.String name)
      Retrieves the given property as a boolean.
      boolean getBoolean​(java.lang.String name, boolean defval)
      Retrieves the given property as a boolean.
      byte[] getByteArray​(java.lang.String name)
      Retrieves the value of a property as a byte array.
      byte[] getByteArray​(java.lang.String name, byte[] defval)
      Retrieves the value of a property as a byte array, using the given default value if property is not present.
      int getInteger​(java.lang.String name)
      Retrieves the given property as an integer.
      int getInteger​(java.lang.String name, int defval)
      Retrieves the given property as an integer.
      java.lang.String getName()
      Gets the name of this Configuration Store.
      java.util.Map<java.lang.String,​java.lang.String> getProperties()
      Get properties as a map.
      java.util.Enumeration<java.lang.String> getPropertyNames()
      Retrives and enumeration of all properties in this config-store.
      java.lang.String getString​(java.lang.String name)
      Retrieves the value of the given property as a string.
      java.lang.String getString​(java.lang.String name, java.lang.String defval)
      Retrieves the value of a given property as a string or the given default value if the property is not present.
      IConfigStore getSubStore​(java.lang.String name)
      Retrieves the given sub-store.
      java.util.Enumeration<java.lang.String> getSubStoreNames()
      Returns an enumeration of the names of the substores of this config-store.
      IConfigStore makeSubStore​(java.lang.String name)
      Creates a nested sub-store with the specified name.
      void putBigInteger​(java.lang.String name, java.math.BigInteger value)
      Sets a property and its value as an integer.
      void putBoolean​(java.lang.String name, boolean value)
      Stores the given property and its value as a boolean.
      void putByteArray​(java.lang.String name, byte[] value)
      Stores the given property and value as a byte array.
      void putInteger​(java.lang.String name, int value)
      Sets a property and its value as an integer.
      void putString​(java.lang.String name, java.lang.String value)
      Stores a property and its value as a string.
      void remove​(java.lang.String name)  
      void removeSubStore​(java.lang.String name)
      Removes sub-store with the given name.
      int size()
      Return the number of items in this substore
    • Method Detail

      • getName

        java.lang.String getName()
        Gets the name of this Configuration Store.

        Returns:
        The name of this Configuration store
      • getString

        java.lang.String getString​(java.lang.String name)
                            throws EPropertyNotFound,
                                   EBaseException
        Retrieves the value of the given property as a string.

        Parameters:
        name - The name of the property to get
        Returns:
        The value of the property as a String
        Throws:
        EPropertyNotFound - If the property is not present
        EBaseException - If an internal error occurred
      • getString

        java.lang.String getString​(java.lang.String name,
                                   java.lang.String defval)
                            throws EBaseException
        Retrieves the value of a given property as a string or the given default value if the property is not present.

        Parameters:
        name - The property to retrive
        defval - The default value to return if the property is not present
        Returns:
        The roperty value as a string
        Throws:
        EBaseException - If an internal error occurred
      • putString

        void putString​(java.lang.String name,
                       java.lang.String value)
        Stores a property and its value as a string.

        Parameters:
        name - The name of the property
        value - The value as a string
      • getByteArray

        byte[] getByteArray​(java.lang.String name)
                     throws EPropertyNotFound,
                            EBaseException
        Retrieves the value of a property as a byte array.

        Parameters:
        name - The property name
        Returns:
        The property value as a byte array
        Throws:
        EPropertyNotFound - If the property is not present
        EBaseException - If an internal error occurred
      • getByteArray

        byte[] getByteArray​(java.lang.String name,
                            byte[] defval)
                     throws EBaseException
        Retrieves the value of a property as a byte array, using the given default value if property is not present.

        Parameters:
        name - The name of the property
        defval - The default value if the property is not present.
        Returns:
        The property value as a byte array.
        Throws:
        EBaseException - If an internal error occurred
      • putByteArray

        void putByteArray​(java.lang.String name,
                          byte[] value)
        Stores the given property and value as a byte array.

        Parameters:
        name - The property name
        value - The value as a byte array to store
      • getBoolean

        boolean getBoolean​(java.lang.String name)
                    throws EPropertyNotFound,
                           EBaseException
        Retrieves the given property as a boolean.

        Parameters:
        name - The name of the property as a string.
        Returns:
        The value of the property as a boolean.
        Throws:
        EPropertyNotFound - If the property is not present
        EBaseException - If an internal error occurred
      • getBoolean

        boolean getBoolean​(java.lang.String name,
                           boolean defval)
                    throws EBaseException
        Retrieves the given property as a boolean.

        Parameters:
        name - The name of the property
        defval - The default value to turn as a boolean if property is not present
        Returns:
        The value of the property as a boolean.
        Throws:
        EBaseException - If an internal error occurred
      • putBoolean

        void putBoolean​(java.lang.String name,
                        boolean value)
        Stores the given property and its value as a boolean.

        Parameters:
        name - The property name
        value - The value as a boolean
      • getInteger

        int getInteger​(java.lang.String name)
                throws EPropertyNotFound,
                       EBaseException
        Retrieves the given property as an integer.

        Parameters:
        name - The property name
        Returns:
        The property value as an integer
        Throws:
        EPropertyNotFound - If property is not found
        EBaseException - If an internal error occurred
      • getInteger

        int getInteger​(java.lang.String name,
                       int defval)
                throws EBaseException
        Retrieves the given property as an integer.

        Parameters:
        name - The property name
        Returns:
        int The default value to return as an integer
        Throws:
        EBaseException - If the value cannot be converted to a integer
      • putInteger

        void putInteger​(java.lang.String name,
                        int value)
        Sets a property and its value as an integer.

        Parameters:
        name - parameter name
        value - integer value
      • getBigInteger

        java.math.BigInteger getBigInteger​(java.lang.String name)
                                    throws EPropertyNotFound,
                                           EBaseException
        Retrieves the given property as a big integer.

        Parameters:
        name - The property name
        Returns:
        The property value as a big integer
        Throws:
        EPropertyNotFound - If property is not found
        EBaseException - If an internal error occurred
      • getBigInteger

        java.math.BigInteger getBigInteger​(java.lang.String name,
                                           java.math.BigInteger defval)
                                    throws EBaseException
        Retrieves the given property as a big integer.

        Parameters:
        name - The property name
        Returns:
        int The default value to return as a big integer
        Throws:
        EBaseException - If the value cannot be converted to a integer
      • putBigInteger

        void putBigInteger​(java.lang.String name,
                           java.math.BigInteger value)
        Sets a property and its value as an integer.

        Parameters:
        name - parameter name
        value - big integer value
      • makeSubStore

        IConfigStore makeSubStore​(java.lang.String name)
        Creates a nested sub-store with the specified name.

        Parameters:
        name - The name of the sub-store
        Returns:
        The sub-store created
      • getSubStore

        IConfigStore getSubStore​(java.lang.String name)
        Retrieves the given sub-store.

        Parameters:
        name - The name of the sub-store
        Returns:
        The sub-store
      • removeSubStore

        void removeSubStore​(java.lang.String name)
        Removes sub-store with the given name. (Removes all properties and sub-stores under this sub-store.)

        Parameters:
        name - The name of the sub-store to remove
      • remove

        void remove​(java.lang.String name)
      • getPropertyNames

        java.util.Enumeration<java.lang.String> getPropertyNames()
        Retrives and enumeration of all properties in this config-store.
        Returns:
        An enumeration of all properties in this config-store
      • getSubStoreNames

        java.util.Enumeration<java.lang.String> getSubStoreNames()
        Returns an enumeration of the names of the substores of this config-store.

        Returns:
        An enumeration of the names of the sub-stores of this config-store
      • commit

        void commit​(boolean createBackup)
             throws EBaseException
        Commits all the data into file immediately.
        Parameters:
        createBackup - true if a backup file should be created
        Throws:
        EBaseException - failed to commit
      • size

        int size()
        Return the number of items in this substore
      • getProperties

        java.util.Map<java.lang.String,​java.lang.String> getProperties()
                                                                      throws EBaseException
        Get properties as a map.
        Throws:
        EBaseException