com.netscape.certsrv.base
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" 

IConfigStore substore1 = config.getSubstore("configStore1"); String valy = substore1.getString("param11"); // valy is "value11"

IConfigStore substore2 = config.getSubstore("configStore2"); String valz = substore2.getString("param21"); // valz is "value21"

}

Version:
$Revision: 1211 $, $Date: 2010-08-18 10:15:37 -0700 (Wed, 18 Aug 2010) $

Method Summary
 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.Enumeration 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 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
 
Methods inherited from interface com.netscape.certsrv.base.ISourceConfigStore
get, keys, load, put, save
 

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 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 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