redis

package
v0.5.0 Latest Latest
Warning

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

Go to latest
Published: Jun 29, 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 contains configuration parameters for Redis.

type Redis

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

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

func New

func New(cfg Config) (*Redis, error)

New returns a new instance of Redis.

func (*Redis) Add

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

Add implements the store.Storage interface.

func (*Redis) Get

func (r *Redis) 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