Class

miniraft.state.ClusterProtocol

BaseProtocol

Related Doc: package ClusterProtocol

Permalink

abstract class BaseProtocol[T] extends ClusterProtocol with StrictLogging

A basic implementation of protocol based on a map of node entpoints

Linear Supertypes
StrictLogging, ClusterProtocol, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. BaseProtocol
  2. StrictLogging
  3. ClusterProtocol
  4. AnyRef
  5. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new BaseProtocol(ourNodeId: NodeId, initialNodes: Map[NodeId, _ <: RaftEndpoint[T]], electionTimer: RaftTimer, heartbeatTimer: RaftTimer)

    Permalink

Abstract Value Members

  1. implicit abstract def executionContext: ExecutionContext

    Permalink
    Attributes
    protected
  2. abstract def onResponse(from: NodeId, endpoint: RaftEndpoint[T], raftRequest: RaftRequest, response: RaftResponse): Unit

    Permalink

    Required by subclasses to provide a means to do something w/ a reply

    Required by subclasses to provide a means to do something w/ a reply

    from

    the node an initial request was sent to

    endpoint

    the endpoint who received our RaftRequest and has now replied

    raftRequest

    the request sent to the endpoint

    response

    the response received

Concrete Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  5. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @HotSpotIntrinsicCandidate() @throws( ... )
  6. def clusterNodeIds: Set[NodeId]

    Permalink
    Definition Classes
    BaseProtocolClusterProtocol
  7. def clusterNodesById: Map[String, RaftEndpoint[T]]

    Permalink
  8. def clusterSize: Int

    Permalink
    Definition Classes
    ClusterProtocol
  9. val electionTimer: RaftTimer

    Permalink

    returns

    the timer to use when in follower state

    Definition Classes
    BaseProtocolClusterProtocol
  10. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  11. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  12. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
    Annotations
    @HotSpotIntrinsicCandidate()
  13. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
    Annotations
    @HotSpotIntrinsicCandidate()
  14. val heartbeatTimer: RaftTimer

    Permalink

    returns

    the timer to use while in leader state

    Definition Classes
    BaseProtocolClusterProtocol
  15. val initialNodes: Map[NodeId, _ <: RaftEndpoint[T]]

    Permalink
  16. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  17. val logger: Logger

    Permalink
    Attributes
    protected
    Definition Classes
    StrictLogging
  18. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  19. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @HotSpotIntrinsicCandidate()
  20. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @HotSpotIntrinsicCandidate()
  21. def otherNodes: Map[NodeId, RaftEndpoint[T]]

    Permalink
    Attributes
    protected
  22. val ourNodeId: NodeId

    Permalink
  23. def removeEndpoint(id: NodeId): Boolean

    Permalink
  24. def setEndpoints(newMap: Map[NodeId, _ <: RaftEndpoint[T]]): Unit

    Permalink
  25. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  26. def tell(id: NodeId, raftRequest: RaftRequest): Unit

    Permalink
    Definition Classes
    BaseProtocolClusterProtocol
  27. def tellOthers(raftRequest: RaftRequest): Unit

    Permalink
    Definition Classes
    BaseProtocolClusterProtocol
  28. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  29. def update(key: NodeId, endpoint: RaftEndpoint[T]): Map[String, RaftEndpoint[T]]

    Permalink
  30. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  31. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  32. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Deprecated Value Members

  1. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @Deprecated @deprecated @throws( classOf[java.lang.Throwable] )
    Deprecated

    (Since version ) see corresponding Javadoc for more information.

Inherited from StrictLogging

Inherited from ClusterProtocol

Inherited from AnyRef

Inherited from Any

Ungrouped