Documentation ¶
Index ¶
Constants ¶
const ( MySqlDbType string = "mysql" PostgresDbType string = "postgres" Sqlite3DbType string = "sqlite3" )
Database types
const ( LocalFileSystemObjectStorageType string = "local_filesystem" MinIOStorageType string = "minio" )
Object Storage types
const ( OpenStreetMapProvider string = "openstreetmap" OpenStreetMapHumanitarianStyleProvider string = "openstreetmap_humanitarian" OpenTopoMapProvider string = "opentopomap" OPNVKarteMapProvider string = "opnvkarte" CyclOSMMapProvider string = "cyclosm" CartoDBMapProvider string = "cartodb" TomTomMapProvider string = "tomtom" TianDiTuProvider string = "tianditu" GoogleMapProvider string = "googlemap" BaiduMapProvider string = "baidumap" AmapProvider string = "amap" CustomProvider string = "custom" )
Map provider types
const ( AmapSecurityVerificationInternalProxyMethod string = "internal_proxy" AmapSecurityVerificationExternalProxyMethod string = "external_proxy" AmapSecurityVerificationPlainTextMethod string = "plain_text" )
Amap security verification method
const ( ReserveBankOfAustraliaDataSource string = "reserve_bank_of_australia" BankOfCanadaDataSource string = "bank_of_canada" CzechNationalBankDataSource string = "czech_national_bank" DanmarksNationalbankDataSource string = "danmarks_national_bank" EuroCentralBankDataSource string = "euro_central_bank" NationalBankOfGeorgiaDataSource string = "national_bank_of_georgia" CentralBankOfHungaryDataSource string = "central_bank_of_hungary" BankOfIsraelDataSource string = "bank_of_israel" CentralBankOfMyanmarDataSource string = "central_bank_of_myanmar" NorgesBankDataSource string = "norges_bank" NationalBankOfPolandDataSource string = "national_bank_of_poland" NationalBankOfRomaniaDataSource string = "national_bank_of_romania" BankOfRussiaDataSource string = "bank_of_russia" SwissNationalBankDataSource string = "swiss_national_bank" CentralBankOfUzbekistanDataSource string = "central_bank_of_uzbekistan" InternationalMonetaryFundDataSource string = "international_monetary_fund" )
Exchange rates data source types
const (
InMemoryDuplicateCheckerType string = "in_memory"
)
Duplicate checker types
const (
InternalUuidGeneratorType string = "internal"
)
Uuid generator types
Variables ¶
var ( Version string CommitHash string Container = &ConfigContainer{} )
Initialize a config container singleton instance
Functions ¶
func GetDefaultConfigFilePath ¶
GetDefaultConfigFilePath returns the defaule config file path
func SetCurrentConfig ¶
func SetCurrentConfig(config *Config)
SetCurrentConfig sets the current config by a given config
Types ¶
type Config ¶
type Config struct { // Global AppName string Mode SystemMode WorkingPath string // Server Protocol Scheme HttpAddr string HttpPort uint16 Domain string RootUrl string CertFile string CertKeyFile string UnixSocketPath string StaticRootPath string EnableGZip bool EnableRequestLog bool // Database DatabaseConfig *DatabaseConfig EnableQueryLog bool AutoUpdateDatabase bool // Mail EnableSMTP bool SMTPConfig *SMTPConfig // Log LogModes []string EnableConsoleLog bool EnableFileLog bool LogLevel Level FileLogPath string RequestFileLogPath string QueryFileLogPath string LogFileRotate bool LogFileMaxSize uint32 LogFileMaxDays uint32 // Storage StorageType string LocalFileSystemPath string MinIOConfig *MinIOConfig // Uuid UuidGeneratorType string UuidServerId uint8 // Duplicate Checker DuplicateCheckerType string InMemoryDuplicateCheckerCleanupInterval uint32 InMemoryDuplicateCheckerCleanupIntervalDuration time.Duration EnableDuplicateSubmissionsCheck bool DuplicateSubmissionsInterval uint32 DuplicateSubmissionsIntervalDuration time.Duration // Cron EnableRemoveExpiredTokens bool EnableCreateScheduledTransaction bool // Secret SecretKeyNoSet bool SecretKey string EnableTwoFactor bool TokenExpiredTime uint32 TokenExpiredTimeDuration time.Duration TokenMinRefreshInterval uint32 TemporaryTokenExpiredTime uint32 TemporaryTokenExpiredTimeDuration time.Duration EmailVerifyTokenExpiredTime uint32 EmailVerifyTokenExpiredTimeDuration time.Duration PasswordResetTokenExpiredTime uint32 PasswordResetTokenExpiredTimeDuration time.Duration EnableRequestIdHeader bool // User EnableUserRegister bool EnableUserVerifyEmail bool EnableUserForceVerifyEmail bool EnableUserForgetPassword bool ForgetPasswordRequireVerifyEmail bool EnableTransactionPictures bool MaxTransactionPictureFileSize uint32 EnableScheduledTransaction bool AvatarProvider core.UserAvatarProviderType MaxAvatarFileSize uint32 DefaultFeatureRestrictions core.UserFeatureRestrictions // Data EnableDataExport bool EnableDataImport bool MaxImportFileSize uint32 // Tip LoginPageTips TipConfig // Notification AfterRegisterNotification NotificationConfig AfterLoginNotification NotificationConfig AfterOpenNotification NotificationConfig // Map MapProvider string EnableMapDataFetchProxy bool MapProxy string TomTomMapAPIKey string TianDiTuAPIKey string GoogleMapAPIKey string BaiduMapAK string AmapApplicationKey string AmapSecurityVerificationMethod string AmapApplicationSecret string AmapApiExternalProxyUrl string CustomMapTileServerTileLayerUrl string CustomMapTileServerAnnotationLayerUrl string CustomMapTileServerMinZoomLevel uint8 CustomMapTileServerMaxZoomLevel uint8 CustomMapTileServerDefaultZoomLevel uint8 // Exchange Rates ExchangeRatesDataSource string ExchangeRatesRequestTimeout uint32 ExchangeRatesRequestTimeoutExceedDefaultValue bool ExchangeRatesProxy string ExchangeRatesSkipTLSVerify bool }
Config represents the global setting config
func LoadConfiguration ¶
LoadConfiguration loads setting config from given config file path
type ConfigContainer ¶
type ConfigContainer struct {
Current *Config
}
ConfigContainer contains the current setting config
type DatabaseConfig ¶
type DatabaseConfig struct { DatabaseType string DatabaseHost string DatabaseName string DatabaseUser string DatabasePassword string DatabaseSSLMode string DatabasePath string MaxIdleConnection uint16 MaxOpenConnection uint16 ConnectionMaxLifeTime uint32 }
DatabaseConfig represents the database setting config
type MinIOConfig ¶ added in v0.5.0
type MinIOConfig struct { Endpoint string Location string AccessKeyID string SecretAccessKey string UseSSL bool SkipTLSVerify bool Bucket string RootPath string }
MinIOConfig represents the MinIO setting config
type NotificationConfig ¶ added in v0.5.0
type NotificationConfig struct { Enabled bool DefaultContent string MultiLanguageContent map[string]string }
NotificationConfig represents a notification setting config
type SMTPConfig ¶ added in v0.4.0
type SMTPConfig struct { SMTPHost string SMTPUser string SMTPPasswd string SMTPSkipTLSVerify bool FromAddress string }
SMTPConfig represents the SMTP setting config
type SystemMode ¶
type SystemMode string
SystemMode represents running mode of system
const ( MODE_DEVELOPMENT SystemMode = "development" MODE_PRODUCTION SystemMode = "production" )
System running modes