Documentation
¶
Index ¶
- Variables
- func FailWith(status int, message string, c *iris.Context)
- func GetAroundMemberHandler(app *App) func(c *iris.Context)
- func GetMemberHandler(app *App) func(c *iris.Context)
- func GetMemberRankHandler(app *App) func(c *iris.Context)
- func GetMemberRankInManyLeaderboardsHandler(app *App) func(c *iris.Context)
- func GetMembersHandler(app *App) func(c *iris.Context)
- func GetTopMembersHandler(app *App) func(c *iris.Context)
- func GetTopPercentageHandler(app *App) func(c *iris.Context)
- func GetTotalMembersHandler(app *App) func(c *iris.Context)
- func HealthCheckHandler(app *App) func(c *iris.Context)
- func LoadJSONPayload(payloadStruct interface{}, c *iris.Context) error
- func NewLoggerMiddleware(theLogger zap.Logger) iris.HandlerFunc
- func RemoveLeaderboardHandler(app *App) func(c *iris.Context)
- func RemoveMemberHandler(app *App) func(c *iris.Context)
- func RemoveMembersHandler(app *App) func(c *iris.Context)
- func StatusHandler(app *App) func(c *iris.Context)
- func SucceedWith(payload map[string]interface{}, c *iris.Context)
- func UpsertMemberLeaderboardsScoreHandler(app *App) func(c *iris.Context)
- func UpsertMemberScoreHandler(app *App) func(c *iris.Context)
- type App
- type JSON
- type LoggerMiddleware
- type RecoveryMiddleware
- type SentryMiddleware
- type VersionMiddleware
Constants ¶
This section is empty.
Variables ¶
var VERSION = "3.1.2"
VERSION identifies podium's current version
Functions ¶
func GetAroundMemberHandler ¶
GetAroundMemberHandler retrieves a list of member score and rank centered in the given member
func GetMemberHandler ¶
GetMemberHandler is the handler responsible for retrieving a member score and rank
func GetMemberRankHandler ¶
GetMemberRankHandler is the handler responsible for retrieving a member rank
func GetMemberRankInManyLeaderboardsHandler ¶
GetMemberRankInManyLeaderboardsHandler returns the member rank in several leaderboards at once
func GetMembersHandler ¶
GetMembersHandler retrieves several members at once
func GetTopMembersHandler ¶
GetTopMembersHandler retrieves onePage of member score and rank
func GetTopPercentageHandler ¶
GetTopPercentageHandler retrieves top x % members in the leaderboard
func GetTotalMembersHandler ¶
GetTotalMembersHandler is the handler responsible for returning the total number of members in a leaderboard
func HealthCheckHandler ¶
HealthCheckHandler is the handler responsible for validating that the app is still up
func LoadJSONPayload ¶
LoadJSONPayload loads the JSON payload to the given struct validating all fields are not null
func NewLoggerMiddleware ¶
func NewLoggerMiddleware(theLogger zap.Logger) iris.HandlerFunc
NewLoggerMiddleware returns the logger middleware
func RemoveLeaderboardHandler ¶
RemoveLeaderboardHandler is the handler responsible for removing a leaderboard
func RemoveMemberHandler ¶
RemoveMemberHandler removes a member from a leaderboard
func RemoveMembersHandler ¶
RemoveMembersHandler removes several members from a leaderboard
func StatusHandler ¶
StatusHandler is the handler responsible for reporting podium status
func SucceedWith ¶
SucceedWith sends payload to member with status 200
func UpsertMemberLeaderboardsScoreHandler ¶
UpsertMemberLeaderboardsScoreHandler sets the member score for all leaderboards
func UpsertMemberScoreHandler ¶
UpsertMemberScoreHandler is the handler responsible for creating or updating the member score
Types ¶
type App ¶
type App struct { Debug bool Port int Host string ConfigPath string Errors metrics.EWMA App *iris.Framework Config *viper.Viper Logger zap.Logger RedisClient *util.RedisClient }
App is a struct that represents a podium Application
func (*App) OnErrorHandler ¶
OnErrorHandler handles application panics
type LoggerMiddleware ¶
LoggerMiddleware is responsible for logging to Zap all requests
func (*LoggerMiddleware) Serve ¶
func (l *LoggerMiddleware) Serve(ctx *iris.Context)
Serve serves the middleware
type RecoveryMiddleware ¶
type RecoveryMiddleware struct {
OnError func(interface{}, []byte)
}
RecoveryMiddleware recovers from errors in Iris
func (RecoveryMiddleware) Serve ¶
func (r RecoveryMiddleware) Serve(ctx *iris.Context)
Serve executes on error handler when errors happen
type SentryMiddleware ¶
type SentryMiddleware struct {
App *App
}
SentryMiddleware is responsible for sending all exceptions to sentry
func (*SentryMiddleware) Serve ¶
func (l *SentryMiddleware) Serve(ctx *iris.Context)
Serve serves the middleware
type VersionMiddleware ¶
type VersionMiddleware struct {
App *App
}
VersionMiddleware automatically adds a version header to response
func (*VersionMiddleware) Serve ¶
func (m *VersionMiddleware) Serve(c *iris.Context)
Serve automatically adds a version header to response