configuration-tools-0.2.15: 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 #

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

Instances

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

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) # 

pHttpServiceTLSConfiguration :: String -> MParser HttpServiceTLSConfiguration #

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 #

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 # 
Ord HttpServiceConfiguration # 
Read HttpServiceConfiguration # 
Show HttpServiceConfiguration # 
ToJSON HttpServiceConfiguration # 
FromJSON (HttpServiceConfiguration -> HttpServiceConfiguration) # 

Http Client Configuration

data HttpClientConfiguration #

Instances

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