mirror of
https://github.com/superseriousbusiness/gotosocial
synced 2025-06-05 21:59:39 +02:00
[performance] cached oauth database types (#2838)
* update token + client code to use struct caches * add code comments * slight tweak to default mem ratios * fix envparsing * add appropriate invalidate hooks * update the tokenstore sweeping function to rely on caches * update to use PutClient() * add ClientID to list of token struct indices
This commit is contained in:
@@ -35,4 +35,40 @@ type Application interface {
|
||||
|
||||
// DeleteApplicationByClientID deletes the application with corresponding client_id value from the database.
|
||||
DeleteApplicationByClientID(ctx context.Context, clientID string) error
|
||||
|
||||
// GetClientByID ...
|
||||
GetClientByID(ctx context.Context, id string) (*gtsmodel.Client, error)
|
||||
|
||||
// PutClient ...
|
||||
PutClient(ctx context.Context, client *gtsmodel.Client) error
|
||||
|
||||
// DeleteClientByID ...
|
||||
DeleteClientByID(ctx context.Context, id string) error
|
||||
|
||||
// GetAllTokens ...
|
||||
GetAllTokens(ctx context.Context) ([]*gtsmodel.Token, error)
|
||||
|
||||
// GetTokenByCode ...
|
||||
GetTokenByCode(ctx context.Context, code string) (*gtsmodel.Token, error)
|
||||
|
||||
// GetTokenByAccess ...
|
||||
GetTokenByAccess(ctx context.Context, access string) (*gtsmodel.Token, error)
|
||||
|
||||
// GetTokenByRefresh ...
|
||||
GetTokenByRefresh(ctx context.Context, refresh string) (*gtsmodel.Token, error)
|
||||
|
||||
// PutToken ...
|
||||
PutToken(ctx context.Context, token *gtsmodel.Token) error
|
||||
|
||||
// DeleteTokenByID ...
|
||||
DeleteTokenByID(ctx context.Context, id string) error
|
||||
|
||||
// DeleteTokenByCode ...
|
||||
DeleteTokenByCode(ctx context.Context, code string) error
|
||||
|
||||
// DeleteTokenByAccess ...
|
||||
DeleteTokenByAccess(ctx context.Context, access string) error
|
||||
|
||||
// DeleteTokenByRefresh ...
|
||||
DeleteTokenByRefresh(ctx context.Context, refresh string) error
|
||||
}
|
||||
|
Reference in New Issue
Block a user