session

package
v0.0.0-...-dcf5b65 Latest Latest
Warning

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

Go to latest
Published: Aug 26, 2023 License: MIT Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func WithContext

func WithContext(ctx context.Context, m *MetaData) context.Context

Types

type CxtKey

type CxtKey int
const (
	CxtKeySession CxtKey = iota
)

type Manager

type Manager struct {
	Store
}

Manager implements a session manager

func NewManager

func NewManager(store Store) *Manager

type MetaData

type MetaData struct {
	usersstore.User
	Permissions map[string]map[uint8]int
}

MetaData encapsulates session info

func FromContext

func FromContext(ctx context.Context) *MetaData

func NewMetaData

func NewMetaData(user *usersstore.User) *MetaData

func (MetaData) Handle

func (m MetaData) Handle() string

func (MetaData) MarshalBinary

func (m MetaData) MarshalBinary() ([]byte, error)

func (MetaData) SetHandle

func (m MetaData) SetHandle(h string) MetaData

func (MetaData) SetUserID

func (m MetaData) SetUserID(uid string) MetaData

func (*MetaData) UnmarshalBinary

func (m *MetaData) UnmarshalBinary(data []byte) error

func (MetaData) UserID

func (m MetaData) UserID() string

type Store

type Store interface {
	Set(context.Context, string, interface{}) error
	Get(context.Context, string, interface{}) error
}

Store is an interface of functions for managing a session store

Jump to

Keyboard shortcuts

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