public class FileLockNodeManager extends FileBasedNodeManager
| Modifier and Type | Class and Description |
|---|---|
class |
FileLockNodeManager.MonitorLock |
NodeManager.LockListener, NodeManager.NodeManagerException| Modifier and Type | Field and Description |
|---|---|
protected boolean |
interrupted |
channel, FIRST_TIME_START, SERVER_LOCK_NAME, serverLockFilenodeIDGuard, replicatedBackup| Constructor and Description |
|---|
FileLockNodeManager(File directory,
boolean replicatedBackup) |
FileLockNodeManager(File directory,
boolean replicatedBackup,
long lockAcquisitionTimeout,
ScheduledExecutorService scheduledPool) |
FileLockNodeManager(File directory,
boolean replicatedBackup,
ScheduledExecutorService scheduledPool) |
| Modifier and Type | Method and Description |
|---|---|
void |
awaitLiveNode() |
void |
awaitLiveStatus() |
void |
crashLiveServer() |
void |
interrupt() |
boolean |
isAwaitingFailback() |
boolean |
isBackupLive() |
boolean |
isLiveLocked() |
protected FileLock |
lock(int lockPosition) |
protected void |
notifyLostLock() |
void |
pauseLiveServer() |
SimpleString |
readNodeId() |
void |
releaseBackup() |
protected void |
setUpServerLockFile()
Ensures existence of persistent information about the server's nodeID.
|
void |
start() |
void |
startBackup() |
ActivateCallback |
startLiveNode() |
void |
stop() |
protected FileLock |
tryLock(int lockPos) |
createNodeId, newFile, stopBackupcheckStarted, getNodeId, getUUID, isStarted, registerLockListener, setNodeID, setUUID, unregisterLockListenerclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitasyncStoppublic FileLockNodeManager(File directory, boolean replicatedBackup, ScheduledExecutorService scheduledPool)
public FileLockNodeManager(File directory, boolean replicatedBackup)
public FileLockNodeManager(File directory, boolean replicatedBackup, long lockAcquisitionTimeout, ScheduledExecutorService scheduledPool)
public void start()
throws Exception
start in interface ActiveMQComponentstart in class NodeManagerExceptionprotected void setUpServerLockFile()
throws IOException
FileBasedNodeManagerRoughly the different use cases are:
setUpServerLockFile in class FileBasedNodeManagerIOExceptionpublic void stop()
throws Exception
stop in interface ActiveMQComponentstop in class FileBasedNodeManagerExceptionpublic boolean isAwaitingFailback()
throws NodeManager.NodeManagerException
isAwaitingFailback in class NodeManagerNodeManager.NodeManagerExceptionpublic boolean isBackupLive()
throws NodeManager.NodeManagerException
isBackupLive in class NodeManagerNodeManager.NodeManagerExceptionpublic boolean isLiveLocked()
public void interrupt()
interrupt in class NodeManagerpublic final void releaseBackup()
throws NodeManager.NodeManagerException
releaseBackup in class NodeManagerNodeManager.NodeManagerExceptionpublic void awaitLiveNode()
throws NodeManager.NodeManagerException,
InterruptedException
awaitLiveNode in class NodeManagerNodeManager.NodeManagerExceptionInterruptedExceptionpublic void startBackup()
throws NodeManager.NodeManagerException
startBackup in class NodeManagerNodeManager.NodeManagerExceptionpublic ActivateCallback startLiveNode() throws NodeManager.NodeManagerException
startLiveNode in class NodeManagerNodeManager.NodeManagerExceptionpublic void pauseLiveServer()
throws NodeManager.NodeManagerException
pauseLiveServer in class NodeManagerNodeManager.NodeManagerExceptionpublic void crashLiveServer()
throws NodeManager.NodeManagerException
crashLiveServer in class NodeManagerNodeManager.NodeManagerExceptionpublic void awaitLiveStatus()
throws NodeManager.NodeManagerException,
InterruptedException
awaitLiveStatus in class NodeManagerNodeManager.NodeManagerExceptionInterruptedExceptionpublic final SimpleString readNodeId() throws NodeManager.NodeManagerException
readNodeId in class NodeManagerNodeManager.NodeManagerExceptionprotected FileLock tryLock(int lockPos) throws IOException
IOExceptionprotected FileLock lock(int lockPosition) throws ActiveMQLockAcquisitionTimeoutException
protected void notifyLostLock()
notifyLostLock in class NodeManagerCopyright © 2025 JBoss by Red Hat. All rights reserved.