Class ClusterSchema

  • All Implemented Interfaces:
    Cloneable, ChangedFlagInterface, org.pentaho.di.core.variables.VariableSpace, org.pentaho.di.core.xml.XMLInterface, org.pentaho.di.repository.RepositoryElementInterface, org.pentaho.di.repository.RepositoryObjectInterface, org.pentaho.di.shared.SharedObjectInterface

    public class ClusterSchema
    extends ChangedFlag
    implements Cloneable, org.pentaho.di.shared.SharedObjectInterface, org.pentaho.di.core.variables.VariableSpace, org.pentaho.di.repository.RepositoryElementInterface, org.pentaho.di.core.xml.XMLInterface
    A cluster schema combines a list of slave servers so that they can be set altogether. It (can) also contain a number of performance tuning options regarding this cluster. For example options regarding communications with the master node of the nodes themselves come to mind.
    Since:
    17-nov-2006
    Author:
    Matt
    • Field Detail

      • REPOSITORY_ELEMENT_TYPE

        public static final org.pentaho.di.repository.RepositoryObjectType REPOSITORY_ELEMENT_TYPE
    • Constructor Detail

      • ClusterSchema

        public ClusterSchema()
      • ClusterSchema

        public ClusterSchema​(String name,
                             List<SlaveServer> slaveServers)
        Parameters:
        name -
        slaveServers -
      • ClusterSchema

        public ClusterSchema​(Node clusterSchemaNode,
                             List<SlaveServer> referenceSlaveServers)
    • Method Detail

      • replaceMeta

        public void replaceMeta​(ClusterSchema clusterSchema)
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object
      • getXML

        public String getXML()
        Specified by:
        getXML in interface org.pentaho.di.shared.SharedObjectInterface
        Specified by:
        getXML in interface org.pentaho.di.core.xml.XMLInterface
      • getName

        public String getName()
        Specified by:
        getName in interface org.pentaho.di.repository.RepositoryElementInterface
        Specified by:
        getName in interface org.pentaho.di.repository.RepositoryObjectInterface
        Specified by:
        getName in interface org.pentaho.di.shared.SharedObjectInterface
        Returns:
        the name
      • setName

        public void setName​(String name)
        Specified by:
        setName in interface org.pentaho.di.repository.RepositoryElementInterface
        Parameters:
        name - the name to set
      • getSlaveServers

        public List<SlaveServer> getSlaveServers()
        Returns:
        the internal (static) list of slave servers
      • setSlaveServers

        public void setSlaveServers​(List<SlaveServer> slaveServers)
        Parameters:
        slaveServers - the slaveServers to set
      • getSlaveServerStrings

        public String[] getSlaveServerStrings()
        Returns:
        The slave server strings from this cluster schema
      • isShared

        public boolean isShared()
        Specified by:
        isShared in interface org.pentaho.di.shared.SharedObjectInterface
        Returns:
        the shared
      • setShared

        public void setShared​(boolean shared)
        Specified by:
        setShared in interface org.pentaho.di.shared.SharedObjectInterface
        Parameters:
        shared - the shared to set
      • getBasePort

        public String getBasePort()
        Returns:
        the basePort
      • setBasePort

        public void setBasePort​(String basePort)
        Parameters:
        basePort - the basePort to set
      • findMaster

        public SlaveServer findMaster()
                               throws org.pentaho.di.core.exception.KettleException
        Throws:
        org.pentaho.di.core.exception.KettleException
      • findNrSlaves

        public int findNrSlaves()
        Returns:
        The number of slave servers, excluding the master server
      • getSocketsFlushInterval

        public String getSocketsFlushInterval()
        Returns:
        the socketFlushInterval
      • setSocketsFlushInterval

        public void setSocketsFlushInterval​(String socketFlushInterval)
        Parameters:
        socketFlushInterval - the socketFlushInterval to set
      • getSocketsBufferSize

        public String getSocketsBufferSize()
        Returns:
        the socketsBufferSize
      • setSocketsBufferSize

        public void setSocketsBufferSize​(String socketsBufferSize)
        Parameters:
        socketsBufferSize - the socketsBufferSize to set
      • isSocketsCompressed

        public boolean isSocketsCompressed()
        Returns:
        the socketsCompressed
      • setSocketsCompressed

        public void setSocketsCompressed​(boolean socketsCompressed)
        Parameters:
        socketsCompressed - the socketsCompressed to set
      • getObjectId

        public org.pentaho.di.repository.ObjectId getObjectId()
        Specified by:
        getObjectId in interface org.pentaho.di.repository.RepositoryElementInterface
        Specified by:
        getObjectId in interface org.pentaho.di.repository.RepositoryObjectInterface
      • setObjectId

        public void setObjectId​(org.pentaho.di.repository.ObjectId id)
        Specified by:
        setObjectId in interface org.pentaho.di.repository.RepositoryElementInterface
      • copyVariablesFrom

        public void copyVariablesFrom​(org.pentaho.di.core.variables.VariableSpace space)
        Specified by:
        copyVariablesFrom in interface org.pentaho.di.core.variables.VariableSpace
      • environmentSubstitute

        public String environmentSubstitute​(String aString)
        Specified by:
        environmentSubstitute in interface org.pentaho.di.core.variables.VariableSpace
      • environmentSubstitute

        public String[] environmentSubstitute​(String[] aString)
        Specified by:
        environmentSubstitute in interface org.pentaho.di.core.variables.VariableSpace
      • fieldSubstitute

        public String fieldSubstitute​(String aString,
                                      org.pentaho.di.core.row.RowMetaInterface rowMeta,
                                      Object[] rowData)
                               throws org.pentaho.di.core.exception.KettleValueException
        Specified by:
        fieldSubstitute in interface org.pentaho.di.core.variables.VariableSpace
        Throws:
        org.pentaho.di.core.exception.KettleValueException
      • getParentVariableSpace

        public org.pentaho.di.core.variables.VariableSpace getParentVariableSpace()
        Specified by:
        getParentVariableSpace in interface org.pentaho.di.core.variables.VariableSpace
      • setParentVariableSpace

        public void setParentVariableSpace​(org.pentaho.di.core.variables.VariableSpace parent)
        Specified by:
        setParentVariableSpace in interface org.pentaho.di.core.variables.VariableSpace
      • getVariable

        public String getVariable​(String variableName,
                                  String defaultValue)
        Specified by:
        getVariable in interface org.pentaho.di.core.variables.VariableSpace
      • getVariable

        public String getVariable​(String variableName)
        Specified by:
        getVariable in interface org.pentaho.di.core.variables.VariableSpace
      • getBooleanValueOfVariable

        public boolean getBooleanValueOfVariable​(String variableName,
                                                 boolean defaultValue)
        Specified by:
        getBooleanValueOfVariable in interface org.pentaho.di.core.variables.VariableSpace
      • initializeVariablesFrom

        public void initializeVariablesFrom​(org.pentaho.di.core.variables.VariableSpace parent)
        Specified by:
        initializeVariablesFrom in interface org.pentaho.di.core.variables.VariableSpace
      • listVariables

        public String[] listVariables()
        Specified by:
        listVariables in interface org.pentaho.di.core.variables.VariableSpace
      • setVariable

        public void setVariable​(String variableName,
                                String variableValue)
        Specified by:
        setVariable in interface org.pentaho.di.core.variables.VariableSpace
      • shareVariablesWith

        public void shareVariablesWith​(org.pentaho.di.core.variables.VariableSpace space)
        Specified by:
        shareVariablesWith in interface org.pentaho.di.core.variables.VariableSpace
      • injectVariables

        public void injectVariables​(Map<String,​String> prop)
        Specified by:
        injectVariables in interface org.pentaho.di.core.variables.VariableSpace
      • isDynamic

        public boolean isDynamic()
        Returns:
        the dynamic
      • setDynamic

        public void setDynamic​(boolean dynamic)
        Parameters:
        dynamic - the dynamic to set
      • getSlaveServersFromMasterOrLocal

        public List<SlaveServer> getSlaveServersFromMasterOrLocal()
                                                           throws org.pentaho.di.core.exception.KettleException
        Returns:
        A list of dynamic slave servers, retrieved from the first master server that was available.
        Throws:
        org.pentaho.di.core.exception.KettleException - when none of the masters can be contacted.
      • getRepositoryDirectory

        public org.pentaho.di.repository.RepositoryDirectoryInterface getRepositoryDirectory()
        Not supported for Partition schema, return the root.
        Specified by:
        getRepositoryDirectory in interface org.pentaho.di.repository.RepositoryElementInterface
      • setRepositoryDirectory

        public void setRepositoryDirectory​(org.pentaho.di.repository.RepositoryDirectoryInterface repositoryDirectory)
        Specified by:
        setRepositoryDirectory in interface org.pentaho.di.repository.RepositoryElementInterface
      • getRepositoryElementType

        public org.pentaho.di.repository.RepositoryObjectType getRepositoryElementType()
        Specified by:
        getRepositoryElementType in interface org.pentaho.di.repository.RepositoryElementInterface
      • getObjectRevision

        public org.pentaho.di.repository.ObjectRevision getObjectRevision()
        Specified by:
        getObjectRevision in interface org.pentaho.di.repository.RepositoryElementInterface
      • setObjectRevision

        public void setObjectRevision​(org.pentaho.di.repository.ObjectRevision objectRevision)
        Specified by:
        setObjectRevision in interface org.pentaho.di.repository.RepositoryElementInterface
      • getDescription

        public String getDescription()
        Specified by:
        getDescription in interface org.pentaho.di.repository.RepositoryElementInterface
      • setDescription

        public void setDescription​(String description)
        Specified by:
        setDescription in interface org.pentaho.di.repository.RepositoryElementInterface
      • getChangedDate

        public Date getChangedDate()
        Specified by:
        getChangedDate in interface org.pentaho.di.shared.SharedObjectInterface
        Returns:
        the changedDate
      • setChangedDate

        public void setChangedDate​(Date changedDate)
        Parameters:
        changedDate - the changedDate to set