server

package
v1.3.2 Latest Latest
Warning

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

Go to latest
Published: Apr 23, 2023 License: Apache-2.0 Imports: 6 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ErrNotFound = errors.New("not found")

Functions

This section is empty.

Types

type Database

type Database struct {
	ID int
	*Records
}

Database represents a database.

func NewDatabaseWithID

func NewDatabaseWithID(id int) *Database

NewDatabaseWithID returns a new database with the specified ID.

func (*Database) GetListRecord

func (db *Database) GetListRecord(key string) (*Record, *List, error)

func (*Database) GetSetRecord

func (db *Database) GetSetRecord(key string) (*Record, *Set, error)

func (*Database) GetZSetRecord

func (db *Database) GetZSetRecord(key string) (*Record, *ZSet, error)

type Databases

type Databases struct {
	sync.Map
}

Databases represents a database map.

func NewDatabases

func NewDatabases() *Databases

func (*Databases) GetDatabase

func (dbs *Databases) GetDatabase(id int) (*Database, bool)

GetDatabase returns the database with the specified ID.

func (*Databases) SetDatabase

func (dbs *Databases) SetDatabase(db *Database)

SetDatabase set a database with the specified ID.

type Hash

type Hash map[string]string

func (Hash) Del

func (hash Hash) Del(fields []string) int

func (Hash) Set

func (hash Hash) Set(field string, val string, opt redis.HSetOption) int

nolint: ifshort

type List

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

func NewList

func NewList() *List

func (*List) Index

func (list *List) Index(idx int) (string, bool)

func (*List) LPop

func (list *List) LPop(count int) ([]string, bool)

func (*List) LPush

func (list *List) LPush(elems []string) int

func (*List) Len

func (list *List) Len() int

func (*List) RPop

func (list *List) RPop(count int) ([]string, bool)

func (*List) RPush

func (list *List) RPush(elems []string) int

func (*List) Range

func (list *List) Range(start int, stop int) []string

type Record

type Record struct {
	Key       string
	Data      any
	Timestamp time.Time
	TTL       time.Duration
}

Record represents a database record.

type Records

type Records struct {
	sync.Map
}

Records represents a database record map.

func NewRecords

func NewRecords() *Records

func (*Records) GetRecord

func (rmap *Records) GetRecord(key string) (*Record, bool)

GetRecord gets a record with the specified key.

func (*Records) HasRecord

func (rmap *Records) HasRecord(key string) bool

HasRecord returns true if the database has the specified key record, otherwise false.

func (*Records) Keys

func (rmap *Records) Keys() []string

Keys returns all key names.

func (*Records) RemoveRecord

func (rmap *Records) RemoveRecord(key string) error

RemoveRecord removes a record with the specified key.

func (*Records) RenameRecord

func (rmap *Records) RenameRecord(key string, newkey string) error

RenameRecord renames the specified key record to the specified new record.

func (*Records) SetRecord

func (rmap *Records) SetRecord(record *Record) error

SetRecord sets the specified record into the records.

type Server

type Server struct {
	*redis.Server
	*Databases
}

Server represents an example server.

func NewServer

func NewServer() *Server

NewServer returns an example server instance.

func (*Server) Del

func (server *Server) Del(conn *redis.Conn, keys []string) (*redis.Message, error)

func (*Server) Exists

func (server *Server) Exists(conn *redis.Conn, keys []string) (*redis.Message, error)

func (*Server) Expire

func (server *Server) Expire(conn *redis.Conn, key string, opt redis.ExpireOption) (*redis.Message, error)

func (*Server) Get

func (server *Server) Get(conn *redis.Conn, key string) (*redis.Message, error)

func (*Server) GetDatabase

func (server *Server) GetDatabase(id int) (*Database, error)

GetDatabase returns the database with the specified ID.

func (*Server) HDel

func (server *Server) HDel(conn *redis.Conn, key string, fields []string) (*redis.Message, error)

func (*Server) HGet

func (server *Server) HGet(conn *redis.Conn, key string, field string) (*redis.Message, error)

func (*Server) HGetAll

func (server *Server) HGetAll(conn *redis.Conn, key string) (*redis.Message, error)

func (*Server) HMGet

func (server *Server) HMGet(conn *redis.Conn, key string, fields []string) (*redis.Message, error)

func (*Server) HMSet

func (server *Server) HMSet(conn *redis.Conn, key string, dict map[string]string) (*redis.Message, error)

func (*Server) HSet

func (server *Server) HSet(conn *redis.Conn, key string, field string, val string, opt redis.HSetOption) (*redis.Message, error)

