mattermost-api-50200.5.0: Client API for Mattermost chat system

Safe HaskellNone
LanguageHaskell2010

Network.Mattermost.Util

Synopsis

Documentation

data ConnectionType Source #

Constructors

ConnectHTTPS Bool

Boolean is whether to require trusted certificate

ConnectHTTP

Make an insecure connection over HTTP

Instances
Eq ConnectionType Source # 
Instance details

Defined in Network.Mattermost.Types.Internal

Read ConnectionType Source # 
Instance details

Defined in Network.Mattermost.Types.Internal

Methods

readsPrec :: Int -> ReadS ConnectionType

readList :: ReadS [ConnectionType]

readPrec :: ReadPrec ConnectionType

readListPrec :: ReadPrec [ConnectionType]

Show ConnectionType Source # 
Instance details

Defined in Network.Mattermost.Types.Internal

Methods

showsPrec :: Int -> ConnectionType -> ShowS

show :: ConnectionType -> String

showList :: [ConnectionType] -> ShowS

assertE :: Exception e => Bool -> e -> IO () Source #

This asserts that the provided Bool is True, throwing a provided exception is the argument was False.

noteE :: Exception e => Maybe r -> e -> IO r Source #

This unwraps a Maybe value, throwing a provided exception if the value is Nothing.

hoistE :: Exception e => Either e r -> IO r Source #

This unwraps an Either value, throwing the contained exception if the Either was a Left value.

(~=) :: String -> String -> Bool Source #

Case Insensitive string comparison

withConnection :: ConnectionData -> (MMConn -> IO a) -> IO a Source #

Creates a new connection to Hostname from an already initialized ConnectionContext.

mkConnection :: ConnectionContext -> Hostname -> Port -> ConnectionType -> IO Connection Source #

Creates a connection from a ConnectionData value, returning it. It is the user's responsibility to close this appropriately.

This function respects ALL_PROXY, HTTP_PROXY, HTTPS_PROXY, and NO_PROXY environment variables for controlling whether the resulting connection uses a proxy. However, note:

  • Only SOCKS version 4 and 5 proxies are supported using socks4:// and socks5:// URIs, and
  • No proxy authentication is supported.

connectionGetExact :: Connection -> Int -> IO ByteString Source #

Get exact count of bytes from a connection.

The size argument is the exact amount that must be returned to the user. The call will wait until all data is available. Hence, it behaves like hGet.

On end of input, connectionGetExact will throw an isEOFError exception. Taken from: https://github.com/vincenthz/hs-connection/issues/9

buildPath :: ConnectionData -> Text -> IO Text Source #

Build a full URI path from the path of an API endpoint