Class InVMNodeManager
- java.lang.Object
-
- org.apache.activemq.artemis.core.server.NodeManager
-
- org.apache.activemq.artemis.core.server.impl.FileBasedNodeManager
-
- org.apache.activemq.artemis.core.server.impl.InVMNodeManager
-
- All Implemented Interfaces:
ActiveMQComponent
public final class InVMNodeManager extends FileBasedNodeManager
NodeManager used to run multiple servers in the same VM.We use the
InVMNodeManagerinstead ofFileLockNodeManagerwhen multiple servers are run inside the same VM and File Locks can not be shared in the same VM (it would cause a shared lock violation).
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classInVMNodeManager.State-
Nested classes/interfaces inherited from class org.apache.activemq.artemis.core.server.NodeManager
NodeManager.LockListener, NodeManager.NodeManagerException
-
-
Field Summary
Fields Modifier and Type Field Description longfailoverPauseInVMNodeManager.Statestate-
Fields inherited from class org.apache.activemq.artemis.core.server.impl.FileBasedNodeManager
activationSequenceChannel, channel, FIRST_TIME_START, SERVER_ACTIVATION_SEQUENCE_NAME, SERVER_LOCK_NAME, serverLockFile
-
Fields inherited from class org.apache.activemq.artemis.core.server.NodeManager
nodeActivationSequence, nodeIDGuard, NULL_NODE_ACTIVATION_SEQUENCE, replicatedBackup
-
-
Constructor Summary
Constructors Constructor Description InVMNodeManager(boolean replicatedBackup)InVMNodeManager(boolean replicatedBackup, File directory)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidawaitLiveNode()voidawaitLiveStatus()voidcrashLiveServer()voidinterrupt()booleanisAwaitingFailback()booleanisBackupLive()voidpauseLiveServer()SimpleStringreadNodeId()voidreleaseBackup()voidstart()voidstartBackup()ActivateCallbackstartLiveNode()-
Methods inherited from class org.apache.activemq.artemis.core.server.impl.FileBasedNodeManager
createNodeId, newFile, readNodeActivationSequence, setUpServerLockFile, stop, stopBackup, writeNodeActivationSequence
-
Methods inherited from class org.apache.activemq.artemis.core.server.NodeManager
checkStarted, getNodeActivationSequence, getNodeId, getUUID, isStarted, notifyLostLock, registerLockListener, setNodeActivationSequence, setNodeID, setUUID, unregisterLockListener
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.activemq.artemis.core.server.ActiveMQComponent
asyncStop
-
-
-
-
Field Detail
-
state
public volatile InVMNodeManager.State state
-
failoverPause
public long failoverPause
-
-
Constructor Detail
-
InVMNodeManager
public InVMNodeManager(boolean replicatedBackup)
-
InVMNodeManager
public InVMNodeManager(boolean replicatedBackup, File directory)
-
-
Method Detail
-
start
public void start() throws Exception- Specified by:
startin interfaceActiveMQComponent- Overrides:
startin classNodeManager- Throws:
Exception
-
awaitLiveNode
public void awaitLiveNode() throws InterruptedException- Specified by:
awaitLiveNodein classNodeManager- Throws:
InterruptedException
-
awaitLiveStatus
public void awaitLiveStatus() throws InterruptedException- Specified by:
awaitLiveStatusin classNodeManager- Throws:
InterruptedException
-
startBackup
public void startBackup() throws InterruptedException- Specified by:
startBackupin classNodeManager- Throws:
InterruptedException
-
startLiveNode
public ActivateCallback startLiveNode() throws InterruptedException
- Specified by:
startLiveNodein classNodeManager- Throws:
InterruptedException
-
pauseLiveServer
public void pauseLiveServer()
- Specified by:
pauseLiveServerin classNodeManager
-
crashLiveServer
public void crashLiveServer()
- Specified by:
crashLiveServerin classNodeManager
-
isAwaitingFailback
public boolean isAwaitingFailback()
- Specified by:
isAwaitingFailbackin classNodeManager
-
isBackupLive
public boolean isBackupLive()
- Specified by:
isBackupLivein classNodeManager
-
interrupt
public void interrupt()
- Specified by:
interruptin classNodeManager
-
releaseBackup
public void releaseBackup()
- Specified by:
releaseBackupin classNodeManager
-
readNodeId
public SimpleString readNodeId()
- Specified by:
readNodeIdin classNodeManager
-
-