org.apache.openjpa.slice.jdbc
Class DistributedJDBCConfigurationImpl

java.lang.Object
  extended by org.apache.openjpa.lib.conf.ConfigurationImpl
      extended by org.apache.openjpa.conf.OpenJPAConfigurationImpl
          extended by org.apache.openjpa.jdbc.conf.JDBCConfigurationImpl
              extended by org.apache.openjpa.slice.jdbc.DistributedJDBCConfigurationImpl
All Implemented Interfaces:
BeanInfo, Externalizable, Serializable, Cloneable, OpenJPAConfiguration, JDBCConfiguration, Configuration, ValueListener, Closeable, DistributedConfiguration, DistributedJDBCConfiguration

public class DistributedJDBCConfigurationImpl
extends JDBCConfigurationImpl
implements DistributedJDBCConfiguration

A specialized configuration embodies a set of Slice configurations. The original configuration properties are analyzed to create a set of Slice specific properties with defaulting rules.

Author:
Pinaki Poddar
See Also:
Serialized Form

Field Summary
 PluginValue distributionPolicyPlugin
           
static String DOT
           
 PluginValue finderTargetPolicyPlugin
           
protected  BooleanValue lenientPlugin
           
protected  StringValue masterPlugin
           
protected  StringListValue namesPlugin
           
static String PREFIX_OPENJPA
           
static String PREFIX_SLICE
           
 PluginValue queryTargetPolicyPlugin
           
static String REGEX_DOT
           
 StringListValue replicatedTypesPlugin
           
 PluginValue replicationPolicyPlugin
           
 
Fields inherited from class org.apache.openjpa.jdbc.conf.JDBCConfigurationImpl
connectionDecoratorPlugins, dbdictionaryPlugin, driverDataSourcePlugin, eagerFetchMode, fetchDirection, identifierUtilPlugin, jdbcListenerPlugins, lrsSize, mappingDefaultsPlugin, mappingFactoryPlugin, resultSetType, schema, schemaFactoryPlugin, schemas, sqlFactoryPlugin, subclassFetchMode, synchronizeMappings, transactionIsolation, updateManagerPlugin
 
Fields inherited from class org.apache.openjpa.conf.OpenJPAConfigurationImpl
aggregateListenerPlugins, autoClear, autoDetach, brokerFactoryPlugin, brokerPlugin, cacheDistributionPolicyPlugin, cacheMarshallerPlugins, callbackPlugin, classResolverPlugin, compatibilityPlugin, connection2DriverName, connection2Password, connection2Properties, connection2URL, connection2UserName, connectionDriverName, connectionFactory, connectionFactory2, connectionFactory2Name, connectionFactory2Properties, connectionFactoryMode, connectionFactoryName, connectionFactoryProperties, connectionPassword, connectionProperties, connectionRetainMode, connectionURL, connectionUserName, dataCacheManagerPlugin, dataCacheMode, dataCachePlugin, dataCacheTimeout, detachStatePlugin, dynamicDataStructs, dynamicEnhancementAgent, eagerInitialization, encryptionProvider, fetchBatchSize, fetchGroups, filterListenerPlugins, finderCachePlugin, flushBeforeQueries, ignoreChanges, instrumentationManager, instrumentationProviders, inverseManagerPlugin, lifecycleEventManager, lockManagerPlugin, lockTimeout, managedRuntimePlugin, mapping, maxFetchDepth, metaFactoryPlugin, metaRepository, metaRepositoryPlugin, multithreaded, nontransactionalRead, nontransactionalWrite, optimistic, orphanedKeyPlugin, preparedQueryCachePlugin, proxyManagerPlugin, queryCachePlugin, queryCompilationCachePlugin, queryTimeout, readLockLevel, refreshFromDataCache, remoteEventManager, remoteProviderPlugin, restoreState, retainState, retryClassRegistration, runtimeUnenhancedClasses, savepointManagerPlugin, seqPlugin, specification, transactionMode, validationFactory, validationGroupPrePersist, validationGroupPreRemove, validationGroupPreUpdate, validationMode, validator, writeLockLevel
 
Fields inherited from class org.apache.openjpa.lib.conf.ConfigurationImpl
id, logFactoryPlugin
 
Fields inherited from interface org.apache.openjpa.jdbc.conf.JDBCConfiguration
LOG_DIAG, LOG_JDBC, LOG_SCHEMA, LOG_SQL
 
