util

package
v5.5.1+incompatible Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 7, 2018 License: MIT Imports: 7 Imported by: 4

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetExpireAt

func GetExpireAt(leaderboardPublicID string) (int64, error)

GetExpireAt returns a timestamp when the key should expire or -1 if the key doesn't match any valid auto expire regexes

func MonthlyExpiration

func MonthlyExpiration(startTime time.Time) time.Time

MonthlyExpiration calculates the expireAt date for leaderboards with quarterly format

func QuarterlyExpiration

func QuarterlyExpiration(year, quarter int64) time.Time

QuarterlyExpiration calculates the expireAt date for leaderboards with quarterly format

func WeeklyExpiration

func WeeklyExpiration(year, week int64) time.Time

WeeklyExpiration calculates the expireAt date for leaderboards with weekly format

Types

type InvalidDurationError

type InvalidDurationError struct {
	LeaderboardPublicID string
	DurationInSeconds   int64
}

InvalidDurationError identifies that a given key generates an invalid duration

func (*InvalidDurationError) Error

func (e *InvalidDurationError) Error() string

type LeaderboardExpiredError

type LeaderboardExpiredError struct {
	LeaderboardPublicID string
}

LeaderboardExpiredError identifies that a given key generates an already expired leaderboard

func (*LeaderboardExpiredError) Error

func (e *LeaderboardExpiredError) Error() string

type RedisClient

type RedisClient struct {
	Logger zap.Logger
	Client *redis.Client
}

RedisClient identifies uniquely one redis client with a pool of connections

func GetRedisClient

func GetRedisClient(redisHost string, redisPort int, redisPassword string, redisDB int, maxPoolSize int, logger zap.Logger) (*RedisClient, error)

GetRedisClient creates and returns a new redis client based on the given settings

func (*RedisClient) GetConnection

func (c *RedisClient) GetConnection() *redis.Client

GetConnection return a redis connection

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL