cosmosdb

package
v1.15.1 Latest Latest
Warning

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

Go to latest
Published: Jun 9, 2025 License: Apache-2.0 Imports: 23 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewCosmosDBStateStore

func NewCosmosDBStateStore(logger logger.Logger) state.Store

NewCosmosDBStateStore returns a new CosmosDB state store.

Types

type CosmosItem

type CosmosItem struct {
	ID           string      `json:"id"`
	Value        interface{} `json:"value"`
	IsBinary     bool        `json:"isBinary"`
	PartitionKey string      `json:"partitionKey"`
	TTL          *int        `json:"ttl,omitempty"`
	Etag         string      `json:"_etag"`
	TS           int64       `json:"_ts"`
}

CosmosItem is a wrapper around a CosmosDB document.

func NewCosmosItemFromResponse

func NewCosmosItemFromResponse(value []byte, logger logger.Logger) (item CosmosItem, err error)

type CosmosOperation

type CosmosOperation struct {
	Item CosmosItem          `json:"item"`
	Type cosmosOperationType `json:"type"`
}

CosmosOperation is a wrapper around a CosmosDB operation.

type InternalQuery

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

Internal query object is created here since azcosmos has no notion of a query object

type Query

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

func (*Query) Finalize

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

func (*Query) VisitAND

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

func (*Query) VisitEQ

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

func (*Query) VisitGT

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

func (*Query) VisitGTE

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

func (*Query) VisitIN

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

func (*Query) VisitLT

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

func (*Query) VisitLTE

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

func (*Query) VisitNEQ

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

func (*Query) VisitOR

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

type StateStore

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

StateStore is a CosmosDB state store.

func (*StateStore) BulkGet

BulkGet performs a Get operation in bulk.

func (*StateStore) Close

func (c *StateStore) Close() error

func (*StateStore) Delete

func (c *StateStore) Delete(ctx context.Context, req *state.DeleteRequest) error

Delete performs a delete operation.

func (*StateStore) Features

func (c *StateStore) Features() []state.Feature

Features returns the features available in this state store.

func (*StateStore) Get

Get retrieves a CosmosDB item.

func (*StateStore) GetComponentMetadata

func (c *StateStore) GetComponentMetadata() (metadataInfo contribmeta.MetadataMap)

func (*StateStore) Init

func (c *StateStore) Init(ctx context.Context, meta state.Metadata) error

Init does metadata and connection parsing.

func (*StateStore) Multi

func (c *StateStore) Multi(ctx context.Context, request *state.TransactionalStateRequest) (err error)

Multi performs a transactional operation. Succeeds only if all operations succeed, and fails if one or more operations fail. Note that all operations must be in the same partition.

func (*StateStore) MultiMaxSize

func (c *StateStore) MultiMaxSize() int

MultiMaxSize returns the maximum number of operations allowed in a transaction. For Azure Cosmos DB, that's 100.

func (*StateStore) Ping

func (c *StateStore) Ping(ctx context.Context) error

func (*StateStore) Query

func (*StateStore) Set

func (c *StateStore) Set(ctx context.Context, req *state.SetRequest) error

Set saves a CosmosDB item.

Jump to

Keyboard shortcuts

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