Fields inherited from interface org.apache.openjpa.conf.OpenJPAConfiguration
LOG_DATACACHE, LOG_ENHANCE, LOG_METADATA, LOG_QUERY, LOG_RUNTIME, LOG_TOOL, OPTION_DATASTORE_CONNECTION, OPTION_EMBEDDED_COLLECTION_RELATION, OPTION_EMBEDDED_MAP_RELATION, OPTION_EMBEDDED_RELATION, OPTION_ID_APPLICATION, OPTION_ID_DATASTORE, OPTION_INC_FLUSH, OPTION_JDBC_CONNECTION, OPTION_NONTRANS_READ, OPTION_NULL_CONTAINER, OPTION_OPTIMISTIC, OPTION_QUERY_SQL, OPTION_TYPE_ARRAY, OPTION_TYPE_COLLECTION, OPTION_TYPE_MAP, OPTION_VALUE_AUTOASSIGN, OPTION_VALUE_INCREMENT
 
Fields inherited from interface org.apache.openjpa.lib.conf.Configuration
ATTRIBUTE_ALLOWED_VALUES, ATTRIBUTE_CATEGORY, ATTRIBUTE_INTERFACE, ATTRIBUTE_ORDER, ATTRIBUTE_TYPE, ATTRIBUTE_XML, INIT_STATE_FREEZING, INIT_STATE_FROZEN, INIT_STATE_LIQUID
 
Fields inherited from interface java.beans.BeanInfo
ICON_COLOR_16x16, ICON_COLOR_32x32, ICON_MONO_16x16, ICON_MONO_32x32
 
Constructor Summary
DistributedJDBCConfigurationImpl()
          Create a configuration and declare the plug-ins.
DistributedJDBCConfigurationImpl(ConfigurationProvider cp)
          Configure itself as well as underlying slices.
 
Method Summary
(package private)  Slice addSlice(String name, Map newProps)
           
 DecoratingDataSource createConnectionFactory()
          Create the connection factory if necessary.
(package private)  DataSource createDataSource(Slice slice)
           
(package private)  Map createSliceProperties(Map original, String slice)
          Creates given slice specific configuration properties from given original key-value map.
 void fromProperties(Map original)
          Given the properties, creates a set of individual configurations.
 List<String> getActiveSliceNames()
          Gets the name of the active slices.
 List<String> getAvailableSliceNames()
          Gets the name of the available slices.
 DistributedDataSource getConnectionFactory()
          The connection factory, possibly from JNDI.
(package private)  String getConnectionInfo(OpenJPAConfiguration conf)
           
 String getDistributionPolicy()
          Gets the policy, as a plugin string, that governs how new instances will be distributed across the available slices.
 DistributionPolicy getDistributionPolicyInstance()
          Gets the policy that governs how new instances will be distributed across the available slices.
 String getFinderTargetPolicy()
          Gets the policy, as a plugin string, that governs which slices will be targeted for a given finder.
 FinderTargetPolicy getFinderTargetPolicyInstance()
          Gets the policy that governs which slices will be targeted for a given finder.
 Slice getMasterSlice()
          Gets the master slice.
 String getQueryTargetPolicy()
          Gets the policy, as a plugin string, that governs which slices will be targeted for a given query.
 QueryTargetPolicy getQueryTargetPolicyInstance()
          Gets the policy that governs which slices will be targeted for a given query.
 String getReplicationPolicy()
          Gets the policy, as a plugin string, that governs how new replicated instances will be replicated across the available slices.
 ReplicationPolicy getReplicationPolicyInstance()
          Gets the policy that governs how new replicated instances will be replicated across the available slices.
 Slice getSlice(String name)
          Gets the Slice for a given name.
 Slice getSlice(String name, boolean mustExist)
          Get the Slice of the given slice.
 List<Slice> getSlices(Slice.Status... statuses)
          Gets the slices of given status.
 boolean isLenient()
           
 boolean isReplicated(Class<?> cls)
          Affirms if the given type is replicated.
(package private)  boolean isXACompliant(DataSource ds)
           
 void setDistributionPolicy(String policy)
          Sets the policy, from the given plugin string, that governs how new instances will be distributed across the available slices.
 void setDistributionPolicyInstance(DistributionPolicy policy)
          Sets the policy that governs how new instances will be distributed across the available slices.
 void setFinderTargetPolicy(String policy)
          Sets the policy, from the given plugin string, that governs which slices will be targeted for a given finder.
 void setFinderTargetPolicyInstance(FinderTargetPolicy policy)
          Sets the policy that governs which slices will be targeted for a given finder.
 void setLenient(boolean lenient)
           
 void setMaster(String master)
           
 void setQueryTargetPolicy(String policy)
          Sets the policy, from the given plugin string, that governs which slices will be targeted for a given query.
 void setQueryTargetPolicyInstance(QueryTargetPolicy policy)
          Sets the policy that governs which slices will be targeted for a given query.
 void setReplicationPolicy(String policy)
          Sets the policy, from the given plugin string, that governs how new replicated instances will be replicated across the available slices.
 void setReplicationPolicyInstance(ReplicationPolicy policy)
          Sets the policy that governs how new replicated instances will be replicated across the available slices.
 
Methods inherited from class org.apache.openjpa.jdbc.conf.JDBCConfigurationImpl
getConnectionDecoratorInstances, getConnectionDecorators, getConnectionFactory2, getDataSource, getDataSource2, getDBDictionary, getDBDictionaryInstance, getDriverDataSource, getEagerFetchMode, getEagerFetchModeConstant, getFetchDirection, getFetchDirectionConstant, getIdentifierUtil, getIdentifierUtilInstance, getJDBCListenerInstances, getJDBCListeners, getLRSSize, getLRSSizeConstant, getMappingDefaults, getMappingDefaultsInstance, getMappingFactory, getMappingRepositoryInstance, getResultSetType, getResultSetTypeConstant, getSchema, getSchemaFactory, getSchemaFactoryInstance, getSchemas, getSchemasList, getSQLFactory, getSQLFactoryInstance, getSubclassFetchMode, getSubclassFetchModeConstant, getSynchronizeMappings, getTransactionIsolation, getTransactionIsolationConstant, getUpdateManager, getUpdateManagerInstance, isInvalidProperty, newBrokerInstance, newDriverDataSourceInstance, newMappingRepositoryInstance, newMetaDataFactoryInstance, preClose, setConnectionDecorators, setConnectionDecorators, setConnectionFactory, setConnectionFactory2, setDBDictionary, setDBDictionary, setDriverDataSource, setEagerFetchMode, setEagerFetchMode, setFetchDirection, setFetchDirection, setIdentifierUtil, setJDBCListeners, setJDBCListeners, setLRSSize, setLRSSize, setMappingDefaults, setMappingDefaults, setMappingFactory, setResultSetType, setResultSetType, setSchema, setSchemaFactory, setSchemaFactory, setSchemas, setSchemas, setSQLFactory, setSQLFactory, setSubclassFetchMode, setSubclassFetchMode, setSynchronizeMappings, setTransactionIsolation, setTransactionIsolation, setUpdateManager, setUpdateManager
 
