sessionstore

package
v0.4.0 Latest Latest
Warning

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

Go to latest
Published: Jan 27, 2017 License: BSD-3-Clause Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var Status string

Status for session store

Functions

This section is empty.

Types

type InMemory

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

InMemory is a local in memory sessionstore, for dev purpose

func (*InMemory) Exists

func (s *InMemory) Exists(key SessionKey) (bool, error)

Exists check if session exists

func (*InMemory) Get

func (s *InMemory) Get(session SessionKey, k string, data interface{}) error

Get returns the value corresponding to key for the session

func (*InMemory) New

func (s *InMemory) New(k SessionKey) (SessionKey, error)

New creates a new session

func (*InMemory) Set

func (s *InMemory) Set(session SessionKey, k string, data interface{}) error

Set set a value in session with a key

type Options

type Options struct {
	Mode, RedisHost, RedisPassword string
	TTL                            int
}

Options is a struct to switch from in memory to redis session store

type Redis

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

Redis is a redis client

func NewRedis

func NewRedis(redisHost, redisPassword string, ttl int) (*Redis, error)

NewRedis creates a ready to use redisstore

func (*Redis) Exists

func (s *Redis) Exists(token SessionKey) (bool, error)

Exists check if session exists

func (*Redis) Get

func (s *Redis) Get(token SessionKey, f string, data interface{}) error

Get returns the value corresponding to key for the session

func (*Redis) New

func (s *Redis) New(k SessionKey) (SessionKey, error)

New creates a new session

func (*Redis) Set

func (s *Redis) Set(token SessionKey, f string, data interface{}) error

Set set a value in session with a key

type SessionKey

type SessionKey string

SessionKey is the session ID

func NewSessionKey

func NewSessionKey() (SessionKey, error)

NewSessionKey generates a random UUID according to RFC 4122

type Store

type Store interface {
	New(SessionKey) (SessionKey, error)
	Exists(SessionKey) (bool, error)
	Get(SessionKey, string, interface{}) error
	Set(SessionKey, string, interface{}) error
}

Store is the session store interface

func Get

func Get(mode, redisHost, redisPassword string, ttl int) (Store, error)

Get is a factory

Jump to

Keyboard shortcuts

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