db

package
v0.5.0 Latest Latest
Warning

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

Go to latest
Published: Aug 20, 2023 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// ErrDocumentNotFound is returned when the doc does not exist in the DB.
	ErrDocumentNotFound = errors.New("document not found")
)

Functions

This section is empty.

Types

type Config

type Config struct {
	// the data source name (DSN) for connecting to the database.
	Server string `mapstructure:"server"`
	// Username used to access the db.
	Username string `mapstructure:"username"`
	// Password used to access the db.
	Password string `mapstructure:"password"`
	// Name of the couchbase bucket.
	BucketName string `mapstructure:"bucket_name"`
}

Config represents the database config.

type DB

type DB struct {
	Bucket     *gocb.Bucket
	Cluster    *gocb.Cluster
	Collection *gocb.Collection
}

DB represents the database connection.

func Open

func Open(server, username, password, bucketName string) (DB, error)

Open opens a connection to the database.

func (*DB) Count

func (db *DB) Count(ctx context.Context, docType string,
	val interface{}) error

Count retrieves the total number of documents.

func (*DB) Create

func (db *DB) Create(ctx context.Context, key string, val interface{}) error

Create saves a new document into the collection.

func (*DB) Delete

func (db *DB) Delete(ctx context.Context, key string) error

Delete removes a document from the collection.

func (*DB) Get

func (db *DB) Get(ctx context.Context, key string, model interface{}) error

Get retrieves the document using its key.

func (*DB) Lookup

func (db *DB) Lookup(ctx context.Context, key string, path string,
	val interface{}) error

Lookup query the document for certain path(s); these path(s) are then returned.

func (*DB) Query

func (db *DB) Query(ctx context.Context, statement string,
	args map[string]interface{}) (*gocb.QueryResult, error)

Query executes a N1QL query.

func (*DB) Update

func (db *DB) Update(ctx context.Context, key string, path string,
	val interface{}) error

Update updates a document in the collection.

Jump to

Keyboard shortcuts

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