Methods inherited from class org.apache.openjpa.conf.OpenJPAConfigurationImpl
getAggregateListenerInstances, getAggregateListeners, getAutoClear, getAutoClearConstant, getAutoDetach, getAutoDetachConstant, getBrokerFactory, getBrokerFactoryEventManager, getBrokerImpl, getCacheDistributionPolicy, getCacheDistributionPolicyInstance, getCacheMarshallerInstances, getCacheMarshallers, getCallbackOptions, getCallbackOptionsInstance, getClassResolver, getClassResolverInstance, getCompatibility, getCompatibilityInstance, getConfigurationLog, getConnection2DriverName, getConnection2Password, getConnection2Properties, getConnection2URL, getConnection2UserName, getConnectionDriverName, getConnectionFactory2Name, getConnectionFactory2Properties, getConnectionFactoryMode, getConnectionFactoryName, getConnectionFactoryProperties, getConnectionPassword, getConnectionProperties, getConnectionRetainMode, getConnectionRetainModeConstant, getConnectionURL, getConnectionUserName, getDataCache, getDataCacheManager, getDataCacheManagerInstance, getDataCacheMode, getDataCacheTimeout, getDetachState, getDetachStateInstance, getDynamicDataStructs, getDynamicEnhancementAgent, getEncryptionProvider, getFetchBatchSize, getFetchGroups, getFetchGroupsList, getFilterListenerInstances, getFilterListeners, getFinderCache, getFinderCacheInstance, getFlushBeforeQueries, getFlushBeforeQueriesConstant, getIgnoreChanges, getInstrumentation, getInstrumentationInstances, getInstrumentationManager, getInstrumentationManagerInstance, getInverseManager, getLifecycleEventManager, getLifecycleEventManagerInstance, getLockManager, getLockTimeout, getManagedRuntime, getManagedRuntimeInstance, getMapping, getMaxFetchDepth, getMetaDataFactory, getMetaDataRepository, getMetaDataRepositoryInstance, getMultithreaded, getNontransactionalRead, getNontransactionalWrite, getOptimistic, getOrphanedKeyAction, getOrphanedKeyActionInstance, getPersistenceEnvironment, getProxyManager, getProxyManagerInstance, getQueryCache, getQueryCompilationCache, getQueryCompilationCacheInstance, getQuerySQLCache, getQuerySQLCacheInstance, getQueryTimeout, getReadLockLevel, getReadLockLevelConstant, getRefreshFromDataCache, getRemoteCommitEventManager, getRemoteCommitProvider, getRestoreState, getRestoreStateConstant, getRetainState, getRetryClassRegistration, getRuntimeUnenhancedClasses, getRuntimeUnenhancedClassesConstant, getSavepointManager, getSavepointManagerInstance, getSequence, getSequenceInstance, getSpecification, getSpecificationInstance, getStoreFacadeTypeRegistry, getTransactionMode, getValidationFactoryInstance, getValidationGroupPrePersist, getValidationGroupPreRemove, getValidationGroupPreUpdate, getValidationMode, getValidatorInstance, getWriteLockLevel, getWriteLockLevelConstant, instantiateAll, isConnectionFactoryModeManaged, isInitializeEagerly, isTransactionModeManaged, metaDataRepositoryAvailable, newInverseManagerInstance, newLockManagerInstance, newMetaDataRepositoryInstance, newRemoteCommitProviderInstance, setAggregateListeners, setAggregateListeners, setAutoClear, setAutoClear, setAutoDetach, setAutoDetach, setBrokerFactory, setBrokerImpl, setCacheDistributionPolicy, setCacheDistributionPolicyInstance, setCacheMarshallers, setCallbackOptions, setClassResolver, setClassResolver, setCompatibility, setConnection2DriverName, setConnection2Password, setConnection2Properties, setConnection2URL, setConnection2UserName, setConnectionDriverName, setConnectionFactory2Name, setConnectionFactory2Properties, setConnectionFactoryMode, setConnectionFactoryModeManaged, setConnectionFactoryName, setConnectionFactoryProperties, setConnectionPassword, setConnectionProperties, setConnectionRetainMode, setConnectionRetainMode, setConnectionURL, setConnectionUserName, setDataCache, setDataCacheManager, setDataCacheManager, setDataCacheMode, setDataCacheTimeout, setDataCacheTimeout, setDetachState, setDetachState, setDynamicDataStructs, setDynamicDataStructs, setDynamicEnhancementAgent, setEncryptionProvider, setFetchBatchSize, setFetchBatchSize, setFetchGroups, setFetchGroups, setFilterListeners, setFilterListeners, setFinderCache, setFlushBeforeQueries, setFlushBeforeQueries, setIgnoreChanges, setIgnoreChanges, setInitializeEagerly, setInstrumentation, setInstrumentationManager, setInstrumentationManager, setInverseManager, setLifecycleEventManager, setLockManager, setLockTimeout, setLockTimeout, setManagedRuntime, setManagedRuntime, setMapping, setMaxFetchDepth, setMaxFetchDepth, setMetaDataFactory, setMetaDataRepository, setMetaDataRepository, setMultithreaded, setMultithreaded, setNontransactionalRead, setNontransactionalRead, setNontransactionalWrite, setNontransactionalWrite, setOptimistic, setOptimistic, setOrphanedKeyAction, setOrphanedKeyAction, setPersistenceEnvironment, setProxyManager, setProxyManager, setQueryCache, setQueryCompilationCache, setQuerySQLCache, setQuerySQLCache, setQueryTimeout, setReadLockLevel, setReadLockLevel, setRefreshFromDataCache, setRefreshFromDataCache, setRemoteCommitEventManager, setRemoteCommitProvider, setRestoreState, setRestoreState, setRetainState, setRetainState, setRetryClassRegistration, setRetryClassRegistration, setRuntimeUnenhancedClasses, setRuntimeUnenhancedClasses, setSavepointManager, setSequence, setSequence, setSpecification, setSpecification, setTransactionMode, setTransactionModeManaged, setValidationFactory, setValidationGroupPrePersist, setValidationGroupPreRemove, setValidationGroupPreUpdate, setValidationMode, setValidatorInstance, setWriteLockLevel, setWriteLockLevel, supportedOptions
 
