battleplace-0.1.0.1: Core definitions for BattlePlace.io service

LicenseMIT
Safe HaskellNone
LanguageHaskell2010

BattlePlace.WebApi

Description

 

Synopsis

Documentation

type WebApi = "v1a" :> (("client" :> (("auth" :> (ReqBody '[JSON] ClientAuthRequest :> Post '[JSON] ClientAuthResponse)) :<|> (("match" :> ((ReqBody '[JSON] MatchRequest :> Post '[JSON] MatchResponse) :<|> (Capture "matchToken" (InternalToken MatchToken) :> Get '[JSON] MatchStatusResponse))) :<|> ("session" :> (Capture "sessionToken" (InternalToken SessionToken) :> ("result" :> (ReqBody '[JSON] SessionResultRequest :> Post '[JSON] ()))))))) :<|> ("server" :> (("match" :> (ReqBody '[JSON] ServerMatchRequest :> Post '[JSON] ServerMatchResponse)) :<|> ("session" :> (Capture "serverSessionToken" (InternalToken ServerSessionToken) :> ("result" :> (ReqBody '[JSON] ServerSessionResultRequest :> Post '[JSON] ()))))))) Source #

data ClientAuthResponse Source #

data MatchRequest Source #

data MatchStatusResponse Source #

Instances

Generic MatchStatusResponse Source # 
ToJSON MatchStatusResponse Source # 
FromJSON MatchStatusResponse Source # 
type Rep MatchStatusResponse Source # 
type Rep MatchStatusResponse = D1 * (MetaData "MatchStatusResponse" "BattlePlace.WebApi" "battleplace-0.1.0.1-IU8z1o2jI2JOUpufR5zBo" False) ((:+:) * ((:+:) * (C1 * (MetaCons "MatchStatusResponse_notFound" PrefixI False) (U1 *)) (C1 * (MetaCons "MatchStatusResponse_inProgress" PrefixI False) (U1 *))) ((:+:) * (C1 * (MetaCons "MatchStatusResponse_matched" PrefixI True) ((:*:) * ((:*:) * (S1 * (MetaSel (Just Symbol "matchStatusResponse_sessionId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 * SessionId)) ((:*:) * (S1 * (MetaSel (Just Symbol "matchStatusResponse_sessionToken") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 * (InternalToken SessionToken))) (S1 * (MetaSel (Just Symbol "matchStatusResponse_teams") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 * (Vector MatchTeam))))) ((:*:) * (S1 * (MetaSel (Just Symbol "matchStatusResponse_teamIndex") SourceUnpack SourceStrict DecidedStrict) (Rec0 * Int)) ((:*:) * (S1 * (MetaSel (Just Symbol "matchStatusResponse_mateIndex") SourceUnpack SourceStrict DecidedStrict) (Rec0 * Int)) (S1 * (MetaSel (Just Symbol "matchStatusResponse_server") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 * (Maybe MatchServer))))))) ((:+:) * (C1 * (MetaCons "MatchStatusResponse_failed" PrefixI True) (S1 * (MetaSel (Just Symbol "matchStatusResponse_reason") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 * MatchStatusReason))) (C1 * (MetaCons "MatchStatusResponse_cleaned" PrefixI False) (U1 *)))))

data MatchStatusReason Source #

Reason of match failure.

Constructors

MatchStatusReason_timedOut

Failed to make a match in a specified time.

MatchStatusReason_noServer

Match was made, but no server is available (and use of server is mandatory).

MatchStatusReason_cancelled

Matching was explicitly cancelled by user.

Instances

Generic MatchStatusReason Source # 
ToJSON MatchStatusReason Source # 
FromJSON MatchStatusReason Source # 
type Rep MatchStatusReason Source # 
type Rep MatchStatusReason = D1 * (MetaData "MatchStatusReason" "BattlePlace.WebApi" "battleplace-0.1.0.1-IU8z1o2jI2JOUpufR5zBo" False) ((:+:) * (C1 * (MetaCons "MatchStatusReason_timedOut" PrefixI False) (U1 *)) ((:+:) * (C1 * (MetaCons "MatchStatusReason_noServer" PrefixI False) (U1 *)) (C1 * (MetaCons "MatchStatusReason_cancelled" PrefixI False) (U1 *))))

data ServerMatchRequest Source #

Instances

Generic ServerMatchRequest Source # 
ToJSON ServerMatchRequest Source # 
FromJSON ServerMatchRequest Source # 
type Rep ServerMatchRequest Source # 
type Rep ServerMatchRequest = D1 * (MetaData "ServerMatchRequest" "BattlePlace.WebApi" "battleplace-0.1.0.1-IU8z1o2jI2JOUpufR5zBo" False) (C1 * (MetaCons "ServerMatchRequest" PrefixI True) ((:*:) * ((:*:) * (S1 * (MetaSel (Just Symbol "serverMatchRequest_projectId") SourceUnpack SourceStrict DecidedStrict) (Rec0 * ProjectId)) ((:*:) * (S1 * (MetaSel (Just Symbol "serverMatchRequest_projectServerToken") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 * ProjectServerToken)) (S1 * (MetaSel (Just Symbol "serverMatchRequest_maxSessionsCount") SourceUnpack SourceStrict DecidedStrict) (Rec0 * Int)))) ((:*:) * (S1 * (MetaSel (Just Symbol "serverMatchRequest_name") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 * Text)) ((:*:) * (S1 * (MetaSel (Just Symbol "serverMatchRequest_info") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 * MatchServerInfo)) (S1 * (MetaSel (Just Symbol "serverMatchRequest_timeout") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 * (Maybe Int)))))))