Documentation
¶
Index ¶
- Variables
- func CmdInitialize() (string, string)
- func DISetup() di.Container
- func DetermineConnection(d *DbSettings) string
- type AssetContainer
- type AssetDetails
- type ConfigPath
- type ConfigWriter
- type ConnectionType
- type Containers
- type DbConfig
- type DbSettings
- type MainSettings
- type WordPressSettings
- type XormDB
- type Yaml
Constants ¶
This section is empty.
Variables ¶
var Cntnrs = new(Containers)
var Compat = false
true by default, for now.
var Services = []di.Def{ { Name: "configData", Scope: di.App, Build: func(ctn di.Container) (interface{}, error) { var cfg MainSettings config := cfg.GetConfig() return config, nil }}, { Name: "configWriter", Scope: di.App, Build: func(ctn di.Container) (interface{}, error) { var writer ConfigWriter return writer, nil }}, { Name: "dbData", Scope: di.App, Build: func(ctn di.Container) (interface{}, error) { var db DbSettings dbConfig := db.GetDbConfig() return dbConfig, nil }}, { Name: "dbConn", Scope: di.App, Build: func(ctn di.Container) (interface{}, error) { var conn DbConfig dbConfig := ctn.Get("dbData").(*DbSettings) dbConn := conn.ConnectDB(dbConfig) return dbConn, nil }, Close: func(obj interface{}) error { return obj.(*DbConfig).Xorm.Close() }}, { Name: "db", Scope: di.Request, Build: func(ctn di.Container) (interface{}, error) { conn := ctn.Get("dbConn").(*DbConfig) return conn, nil }, Close: func(obj interface{}) error { return obj.(*DbConfig).Xorm.Close() }}, }
Functions ¶
func CmdInitialize ¶
func DetermineConnection ¶
func DetermineConnection(d *DbSettings) string
Types ¶
type AssetContainer ¶
type AssetContainer struct {
AD []*AssetDetails
}
var Asset AssetContainer
func LoadTableData ¶
func LoadTableData() AssetContainer
func (*AssetContainer) AddNewAsset ¶
func (a *AssetContainer) AddNewAsset(asset *AssetDetails) []*AssetDetails
type AssetDetails ¶
type ConfigPath ¶
type ConfigWriter ¶
type ConfigWriter struct {
ConfigPath *ConfigPath
}
func WriterAccessContainer ¶
func WriterAccessContainer(di di.Container) *ConfigWriter
--- Provides global access to configuration data via dependency injection container -------------------------------------
func (*ConfigWriter) NewConfig ¶
func (c *ConfigWriter) NewConfig() (*ConfigWriter, error)
--- Create new config file ------------------------------------------------------------------------------------
func (*ConfigWriter) NewDbConfig ¶
func (c *ConfigWriter) NewDbConfig() (*ConfigWriter, error)
func (*ConfigWriter) SetConfig ¶
func (c *ConfigWriter) SetConfig() (*ConfigWriter, error)
--- Save current data to config -------------------------------------------------------------------------------
func (*ConfigWriter) SetDbConfig ¶
func (c *ConfigWriter) SetDbConfig() (*ConfigWriter, error)
--- Save current data to dbconfig -----------------------------------------------------------------------------
type ConnectionType ¶
type ConnectionType int
type Containers ¶
type Containers struct {
Dac *MainSettings
Dbd *DbSettings
Wtr *ConfigWriter
}
type DbConfig ¶
type DbConfig struct {
Db *DbSettings
Xorm *XormDB
}
func (*DbConfig) ConnectDB ¶
func (xdb *DbConfig) ConnectDB(d *DbSettings) *DbConfig
type DbSettings ¶
type DbSettings struct {
Providers []string
Database int `json:"database"`
Data struct {
Address string `json:"address"`
Username string `json:"username"`
Password string `json:"password"`
DbName string `json:"dbname"`
TablePrefix string `json:"tableprefix"`
} `json:"data"`
}
--- Maps dbconfig.yml fields to DbSettings fields -------------------------------------------------------------------
func DatabaseContainer ¶
func DatabaseContainer(di di.Container) *DbSettings
--- Provides global access to configuration data via dependency injection container -------------------------------------
func (*DbSettings) GetDbConfig ¶
func (d *DbSettings) GetDbConfig() *DbSettings
--- Gets called from Services and returns DbSettings to Dependency Injection container ------------------------------
type MainSettings ¶
type MainSettings struct {
System struct {
Token string `json:"token"`
CommandPrefix string `json:"commandprefix"`
RequireEmail string `json:"requireemail"`
ConsoleLogLevel int `json:"consoleloglevel"`
FileLogLevel int `json:"fileloglevel"`
} `json:"system"`
Integrations struct {
WordPress string `json:"wordpress"`
Connection string `json:"connection"`
WebAddress string `json:"webaddress"`
} `json:"integrations"`
Discord struct {
Guild string `json:"guild"`
BotUsers []string `json:"botusers"`
Roles map[string]string `json:"roles"`
} `json:"discord"`
Assets struct {
AssetCodes []string `json:"assetcodes"`
ReplaceDate map[string]string `json:"replacedate"`
AssetReplaced map[string]string `json:"assetreplaced"`
AssetReplacement map[string]string `json:"assetreplacement"`
ApiKeys map[string]string `json:"apikey"`
Packages map[string]string `json:"package"`
Version map[string]string `json:"version"`
} `json:"assets"`
}
func DataAccessContainer ¶
func DataAccessContainer(di di.Container) *MainSettings
--- Provides global access to configuration data via dependency injection container -------------------------------------
func (*MainSettings) GetConfig ¶
func (m *MainSettings) GetConfig() *MainSettings
type WordPressSettings ¶
type WordPressSettings struct {
ConnectionType int
ConnectionDetails struct {
SiteAddress string `json:"site_address"`
ClientId string `json:"client_id"`
ClientSecret string `json:"client_secret"`
Redirect string `json:"redirect"`
AppName string `json:"app_name"`
AccessUrl string `json:"access_url"`
AuthorizeUrl string `json:"authorize_url"`
GrantType string `json:"grant_type"`
}
Assets map[string]string `json:"assets"`
}