database

package
v0.9.1 Latest Latest
Warning

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

Go to latest
Published: May 16, 2024 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrTemplateInUse = errors.New("template in use")
)

Functions

This section is empty.

Types

type IDbDriver

type IDbDriver interface {
	Connect() error

	// Users
	SaveUser(user *model.User) error
	DeleteUser(user *model.User) error
	GetUser(id string) (*model.User, error)
	GetUserByEmail(email string) (*model.User, error)
	GetUserByUsername(email string) (*model.User, error)
	GetUsers() ([]*model.User, error)
	HasUsers() (bool, error)

	// Sessions
	SaveSession(session *model.Session) error
	DeleteSession(session *model.Session) error
	GetSession(id string) (*model.Session, error)
	GetSessionsForUser(userId string) ([]*model.Session, error)
	GetSessions() ([]*model.Session, error)

	// Tokens
	SaveToken(token *model.Token) error
	DeleteToken(token *model.Token) error
	GetToken(id string) (*model.Token, error)
	GetTokensForUser(userId string) ([]*model.Token, error)

	// Space
	SaveSpace(space *model.Space) error
	DeleteSpace(space *model.Space) error
	GetSpace(id string) (*model.Space, error)
	GetSpacesForUser(userId string) ([]*model.Space, error)
	GetSpaceByName(userId string, spaceName string) (*model.Space, error)
	GetSpacesByTemplateId(templateId string) ([]*model.Space, error)
	GetSpaces() ([]*model.Space, error)

	// Templates
	SaveTemplate(template *model.Template) error
	DeleteTemplate(template *model.Template) error
	GetTemplate(id string) (*model.Template, error)
	GetTemplates() ([]*model.Template, error)

	// Groups
	SaveGroup(group *model.Group) error
	DeleteGroup(group *model.Group) error
	GetGroup(id string) (*model.Group, error)
	GetGroups() ([]*model.Group, error)

	// Template Variables
	SaveTemplateVar(variable *model.TemplateVar) error
	DeleteTemplateVar(variable *model.TemplateVar) error
	GetTemplateVar(id string) (*model.TemplateVar, error)
	GetTemplateVars() ([]*model.TemplateVar, error)

	// Volumes
	SaveVolume(volume *model.Volume) error
	DeleteVolume(volume *model.Volume) error
	GetVolume(id string) (*model.Volume, error)
	GetVolumes() ([]*model.Volume, error)

	// Agent State
	SaveAgentState(agentState *model.AgentState) error
	DeleteAgentState(agentState *model.AgentState) error
	GetAgentState(id string) (*model.AgentState, error)

	// Remote Servers
	SaveRemoteServer(server *model.RemoteServer) error
	DeleteRemoteServer(server *model.RemoteServer) error
	GetRemoteServer(id string) (*model.RemoteServer, error)
	GetRemoteServers() ([]*model.RemoteServer, error)
}

IDbDriver is the interface for the database drivers

func GetCacheInstance

func GetCacheInstance() IDbDriver

Returns the caching database driver and on first call initializes it

func GetInstance

func GetInstance() IDbDriver

Returns the database driver and on first call initializes it

Directories

Path Synopsis
drivers

Jump to

Keyboard shortcuts

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