Methods inherited from class org.apache.openjpa.lib.conf.ConfigurationImpl
addBoolean, addDouble, addFile, addInt, addObject, addPlugin, addPluginList, addPropertyChangeListener, addString, addStringList, addValue, clone, close, equals, getAdditionalBeanInfo, getBeanDescriptor, getDefaultEventIndex, getDefaultPropertyIndex, getEventSetDescriptors, getIcon, getId, getLog, getLog, getLogFactory, getMethodDescriptors, getProductName, getPropertiesResource, getPropertyDescriptors, getPropertyKeys, getPropertyKeys, getValue, getValues, hashCode, isReadOnly, loadGlobals, readExternal, removePropertyChangeListener, removeValue, setId, setLog, setLogFactory, setProductName, setProperties, setPropertiesFile, setReadOnly, toProperties, toXMLName, valueChanged, writeExternal
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.apache.openjpa.jdbc.conf.JDBCConfiguration
getConnectionDecoratorInstances, getConnectionDecorators, getDataSource, getDataSource2, getDBDictionary, getDBDictionaryInstance, getDriverDataSource, getEagerFetchMode, getEagerFetchModeConstant, getFetchDirection, getFetchDirectionConstant, getIdentifierUtil, getIdentifierUtilInstance, getJDBCListenerInstances, getJDBCListeners, getLRSSize, getLRSSizeConstant, getMappingDefaults, getMappingDefaultsInstance, getMappingFactory, getMappingRepositoryInstance, getResultSetType, getResultSetTypeConstant, getSchema, getSchemaFactory, getSchemaFactoryInstance, getSchemas, getSchemasList, getSQLFactory, getSQLFactoryInstance, getSubclassFetchMode, getSubclassFetchModeConstant, getSynchronizeMappings, getTransactionIsolation, getTransactionIsolationConstant, getUpdateManager, getUpdateManagerInstance, newDriverDataSourceInstance, newMappingRepositoryInstance, setConnectionDecorators, setConnectionDecorators, setDBDictionary, setDBDictionary, setDriverDataSource, setEagerFetchMode, setEagerFetchMode, setFetchDirection, setFetchDirection, setIdentifierUtil, setJDBCListeners, setJDBCListeners, setLRSSize, setLRSSize, setMappingDefaults, setMappingDefaults, setMappingFactory, setResultSetType, setResultSetType, setSchema, setSchemaFactory, setSchemaFactory, setSchemas, setSchemas, setSQLFactory, setSQLFactory, setSubclassFetchMode, setSubclassFetchMode, setSynchronizeMappings, setTransactionIsolation, setTransactionIsolation, setUpdateManager, setUpdateManager
 
