X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=dmaap-mediator-producer%2Finternal%2Fconfig%2Fconfig.go;h=3616c584ae2eca75a5a5cec75961a11f720fc47f;hb=560f09e187d60d9b8df6f4976bdcfd3a9a2a0778;hp=6969f9fa7c3a9859e45c898e0ef4f3f4d214c6dc;hpb=cce95ff706e7b7d703b0bf1cfa6ce855cc2d9b68;p=nonrtric.git diff --git a/dmaap-mediator-producer/internal/config/config.go b/dmaap-mediator-producer/internal/config/config.go index 6969f9fa..3616c584 100644 --- a/dmaap-mediator-producer/internal/config/config.go +++ b/dmaap-mediator-producer/internal/config/config.go @@ -22,19 +22,34 @@ package config import ( "os" + "strconv" + + log "github.com/sirupsen/logrus" ) type Config struct { - LogLevel string - JobResultUri string - InfoCoordinatorAddress string + LogLevel string + InfoProducerSupervisionCallbackHost string + InfoProducerSupervisionCallbackPort int + InfoJobCallbackHost string + InfoJobCallbackPort int + InfoCoordinatorAddress string +} + +type ProducerRegistrationInfo struct { + InfoProducerSupervisionCallbackUrl string `json:"info_producer_supervision_callback_url"` + SupportedInfoTypes []string `json:"supported_info_types"` + InfoJobCallbackUrl string `json:"info_job_callback_url"` } func New() *Config { return &Config{ - LogLevel: getEnv("LOG_LEVEL", "Info"), - JobResultUri: getEnv("JOB_RESULT_URI", ""), - InfoCoordinatorAddress: getEnv("INFO_COORD_ADDR", "http://enrichmentservice:8083"), + LogLevel: getEnv("LOG_LEVEL", "Info"), + InfoProducerSupervisionCallbackHost: getEnv("INFO_PRODUCER_SUPERVISION_CALLBACK_HOST", ""), + InfoProducerSupervisionCallbackPort: getEnvAsInt("INFO_PRODUCER_SUPERVISION_CALLBACK_PORT", 8085), + InfoJobCallbackHost: getEnv("INFO_JOB_CALLBACK_HOST", ""), + InfoJobCallbackPort: getEnvAsInt("INFO_JOB_CALLBACK_PORT", 8086), + InfoCoordinatorAddress: getEnv("INFO_COORD_ADDR", "http://enrichmentservice:8083"), } } @@ -45,3 +60,14 @@ func getEnv(key string, defaultVal string) string { return defaultVal } + +func getEnvAsInt(name string, defaultVal int) int { + valueStr := getEnv(name, "") + if value, err := strconv.Atoi(valueStr); err == nil { + return value + } else if valueStr != "" { + log.Warnf("Invalid int value: %v for variable: %v. Default value: %v will be used", valueStr, name, defaultVal) + } + + return defaultVal +}