Update config with server configuration
This commit is contained in:
@@ -8,17 +8,32 @@ import (
|
|||||||
"strconv"
|
"strconv"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
var WebServerConfig structures.WebServerConfig
|
||||||
|
var WorkerServerConfig structures.WorkerServerConfig
|
||||||
var ClientConfig structures.ClientConfig
|
var ClientConfig structures.ClientConfig
|
||||||
var defaultValues = make(map[string]string)
|
|
||||||
|
|
||||||
func InitConfig() {
|
var defaultClientConfigValues = make(map[string]string)
|
||||||
|
var defaultServerConfigValues = make(map[string]string)
|
||||||
|
|
||||||
|
func InitServerConfig() {
|
||||||
|
loadEnvVariables()
|
||||||
|
|
||||||
|
initServerConfigDefaultValues()
|
||||||
|
generateServerConfigObject()
|
||||||
|
}
|
||||||
|
|
||||||
|
func InitClientConfig() {
|
||||||
|
loadEnvVariables()
|
||||||
|
|
||||||
|
initClientConfigDefaultValues()
|
||||||
|
generateClientConfigObject()
|
||||||
|
}
|
||||||
|
|
||||||
|
func loadEnvVariables() {
|
||||||
err := godotenv.Load()
|
err := godotenv.Load()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Fatal("Unable to load ENV variables")
|
log.Fatal("Unable to load ENV variables")
|
||||||
}
|
}
|
||||||
|
|
||||||
initDefaultValues()
|
|
||||||
generateClientConfigObject()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func generateClientConfigObject() {
|
func generateClientConfigObject() {
|
||||||
@@ -29,18 +44,38 @@ func generateClientConfigObject() {
|
|||||||
ClientConfig.ProxyListBaseURL = getString("PROXY_LIST_BASE_URL")
|
ClientConfig.ProxyListBaseURL = getString("PROXY_LIST_BASE_URL")
|
||||||
}
|
}
|
||||||
|
|
||||||
func initDefaultValues() {
|
func generateServerConfigObject() {
|
||||||
defaultValues["CLIENT_CONNECTIONS_COUNT"] = "5"
|
WebServerConfig.Address = getString("WEB_SERVER_ADDRESS")
|
||||||
defaultValues["CLIENT_CONNECTION_TIMEOUT"] = "2"
|
WebServerConfig.APIKey = getString("WEB_SERVER_API_KEY")
|
||||||
defaultValues["WORKER_SERVER_ADDRESS"] = "127.0.0.1:1338"
|
WebServerConfig.Timeout = getInt("WEB_SERVER_TIMEOUT")
|
||||||
defaultValues["REQUEST_MESSAGE_PREFIX"] = "URL "
|
|
||||||
defaultValues["PROXY_LIST_BASE_URL"] = "https://www.proxy-list.download/api/v1/get?type="
|
WorkerServerConfig.Address = getString("WORKER_SERVER_ADDRESS")
|
||||||
|
WorkerServerConfig.WorkersCount = getInt("WORKER_SERVER_WORKERS_COUNT")
|
||||||
|
WorkerServerConfig.RequestMessagePrefix = getString("WORKER_SERVER_REQUEST_MESSAGE_PREFIX")
|
||||||
|
}
|
||||||
|
|
||||||
|
func initClientConfigDefaultValues() {
|
||||||
|
defaultClientConfigValues["CLIENT_CONNECTIONS_COUNT"] = "5"
|
||||||
|
defaultClientConfigValues["CLIENT_CONNECTION_TIMEOUT"] = "2"
|
||||||
|
defaultClientConfigValues["WORKER_SERVER_ADDRESS"] = "127.0.0.1:1338"
|
||||||
|
defaultClientConfigValues["REQUEST_MESSAGE_PREFIX"] = "URL "
|
||||||
|
defaultClientConfigValues["PROXY_LIST_BASE_URL"] = "https://www.proxy-list.download/api/v1/get?type="
|
||||||
|
}
|
||||||
|
|
||||||
|
func initServerConfigDefaultValues() {
|
||||||
|
defaultServerConfigValues["WEB_SERVER_ADDRESS"] = "127.0.0.1:1337"
|
||||||
|
defaultServerConfigValues["WEB_SERVER_API_KEY"] = "b8be5a3b639d465039e8fbe7582270a7"
|
||||||
|
defaultServerConfigValues["WEB_SERVER_TIMEOUT"] = "100"
|
||||||
|
|
||||||
|
defaultServerConfigValues["WORKER_SERVER_ADDRESS"] = "127.0.0.1:1338"
|
||||||
|
defaultServerConfigValues["WORKER_SERVER_WORKERS_COUNT"] = "50"
|
||||||
|
defaultServerConfigValues["WORKER_SERVER_REQUEST_MESSAGE_PREFIX"] = "URL "
|
||||||
}
|
}
|
||||||
|
|
||||||
func getInt(key string) int {
|
func getInt(key string) int {
|
||||||
value := os.Getenv(key)
|
value := os.Getenv(key)
|
||||||
if len(value) == 0 {
|
if len(value) == 0 {
|
||||||
value = defaultValues[key]
|
value = defaultClientConfigValues[key]
|
||||||
}
|
}
|
||||||
|
|
||||||
numericalValue, err := strconv.Atoi(value)
|
numericalValue, err := strconv.Atoi(value)
|
||||||
@@ -53,7 +88,7 @@ func getInt(key string) int {
|
|||||||
func getString(key string) string {
|
func getString(key string) string {
|
||||||
value := os.Getenv(key)
|
value := os.Getenv(key)
|
||||||
if len(value) == 0 {
|
if len(value) == 0 {
|
||||||
return defaultValues[key]
|
return defaultClientConfigValues[key]
|
||||||
}
|
}
|
||||||
return value
|
return value
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -21,6 +21,18 @@ type ProxyServer struct {
|
|||||||
Address string
|
Address string
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type WebServerConfig struct {
|
||||||
|
Address string
|
||||||
|
APIKey string
|
||||||
|
Timeout int // In seconds
|
||||||
|
}
|
||||||
|
|
||||||
|
type WorkerServerConfig struct {
|
||||||
|
Address string
|
||||||
|
WorkersCount int
|
||||||
|
RequestMessagePrefix string
|
||||||
|
}
|
||||||
|
|
||||||
type ClientConfig struct {
|
type ClientConfig struct {
|
||||||
ConnectionsCount int
|
ConnectionsCount int
|
||||||
ConnectionTimeout int // In seconds
|
ConnectionTimeout int // In seconds
|
||||||
|
|||||||
Reference in New Issue
Block a user