nolint: ifshort

func (*Server) Keys

func (server *Server) Keys(conn *redis.Conn, pattern string) (*redis.Message, error)

func (*Server) LIndex

func (server *Server) LIndex(conn *redis.Conn, key string, idx int) (*redis.Message, error)

func (*Server) LLen

func (server *Server) LLen(conn *redis.Conn, key string) (*redis.Message, error)

func (*Server) LPop

func (server *Server) LPop(conn *redis.Conn, key string, count int) (*redis.Message, error)

func (*Server) LPush

func (server *Server) LPush(conn *redis.Conn, key string, elems []string, opt redis.PushOption) (*redis.Message, error)

func (*Server) LRange

func (server *Server) LRange(conn *redis.Conn, key string, start int, stop int) (*redis.Message, error)

func (*Server) MGet

func (server *Server) MGet(conn *redis.Conn, keys []string) (*redis.Message, error)

func (*Server) MSet

func (server *Server) MSet(conn *redis.Conn, dict map[string]string, opt redis.MSetOption) (*redis.Message, error)

func (*Server) RPop

func (server *Server) RPop(conn *redis.Conn, key string, count int) (*redis.Message, error)

func (*Server) RPush

func (server *Server) RPush(conn *redis.Conn, key string, elems []string, opt redis.PushOption) (*redis.Message, error)

func (*Server) Rename

func (server *Server) Rename(conn *redis.Conn, key string, newkey string, opt redis.RenameOption) (*redis.Message, error)

func (*Server) SAdd

func (server *Server) SAdd(conn *redis.Conn, key string, members []string) (*redis.Message, error)

func (*Server) SMembers

func (server *Server) SMembers(conn *redis.Conn, key string) (*redis.Message, error)

func (*Server) SRem

func (server *Server) SRem(conn *redis.Conn, key string, members []string) (*redis.Message, error)

func (*Server) Set

func (server *Server) Set(conn *redis.Conn, key string, val string, opt redis.SetOption) (*redis.Message, error)

func (*Server) TTL

func (server *Server) TTL(conn *redis.Conn, key string) (*redis.Message, error)

func (*Server) Type

func (server *Server) Type(conn *redis.Conn, key string) (*redis.Message, error)

func (*Server) ZAdd

func (server *Server) ZAdd(conn *redis.Conn, key string, members []*redis.ZSetMember, opt redis.ZAddOption) (*redis.Message, error)

func (*Server) ZIncBy

func (server *Server) ZIncBy(conn *redis.Conn, key string, inc float64, member string) (*redis.Message, error)

func (*Server) ZRange

func (server *Server) ZRange(conn *redis.Conn, key string, start int, stop int, opt redis.ZRangeOption) (*redis.Message, error)

func (*Server) ZRangeByScore

func (server *Server) ZRangeByScore(conn *redis.Conn, key string, start float64, stop float64, opt redis.ZRangeOption) (*redis.Message, error)

func (*Server) ZRem

func (server *Server) ZRem(conn *redis.Conn, key string, members []string) (*redis.Message, error)

func (*Server) ZScore

func (server *Server) ZScore(conn *redis.Conn, key string, member string) (*redis.Message, error)

type Set

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

func NewSet

func NewSet() *Set

func (*Set) Add

func (set *Set) Add(members []string) int

func (*Set) Members

func (set *Set) Members() []string

func (*Set) Rem

func (set *Set) Rem(members []string) int

type ZAddOption

type ZAddOption = redis.ZAddOption

type ZRangeOption

type ZRangeOption = redis.ZRangeOption

type ZSet

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

func NewZSet

func NewZSet() *ZSet

func (*ZSet) Add

func (zset *ZSet) Add(nms []*ZSetMember, opt ZAddOption) int

func (*ZSet) IncBy

func (zset *ZSet) IncBy(inc float64, member string) float64

func (*ZSet) Range

func (zset *ZSet) Range(start int, stop int, opt ZRangeOption) []*ZSetMember

func (*ZSet) RangeByScore

func (zset *ZSet) RangeByScore(min float64, max float64, opt ZRangeOption) []*ZSetMember

func (*ZSet) Rem

func (zset *ZSet) Rem(members []string) int

func (*ZSet) Score

func (zset *ZSet) Score(member string) (float64, bool)

type ZSetMember

type ZSetMember = redis.ZSetMember

func NewZSetMember

func NewZSetMember(score float64, data string) *ZSetMember

func NewZSetMembers

func NewZSetMembers() []*ZSetMember

Jump to

Keyboard shortcuts

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