Class Gossiper
- java.lang.Object
-
- akka.actor.AbstractActor
-
- org.opendaylight.controller.cluster.common.actor.AbstractUntypedActor
-
- org.opendaylight.controller.cluster.common.actor.AbstractUntypedActorWithMetering
-
- org.opendaylight.controller.remote.rpc.registry.gossip.Gossiper
-
- All Implemented Interfaces:
Actor
,ExecuteInSelfActor
public class Gossiper extends AbstractUntypedActorWithMetering
Gossiper that syncs bucket store across nodes in the cluster.It keeps a local scheduler that periodically sends Gossip ticks to itself to send bucket store's bucket versions to a randomly selected remote gossiper.
When bucket versions are received from a remote gossiper, it is compared with bucket store's bucket versions. Which ever buckets are newer locally, are sent to remote gossiper. If any bucket is older in bucket store, a gossip status is sent to remote gossiper so that it can send the newer buckets.
When a bucket is received from a remote gossiper, its sent to the bucket store for update.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class akka.actor.AbstractActor
AbstractActor.ActorContext, AbstractActor.Receive
-
Nested classes/interfaces inherited from interface akka.actor.Actor
Actor.emptyBehavior$, Actor.ignoringBehavior$
-
-
Field Summary
-
Fields inherited from class org.opendaylight.controller.cluster.common.actor.AbstractUntypedActor
LOG
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
handleReceive(Object message)
Receive and handle an incoming message.void
postStop()
void
preStart()
static Props
props(RemoteOpsProviderConfig config)
-
Methods inherited from class org.opendaylight.controller.cluster.common.actor.AbstractUntypedActorWithMetering
getActorNameOverride
-
Methods inherited from class org.opendaylight.controller.cluster.common.actor.AbstractUntypedActor
createReceive, executeInSelf, ignoreMessage, isValidSender, unknownMessage
-
Methods inherited from class akka.actor.AbstractActor
akka$actor$Actor$_setter_$context_$eq, akka$actor$Actor$_setter_$self_$eq, aroundPostRestart, aroundPostStop, aroundPreRestart, aroundPreStart, aroundReceive, context, emptyBehavior, getContext, getSelf, getSender, postRestart, preRestart, preRestart, receive, receiveBuilder, self, sender, supervisorStrategy, unhandled
-
-
-
-
Method Detail
-
props
public static Props props(RemoteOpsProviderConfig config)
-
preStart
public void preStart()
- Specified by:
preStart
in interfaceActor
- Overrides:
preStart
in classAbstractActor
-
postStop
public void postStop()
- Specified by:
postStop
in interfaceActor
- Overrides:
postStop
in classAbstractActor
-
handleReceive
protected void handleReceive(Object message)
Description copied from class:AbstractUntypedActor
Receive and handle an incoming message. If the implementation does not handle this particular message, it should callAbstractUntypedActor.ignoreMessage(Object)
orAbstractUntypedActor.unknownMessage(Object)
.- Specified by:
handleReceive
in classAbstractUntypedActor
- Parameters:
message
- the incoming message
-
-