Documentation ¶
Index ¶
- type Config
- type Option
- type Store
- func (s *Store) Close()
- func (s *Store) Create(ctx context.Context, info oauth2.TokenInfo) error
- func (s *Store) GetByAccess(ctx context.Context, access string) (oauth2.TokenInfo, error)
- func (s *Store) GetByCode(ctx context.Context, code string) (oauth2.TokenInfo, error)
- func (s *Store) GetByRefresh(ctx context.Context, refresh string) (oauth2.TokenInfo, error)
- func (s *Store) RemoveByAccess(ctx context.Context, access string) error
- func (s *Store) RemoveByCode(ctx context.Context, code string) error
- func (s *Store) RemoveByRefresh(ctx context.Context, refresh string) error
- func (s *Store) SetStdout(stdout io.Writer) *Store
- type StoreItem
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Option ¶
type Option interface {
// contains filtered or unexported methods
}
func WithGCTimeInterval ¶
WithGCTimeInterval sets the time interval for garbage collection.
func WithSQLDialect ¶
func WithSQLDialect(dialect gorp.MySQLDialect) Option
WithSQLDialect sets the database for the store.
func WithTableName ¶
WithTableName sets the table name for the store.
type Store ¶
type Store struct {
// contains filtered or unexported fields
}
Store mysql token store
func NewDefaultStore ¶
NewDefaultStore create mysql store instance
func NewStore ¶
NewStore create mysql store instance, config mysql configuration, tableName table name (default oauth2_token), GC time interval (in seconds, default 600)
func NewStoreWithDB ¶
NewStoreWithDB create mysql store instance, db sql.DB, tableName table name (default oauth2_token), GC time interval (in seconds, default 600)
func NewStoreWithOpts ¶
NewStoreWithOpts create mysql store instance with apply custom input, db sql.DB, tableName table name (default oauth2_token), GC time interval (in seconds, default 600)
func (*Store) GetByAccess ¶
GetByAccess use the access token for token information data
func (*Store) GetByRefresh ¶
GetByRefresh use the refresh token for token information data
func (*Store) RemoveByAccess ¶
RemoveByAccess use the access token to delete the token information
func (*Store) RemoveByCode ¶
RemoveByCode delete the authorization code
func (*Store) RemoveByRefresh ¶
RemoveByRefresh use the refresh token to delete the token information
type StoreItem ¶
type StoreItem struct { ID int64 `db:"id,primarykey,autoincrement"` ExpiredAt int64 `db:"expired_at"` Code string `db:"code,size:255"` Access string `db:"access,size:255"` Refresh string `db:"refresh,size:255"` Data string `db:"data,size:2048"` UserID string `db:"user_id,size:16"` }
StoreItem data item