org.sape.carbon.core.config
Interface Configuration

All Known Subinterfaces:
BaseMRUCacheConfiguration, BaseTaskConfiguration, BoundedBufferPerformanceLoggerConfiguration, CarbonManagementServiceConfiguration, ClassloaderLinkNodeConfiguration, ComponentConfiguration, ComponentFactoryConfiguration, ComponentKeeperConfiguration, ComponentTemplateConfiguration, ConfigurationInterceptorConfiguration, ConfigurationTypeServiceConfiguration, ConfigurationTypeServiceConfiguration.TypeHandlerConfiguration, ConfiguratorConfiguration, DecoratorConfiguration, DefaultLifecycleInterceptorConfiguration, DeploymentServiceConfiguration, EnterpriseBeanConfiguration, FileLinkNodeConfiguration, FixedDelayTaskConfiguration, FixedRateTaskConfiguration, GenericLinkNodeConfiguration, HomeFactoryConfiguration, HttpAdaptorConfiguration, InitialContextFactoryConfiguration, JarLinkNodeConfiguration, JNDILinkNodeConfiguration, JrmpRemotingConfiguration, LinkNodeConfiguration, MailConfiguration, ManagementInterceptorConfiguration, MBeanInfoConfiguration, MBeanInfoConfiguration.MBeanAttributeInfoConfiguration, MBeanInfoConfiguration.MBeanConstructorInfoConfiguration, MBeanInfoConfiguration.MBeanFeatureInfoConfiguration, MBeanInfoConfiguration.MBeanNotificationInfoConfiguration, MBeanInfoConfiguration.MBeanOperationInfoConfiguration, MBeanInfoConfiguration.MBeanParameterInfoConfiguration, MBeanServerConfiguration, MRUCacheConfiguration, MultiGetMRUCacheConfiguration, NamedDataSourceConnectionFactoryConfiguration, PropertyConfiguration, RemoteHomeFactoryConfiguration, SchedulerServiceConfiguration, SqlBeanDataLoaderConfiguration, SqlBeanMapMRUDataLoaderConfiguration, StandaloneConnectionFactoryConfiguration, StartupServiceConfiguration, StartupServiceConfiguration.StartupComponentConfiguration, StatementConfiguration, StatementFactoryConfiguration, ThreadPoolConfiguration, TotalCacheConfiguration, UniqueIDServiceConfiguration, WebLogicMBeanServerServiceConfiguration
All Known Implementing Classes:
AbstractConfigurationProxy, JDOMPropertyConfiguration

public interface Configuration

This interface represents the base of a bit of configuration. Instances of this class will represent live configurations in the Carbon system.

Copyright 2001 Sapient

Since:
carbon 1.0
Version:
$Revision: 1.23 $($Author: dvoet $ / $Date: 2003/05/05 21:21:15 $)
Author:
Greg Hinkle, December 2001

Method Summary
 Object clone()
           This method makes a deep-copy of the underlying data structure for this configuration
 Class getConfigurationInterface()
          This method returns the Class of this component's configuration.
 String getConfigurationName()
          Returns the name of this configuration in the backing store, but may be null if the Configuration has not yet been saved to the backing store.
 org.jdom.Document getDataStructure()
          Returns a JDOM Document object representing the underlying data of this configuration object.
 org.jdom.Element getRootElement()
          For child documents, this provides access to the specific root element for the sub-document.
 boolean isConfigurationWritable()
          Is this configuration document writable or is it read-only.
 void setConfigurationName(String name)
          Alters the name of this configuration document
 void setConfigurationReadOnly()
          Changes this config object to a read-only, thread-safe mode.
 

Method Detail

getConfigurationName

public String getConfigurationName()

Returns the name of this configuration in the backing store, but may be null if the Configuration has not yet been saved to the backing store.

Returns:
the fully-qualified path name of this Configuration in the backing store

setConfigurationName

public void setConfigurationName(String name)
Alters the name of this configuration document

Parameters:
name - the new name of this configuration document

getDataStructure

public org.jdom.Document getDataStructure()
Returns a JDOM Document object representing the underlying data of this configuration object. Making direct changes to the data in this object may conflict with internal Carbon Core functionality.

Returns:
an Document object representing the full data set of this configuration document

getRootElement

public org.jdom.Element getRootElement()
For child documents, this provides access to the specific root element for the sub-document. This is the case for attached children data such as enclosed arrays or complex-types.

Returns:
the specific root element for the sub-document

clone

public Object clone()

This method makes a deep-copy of the underlying data structure for this configuration

Returns:
the newly created copy of configuration

getConfigurationInterface

public Class getConfigurationInterface()
This method returns the Class of this component's configuration.

Returns:
Class the class object for either an interface or a class that will hold the configuration representation for a Component.

isConfigurationWritable

public boolean isConfigurationWritable()
Is this configuration document writable or is it read-only. Shared cache instances of configuration objects should either be synchronized or marked not writable. When a configuration object is not writable, it should throw an exception if an attempt is made to modify it.

Returns:
true if this cofiguration object may be altered.
Since:
carbon 1.1

setConfigurationReadOnly

public void setConfigurationReadOnly()
Changes this config object to a read-only, thread-safe mode. This cannot be undone for this object. To get a writable version of this object, make a clone or fetch anew from the Configuration Service

Since:
carbon 1.1


Copyright 1999-2003 Sapient Corporation. All Rights Reserved.