Documentation ¶
Index ¶
- type Host
- type Middleware
- type Router
- func (h *Router) AddData(cID uint64, di balancer.DataItem) error
- func (h *Router) AddNode(ctx context.Context, n nodes.Node) error
- func (h *Router) CallOptimize(w http.ResponseWriter, r *http.Request, _ httprouter.Params)
- func (h *Router) Cid(w http.ResponseWriter, r *http.Request, _ httprouter.Params)
- func (h *Router) Config(w http.ResponseWriter, _ *http.Request, _ httprouter.Params)
- func (h *Router) Explore(w http.ResponseWriter, r *http.Request, _ httprouter.Params)
- func (h *Router) GetNode(id string) (nodes.Node, error)
- func (h *Router) GetNodes() ([]nodes.Node, error)
- func (h *Router) HTTPHandler() *httprouter.Router
- func (h *Router) Hasher() nodehasher.Hasher
- func (h *Router) LocateKey(rdi *rpcapi.DataItem) (nodes.Node, uint64, error)
- func (h *Router) Nodes(w http.ResponseWriter, r *http.Request, _ httprouter.Params)
- func (h *Router) Optimize(ctx context.Context) error
- func (h *Router) Receive(w http.ResponseWriter, r *http.Request, ps httprouter.Params)
- func (h *Router) RemoveData(key string) error
- func (h *Router) RemoveNode(id string) error
- func (h *Router) SetNodes(ns []nodes.Node) error
- func (h *Router) Store(w http.ResponseWriter, r *http.Request, ps httprouter.Params)
- type SyncMap
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Host ¶
type Host struct {
// contains filtered or unexported fields
}
func (*Host) RPCHeartbeat ¶
func (*Host) RPCRegister ¶
func (*Host) RunHTTPServer ¶
type Middleware ¶
type Middleware struct {
// contains filtered or unexported fields
}
Middleware - middleware template
func LatencyMiddleware ¶
func LatencyMiddleware(h http.Handler, wait time.Duration) *Middleware
LatencyMiddleware - simulates node latency
func (*Middleware) ServeHTTP ¶
func (m *Middleware) ServeHTTP(w http.ResponseWriter, r *http.Request)
type Router ¶
type Router struct {
// contains filtered or unexported fields
}
Router represents bounding of network api with kvrouter lib and local node
func NewRouter ¶
func NewRouter(bal balanceradapter.Balancer, h nodehasher.Hasher, ndf dataitem.NewDataItemFunc, rpcndf dataitem.DataItemFromRpc, conf *config.BalancerConfig) (*Router, error)
func (*Router) CallOptimize ¶
func (h *Router) CallOptimize(w http.ResponseWriter, r *http.Request, _ httprouter.Params)
func (*Router) Cid ¶
func (h *Router) Cid(w http.ResponseWriter, r *http.Request, _ httprouter.Params)
func (*Router) Config ¶
func (h *Router) Config(w http.ResponseWriter, _ *http.Request, _ httprouter.Params)
func (*Router) Explore ¶
func (h *Router) Explore(w http.ResponseWriter, r *http.Request, _ httprouter.Params)
Explore returns a list of keys on nodes
func (*Router) HTTPHandler ¶
func (h *Router) HTTPHandler() *httprouter.Router
func (*Router) Hasher ¶
func (h *Router) Hasher() nodehasher.Hasher
func (*Router) Nodes ¶
func (h *Router) Nodes(w http.ResponseWriter, r *http.Request, _ httprouter.Params)
Nodes returns a list of nodes
func (*Router) Receive ¶
func (h *Router) Receive(w http.ResponseWriter, r *http.Request, ps httprouter.Params)
Receive value for a given key from the remote node
func (*Router) RemoveData ¶
func (*Router) RemoveNode ¶
RemoveNode removes node from kvrouter
func (*Router) Store ¶
func (h *Router) Store(w http.ResponseWriter, r *http.Request, ps httprouter.Params)
Store value for a given key on the remote node
type SyncMap ¶
type SyncMap struct {
// contains filtered or unexported fields
}
func NewSyncMap ¶
func NewSyncMap() *SyncMap
func (*SyncMap) JsonMarshal ¶
Click to show internal directories.
Click to hide internal directories.