Versions in this module Expand all Collapse all v1 v1.1.0 Jun 24, 2023 Changes in this version + const NoTTL + var DataStoreClass = reflect.TypeOf((*DataStore)(nil)).Elem() + var DataStoreManagerClass = reflect.TypeOf((*DataStoreManager)(nil)).Elem() + var DefaultBatchSize = 256 + var ErrAlreadyClosed = errors.New("already closed") + var ErrCanceledTxn = errors.New("transaction has been canceled") + var ErrConcurrentTxn = errors.New("concurrent transaction, try again") + var ErrDiscardedTxn = errors.New("transaction has been discarded") + var ErrEmptyKey = errors.New("empty key") + var ErrInternal = errors.New("internal error") + var ErrInvalidKey = errors.New("key is invalid") + var ErrInvalidRequest = errors.New("invalid request") + var ErrNotFound = os.ErrNotExist + var ErrReadOnlyTxn = errors.New("read-only transaction has update operation") + var ErrTooBigTxn = errors.New("transaction is too big") + var ManagedDataStoreClass = reflect.TypeOf((*ManagedDataStore)(nil)).Elem() + var ManagedTransactionalDataStoreClass = reflect.TypeOf((*ManagedTransactionalDataStore)(nil)).Elem() + var TransactionClass = reflect.TypeOf((*Transaction)(nil)).Elem() + var TransactionalDataStoreClass = reflect.TypeOf((*TransactionalDataStore)(nil)).Elem() + var TransactionalManagerClass = reflect.TypeOf((*TransactionalManager)(nil)).Elem() + func WithTransaction(ctx context.Context, beanName string, tx Transaction) context.Context + type CompareAndSetOperation struct + Context context.Context + func (t *CompareAndSetOperation) Binary(value []byte) (bool, error) + func (t *CompareAndSetOperation) ByKey(formatKey string, args ...interface{}) *CompareAndSetOperation + func (t *CompareAndSetOperation) ByRawKey(key []byte) *CompareAndSetOperation + func (t *CompareAndSetOperation) Counter(value uint64) (bool, error) + func (t *CompareAndSetOperation) Proto(msg proto.Message) (bool, error) + func (t *CompareAndSetOperation) String(value string) (bool, error) + func (t *CompareAndSetOperation) WithTtl(ttlSeconds int) *CompareAndSetOperation + func (t *CompareAndSetOperation) WithVersion(version int64) *CompareAndSetOperation + type CounterEntry struct + Key []byte + Ttl int + Value uint64 + Version int64 + type DataStore interface + CompareAndSet func(ctx context.Context) *CompareAndSetOperation + CompareAndSetRaw func(ctx context.Context, key, value []byte, ttlSeconds int, version int64) (bool, error) + Enumerate func(ctx context.Context) *EnumerateOperation + EnumerateRaw func(ctx context.Context, prefix, seek []byte, batchSize int, onlyKeys bool, ...) error + Get func(ctx context.Context) *GetOperation + GetRaw func(ctx context.Context, key []byte, ttlPtr *int, versionPtr *int64, required bool) ([]byte, error) + Increment func(ctx context.Context) *IncrementOperation + IncrementRaw func(ctx context.Context, key []byte, initial, delta int64, ttlSeconds int) (int64, error) + Remove func(ctx context.Context) *RemoveOperation + RemoveRaw func(ctx context.Context, key []byte) error + Set func(ctx context.Context) *SetOperation + SetRaw func(ctx context.Context, key, value []byte, ttlSeconds int) error + Touch func(ctx context.Context) *TouchOperation + TouchRaw func(ctx context.Context, key []byte, ttlSeconds int) error + type DataStoreManager interface + Backup func(w io.Writer, since uint64) (uint64, error) + Compact func(discardRatio float64) error + DropAll func() error + DropWithPrefix func(prefix []byte) error + Restore func(r io.Reader) error + type EnumerateOperation struct + Context context.Context + func (t *EnumerateOperation) ByPrefix(formatPrefix string, args ...interface{}) *EnumerateOperation + func (t *EnumerateOperation) ByRawPrefix(prefix []byte) *EnumerateOperation + func (t *EnumerateOperation) Do(cb func(*RawEntry) bool) error + func (t *EnumerateOperation) DoCounters(cb func(*CounterEntry) bool) (err error) + func (t *EnumerateOperation) DoProto(factory func() proto.Message, cb func(*ProtoEntry) bool) error + func (t *EnumerateOperation) OnlyKeys() *EnumerateOperation + func (t *EnumerateOperation) Reverse() *EnumerateOperation + func (t *EnumerateOperation) Seek(formatSeek string, args ...interface{}) *EnumerateOperation + func (t *EnumerateOperation) WithBatchSize(batchSize int) *EnumerateOperation + type GetOperation struct + Context context.Context + func (t *GetOperation) ByKey(formatKey string, args ...interface{}) *GetOperation + func (t *GetOperation) ByRawKey(key []byte) *GetOperation + func (t *GetOperation) Required() *GetOperation + func (t *GetOperation) ToBinary() ([]byte, error) + func (t *GetOperation) ToCounter() (uint64, error) + func (t *GetOperation) ToCounterEntry() (entry CounterEntry, err error) + func (t *GetOperation) ToEntry() (entry RawEntry, err error) + func (t *GetOperation) ToProto(container proto.Message) error + func (t *GetOperation) ToProtoEntry(factory func() proto.Message) (entry ProtoEntry, err error) + func (t *GetOperation) ToString() (string, error) + func (t *GetOperation) WithTtl(ttl *int) *GetOperation + func (t *GetOperation) WithVersion(version *int64) *GetOperation + type IncrementOperation struct + Context context.Context + Delta int64 + Initial int64 + func (t *IncrementOperation) ByKey(formatKey string, args ...interface{}) *IncrementOperation + func (t *IncrementOperation) ByRawKey(key []byte) *IncrementOperation + func (t *IncrementOperation) Do() (prev int64, err error) + func (t *IncrementOperation) WithDelta(delta int64) *IncrementOperation + func (t *IncrementOperation) WithInitialValue(initial int64) *IncrementOperation + func (t *IncrementOperation) WithTtl(ttlSeconds int) *IncrementOperation + type ManagedDataStore interface + Instance func() interface{} + type ManagedTransactionalDataStore interface + type ProtoEntry struct + Key []byte + Ttl int + Value proto.Message + Version int64 + type RawEntry struct + Key []byte + Ttl int + Value []byte + Version int64 + type RemoveOperation struct + Context context.Context + func (t *RemoveOperation) ByKey(formatKey string, args ...interface{}) *RemoveOperation + func (t *RemoveOperation) ByRawKey(key []byte) *RemoveOperation + func (t *RemoveOperation) Do() error + type SetOperation struct + Context context.Context + func (t *SetOperation) Binary(value []byte) error + func (t *SetOperation) ByKey(formatKey string, args ...interface{}) *SetOperation + func (t *SetOperation) ByRawKey(key []byte) *SetOperation + func (t *SetOperation) Counter(value uint64) error + func (t *SetOperation) Proto(msg proto.Message) error + func (t *SetOperation) String(value string) error + func (t *SetOperation) WithTtl(ttlSeconds int) *SetOperation + type TouchOperation struct + Context context.Context + func (t *TouchOperation) ByKey(formatKey string, args ...interface{}) *TouchOperation + func (t *TouchOperation) ByRawKey(key []byte) *TouchOperation + func (t *TouchOperation) Do() error + func (t *TouchOperation) WithTtl(ttlSeconds int) *TouchOperation + type Transaction interface + Commit func() error + Instance func() interface{} + ReadOnly func() bool + Rollback func() + func GetTransaction(ctx context.Context, beanName string) (Transaction, bool) + func NewInnerTransaction(parent Transaction) Transaction + type TransactionalDataStore interface + type TransactionalManager interface + BeginTransaction func(ctx context.Context, readOnly bool) context.Context + EndTransaction func(ctx context.Context, errOps error) error