module Network.Google.Resource.Games.Rooms.Leave
(
RoomsLeaveResource
, roomsLeave
, RoomsLeave
, rlConsistencyToken
, rlPayload
, rlRoomId
, rlLanguage
) where
import Network.Google.Games.Types
import Network.Google.Prelude
type RoomsLeaveResource =
"games" :>
"v1" :>
"rooms" :>
Capture "roomId" Text :>
"leave" :>
QueryParam "consistencyToken" (Textual Int64) :>
QueryParam "language" Text :>
QueryParam "alt" AltJSON :>
ReqBody '[JSON] RoomLeaveRequest :> Post '[JSON] Room
data RoomsLeave = RoomsLeave'
{ _rlConsistencyToken :: !(Maybe (Textual Int64))
, _rlPayload :: !RoomLeaveRequest
, _rlRoomId :: !Text
, _rlLanguage :: !(Maybe Text)
} deriving (Eq,Show,Data,Typeable,Generic)
roomsLeave
:: RoomLeaveRequest
-> Text
-> RoomsLeave
roomsLeave pRlPayload_ pRlRoomId_ =
RoomsLeave'
{ _rlConsistencyToken = Nothing
, _rlPayload = pRlPayload_
, _rlRoomId = pRlRoomId_
, _rlLanguage = Nothing
}
rlConsistencyToken :: Lens' RoomsLeave (Maybe Int64)
rlConsistencyToken
= lens _rlConsistencyToken
(\ s a -> s{_rlConsistencyToken = a})
. mapping _Coerce
rlPayload :: Lens' RoomsLeave RoomLeaveRequest
rlPayload
= lens _rlPayload (\ s a -> s{_rlPayload = a})
rlRoomId :: Lens' RoomsLeave Text
rlRoomId = lens _rlRoomId (\ s a -> s{_rlRoomId = a})
rlLanguage :: Lens' RoomsLeave (Maybe Text)
rlLanguage
= lens _rlLanguage (\ s a -> s{_rlLanguage = a})
instance GoogleRequest RoomsLeave where
type Rs RoomsLeave = Room
type Scopes RoomsLeave =
'["https://www.googleapis.com/auth/games",
"https://www.googleapis.com/auth/plus.login"]
requestClient RoomsLeave'{..}
= go _rlRoomId _rlConsistencyToken _rlLanguage
(Just AltJSON)
_rlPayload
gamesService
where go
= buildClient (Proxy :: Proxy RoomsLeaveResource)
mempty