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

Implements a distributed configuration of JDBCStoreManagers. 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
           
protected  BooleanValue lenientPlugin
           
protected  Log log
           
protected  StringValue masterPlugin
           
protected  StringListValue namesPlugin
           
static String PREFIX_OPENJPA
           
static String PREFIX_SLICE
           
static String REGEX_DOT
           
 PluginValue replicationPolicyPlugin
           
protected  String unit
           
 
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, 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(ConfigurationProvider cp)
          Configure itself as well as underlying slices.
 
Method Summary
 Slice addSlice(String name, Map newProps)
          Adds a new Slice of the given name and given properties.
(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.
 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.
 Slice getMaster()
          Gets the master slice.
 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 configuration for given slice.
 List<Slice> getSlices(Slice.Status... statuses)
          Gets the slices of given status.
 boolean isLenient()
           
(package private)  boolean isXACompliant(DataSource ds)
           
protected  Slice newSlice(String key, Map original)
           
 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 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.
(package private)  void setSlices(Map original)
          Create individual slices with configurations from the given properties.
 
Methods inherited from class org.apache.openjpa.jdbc.conf.JDBCConfigurationImpl
createConnectionFactory, 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, 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, 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, fromProperties, 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, 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, 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, fromProperties, 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

log

protected Log log

unit

protected String unit

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

getMaster

public Slice getMaster()
Gets the master slice.

Specified by:
getMaster in interface DistributedJDBCConfiguration

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 configuration for given slice.

Parameters:
mustExist - if true an exception if raised if the given slice name is not an active 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

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

createDataSource

DataSource createDataSource(Slice slice)
                      throws Exception
Throws:
Exception

getConnectionInfo

String getConnectionInfo(OpenJPAConfiguration conf)

isXACompliant

boolean isXACompliant(DataSource ds)

setSlices

void setSlices(Map original)
Create individual slices with configurations from the given properties.


newSlice

protected Slice newSlice(String key,
                         Map original)

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 "slice.XXX." where XXX is the given slice name, then replace "slice.XXX. with openjpa..
  • if key begins with "slice." but not with "slice.XXX.", the ignore i.e. any property of other slices or global slice property e.g. slice.DistributionPolicy if key starts with "openjpa." and a corresponding "slice.XXX." property does not exist, then use this as default property property with any other prefix is simply copied


  • addSlice

    public Slice addSlice(String name,
                          Map newProps)
    Description copied from interface: DistributedConfiguration
    Adds a new Slice of the given name and given properties. The given properties must have keys with prefix openjpa.slice..* where is the new slice to be added.

    Specified by:
    addSlice in interface DistributedConfiguration


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