mongodb

package
v1.13.1 Latest Latest
Warning

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

Go to latest
Published: Apr 1, 2024 License: Apache-2.0 Imports: 24 Imported by: 4

Documentation

Overview

Package mongodb is an implementation of StateStore interface to perform operations on store

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewMongoDB

func NewMongoDB(logger logger.Logger) state.Store

NewMongoDB returns a new MongoDB state store.

Types

type Item

type Item struct {
	Key   string      `bson:"_id"`
	Value interface{} `bson:"value"`
	Etag  string      `bson:"_etag"`
	TTL   *time.Time  `bson:"_ttl,omitempty"`
}

Item is Mongodb document wrapper.

type MongoDB

type MongoDB struct {
	state.BulkStore
	// contains filtered or unexported fields
}

MongoDB is a state store implementation for MongoDB.

func (*MongoDB) BulkGet added in v1.11.0

func (*MongoDB) Close added in v1.12.0

func (m *MongoDB) Close(ctx context.Context) (err error)

Close connection to the database.

func (*MongoDB) Delete

func (m *MongoDB) Delete(ctx context.Context, req *state.DeleteRequest) error

Delete performs a delete operation.

func (*MongoDB) Features added in v1.1.1

func (m *MongoDB) Features() []state.Feature

Features returns the features available in this state store.

func (*MongoDB) Get

func (m *MongoDB) Get(ctx context.Context, req *state.GetRequest) (*state.GetResponse, error)

Get retrieves state from MongoDB with a key.

func (*MongoDB) GetComponentMetadata added in v1.10.1

func (m *MongoDB) GetComponentMetadata() (metadataInfo metadata.MetadataMap)

func (*MongoDB) Init

func (m *MongoDB) Init(ctx context.Context, metadata state.Metadata) (err error)

Init establishes connection to the store based on the metadata.

func (*MongoDB) Multi

func (m *MongoDB) Multi(ctx context.Context, request *state.TransactionalStateRequest) error

Multi performs a transactional operation. succeeds only if all operations succeed, and fails if one or more operations fail.

func (*MongoDB) Ping added in v1.4.4

func (m *MongoDB) Ping(ctx context.Context) error

func (*MongoDB) Query added in v1.5.0

Query executes a query against store.

func (*MongoDB) Set

func (m *MongoDB) Set(ctx context.Context, req *state.SetRequest) error

Set saves state into MongoDB.

type Query added in v1.5.0

type Query struct {
	// contains filtered or unexported fields
}

func (*Query) Finalize added in v1.5.0

func (q *Query) Finalize(filters string, qq *query.Query) error

func (*Query) VisitAND added in v1.5.0

func (q *Query) VisitAND(f *query.AND) (string, error)

func (*Query) VisitEQ added in v1.5.0

func (q *Query) VisitEQ(f *query.EQ) (string, error)

func (*Query) VisitGT added in v1.13.0

func (q *Query) VisitGT(f *query.GT) (string, error)

func (*Query) VisitGTE added in v1.13.0

func (q *Query) VisitGTE(f *query.GTE) (string, error)

func (*Query) VisitIN added in v1.5.0

func (q *Query) VisitIN(f *query.IN) (string, error)

func (*Query) VisitLT added in v1.13.0

func (q *Query) VisitLT(f *query.LT) (string, error)

func (*Query) VisitLTE added in v1.13.0

func (q *Query) VisitLTE(f *query.LTE) (string, error)

func (*Query) VisitNEQ added in v1.13.0

func (q *Query) VisitNEQ(f *query.NEQ) (string, error)

func (*Query) VisitOR added in v1.5.0

func (q *Query) VisitOR(f *query.OR) (string, error)

Jump to

Keyboard shortcuts

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