aerostore

package module
v0.0.0-...-90e3723 Latest Latest
Warning

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

Go to latest
Published: Oct 23, 2014 License: MIT Imports: 9 Imported by: 0

README

aerostore

A session store backend for gorilla/sessions - src.

Requirements

Depends on the aerospike-client-go Aerospike library.

Installation

go get github.com/theaidem/aerostore

Documentation

Available on godoc.org.

Full documentation on underlying interface.

Examples
// Fetch new store.
// "test" is a namespace of Aerospike cluster
// "sessions" is a set of Aerospike cluster
store, err := NewAeroStore("test", "sessions", "127.0.0.1", 3000, []byte("something-very-secret"))
if err != nil {
	panic(err)
}
defer store.Close()

// Get a session.
session, err = store.Get(req, "session-key")
if err != nil {
	log.Error(err.Error())
}

// Add a value.
session.Values["foo"] = "bar"

// Save.
if err = sessions.Save(req, rsp); err != nil {
	log.Fatalf("Error saving session: %v", err)
}

Documentation

Index

Examples

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AeroStore

type AeroStore struct {
	Codecs  []securecookie.Codec
	Options *sessions.Options // default configuration
	// contains filtered or unexported fields
}

AeroStore stores sessions in a Aerospike backend.

Example
// AeroStore
store, err := NewAeroStore("test", "sessions", "127.0.0.1", 3000, []byte("something-very-secret"))
if err != nil {
	panic(err)
}
defer store.Close()
Output:

func NewAeroStore

func NewAeroStore(ns, set string, host string, port int, keyPairs ...[]byte) (*AeroStore, error)

NewAeroStore returns a new AeroStore. ns: Aerospike namespace (similar to database) set: Aerospike set (similar to table)

func NewAeroStoreWithClient

func NewAeroStoreWithClient(ns, set string, client *as.Client, keyPairs ...[]byte) (*AeroStore, error)

NewAeroStoreWithClient instantiates a AeroStore with a *as.Client passed in.

func (*AeroStore) Close

func (s *AeroStore) Close()

Close closes the underlying the Aerospike client

func (*AeroStore) Get

func (s *AeroStore) Get(r *http.Request, name string) (*sessions.Session, error)

Get returns a session for the given name after adding it to the registry.

See CookieStore.Get().

func (*AeroStore) New

func (s *AeroStore) New(r *http.Request, name string) (*sessions.Session, error)

New returns a session for the given name without adding it to the registry.

See CookieStore.New().

func (*AeroStore) Save

func (s *AeroStore) Save(r *http.Request, w http.ResponseWriter, session *sessions.Session) error

Save adds a single session to the response.

Jump to

Keyboard shortcuts

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