configuration-tools-0.3.0: Tools for specifying and parsing configurations

Safe HaskellNone
LanguageHaskell2010
Extensions
  • Cpp
  • ScopedTypeVariables
  • OverloadedStrings
  • OverloadedLists
  • DisambiguateRecordFields
  • RecordWildCards
  • TypeSynonymInstances
  • FlexibleContexts
  • FlexibleInstances
  • UnicodeSyntax
  • ExplicitForAll

Configuration.Utils.Http

Contents

Synopsis

HTTP Service TLS Configuration

data HttpServiceTLSConfiguration Source #

In order to make TLS optional this type should be used wrapped into a Maybe.

Instances

Eq HttpServiceTLSConfiguration Source # 
Ord HttpServiceTLSConfiguration Source # 
Read HttpServiceTLSConfiguration Source # 
Show HttpServiceTLSConfiguration Source # 
ToJSON HttpServiceTLSConfiguration Source # 
FromJSON HttpServiceTLSConfiguration Source #

This is used as default when wrapped into Maybe and

  1. the parsed value is not Null and
  2. the given default is not Nothing.
FromJSON (HttpServiceTLSConfiguration -> HttpServiceTLSConfiguration) Source # 

pHttpServiceTLSConfiguration :: String -> MParser HttpServiceTLSConfiguration Source #

This option parser does not allow to enable or disable usage of TLS. The option will have effect only when TLS usage is configured in the configuration file or the default configuration.

FIXME: print a warning and exit when one of these options is provided even though TLS is turned off.

HTTP Service Configuration

data HttpServiceConfiguration Source #

We restrict services to use either HTTP or HTTPS but not both.

TLS can be turned off explicitely in the configuration file by setting the respective section to null. It can not be turned on or off via command line options. But once it is turned on the values for the certificate and key file can be changed by command line options.

Instances

Eq HttpServiceConfiguration Source # 
Ord HttpServiceConfiguration Source # 
Read HttpServiceConfiguration Source # 
Show HttpServiceConfiguration Source # 
ToJSON HttpServiceConfiguration Source # 
FromJSON (HttpServiceConfiguration -> HttpServiceConfiguration) Source # 

Http Client Configuration

data HttpClientConfiguration Source #

Instances

Eq HttpClientConfiguration Source # 
Ord HttpClientConfiguration Source # 
Read HttpClientConfiguration Source # 
Show HttpClientConfiguration Source # 
ToJSON HttpClientConfiguration Source # 
FromJSON (HttpClientConfiguration -> HttpClientConfiguration) Source #