Versions in this module Expand all Collapse all v0 v0.4.0 Jan 6, 2025 Changes in this version + var AllOperations = []driver.Operation + func NewInterpreter() *interpreter + func NewSimplePrimaryKey(name driver.ColumnKey) *primaryKey + func NewUnversionedNotifier(opts common.Opts, table string) (*unversionedPersistenceNotifier, error) + func NewVersionedNotifier(opts common.Opts, table string) (*versionedPersistenceNotifier, error) + func OpenDB(dataSourceName string, maxOpenConns, maxIdleConns int, ...) (*sql.DB, error) + func StartPostgres(t Logger, printLogs bool) (func(), string, error) + func StartPostgresWithFmt(configs map[string]*ContainerConfig) (func(), error) + type BasePersistence struct + func (db *BasePersistence[V, R]) DeleteState(namespace driver.Namespace, key driver.PKey) error + func (db *BasePersistence[V, R]) DeleteStates(namespace driver.Namespace, keys ...driver.PKey) map[driver.PKey]error + func (db *BasePersistence[V, R]) Exists(ns driver.Namespace, key driver.PKey) (bool, error) + func (db *BasePersistence[V, R]) GetState(namespace driver.Namespace, key driver.PKey) (V, error) + func (db *BasePersistence[V, R]) GetStateRangeScanIterator(ns driver.Namespace, startKey, endKey string) (collections.Iterator[*R], error) + func (db *BasePersistence[V, R]) GetStateSetIterator(ns driver.Namespace, keys ...driver.PKey) (collections.Iterator[*R], error) + func (db *BasePersistence[V, R]) SetState(ns driver.Namespace, pkey driver.PKey, value V) error + func (db *BasePersistence[V, R]) SetStateWithTx(tx *sql.Tx, ns driver.Namespace, pkey driver.PKey, value V) error + func (db *BasePersistence[V, R]) SetStates(ns driver.Namespace, kvs map[driver.PKey]V) map[driver.PKey]error + func (db *BasePersistence[V, R]) UpsertStates(ns driver.Namespace, valueKeys []string, vals map[driver.PKey][]any) map[driver.PKey]error + type Config struct + DBName string + Host string + Pass string + Port int + User string + func (c *Config) DataSource() string + type ContainerConfig struct + Container string + Image string + func DefaultConfig(node string) *ContainerConfig + type DataSourceProvider interface + DataSource func() string + type Logger interface + Errorf func(string, ...any) + Log func(...any) + type Notifier struct + func NewNotifier(writeDB *sql.DB, table, dataSource string, notifyOperations []driver.Operation, ...) *Notifier + func (db *Notifier) CreateSchema() error + func (db *Notifier) GetSchema() string + func (db *Notifier) Subscribe(callback driver.TriggerCallback) error + func (db *Notifier) UnsubscribeAll() error + type TestDriver struct + ConnStr string + Name string + func (t *TestDriver) NewTransactionalUnversioned(dataSourceName string, config driver.Config) (driver.TransactionalUnversionedPersistence, error) + func (t *TestDriver) NewTransactionalVersioned(dataSourceName string, config driver.Config) (driver.TransactionalVersionedPersistence, error) + func (t *TestDriver) NewUnversioned(dataSourceName string, config driver.Config) (driver.UnversionedPersistence, error) + func (t *TestDriver) NewVersioned(dataSourceName string, config driver.Config) (driver.VersionedPersistence, error) + type UnversionedPersistence struct + func NewUnversioned(opts common.Opts, table string) (*UnversionedPersistence, error) + func (p *UnversionedPersistence) DeleteState(namespace driver2.Namespace, key driver2.PKey) error + func (p *UnversionedPersistence) DeleteStates(namespace driver2.Namespace, keys ...driver2.PKey) map[driver2.PKey]error + func (p *UnversionedPersistence) GetState(namespace driver2.Namespace, key driver2.PKey) (driver.UnversionedValue, error) + func (p *UnversionedPersistence) GetStateRangeScanIterator(namespace driver2.Namespace, startKey, endKey driver2.PKey) (collections.Iterator[*driver.UnversionedRead], error) + func (p *UnversionedPersistence) GetStateSetIterator(ns driver2.Namespace, keys ...driver2.PKey) (collections.Iterator[*driver.UnversionedRead], error) + func (p *UnversionedPersistence) SetState(namespace driver2.Namespace, key driver2.PKey, value driver.UnversionedValue) error + func (p *UnversionedPersistence) SetStates(namespace driver2.Namespace, kvs map[driver2.PKey]driver.UnversionedValue) map[driver2.PKey]error + type VersionedPersistence struct + func NewVersioned(opts common.Opts, table string) (*VersionedPersistence, error) + func (db *VersionedPersistence) BeginUpdate() error + func (db *VersionedPersistence) Close() error + func (db *VersionedPersistence) Commit() error + func (db *VersionedPersistence) CreateSchema() error + func (db *VersionedPersistence) DeleteState(namespace driver2.Namespace, key driver2.PKey) error + func (db *VersionedPersistence) DeleteStateWithTx(tx *sql.Tx, namespace driver2.Namespace, key driver2.PKey) error + func (db *VersionedPersistence) DeleteStates(namespace driver2.Namespace, keys ...driver2.PKey) map[driver2.PKey]error + func (db *VersionedPersistence) Discard() error + func (db *VersionedPersistence) GetState(namespace driver2.Namespace, key driver2.PKey) (driver.VersionedValue, error) + func (db *VersionedPersistence) GetStateMetadata(namespace driver2.Namespace, key driver2.PKey) (driver2.Metadata, driver2.RawVersion, error) + func (db *VersionedPersistence) GetStateRangeScanIterator(namespace driver2.Namespace, startKey, endKey driver2.PKey) (collections.Iterator[*driver.VersionedRead], error) + func (db *VersionedPersistence) GetStateSetIterator(ns driver2.Namespace, keys ...driver2.PKey) (collections.Iterator[*driver.VersionedRead], error) + func (db *VersionedPersistence) NewWriteTransaction() (driver.WriteTransaction, error) + func (db *VersionedPersistence) SetState(namespace driver2.Namespace, key driver2.PKey, value driver.VersionedValue) error + func (db *VersionedPersistence) SetStateMetadata(namespace driver2.Namespace, key driver2.PKey, metadata driver2.Metadata, ...) error + func (db *VersionedPersistence) SetStateMetadatas(ns driver2.Namespace, kvs map[driver2.PKey]driver2.VersionedMetadataValue) map[driver2.PKey]error + func (db *VersionedPersistence) SetStateWithTx(tx *sql.Tx, ns driver2.Namespace, pkey driver2.PKey, ...) error + func (db *VersionedPersistence) SetStates(namespace driver2.Namespace, kvs map[driver2.PKey]driver.VersionedValue) map[driver2.PKey]error + func (db *VersionedPersistence) Stats() any