boltdbcache

package
v0.0.0-...-875a7fa Latest Latest
Warning

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

Go to latest
Published: Dec 28, 2017 License: MIT Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	PluginConfig = &boltdbcacheConfig{
		done: make(chan struct{}),
	}
)

Config ...

Functions

This section is empty.

Types

type Cache

type Cache struct {
	sync.RWMutex
	// contains filtered or unexported fields
}

func Mount

func Mount(db *bolt.DB) *Cache

Mount returns a new Cache using the provided (and opened) bolt database.

func New

func New(config *Config) (*Cache, error)

func (*Cache) Action

func (c *Cache) Action(name string, args ...interface{}) (map[string]*interface{}, error)

func (*Cache) Close

func (c *Cache) Close() error

Close closes the underlying boltdb database.

func (*Cache) Debug

func (c *Cache) Debug(action string)

func (*Cache) Delete

func (c *Cache) Delete(key string)

Delete removes the response with the given key from the cache.

func (*Cache) Get

func (c *Cache) Get(key string) (resp []byte, ok bool)

Get retrieves the response corresponding to the given key if present.

func (*Cache) Ping

func (c *Cache) Ping() error

Ping connects to the database. Returns nil if successful.

func (*Cache) Set

func (c *Cache) Set(key string, resp []byte)

Set stores a response to the cache at the given key.

type Config

type Config struct {
	BucketName  string
	StoragePath string
	Debug       bool
}

Directories

Path Synopsis
This package provides a simple LRU cache backed by boltdb It is based on the LRU implementation in groupcache: https://github.com/golang/groupcache/tree/master/lru
This package provides a simple LRU cache backed by boltdb It is based on the LRU implementation in groupcache: https://github.com/golang/groupcache/tree/master/lru

Jump to

Keyboard shortcuts

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