org.apache.openjpa.lib.conf
Interface Configuration

All Superinterfaces:
BeanInfo, Cloneable, Closeable, Serializable
All Known Subinterfaces:
JDBCConfiguration, OpenJPAConfiguration
All Known Implementing Classes:
ConfigurationImpl, JDBCConfigurationImpl, OpenJPAConfigurationImpl, XMLConfiguration

public interface Configuration
extends BeanInfo, Serializable, Closeable, Cloneable

Interface for generic configuration objects. Includes the ability to write configuration to and from Properties instances. Instances are threadsafe for reads, but not for writes.

Author:
Marc Prud'hommeaux, Abe White

Field Summary
static String ATTRIBUTE_ALLOWED_VALUES
          Attribute of returned Value property descriptors listing recognized values for the property.
static String ATTRIBUTE_CATEGORY
          Attribute of the returned Value property descriptors naming the property' hierarchical category.
static String ATTRIBUTE_INTERFACE
          Attribute of the returned Value property descriptors naming the interface that plugin values for this property must implement.
static String ATTRIBUTE_ORDER
          Attribute of the returned Value property descriptors naming the property's ordering in its category.
static String ATTRIBUTE_TYPE
          Attribute of the returned Value property descriptors naming the property's type or category.
static String ATTRIBUTE_XML
          Attribute of the returned Value property descriptors naming the property's name in XML format (i.e.
 
Fields inherited from interface java.beans.BeanInfo
ICON_COLOR_16x16, ICON_COLOR_32x32, ICON_MONO_16x16, ICON_MONO_32x32
 
Method Summary
 void addPropertyChangeListener(PropertyChangeListener listener)
          Adds a listener for any property changes.
 Value addValue(Value val)
          Add the given value to the set of configuration properties.
 Object clone()
          Return a copy of this configuration.
 void close()
          Free the resources used by this object.
 void fromProperties(Map map)
          Set this Configuration via the given map.
 Log getConfigurationLog()
          Return the log to use for configuration messages.
 Value[] getDynamicValues()
          Gets the values that can be modified dynamically i.e.
 String getId()
          An environment-specific identifier for this configuration.
 String getLog()
          Log plugin setting.
 Log getLog(String category)
          Return the log for the given category.
 LogFactory getLogFactory()
          The log factory.
 String getProductName()
          Return the product name.
 Value getValue(String property)
          Return the Value for the given property, or null if none.
 Value[] getValues()
          Return the set of all Values.
 void instantiateAll()
          Call the instantiating get methods for all values.
 boolean isDynamic(String property)
          Affirms if the given property can be modified dynamically i.e.
 boolean isReadOnly()
          Return true if this configuration is immutable.
 void modifyDynamic(String property, Object newValue)
          Modifies a dynamic property of this receiver even when frozen.
 void removePropertyChangeListener(PropertyChangeListener listener)
          Removes a listener for any property changes.
 boolean removeValue(Value val)
          Remove the given value from the set of configuration properties.
 void setId(String id)
          An environment-specific identifier for this configuration.
 void setLog(String log)
          Log plugin setting.
 void setLogFactory(LogFactory factory)
          The log factory.
 void setProductName(String name)
          Set the product name.
 void setReadOnly(boolean readOnly)
          Lock down the configuration's state.
 Map toProperties(boolean storeDefaults)
          A properties representation of this Configuration.
 
Methods inherited from interface java.beans.BeanInfo
getAdditionalBeanInfo, getBeanDescriptor, getDefaultEventIndex, getDefaultPropertyIndex, getEventSetDescriptors, getIcon, getMethodDescriptors, getPropertyDescriptors
 

Field Detail

ATTRIBUTE_ALLOWED_VALUES

static final String ATTRIBUTE_ALLOWED_VALUES
Attribute of returned Value property descriptors listing recognized values for the property.

See Also:
Constant Field Values

ATTRIBUTE_TYPE

static final String ATTRIBUTE_TYPE
Attribute of the returned Value property descriptors naming the property's type or category.

See Also:
Constant Field Values

ATTRIBUTE_CATEGORY

