store

package
v0.2.2 Latest Latest
Warning

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

Go to latest
Published: Oct 26, 2021 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Close

func Close() error

Close terminates connection to persistent storage.

func GetAdapterName

func GetAdapterName() string

GetAdapterName returns the name of the current adater.

func InitDb

func InitDb(path, jsonconf string, reset bool) error

InitDb open the db connection. If jsconf is nil it will assume that the connection is already open. If it's non-nil, it will use the config string to open the DB connection first.

func IsOpen

func IsOpen() bool

IsOpen checks if persistent storage connection has been initialized.

func Open

func Open(path, jsonconf string, reset bool) error

Open initializes the persistence system. Adapter holds a connection pool for a database instance.

	 name - name of the adapter rquested in the config file
  jsonconf - configuration string

func RegisterAdapter

func RegisterAdapter(name string, a adapter.Adapter)

RegisterAdapter makes a persistence adapter available. If Register is called twice or if the adapter is nil, it panics.

Types

type MessageLog

type MessageLog struct{}

MessageLog is a Message struct to hold methods for persistence mapping for the Message object.

var Log MessageLog

Log is the anchor for storing/retrieving Message objects

func (*MessageLog) Delete

func (l *MessageLog) Delete(key uint64)

Delete is used to delete message.

func (*MessageLog) Get

func (l *MessageLog) Get(key uint64) lp.MessagePack

Get performs a query and attempts to fetch message for the given key

func (*MessageLog) Keys

func (l *MessageLog) Keys(prefix uint32) []uint64

Keys performs a query and attempts to fetch all keys with the prefix.

func (*MessageLog) PersistInbound

func (l *MessageLog) PersistInbound(blockID uint32, inMsg lp.MessagePack)

PersistInbound handles which incoming messages are stored

func (*MessageLog) PersistOutbound

func (l *MessageLog) PersistOutbound(blockID uint32, outMsg lp.MessagePack)

PersistOutbound handles which outgoing messages are stored

func (*MessageLog) Reset

func (l *MessageLog) Reset(prefix uint32)

Reset removes all keys with the prefix from store

type MessageStore

type MessageStore struct{}

MessageStore is a Message struct to hold methods for persistence mapping for the Message object.

var Message MessageStore

Message is the anchor for storing/retrieving Message objects

func (*MessageStore) Get

func (m *MessageStore) Get(contract uint32, topic string, last string) (matches []*message.Message, err error)

func (*MessageStore) Put

func (m *MessageStore) Put(contract uint32, topic string, payload []byte, ttl string) error

type SessionStore

type SessionStore struct{}

SessionStore is a Session struct to hold methods for persistence mapping for the Session object.

var Session SessionStore

Session is the anchor for storing/retrieving Session objects

func (*SessionStore) Get

func (s *SessionStore) Get(key uint64) (raw []byte, err error)

func (*SessionStore) Put

func (s *SessionStore) Put(key uint64, payload []byte) error

type SubscriptionStore

type SubscriptionStore struct{}

SubscriptionStore is a Subscription struct to hold methods for persistence mapping for the subscription. Note, do not use same contract as messagestore

var Subscription SubscriptionStore

Message is the ancor for storing/retrieving Message objects

func (*SubscriptionStore) Delete

func (s *SubscriptionStore) Delete(contract uint32, messageId []byte, topic string) error

func (*SubscriptionStore) Get

func (s *SubscriptionStore) Get(contract uint32, topic string) (matches [][]byte, err error)

func (*SubscriptionStore) NewID

func (s *SubscriptionStore) NewID() ([]byte, error)

func (*SubscriptionStore) Put

func (s *SubscriptionStore) Put(contract uint32, messageId []byte, topic string, payload []byte) error

Jump to

Keyboard shortcuts

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