{-# LANGUAGE DeriveDataTypeable #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE TypeFamilies #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-binds #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}
module Network.AWS.GameLift.StartFleetActions
(
startFleetActions
, StartFleetActions
, sfaFleetId
, sfaActions
, startFleetActionsResponse
, StartFleetActionsResponse
, sfarsResponseStatus
) where
import Network.AWS.GameLift.Types
import Network.AWS.GameLift.Types.Product
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
data StartFleetActions = StartFleetActions'
{ _sfaFleetId :: !Text
, _sfaActions :: !(List1 FleetAction)
} deriving (Eq, Read, Show, Data, Typeable, Generic)
startFleetActions
:: Text
-> NonEmpty FleetAction
-> StartFleetActions
startFleetActions pFleetId_ pActions_ =
StartFleetActions' {_sfaFleetId = pFleetId_, _sfaActions = _List1 # pActions_}
sfaFleetId :: Lens' StartFleetActions Text
sfaFleetId = lens _sfaFleetId (\ s a -> s{_sfaFleetId = a})
sfaActions :: Lens' StartFleetActions (NonEmpty FleetAction)
sfaActions = lens _sfaActions (\ s a -> s{_sfaActions = a}) . _List1
instance AWSRequest StartFleetActions where
type Rs StartFleetActions = StartFleetActionsResponse
request = postJSON gameLift
response
= receiveEmpty
(\ s h x ->
StartFleetActionsResponse' <$> (pure (fromEnum s)))
instance Hashable StartFleetActions where
instance NFData StartFleetActions where
instance ToHeaders StartFleetActions where
toHeaders
= const
(mconcat
["X-Amz-Target" =#
("GameLift.StartFleetActions" :: ByteString),
"Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToJSON StartFleetActions where
toJSON StartFleetActions'{..}
= object
(catMaybes
[Just ("FleetId" .= _sfaFleetId),
Just ("Actions" .= _sfaActions)])
instance ToPath StartFleetActions where
toPath = const "/"
instance ToQuery StartFleetActions where
toQuery = const mempty
newtype StartFleetActionsResponse = StartFleetActionsResponse'
{ _sfarsResponseStatus :: Int
} deriving (Eq, Read, Show, Data, Typeable, Generic)
startFleetActionsResponse
:: Int
-> StartFleetActionsResponse
startFleetActionsResponse pResponseStatus_ =
StartFleetActionsResponse' {_sfarsResponseStatus = pResponseStatus_}
sfarsResponseStatus :: Lens' StartFleetActionsResponse Int
sfarsResponseStatus = lens _sfarsResponseStatus (\ s a -> s{_sfarsResponseStatus = a})
instance NFData StartFleetActionsResponse where