Methods inherited from interface org.apache.openjpa.conf.OpenJPAConfiguration
getAggregateListenerInstances, getAggregateListeners, getAutoClear, getAutoClearConstant, getAutoDetach, getAutoDetachConstant, getBrokerFactory, getBrokerFactoryEventManager, getBrokerImpl, getCacheDistributionPolicy, getCacheDistributionPolicyInstance, getCacheMarshallerInstances, getCacheMarshallers, getCallbackOptions, getCallbackOptionsInstance, getClassResolver, getClassResolverInstance, getCompatibility, getCompatibilityInstance, getConnection2DriverName, getConnection2Password, getConnection2Properties, getConnection2URL, getConnection2UserName, getConnectionDriverName, getConnectionFactory2, getConnectionFactory2Name, getConnectionFactory2Properties, getConnectionFactoryMode, getConnectionFactoryName, getConnectionFactoryProperties, getConnectionPassword, getConnectionProperties, getConnectionRetainMode, getConnectionRetainModeConstant, getConnectionURL, getConnectionUserName, getDataCache, getDataCacheManager, getDataCacheManagerInstance, getDataCacheMode, getDataCacheTimeout, getDetachStateInstance, getDynamicDataStructs, getDynamicEnhancementAgent, getEncryptionProvider, getFetchBatchSize, getFetchGroups, getFetchGroupsList, getFilterListenerInstances, getFilterListeners, getFinderCache, getFinderCacheInstance, getFlushBeforeQueries, getFlushBeforeQueriesConstant, getIgnoreChanges, getInstrumentation, getInstrumentationManagerInstance, getInverseManager, getLifecycleEventManager, getLifecycleEventManagerInstance, getLockManager, getLockTimeout, getManagedRuntime, getManagedRuntimeInstance, getMapping, getMaxFetchDepth, getMetaDataFactory, getMetaDataRepository, getMetaDataRepositoryInstance, getMultithreaded, getNontransactionalRead, getNontransactionalWrite, getOptimistic, getOrphanedKeyAction, getOrphanedKeyActionInstance, getProxyManager, getProxyManagerInstance, getQueryCache, getQueryCompilationCache, getQueryCompilationCacheInstance, getQuerySQLCache, getQuerySQLCacheInstance, getQueryTimeout, getReadLockLevel, getReadLockLevelConstant, getRefreshFromDataCache, getRemoteCommitEventManager, getRemoteCommitProvider, getRestoreState, getRestoreStateConstant, getRetainState, getRetryClassRegistration, getRuntimeUnenhancedClasses, getRuntimeUnenhancedClassesConstant, getSavepointManager, getSavepointManagerInstance, getSequence, getSequenceInstance, getSpecification, getSpecificationInstance, getStoreFacadeTypeRegistry, getTransactionMode, getValidationFactoryInstance, getValidationGroupPrePersist, getValidationGroupPreRemove, getValidationGroupPreUpdate, getValidationMode, getValidatorInstance, getWriteLockLevel, getWriteLockLevelConstant, isConnectionFactoryModeManaged, isInitializeEagerly, isTransactionModeManaged, metaDataRepositoryAvailable, newBrokerInstance, newInverseManagerInstance, newLockManagerInstance, newMetaDataFactoryInstance, newMetaDataRepositoryInstance, newRemoteCommitProviderInstance, setAggregateListeners, setAggregateListeners, setAutoClear, setAutoClear, setAutoDetach, setAutoDetach, setBrokerFactory, setBrokerImpl, setCacheDistributionPolicy, setCacheDistributionPolicyInstance, setCacheMarshallers, setCallbackOptions, setClassResolver, setClassResolver, setCompatibility, setConnection2DriverName, setConnection2Password, setConnection2Properties, setConnection2URL, setConnection2UserName, setConnectionDriverName, setConnectionFactory, setConnectionFactory2, setConnectionFactory2Name, setConnectionFactory2Properties, setConnectionFactoryMode, setConnectionFactoryModeManaged, setConnectionFactoryName, setConnectionFactoryProperties, setConnectionPassword, setConnectionProperties, setConnectionRetainMode, setConnectionRetainMode, setConnectionURL, setConnectionUserName, setDataCache, setDataCacheManager, setDataCacheManager, setDataCacheMode, setDataCacheTimeout, setDataCacheTimeout, setDetachState, setDetachState, setDynamicDataStructs, setDynamicDataStructs, setDynamicEnhancementAgent, setEncryptionProvider, setFetchBatchSize, setFetchBatchSize, setFetchGroups, setFetchGroups, setFilterListeners, setFilterListeners, setFinderCache, setFlushBeforeQueries, setFlushBeforeQueries, setIgnoreChanges, setIgnoreChanges, setInitializeEagerly, setInstrumentation, setInverseManager, setLifecycleEventManager, setLockManager, setLockTimeout, setLockTimeout, setManagedRuntime, setManagedRuntime, setMapping, setMaxFetchDepth, setMaxFetchDepth, setMetaDataFactory, setMetaDataRepository, setMetaDataRepository, setMultithreaded, setMultithreaded, setNontransactionalRead, setNontransactionalRead, setNontransactionalWrite, setNontransactionalWrite, setOptimistic, setOptimistic, setOrphanedKeyAction, setOrphanedKeyAction, setProxyManager, setProxyManager, setQueryCache, setQueryCompilationCache, setQuerySQLCache, setQuerySQLCache, setQueryTimeout, setReadLockLevel, setReadLockLevel, setRefreshFromDataCache, setRefreshFromDataCache, setRemoteCommitEventManager, setRemoteCommitProvider, setRestoreState, setRestoreState, setRetainState, setRetainState, setRetryClassRegistration, setRetryClassRegistration, setRuntimeUnenhancedClasses, setRuntimeUnenhancedClasses, setSavepointManager, setSequence, setSequence, setSpecification, setSpecification, setTransactionMode, setTransactionModeManaged, setValidationFactory, setValidationGroupPrePersist, setValidationGroupPreRemove, setValidationGroupPreUpdate, setValidationMode, setValidatorInstance, setWriteLockLevel, setWriteLockLevel, supportedOptions
 
Methods inherited from interface org.apache.openjpa.lib.conf.Configuration
addPropertyChangeListener, addValue, clone, close, getConfigurationLog, getId, getLog, getLog, getLogFactory, getProductName, getPropertyKeys, getPropertyKeys, getValue, getValues, instantiateAll, isReadOnly, removePropertyChangeListener, removeValue, setId, setLog, setLogFactory, setProductName, setReadOnly, toProperties
 
Methods inherited from interface java.beans.BeanInfo
getAdditionalBeanInfo, getBeanDescriptor, getDefaultEventIndex, getDefaultPropertyIndex, getEventSetDescriptors, getIcon, getMethodDescriptors, getPropertyDescriptors
 

