client

package
v1.1.5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 2, 2022 License: MIT Imports: 14 Imported by: 35

Documentation

Index

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) Close

func (c *Client) Close() error

Close closes the client's grpc connection and cancels any active requests.

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) DeleteDB added in v0.1.15

func (c *Client) DeleteDB(ctx context.Context, dbID thread.ID, opts ...db.ManagedOption) error

DeleteDB deletes a db.

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) NewDB added in v0.1.12

func (c *Client) NewDB(ctx context.Context, dbID thread.ID, opts ...db.NewManagedOption) error

NewDB creates a new DB with ID.

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.

func (*Client) Verify added in v1.0.0

func (c *Client) Verify(ctx context.Context, dbID thread.ID, collectionName string, instances Instances, opts ...db.TxnOption) error

Verify verifies existing instance changes.

func (*Client) WriteTransaction

func (c *Client) WriteTransaction(ctx context.Context, dbID thread.ID, collectionName string, opts ...db.TxnOption) (*WriteTransaction, error)

WriteTransaction returns a read transaction that can be started and used and ended.

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

type ListenEvent struct {
	Action Action
	Err    error
}

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

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

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.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL