Documentation
¶
Index ¶
Constants ¶
View Source
const (
// TypePostgres holder for postgres database
TypePostgres = "POSTGRES"
)
Variables ¶
This section is empty.
Functions ¶
func NewErrAlreadyExists ¶
NewErrAlreadyExists wraps a message in an ErrAlreadyExists object.
Types ¶
type Account ¶
type Account interface { // CountAccounts returns the number of accounts CountAccounts(ctx context.Context) (count int64, err Error) // CountAccountsForInstance returns the number of accounts for an instance CountAccountsForInstance(ctx context.Context, instanceID int64) (count int64, err Error) // CreateAccount stores the account CreateAccount(ctx context.Context, account *models.Account) (err Error) // IncAccountLoginCount updates the login count of an account IncAccountLoginCount(ctx context.Context, account *models.Account) (err Error) // ReadAccount returns one account ReadAccount(ctx context.Context, id int64) (account *models.Account, err Error) // ReadAccountByUsername returns one account ReadAccountByUsername(ctx context.Context, instanceID int64, username string) (account *models.Account, err Error) // ReadAccountsByUsernameInstancesStartingWith returns accounts where usernames start with prefix. ReadAccountsByUsernameInstancesStartingWith(ctx context.Context, prefix string, username string) (accounts []*models.Account, err Error) // ReadAccountsByUsernamesStartingWith returns accounts where usernames start with prefix. ReadAccountsByUsernamesStartingWith(ctx context.Context, prefix string) (accounts []*models.Account, err Error) // ReadAccountsPage returns a page of accounts ReadAccountsPage(ctx context.Context, index, count int) (accounts []*models.Account, err Error) // UpdateAccount updates the account UpdateAccount(ctx context.Context, account *models.Account) (err Error) }
type DB ¶
type DB interface { Account GroupMembership Instance InstanceTeamMember // Close closes the db connections Close(ctx context.Context) Error // DoMigration runs database migrations DoMigration(ctx context.Context) Error TxNew(ctx context.Context) (TxID, Error) TxCommit(ctx context.Context, id TxID) Error TxRollback(ctx context.Context, id TxID) Error }
DB represents a database client
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 GroupMembership ¶
type GroupMembership interface { // CreateGroupMembershipTX stores group memberships in a transaction. CreateGroupMembershipTX(ctx context.Context, txID TxID, groupMemberships ...*models.GroupMembership) (err Error) // DeleteGroupMembershipTX deletes group memberships using a transaction. DeleteGroupMembershipTX(ctx context.Context, txID TxID, groupMemberships ...*models.GroupMembership) (err Error) }
type Instance ¶
type Instance interface { // CountInstances returns the number of federated instance CountInstances(ctx context.Context) (count int64, err Error) // CreateInstance stores the federated instance CreateInstance(ctx context.Context, instance *models.Instance) (err Error) // ReadInstance returns one federated social instance ReadInstance(ctx context.Context, id int64) (instance *models.Instance, err Error) // ReadInstanceByActorIRI returns one federated social instance ReadInstanceByActorIRI(ctx context.Context, actorIRI string) (instance *models.Instance, err Error) // ReadInstanceByDomain returns one federated social instance ReadInstanceByDomain(ctx context.Context, domain string) (instance *models.Instance, err Error) // ReadInstanceByServerHostname returns one federated social instance ReadInstanceByServerHostname(ctx context.Context, serverHostname string) (instance *models.Instance, err Error) // ReadInstances returns a set of requested of federated social instances ReadInstances(ctx context.Context, ids ...int64) (instances []*models.Instance, err Error) // ReadInstancesPage returns a page of federated social instances ReadInstancesPage(ctx context.Context, index, count int) (instances []*models.Instance, err Error) // ReadInstancesWithDomainSuffix returns all instances with domain suffix ReadInstancesWithDomainSuffix(ctx context.Context, domainSuffix string) (instances []*models.Instance, err Error) // UpdateInstance updates the stored federated instance UpdateInstance(ctx context.Context, instance *models.Instance) (err Error) // UpdateInstanceTX updates the stored federated instance in a transaction. UpdateInstanceTX(ctx context.Context, txID TxID, instance *models.Instance) (err Error) }
type InstanceTeamMember ¶
type InstanceTeamMember interface { // CreateInstanceTeamMember stores the team memberships. CreateInstanceTeamMember(ctx context.Context, instanceTeamMembers ...*models.InstanceTeamMember) (err Error) // DeleteInstanceTeamMember deletes the team memberships. DeleteInstanceTeamMember(ctx context.Context, instanceTeamMembers ...*models.InstanceTeamMember) (err Error) // ReadInstanceTeamMembersForInstance returns team memberships for an instance. ReadInstanceTeamMembersForInstance(ctx context.Context, instanceID int64) (instanceTeamMembers models.InstanceTeam, err Error) // UpdateInstanceTeamMember updates team memberships. UpdateInstanceTeamMember(ctx context.Context, instanceTeamMembers ...*models.InstanceTeamMember) (err Error) }
Source Files
¶
Click to show internal directories.
Click to hide internal directories.