Files
play-with-docker/storage/storage.go
2017-10-04 11:41:17 -03:00

45 lines
1.3 KiB
Go

package storage
import (
"errors"
"github.com/play-with-docker/play-with-docker/pwd/types"
)
var NotFoundError = errors.New("NotFound")
func NotFound(e error) bool {
return e == NotFoundError
}
type StorageApi interface {
SessionGet(id string) (*types.Session, error)
SessionGetAll() ([]*types.Session, error)
SessionPut(session *types.Session) error
SessionDelete(id string) error
SessionCount() (int, error)
InstanceGet(name string) (*types.Instance, error)
InstancePut(instance *types.Instance) error
InstanceDelete(name string) error
InstanceCount() (int, error)
InstanceFindBySessionId(sessionId string) ([]*types.Instance, error)
WindowsInstanceGetAll() ([]*types.WindowsInstance, error)
WindowsInstancePut(instance *types.WindowsInstance) error
WindowsInstanceDelete(id string) error
ClientGet(id string) (*types.Client, error)
ClientPut(client *types.Client) error
ClientDelete(id string) error
ClientCount() (int, error)
ClientFindBySessionId(sessionId string) ([]*types.Client, error)
LoginRequestPut(loginRequest *types.LoginRequest) error
LoginRequestGet(id string) (*types.LoginRequest, error)
LoginRequestDelete(id string) error
UserFindByProvider(providerName, providerUserId string) (*types.User, error)
UserPut(user *types.User) error
}