Simplify context keys
This commit is contained in:
parent
4148d8af80
commit
c327833314
2 changed files with 19 additions and 49 deletions
|
@ -92,7 +92,7 @@ func (c *Context) PocketRequestToken() string {
|
|||
return c.getContextStringValue(middleware.PocketRequestTokenContextKey)
|
||||
}
|
||||
|
||||
func (c *Context) getContextStringValue(key *middleware.ContextKey) string {
|
||||
func (c *Context) getContextStringValue(key middleware.ContextKey) string {
|
||||
if v := c.request.Context().Value(key); v != nil {
|
||||
return v.(string)
|
||||
}
|
||||
|
@ -100,7 +100,7 @@ func (c *Context) getContextStringValue(key *middleware.ContextKey) string {
|
|||
return ""
|
||||
}
|
||||
|
||||
func (c *Context) getContextBoolValue(key *middleware.ContextKey) bool {
|
||||
func (c *Context) getContextBoolValue(key middleware.ContextKey) bool {
|
||||
if v := c.request.Context().Value(key); v != nil {
|
||||
return v.(bool)
|
||||
}
|
||||
|
@ -108,7 +108,7 @@ func (c *Context) getContextBoolValue(key *middleware.ContextKey) bool {
|
|||
return false
|
||||
}
|
||||
|
||||
func (c *Context) getContextIntValue(key *middleware.ContextKey) int64 {
|
||||
func (c *Context) getContextIntValue(key middleware.ContextKey) int64 {
|
||||
if v := c.request.Context().Value(key); v != nil {
|
||||
return v.(int64)
|
||||
}
|
||||
|
|
|
@ -5,51 +5,21 @@
|
|||
package middleware // import "miniflux.app/middleware"
|
||||
|
||||
// ContextKey represents a context key.
|
||||
type ContextKey struct {
|
||||
name string
|
||||
}
|
||||
type ContextKey int
|
||||
|
||||
func (c ContextKey) String() string {
|
||||
return c.name
|
||||
}
|
||||
|
||||
var (
|
||||
// UserIDContextKey is the context key used to store the user ID.
|
||||
UserIDContextKey = &ContextKey{"UserID"}
|
||||
|
||||
// UserTimezoneContextKey is the context key used to store the user timezone.
|
||||
UserTimezoneContextKey = &ContextKey{"UserTimezone"}
|
||||
|
||||
// IsAdminUserContextKey is the context key used to store the user role.
|
||||
IsAdminUserContextKey = &ContextKey{"IsAdminUser"}
|
||||
|
||||
// IsAuthenticatedContextKey is the context key used to store the authentication flag.
|
||||
IsAuthenticatedContextKey = &ContextKey{"IsAuthenticated"}
|
||||
|
||||
// UserSessionTokenContextKey is the context key used to store the user session ID.
|
||||
UserSessionTokenContextKey = &ContextKey{"UserSessionToken"}
|
||||
|
||||
// UserLanguageContextKey is the context key to store user language.
|
||||
UserLanguageContextKey = &ContextKey{"UserLanguageContextKey"}
|
||||
|
||||
// UserThemeContextKey is the context key to store user theme.
|
||||
UserThemeContextKey = &ContextKey{"UserThemeContextKey"}
|
||||
|
||||
// SessionIDContextKey is the context key used to store the session ID.
|
||||
SessionIDContextKey = &ContextKey{"SessionID"}
|
||||
|
||||
// CSRFContextKey is the context key used to store CSRF token.
|
||||
CSRFContextKey = &ContextKey{"CSRF"}
|
||||
|
||||
// OAuth2StateContextKey is the context key used to store OAuth2 state.
|
||||
OAuth2StateContextKey = &ContextKey{"OAuth2State"}
|
||||
|
||||
// FlashMessageContextKey is the context key used to store a flash message.
|
||||
FlashMessageContextKey = &ContextKey{"FlashMessage"}
|
||||
|
||||
// FlashErrorMessageContextKey is the context key used to store a flash error message.
|
||||
FlashErrorMessageContextKey = &ContextKey{"FlashErrorMessage"}
|
||||
|
||||
// PocketRequestTokenContextKey is the context key for Pocket Request Token.
|
||||
PocketRequestTokenContextKey = &ContextKey{"PocketRequestToken"}
|
||||
// List of context keys.
|
||||
const (
|
||||
UserIDContextKey ContextKey = iota
|
||||
UserTimezoneContextKey
|
||||
IsAdminUserContextKey
|
||||
IsAuthenticatedContextKey
|
||||
UserSessionTokenContextKey
|
||||
UserLanguageContextKey
|
||||
UserThemeContextKey
|
||||
SessionIDContextKey
|
||||
CSRFContextKey
|
||||
OAuth2StateContextKey
|
||||
FlashMessageContextKey
|
||||
FlashErrorMessageContextKey
|
||||
PocketRequestTokenContextKey
|
||||
)
|
||||
|
|
Loading…
Reference in a new issue