module Network.AWS.EFS.ModifyMountTargetSecurityGroups
(
modifyMountTargetSecurityGroups
, ModifyMountTargetSecurityGroups
, mmtsgSecurityGroups
, mmtsgMountTargetId
, modifyMountTargetSecurityGroupsResponse
, ModifyMountTargetSecurityGroupsResponse
) where
import Network.AWS.EFS.Types
import Network.AWS.EFS.Types.Product
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
data ModifyMountTargetSecurityGroups = ModifyMountTargetSecurityGroups'
{ _mmtsgSecurityGroups :: !(Maybe [Text])
, _mmtsgMountTargetId :: !Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
modifyMountTargetSecurityGroups
:: Text
-> ModifyMountTargetSecurityGroups
modifyMountTargetSecurityGroups pMountTargetId_ =
ModifyMountTargetSecurityGroups'
{ _mmtsgSecurityGroups = Nothing
, _mmtsgMountTargetId = pMountTargetId_
}
mmtsgSecurityGroups :: Lens' ModifyMountTargetSecurityGroups [Text]
mmtsgSecurityGroups = lens _mmtsgSecurityGroups (\ s a -> s{_mmtsgSecurityGroups = a}) . _Default . _Coerce;
mmtsgMountTargetId :: Lens' ModifyMountTargetSecurityGroups Text
mmtsgMountTargetId = lens _mmtsgMountTargetId (\ s a -> s{_mmtsgMountTargetId = a});
instance AWSRequest ModifyMountTargetSecurityGroups
where
type Rs ModifyMountTargetSecurityGroups =
ModifyMountTargetSecurityGroupsResponse
request = putJSON efs
response
= receiveNull
ModifyMountTargetSecurityGroupsResponse'
instance Hashable ModifyMountTargetSecurityGroups
instance NFData ModifyMountTargetSecurityGroups
instance ToHeaders ModifyMountTargetSecurityGroups
where
toHeaders = const mempty
instance ToJSON ModifyMountTargetSecurityGroups where
toJSON ModifyMountTargetSecurityGroups'{..}
= object
(catMaybes
[("SecurityGroups" .=) <$> _mmtsgSecurityGroups])
instance ToPath ModifyMountTargetSecurityGroups where
toPath ModifyMountTargetSecurityGroups'{..}
= mconcat
["/2015-02-01/mount-targets/",
toBS _mmtsgMountTargetId, "/security-groups"]
instance ToQuery ModifyMountTargetSecurityGroups
where
toQuery = const mempty
data ModifyMountTargetSecurityGroupsResponse =
ModifyMountTargetSecurityGroupsResponse'
deriving (Eq,Read,Show,Data,Typeable,Generic)
modifyMountTargetSecurityGroupsResponse
:: ModifyMountTargetSecurityGroupsResponse
modifyMountTargetSecurityGroupsResponse =
ModifyMountTargetSecurityGroupsResponse'
instance NFData
ModifyMountTargetSecurityGroupsResponse