Field Detail

lenientPlugin

protected BooleanValue lenientPlugin

masterPlugin

protected StringValue masterPlugin

namesPlugin

protected StringListValue namesPlugin

distributionPolicyPlugin

public PluginValue distributionPolicyPlugin

replicationPolicyPlugin

public PluginValue replicationPolicyPlugin

queryTargetPolicyPlugin

public PluginValue queryTargetPolicyPlugin

finderTargetPolicyPlugin

public PluginValue finderTargetPolicyPlugin

replicatedTypesPlugin

public StringListValue replicatedTypesPlugin

DOT

public static final String DOT
See Also:
Constant Field Values

REGEX_DOT

public static final String REGEX_DOT
See Also:
Constant Field Values

PREFIX_SLICE

public static final String PREFIX_SLICE
See Also:
Constant Field Values

PREFIX_OPENJPA

public static final String PREFIX_OPENJPA
See Also:
Constant Field Values
Constructor Detail

DistributedJDBCConfigurationImpl

public DistributedJDBCConfigurationImpl()
Create a configuration and declare the plug-ins.


DistributedJDBCConfigurationImpl

public DistributedJDBCConfigurationImpl(ConfigurationProvider cp)
Configure itself as well as underlying slices.

Method Detail

getActiveSliceNames

public List<String> getActiveSliceNames()
Gets the name of the active slices.

Specified by:
getActiveSliceNames in interface DistributedConfiguration

getAvailableSliceNames

public List<String> getAvailableSliceNames()
Gets the name of the available slices.

Specified by:
getAvailableSliceNames in interface DistributedConfiguration
Returns:

getSlices

public List<Slice> getSlices(Slice.Status... statuses)
Gets the slices of given status. Null returns all irrespective of status.

Specified by:
getSlices in interface DistributedConfiguration
Parameters:
statuses - list of status flags. If null, returns all slices irrespective of status.

getSlice

public Slice getSlice(String name)
Description copied from interface: DistributedConfiguration
Gets the Slice for a given name. Exception is raised if the given slice is not configured.

Specified by:
getSlice in interface DistributedConfiguration

getSlice

public Slice getSlice(String name,
                      boolean mustExist)
Get the Slice of the given slice.

Parameters:
mustExist - if true an exception if raised if the given slice name is not a valid slice.

getDistributionPolicyInstance

public DistributionPolicy getDistributionPolicyInstance()
Description copied from interface: DistributedConfiguration
Gets the policy that governs how new instances will be distributed across the available slices.

Specified by:
getDistributionPolicyInstance in interface DistributedConfiguration

getDistributionPolicy

public String getDistributionPolicy()
Description copied from interface: DistributedConfiguration
Gets the policy, as a plugin string, that governs how new instances will be distributed across the available slices.

Specified by:
getDistributionPolicy in interface DistributedConfiguration

setDistributionPolicyInstance

public void setDistributionPolicyInstance(DistributionPolicy policy)
Description copied from interface: DistributedConfiguration
Sets the policy that governs how new instances will be distributed across the available slices.

Specified by:
setDistributionPolicyInstance in interface DistributedConfiguration

setDistributionPolicy

public void setDistributionPolicy(String policy)
Description copied from interface: DistributedConfiguration
Sets the policy, from the given plugin string, that governs how new instances will be distributed across the available slices.

Specified by:
setDistributionPolicy in interface DistributedConfiguration

getReplicationPolicyInstance

public ReplicationPolicy getReplicationPolicyInstance()
Description copied from interface: DistributedConfiguration
Gets the policy that governs how new replicated instances will be replicated across the available slices.

Specified by:
getReplicationPolicyInstance in interface DistributedConfiguration

getReplicationPolicy

public String getReplicationPolicy()
Description copied from interface: DistributedConfiguration
Gets the policy, as a plugin string, that governs how new replicated instances will be replicated across the available slices.

Specified by:
getReplicationPolicy in interface DistributedConfiguration

setReplicationPolicyInstance

public void setReplicationPolicyInstance(ReplicationPolicy policy)
Description copied from interface: DistributedConfiguration
Sets the policy that governs how new replicated instances will be replicated across the available slices.

Specified by:
setReplicationPolicyInstance in interface DistributedConfiguration

setReplicationPolicy

public void setReplicationPolicy(String policy)
Description copied from interface: DistributedConfiguration
Sets the policy, from the given plugin string, that governs how new replicated instances will be replicated across the available slices.

