database

package
v1.0.18 Latest Latest
Warning

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

Go to latest
Published: Apr 29, 2024 License: AGPL-3.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Database

type Database interface {
	VerifyAdminAPIKey(ctx context.Context, hashedAPIKey string) bool

	GetDestinations(ctx context.Context, teamId uint) ([]models.Destination, error)
	GetDestination(ctx context.Context, teamId, destId uint) (models.Destination, error)
	CreateDestination(ctx context.Context, teamId uint, name string, destType string, settings map[string]any) (models.Destination, error)
	DeleteDestination(ctx context.Context, teamId uint, destId uint) error
	UpdateDestination(ctx context.Context, dest models.Destination) error
	GetDestinationCredentials(ctx context.Context, dbID int64) (models.Destination, error)

	CreateConnectionRequest(ctx context.Context, dest models.Destination) (models.ConnectionRequest, error)
	GetConnectionRequest(ctx context.Context, requestId uuid.UUID) (models.ConnectionRequest, error)
	DeleteConnectionRequest(ctx context.Context, id uint) error

	AddAPIKey(ctx context.Context, destId int64, hashedAPIKey string) error
	GetAPIKeyDetails(ctx context.Context, hashedAPIKey string) (models.APIKey, error)

	CreateShareQuery(ctx context.Context, destId int64, name, query string, expires time.Duration) (queryId uuid.UUID, err error)
	GetShareQuery(ctx context.Context, queryId uuid.UUID) (models.ShareQuery, bool)

	CreateTeam(name string) (*models.Team, error)
	AddUserToTeam(userId uint, teamId uint) error

	GetUser(uint) *models.User
	GetTeamId(userId uint) (uint, error)
	CreateUser(email string, source string, details string) (*models.User, error)

	Hash(s string) string

	Enqueue(messageType models.MessageType, message any) (*models.Message, error)
	Dequeue(messageType models.MessageType, claimedBy string) (*models.Message, bool)
	Delete(id uint) error
}

func NewConnection added in v1.0.11

func NewConnection(conf config.Database, destinations []config.Destination, adminKeys []config.APIKey) (Database, error)

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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