...
Package store
Overview ▹
Index ▹
Constants
const ( Get = "get" Create = "create" Set = "set" Update = "update" Delete = "delete" CompareAndSwap = "compareAndSwap" CompareAndDelete = "compareAndDelete" Expire = "expire" )
explanations of Compare function result
const ( CompareMatch = iota CompareIndexNotMatch CompareValueNotMatch CompareNotMatch )
const ( SetSuccess = iota SetFail DeleteSuccess DeleteFail CreateSuccess CreateFail UpdateSuccess UpdateFail CompareAndSwapSuccess CompareAndSwapFail GetSuccess GetFail ExpireCount CompareAndDeleteSuccess CompareAndDeleteFail )
const ( GetRecursive = "getRecursive" )
Variables
var Permanent time.Time
type Event ¶
type Event struct { Action string `json:"action"` Node *NodeExtern `json:"node,omitempty"` PrevNode *NodeExtern `json:"prevNode,omitempty"` EtcdIndex uint64 `json:"-"` Refresh bool `json:"refresh,omitempty"` }
func (*Event) Clone ¶
func (e *Event) Clone() *Event
func (*Event) Index ¶
func (e *Event) Index() uint64
func (*Event) IsCreated ¶
func (e *Event) IsCreated() bool
func (*Event) SetRefresh ¶
func (e *Event) SetRefresh()
type EventHistory ¶
type EventHistory struct {
Queue eventQueue
StartIndex uint64
LastIndex uint64
// contains filtered or unexported fields
}
type NodeExtern ¶
NodeExtern is the external representation of the internal node with additional fields PrevValue is the previous value of the node TTL is time to live in second
type NodeExtern struct { Key string `json:"key,omitempty"` Value *string `json:"value,omitempty"` Dir bool `json:"dir,omitempty"` Expiration *time.Time `json:"expiration,omitempty"` TTL int64 `json:"ttl,omitempty"` Nodes NodeExterns `json:"nodes,omitempty"` ModifiedIndex uint64 `json:"modifiedIndex,omitempty"` CreatedIndex uint64 `json:"createdIndex,omitempty"` }
func (*NodeExtern) Clone ¶
func (eNode *NodeExtern) Clone() *NodeExtern
type NodeExterns ¶
type NodeExterns []*NodeExtern
func (NodeExterns) Len ¶
func (ns NodeExterns) Len() int
func (NodeExterns) Less ¶
func (ns NodeExterns) Less(i, j int) bool
func (NodeExterns) Swap ¶
func (ns NodeExterns) Swap(i, j int)
type Stats ¶
type Stats struct { GetSuccess uint64 `json:"getsSuccess"` GetFail uint64 `json:"getsFail"` SetSuccess uint64 `json:"setsSuccess"` SetFail uint64 `json:"setsFail"` DeleteSuccess uint64 `json:"deleteSuccess"` DeleteFail uint64 `json:"deleteFail"` UpdateSuccess uint64 `json:"updateSuccess"` UpdateFail uint64 `json:"updateFail"` CreateSuccess uint64 `json:"createSuccess"` CreateFail uint64 `json:"createFail"` CompareAndSwapSuccess uint64 `json:"compareAndSwapSuccess"` CompareAndSwapFail uint64 `json:"compareAndSwapFail"` CompareAndDeleteSuccess uint64 `json:"compareAndDeleteSuccess"` CompareAndDeleteFail uint64 `json:"compareAndDeleteFail"` ExpireCount uint64 `json:"expireCount"` Watchers uint64 `json:"watchers"` }
func (*Stats) Inc ¶
func (s *Stats) Inc(field int)
type Store ¶
type Store interface { Version() int Index() uint64 Get(nodePath string, recursive, sorted bool) (*Event, error) Set(nodePath string, dir bool, value string, expireOpts TTLOptionSet) (*Event, error) Update(nodePath string, newValue string, expireOpts TTLOptionSet) (*Event, error) Create(nodePath string, dir bool, value string, unique bool, expireOpts TTLOptionSet) (*Event, error) CompareAndSwap(nodePath string, prevValue string, prevIndex uint64, value string, expireOpts TTLOptionSet) (*Event, error) Delete(nodePath string, dir, recursive bool) (*Event, error) CompareAndDelete(nodePath string, prevValue string, prevIndex uint64) (*Event, error) Watch(prefix string, recursive, stream bool, sinceIndex uint64) (Watcher, error) Save() ([]byte, error) Recovery(state []byte) error Clone() Store SaveNoCopy() ([]byte, error) JsonStats() []byte DeleteExpiredKeys(cutoff time.Time) HasTTLKeys() bool }
func New ¶
func New(namespaces ...string) Store
New creates a store where the given namespaces will be created as initial directories.
type TTLOptionSet ¶
type TTLOptionSet struct { ExpireTime time.Time Refresh bool }
type Watcher ¶
type Watcher interface {
EventChan() chan *Event
StartIndex() uint64 // The EtcdIndex at which the Watcher was created
Remove()
}
func NewNopWatcher ¶
func NewNopWatcher() Watcher