Class PersistenceEnvironmentParamBuilder
- java.lang.Object
-
- com.tangosol.coherence.config.builder.PersistenceEnvironmentParamBuilder
-
- All Implemented Interfaces:
ParameterizedBuilder<com.oracle.coherence.persistence.PersistenceEnvironment>
public class PersistenceEnvironmentParamBuilder extends Object implements ParameterizedBuilder<com.oracle.coherence.persistence.PersistenceEnvironment>
Build aPersistenceEnvironment
.Provide a means to get a
PersistenceEnvironmentParamBuilder.PersistenceEnvironmentInfo
without creating aPersistenceEnvironment
to be used by a viewer.Defaulting built into the builder so same defaults whether read in from xml configuration or constructed solely by builder api.
- Since:
- Coherence 12.2.1
- Author:
- jf 2015.03.12
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
PersistenceEnvironmentParamBuilder.PersistenceEnvironmentInfo
APersistenceEnvironmentInfo
implementation that exposes the active, snapshot and trash directories, in addition to the persistence mode.-
Nested classes/interfaces inherited from interface com.tangosol.coherence.config.builder.ParameterizedBuilder
ParameterizedBuilder.ReflectionSupport
-
-
Field Summary
Fields Modifier and Type Field Description protected static SafePersistenceWrappers.FailureContinuationFactory
DEFAULT_FACTORY
Default failure continuation factory that provides continuations that only throw PersistenceExceptions.protected ParameterizedBuilder<com.oracle.coherence.persistence.PersistenceEnvironment<ReadBuffer>>
m_bldr
AParameterizedBuilder
that creates aPersistenceEnvironment
.protected String
m_sActive
The active directory used by persistence.protected String
m_sBackup
The backup directory used by persistence.protected String
m_sEvents
The events directory used by persistence.protected String
m_sMode
The mode used by persistence; either active, active-backup, active-async or on-demand.protected String
m_sSnapshot
The snapshot directory used by persistence.protected String
m_sTrash
The trash directory used by persistence.
-
Constructor Summary
Constructors Constructor Description PersistenceEnvironmentParamBuilder()
Construct aPersistenceEnvironment
builder.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected ResolvableParameterList
createResolver(String sClusterName, String sServiceName)
Create aresolver
based on the provided cluster, service name and the state of this builder (active, snapshot and trash directories).static String
getDefaultPersistenceEnvironmentHomeDirectory()
Return the default 'base' persistence directory.PersistenceEnvironmentParamBuilder.PersistenceEnvironmentInfo
getPersistenceEnvironmentInfo(String sClusterName, String sServiceName)
Return aPersistenceEnvironmentParamBuilder.PersistenceEnvironmentInfo
encapsulating the configuration this builder uses to constructenvironments
.String
getPersistenceMode()
protected boolean
isActive()
Return true if the persistence mode is active.protected boolean
isActiveBackup()
Return true if the persistence mode is active-backup.com.oracle.coherence.persistence.PersistenceEnvironment<ReadBuffer>
realize(ParameterResolver resolver, ClassLoader loader, ParameterList listParameters)
Realizes (creates if necessary) an instance of a object of type T, using the providedParameterResolver
to resolve values any referencedParameter
s.void
setActiveDirectory(String sPathname)
Set the persistence active directory.void
setBackupDirectory(String sPathname)
Set the persistence backup directory.void
setCustomEnvironment(ParameterizedBuilder<com.oracle.coherence.persistence.PersistenceEnvironment<ReadBuffer>> bldrPersistence)
Set abuilder
to be used instantiate the appropriatePersistenceEnvironment
.void
setEventsDirectory(String sPathname)
Set the persistence active directory.void
setPersistenceMode(String sMode)
Set persistence mode.void
setPersistenceSnapshotDirectory(String sPathname)
Set the persistence snapshot directory.void
setPersistenceTrashDirectory(String sPathname)
Set the persistence trash directory.String
toString()
protected com.oracle.coherence.persistence.PersistenceEnvironment<ReadBuffer>
wrap(com.oracle.coherence.persistence.PersistenceEnvironment<ReadBuffer> env)
Wrap aPersistenceEnvironment
with a SafePersistenceEnvironment.
-
-
-
Field Detail
-
DEFAULT_FACTORY
protected static final SafePersistenceWrappers.FailureContinuationFactory DEFAULT_FACTORY
Default failure continuation factory that provides continuations that only throw PersistenceExceptions.
-
m_sMode
protected String m_sMode
The mode used by persistence; either active, active-backup, active-async or on-demand.
-
m_sActive
protected String m_sActive
The active directory used by persistence.
-
m_sBackup
protected String m_sBackup
The backup directory used by persistence.
-
m_sEvents
protected String m_sEvents
The events directory used by persistence.
-
m_sSnapshot
protected String m_sSnapshot
The snapshot directory used by persistence.
-
m_sTrash
protected String m_sTrash
The trash directory used by persistence.
-
m_bldr
protected ParameterizedBuilder<com.oracle.coherence.persistence.PersistenceEnvironment<ReadBuffer>> m_bldr
AParameterizedBuilder
that creates aPersistenceEnvironment
.
-
-
Method Detail
-
realize
public com.oracle.coherence.persistence.PersistenceEnvironment<ReadBuffer> realize(ParameterResolver resolver, ClassLoader loader, ParameterList listParameters)
Description copied from interface:ParameterizedBuilder
Realizes (creates if necessary) an instance of a object of type T, using the providedParameterResolver
to resolve values any referencedParameter
s.- Specified by:
realize
in interfaceParameterizedBuilder<com.oracle.coherence.persistence.PersistenceEnvironment>
- Parameters:
resolver
- theParameterResolver
for resolving namedParameter
sloader
- theClassLoader
for loading any necessary classes and ifnull
theClassLoader
used to load the builder will be used insteadlistParameters
- an optionalParameterList
(may benull
) to be used for realizing the instance, eg: used as constructor parameters- Returns:
- an instance of T
-
getPersistenceEnvironmentInfo
public PersistenceEnvironmentParamBuilder.PersistenceEnvironmentInfo getPersistenceEnvironmentInfo(String sClusterName, String sServiceName)
Return aPersistenceEnvironmentParamBuilder.PersistenceEnvironmentInfo
encapsulating the configuration this builder uses to constructenvironments
.- Parameters:
sClusterName
- the cluster namesServiceName
- the service name- Returns:
- a PersistenceEnvironmentInfo encapsulating the configuration this builder uses to construct environments
-
getPersistenceMode
public String getPersistenceMode()
-
setPersistenceMode
@Injectable("persistence-mode") public void setPersistenceMode(String sMode)
Set persistence mode.- Parameters:
sMode
- active, active-backup, active-async or on-demand
-
setActiveDirectory
@Injectable("active-directory") public void setActiveDirectory(String sPathname)
Set the persistence active directory.- Parameters:
sPathname
- either relative or absolute pathname
-
setBackupDirectory
@Injectable("backup-directory") public void setBackupDirectory(String sPathname)
Set the persistence backup directory.- Parameters:
sPathname
- either relative or absolute pathname
-
setEventsDirectory
@Injectable("events-directory") public void setEventsDirectory(String sPathname)
Set the persistence active directory.- Parameters:
sPathname
- either relative or absolute pathname
-
setPersistenceSnapshotDirectory
@Injectable("snapshot-directory") public void setPersistenceSnapshotDirectory(String sPathname)
Set the persistence snapshot directory.- Parameters:
sPathname
- either relative or absolute pathname
-
setPersistenceTrashDirectory
@Injectable("trash-directory") public void setPersistenceTrashDirectory(String sPathname)
Set the persistence trash directory.- Parameters:
sPathname
- either relative or absolute pathname
-
setCustomEnvironment
@Injectable("instance") public void setCustomEnvironment(ParameterizedBuilder<com.oracle.coherence.persistence.PersistenceEnvironment<ReadBuffer>> bldrPersistence)
Set abuilder
to be used instantiate the appropriatePersistenceEnvironment
.- Parameters:
bldrPersistence
- the builder that creates a PersistenceEnvironment
-
wrap
protected com.oracle.coherence.persistence.PersistenceEnvironment<ReadBuffer> wrap(com.oracle.coherence.persistence.PersistenceEnvironment<ReadBuffer> env)
Wrap aPersistenceEnvironment
with a SafePersistenceEnvironment.- Parameters:
env
- a wrapped PersistenceEnvironment- Returns:
- a wrapped PersistenceEnvironment
-
createResolver
protected ResolvableParameterList createResolver(String sClusterName, String sServiceName)
Create aresolver
based on the provided cluster, service name and the state of this builder (active, snapshot and trash directories).- Parameters:
sClusterName
- the name of the clustersServiceName
- the name of the service- Returns:
- a resolver based on the provided cluster and service name
-
isActive
protected boolean isActive()
Return true if the persistence mode is active.- Returns:
- true if the persistence mode is active
-
isActiveBackup
protected boolean isActiveBackup()
Return true if the persistence mode is active-backup.- Returns:
- true if the persistence mode is active-backup
-
getDefaultPersistenceEnvironmentHomeDirectory
public static String getDefaultPersistenceEnvironmentHomeDirectory()
Return the default 'base' persistence directory.This location is the base for active, snapshot and trash locations if they have not been specified in the operational configuration.
The default base location is
$HOME/coherence
. This location can be overridden by specifying the JVM argument: -D"coherence.distributed.persistence.base.dir".- Returns:
- default base directory for persistence
-
-