Documentation ¶
Index ¶
Constants ¶
View Source
const ( // TypeMysql holder for mysql database TypeMysql string = "MYSQL" // TypePostgres holder for postgres database TypePostgres string = "POSTGRES" )
Variables ¶
This section is empty.
Functions ¶
func NewErrAlreadyExists ¶
NewErrAlreadyExists wraps a message in an ErrAlreadyExists object.
Types ¶
type Common ¶
type Common interface { // Close closes the db connections Close(ctx context.Context) Error // Create stores the object Create(ctx context.Context, i any) Error // DoMigration runs database migrations DoMigration(ctx context.Context) Error // LoadTestData adds test data to the database LoadTestData(ctx context.Context) Error // ReadByID returns a model by its ID ReadByID(ctx context.Context, id int64, i any) Error // Update updates stored data Update(ctx context.Context, i any) Error }
Common wraps common database functions
type ErrAlreadyExists ¶
type ErrAlreadyExists struct {
// contains filtered or unexported fields
}
ErrAlreadyExists is returned when a caller tries to insert a database entry that already exists in the db.
func (*ErrAlreadyExists) Error ¶
func (e *ErrAlreadyExists) Error() string
Error returns the error message as a string.
type Error ¶
type Error error
Error represents a database specific error
var ( // ErrGenID is returned when creating a new ID can't be generated for a new model. ErrGenID Error = fmt.Errorf("can't generate id") // ErrNoEntries is returned when a caller expected an entry for a query, but none was found. ErrNoEntries Error = fmt.Errorf("no entries") // ErrMultipleEntries is returned when a caller expected ONE entry for a query, but multiples were found. ErrMultipleEntries Error = fmt.Errorf("multiple entries") // ErrUnknown denotes an unknown database error. ErrUnknown Error = fmt.Errorf("unknown error") )
type Fedi ¶
type Fedi interface { // CreateFediAccount stores the federated instance and caches it CreateFediAccount(ctx context.Context, account *models.FediAccount) (err Error) // CreateFediInstance stores the federated instance and caches it CreateFediInstance(ctx context.Context, instance *models.FediInstance) (err Error) // ReadFediAccountByID returns one federated social account. ReadFediAccountByID(ctx context.Context, id int64) (instance *models.FediAccount, err Error) // ReadFediAccountByInstanceUserID returns one federated social account. ReadFediAccountByInstanceUserID(ctx context.Context, instance *models.FediInstance, instanceUserID string) (account *models.FediAccount, err Error) // ReadFediAccountByUsername returns one federated social account. ReadFediAccountByUsername(ctx context.Context, instance *models.FediInstance, username string) (account *models.FediAccount, err Error) // ReadFediInstanceByID returns one federated social instance. ReadFediInstanceByID(ctx context.Context, id int64) (instance *models.FediInstance, err Error) // ReadFediInstanceByDomain returns one federated social instance. ReadFediInstanceByDomain(ctx context.Context, domain string) (instance *models.FediInstance, err Error) // UpdateFediInstance updates the stored federated instance and caches it UpdateFediInstance(ctx context.Context, instance *models.FediInstance) (err Error) }
Fedi contains functions related to federated social.
Click to show internal directories.
Click to hide internal directories.