static final String ATTRIBUTE_CATEGORY
Attribute of the returned Value property descriptors naming the property' hierarchical category.

See Also:
Constant Field Values

ATTRIBUTE_ORDER

static final String ATTRIBUTE_ORDER
Attribute of the returned Value property descriptors naming the property's ordering in its category.

See Also:
Constant Field Values

ATTRIBUTE_INTERFACE

static final String ATTRIBUTE_INTERFACE
Attribute of the returned Value property descriptors naming the interface that plugin values for this property must implement.

See Also:
Constant Field Values

ATTRIBUTE_XML

static final String ATTRIBUTE_XML
Attribute of the returned Value property descriptors naming the property's name in XML format (i.e. two-words instead of TwoWords).

See Also:
Constant Field Values
Method Detail

getProductName

String getProductName()
Return the product name. Defaults to openjpa.


setProductName

void setProductName(String name)
Set the product name.


getLogFactory

LogFactory getLogFactory()
The log factory. If no log factory has been set explicitly, this method will create one.


setLogFactory

void setLogFactory(LogFactory factory)
The log factory.


getLog

String getLog()
Log plugin setting.


setLog

void setLog(String log)
Log plugin setting.


getLog

Log getLog(String category)
Return the log for the given category.

See Also:
getLogFactory()

getConfigurationLog

Log getConfigurationLog()
Return the log to use for configuration messages.


getId

String getId()
An environment-specific identifier for this configuration. This might correspond to a JPA persistence-unit name, or to some other more-unique value available in the current environment.

Since:
0.9.7

setId

void setId(String id)
An environment-specific identifier for this configuration. This might correspond to a JPA persistence-unit name, or to some other more-unique value available in the current environment.

Since:
0.9.7

getValue

Value getValue(String property)
Return the Value for the given property, or null if none.


getValues

Value[] getValues()
Return the set of all Values.


addValue

Value addValue(Value val)
Add the given value to the set of configuration properties. This method replaces any existing value under the same property.


removeValue

boolean removeValue(Value val)
Remove the given value from the set of configuration properties.


toProperties

Map toProperties(boolean storeDefaults)
A properties representation of this Configuration. Note that changes made to this properties object will not be automatically reflected in this Configuration object.

Parameters:
storeDefaults - if true, then properties will be written out even if they match the default value for a property

fromProperties

void fromProperties(Map map)
Set this Configuration via the given map. Any keys missing from the given map will not be set. Note that changes made to this map will not be automatically reflected in this Configuration object. IMPORTANT: If the map contains instantiated objects(rather than string values), only the string representation of those objects are considered in this configuration's equals and hashCode methods. If the object's property has no string form(such as an ObjectValue), the object is not part of the equality and hashing calculations.


addPropertyChangeListener

void addPropertyChangeListener(PropertyChangeListener listener)
Adds a listener for any property changes. The property events fired will not include the old value.

Parameters:
listener - the listener to receive notification of property changes

removePropertyChangeListener

void removePropertyChangeListener(PropertyChangeListener listener)
Removes a listener for any property changes.

Parameters:
listener - the listener to remove

setReadOnly

void setReadOnly(boolean readOnly)
Lock down the configuration's state. Attempting to set state on a read-only configuration results in an exception.


isReadOnly

boolean isReadOnly()
Return true if this configuration is immutable.


instantiateAll

void instantiateAll()
Call the instantiating get methods for all values. Up-front instantiation allows one to avoid the synchronization necessary with lazy instantiation.


close

void close()
Free the resources used by this object.

Specified by:
close in interface Closeable

clone

Object clone()
Return a copy of this configuration.


modifyDynamic

void modifyDynamic(String property,
                   Object newValue)
Modifies a dynamic property of this receiver even when frozen.

Since:
1.0.0

isDynamic

boolean isDynamic(String property)
Affirms if the given property can be modified dynamically i.e. even after the receiver is frozen.

Since:
1.0.0

getDynamicValues

Value[] getDynamicValues()
Gets the values that can be modified dynamically i.e. even after the receiver is frozen.

Since:
1.0.0


Copyright © 2006-2007 Apache Software Foundation. All Rights Reserved.