replace zxq.co/ripple/hanayo
This commit is contained in:
65
vendor/zxq.co/ripple/rippleapi/common/conf.go
vendored
Normal file
65
vendor/zxq.co/ripple/rippleapi/common/conf.go
vendored
Normal file
@@ -0,0 +1,65 @@
|
||||
package common
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
|
||||
"github.com/thehowl/conf"
|
||||
)
|
||||
|
||||
// Version is the git hash of the application. Do not edit. This is
|
||||
// automatically set using -ldflags during build time.
|
||||
var Version string
|
||||
|
||||
// Conf is the configuration file data for the ripple API.
|
||||
// Conf uses https://github.com/thehowl/conf
|
||||
type Conf struct {
|
||||
DatabaseType string `description:"At the moment, 'mysql' is the only supported database type."`
|
||||
DSN string `description:"The Data Source Name for the database. More: https://github.com/go-sql-driver/mysql#dsn-data-source-name"`
|
||||
ListenTo string `description:"The IP/Port combination from which to take connections, e.g. :8080"`
|
||||
Unix bool `description:"Bool indicating whether ListenTo is a UNIX socket or an address."`
|
||||
SentryDSN string `description:"thing for sentry whatever"`
|
||||
HanayoKey string
|
||||
BeatmapRequestsPerUser int
|
||||
RankQueueSize int
|
||||
OsuAPIKey string
|
||||
RedisAddr string
|
||||
RedisPassword string
|
||||
RedisDB int
|
||||
}
|
||||
|
||||
var cachedConf *Conf
|
||||
|
||||
// Load creates a new Conf, using the data in the file "api.conf".
|
||||
func Load() (c Conf, halt bool) {
|
||||
if cachedConf != nil {
|
||||
c = *cachedConf
|
||||
return
|
||||
}
|
||||
err := conf.Load(&c, "api.conf")
|
||||
halt = err == conf.ErrNoFile
|
||||
if halt {
|
||||
conf.MustExport(Conf{
|
||||
DatabaseType: "mysql",
|
||||
DSN: "root@/ripple",
|
||||
ListenTo: ":40001",
|
||||
Unix: false,
|
||||
HanayoKey: "Potato",
|
||||
BeatmapRequestsPerUser: 2,
|
||||
RankQueueSize: 25,
|
||||
RedisAddr: "localhost:6379",
|
||||
}, "api.conf")
|
||||
fmt.Println("Please compile the configuration file (api.conf).")
|
||||
}
|
||||
cachedConf = &c
|
||||
return
|
||||
}
|
||||
|
||||
// GetConf returns the cachedConf.
|
||||
func GetConf() *Conf {
|
||||
if cachedConf == nil {
|
||||
return nil
|
||||
}
|
||||
// so that the cachedConf cannot actually get modified
|
||||
c := *cachedConf
|
||||
return &c
|
||||
}
|
Reference in New Issue
Block a user