Documentation
¶
Overview ¶
Package storage provides utilities and facades to interact with storage engines
Index ¶
- Variables
- func DefaultReleaseTimer(driver Driver, id uuid.UUID, duration time.Duration) <-chan error
- func NewCallbackWriteCloser(w io.Writer, callback func(w io.Writer) error) io.WriteCloser
- func RegisterDriver(name string, factory DriverFactory)
- func RemoveDriver(name string)
- type CallbackWriteCloser
- type Driver
- type DriverConfigure
- type DriverFactory
Constants ¶
This section is empty.
Variables ¶
View Source
var ErrAlreadyExist error = fmt.Errorf("object already exist")
View Source
var ErrDriverNotFound error = fmt.Errorf("Driver not found")
View Source
var ErrNotExist error = fmt.Errorf("object not exist")
Functions ¶
func DefaultReleaseTimer ¶
func NewCallbackWriteCloser ¶
func RegisterDriver ¶
func RegisterDriver(name string, factory DriverFactory)
func RemoveDriver ¶
func RemoveDriver(name string)
Types ¶
type CallbackWriteCloser ¶
type CallbackWriteCloser struct {
// contains filtered or unexported fields
}
func (*CallbackWriteCloser) Close ¶
func (cwc *CallbackWriteCloser) Close() error
type Driver ¶
type Driver interface {
// GetName returns the name of the interface
GetName() string
// NewObject creates a new object in the storage
NewObject(id uuid.UUID) (io.WriteCloser, error)
// GetObject retrieves an object in the storage
GetObject(id uuid.UUID) (io.ReadCloser, error)
// IsExist returns if an object exists
IsExist(id uuid.UUID) (bool, error)
// ReleaseObject releases an object in the storage
ReleaseObject(id uuid.UUID) error
// SetExpire sets an expire duration for an exact object
SetExpire(id uuid.UUID, expire time.Duration) <-chan error
}
Driver defines storage driver interface
type DriverConfigure ¶
type DriverConfigure map[string]interface{}
type DriverFactory ¶
type DriverFactory func(conf DriverConfigure) (Driver, error)
Directories
¶
| Path | Synopsis |
|---|---|
|
Package drivers includes several storage drivers for objdeliv
|
Package drivers includes several storage drivers for objdeliv |
|
local
Package local implements a local storage driver for objdeliv
|
Package local implements a local storage driver for objdeliv |
|
memory
Package memory implements a memory storage driver for objdeliv
|
Package memory implements a memory storage driver for objdeliv |
Click to show internal directories.
Click to hide internal directories.