module Kafka.Settings.Internal ( Kafka.Types.KafkaLogLevel (..), decoderBrokerAddresses, decoderKafkaLogLevel, ) where import qualified Environment import qualified Kafka.Types decoderBrokerAddresses :: Environment.Decoder [Kafka.Types.BrokerAddress] decoderBrokerAddresses :: Decoder [BrokerAddress] decoderBrokerAddresses = Variable -> Parser [BrokerAddress] -> Decoder [BrokerAddress] forall a. Variable -> Parser a -> Decoder a Environment.variable Variable :: Text -> Text -> Text -> Variable Environment.Variable { name :: Text Environment.name = Text "KAFKA_BROKER_ADDRESSES", description :: Text Environment.description = Text "A comma-separated list of broker addresses", defaultValue :: Text Environment.defaultValue = Text "localhost:9092" } ((Text -> [BrokerAddress]) -> Parser Text -> Parser [BrokerAddress] forall (m :: * -> *) a value. Functor m => (a -> value) -> m a -> m value map ((Text -> BrokerAddress) -> List Text -> [BrokerAddress] forall a b. (a -> b) -> List a -> List b List.map Text -> BrokerAddress Kafka.Types.BrokerAddress (List Text -> [BrokerAddress]) -> (Text -> List Text) -> Text -> [BrokerAddress] forall b c a. (b -> c) -> (a -> b) -> a -> c << Text -> Text -> List Text Text.split Text ",") Parser Text Environment.text) decoderKafkaLogLevel :: Environment.Decoder Kafka.Types.KafkaLogLevel decoderKafkaLogLevel :: Decoder KafkaLogLevel decoderKafkaLogLevel = Variable -> Parser KafkaLogLevel -> Decoder KafkaLogLevel forall a. Variable -> Parser a -> Decoder a Environment.variable Variable :: Text -> Text -> Text -> Variable Environment.Variable { name :: Text Environment.name = Text "KAFKA_LOG_LEVEL", description :: Text Environment.description = Text "Kafka log level", defaultValue :: Text Environment.defaultValue = Text "Debug" } ((Text -> KafkaLogLevel) -> Parser Text -> Parser KafkaLogLevel forall (m :: * -> *) a value. Functor m => (a -> value) -> m a -> m value map Text -> KafkaLogLevel kafkaLogLevelFromText Parser Text Environment.text) kafkaLogLevelFromText :: Text -> Kafka.Types.KafkaLogLevel kafkaLogLevelFromText :: Text -> KafkaLogLevel kafkaLogLevelFromText Text text = case Text text of Text "Emerg" -> KafkaLogLevel Kafka.Types.KafkaLogEmerg Text "Alert" -> KafkaLogLevel Kafka.Types.KafkaLogAlert Text "Crit" -> KafkaLogLevel Kafka.Types.KafkaLogCrit Text "Err" -> KafkaLogLevel Kafka.Types.KafkaLogErr Text "Warning" -> KafkaLogLevel Kafka.Types.KafkaLogWarning Text "Notice" -> KafkaLogLevel Kafka.Types.KafkaLogNotice Text "Info" -> KafkaLogLevel Kafka.Types.KafkaLogInfo Text "Debug" -> KafkaLogLevel Kafka.Types.KafkaLogDebug Text _ -> KafkaLogLevel Kafka.Types.KafkaLogDebug