greskell-websocket-1.0.0.1: src/Network/Greskell/WebSocket/Client/Options.hs
-- |
-- Module: Network.Greskell.WebSocket.Client.Options
-- Description: Options to create a Client
-- Maintainer: Toshio Ito <debug.ito@gmail.com>
--
--
module Network.Greskell.WebSocket.Client.Options
( -- * Options
Options
, defOptions
-- ** accessor functions
, connectionSettings
, batchSize
, language
, aliases
, scriptEvaluationTimeout
-- * Settings
, module Network.Greskell.WebSocket.Connection.Settings
) where
import Data.Greskell.GraphSON (GValue)
import Data.HashMap.Strict (HashMap)
import Data.Text (Text)
import Network.Greskell.WebSocket.Connection (Connection)
import Network.Greskell.WebSocket.Connection.Settings
-- | Configuration options to create a client for Gremlin Server.
--
-- You can get the default 'Options' by 'defOptions' function, and
-- customize its fields by accessor functions.
data Options
= Options
{ connectionSettings :: !(Settings GValue)
-- ^ Settings for the underlying 'Connection'. Default:
-- 'defJSONSettings'.
, batchSize :: !(Maybe Int)
-- ^ \"batchSize\" field for \"eval\" operation. Default:
-- 'Nothing'.
, language :: !(Maybe Text)
-- ^ \"language\" field for \"eval\" operation. Default:
-- 'Nothing'.
, aliases :: !(Maybe (HashMap Text Text))
-- ^ \"aliases\" field for \"eval\" operation. Default: 'Nothing'.
, scriptEvaluationTimeout :: !(Maybe Int)
-- ^ \"scriptEvaluationTimeout\" field for \"eval\"
-- operation. Default: 'Nothing'.
}
defOptions :: Options
defOptions =
Options
{ connectionSettings = defJSONSettings,
batchSize = Nothing,
language = Nothing,
aliases = Nothing,
scriptEvaluationTimeout = Nothing
}