module Network.AWS.EC2.CreatePlacementGroup
(
createPlacementGroup
, CreatePlacementGroup
, cpgDryRun
, cpgGroupName
, cpgStrategy
, createPlacementGroupResponse
, CreatePlacementGroupResponse
) where
import Network.AWS.EC2.Types
import Network.AWS.EC2.Types.Product
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
data CreatePlacementGroup = CreatePlacementGroup'
{ _cpgDryRun :: !(Maybe Bool)
, _cpgGroupName :: !Text
, _cpgStrategy :: !PlacementStrategy
} deriving (Eq,Read,Show,Data,Typeable,Generic)
createPlacementGroup
:: Text
-> PlacementStrategy
-> CreatePlacementGroup
createPlacementGroup pGroupName_ pStrategy_ =
CreatePlacementGroup'
{ _cpgDryRun = Nothing
, _cpgGroupName = pGroupName_
, _cpgStrategy = pStrategy_
}
cpgDryRun :: Lens' CreatePlacementGroup (Maybe Bool)
cpgDryRun = lens _cpgDryRun (\ s a -> s{_cpgDryRun = a});
cpgGroupName :: Lens' CreatePlacementGroup Text
cpgGroupName = lens _cpgGroupName (\ s a -> s{_cpgGroupName = a});
cpgStrategy :: Lens' CreatePlacementGroup PlacementStrategy
cpgStrategy = lens _cpgStrategy (\ s a -> s{_cpgStrategy = a});
instance AWSRequest CreatePlacementGroup where
type Rs CreatePlacementGroup =
CreatePlacementGroupResponse
request = postQuery ec2
response = receiveNull CreatePlacementGroupResponse'
instance Hashable CreatePlacementGroup
instance ToHeaders CreatePlacementGroup where
toHeaders = const mempty
instance ToPath CreatePlacementGroup where
toPath = const "/"
instance ToQuery CreatePlacementGroup where
toQuery CreatePlacementGroup'{..}
= mconcat
["Action" =: ("CreatePlacementGroup" :: ByteString),
"Version" =: ("2015-10-01" :: ByteString),
"DryRun" =: _cpgDryRun, "GroupName" =: _cpgGroupName,
"Strategy" =: _cpgStrategy]
data CreatePlacementGroupResponse =
CreatePlacementGroupResponse'
deriving (Eq,Read,Show,Data,Typeable,Generic)
createPlacementGroupResponse
:: CreatePlacementGroupResponse
createPlacementGroupResponse = CreatePlacementGroupResponse'