redis

package
v0.6.2 Latest Latest
Warning

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

Go to latest
Published: Aug 26, 2022 License: AGPL-3.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ErrMemoryLimitExceed = errors.New("memory limit exceeded")

Functions

This section is empty.

Types

type Config

type Config struct {
	// MemoryLimit specifies a maximum memory limit for a single Oracle.
	MemoryLimit int64
	// TTL specifies how long messages should be kept in storage.
	TTL time.Duration
	// Address specifies Redis server address as "host:port".
	Address string
	// Password specifies Redis server password.
	Password string
	// DB is the Redis database number.
	DB int
}

Config is the configuration for the Storage.

type Storage added in v0.6.0

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

Storage provides storage mechanism for store.EventStore. It uses a Redis database to store events.

func NewRedisStorage added in v0.6.0

func NewRedisStorage(cfg Config) (*Storage, error)

NewRedisStorage returns a new instance of Redis.

func (*Storage) Add added in v0.6.0

func (r *Storage) Add(ctx context.Context, author []byte, evt *messages.Event) (bool, error)

Add implements the store.Storage interface.

func (*Storage) Get added in v0.6.0

func (r *Storage) Get(ctx context.Context, typ string, idx []byte) ([]*messages.Event, error)

Get implements the store.Storage interface.

Jump to

Keyboard shortcuts

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