module Network.AWS.ElasticBeanstalk.UpdateEnvironment
(
UpdateEnvironment
, updateEnvironment
, ueDescription
, ueEnvironmentId
, ueEnvironmentName
, ueOptionSettings
, ueOptionsToRemove
, ueSolutionStackName
, ueTemplateName
, ueTier
, ueVersionLabel
, UpdateEnvironmentResponse
, updateEnvironmentResponse
, uerAbortableOperationInProgress
, uerApplicationName
, uerCNAME
, uerDateCreated
, uerDateUpdated
, uerDescription
, uerEndpointURL
, uerEnvironmentId
, uerEnvironmentName
, uerHealth
, uerResources
, uerSolutionStackName
, uerStatus
, uerTemplateName
, uerTier
, uerVersionLabel
) where
import Network.AWS.Prelude
import Network.AWS.Request.Query
import Network.AWS.ElasticBeanstalk.Types
import qualified GHC.Exts
data UpdateEnvironment = UpdateEnvironment
{ _ueDescription :: Maybe Text
, _ueEnvironmentId :: Maybe Text
, _ueEnvironmentName :: Maybe Text
, _ueOptionSettings :: List "member" ConfigurationOptionSetting
, _ueOptionsToRemove :: List "member" OptionSpecification
, _ueSolutionStackName :: Maybe Text
, _ueTemplateName :: Maybe Text
, _ueTier :: Maybe EnvironmentTier
, _ueVersionLabel :: Maybe Text
} deriving (Eq, Read, Show)
updateEnvironment :: UpdateEnvironment
updateEnvironment = UpdateEnvironment
{ _ueEnvironmentId = Nothing
, _ueEnvironmentName = Nothing
, _ueDescription = Nothing
, _ueTier = Nothing
, _ueVersionLabel = Nothing
, _ueTemplateName = Nothing
, _ueSolutionStackName = Nothing
, _ueOptionSettings = mempty
, _ueOptionsToRemove = mempty
}
ueDescription :: Lens' UpdateEnvironment (Maybe Text)
ueDescription = lens _ueDescription (\s a -> s { _ueDescription = a })
ueEnvironmentId :: Lens' UpdateEnvironment (Maybe Text)
ueEnvironmentId = lens _ueEnvironmentId (\s a -> s { _ueEnvironmentId = a })
ueEnvironmentName :: Lens' UpdateEnvironment (Maybe Text)
ueEnvironmentName =
lens _ueEnvironmentName (\s a -> s { _ueEnvironmentName = a })
ueOptionSettings :: Lens' UpdateEnvironment [ConfigurationOptionSetting]
ueOptionSettings = lens _ueOptionSettings (\s a -> s { _ueOptionSettings = a }) . _List
ueOptionsToRemove :: Lens' UpdateEnvironment [OptionSpecification]
ueOptionsToRemove =
lens _ueOptionsToRemove (\s a -> s { _ueOptionsToRemove = a })
. _List
ueSolutionStackName :: Lens' UpdateEnvironment (Maybe Text)
ueSolutionStackName =
lens _ueSolutionStackName (\s a -> s { _ueSolutionStackName = a })
ueTemplateName :: Lens' UpdateEnvironment (Maybe Text)
ueTemplateName = lens _ueTemplateName (\s a -> s { _ueTemplateName = a })
ueTier :: Lens' UpdateEnvironment (Maybe EnvironmentTier)
ueTier = lens _ueTier (\s a -> s { _ueTier = a })
ueVersionLabel :: Lens' UpdateEnvironment (Maybe Text)
ueVersionLabel = lens _ueVersionLabel (\s a -> s { _ueVersionLabel = a })
data UpdateEnvironmentResponse = UpdateEnvironmentResponse
{ _uerAbortableOperationInProgress :: Maybe Bool
, _uerApplicationName :: Maybe Text
, _uerCNAME :: Maybe Text
, _uerDateCreated :: Maybe ISO8601
, _uerDateUpdated :: Maybe ISO8601
, _uerDescription :: Maybe Text
, _uerEndpointURL :: Maybe Text
, _uerEnvironmentId :: Maybe Text
, _uerEnvironmentName :: Maybe Text
, _uerHealth :: Maybe EnvironmentHealth
, _uerResources :: Maybe EnvironmentResourcesDescription
, _uerSolutionStackName :: Maybe Text
, _uerStatus :: Maybe EnvironmentStatus
, _uerTemplateName :: Maybe Text
, _uerTier :: Maybe EnvironmentTier
, _uerVersionLabel :: Maybe Text
} deriving (Eq, Read, Show)
updateEnvironmentResponse :: UpdateEnvironmentResponse
updateEnvironmentResponse = UpdateEnvironmentResponse
{ _uerEnvironmentName = Nothing
, _uerEnvironmentId = Nothing
, _uerApplicationName = Nothing
, _uerVersionLabel = Nothing
, _uerSolutionStackName = Nothing
, _uerTemplateName = Nothing
, _uerDescription = Nothing
, _uerEndpointURL = Nothing
, _uerCNAME = Nothing
, _uerDateCreated = Nothing
, _uerDateUpdated = Nothing
, _uerStatus = Nothing
, _uerAbortableOperationInProgress = Nothing
, _uerHealth = Nothing
, _uerResources = Nothing
, _uerTier = Nothing
}
uerAbortableOperationInProgress :: Lens' UpdateEnvironmentResponse (Maybe Bool)
uerAbortableOperationInProgress =
lens _uerAbortableOperationInProgress
(\s a -> s { _uerAbortableOperationInProgress = a })
uerApplicationName :: Lens' UpdateEnvironmentResponse (Maybe Text)
uerApplicationName =
lens _uerApplicationName (\s a -> s { _uerApplicationName = a })
uerCNAME :: Lens' UpdateEnvironmentResponse (Maybe Text)
uerCNAME = lens _uerCNAME (\s a -> s { _uerCNAME = a })
uerDateCreated :: Lens' UpdateEnvironmentResponse (Maybe UTCTime)
uerDateCreated = lens _uerDateCreated (\s a -> s { _uerDateCreated = a }) . mapping _Time
uerDateUpdated :: Lens' UpdateEnvironmentResponse (Maybe UTCTime)
uerDateUpdated = lens _uerDateUpdated (\s a -> s { _uerDateUpdated = a }) . mapping _Time
uerDescription :: Lens' UpdateEnvironmentResponse (Maybe Text)
uerDescription = lens _uerDescription (\s a -> s { _uerDescription = a })
uerEndpointURL :: Lens' UpdateEnvironmentResponse (Maybe Text)
uerEndpointURL = lens _uerEndpointURL (\s a -> s { _uerEndpointURL = a })
uerEnvironmentId :: Lens' UpdateEnvironmentResponse (Maybe Text)
uerEnvironmentId = lens _uerEnvironmentId (\s a -> s { _uerEnvironmentId = a })
uerEnvironmentName :: Lens' UpdateEnvironmentResponse (Maybe Text)
uerEnvironmentName =
lens _uerEnvironmentName (\s a -> s { _uerEnvironmentName = a })
uerHealth :: Lens' UpdateEnvironmentResponse (Maybe EnvironmentHealth)
uerHealth = lens _uerHealth (\s a -> s { _uerHealth = a })
uerResources :: Lens' UpdateEnvironmentResponse (Maybe EnvironmentResourcesDescription)
uerResources = lens _uerResources (\s a -> s { _uerResources = a })
uerSolutionStackName :: Lens' UpdateEnvironmentResponse (Maybe Text)
uerSolutionStackName =
lens _uerSolutionStackName (\s a -> s { _uerSolutionStackName = a })
uerStatus :: Lens' UpdateEnvironmentResponse (Maybe EnvironmentStatus)
uerStatus = lens _uerStatus (\s a -> s { _uerStatus = a })
uerTemplateName :: Lens' UpdateEnvironmentResponse (Maybe Text)
uerTemplateName = lens _uerTemplateName (\s a -> s { _uerTemplateName = a })
uerTier :: Lens' UpdateEnvironmentResponse (Maybe EnvironmentTier)
uerTier = lens _uerTier (\s a -> s { _uerTier = a })
uerVersionLabel :: Lens' UpdateEnvironmentResponse (Maybe Text)
uerVersionLabel = lens _uerVersionLabel (\s a -> s { _uerVersionLabel = a })
instance ToPath UpdateEnvironment where
toPath = const "/"
instance ToQuery UpdateEnvironment where
toQuery UpdateEnvironment{..} = mconcat
[ "Description" =? _ueDescription
, "EnvironmentId" =? _ueEnvironmentId
, "EnvironmentName" =? _ueEnvironmentName
, "OptionSettings" =? _ueOptionSettings
, "OptionsToRemove" =? _ueOptionsToRemove
, "SolutionStackName" =? _ueSolutionStackName
, "TemplateName" =? _ueTemplateName
, "Tier" =? _ueTier
, "VersionLabel" =? _ueVersionLabel
]
instance ToHeaders UpdateEnvironment
instance AWSRequest UpdateEnvironment where
type Sv UpdateEnvironment = ElasticBeanstalk
type Rs UpdateEnvironment = UpdateEnvironmentResponse
request = post "UpdateEnvironment"
response = xmlResponse
instance FromXML UpdateEnvironmentResponse where
parseXML = withElement "UpdateEnvironmentResult" $ \x -> UpdateEnvironmentResponse
<$> x .@? "AbortableOperationInProgress"
<*> x .@? "ApplicationName"
<*> x .@? "CNAME"
<*> x .@? "DateCreated"
<*> x .@? "DateUpdated"
<*> x .@? "Description"
<*> x .@? "EndpointURL"
<*> x .@? "EnvironmentId"
<*> x .@? "EnvironmentName"
<*> x .@? "Health"
<*> x .@? "Resources"
<*> x .@? "SolutionStackName"
<*> x .@? "Status"
<*> x .@? "TemplateName"
<*> x .@? "Tier"
<*> x .@? "VersionLabel"