Class LeaderInitiator
java.lang.Object
org.springframework.integration.zookeeper.leader.LeaderInitiator
- All Implemented Interfaces:
Lifecycle
,Phased
,SmartLifecycle
Bootstrap leadership
candidates
with ZooKeeper/Curator. Upon construction, start()
must be invoked to
register the candidate for leadership election.- Since:
- 4.2
- Author:
- Patrick Peralta, Janne Valkealahti, Gary Russell, Artem Bilan
-
Nested Class Summary
Modifier and TypeClassDescriptionprotected class
Implementation of Curator leadership election listener. -
Field Summary
Fields inherited from interface org.springframework.context.SmartLifecycle
DEFAULT_PHASE
-
Constructor Summary
ConstructorDescriptionLeaderInitiator
(org.apache.curator.framework.CuratorFramework client, Candidate candidate) Construct aLeaderInitiator
.LeaderInitiator
(org.apache.curator.framework.CuratorFramework client, Candidate candidate, String namespace) Construct aLeaderInitiator
. -
Method Summary
Modifier and TypeMethodDescriptionThe context of the initiator.int
getPhase()
boolean
boolean
void
setAutoStartup
(boolean autoStartup) void
setLeaderEventPublisher
(LeaderEventPublisher leaderEventPublisher) Sets theLeaderEventPublisher
.void
setPhase
(int phase) void
start()
Start the registration of thecandidate
for leader election.void
stop()
Stop the registration of thecandidate
for leader election.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.springframework.context.SmartLifecycle
stop
-
Constructor Details
-
LeaderInitiator
Construct aLeaderInitiator
.- Parameters:
client
- Curator clientcandidate
- leadership election candidate
-
LeaderInitiator
public LeaderInitiator(org.apache.curator.framework.CuratorFramework client, Candidate candidate, String namespace) Construct aLeaderInitiator
.- Parameters:
client
- Curator clientcandidate
- leadership election candidatenamespace
- namespace base path in zookeeper
-
-
Method Details
-
isRunning
public boolean isRunning() -
getPhase
public int getPhase()- Specified by:
getPhase
in interfacePhased
- Specified by:
getPhase
in interfaceSmartLifecycle
-
setPhase
public void setPhase(int phase) - Parameters:
phase
- the phase- See Also:
-
isAutoStartup
public boolean isAutoStartup()- Specified by:
isAutoStartup
in interfaceSmartLifecycle
-
setAutoStartup
public void setAutoStartup(boolean autoStartup) - Parameters:
autoStartup
- true to start automatically- See Also:
-
start
public void start()Start the registration of thecandidate
for leader election. -
stop
public void stop()Stop the registration of thecandidate
for leader election. If the candidate is currently leader, its leadership will be revoked. -
setLeaderEventPublisher
Sets theLeaderEventPublisher
.- Parameters:
leaderEventPublisher
- the event publisher
-
getContext
The context of the initiator.- Returns:
- the context.
- Since:
- 5.0
-