Class TrackedLeaderElectionManager
java.lang.Object
org.apache.nifi.controller.leader.election.TrackedLeaderElectionManager
- All Implemented Interfaces:
LeaderElectionManager
Abstract implementation of Leader Election Manager supporting tracking of operations
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final ConcurrentMap<String, TimedBuffer<TimestampedLong>> private final TimedBuffer<TimestampedLongAggregation> -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionlonggetAveragePollTime(TimeUnit timeUnit) getLeadershipChangeCount(long duration, TimeUnit unit) longgetMaxPollTime(TimeUnit timeUnit) longgetMinPollTime(TimeUnit timeUnit) longprotected booleanisParticipating(String participantId) Is specified identifier participating in the election based on null or empty participant identifierprotected voidonLeaderChanged(String roleName) On Leader Changed register role name changesvoidregister(String roleName, LeaderElectionStateChangeListener listener) Register as observer without Participant Identifierprotected voidregisterPollTime(long nanos) Register Poll Time in nanosecondsMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.nifi.controller.leader.election.LeaderElectionManager
getLeader, isActiveParticipant, isLeader, register, start, stop, unregister
-
Field Details
-
leaderChanges
-
pollTimes
-
-
Constructor Details
-
TrackedLeaderElectionManager
public TrackedLeaderElectionManager()
-
-
Method Details
-
register
Register as observer without Participant Identifier- Specified by:
registerin interfaceLeaderElectionManager- Parameters:
roleName- Name of role to be registered for electionslistener- Listener notified on leader state changes
-
getLeadershipChangeCount
- Specified by:
getLeadershipChangeCountin interfaceLeaderElectionManager
-
getAveragePollTime
- Specified by:
getAveragePollTimein interfaceLeaderElectionManager
-
getMinPollTime
- Specified by:
getMinPollTimein interfaceLeaderElectionManager
-
getMaxPollTime
- Specified by:
getMaxPollTimein interfaceLeaderElectionManager
-
getPollCount
public long getPollCount()- Specified by:
getPollCountin interfaceLeaderElectionManager
-
registerPollTime
protected void registerPollTime(long nanos) Register Poll Time in nanoseconds- Parameters:
nanos- Elapsed System Time in nanoseconds
-
onLeaderChanged
On Leader Changed register role name changes- Parameters:
roleName- Role Name for leader changes
-
isParticipating
Is specified identifier participating in the election based on null or empty participant identifier- Parameters:
participantId- Participant Identifier- Returns:
- Participating status
-