Specified by:
setReplicationPolicy in interface DistributedConfiguration

getQueryTargetPolicyInstance

public QueryTargetPolicy getQueryTargetPolicyInstance()
Description copied from interface: DistributedConfiguration
Gets the policy that governs which slices will be targeted for a given query.

Specified by:
getQueryTargetPolicyInstance in interface DistributedConfiguration

getQueryTargetPolicy

public String getQueryTargetPolicy()
Description copied from interface: DistributedConfiguration
Gets the policy, as a plugin string, that governs which slices will be targeted for a given query.

Specified by:
getQueryTargetPolicy in interface DistributedConfiguration

setQueryTargetPolicyInstance

public void setQueryTargetPolicyInstance(QueryTargetPolicy policy)
Description copied from interface: DistributedConfiguration
Sets the policy that governs which slices will be targeted for a given query.

Specified by:
setQueryTargetPolicyInstance in interface DistributedConfiguration

setQueryTargetPolicy

public void setQueryTargetPolicy(String policy)
Description copied from interface: DistributedConfiguration
Sets the policy, from the given plugin string, that governs which slices will be targeted for a given query.

Specified by:
setQueryTargetPolicy in interface DistributedConfiguration

getFinderTargetPolicyInstance

public FinderTargetPolicy getFinderTargetPolicyInstance()
Description copied from interface: DistributedConfiguration
Gets the policy that governs which slices will be targeted for a given finder.

Specified by:
getFinderTargetPolicyInstance in interface DistributedConfiguration

getFinderTargetPolicy

public String getFinderTargetPolicy()
Description copied from interface: DistributedConfiguration
Gets the policy, as a plugin string, that governs which slices will be targeted for a given finder.

Specified by:
getFinderTargetPolicy in interface DistributedConfiguration

setFinderTargetPolicyInstance

public void setFinderTargetPolicyInstance(FinderTargetPolicy policy)
Description copied from interface: DistributedConfiguration
Sets the policy that governs which slices will be targeted for a given finder.

Specified by:
setFinderTargetPolicyInstance in interface DistributedConfiguration

setFinderTargetPolicy

public void setFinderTargetPolicy(String policy)
Description copied from interface: DistributedConfiguration
Sets the policy, from the given plugin string, that governs which slices will be targeted for a given finder.

Specified by:
setFinderTargetPolicy in interface DistributedConfiguration

getConnectionFactory

public DistributedDataSource getConnectionFactory()
Description copied from interface: OpenJPAConfiguration
The connection factory, possibly from JNDI.

Specified by:
getConnectionFactory in interface OpenJPAConfiguration
Overrides:
getConnectionFactory in class JDBCConfigurationImpl

isLenient

public boolean isLenient()

setLenient

public void setLenient(boolean lenient)

setMaster

public void setMaster(String master)

getMasterSlice

public Slice getMasterSlice()
Gets the master slice.

Specified by:
getMasterSlice in interface DistributedJDBCConfiguration

createDataSource

DataSource createDataSource(Slice slice)
                      throws Exception
Throws:
Exception

getConnectionInfo

String getConnectionInfo(OpenJPAConfiguration conf)

isXACompliant

boolean isXACompliant(DataSource ds)

createSliceProperties

Map createSliceProperties(Map original,
                          String slice)
Creates given slice specific configuration properties from given original key-value map. The rules are
  • if key begins with "openjpa.slice.XXX." where XXX is the given slice name, then replace "openjpa.slice.XXX. with openjpa..
  • if key begins with "openjpa.slice." but not with "openjpa.slice.XXX.", then ignore i.e. any property of other slices or global slice property e.g. openjpa.slice.DistributionPolicy
  • if key starts with "openjpa." and a corresponding "openjpa.slice.XXX." property does not exist, then use this as default property
  • property with any other prefix is simply copied


  • addSlice

    Slice addSlice(String name,
                   Map newProps)

    fromProperties

    public void fromProperties(Map original)
    Given the properties, creates a set of individual configurations.

    Specified by:
    fromProperties in interface Configuration
    Overrides:
    fromProperties in class ConfigurationImpl

    createConnectionFactory

    public DecoratingDataSource createConnectionFactory()
    Description copied from class: JDBCConfigurationImpl
    Create the connection factory if necessary.

    Overrides:
    createConnectionFactory in class JDBCConfigurationImpl

    isReplicated

    public boolean isReplicated(Class<?> cls)
    Description copied from interface: DistributedConfiguration
    Affirms if the given type is replicated.

    Specified by:
    isReplicated in interface DistributedConfiguration


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