Documentation ¶
Index ¶
- func NodeNonNil(n *avl.Node) *avl.Node
- func Strnode(n *avl.Node) string
- type Circle
- func (c *Circle) Init()
- func (c *Circle) Next(key interface{}) (node *avl.Node)
- func (c *Circle) NextOrEqual(key interface{}) (node *avl.Node)
- func (c *Circle) Prev(key interface{}) (node *avl.Node)
- func (c *Circle) PrevOrEqual(key interface{}) (node *avl.Node)
- func (c *Circle) Step(node *avl.Node) (next *avl.Node)
- func (c *Circle) StepReverse(node *avl.Node) (prev *avl.Node)
- type NodeID
- type NodeManager
- func (n *NodeManager) Init()
- func (n *NodeManager) Insert(id NodeID, attachment interface{})
- func (n *NodeManager) LookupFinger(id NodeID) *avl.Node
- func (n *NodeManager) LookupPrecise(id NodeID) *avl.Node
- func (n *NodeManager) Predecessor() *avl.Node
- func (n *NodeManager) Remove(id NodeID)
- func (n *NodeManager) Replace(id NodeID, new_attachment interface{})
- func (n *NodeManager) SetSelf(id NodeID)
- func (n *NodeManager) Successor() *avl.Node
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type NodeID ¶
type NodeID []byte
type NodeManager ¶
A Node manager, offering a holistic member-list and -ring implementation.
This implementation requires the whole list of cluster-members, whereas Chord only requires a Finger-Table.
func (*NodeManager) Init ¶
func (n *NodeManager) Init()
func (*NodeManager) Insert ¶
func (n *NodeManager) Insert(id NodeID, attachment interface{})
func (*NodeManager) LookupFinger ¶
func (n *NodeManager) LookupFinger(id NodeID) *avl.Node
func (*NodeManager) LookupPrecise ¶
func (n *NodeManager) LookupPrecise(id NodeID) *avl.Node
func (*NodeManager) Predecessor ¶
func (n *NodeManager) Predecessor() *avl.Node
func (*NodeManager) Remove ¶
func (n *NodeManager) Remove(id NodeID)
func (*NodeManager) Replace ¶
func (n *NodeManager) Replace(id NodeID, new_attachment interface{})
func (*NodeManager) SetSelf ¶
func (n *NodeManager) SetSelf(id NodeID)
func (*NodeManager) Successor ¶
func (n *NodeManager) Successor() *avl.Node
Click to show internal directories.
Click to hide internal directories.