bump(github.com/goraft/raft): 6bf34b9
Move from coreos/raft to goraft/raft and update to latest.
This commit is contained in:
61
third_party/github.com/goraft/raft/event.go
vendored
Normal file
61
third_party/github.com/goraft/raft/event.go
vendored
Normal file
@ -0,0 +1,61 @@
|
||||
package raft
|
||||
|
||||
const (
|
||||
StateChangeEventType = "stateChange"
|
||||
LeaderChangeEventType = "leaderChange"
|
||||
TermChangeEventType = "termChange"
|
||||
CommitEventType = "commit"
|
||||
AddPeerEventType = "addPeer"
|
||||
RemovePeerEventType = "removePeer"
|
||||
|
||||
HeartbeatIntervalEventType = "heartbeatInterval"
|
||||
ElectionTimeoutThresholdEventType = "electionTimeoutThreshold"
|
||||
|
||||
HeartbeatEventType = "heartbeat"
|
||||
)
|
||||
|
||||
// Event represents an action that occurred within the Raft library.
|
||||
// Listeners can subscribe to event types by using the Server.AddEventListener() function.
|
||||
type Event interface {
|
||||
Type() string
|
||||
Source() interface{}
|
||||
Value() interface{}
|
||||
PrevValue() interface{}
|
||||
}
|
||||
|
||||
// event is the concrete implementation of the Event interface.
|
||||
type event struct {
|
||||
typ string
|
||||
source interface{}
|
||||
value interface{}
|
||||
prevValue interface{}
|
||||
}
|
||||
|
||||
// newEvent creates a new event.
|
||||
func newEvent(typ string, value interface{}, prevValue interface{}) *event {
|
||||
return &event{
|
||||
typ: typ,
|
||||
value: value,
|
||||
prevValue: prevValue,
|
||||
}
|
||||
}
|
||||
|
||||
// Type returns the type of event that occurred.
|
||||
func (e *event) Type() string {
|
||||
return e.typ
|
||||
}
|
||||
|
||||
// Source returns the object that dispatched the event.
|
||||
func (e *event) Source() interface{} {
|
||||
return e.source
|
||||
}
|
||||
|
||||
// Value returns the current value associated with the event, if applicable.
|
||||
func (e *event) Value() interface{} {
|
||||
return e.value
|
||||
}
|
||||
|
||||
// PrevValue returns the previous value associated with the event, if applicable.
|
||||
func (e *event) PrevValue() interface{} {
|
||||
return e.prevValue
|
||||
}
|
Reference in New Issue
Block a user