Package com.attivio.service
Class Platform
- java.lang.Object
-
- com.attivio.service.Platform
-
public final class Platform extends java.lang.Object
The Platform class encapsulates various bits of information about the system environment. It operates as a singleton, stores no state and uses ZooKeeper to save and obtain information. If anIllegalStateException
is encountered while using this class, this indicates thatEsbTestUtils.initializeEnvironment()
or one of its extensions needs to be called first.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
Platform.Mode
An enum listing the different modes Attivio can run in.
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
DEFAULT_HOST
static java.lang.String
DEFAULT_PROJECT_ENVIRONMENT_NAME
static java.lang.String
DICTIONARY
static java.lang.String
FT
znode where ft status is storedstatic java.lang.String
HADOOP
static java.lang.String
INDEX
static Platform
instance
static java.lang.String
LOCALHOST
static java.lang.String
MODE
znode where clustered status is stored.static java.lang.String
NODES
static java.lang.String
PROJECTS
static java.lang.String
SERVICES
znode where service registration is stored.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
baseport()
Returns thebaseport
for this node, first checking the ZooKeeper based configuration and falling back to theattivio.baseport
SystemProperty.org.apache.curator.framework.CuratorFramework
getAieRootCurator()
org.apache.curator.framework.CuratorFramework
getDictionaryCurator()
org.apache.curator.framework.CuratorFramework
getHadoopCurator()
java.lang.String
getHost()
org.apache.curator.framework.CuratorFramework
getIndexCurator()
java.lang.String
getNodeName()
int
getPort(DefaultEndpoints.Ports port)
org.apache.curator.framework.CuratorFramework
getProjectCurator()
java.lang.String
getProjectDataDirectory()
This data directory will be shared by all nodes in the clusterjava.lang.String
getProjectEnvironment()
java.lang.String
getProjectName()
org.apache.curator.framework.CuratorFramework
getRootCurator()
boolean
isFaultTolerant()
Platform.Mode
mode()
int
perfmonBaseport()
java.lang.String
projectRootPath()
void
reset(java.lang.String prevHost, java.lang.String prevNodeName, java.lang.String prevProjectName, java.lang.String prevEnvName)
Resets the internal state so that cached data will be refetched.void
setBaseport(java.lang.String projectName, java.lang.String projectEnvironment, java.lang.String nodeName, int baseport)
void
setEnvNameForNode(java.lang.String eName)
Should only be called from the node launcher.void
setFaultTolerant(boolean ft)
Sets the system fault tolerance setting.void
setHost(java.lang.String host)
void
setMode(Platform.Mode mode)
Sets thePlatform.Mode
for platform operation.void
setNodeName(java.lang.String nodeName)
Caution, this method can only be called under certain conditions.void
setPerfmonBaseport(java.lang.String projectName, java.lang.String projectEnvironment, int baseport)
void
setProjectDataDirectory(java.lang.String dataDir)
void
setProjectEnvironment(java.lang.String projectEnvironment)
void
setProjectName(java.lang.String projectName)
Caution, this method can only be called under certain conditions.void
setProjectNameForNode(java.lang.String pName)
Should only be called from the node launcher.void
setStoreBaseport(java.lang.String projectName, java.lang.String projectEnvironment, int baseport)
int
storeBaseport()
-
-
-
Field Detail
-
DEFAULT_PROJECT_ENVIRONMENT_NAME
public static final java.lang.String DEFAULT_PROJECT_ENVIRONMENT_NAME
- See Also:
- Constant Field Values
-
DEFAULT_HOST
public static final java.lang.String DEFAULT_HOST
- See Also:
- Constant Field Values
-
LOCALHOST
public static final java.lang.String LOCALHOST
- See Also:
- Constant Field Values
-
INDEX
public static final java.lang.String INDEX
- See Also:
- Constant Field Values
-
DICTIONARY
public static final java.lang.String DICTIONARY
- See Also:
- Constant Field Values
-
HADOOP
public static final java.lang.String HADOOP
- See Also:
- Constant Field Values
-
PROJECTS
public static final java.lang.String PROJECTS
- See Also:
- Constant Field Values
-
NODES
public static final java.lang.String NODES
- See Also:
- Constant Field Values
-
MODE
public static final java.lang.String MODE
znode where clustered status is stored.- See Also:
- Constant Field Values
-
FT
public static final java.lang.String FT
znode where ft status is stored- See Also:
- Constant Field Values
-
SERVICES
public static final java.lang.String SERVICES
znode where service registration is stored.- See Also:
- Constant Field Values
-
instance
public static final Platform instance
-
-
Method Detail
-
projectRootPath
public java.lang.String projectRootPath()
- Returns:
- the prefix path from root for the project, taking into account the current environment
-
mode
public Platform.Mode mode()
- Returns:
- the
Platform.Mode
the system is running in
-
isFaultTolerant
public boolean isFaultTolerant()
-
setMode
public void setMode(Platform.Mode mode)
Sets thePlatform.Mode
for platform operation.- Parameters:
mode
-
-
setFaultTolerant
public void setFaultTolerant(boolean ft)
Sets the system fault tolerance setting.- Parameters:
ft
-
-
baseport
public int baseport()
Returns thebaseport
for this node, first checking the ZooKeeper based configuration and falling back to theattivio.baseport
SystemProperty.- Returns:
- the
baseport
for this node
-
storeBaseport
public int storeBaseport()
-
perfmonBaseport
public int perfmonBaseport()
-
getPort
public int getPort(DefaultEndpoints.Ports port)
- Parameters:
port
-- Returns:
- the port offset plus the current Attivio system baseport
-
getProjectDataDirectory
public java.lang.String getProjectDataDirectory()
This data directory will be shared by all nodes in the cluster- Returns:
- the project-level data directory
-
setProjectDataDirectory
public void setProjectDataDirectory(java.lang.String dataDir)
-
getProjectName
public java.lang.String getProjectName()
-
getProjectEnvironment
public java.lang.String getProjectEnvironment()
-
getProjectCurator
public org.apache.curator.framework.CuratorFramework getProjectCurator()
-
getRootCurator
public org.apache.curator.framework.CuratorFramework getRootCurator()
-
getAieRootCurator
public org.apache.curator.framework.CuratorFramework getAieRootCurator()
-
getIndexCurator
public org.apache.curator.framework.CuratorFramework getIndexCurator()
-
getDictionaryCurator
public org.apache.curator.framework.CuratorFramework getDictionaryCurator()
-
getHadoopCurator
public org.apache.curator.framework.CuratorFramework getHadoopCurator()
-
setProjectNameForNode
public void setProjectNameForNode(java.lang.String pName)
Should only be called from the node launcher. projectName cannot be changed after this method was called.- Parameters:
pName
-
-
setProjectName
public void setProjectName(java.lang.String projectName)
Caution, this method can only be called under certain conditions.- Parameters:
projectName
-
-
setEnvNameForNode
public void setEnvNameForNode(java.lang.String eName)
Should only be called from the node launcher. projectName cannot be changed after this method was called.- Parameters:
eName
-
-
setProjectEnvironment
public void setProjectEnvironment(java.lang.String projectEnvironment)
-
getNodeName
public java.lang.String getNodeName()
-
setNodeName
public void setNodeName(java.lang.String nodeName)
Caution, this method can only be called under certain conditions.- Parameters:
nodeName
-
-
setBaseport
public void setBaseport(java.lang.String projectName, java.lang.String projectEnvironment, java.lang.String nodeName, int baseport)
-
setStoreBaseport
public void setStoreBaseport(java.lang.String projectName, java.lang.String projectEnvironment, int baseport)
-
setPerfmonBaseport
public void setPerfmonBaseport(java.lang.String projectName, java.lang.String projectEnvironment, int baseport)
-
getHost
public java.lang.String getHost()
-
setHost
public void setHost(java.lang.String host)
-
reset
public void reset(java.lang.String prevHost, java.lang.String prevNodeName, java.lang.String prevProjectName, java.lang.String prevEnvName)
Resets the internal state so that cached data will be refetched. This method is automatically called between unit tests by hooks inserted by TestCuratorFrameworkBuilder
-
-