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
    @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. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  13. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  14. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  15. val heartbeatTimer: RaftTimer

    Permalink

    returns

    the timer to use while in leader state

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

    Permalink
  17. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  18. val logger: Logger

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

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

    Permalink
    Definition Classes
    AnyRef
  21. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  22. def otherNodes: Map[NodeId, RaftEndpoint[T]]

    Permalink
    Attributes
    protected
  23. val ourNodeId: NodeId

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

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

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  28. def update(newMap: Map[NodeId, _ <: RaftEndpoint[T]]): Unit

    Permalink
  29. final def wait(): Unit

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

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

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

Inherited from StrictLogging

Inherited from ClusterProtocol

Inherited from AnyRef

Inherited from Any

Ungrouped