Documentation ¶
Index ¶
- type Action
- type ActionType
- type Client
- func (c *Client) Close() error
- func (c *Client) Create(ctx context.Context, dbID thread.ID, collectionName string, ...) ([]string, error)
- func (c *Client) Delete(ctx context.Context, dbID thread.ID, collectionName string, ...) error
- func (c *Client) DeleteCollection(ctx context.Context, dbID thread.ID, name string, opts ...db.ManagedOption) error
- func (c *Client) DeleteDB(ctx context.Context, dbID thread.ID, opts ...db.ManagedOption) error
- func (c *Client) Find(ctx context.Context, dbID thread.ID, collectionName string, query *db.Query, ...) (interface{}, error)
- func (c *Client) FindByID(ctx context.Context, dbID thread.ID, collectionName, instanceID string, ...) error
- func (c *Client) GetCollectionIndexes(ctx context.Context, dbID thread.ID, name string, opts ...db.ManagedOption) ([]db.Index, error)
- func (c *Client) GetCollectionInfo(ctx context.Context, dbID thread.ID, name string, opts ...db.ManagedOption) (db.CollectionConfig, error)
- func (c *Client) GetDBInfo(ctx context.Context, dbID thread.ID, opts ...db.ManagedOption) (db.Info, error)
- func (c *Client) GetToken(ctx context.Context, identity thread.Identity) (tok thread.Token, err error)
- func (c *Client) Has(ctx context.Context, dbID thread.ID, collectionName string, ...) (bool, error)
- func (c *Client) ListCollections(ctx context.Context, dbID thread.ID, opts ...db.ManagedOption) ([]db.CollectionConfig, error)
- func (c *Client) ListDBs(ctx context.Context, opts ...db.ManagedOption) (map[thread.ID]db.Info, error)
- func (c *Client) Listen(ctx context.Context, dbID thread.ID, listenOptions []ListenOption, ...) (<-chan ListenEvent, error)
- func (c *Client) NewCollection(ctx context.Context, dbID thread.ID, config db.CollectionConfig, ...) error
- func (c *Client) NewDB(ctx context.Context, dbID thread.ID, opts ...db.NewManagedOption) error
- func (c *Client) NewDBFromAddr(ctx context.Context, dbAddr ma.Multiaddr, dbKey thread.Key, ...) error
- func (c *Client) ReadTransaction(ctx context.Context, dbID thread.ID, collectionName string, ...) (*ReadTransaction, error)
- func (c *Client) Save(ctx context.Context, dbID thread.ID, collectionName string, ...) error
- func (c *Client) UpdateCollection(ctx context.Context, dbID thread.ID, config db.CollectionConfig, ...) error
- func (c *Client) Verify(ctx context.Context, dbID thread.ID, collectionName string, ...) error
- func (c *Client) WriteTransaction(ctx context.Context, dbID thread.ID, collectionName string, ...) (*WriteTransaction, error)
- type EndTransactionFunc
- type Instances
- type ListenActionType
- type ListenEvent
- type ListenOption
- type ReadTransaction
- type WriteTransaction
- func (t *WriteTransaction) Create(items ...interface{}) ([]string, error)
- func (t *WriteTransaction) Delete(instanceIDs ...string) error
- func (t *WriteTransaction) Discard() error
- func (t *WriteTransaction) Find(query *db.Query, dummy interface{}) (interface{}, error)
- func (t *WriteTransaction) FindByID(instanceID string, instance interface{}) error
- func (t *WriteTransaction) Has(instanceIDs ...string) (bool, error)
- func (t *WriteTransaction) Save(items ...interface{}) error
- func (t *WriteTransaction) Start() (EndTransactionFunc, error)
- func (t *WriteTransaction) Verify(items ...interface{}) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Action ¶
type Action struct { Collection string Type ActionType InstanceID string Instance []byte }
Action represents a data event delivered to a listener.
type ActionType ¶
type ActionType int
ActionType describes the type of event action when subscribing to data updates.
const ( // ActionCreate represents an event for creating a new instance. ActionCreate ActionType = iota + 1 // ActionSave represents an event for saving changes to an existing instance. ActionSave // ActionDelete represents an event for deleting existing instance. ActionDelete )
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
Client provides the client api.
func NewClient ¶
func NewClient(target string, opts ...grpc.DialOption) (*Client, error)
NewClient starts the client.
func (*Client) Create ¶ added in v0.1.12
func (c *Client) Create(ctx context.Context, dbID thread.ID, collectionName string, instances Instances, opts ...db.TxnOption) ([]string, error)
Create creates new instances of objects.
func (*Client) Delete ¶ added in v0.1.12
func (c *Client) Delete(ctx context.Context, dbID thread.ID, collectionName string, instanceIDs []string, opts ...db.TxnOption) error
Delete deletes data.
func (*Client) DeleteCollection ¶ added in v0.1.19
func (c *Client) DeleteCollection(ctx context.Context, dbID thread.ID, name string, opts ...db.ManagedOption) error
DeleteCollection deletes a collection.
func (*Client) Find ¶ added in v0.1.12
func (c *Client) Find(ctx context.Context, dbID thread.ID, collectionName string, query *db.Query, dummy interface{}, opts ...db.TxnOption) (interface{}, error)
Find finds instances by query.
func (*Client) FindByID ¶ added in v0.1.12
func (c *Client) FindByID(ctx context.Context, dbID thread.ID, collectionName, instanceID string, instance interface{}, opts ...db.TxnOption) error
FindByID finds an instance by id.
func (*Client) GetCollectionIndexes ¶ added in v0.1.19
func (c *Client) GetCollectionIndexes(ctx context.Context, dbID thread.ID, name string, opts ...db.ManagedOption) ([]db.Index, error)
GetCollectionIndexes returns an existing collection's indexes. Deprecated: Use GetCollectionInfo instead.
func (*Client) GetCollectionInfo ¶ added in v0.1.22
func (c *Client) GetCollectionInfo(ctx context.Context, dbID thread.ID, name string, opts ...db.ManagedOption) (db.CollectionConfig, error)
GetCollectionInfo returns information about an existing collection.
func (*Client) GetDBInfo ¶ added in v0.1.12
func (c *Client) GetDBInfo(ctx context.Context, dbID thread.ID, opts ...db.ManagedOption) (db.Info, error)
GetDBInfo retrives db addresses and keys.
func (*Client) GetToken ¶ added in v0.1.13
func (c *Client) GetToken(ctx context.Context, identity thread.Identity) (tok thread.Token, err error)
GetToken gets a db token for use with the rest of the API.
func (*Client) Has ¶ added in v0.1.12
func (c *Client) Has(ctx context.Context, dbID thread.ID, collectionName string, instanceIDs []string, opts ...db.TxnOption) (bool, error)
Has checks if the specified instances exist.
func (*Client) ListCollections ¶ added in v0.1.22
func (c *Client) ListCollections(ctx context.Context, dbID thread.ID, opts ...db.ManagedOption) ([]db.CollectionConfig, error)
ListCollections returns information about all existing collections.
func (*Client) ListDBs ¶ added in v0.1.19
func (c *Client) ListDBs(ctx context.Context, opts ...db.ManagedOption) (map[thread.ID]db.Info, error)
ListDBs lists all dbs.
func (*Client) Listen ¶
func (c *Client) Listen(ctx context.Context, dbID thread.ID, listenOptions []ListenOption, opts ...db.TxnOption) (<-chan ListenEvent, error)
Listen provides an update whenever the specified db, collection, or instance is updated.
func (*Client) NewCollection ¶ added in v0.1.12
func (c *Client) NewCollection(ctx context.Context, dbID thread.ID, config db.CollectionConfig, opts ...db.ManagedOption) error
NewCollection creates a new collection.
func (*Client) NewDBFromAddr ¶ added in v0.1.12
func (c *Client) NewDBFromAddr(ctx context.Context, dbAddr ma.Multiaddr, dbKey thread.Key, opts ...db.NewManagedOption) error
NewDBFromAddr creates a new DB with address and keys.
func (*Client) ReadTransaction ¶
func (c *Client) ReadTransaction(ctx context.Context, dbID thread.ID, collectionName string, opts ...db.TxnOption) (*ReadTransaction, error)
ReadTransaction returns a read transaction that can be started and used and ended.
func (*Client) Save ¶ added in v0.1.12
func (c *Client) Save(ctx context.Context, dbID thread.ID, collectionName string, instances Instances, opts ...db.TxnOption) error
Save saves existing instances.
func (*Client) UpdateCollection ¶ added in v0.1.19
func (c *Client) UpdateCollection(ctx context.Context, dbID thread.ID, config db.CollectionConfig, opts ...db.ManagedOption) error
UpdateCollection updates an existing collection.
type EndTransactionFunc ¶
type EndTransactionFunc = func() error
EndTransactionFunc must be called to end a transaction after it has been started.
type Instances ¶ added in v0.1.13
type Instances []interface{}
Instances is a list of collection instances.
type ListenActionType ¶
type ListenActionType int
ListenActionType describes the type of event action when receiving data updates.
const ( // ListenAll specifies that Create, Save, and Delete events should be listened for. ListenAll ListenActionType = iota // ListenCreate specifies that Create events should be listened for. ListenCreate // ListenSave specifies that Save events should be listened for. ListenSave // ListenDelete specifies that Delete events should be listened for. ListenDelete )
type ListenEvent ¶
ListenEvent is used to send data or error values for Listen.
type ListenOption ¶
type ListenOption struct { Type ListenActionType Collection string InstanceID string }
ListenOption represents a filter to apply when listening for data updates.
type ReadTransaction ¶
type ReadTransaction struct {
// contains filtered or unexported fields
}
ReadTransaction encapsulates a read transaction.
func (*ReadTransaction) Find ¶
func (t *ReadTransaction) Find(query *db.Query, dummy interface{}) (interface{}, error)
Find finds instances by query.
func (*ReadTransaction) FindByID ¶
func (t *ReadTransaction) FindByID(instanceID string, instance interface{}) error
FindByID gets the instance with the specified ID.
func (*ReadTransaction) Has ¶
func (t *ReadTransaction) Has(instanceIDs ...string) (bool, error)
Has runs a has query in the active transaction.
func (*ReadTransaction) Start ¶
func (t *ReadTransaction) Start() (EndTransactionFunc, error)
Start starts the read transaction.
type WriteTransaction ¶
type WriteTransaction struct {
// contains filtered or unexported fields
}
WriteTransaction encapsulates a write transaction.
func (*WriteTransaction) Create ¶
func (t *WriteTransaction) Create(items ...interface{}) ([]string, error)
Create creates new instances of objects.
func (*WriteTransaction) Delete ¶
func (t *WriteTransaction) Delete(instanceIDs ...string) error
Delete deletes data.
func (*WriteTransaction) Discard ¶ added in v1.0.0
func (t *WriteTransaction) Discard() error
Discard discards transaction changes.
func (*WriteTransaction) Find ¶
func (t *WriteTransaction) Find(query *db.Query, dummy interface{}) (interface{}, error)
Find finds instances by query.
func (*WriteTransaction) FindByID ¶
func (t *WriteTransaction) FindByID(instanceID string, instance interface{}) error
FindByID gets the instance with the specified ID.
func (*WriteTransaction) Has ¶
func (t *WriteTransaction) Has(instanceIDs ...string) (bool, error)
Has runs a has query in the active transaction.
func (*WriteTransaction) Save ¶
func (t *WriteTransaction) Save(items ...interface{}) error
Save saves existing instances.
func (*WriteTransaction) Start ¶
func (t *WriteTransaction) Start() (EndTransactionFunc, error)
Start starts the write transaction.
func (*WriteTransaction) Verify ¶ added in v1.0.0
func (t *WriteTransaction) Verify(items ...interface{}) error
Verify verifies existing instance changes.