Class PersistenceEnvironmentParamBuilder

  • All Implemented Interfaces:
    ParameterizedBuilder<com.oracle.coherence.persistence.PersistenceEnvironment>

    public class PersistenceEnvironmentParamBuilder
    extends Object
    implements ParameterizedBuilder<com.oracle.coherence.persistence.PersistenceEnvironment>
    Build a PersistenceEnvironment.

    Provide a means to get a PersistenceEnvironmentParamBuilder.PersistenceEnvironmentInfo without creating a PersistenceEnvironment 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
    • Field Detail

      • 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.
    • Constructor Detail

      • PersistenceEnvironmentParamBuilder

        public PersistenceEnvironmentParamBuilder()
        Construct a PersistenceEnvironment builder.
    • Method Detail

      • 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 a builder to be used instantiate the appropriate PersistenceEnvironment.
        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 a PersistenceEnvironment with a SafePersistenceEnvironment.
        Parameters:
        env - a wrapped PersistenceEnvironment
        Returns:
        a wrapped PersistenceEnvironment
      • createResolver

        protected ResolvableParameterList createResolver​(String sClusterName,
                                                         String sServiceName)
        Create a resolver based on the provided cluster, service name and the state of this builder (active, snapshot and trash directories).
        Parameters:
        sClusterName - the name of the cluster
        sServiceName - 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