module Network.AWS.EC2.Types.Product where
import Network.AWS.EC2.Internal
import Network.AWS.EC2.Types.Sum
import Network.AWS.Lens
import Network.AWS.Prelude
data AccountAttribute = AccountAttribute'
{ _aaAttributeValues :: !(Maybe [AccountAttributeValue])
, _aaAttributeName :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
accountAttribute
:: AccountAttribute
accountAttribute =
AccountAttribute'
{ _aaAttributeValues = Nothing
, _aaAttributeName = Nothing
}
aaAttributeValues :: Lens' AccountAttribute [AccountAttributeValue]
aaAttributeValues = lens _aaAttributeValues (\ s a -> s{_aaAttributeValues = a}) . _Default . _Coerce;
aaAttributeName :: Lens' AccountAttribute (Maybe Text)
aaAttributeName = lens _aaAttributeName (\ s a -> s{_aaAttributeName = a});
instance FromXML AccountAttribute where
parseXML x
= AccountAttribute' <$>
(x .@? "attributeValueSet" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "attributeName")
instance Hashable AccountAttribute
instance NFData AccountAttribute
newtype AccountAttributeValue = AccountAttributeValue'
{ _aavAttributeValue :: Maybe Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
accountAttributeValue
:: AccountAttributeValue
accountAttributeValue =
AccountAttributeValue'
{ _aavAttributeValue = Nothing
}
aavAttributeValue :: Lens' AccountAttributeValue (Maybe Text)
aavAttributeValue = lens _aavAttributeValue (\ s a -> s{_aavAttributeValue = a});
instance FromXML AccountAttributeValue where
parseXML x
= AccountAttributeValue' <$> (x .@? "attributeValue")
instance Hashable AccountAttributeValue
instance NFData AccountAttributeValue
data ActiveInstance = ActiveInstance'
{ _aiInstanceId :: !(Maybe Text)
, _aiInstanceType :: !(Maybe Text)
, _aiSpotInstanceRequestId :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
activeInstance
:: ActiveInstance
activeInstance =
ActiveInstance'
{ _aiInstanceId = Nothing
, _aiInstanceType = Nothing
, _aiSpotInstanceRequestId = Nothing
}
aiInstanceId :: Lens' ActiveInstance (Maybe Text)
aiInstanceId = lens _aiInstanceId (\ s a -> s{_aiInstanceId = a});
aiInstanceType :: Lens' ActiveInstance (Maybe Text)
aiInstanceType = lens _aiInstanceType (\ s a -> s{_aiInstanceType = a});
aiSpotInstanceRequestId :: Lens' ActiveInstance (Maybe Text)
aiSpotInstanceRequestId = lens _aiSpotInstanceRequestId (\ s a -> s{_aiSpotInstanceRequestId = a});
instance FromXML ActiveInstance where
parseXML x
= ActiveInstance' <$>
(x .@? "instanceId") <*> (x .@? "instanceType") <*>
(x .@? "spotInstanceRequestId")
instance Hashable ActiveInstance
instance NFData ActiveInstance
data Address = Address'
{ _aAssociationId :: !(Maybe Text)
, _aInstanceId :: !(Maybe Text)
, _aNetworkInterfaceOwnerId :: !(Maybe Text)
, _aAllocationId :: !(Maybe Text)
, _aDomain :: !(Maybe DomainType)
, _aNetworkInterfaceId :: !(Maybe Text)
, _aPrivateIPAddress :: !(Maybe Text)
, _aPublicIP :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
address
:: Address
address =
Address'
{ _aAssociationId = Nothing
, _aInstanceId = Nothing
, _aNetworkInterfaceOwnerId = Nothing
, _aAllocationId = Nothing
, _aDomain = Nothing
, _aNetworkInterfaceId = Nothing
, _aPrivateIPAddress = Nothing
, _aPublicIP = Nothing
}
aAssociationId :: Lens' Address (Maybe Text)
aAssociationId = lens _aAssociationId (\ s a -> s{_aAssociationId = a});
aInstanceId :: Lens' Address (Maybe Text)
aInstanceId = lens _aInstanceId (\ s a -> s{_aInstanceId = a});
aNetworkInterfaceOwnerId :: Lens' Address (Maybe Text)
aNetworkInterfaceOwnerId = lens _aNetworkInterfaceOwnerId (\ s a -> s{_aNetworkInterfaceOwnerId = a});
aAllocationId :: Lens' Address (Maybe Text)
aAllocationId = lens _aAllocationId (\ s a -> s{_aAllocationId = a});
aDomain :: Lens' Address (Maybe DomainType)
aDomain = lens _aDomain (\ s a -> s{_aDomain = a});
aNetworkInterfaceId :: Lens' Address (Maybe Text)
aNetworkInterfaceId = lens _aNetworkInterfaceId (\ s a -> s{_aNetworkInterfaceId = a});
aPrivateIPAddress :: Lens' Address (Maybe Text)
aPrivateIPAddress = lens _aPrivateIPAddress (\ s a -> s{_aPrivateIPAddress = a});
aPublicIP :: Lens' Address (Maybe Text)
aPublicIP = lens _aPublicIP (\ s a -> s{_aPublicIP = a});
instance FromXML Address where
parseXML x
= Address' <$>
(x .@? "associationId") <*> (x .@? "instanceId") <*>
(x .@? "networkInterfaceOwnerId")
<*> (x .@? "allocationId")
<*> (x .@? "domain")
<*> (x .@? "networkInterfaceId")
<*> (x .@? "privateIpAddress")
<*> (x .@? "publicIp")
instance Hashable Address
instance NFData Address
newtype AttributeBooleanValue = AttributeBooleanValue'
{ _abvValue :: Maybe Bool
} deriving (Eq,Read,Show,Data,Typeable,Generic)
attributeBooleanValue
:: AttributeBooleanValue
attributeBooleanValue =
AttributeBooleanValue'
{ _abvValue = Nothing
}
abvValue :: Lens' AttributeBooleanValue (Maybe Bool)
abvValue = lens _abvValue (\ s a -> s{_abvValue = a});
instance FromXML AttributeBooleanValue where
parseXML x
= AttributeBooleanValue' <$> (x .@? "value")
instance Hashable AttributeBooleanValue
instance NFData AttributeBooleanValue
instance ToQuery AttributeBooleanValue where
toQuery AttributeBooleanValue'{..}
= mconcat ["Value" =: _abvValue]
newtype AttributeValue = AttributeValue'
{ _avValue :: Maybe Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
attributeValue
:: AttributeValue
attributeValue =
AttributeValue'
{ _avValue = Nothing
}
avValue :: Lens' AttributeValue (Maybe Text)
avValue = lens _avValue (\ s a -> s{_avValue = a});
instance FromXML AttributeValue where
parseXML x = AttributeValue' <$> (x .@? "value")
instance Hashable AttributeValue
instance NFData AttributeValue
instance ToQuery AttributeValue where
toQuery AttributeValue'{..}
= mconcat ["Value" =: _avValue]
data AvailabilityZone = AvailabilityZone'
{ _azState :: !(Maybe AvailabilityZoneState)
, _azRegionName :: !(Maybe Text)
, _azZoneName :: !(Maybe Text)
, _azMessages :: !(Maybe [AvailabilityZoneMessage])
} deriving (Eq,Read,Show,Data,Typeable,Generic)
availabilityZone
:: AvailabilityZone
availabilityZone =
AvailabilityZone'
{ _azState = Nothing
, _azRegionName = Nothing
, _azZoneName = Nothing
, _azMessages = Nothing
}
azState :: Lens' AvailabilityZone (Maybe AvailabilityZoneState)
azState = lens _azState (\ s a -> s{_azState = a});
azRegionName :: Lens' AvailabilityZone (Maybe Text)
azRegionName = lens _azRegionName (\ s a -> s{_azRegionName = a});
azZoneName :: Lens' AvailabilityZone (Maybe Text)
azZoneName = lens _azZoneName (\ s a -> s{_azZoneName = a});
azMessages :: Lens' AvailabilityZone [AvailabilityZoneMessage]
azMessages = lens _azMessages (\ s a -> s{_azMessages = a}) . _Default . _Coerce;
instance FromXML AvailabilityZone where
parseXML x
= AvailabilityZone' <$>
(x .@? "zoneState") <*> (x .@? "regionName") <*>
(x .@? "zoneName")
<*>
(x .@? "messageSet" .!@ mempty >>=
may (parseXMLList "item"))
instance Hashable AvailabilityZone
instance NFData AvailabilityZone
newtype AvailabilityZoneMessage = AvailabilityZoneMessage'
{ _azmMessage :: Maybe Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
availabilityZoneMessage
:: AvailabilityZoneMessage
availabilityZoneMessage =
AvailabilityZoneMessage'
{ _azmMessage = Nothing
}
azmMessage :: Lens' AvailabilityZoneMessage (Maybe Text)
azmMessage = lens _azmMessage (\ s a -> s{_azmMessage = a});
instance FromXML AvailabilityZoneMessage where
parseXML x
= AvailabilityZoneMessage' <$> (x .@? "message")
instance Hashable AvailabilityZoneMessage
instance NFData AvailabilityZoneMessage
data AvailableCapacity = AvailableCapacity'
{ _acAvailableInstanceCapacity :: !(Maybe [InstanceCapacity])
, _acAvailableVCPUs :: !(Maybe Int)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
availableCapacity
:: AvailableCapacity
availableCapacity =
AvailableCapacity'
{ _acAvailableInstanceCapacity = Nothing
, _acAvailableVCPUs = Nothing
}
acAvailableInstanceCapacity :: Lens' AvailableCapacity [InstanceCapacity]
acAvailableInstanceCapacity = lens _acAvailableInstanceCapacity (\ s a -> s{_acAvailableInstanceCapacity = a}) . _Default . _Coerce;
acAvailableVCPUs :: Lens' AvailableCapacity (Maybe Int)
acAvailableVCPUs = lens _acAvailableVCPUs (\ s a -> s{_acAvailableVCPUs = a});
instance FromXML AvailableCapacity where
parseXML x
= AvailableCapacity' <$>
(x .@? "availableInstanceCapacity" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "availableVCpus")
instance Hashable AvailableCapacity
instance NFData AvailableCapacity
newtype BlobAttributeValue = BlobAttributeValue'
{ _bavValue :: Maybe Base64
} deriving (Eq,Read,Show,Data,Typeable,Generic)
blobAttributeValue
:: BlobAttributeValue
blobAttributeValue =
BlobAttributeValue'
{ _bavValue = Nothing
}
bavValue :: Lens' BlobAttributeValue (Maybe ByteString)
bavValue = lens _bavValue (\ s a -> s{_bavValue = a}) . mapping _Base64;
instance Hashable BlobAttributeValue
instance NFData BlobAttributeValue
instance ToQuery BlobAttributeValue where
toQuery BlobAttributeValue'{..}
= mconcat ["Value" =: _bavValue]
data BlockDeviceMapping = BlockDeviceMapping'
{ _bdmVirtualName :: !(Maybe Text)
, _bdmNoDevice :: !(Maybe Text)
, _bdmEBS :: !(Maybe EBSBlockDevice)
, _bdmDeviceName :: !Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
blockDeviceMapping
:: Text
-> BlockDeviceMapping
blockDeviceMapping pDeviceName_ =
BlockDeviceMapping'
{ _bdmVirtualName = Nothing
, _bdmNoDevice = Nothing
, _bdmEBS = Nothing
, _bdmDeviceName = pDeviceName_
}
bdmVirtualName :: Lens' BlockDeviceMapping (Maybe Text)
bdmVirtualName = lens _bdmVirtualName (\ s a -> s{_bdmVirtualName = a});
bdmNoDevice :: Lens' BlockDeviceMapping (Maybe Text)
bdmNoDevice = lens _bdmNoDevice (\ s a -> s{_bdmNoDevice = a});
bdmEBS :: Lens' BlockDeviceMapping (Maybe EBSBlockDevice)
bdmEBS = lens _bdmEBS (\ s a -> s{_bdmEBS = a});
bdmDeviceName :: Lens' BlockDeviceMapping Text
bdmDeviceName = lens _bdmDeviceName (\ s a -> s{_bdmDeviceName = a});
instance FromXML BlockDeviceMapping where
parseXML x
= BlockDeviceMapping' <$>
(x .@? "virtualName") <*> (x .@? "noDevice") <*>
(x .@? "ebs")
<*> (x .@ "deviceName")
instance Hashable BlockDeviceMapping
instance NFData BlockDeviceMapping
instance ToQuery BlockDeviceMapping where
toQuery BlockDeviceMapping'{..}
= mconcat
["VirtualName" =: _bdmVirtualName,
"NoDevice" =: _bdmNoDevice, "Ebs" =: _bdmEBS,
"DeviceName" =: _bdmDeviceName]
data BundleTask = BundleTask'
{ _btBundleTaskError :: !(Maybe BundleTaskError)
, _btBundleId :: !Text
, _btInstanceId :: !Text
, _btProgress :: !Text
, _btStartTime :: !ISO8601
, _btState :: !BundleTaskState
, _btStorage :: !Storage
, _btUpdateTime :: !ISO8601
} deriving (Eq,Read,Show,Data,Typeable,Generic)
bundleTask
:: Text
-> Text
-> Text
-> UTCTime
-> BundleTaskState
-> Storage
-> UTCTime
-> BundleTask
bundleTask pBundleId_ pInstanceId_ pProgress_ pStartTime_ pState_ pStorage_ pUpdateTime_ =
BundleTask'
{ _btBundleTaskError = Nothing
, _btBundleId = pBundleId_
, _btInstanceId = pInstanceId_
, _btProgress = pProgress_
, _btStartTime = _Time # pStartTime_
, _btState = pState_
, _btStorage = pStorage_
, _btUpdateTime = _Time # pUpdateTime_
}
btBundleTaskError :: Lens' BundleTask (Maybe BundleTaskError)
btBundleTaskError = lens _btBundleTaskError (\ s a -> s{_btBundleTaskError = a});
btBundleId :: Lens' BundleTask Text
btBundleId = lens _btBundleId (\ s a -> s{_btBundleId = a});
btInstanceId :: Lens' BundleTask Text
btInstanceId = lens _btInstanceId (\ s a -> s{_btInstanceId = a});
btProgress :: Lens' BundleTask Text
btProgress = lens _btProgress (\ s a -> s{_btProgress = a});
btStartTime :: Lens' BundleTask UTCTime
btStartTime = lens _btStartTime (\ s a -> s{_btStartTime = a}) . _Time;
btState :: Lens' BundleTask BundleTaskState
btState = lens _btState (\ s a -> s{_btState = a});
btStorage :: Lens' BundleTask Storage
btStorage = lens _btStorage (\ s a -> s{_btStorage = a});
btUpdateTime :: Lens' BundleTask UTCTime
btUpdateTime = lens _btUpdateTime (\ s a -> s{_btUpdateTime = a}) . _Time;
instance FromXML BundleTask where
parseXML x
= BundleTask' <$>
(x .@? "error") <*> (x .@ "bundleId") <*>
(x .@ "instanceId")
<*> (x .@ "progress")
<*> (x .@ "startTime")
<*> (x .@ "state")
<*> (x .@ "storage")
<*> (x .@ "updateTime")
instance Hashable BundleTask
instance NFData BundleTask
data BundleTaskError = BundleTaskError'
{ _bteCode :: !(Maybe Text)
, _bteMessage :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
bundleTaskError
:: BundleTaskError
bundleTaskError =
BundleTaskError'
{ _bteCode = Nothing
, _bteMessage = Nothing
}
bteCode :: Lens' BundleTaskError (Maybe Text)
bteCode = lens _bteCode (\ s a -> s{_bteCode = a});
bteMessage :: Lens' BundleTaskError (Maybe Text)
bteMessage = lens _bteMessage (\ s a -> s{_bteMessage = a});
instance FromXML BundleTaskError where
parseXML x
= BundleTaskError' <$>
(x .@? "code") <*> (x .@? "message")
instance Hashable BundleTaskError
instance NFData BundleTaskError
data CancelSpotFleetRequestsError = CancelSpotFleetRequestsError'
{ _csfreCode :: !CancelBatchErrorCode
, _csfreMessage :: !Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
cancelSpotFleetRequestsError
:: CancelBatchErrorCode
-> Text
-> CancelSpotFleetRequestsError
cancelSpotFleetRequestsError pCode_ pMessage_ =
CancelSpotFleetRequestsError'
{ _csfreCode = pCode_
, _csfreMessage = pMessage_
}
csfreCode :: Lens' CancelSpotFleetRequestsError CancelBatchErrorCode
csfreCode = lens _csfreCode (\ s a -> s{_csfreCode = a});
csfreMessage :: Lens' CancelSpotFleetRequestsError Text
csfreMessage = lens _csfreMessage (\ s a -> s{_csfreMessage = a});
instance FromXML CancelSpotFleetRequestsError where
parseXML x
= CancelSpotFleetRequestsError' <$>
(x .@ "code") <*> (x .@ "message")
instance Hashable CancelSpotFleetRequestsError
instance NFData CancelSpotFleetRequestsError
data CancelSpotFleetRequestsErrorItem = CancelSpotFleetRequestsErrorItem'
{ _csfreiSpotFleetRequestId :: !Text
, _csfreiError :: !CancelSpotFleetRequestsError
} deriving (Eq,Read,Show,Data,Typeable,Generic)
cancelSpotFleetRequestsErrorItem
:: Text
-> CancelSpotFleetRequestsError
-> CancelSpotFleetRequestsErrorItem
cancelSpotFleetRequestsErrorItem pSpotFleetRequestId_ pError_ =
CancelSpotFleetRequestsErrorItem'
{ _csfreiSpotFleetRequestId = pSpotFleetRequestId_
, _csfreiError = pError_
}
csfreiSpotFleetRequestId :: Lens' CancelSpotFleetRequestsErrorItem Text
csfreiSpotFleetRequestId = lens _csfreiSpotFleetRequestId (\ s a -> s{_csfreiSpotFleetRequestId = a});
csfreiError :: Lens' CancelSpotFleetRequestsErrorItem CancelSpotFleetRequestsError
csfreiError = lens _csfreiError (\ s a -> s{_csfreiError = a});
instance FromXML CancelSpotFleetRequestsErrorItem
where
parseXML x
= CancelSpotFleetRequestsErrorItem' <$>
(x .@ "spotFleetRequestId") <*> (x .@ "error")
instance Hashable CancelSpotFleetRequestsErrorItem
instance NFData CancelSpotFleetRequestsErrorItem
data CancelSpotFleetRequestsSuccessItem = CancelSpotFleetRequestsSuccessItem'
{ _csfrsiSpotFleetRequestId :: !Text
, _csfrsiCurrentSpotFleetRequestState :: !BatchState
, _csfrsiPreviousSpotFleetRequestState :: !BatchState
} deriving (Eq,Read,Show,Data,Typeable,Generic)
cancelSpotFleetRequestsSuccessItem
:: Text
-> BatchState
-> BatchState
-> CancelSpotFleetRequestsSuccessItem
cancelSpotFleetRequestsSuccessItem pSpotFleetRequestId_ pCurrentSpotFleetRequestState_ pPreviousSpotFleetRequestState_ =
CancelSpotFleetRequestsSuccessItem'
{ _csfrsiSpotFleetRequestId = pSpotFleetRequestId_
, _csfrsiCurrentSpotFleetRequestState = pCurrentSpotFleetRequestState_
, _csfrsiPreviousSpotFleetRequestState = pPreviousSpotFleetRequestState_
}
csfrsiSpotFleetRequestId :: Lens' CancelSpotFleetRequestsSuccessItem Text
csfrsiSpotFleetRequestId = lens _csfrsiSpotFleetRequestId (\ s a -> s{_csfrsiSpotFleetRequestId = a});
csfrsiCurrentSpotFleetRequestState :: Lens' CancelSpotFleetRequestsSuccessItem BatchState
csfrsiCurrentSpotFleetRequestState = lens _csfrsiCurrentSpotFleetRequestState (\ s a -> s{_csfrsiCurrentSpotFleetRequestState = a});
csfrsiPreviousSpotFleetRequestState :: Lens' CancelSpotFleetRequestsSuccessItem BatchState
csfrsiPreviousSpotFleetRequestState = lens _csfrsiPreviousSpotFleetRequestState (\ s a -> s{_csfrsiPreviousSpotFleetRequestState = a});
instance FromXML CancelSpotFleetRequestsSuccessItem
where
parseXML x
= CancelSpotFleetRequestsSuccessItem' <$>
(x .@ "spotFleetRequestId") <*>
(x .@ "currentSpotFleetRequestState")
<*> (x .@ "previousSpotFleetRequestState")
instance Hashable CancelSpotFleetRequestsSuccessItem
instance NFData CancelSpotFleetRequestsSuccessItem
data CancelledSpotInstanceRequest = CancelledSpotInstanceRequest'
{ _csirState :: !(Maybe CancelSpotInstanceRequestState)
, _csirSpotInstanceRequestId :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
cancelledSpotInstanceRequest
:: CancelledSpotInstanceRequest
cancelledSpotInstanceRequest =
CancelledSpotInstanceRequest'
{ _csirState = Nothing
, _csirSpotInstanceRequestId = Nothing
}
csirState :: Lens' CancelledSpotInstanceRequest (Maybe CancelSpotInstanceRequestState)
csirState = lens _csirState (\ s a -> s{_csirState = a});
csirSpotInstanceRequestId :: Lens' CancelledSpotInstanceRequest (Maybe Text)
csirSpotInstanceRequestId = lens _csirSpotInstanceRequestId (\ s a -> s{_csirSpotInstanceRequestId = a});
instance FromXML CancelledSpotInstanceRequest where
parseXML x
= CancelledSpotInstanceRequest' <$>
(x .@? "state") <*> (x .@? "spotInstanceRequestId")
instance Hashable CancelledSpotInstanceRequest
instance NFData CancelledSpotInstanceRequest
data ClassicLinkDNSSupport = ClassicLinkDNSSupport'
{ _cldsVPCId :: !(Maybe Text)
, _cldsClassicLinkDNSSupported :: !(Maybe Bool)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
classicLinkDNSSupport
:: ClassicLinkDNSSupport
classicLinkDNSSupport =
ClassicLinkDNSSupport'
{ _cldsVPCId = Nothing
, _cldsClassicLinkDNSSupported = Nothing
}
cldsVPCId :: Lens' ClassicLinkDNSSupport (Maybe Text)
cldsVPCId = lens _cldsVPCId (\ s a -> s{_cldsVPCId = a});
cldsClassicLinkDNSSupported :: Lens' ClassicLinkDNSSupport (Maybe Bool)
cldsClassicLinkDNSSupported = lens _cldsClassicLinkDNSSupported (\ s a -> s{_cldsClassicLinkDNSSupported = a});
instance FromXML ClassicLinkDNSSupport where
parseXML x
= ClassicLinkDNSSupport' <$>
(x .@? "vpcId") <*> (x .@? "classicLinkDnsSupported")
instance Hashable ClassicLinkDNSSupport
instance NFData ClassicLinkDNSSupport
data ClassicLinkInstance = ClassicLinkInstance'
{ _cliInstanceId :: !(Maybe Text)
, _cliGroups :: !(Maybe [GroupIdentifier])
, _cliVPCId :: !(Maybe Text)
, _cliTags :: !(Maybe [Tag])
} deriving (Eq,Read,Show,Data,Typeable,Generic)
classicLinkInstance
:: ClassicLinkInstance
classicLinkInstance =
ClassicLinkInstance'
{ _cliInstanceId = Nothing
, _cliGroups = Nothing
, _cliVPCId = Nothing
, _cliTags = Nothing
}
cliInstanceId :: Lens' ClassicLinkInstance (Maybe Text)
cliInstanceId = lens _cliInstanceId (\ s a -> s{_cliInstanceId = a});
cliGroups :: Lens' ClassicLinkInstance [GroupIdentifier]
cliGroups = lens _cliGroups (\ s a -> s{_cliGroups = a}) . _Default . _Coerce;
cliVPCId :: Lens' ClassicLinkInstance (Maybe Text)
cliVPCId = lens _cliVPCId (\ s a -> s{_cliVPCId = a});
cliTags :: Lens' ClassicLinkInstance [Tag]
cliTags = lens _cliTags (\ s a -> s{_cliTags = a}) . _Default . _Coerce;
instance FromXML ClassicLinkInstance where
parseXML x
= ClassicLinkInstance' <$>
(x .@? "instanceId") <*>
(x .@? "groupSet" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "vpcId")
<*>
(x .@? "tagSet" .!@ mempty >>=
may (parseXMLList "item"))
instance Hashable ClassicLinkInstance
instance NFData ClassicLinkInstance
data ClientData = ClientData'
{ _cdUploadStart :: !(Maybe ISO8601)
, _cdUploadSize :: !(Maybe Double)
, _cdUploadEnd :: !(Maybe ISO8601)
, _cdComment :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
clientData
:: ClientData
clientData =
ClientData'
{ _cdUploadStart = Nothing
, _cdUploadSize = Nothing
, _cdUploadEnd = Nothing
, _cdComment = Nothing
}
cdUploadStart :: Lens' ClientData (Maybe UTCTime)
cdUploadStart = lens _cdUploadStart (\ s a -> s{_cdUploadStart = a}) . mapping _Time;
cdUploadSize :: Lens' ClientData (Maybe Double)
cdUploadSize = lens _cdUploadSize (\ s a -> s{_cdUploadSize = a});
cdUploadEnd :: Lens' ClientData (Maybe UTCTime)
cdUploadEnd = lens _cdUploadEnd (\ s a -> s{_cdUploadEnd = a}) . mapping _Time;
cdComment :: Lens' ClientData (Maybe Text)
cdComment = lens _cdComment (\ s a -> s{_cdComment = a});
instance Hashable ClientData
instance NFData ClientData
instance ToQuery ClientData where
toQuery ClientData'{..}
= mconcat
["UploadStart" =: _cdUploadStart,
"UploadSize" =: _cdUploadSize,
"UploadEnd" =: _cdUploadEnd, "Comment" =: _cdComment]
data ConversionTask = ConversionTask'
{ _ctImportInstance :: !(Maybe ImportInstanceTaskDetails)
, _ctStatusMessage :: !(Maybe Text)
, _ctImportVolume :: !(Maybe ImportVolumeTaskDetails)
, _ctExpirationTime :: !(Maybe Text)
, _ctTags :: !(Maybe [Tag])
, _ctConversionTaskId :: !Text
, _ctState :: !ConversionTaskState
} deriving (Eq,Read,Show,Data,Typeable,Generic)
conversionTask
:: Text
-> ConversionTaskState
-> ConversionTask
conversionTask pConversionTaskId_ pState_ =
ConversionTask'
{ _ctImportInstance = Nothing
, _ctStatusMessage = Nothing
, _ctImportVolume = Nothing
, _ctExpirationTime = Nothing
, _ctTags = Nothing
, _ctConversionTaskId = pConversionTaskId_
, _ctState = pState_
}
ctImportInstance :: Lens' ConversionTask (Maybe ImportInstanceTaskDetails)
ctImportInstance = lens _ctImportInstance (\ s a -> s{_ctImportInstance = a});
ctStatusMessage :: Lens' ConversionTask (Maybe Text)
ctStatusMessage = lens _ctStatusMessage (\ s a -> s{_ctStatusMessage = a});
ctImportVolume :: Lens' ConversionTask (Maybe ImportVolumeTaskDetails)
ctImportVolume = lens _ctImportVolume (\ s a -> s{_ctImportVolume = a});
ctExpirationTime :: Lens' ConversionTask (Maybe Text)
ctExpirationTime = lens _ctExpirationTime (\ s a -> s{_ctExpirationTime = a});
ctTags :: Lens' ConversionTask [Tag]
ctTags = lens _ctTags (\ s a -> s{_ctTags = a}) . _Default . _Coerce;
ctConversionTaskId :: Lens' ConversionTask Text
ctConversionTaskId = lens _ctConversionTaskId (\ s a -> s{_ctConversionTaskId = a});
ctState :: Lens' ConversionTask ConversionTaskState
ctState = lens _ctState (\ s a -> s{_ctState = a});
instance FromXML ConversionTask where
parseXML x
= ConversionTask' <$>
(x .@? "importInstance") <*> (x .@? "statusMessage")
<*> (x .@? "importVolume")
<*> (x .@? "expirationTime")
<*>
(x .@? "tagSet" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@ "conversionTaskId")
<*> (x .@ "state")
instance Hashable ConversionTask
instance NFData ConversionTask
data CreateVolumePermission = CreateVolumePermission'
{ _cvpGroup :: !(Maybe PermissionGroup)
, _cvpUserId :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
createVolumePermission
:: CreateVolumePermission
createVolumePermission =
CreateVolumePermission'
{ _cvpGroup = Nothing
, _cvpUserId = Nothing
}
cvpGroup :: Lens' CreateVolumePermission (Maybe PermissionGroup)
cvpGroup = lens _cvpGroup (\ s a -> s{_cvpGroup = a});
cvpUserId :: Lens' CreateVolumePermission (Maybe Text)
cvpUserId = lens _cvpUserId (\ s a -> s{_cvpUserId = a});
instance FromXML CreateVolumePermission where
parseXML x
= CreateVolumePermission' <$>
(x .@? "group") <*> (x .@? "userId")
instance Hashable CreateVolumePermission
instance NFData CreateVolumePermission
instance ToQuery CreateVolumePermission where
toQuery CreateVolumePermission'{..}
= mconcat
["Group" =: _cvpGroup, "UserId" =: _cvpUserId]
data CreateVolumePermissionModifications = CreateVolumePermissionModifications'
{ _cvpmRemove :: !(Maybe [CreateVolumePermission])
, _cvpmAdd :: !(Maybe [CreateVolumePermission])
} deriving (Eq,Read,Show,Data,Typeable,Generic)
createVolumePermissionModifications
:: CreateVolumePermissionModifications
createVolumePermissionModifications =
CreateVolumePermissionModifications'
{ _cvpmRemove = Nothing
, _cvpmAdd = Nothing
}
cvpmRemove :: Lens' CreateVolumePermissionModifications [CreateVolumePermission]
cvpmRemove = lens _cvpmRemove (\ s a -> s{_cvpmRemove = a}) . _Default . _Coerce;
cvpmAdd :: Lens' CreateVolumePermissionModifications [CreateVolumePermission]
cvpmAdd = lens _cvpmAdd (\ s a -> s{_cvpmAdd = a}) . _Default . _Coerce;
instance Hashable CreateVolumePermissionModifications
instance NFData CreateVolumePermissionModifications
instance ToQuery CreateVolumePermissionModifications
where
toQuery CreateVolumePermissionModifications'{..}
= mconcat
[toQuery (toQueryList "Remove" <$> _cvpmRemove),
toQuery (toQueryList "Add" <$> _cvpmAdd)]
data CustomerGateway = CustomerGateway'
{ _cgTags :: !(Maybe [Tag])
, _cgBGPASN :: !Text
, _cgCustomerGatewayId :: !Text
, _cgIPAddress :: !Text
, _cgState :: !Text
, _cgType :: !Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
customerGateway
:: Text
-> Text
-> Text
-> Text
-> Text
-> CustomerGateway
customerGateway pBGPASN_ pCustomerGatewayId_ pIPAddress_ pState_ pType_ =
CustomerGateway'
{ _cgTags = Nothing
, _cgBGPASN = pBGPASN_
, _cgCustomerGatewayId = pCustomerGatewayId_
, _cgIPAddress = pIPAddress_
, _cgState = pState_
, _cgType = pType_
}
cgTags :: Lens' CustomerGateway [Tag]
cgTags = lens _cgTags (\ s a -> s{_cgTags = a}) . _Default . _Coerce;
cgBGPASN :: Lens' CustomerGateway Text
cgBGPASN = lens _cgBGPASN (\ s a -> s{_cgBGPASN = a});
cgCustomerGatewayId :: Lens' CustomerGateway Text
cgCustomerGatewayId = lens _cgCustomerGatewayId (\ s a -> s{_cgCustomerGatewayId = a});
cgIPAddress :: Lens' CustomerGateway Text
cgIPAddress = lens _cgIPAddress (\ s a -> s{_cgIPAddress = a});
cgState :: Lens' CustomerGateway Text
cgState = lens _cgState (\ s a -> s{_cgState = a});
cgType :: Lens' CustomerGateway Text
cgType = lens _cgType (\ s a -> s{_cgType = a});
instance FromXML CustomerGateway where
parseXML x
= CustomerGateway' <$>
(x .@? "tagSet" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@ "bgpAsn")
<*> (x .@ "customerGatewayId")
<*> (x .@ "ipAddress")
<*> (x .@ "state")
<*> (x .@ "type")
instance Hashable CustomerGateway
instance NFData CustomerGateway
data DHCPConfiguration = DHCPConfiguration'
{ _dcValues :: !(Maybe [AttributeValue])
, _dcKey :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
dhcpConfiguration
:: DHCPConfiguration
dhcpConfiguration =
DHCPConfiguration'
{ _dcValues = Nothing
, _dcKey = Nothing
}
dcValues :: Lens' DHCPConfiguration [AttributeValue]
dcValues = lens _dcValues (\ s a -> s{_dcValues = a}) . _Default . _Coerce;
dcKey :: Lens' DHCPConfiguration (Maybe Text)
dcKey = lens _dcKey (\ s a -> s{_dcKey = a});
instance FromXML DHCPConfiguration where
parseXML x
= DHCPConfiguration' <$>
(x .@? "valueSet" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "key")
instance Hashable DHCPConfiguration
instance NFData DHCPConfiguration
data DHCPOptions = DHCPOptions'
{ _doDHCPConfigurations :: !(Maybe [DHCPConfiguration])
, _doDHCPOptionsId :: !(Maybe Text)
, _doTags :: !(Maybe [Tag])
} deriving (Eq,Read,Show,Data,Typeable,Generic)
dhcpOptions
:: DHCPOptions
dhcpOptions =
DHCPOptions'
{ _doDHCPConfigurations = Nothing
, _doDHCPOptionsId = Nothing
, _doTags = Nothing
}
doDHCPConfigurations :: Lens' DHCPOptions [DHCPConfiguration]
doDHCPConfigurations = lens _doDHCPConfigurations (\ s a -> s{_doDHCPConfigurations = a}) . _Default . _Coerce;
doDHCPOptionsId :: Lens' DHCPOptions (Maybe Text)
doDHCPOptionsId = lens _doDHCPOptionsId (\ s a -> s{_doDHCPOptionsId = a});
doTags :: Lens' DHCPOptions [Tag]
doTags = lens _doTags (\ s a -> s{_doTags = a}) . _Default . _Coerce;
instance FromXML DHCPOptions where
parseXML x
= DHCPOptions' <$>
(x .@? "dhcpConfigurationSet" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "dhcpOptionsId")
<*>
(x .@? "tagSet" .!@ mempty >>=
may (parseXMLList "item"))
instance Hashable DHCPOptions
instance NFData DHCPOptions
data DiskImage = DiskImage'
{ _diImage :: !(Maybe DiskImageDetail)
, _diVolume :: !(Maybe VolumeDetail)
, _diDescription :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
diskImage
:: DiskImage
diskImage =
DiskImage'
{ _diImage = Nothing
, _diVolume = Nothing
, _diDescription = Nothing
}
diImage :: Lens' DiskImage (Maybe DiskImageDetail)
diImage = lens _diImage (\ s a -> s{_diImage = a});
diVolume :: Lens' DiskImage (Maybe VolumeDetail)
diVolume = lens _diVolume (\ s a -> s{_diVolume = a});
diDescription :: Lens' DiskImage (Maybe Text)
diDescription = lens _diDescription (\ s a -> s{_diDescription = a});
instance Hashable DiskImage
instance NFData DiskImage
instance ToQuery DiskImage where
toQuery DiskImage'{..}
= mconcat
["Image" =: _diImage, "Volume" =: _diVolume,
"Description" =: _diDescription]
data DiskImageDescription = DiskImageDescription'
{ _dChecksum :: !(Maybe Text)
, _dFormat :: !DiskImageFormat
, _dSize :: !Integer
, _dImportManifestURL :: !Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
diskImageDescription
:: DiskImageFormat
-> Integer
-> Text
-> DiskImageDescription
diskImageDescription pFormat_ pSize_ pImportManifestURL_ =
DiskImageDescription'
{ _dChecksum = Nothing
, _dFormat = pFormat_
, _dSize = pSize_
, _dImportManifestURL = pImportManifestURL_
}
dChecksum :: Lens' DiskImageDescription (Maybe Text)
dChecksum = lens _dChecksum (\ s a -> s{_dChecksum = a});
dFormat :: Lens' DiskImageDescription DiskImageFormat
dFormat = lens _dFormat (\ s a -> s{_dFormat = a});
dSize :: Lens' DiskImageDescription Integer
dSize = lens _dSize (\ s a -> s{_dSize = a});
dImportManifestURL :: Lens' DiskImageDescription Text
dImportManifestURL = lens _dImportManifestURL (\ s a -> s{_dImportManifestURL = a});
instance FromXML DiskImageDescription where
parseXML x
= DiskImageDescription' <$>
(x .@? "checksum") <*> (x .@ "format") <*>
(x .@ "size")
<*> (x .@ "importManifestUrl")
instance Hashable DiskImageDescription
instance NFData DiskImageDescription
data DiskImageDetail = DiskImageDetail'
{ _didFormat :: !DiskImageFormat
, _didBytes :: !Integer
, _didImportManifestURL :: !Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
diskImageDetail
:: DiskImageFormat
-> Integer
-> Text
-> DiskImageDetail
diskImageDetail pFormat_ pBytes_ pImportManifestURL_ =
DiskImageDetail'
{ _didFormat = pFormat_
, _didBytes = pBytes_
, _didImportManifestURL = pImportManifestURL_
}
didFormat :: Lens' DiskImageDetail DiskImageFormat
didFormat = lens _didFormat (\ s a -> s{_didFormat = a});
didBytes :: Lens' DiskImageDetail Integer
didBytes = lens _didBytes (\ s a -> s{_didBytes = a});
didImportManifestURL :: Lens' DiskImageDetail Text
didImportManifestURL = lens _didImportManifestURL (\ s a -> s{_didImportManifestURL = a});
instance Hashable DiskImageDetail
instance NFData DiskImageDetail
instance ToQuery DiskImageDetail where
toQuery DiskImageDetail'{..}
= mconcat
["Format" =: _didFormat, "Bytes" =: _didBytes,
"ImportManifestUrl" =: _didImportManifestURL]
data DiskImageVolumeDescription = DiskImageVolumeDescription'
{ _divdSize :: !(Maybe Integer)
, _divdId :: !Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
diskImageVolumeDescription
:: Text
-> DiskImageVolumeDescription
diskImageVolumeDescription pId_ =
DiskImageVolumeDescription'
{ _divdSize = Nothing
, _divdId = pId_
}
divdSize :: Lens' DiskImageVolumeDescription (Maybe Integer)
divdSize = lens _divdSize (\ s a -> s{_divdSize = a});
divdId :: Lens' DiskImageVolumeDescription Text
divdId = lens _divdId (\ s a -> s{_divdId = a});
instance FromXML DiskImageVolumeDescription where
parseXML x
= DiskImageVolumeDescription' <$>
(x .@? "size") <*> (x .@ "id")
instance Hashable DiskImageVolumeDescription
instance NFData DiskImageVolumeDescription
data EBSBlockDevice = EBSBlockDevice'
{ _ebdDeleteOnTermination :: !(Maybe Bool)
, _ebdVolumeSize :: !(Maybe Int)
, _ebdIOPS :: !(Maybe Int)
, _ebdEncrypted :: !(Maybe Bool)
, _ebdVolumeType :: !(Maybe VolumeType)
, _ebdSnapshotId :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
ebsBlockDevice
:: EBSBlockDevice
ebsBlockDevice =
EBSBlockDevice'
{ _ebdDeleteOnTermination = Nothing
, _ebdVolumeSize = Nothing
, _ebdIOPS = Nothing
, _ebdEncrypted = Nothing
, _ebdVolumeType = Nothing
, _ebdSnapshotId = Nothing
}
ebdDeleteOnTermination :: Lens' EBSBlockDevice (Maybe Bool)
ebdDeleteOnTermination = lens _ebdDeleteOnTermination (\ s a -> s{_ebdDeleteOnTermination = a});
ebdVolumeSize :: Lens' EBSBlockDevice (Maybe Int)
ebdVolumeSize = lens _ebdVolumeSize (\ s a -> s{_ebdVolumeSize = a});
ebdIOPS :: Lens' EBSBlockDevice (Maybe Int)
ebdIOPS = lens _ebdIOPS (\ s a -> s{_ebdIOPS = a});
ebdEncrypted :: Lens' EBSBlockDevice (Maybe Bool)
ebdEncrypted = lens _ebdEncrypted (\ s a -> s{_ebdEncrypted = a});
ebdVolumeType :: Lens' EBSBlockDevice (Maybe VolumeType)
ebdVolumeType = lens _ebdVolumeType (\ s a -> s{_ebdVolumeType = a});
ebdSnapshotId :: Lens' EBSBlockDevice (Maybe Text)
ebdSnapshotId = lens _ebdSnapshotId (\ s a -> s{_ebdSnapshotId = a});
instance FromXML EBSBlockDevice where
parseXML x
= EBSBlockDevice' <$>
(x .@? "deleteOnTermination") <*>
(x .@? "volumeSize")
<*> (x .@? "iops")
<*> (x .@? "encrypted")
<*> (x .@? "volumeType")
<*> (x .@? "snapshotId")
instance Hashable EBSBlockDevice
instance NFData EBSBlockDevice
instance ToQuery EBSBlockDevice where
toQuery EBSBlockDevice'{..}
= mconcat
["DeleteOnTermination" =: _ebdDeleteOnTermination,
"VolumeSize" =: _ebdVolumeSize, "Iops" =: _ebdIOPS,
"Encrypted" =: _ebdEncrypted,
"VolumeType" =: _ebdVolumeType,
"SnapshotId" =: _ebdSnapshotId]
data EBSInstanceBlockDevice = EBSInstanceBlockDevice'
{ _eibdStatus :: !(Maybe AttachmentStatus)
, _eibdDeleteOnTermination :: !(Maybe Bool)
, _eibdVolumeId :: !(Maybe Text)
, _eibdAttachTime :: !(Maybe ISO8601)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
ebsInstanceBlockDevice
:: EBSInstanceBlockDevice
ebsInstanceBlockDevice =
EBSInstanceBlockDevice'
{ _eibdStatus = Nothing
, _eibdDeleteOnTermination = Nothing
, _eibdVolumeId = Nothing
, _eibdAttachTime = Nothing
}
eibdStatus :: Lens' EBSInstanceBlockDevice (Maybe AttachmentStatus)
eibdStatus = lens _eibdStatus (\ s a -> s{_eibdStatus = a});
eibdDeleteOnTermination :: Lens' EBSInstanceBlockDevice (Maybe Bool)
eibdDeleteOnTermination = lens _eibdDeleteOnTermination (\ s a -> s{_eibdDeleteOnTermination = a});
eibdVolumeId :: Lens' EBSInstanceBlockDevice (Maybe Text)
eibdVolumeId = lens _eibdVolumeId (\ s a -> s{_eibdVolumeId = a});
eibdAttachTime :: Lens' EBSInstanceBlockDevice (Maybe UTCTime)
eibdAttachTime = lens _eibdAttachTime (\ s a -> s{_eibdAttachTime = a}) . mapping _Time;
instance FromXML EBSInstanceBlockDevice where
parseXML x
= EBSInstanceBlockDevice' <$>
(x .@? "status") <*> (x .@? "deleteOnTermination")
<*> (x .@? "volumeId")
<*> (x .@? "attachTime")
instance Hashable EBSInstanceBlockDevice
instance NFData EBSInstanceBlockDevice
data EBSInstanceBlockDeviceSpecification = EBSInstanceBlockDeviceSpecification'
{ _eibdsDeleteOnTermination :: !(Maybe Bool)
, _eibdsVolumeId :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
ebsInstanceBlockDeviceSpecification
:: EBSInstanceBlockDeviceSpecification
ebsInstanceBlockDeviceSpecification =
EBSInstanceBlockDeviceSpecification'
{ _eibdsDeleteOnTermination = Nothing
, _eibdsVolumeId = Nothing
}
eibdsDeleteOnTermination :: Lens' EBSInstanceBlockDeviceSpecification (Maybe Bool)
eibdsDeleteOnTermination = lens _eibdsDeleteOnTermination (\ s a -> s{_eibdsDeleteOnTermination = a});
eibdsVolumeId :: Lens' EBSInstanceBlockDeviceSpecification (Maybe Text)
eibdsVolumeId = lens _eibdsVolumeId (\ s a -> s{_eibdsVolumeId = a});
instance Hashable EBSInstanceBlockDeviceSpecification
instance NFData EBSInstanceBlockDeviceSpecification
instance ToQuery EBSInstanceBlockDeviceSpecification
where
toQuery EBSInstanceBlockDeviceSpecification'{..}
= mconcat
["DeleteOnTermination" =: _eibdsDeleteOnTermination,
"VolumeId" =: _eibdsVolumeId]
data EventInformation = EventInformation'
{ _eiInstanceId :: !(Maybe Text)
, _eiEventDescription :: !(Maybe Text)
, _eiEventSubType :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
eventInformation
:: EventInformation
eventInformation =
EventInformation'
{ _eiInstanceId = Nothing
, _eiEventDescription = Nothing
, _eiEventSubType = Nothing
}
eiInstanceId :: Lens' EventInformation (Maybe Text)
eiInstanceId = lens _eiInstanceId (\ s a -> s{_eiInstanceId = a});
eiEventDescription :: Lens' EventInformation (Maybe Text)
eiEventDescription = lens _eiEventDescription (\ s a -> s{_eiEventDescription = a});
eiEventSubType :: Lens' EventInformation (Maybe Text)
eiEventSubType = lens _eiEventSubType (\ s a -> s{_eiEventSubType = a});
instance FromXML EventInformation where
parseXML x
= EventInformation' <$>
(x .@? "instanceId") <*> (x .@? "eventDescription")
<*> (x .@? "eventSubType")
instance Hashable EventInformation
instance NFData EventInformation
data ExportTask = ExportTask'
{ _etDescription :: !Text
, _etExportTaskId :: !Text
, _etExportToS3Task :: !ExportToS3Task
, _etInstanceExportDetails :: !InstanceExportDetails
, _etState :: !ExportTaskState
, _etStatusMessage :: !Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
exportTask
:: Text
-> Text
-> ExportToS3Task
-> InstanceExportDetails
-> ExportTaskState
-> Text
-> ExportTask
exportTask pDescription_ pExportTaskId_ pExportToS3Task_ pInstanceExportDetails_ pState_ pStatusMessage_ =
ExportTask'
{ _etDescription = pDescription_
, _etExportTaskId = pExportTaskId_
, _etExportToS3Task = pExportToS3Task_
, _etInstanceExportDetails = pInstanceExportDetails_
, _etState = pState_
, _etStatusMessage = pStatusMessage_
}
etDescription :: Lens' ExportTask Text
etDescription = lens _etDescription (\ s a -> s{_etDescription = a});
etExportTaskId :: Lens' ExportTask Text
etExportTaskId = lens _etExportTaskId (\ s a -> s{_etExportTaskId = a});
etExportToS3Task :: Lens' ExportTask ExportToS3Task
etExportToS3Task = lens _etExportToS3Task (\ s a -> s{_etExportToS3Task = a});
etInstanceExportDetails :: Lens' ExportTask InstanceExportDetails
etInstanceExportDetails = lens _etInstanceExportDetails (\ s a -> s{_etInstanceExportDetails = a});
etState :: Lens' ExportTask ExportTaskState
etState = lens _etState (\ s a -> s{_etState = a});
etStatusMessage :: Lens' ExportTask Text
etStatusMessage = lens _etStatusMessage (\ s a -> s{_etStatusMessage = a});
instance FromXML ExportTask where
parseXML x
= ExportTask' <$>
(x .@ "description") <*> (x .@ "exportTaskId") <*>
(x .@ "exportToS3")
<*> (x .@ "instanceExport")
<*> (x .@ "state")
<*> (x .@ "statusMessage")
instance Hashable ExportTask
instance NFData ExportTask
data ExportToS3Task = ExportToS3Task'
{ _etstS3Key :: !(Maybe Text)
, _etstContainerFormat :: !(Maybe ContainerFormat)
, _etstS3Bucket :: !(Maybe Text)
, _etstDiskImageFormat :: !(Maybe DiskImageFormat)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
exportToS3Task
:: ExportToS3Task
exportToS3Task =
ExportToS3Task'
{ _etstS3Key = Nothing
, _etstContainerFormat = Nothing
, _etstS3Bucket = Nothing
, _etstDiskImageFormat = Nothing
}
etstS3Key :: Lens' ExportToS3Task (Maybe Text)
etstS3Key = lens _etstS3Key (\ s a -> s{_etstS3Key = a});
etstContainerFormat :: Lens' ExportToS3Task (Maybe ContainerFormat)
etstContainerFormat = lens _etstContainerFormat (\ s a -> s{_etstContainerFormat = a});
etstS3Bucket :: Lens' ExportToS3Task (Maybe Text)
etstS3Bucket = lens _etstS3Bucket (\ s a -> s{_etstS3Bucket = a});
etstDiskImageFormat :: Lens' ExportToS3Task (Maybe DiskImageFormat)
etstDiskImageFormat = lens _etstDiskImageFormat (\ s a -> s{_etstDiskImageFormat = a});
instance FromXML ExportToS3Task where
parseXML x
= ExportToS3Task' <$>
(x .@? "s3Key") <*> (x .@? "containerFormat") <*>
(x .@? "s3Bucket")
<*> (x .@? "diskImageFormat")
instance Hashable ExportToS3Task
instance NFData ExportToS3Task
data ExportToS3TaskSpecification = ExportToS3TaskSpecification'
{ _etstsContainerFormat :: !(Maybe ContainerFormat)
, _etstsS3Prefix :: !(Maybe Text)
, _etstsS3Bucket :: !(Maybe Text)
, _etstsDiskImageFormat :: !(Maybe DiskImageFormat)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
exportToS3TaskSpecification
:: ExportToS3TaskSpecification
exportToS3TaskSpecification =
ExportToS3TaskSpecification'
{ _etstsContainerFormat = Nothing
, _etstsS3Prefix = Nothing
, _etstsS3Bucket = Nothing
, _etstsDiskImageFormat = Nothing
}
etstsContainerFormat :: Lens' ExportToS3TaskSpecification (Maybe ContainerFormat)
etstsContainerFormat = lens _etstsContainerFormat (\ s a -> s{_etstsContainerFormat = a});
etstsS3Prefix :: Lens' ExportToS3TaskSpecification (Maybe Text)
etstsS3Prefix = lens _etstsS3Prefix (\ s a -> s{_etstsS3Prefix = a});
etstsS3Bucket :: Lens' ExportToS3TaskSpecification (Maybe Text)
etstsS3Bucket = lens _etstsS3Bucket (\ s a -> s{_etstsS3Bucket = a});
etstsDiskImageFormat :: Lens' ExportToS3TaskSpecification (Maybe DiskImageFormat)
etstsDiskImageFormat = lens _etstsDiskImageFormat (\ s a -> s{_etstsDiskImageFormat = a});
instance Hashable ExportToS3TaskSpecification
instance NFData ExportToS3TaskSpecification
instance ToQuery ExportToS3TaskSpecification where
toQuery ExportToS3TaskSpecification'{..}
= mconcat
["ContainerFormat" =: _etstsContainerFormat,
"S3Prefix" =: _etstsS3Prefix,
"S3Bucket" =: _etstsS3Bucket,
"DiskImageFormat" =: _etstsDiskImageFormat]
data Filter = Filter'
{ _fValues :: !(Maybe [Text])
, _fName :: !Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
filter'
:: Text
-> Filter
filter' pName_ =
Filter'
{ _fValues = Nothing
, _fName = pName_
}
fValues :: Lens' Filter [Text]
fValues = lens _fValues (\ s a -> s{_fValues = a}) . _Default . _Coerce;
fName :: Lens' Filter Text
fName = lens _fName (\ s a -> s{_fName = a});
instance Hashable Filter
instance NFData Filter
instance ToQuery Filter where
toQuery Filter'{..}
= mconcat
[toQuery (toQueryList "Value" <$> _fValues),
"Name" =: _fName]
data FlowLog = FlowLog'
{ _flCreationTime :: !(Maybe ISO8601)
, _flResourceId :: !(Maybe Text)
, _flFlowLogStatus :: !(Maybe Text)
, _flTrafficType :: !(Maybe TrafficType)
, _flDeliverLogsStatus :: !(Maybe Text)
, _flDeliverLogsErrorMessage :: !(Maybe Text)
, _flLogGroupName :: !(Maybe Text)
, _flDeliverLogsPermissionARN :: !(Maybe Text)
, _flFlowLogId :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
flowLog
:: FlowLog
flowLog =
FlowLog'
{ _flCreationTime = Nothing
, _flResourceId = Nothing
, _flFlowLogStatus = Nothing
, _flTrafficType = Nothing
, _flDeliverLogsStatus = Nothing
, _flDeliverLogsErrorMessage = Nothing
, _flLogGroupName = Nothing
, _flDeliverLogsPermissionARN = Nothing
, _flFlowLogId = Nothing
}
flCreationTime :: Lens' FlowLog (Maybe UTCTime)
flCreationTime = lens _flCreationTime (\ s a -> s{_flCreationTime = a}) . mapping _Time;
flResourceId :: Lens' FlowLog (Maybe Text)
flResourceId = lens _flResourceId (\ s a -> s{_flResourceId = a});
flFlowLogStatus :: Lens' FlowLog (Maybe Text)
flFlowLogStatus = lens _flFlowLogStatus (\ s a -> s{_flFlowLogStatus = a});
flTrafficType :: Lens' FlowLog (Maybe TrafficType)
flTrafficType = lens _flTrafficType (\ s a -> s{_flTrafficType = a});
flDeliverLogsStatus :: Lens' FlowLog (Maybe Text)
flDeliverLogsStatus = lens _flDeliverLogsStatus (\ s a -> s{_flDeliverLogsStatus = a});
flDeliverLogsErrorMessage :: Lens' FlowLog (Maybe Text)
flDeliverLogsErrorMessage = lens _flDeliverLogsErrorMessage (\ s a -> s{_flDeliverLogsErrorMessage = a});
flLogGroupName :: Lens' FlowLog (Maybe Text)
flLogGroupName = lens _flLogGroupName (\ s a -> s{_flLogGroupName = a});
flDeliverLogsPermissionARN :: Lens' FlowLog (Maybe Text)
flDeliverLogsPermissionARN = lens _flDeliverLogsPermissionARN (\ s a -> s{_flDeliverLogsPermissionARN = a});
flFlowLogId :: Lens' FlowLog (Maybe Text)
flFlowLogId = lens _flFlowLogId (\ s a -> s{_flFlowLogId = a});
instance FromXML FlowLog where
parseXML x
= FlowLog' <$>
(x .@? "creationTime") <*> (x .@? "resourceId") <*>
(x .@? "flowLogStatus")
<*> (x .@? "trafficType")
<*> (x .@? "deliverLogsStatus")
<*> (x .@? "deliverLogsErrorMessage")
<*> (x .@? "logGroupName")
<*> (x .@? "deliverLogsPermissionArn")
<*> (x .@? "flowLogId")
instance Hashable FlowLog
instance NFData FlowLog
data GroupIdentifier = GroupIdentifier'
{ _giGroupId :: !(Maybe Text)
, _giGroupName :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
groupIdentifier
:: GroupIdentifier
groupIdentifier =
GroupIdentifier'
{ _giGroupId = Nothing
, _giGroupName = Nothing
}
giGroupId :: Lens' GroupIdentifier (Maybe Text)
giGroupId = lens _giGroupId (\ s a -> s{_giGroupId = a});
giGroupName :: Lens' GroupIdentifier (Maybe Text)
giGroupName = lens _giGroupName (\ s a -> s{_giGroupName = a});
instance FromXML GroupIdentifier where
parseXML x
= GroupIdentifier' <$>
(x .@? "groupId") <*> (x .@? "groupName")
instance Hashable GroupIdentifier
instance NFData GroupIdentifier
instance ToQuery GroupIdentifier where
toQuery GroupIdentifier'{..}
= mconcat
["GroupId" =: _giGroupId,
"GroupName" =: _giGroupName]
data HistoryRecord = HistoryRecord'
{ _hrTimestamp :: !ISO8601
, _hrEventType :: !EventType
, _hrEventInformation :: !EventInformation
} deriving (Eq,Read,Show,Data,Typeable,Generic)
historyRecord
:: UTCTime
-> EventType
-> EventInformation
-> HistoryRecord
historyRecord pTimestamp_ pEventType_ pEventInformation_ =
HistoryRecord'
{ _hrTimestamp = _Time # pTimestamp_
, _hrEventType = pEventType_
, _hrEventInformation = pEventInformation_
}
hrTimestamp :: Lens' HistoryRecord UTCTime
hrTimestamp = lens _hrTimestamp (\ s a -> s{_hrTimestamp = a}) . _Time;
hrEventType :: Lens' HistoryRecord EventType
hrEventType = lens _hrEventType (\ s a -> s{_hrEventType = a});
hrEventInformation :: Lens' HistoryRecord EventInformation
hrEventInformation = lens _hrEventInformation (\ s a -> s{_hrEventInformation = a});
instance FromXML HistoryRecord where
parseXML x
= HistoryRecord' <$>
(x .@ "timestamp") <*> (x .@ "eventType") <*>
(x .@ "eventInformation")
instance Hashable HistoryRecord
instance NFData HistoryRecord
data Host = Host'
{ _hState :: !(Maybe AllocationState)
, _hClientToken :: !(Maybe Text)
, _hHostId :: !(Maybe Text)
, _hAvailableCapacity :: !(Maybe AvailableCapacity)
, _hHostReservationId :: !(Maybe Text)
, _hHostProperties :: !(Maybe HostProperties)
, _hAvailabilityZone :: !(Maybe Text)
, _hInstances :: !(Maybe [HostInstance])
, _hAutoPlacement :: !(Maybe AutoPlacement)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
host
:: Host
host =
Host'
{ _hState = Nothing
, _hClientToken = Nothing
, _hHostId = Nothing
, _hAvailableCapacity = Nothing
, _hHostReservationId = Nothing
, _hHostProperties = Nothing
, _hAvailabilityZone = Nothing
, _hInstances = Nothing
, _hAutoPlacement = Nothing
}
hState :: Lens' Host (Maybe AllocationState)
hState = lens _hState (\ s a -> s{_hState = a});
hClientToken :: Lens' Host (Maybe Text)
hClientToken = lens _hClientToken (\ s a -> s{_hClientToken = a});
hHostId :: Lens' Host (Maybe Text)
hHostId = lens _hHostId (\ s a -> s{_hHostId = a});
hAvailableCapacity :: Lens' Host (Maybe AvailableCapacity)
hAvailableCapacity = lens _hAvailableCapacity (\ s a -> s{_hAvailableCapacity = a});
hHostReservationId :: Lens' Host (Maybe Text)
hHostReservationId = lens _hHostReservationId (\ s a -> s{_hHostReservationId = a});
hHostProperties :: Lens' Host (Maybe HostProperties)
hHostProperties = lens _hHostProperties (\ s a -> s{_hHostProperties = a});
hAvailabilityZone :: Lens' Host (Maybe Text)
hAvailabilityZone = lens _hAvailabilityZone (\ s a -> s{_hAvailabilityZone = a});
hInstances :: Lens' Host [HostInstance]
hInstances = lens _hInstances (\ s a -> s{_hInstances = a}) . _Default . _Coerce;
hAutoPlacement :: Lens' Host (Maybe AutoPlacement)
hAutoPlacement = lens _hAutoPlacement (\ s a -> s{_hAutoPlacement = a});
instance FromXML Host where
parseXML x
= Host' <$>
(x .@? "state") <*> (x .@? "clientToken") <*>
(x .@? "hostId")
<*> (x .@? "availableCapacity")
<*> (x .@? "hostReservationId")
<*> (x .@? "hostProperties")
<*> (x .@? "availabilityZone")
<*>
(x .@? "instances" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "autoPlacement")
instance Hashable Host
instance NFData Host
data HostInstance = HostInstance'
{ _hiInstanceId :: !(Maybe Text)
, _hiInstanceType :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
hostInstance
:: HostInstance
hostInstance =
HostInstance'
{ _hiInstanceId = Nothing
, _hiInstanceType = Nothing
}
hiInstanceId :: Lens' HostInstance (Maybe Text)
hiInstanceId = lens _hiInstanceId (\ s a -> s{_hiInstanceId = a});
hiInstanceType :: Lens' HostInstance (Maybe Text)
hiInstanceType = lens _hiInstanceType (\ s a -> s{_hiInstanceType = a});
instance FromXML HostInstance where
parseXML x
= HostInstance' <$>
(x .@? "instanceId") <*> (x .@? "instanceType")
instance Hashable HostInstance
instance NFData HostInstance
data HostProperties = HostProperties'
{ _hpInstanceType :: !(Maybe Text)
, _hpTotalVCPUs :: !(Maybe Int)
, _hpCores :: !(Maybe Int)
, _hpSockets :: !(Maybe Int)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
hostProperties
:: HostProperties
hostProperties =
HostProperties'
{ _hpInstanceType = Nothing
, _hpTotalVCPUs = Nothing
, _hpCores = Nothing
, _hpSockets = Nothing
}
hpInstanceType :: Lens' HostProperties (Maybe Text)
hpInstanceType = lens _hpInstanceType (\ s a -> s{_hpInstanceType = a});
hpTotalVCPUs :: Lens' HostProperties (Maybe Int)
hpTotalVCPUs = lens _hpTotalVCPUs (\ s a -> s{_hpTotalVCPUs = a});
hpCores :: Lens' HostProperties (Maybe Int)
hpCores = lens _hpCores (\ s a -> s{_hpCores = a});
hpSockets :: Lens' HostProperties (Maybe Int)
hpSockets = lens _hpSockets (\ s a -> s{_hpSockets = a});
instance FromXML HostProperties where
parseXML x
= HostProperties' <$>
(x .@? "instanceType") <*> (x .@? "totalVCpus") <*>
(x .@? "cores")
<*> (x .@? "sockets")
instance Hashable HostProperties
instance NFData HostProperties
data IAMInstanceProfile = IAMInstanceProfile'
{ _iapARN :: !(Maybe Text)
, _iapId :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
iamInstanceProfile
:: IAMInstanceProfile
iamInstanceProfile =
IAMInstanceProfile'
{ _iapARN = Nothing
, _iapId = Nothing
}
iapARN :: Lens' IAMInstanceProfile (Maybe Text)
iapARN = lens _iapARN (\ s a -> s{_iapARN = a});
iapId :: Lens' IAMInstanceProfile (Maybe Text)
iapId = lens _iapId (\ s a -> s{_iapId = a});
instance FromXML IAMInstanceProfile where
parseXML x
= IAMInstanceProfile' <$>
(x .@? "arn") <*> (x .@? "id")
instance Hashable IAMInstanceProfile
instance NFData IAMInstanceProfile
data IAMInstanceProfileSpecification = IAMInstanceProfileSpecification'
{ _iapsARN :: !(Maybe Text)
, _iapsName :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
iamInstanceProfileSpecification
:: IAMInstanceProfileSpecification
iamInstanceProfileSpecification =
IAMInstanceProfileSpecification'
{ _iapsARN = Nothing
, _iapsName = Nothing
}
iapsARN :: Lens' IAMInstanceProfileSpecification (Maybe Text)
iapsARN = lens _iapsARN (\ s a -> s{_iapsARN = a});
iapsName :: Lens' IAMInstanceProfileSpecification (Maybe Text)
iapsName = lens _iapsName (\ s a -> s{_iapsName = a});
instance FromXML IAMInstanceProfileSpecification
where
parseXML x
= IAMInstanceProfileSpecification' <$>
(x .@? "arn") <*> (x .@? "name")
instance Hashable IAMInstanceProfileSpecification
instance NFData IAMInstanceProfileSpecification
instance ToQuery IAMInstanceProfileSpecification
where
toQuery IAMInstanceProfileSpecification'{..}
= mconcat ["Arn" =: _iapsARN, "Name" =: _iapsName]
data ICMPTypeCode = ICMPTypeCode'
{ _itcCode :: !(Maybe Int)
, _itcType :: !(Maybe Int)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
icmpTypeCode
:: ICMPTypeCode
icmpTypeCode =
ICMPTypeCode'
{ _itcCode = Nothing
, _itcType = Nothing
}
itcCode :: Lens' ICMPTypeCode (Maybe Int)
itcCode = lens _itcCode (\ s a -> s{_itcCode = a});
itcType :: Lens' ICMPTypeCode (Maybe Int)
itcType = lens _itcType (\ s a -> s{_itcType = a});
instance FromXML ICMPTypeCode where
parseXML x
= ICMPTypeCode' <$> (x .@? "code") <*> (x .@? "type")
instance Hashable ICMPTypeCode
instance NFData ICMPTypeCode
instance ToQuery ICMPTypeCode where
toQuery ICMPTypeCode'{..}
= mconcat ["Code" =: _itcCode, "Type" =: _itcType]
data IPPermission = IPPermission'
{ _ipFromPort :: !(Maybe Int)
, _ipUserIdGroupPairs :: !(Maybe [UserIdGroupPair])
, _ipPrefixListIds :: !(Maybe [PrefixListId])
, _ipToPort :: !(Maybe Int)
, _ipIPRanges :: !(Maybe [IPRange])
, _ipIPProtocol :: !Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
ipPermission
:: Text
-> IPPermission
ipPermission pIPProtocol_ =
IPPermission'
{ _ipFromPort = Nothing
, _ipUserIdGroupPairs = Nothing
, _ipPrefixListIds = Nothing
, _ipToPort = Nothing
, _ipIPRanges = Nothing
, _ipIPProtocol = pIPProtocol_
}
ipFromPort :: Lens' IPPermission (Maybe Int)
ipFromPort = lens _ipFromPort (\ s a -> s{_ipFromPort = a});
ipUserIdGroupPairs :: Lens' IPPermission [UserIdGroupPair]
ipUserIdGroupPairs = lens _ipUserIdGroupPairs (\ s a -> s{_ipUserIdGroupPairs = a}) . _Default . _Coerce;
ipPrefixListIds :: Lens' IPPermission [PrefixListId]
ipPrefixListIds = lens _ipPrefixListIds (\ s a -> s{_ipPrefixListIds = a}) . _Default . _Coerce;
ipToPort :: Lens' IPPermission (Maybe Int)
ipToPort = lens _ipToPort (\ s a -> s{_ipToPort = a});
ipIPRanges :: Lens' IPPermission [IPRange]
ipIPRanges = lens _ipIPRanges (\ s a -> s{_ipIPRanges = a}) . _Default . _Coerce;
ipIPProtocol :: Lens' IPPermission Text
ipIPProtocol = lens _ipIPProtocol (\ s a -> s{_ipIPProtocol = a});
instance FromXML IPPermission where
parseXML x
= IPPermission' <$>
(x .@? "fromPort") <*>
(x .@? "groups" .!@ mempty >>=
may (parseXMLList "item"))
<*>
(x .@? "prefixListIds" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "toPort")
<*>
(x .@? "ipRanges" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@ "ipProtocol")
instance Hashable IPPermission
instance NFData IPPermission
instance ToQuery IPPermission where
toQuery IPPermission'{..}
= mconcat
["FromPort" =: _ipFromPort,
toQuery
(toQueryList "Groups" <$> _ipUserIdGroupPairs),
toQuery
(toQueryList "PrefixListIds" <$> _ipPrefixListIds),
"ToPort" =: _ipToPort,
toQuery (toQueryList "IpRanges" <$> _ipIPRanges),
"IpProtocol" =: _ipIPProtocol]
newtype IPRange = IPRange'
{ _irCIdRIP :: Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
ipRange
:: Text
-> IPRange
ipRange pCIdRIP_ =
IPRange'
{ _irCIdRIP = pCIdRIP_
}
irCIdRIP :: Lens' IPRange Text
irCIdRIP = lens _irCIdRIP (\ s a -> s{_irCIdRIP = a});
instance FromXML IPRange where
parseXML x = IPRange' <$> (x .@ "cidrIp")
instance Hashable IPRange
instance NFData IPRange
instance ToQuery IPRange where
toQuery IPRange'{..}
= mconcat ["CidrIp" =: _irCIdRIP]
data IdFormat = IdFormat'
{ _ifUseLongIds :: !(Maybe Bool)
, _ifDeadline :: !(Maybe ISO8601)
, _ifResource :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
idFormat
:: IdFormat
idFormat =
IdFormat'
{ _ifUseLongIds = Nothing
, _ifDeadline = Nothing
, _ifResource = Nothing
}
ifUseLongIds :: Lens' IdFormat (Maybe Bool)
ifUseLongIds = lens _ifUseLongIds (\ s a -> s{_ifUseLongIds = a});
ifDeadline :: Lens' IdFormat (Maybe UTCTime)
ifDeadline = lens _ifDeadline (\ s a -> s{_ifDeadline = a}) . mapping _Time;
ifResource :: Lens' IdFormat (Maybe Text)
ifResource = lens _ifResource (\ s a -> s{_ifResource = a});
instance FromXML IdFormat where
parseXML x
= IdFormat' <$>
(x .@? "useLongIds") <*> (x .@? "deadline") <*>
(x .@? "resource")
instance Hashable IdFormat
instance NFData IdFormat
data Image = Image'
{ _iPlatform :: !(Maybe PlatformValues)
, _iImageOwnerAlias :: !(Maybe Text)
, _iRAMDiskId :: !(Maybe Text)
, _iKernelId :: !(Maybe Text)
, _iRootDeviceName :: !(Maybe Text)
, _iSRIOVNetSupport :: !(Maybe Text)
, _iName :: !(Maybe Text)
, _iCreationDate :: !(Maybe Text)
, _iProductCodes :: !(Maybe [ProductCode])
, _iStateReason :: !(Maybe StateReason)
, _iDescription :: !(Maybe Text)
, _iBlockDeviceMappings :: !(Maybe [BlockDeviceMapping])
, _iTags :: !(Maybe [Tag])
, _iImageId :: !Text
, _iImageLocation :: !Text
, _iState :: !ImageState
, _iOwnerId :: !Text
, _iPublic :: !Bool
, _iArchitecture :: !ArchitectureValues
, _iImageType :: !ImageTypeValues
, _iRootDeviceType :: !DeviceType
, _iVirtualizationType :: !VirtualizationType
, _iHypervisor :: !HypervisorType
} deriving (Eq,Read,Show,Data,Typeable,Generic)
image
:: Text
-> Text
-> ImageState
-> Text
-> Bool
-> ArchitectureValues
-> ImageTypeValues
-> DeviceType
-> VirtualizationType
-> HypervisorType
-> Image
image pImageId_ pImageLocation_ pState_ pOwnerId_ pPublic_ pArchitecture_ pImageType_ pRootDeviceType_ pVirtualizationType_ pHypervisor_ =
Image'
{ _iPlatform = Nothing
, _iImageOwnerAlias = Nothing
, _iRAMDiskId = Nothing
, _iKernelId = Nothing
, _iRootDeviceName = Nothing
, _iSRIOVNetSupport = Nothing
, _iName = Nothing
, _iCreationDate = Nothing
, _iProductCodes = Nothing
, _iStateReason = Nothing
, _iDescription = Nothing
, _iBlockDeviceMappings = Nothing
, _iTags = Nothing
, _iImageId = pImageId_
, _iImageLocation = pImageLocation_
, _iState = pState_
, _iOwnerId = pOwnerId_
, _iPublic = pPublic_
, _iArchitecture = pArchitecture_
, _iImageType = pImageType_
, _iRootDeviceType = pRootDeviceType_
, _iVirtualizationType = pVirtualizationType_
, _iHypervisor = pHypervisor_
}
iPlatform :: Lens' Image (Maybe PlatformValues)
iPlatform = lens _iPlatform (\ s a -> s{_iPlatform = a});
iImageOwnerAlias :: Lens' Image (Maybe Text)
iImageOwnerAlias = lens _iImageOwnerAlias (\ s a -> s{_iImageOwnerAlias = a});
iRAMDiskId :: Lens' Image (Maybe Text)
iRAMDiskId = lens _iRAMDiskId (\ s a -> s{_iRAMDiskId = a});
iKernelId :: Lens' Image (Maybe Text)
iKernelId = lens _iKernelId (\ s a -> s{_iKernelId = a});
iRootDeviceName :: Lens' Image (Maybe Text)
iRootDeviceName = lens _iRootDeviceName (\ s a -> s{_iRootDeviceName = a});
iSRIOVNetSupport :: Lens' Image (Maybe Text)
iSRIOVNetSupport = lens _iSRIOVNetSupport (\ s a -> s{_iSRIOVNetSupport = a});
iName :: Lens' Image (Maybe Text)
iName = lens _iName (\ s a -> s{_iName = a});
iCreationDate :: Lens' Image (Maybe Text)
iCreationDate = lens _iCreationDate (\ s a -> s{_iCreationDate = a});
iProductCodes :: Lens' Image [ProductCode]
iProductCodes = lens _iProductCodes (\ s a -> s{_iProductCodes = a}) . _Default . _Coerce;
iStateReason :: Lens' Image (Maybe StateReason)
iStateReason = lens _iStateReason (\ s a -> s{_iStateReason = a});
iDescription :: Lens' Image (Maybe Text)
iDescription = lens _iDescription (\ s a -> s{_iDescription = a});
iBlockDeviceMappings :: Lens' Image [BlockDeviceMapping]
iBlockDeviceMappings = lens _iBlockDeviceMappings (\ s a -> s{_iBlockDeviceMappings = a}) . _Default . _Coerce;
iTags :: Lens' Image [Tag]
iTags = lens _iTags (\ s a -> s{_iTags = a}) . _Default . _Coerce;
iImageId :: Lens' Image Text
iImageId = lens _iImageId (\ s a -> s{_iImageId = a});
iImageLocation :: Lens' Image Text
iImageLocation = lens _iImageLocation (\ s a -> s{_iImageLocation = a});
iState :: Lens' Image ImageState
iState = lens _iState (\ s a -> s{_iState = a});
iOwnerId :: Lens' Image Text
iOwnerId = lens _iOwnerId (\ s a -> s{_iOwnerId = a});
iPublic :: Lens' Image Bool
iPublic = lens _iPublic (\ s a -> s{_iPublic = a});
iArchitecture :: Lens' Image ArchitectureValues
iArchitecture = lens _iArchitecture (\ s a -> s{_iArchitecture = a});
iImageType :: Lens' Image ImageTypeValues
iImageType = lens _iImageType (\ s a -> s{_iImageType = a});
iRootDeviceType :: Lens' Image DeviceType
iRootDeviceType = lens _iRootDeviceType (\ s a -> s{_iRootDeviceType = a});
iVirtualizationType :: Lens' Image VirtualizationType
iVirtualizationType = lens _iVirtualizationType (\ s a -> s{_iVirtualizationType = a});
iHypervisor :: Lens' Image HypervisorType
iHypervisor = lens _iHypervisor (\ s a -> s{_iHypervisor = a});
instance FromXML Image where
parseXML x
= Image' <$>
(x .@? "platform") <*> (x .@? "imageOwnerAlias") <*>
(x .@? "ramdiskId")
<*> (x .@? "kernelId")
<*> (x .@? "rootDeviceName")
<*> (x .@? "sriovNetSupport")
<*> (x .@? "name")
<*> (x .@? "creationDate")
<*>
(x .@? "productCodes" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "stateReason")
<*> (x .@? "description")
<*>
(x .@? "blockDeviceMapping" .!@ mempty >>=
may (parseXMLList "item"))
<*>
(x .@? "tagSet" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@ "imageId")
<*> (x .@ "imageLocation")
<*> (x .@ "imageState")
<*> (x .@ "imageOwnerId")
<*> (x .@ "isPublic")
<*> (x .@ "architecture")
<*> (x .@ "imageType")
<*> (x .@ "rootDeviceType")
<*> (x .@ "virtualizationType")
<*> (x .@ "hypervisor")
instance Hashable Image
instance NFData Image
data ImageDiskContainer = ImageDiskContainer'
{ _idcFormat :: !(Maybe Text)
, _idcURL :: !(Maybe Text)
, _idcDeviceName :: !(Maybe Text)
, _idcUserBucket :: !(Maybe UserBucket)
, _idcDescription :: !(Maybe Text)
, _idcSnapshotId :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
imageDiskContainer
:: ImageDiskContainer
imageDiskContainer =
ImageDiskContainer'
{ _idcFormat = Nothing
, _idcURL = Nothing
, _idcDeviceName = Nothing
, _idcUserBucket = Nothing
, _idcDescription = Nothing
, _idcSnapshotId = Nothing
}
idcFormat :: Lens' ImageDiskContainer (Maybe Text)
idcFormat = lens _idcFormat (\ s a -> s{_idcFormat = a});
idcURL :: Lens' ImageDiskContainer (Maybe Text)
idcURL = lens _idcURL (\ s a -> s{_idcURL = a});
idcDeviceName :: Lens' ImageDiskContainer (Maybe Text)
idcDeviceName = lens _idcDeviceName (\ s a -> s{_idcDeviceName = a});
idcUserBucket :: Lens' ImageDiskContainer (Maybe UserBucket)
idcUserBucket = lens _idcUserBucket (\ s a -> s{_idcUserBucket = a});
idcDescription :: Lens' ImageDiskContainer (Maybe Text)
idcDescription = lens _idcDescription (\ s a -> s{_idcDescription = a});
idcSnapshotId :: Lens' ImageDiskContainer (Maybe Text)
idcSnapshotId = lens _idcSnapshotId (\ s a -> s{_idcSnapshotId = a});
instance Hashable ImageDiskContainer
instance NFData ImageDiskContainer
instance ToQuery ImageDiskContainer where
toQuery ImageDiskContainer'{..}
= mconcat
["Format" =: _idcFormat, "Url" =: _idcURL,
"DeviceName" =: _idcDeviceName,
"UserBucket" =: _idcUserBucket,
"Description" =: _idcDescription,
"SnapshotId" =: _idcSnapshotId]
data ImportImageTask = ImportImageTask'
{ _iitStatus :: !(Maybe Text)
, _iitHypervisor :: !(Maybe Text)
, _iitPlatform :: !(Maybe Text)
, _iitProgress :: !(Maybe Text)
, _iitLicenseType :: !(Maybe Text)
, _iitSnapshotDetails :: !(Maybe [SnapshotDetail])
, _iitStatusMessage :: !(Maybe Text)
, _iitImageId :: !(Maybe Text)
, _iitImportTaskId :: !(Maybe Text)
, _iitArchitecture :: !(Maybe Text)
, _iitDescription :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
importImageTask
:: ImportImageTask
importImageTask =
ImportImageTask'
{ _iitStatus = Nothing
, _iitHypervisor = Nothing
, _iitPlatform = Nothing
, _iitProgress = Nothing
, _iitLicenseType = Nothing
, _iitSnapshotDetails = Nothing
, _iitStatusMessage = Nothing
, _iitImageId = Nothing
, _iitImportTaskId = Nothing
, _iitArchitecture = Nothing
, _iitDescription = Nothing
}
iitStatus :: Lens' ImportImageTask (Maybe Text)
iitStatus = lens _iitStatus (\ s a -> s{_iitStatus = a});
iitHypervisor :: Lens' ImportImageTask (Maybe Text)
iitHypervisor = lens _iitHypervisor (\ s a -> s{_iitHypervisor = a});
iitPlatform :: Lens' ImportImageTask (Maybe Text)
iitPlatform = lens _iitPlatform (\ s a -> s{_iitPlatform = a});
iitProgress :: Lens' ImportImageTask (Maybe Text)
iitProgress = lens _iitProgress (\ s a -> s{_iitProgress = a});
iitLicenseType :: Lens' ImportImageTask (Maybe Text)
iitLicenseType = lens _iitLicenseType (\ s a -> s{_iitLicenseType = a});
iitSnapshotDetails :: Lens' ImportImageTask [SnapshotDetail]
iitSnapshotDetails = lens _iitSnapshotDetails (\ s a -> s{_iitSnapshotDetails = a}) . _Default . _Coerce;
iitStatusMessage :: Lens' ImportImageTask (Maybe Text)
iitStatusMessage = lens _iitStatusMessage (\ s a -> s{_iitStatusMessage = a});
iitImageId :: Lens' ImportImageTask (Maybe Text)
iitImageId = lens _iitImageId (\ s a -> s{_iitImageId = a});
iitImportTaskId :: Lens' ImportImageTask (Maybe Text)
iitImportTaskId = lens _iitImportTaskId (\ s a -> s{_iitImportTaskId = a});
iitArchitecture :: Lens' ImportImageTask (Maybe Text)
iitArchitecture = lens _iitArchitecture (\ s a -> s{_iitArchitecture = a});
iitDescription :: Lens' ImportImageTask (Maybe Text)
iitDescription = lens _iitDescription (\ s a -> s{_iitDescription = a});
instance FromXML ImportImageTask where
parseXML x
= ImportImageTask' <$>
(x .@? "status") <*> (x .@? "hypervisor") <*>
(x .@? "platform")
<*> (x .@? "progress")
<*> (x .@? "licenseType")
<*>
(x .@? "snapshotDetailSet" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "statusMessage")
<*> (x .@? "imageId")
<*> (x .@? "importTaskId")
<*> (x .@? "architecture")
<*> (x .@? "description")
instance Hashable ImportImageTask
instance NFData ImportImageTask
data ImportInstanceLaunchSpecification = ImportInstanceLaunchSpecification'
{ _iilsAdditionalInfo :: !(Maybe Text)
, _iilsGroupNames :: !(Maybe [Text])
, _iilsSubnetId :: !(Maybe Text)
, _iilsInstanceType :: !(Maybe InstanceType)
, _iilsGroupIds :: !(Maybe [Text])
, _iilsUserData :: !(Maybe UserData)
, _iilsMonitoring :: !(Maybe Bool)
, _iilsPrivateIPAddress :: !(Maybe Text)
, _iilsInstanceInitiatedShutdownBehavior :: !(Maybe ShutdownBehavior)
, _iilsArchitecture :: !(Maybe ArchitectureValues)
, _iilsPlacement :: !(Maybe Placement)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
importInstanceLaunchSpecification
:: ImportInstanceLaunchSpecification
importInstanceLaunchSpecification =
ImportInstanceLaunchSpecification'
{ _iilsAdditionalInfo = Nothing
, _iilsGroupNames = Nothing
, _iilsSubnetId = Nothing
, _iilsInstanceType = Nothing
, _iilsGroupIds = Nothing
, _iilsUserData = Nothing
, _iilsMonitoring = Nothing
, _iilsPrivateIPAddress = Nothing
, _iilsInstanceInitiatedShutdownBehavior = Nothing
, _iilsArchitecture = Nothing
, _iilsPlacement = Nothing
}
iilsAdditionalInfo :: Lens' ImportInstanceLaunchSpecification (Maybe Text)
iilsAdditionalInfo = lens _iilsAdditionalInfo (\ s a -> s{_iilsAdditionalInfo = a});
iilsGroupNames :: Lens' ImportInstanceLaunchSpecification [Text]
iilsGroupNames = lens _iilsGroupNames (\ s a -> s{_iilsGroupNames = a}) . _Default . _Coerce;
iilsSubnetId :: Lens' ImportInstanceLaunchSpecification (Maybe Text)
iilsSubnetId = lens _iilsSubnetId (\ s a -> s{_iilsSubnetId = a});
iilsInstanceType :: Lens' ImportInstanceLaunchSpecification (Maybe InstanceType)
iilsInstanceType = lens _iilsInstanceType (\ s a -> s{_iilsInstanceType = a});
iilsGroupIds :: Lens' ImportInstanceLaunchSpecification [Text]
iilsGroupIds = lens _iilsGroupIds (\ s a -> s{_iilsGroupIds = a}) . _Default . _Coerce;
iilsUserData :: Lens' ImportInstanceLaunchSpecification (Maybe UserData)
iilsUserData = lens _iilsUserData (\ s a -> s{_iilsUserData = a});
iilsMonitoring :: Lens' ImportInstanceLaunchSpecification (Maybe Bool)
iilsMonitoring = lens _iilsMonitoring (\ s a -> s{_iilsMonitoring = a});
iilsPrivateIPAddress :: Lens' ImportInstanceLaunchSpecification (Maybe Text)
iilsPrivateIPAddress = lens _iilsPrivateIPAddress (\ s a -> s{_iilsPrivateIPAddress = a});
iilsInstanceInitiatedShutdownBehavior :: Lens' ImportInstanceLaunchSpecification (Maybe ShutdownBehavior)
iilsInstanceInitiatedShutdownBehavior = lens _iilsInstanceInitiatedShutdownBehavior (\ s a -> s{_iilsInstanceInitiatedShutdownBehavior = a});
iilsArchitecture :: Lens' ImportInstanceLaunchSpecification (Maybe ArchitectureValues)
iilsArchitecture = lens _iilsArchitecture (\ s a -> s{_iilsArchitecture = a});
iilsPlacement :: Lens' ImportInstanceLaunchSpecification (Maybe Placement)
iilsPlacement = lens _iilsPlacement (\ s a -> s{_iilsPlacement = a});
instance Hashable ImportInstanceLaunchSpecification
instance NFData ImportInstanceLaunchSpecification
instance ToQuery ImportInstanceLaunchSpecification
where
toQuery ImportInstanceLaunchSpecification'{..}
= mconcat
["AdditionalInfo" =: _iilsAdditionalInfo,
toQuery
(toQueryList "GroupName" <$> _iilsGroupNames),
"SubnetId" =: _iilsSubnetId,
"InstanceType" =: _iilsInstanceType,
toQuery (toQueryList "GroupId" <$> _iilsGroupIds),
"UserData" =: _iilsUserData,
"Monitoring" =: _iilsMonitoring,
"PrivateIpAddress" =: _iilsPrivateIPAddress,
"InstanceInitiatedShutdownBehavior" =:
_iilsInstanceInitiatedShutdownBehavior,
"Architecture" =: _iilsArchitecture,
"Placement" =: _iilsPlacement]
data ImportInstanceTaskDetails = ImportInstanceTaskDetails'
{ _iitdInstanceId :: !(Maybe Text)
, _iitdPlatform :: !(Maybe PlatformValues)
, _iitdDescription :: !(Maybe Text)
, _iitdVolumes :: ![ImportInstanceVolumeDetailItem]
} deriving (Eq,Read,Show,Data,Typeable,Generic)
importInstanceTaskDetails
:: ImportInstanceTaskDetails
importInstanceTaskDetails =
ImportInstanceTaskDetails'
{ _iitdInstanceId = Nothing
, _iitdPlatform = Nothing
, _iitdDescription = Nothing
, _iitdVolumes = mempty
}
iitdInstanceId :: Lens' ImportInstanceTaskDetails (Maybe Text)
iitdInstanceId = lens _iitdInstanceId (\ s a -> s{_iitdInstanceId = a});
iitdPlatform :: Lens' ImportInstanceTaskDetails (Maybe PlatformValues)
iitdPlatform = lens _iitdPlatform (\ s a -> s{_iitdPlatform = a});
iitdDescription :: Lens' ImportInstanceTaskDetails (Maybe Text)
iitdDescription = lens _iitdDescription (\ s a -> s{_iitdDescription = a});
iitdVolumes :: Lens' ImportInstanceTaskDetails [ImportInstanceVolumeDetailItem]
iitdVolumes = lens _iitdVolumes (\ s a -> s{_iitdVolumes = a}) . _Coerce;
instance FromXML ImportInstanceTaskDetails where
parseXML x
= ImportInstanceTaskDetails' <$>
(x .@? "instanceId") <*> (x .@? "platform") <*>
(x .@? "description")
<*>
(x .@? "volumes" .!@ mempty >>= parseXMLList "item")
instance Hashable ImportInstanceTaskDetails
instance NFData ImportInstanceTaskDetails
data ImportInstanceVolumeDetailItem = ImportInstanceVolumeDetailItem'
{ _iivdiStatusMessage :: !(Maybe Text)
, _iivdiDescription :: !(Maybe Text)
, _iivdiBytesConverted :: !Integer
, _iivdiAvailabilityZone :: !Text
, _iivdiImage :: !DiskImageDescription
, _iivdiVolume :: !DiskImageVolumeDescription
, _iivdiStatus :: !Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
importInstanceVolumeDetailItem
:: Integer
-> Text
-> DiskImageDescription
-> DiskImageVolumeDescription
-> Text
-> ImportInstanceVolumeDetailItem
importInstanceVolumeDetailItem pBytesConverted_ pAvailabilityZone_ pImage_ pVolume_ pStatus_ =
ImportInstanceVolumeDetailItem'
{ _iivdiStatusMessage = Nothing
, _iivdiDescription = Nothing
, _iivdiBytesConverted = pBytesConverted_
, _iivdiAvailabilityZone = pAvailabilityZone_
, _iivdiImage = pImage_
, _iivdiVolume = pVolume_
, _iivdiStatus = pStatus_
}
iivdiStatusMessage :: Lens' ImportInstanceVolumeDetailItem (Maybe Text)
iivdiStatusMessage = lens _iivdiStatusMessage (\ s a -> s{_iivdiStatusMessage = a});
iivdiDescription :: Lens' ImportInstanceVolumeDetailItem (Maybe Text)
iivdiDescription = lens _iivdiDescription (\ s a -> s{_iivdiDescription = a});
iivdiBytesConverted :: Lens' ImportInstanceVolumeDetailItem Integer
iivdiBytesConverted = lens _iivdiBytesConverted (\ s a -> s{_iivdiBytesConverted = a});
iivdiAvailabilityZone :: Lens' ImportInstanceVolumeDetailItem Text
iivdiAvailabilityZone = lens _iivdiAvailabilityZone (\ s a -> s{_iivdiAvailabilityZone = a});
iivdiImage :: Lens' ImportInstanceVolumeDetailItem DiskImageDescription
iivdiImage = lens _iivdiImage (\ s a -> s{_iivdiImage = a});
iivdiVolume :: Lens' ImportInstanceVolumeDetailItem DiskImageVolumeDescription
iivdiVolume = lens _iivdiVolume (\ s a -> s{_iivdiVolume = a});
iivdiStatus :: Lens' ImportInstanceVolumeDetailItem Text
iivdiStatus = lens _iivdiStatus (\ s a -> s{_iivdiStatus = a});
instance FromXML ImportInstanceVolumeDetailItem where
parseXML x
= ImportInstanceVolumeDetailItem' <$>
(x .@? "statusMessage") <*> (x .@? "description") <*>
(x .@ "bytesConverted")
<*> (x .@ "availabilityZone")
<*> (x .@ "image")
<*> (x .@ "volume")
<*> (x .@ "status")
instance Hashable ImportInstanceVolumeDetailItem
instance NFData ImportInstanceVolumeDetailItem
data ImportSnapshotTask = ImportSnapshotTask'
{ _istSnapshotTaskDetail :: !(Maybe SnapshotTaskDetail)
, _istImportTaskId :: !(Maybe Text)
, _istDescription :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
importSnapshotTask
:: ImportSnapshotTask
importSnapshotTask =
ImportSnapshotTask'
{ _istSnapshotTaskDetail = Nothing
, _istImportTaskId = Nothing
, _istDescription = Nothing
}
istSnapshotTaskDetail :: Lens' ImportSnapshotTask (Maybe SnapshotTaskDetail)
istSnapshotTaskDetail = lens _istSnapshotTaskDetail (\ s a -> s{_istSnapshotTaskDetail = a});
istImportTaskId :: Lens' ImportSnapshotTask (Maybe Text)
istImportTaskId = lens _istImportTaskId (\ s a -> s{_istImportTaskId = a});
istDescription :: Lens' ImportSnapshotTask (Maybe Text)
istDescription = lens _istDescription (\ s a -> s{_istDescription = a});
instance FromXML ImportSnapshotTask where
parseXML x
= ImportSnapshotTask' <$>
(x .@? "snapshotTaskDetail") <*>
(x .@? "importTaskId")
<*> (x .@? "description")
instance Hashable ImportSnapshotTask
instance NFData ImportSnapshotTask
data ImportVolumeTaskDetails = ImportVolumeTaskDetails'
{ _ivtdDescription :: !(Maybe Text)
, _ivtdBytesConverted :: !Integer
, _ivtdAvailabilityZone :: !Text
, _ivtdImage :: !DiskImageDescription
, _ivtdVolume :: !DiskImageVolumeDescription
} deriving (Eq,Read,Show,Data,Typeable,Generic)
importVolumeTaskDetails
:: Integer
-> Text
-> DiskImageDescription
-> DiskImageVolumeDescription
-> ImportVolumeTaskDetails
importVolumeTaskDetails pBytesConverted_ pAvailabilityZone_ pImage_ pVolume_ =
ImportVolumeTaskDetails'
{ _ivtdDescription = Nothing
, _ivtdBytesConverted = pBytesConverted_
, _ivtdAvailabilityZone = pAvailabilityZone_
, _ivtdImage = pImage_
, _ivtdVolume = pVolume_
}
ivtdDescription :: Lens' ImportVolumeTaskDetails (Maybe Text)
ivtdDescription = lens _ivtdDescription (\ s a -> s{_ivtdDescription = a});
ivtdBytesConverted :: Lens' ImportVolumeTaskDetails Integer
ivtdBytesConverted = lens _ivtdBytesConverted (\ s a -> s{_ivtdBytesConverted = a});
ivtdAvailabilityZone :: Lens' ImportVolumeTaskDetails Text
ivtdAvailabilityZone = lens _ivtdAvailabilityZone (\ s a -> s{_ivtdAvailabilityZone = a});
ivtdImage :: Lens' ImportVolumeTaskDetails DiskImageDescription
ivtdImage = lens _ivtdImage (\ s a -> s{_ivtdImage = a});
ivtdVolume :: Lens' ImportVolumeTaskDetails DiskImageVolumeDescription
ivtdVolume = lens _ivtdVolume (\ s a -> s{_ivtdVolume = a});
instance FromXML ImportVolumeTaskDetails where
parseXML x
= ImportVolumeTaskDetails' <$>
(x .@? "description") <*> (x .@ "bytesConverted") <*>
(x .@ "availabilityZone")
<*> (x .@ "image")
<*> (x .@ "volume")
instance Hashable ImportVolumeTaskDetails
instance NFData ImportVolumeTaskDetails
data Instance = Instance'
{ _insPublicDNSName :: !(Maybe Text)
, _insPlatform :: !(Maybe PlatformValues)
, _insSecurityGroups :: !(Maybe [GroupIdentifier])
, _insClientToken :: !(Maybe Text)
, _insSourceDestCheck :: !(Maybe Bool)
, _insVPCId :: !(Maybe Text)
, _insKeyName :: !(Maybe Text)
, _insNetworkInterfaces :: !(Maybe [InstanceNetworkInterface])
, _insRAMDiskId :: !(Maybe Text)
, _insSubnetId :: !(Maybe Text)
, _insKernelId :: !(Maybe Text)
, _insRootDeviceName :: !(Maybe Text)
, _insSRIOVNetSupport :: !(Maybe Text)
, _insEBSOptimized :: !(Maybe Bool)
, _insStateTransitionReason :: !(Maybe Text)
, _insInstanceLifecycle :: !(Maybe InstanceLifecycleType)
, _insIAMInstanceProfile :: !(Maybe IAMInstanceProfile)
, _insPrivateIPAddress :: !(Maybe Text)
, _insProductCodes :: !(Maybe [ProductCode])
, _insSpotInstanceRequestId :: !(Maybe Text)
, _insPrivateDNSName :: !(Maybe Text)
, _insStateReason :: !(Maybe StateReason)
, _insBlockDeviceMappings :: !(Maybe [InstanceBlockDeviceMapping])
, _insPublicIPAddress :: !(Maybe Text)
, _insTags :: !(Maybe [Tag])
, _insInstanceId :: !Text
, _insImageId :: !Text
, _insAMILaunchIndex :: !Int
, _insInstanceType :: !InstanceType
, _insLaunchTime :: !ISO8601
, _insPlacement :: !Placement
, _insMonitoring :: !Monitoring
, _insArchitecture :: !ArchitectureValues
, _insRootDeviceType :: !DeviceType
, _insVirtualizationType :: !VirtualizationType
, _insHypervisor :: !HypervisorType
, _insState :: !InstanceState
} deriving (Eq,Read,Show,Data,Typeable,Generic)
instance'
:: Text
-> Text
-> Int
-> InstanceType
-> UTCTime
-> Placement
-> Monitoring
-> ArchitectureValues
-> DeviceType
-> VirtualizationType
-> HypervisorType
-> InstanceState
-> Instance
instance' pInstanceId_ pImageId_ pAMILaunchIndex_ pInstanceType_ pLaunchTime_ pPlacement_ pMonitoring_ pArchitecture_ pRootDeviceType_ pVirtualizationType_ pHypervisor_ pState_ =
Instance'
{ _insPublicDNSName = Nothing
, _insPlatform = Nothing
, _insSecurityGroups = Nothing
, _insClientToken = Nothing
, _insSourceDestCheck = Nothing
, _insVPCId = Nothing
, _insKeyName = Nothing
, _insNetworkInterfaces = Nothing
, _insRAMDiskId = Nothing
, _insSubnetId = Nothing
, _insKernelId = Nothing
, _insRootDeviceName = Nothing
, _insSRIOVNetSupport = Nothing
, _insEBSOptimized = Nothing
, _insStateTransitionReason = Nothing
, _insInstanceLifecycle = Nothing
, _insIAMInstanceProfile = Nothing
, _insPrivateIPAddress = Nothing
, _insProductCodes = Nothing
, _insSpotInstanceRequestId = Nothing
, _insPrivateDNSName = Nothing
, _insStateReason = Nothing
, _insBlockDeviceMappings = Nothing
, _insPublicIPAddress = Nothing
, _insTags = Nothing
, _insInstanceId = pInstanceId_
, _insImageId = pImageId_
, _insAMILaunchIndex = pAMILaunchIndex_
, _insInstanceType = pInstanceType_
, _insLaunchTime = _Time # pLaunchTime_
, _insPlacement = pPlacement_
, _insMonitoring = pMonitoring_
, _insArchitecture = pArchitecture_
, _insRootDeviceType = pRootDeviceType_
, _insVirtualizationType = pVirtualizationType_
, _insHypervisor = pHypervisor_
, _insState = pState_
}
insPublicDNSName :: Lens' Instance (Maybe Text)
insPublicDNSName = lens _insPublicDNSName (\ s a -> s{_insPublicDNSName = a});
insPlatform :: Lens' Instance (Maybe PlatformValues)
insPlatform = lens _insPlatform (\ s a -> s{_insPlatform = a});
insSecurityGroups :: Lens' Instance [GroupIdentifier]
insSecurityGroups = lens _insSecurityGroups (\ s a -> s{_insSecurityGroups = a}) . _Default . _Coerce;
insClientToken :: Lens' Instance (Maybe Text)
insClientToken = lens _insClientToken (\ s a -> s{_insClientToken = a});
insSourceDestCheck :: Lens' Instance (Maybe Bool)
insSourceDestCheck = lens _insSourceDestCheck (\ s a -> s{_insSourceDestCheck = a});
insVPCId :: Lens' Instance (Maybe Text)
insVPCId = lens _insVPCId (\ s a -> s{_insVPCId = a});
insKeyName :: Lens' Instance (Maybe Text)
insKeyName = lens _insKeyName (\ s a -> s{_insKeyName = a});
insNetworkInterfaces :: Lens' Instance [InstanceNetworkInterface]
insNetworkInterfaces = lens _insNetworkInterfaces (\ s a -> s{_insNetworkInterfaces = a}) . _Default . _Coerce;
insRAMDiskId :: Lens' Instance (Maybe Text)
insRAMDiskId = lens _insRAMDiskId (\ s a -> s{_insRAMDiskId = a});
insSubnetId :: Lens' Instance (Maybe Text)
insSubnetId = lens _insSubnetId (\ s a -> s{_insSubnetId = a});
insKernelId :: Lens' Instance (Maybe Text)
insKernelId = lens _insKernelId (\ s a -> s{_insKernelId = a});
insRootDeviceName :: Lens' Instance (Maybe Text)
insRootDeviceName = lens _insRootDeviceName (\ s a -> s{_insRootDeviceName = a});
insSRIOVNetSupport :: Lens' Instance (Maybe Text)
insSRIOVNetSupport = lens _insSRIOVNetSupport (\ s a -> s{_insSRIOVNetSupport = a});
insEBSOptimized :: Lens' Instance (Maybe Bool)
insEBSOptimized = lens _insEBSOptimized (\ s a -> s{_insEBSOptimized = a});
insStateTransitionReason :: Lens' Instance (Maybe Text)
insStateTransitionReason = lens _insStateTransitionReason (\ s a -> s{_insStateTransitionReason = a});
insInstanceLifecycle :: Lens' Instance (Maybe InstanceLifecycleType)
insInstanceLifecycle = lens _insInstanceLifecycle (\ s a -> s{_insInstanceLifecycle = a});
insIAMInstanceProfile :: Lens' Instance (Maybe IAMInstanceProfile)
insIAMInstanceProfile = lens _insIAMInstanceProfile (\ s a -> s{_insIAMInstanceProfile = a});
insPrivateIPAddress :: Lens' Instance (Maybe Text)
insPrivateIPAddress = lens _insPrivateIPAddress (\ s a -> s{_insPrivateIPAddress = a});
insProductCodes :: Lens' Instance [ProductCode]
insProductCodes = lens _insProductCodes (\ s a -> s{_insProductCodes = a}) . _Default . _Coerce;
insSpotInstanceRequestId :: Lens' Instance (Maybe Text)
insSpotInstanceRequestId = lens _insSpotInstanceRequestId (\ s a -> s{_insSpotInstanceRequestId = a});
insPrivateDNSName :: Lens' Instance (Maybe Text)
insPrivateDNSName = lens _insPrivateDNSName (\ s a -> s{_insPrivateDNSName = a});
insStateReason :: Lens' Instance (Maybe StateReason)
insStateReason = lens _insStateReason (\ s a -> s{_insStateReason = a});
insBlockDeviceMappings :: Lens' Instance [InstanceBlockDeviceMapping]
insBlockDeviceMappings = lens _insBlockDeviceMappings (\ s a -> s{_insBlockDeviceMappings = a}) . _Default . _Coerce;
insPublicIPAddress :: Lens' Instance (Maybe Text)
insPublicIPAddress = lens _insPublicIPAddress (\ s a -> s{_insPublicIPAddress = a});
insTags :: Lens' Instance [Tag]
insTags = lens _insTags (\ s a -> s{_insTags = a}) . _Default . _Coerce;
insInstanceId :: Lens' Instance Text
insInstanceId = lens _insInstanceId (\ s a -> s{_insInstanceId = a});
insImageId :: Lens' Instance Text
insImageId = lens _insImageId (\ s a -> s{_insImageId = a});
insAMILaunchIndex :: Lens' Instance Int
insAMILaunchIndex = lens _insAMILaunchIndex (\ s a -> s{_insAMILaunchIndex = a});
insInstanceType :: Lens' Instance InstanceType
insInstanceType = lens _insInstanceType (\ s a -> s{_insInstanceType = a});
insLaunchTime :: Lens' Instance UTCTime
insLaunchTime = lens _insLaunchTime (\ s a -> s{_insLaunchTime = a}) . _Time;
insPlacement :: Lens' Instance Placement
insPlacement = lens _insPlacement (\ s a -> s{_insPlacement = a});
insMonitoring :: Lens' Instance Monitoring
insMonitoring = lens _insMonitoring (\ s a -> s{_insMonitoring = a});
insArchitecture :: Lens' Instance ArchitectureValues
insArchitecture = lens _insArchitecture (\ s a -> s{_insArchitecture = a});
insRootDeviceType :: Lens' Instance DeviceType
insRootDeviceType = lens _insRootDeviceType (\ s a -> s{_insRootDeviceType = a});
insVirtualizationType :: Lens' Instance VirtualizationType
insVirtualizationType = lens _insVirtualizationType (\ s a -> s{_insVirtualizationType = a});
insHypervisor :: Lens' Instance HypervisorType
insHypervisor = lens _insHypervisor (\ s a -> s{_insHypervisor = a});
insState :: Lens' Instance InstanceState
insState = lens _insState (\ s a -> s{_insState = a});
instance FromXML Instance where
parseXML x
= Instance' <$>
(x .@? "dnsName") <*> (x .@? "platform") <*>
(x .@? "groupSet" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "clientToken")
<*> (x .@? "sourceDestCheck")
<*> (x .@? "vpcId")
<*> (x .@? "keyName")
<*>
(x .@? "networkInterfaceSet" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "ramdiskId")
<*> (x .@? "subnetId")
<*> (x .@? "kernelId")
<*> (x .@? "rootDeviceName")
<*> (x .@? "sriovNetSupport")
<*> (x .@? "ebsOptimized")
<*> (x .@? "reason")
<*> (x .@? "instanceLifecycle")
<*> (x .@? "iamInstanceProfile")
<*> (x .@? "privateIpAddress")
<*>
(x .@? "productCodes" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "spotInstanceRequestId")
<*> (x .@? "privateDnsName")
<*> (x .@? "stateReason")
<*>
(x .@? "blockDeviceMapping" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "ipAddress")
<*>
(x .@? "tagSet" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@ "instanceId")
<*> (x .@ "imageId")
<*> (x .@ "amiLaunchIndex")
<*> (x .@ "instanceType")
<*> (x .@ "launchTime")
<*> (x .@ "placement")
<*> (x .@ "monitoring")
<*> (x .@ "architecture")
<*> (x .@ "rootDeviceType")
<*> (x .@ "virtualizationType")
<*> (x .@ "hypervisor")
<*> (x .@ "instanceState")
instance Hashable Instance
instance NFData Instance
data InstanceBlockDeviceMapping = InstanceBlockDeviceMapping'
{ _ibdmEBS :: !(Maybe EBSInstanceBlockDevice)
, _ibdmDeviceName :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
instanceBlockDeviceMapping
:: InstanceBlockDeviceMapping
instanceBlockDeviceMapping =
InstanceBlockDeviceMapping'
{ _ibdmEBS = Nothing
, _ibdmDeviceName = Nothing
}
ibdmEBS :: Lens' InstanceBlockDeviceMapping (Maybe EBSInstanceBlockDevice)
ibdmEBS = lens _ibdmEBS (\ s a -> s{_ibdmEBS = a});
ibdmDeviceName :: Lens' InstanceBlockDeviceMapping (Maybe Text)
ibdmDeviceName = lens _ibdmDeviceName (\ s a -> s{_ibdmDeviceName = a});
instance FromXML InstanceBlockDeviceMapping where
parseXML x
= InstanceBlockDeviceMapping' <$>
(x .@? "ebs") <*> (x .@? "deviceName")
instance Hashable InstanceBlockDeviceMapping
instance NFData InstanceBlockDeviceMapping
data InstanceBlockDeviceMappingSpecification = InstanceBlockDeviceMappingSpecification'
{ _ibdmsVirtualName :: !(Maybe Text)
, _ibdmsNoDevice :: !(Maybe Text)
, _ibdmsEBS :: !(Maybe EBSInstanceBlockDeviceSpecification)
, _ibdmsDeviceName :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
instanceBlockDeviceMappingSpecification
:: InstanceBlockDeviceMappingSpecification
instanceBlockDeviceMappingSpecification =
InstanceBlockDeviceMappingSpecification'
{ _ibdmsVirtualName = Nothing
, _ibdmsNoDevice = Nothing
, _ibdmsEBS = Nothing
, _ibdmsDeviceName = Nothing
}
ibdmsVirtualName :: Lens' InstanceBlockDeviceMappingSpecification (Maybe Text)
ibdmsVirtualName = lens _ibdmsVirtualName (\ s a -> s{_ibdmsVirtualName = a});
ibdmsNoDevice :: Lens' InstanceBlockDeviceMappingSpecification (Maybe Text)
ibdmsNoDevice = lens _ibdmsNoDevice (\ s a -> s{_ibdmsNoDevice = a});
ibdmsEBS :: Lens' InstanceBlockDeviceMappingSpecification (Maybe EBSInstanceBlockDeviceSpecification)
ibdmsEBS = lens _ibdmsEBS (\ s a -> s{_ibdmsEBS = a});
ibdmsDeviceName :: Lens' InstanceBlockDeviceMappingSpecification (Maybe Text)
ibdmsDeviceName = lens _ibdmsDeviceName (\ s a -> s{_ibdmsDeviceName = a});
instance Hashable
InstanceBlockDeviceMappingSpecification
instance NFData
InstanceBlockDeviceMappingSpecification
instance ToQuery
InstanceBlockDeviceMappingSpecification where
toQuery InstanceBlockDeviceMappingSpecification'{..}
= mconcat
["VirtualName" =: _ibdmsVirtualName,
"NoDevice" =: _ibdmsNoDevice, "Ebs" =: _ibdmsEBS,
"DeviceName" =: _ibdmsDeviceName]
data InstanceCapacity = InstanceCapacity'
{ _icAvailableCapacity :: !(Maybe Int)
, _icInstanceType :: !(Maybe Text)
, _icTotalCapacity :: !(Maybe Int)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
instanceCapacity
:: InstanceCapacity
instanceCapacity =
InstanceCapacity'
{ _icAvailableCapacity = Nothing
, _icInstanceType = Nothing
, _icTotalCapacity = Nothing
}
icAvailableCapacity :: Lens' InstanceCapacity (Maybe Int)
icAvailableCapacity = lens _icAvailableCapacity (\ s a -> s{_icAvailableCapacity = a});
icInstanceType :: Lens' InstanceCapacity (Maybe Text)
icInstanceType = lens _icInstanceType (\ s a -> s{_icInstanceType = a});
icTotalCapacity :: Lens' InstanceCapacity (Maybe Int)
icTotalCapacity = lens _icTotalCapacity (\ s a -> s{_icTotalCapacity = a});
instance FromXML InstanceCapacity where
parseXML x
= InstanceCapacity' <$>
(x .@? "availableCapacity") <*>
(x .@? "instanceType")
<*> (x .@? "totalCapacity")
instance Hashable InstanceCapacity
instance NFData InstanceCapacity
data InstanceCount = InstanceCount'
{ _icState :: !(Maybe ListingState)
, _icInstanceCount :: !(Maybe Int)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
instanceCount
:: InstanceCount
instanceCount =
InstanceCount'
{ _icState = Nothing
, _icInstanceCount = Nothing
}
icState :: Lens' InstanceCount (Maybe ListingState)
icState = lens _icState (\ s a -> s{_icState = a});
icInstanceCount :: Lens' InstanceCount (Maybe Int)
icInstanceCount = lens _icInstanceCount (\ s a -> s{_icInstanceCount = a});
instance FromXML InstanceCount where
parseXML x
= InstanceCount' <$>
(x .@? "state") <*> (x .@? "instanceCount")
instance Hashable InstanceCount
instance NFData InstanceCount
data InstanceExportDetails = InstanceExportDetails'
{ _iedTargetEnvironment :: !(Maybe ExportEnvironment)
, _iedInstanceId :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
instanceExportDetails
:: InstanceExportDetails
instanceExportDetails =
InstanceExportDetails'
{ _iedTargetEnvironment = Nothing
, _iedInstanceId = Nothing
}
iedTargetEnvironment :: Lens' InstanceExportDetails (Maybe ExportEnvironment)
iedTargetEnvironment = lens _iedTargetEnvironment (\ s a -> s{_iedTargetEnvironment = a});
iedInstanceId :: Lens' InstanceExportDetails (Maybe Text)
iedInstanceId = lens _iedInstanceId (\ s a -> s{_iedInstanceId = a});
instance FromXML InstanceExportDetails where
parseXML x
= InstanceExportDetails' <$>
(x .@? "targetEnvironment") <*> (x .@? "instanceId")
instance Hashable InstanceExportDetails
instance NFData InstanceExportDetails
data InstanceMonitoring = InstanceMonitoring'
{ _imInstanceId :: !(Maybe Text)
, _imMonitoring :: !(Maybe Monitoring)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
instanceMonitoring
:: InstanceMonitoring
instanceMonitoring =
InstanceMonitoring'
{ _imInstanceId = Nothing
, _imMonitoring = Nothing
}
imInstanceId :: Lens' InstanceMonitoring (Maybe Text)
imInstanceId = lens _imInstanceId (\ s a -> s{_imInstanceId = a});
imMonitoring :: Lens' InstanceMonitoring (Maybe Monitoring)
imMonitoring = lens _imMonitoring (\ s a -> s{_imMonitoring = a});
instance FromXML InstanceMonitoring where
parseXML x
= InstanceMonitoring' <$>
(x .@? "instanceId") <*> (x .@? "monitoring")
instance Hashable InstanceMonitoring
instance NFData InstanceMonitoring
data InstanceNetworkInterface = InstanceNetworkInterface'
{ _iniGroups :: !(Maybe [GroupIdentifier])
, _iniStatus :: !(Maybe NetworkInterfaceStatus)
, _iniPrivateIPAddresses :: !(Maybe [InstancePrivateIPAddress])
, _iniSourceDestCheck :: !(Maybe Bool)
, _iniVPCId :: !(Maybe Text)
, _iniNetworkInterfaceId :: !(Maybe Text)
, _iniSubnetId :: !(Maybe Text)
, _iniMACAddress :: !(Maybe Text)
, _iniAttachment :: !(Maybe InstanceNetworkInterfaceAttachment)
, _iniOwnerId :: !(Maybe Text)
, _iniPrivateIPAddress :: !(Maybe Text)
, _iniPrivateDNSName :: !(Maybe Text)
, _iniDescription :: !(Maybe Text)
, _iniAssociation :: !(Maybe InstanceNetworkInterfaceAssociation)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
instanceNetworkInterface
:: InstanceNetworkInterface
instanceNetworkInterface =
InstanceNetworkInterface'
{ _iniGroups = Nothing
, _iniStatus = Nothing
, _iniPrivateIPAddresses = Nothing
, _iniSourceDestCheck = Nothing
, _iniVPCId = Nothing
, _iniNetworkInterfaceId = Nothing
, _iniSubnetId = Nothing
, _iniMACAddress = Nothing
, _iniAttachment = Nothing
, _iniOwnerId = Nothing
, _iniPrivateIPAddress = Nothing
, _iniPrivateDNSName = Nothing
, _iniDescription = Nothing
, _iniAssociation = Nothing
}
iniGroups :: Lens' InstanceNetworkInterface [GroupIdentifier]
iniGroups = lens _iniGroups (\ s a -> s{_iniGroups = a}) . _Default . _Coerce;
iniStatus :: Lens' InstanceNetworkInterface (Maybe NetworkInterfaceStatus)
iniStatus = lens _iniStatus (\ s a -> s{_iniStatus = a});
iniPrivateIPAddresses :: Lens' InstanceNetworkInterface [InstancePrivateIPAddress]
iniPrivateIPAddresses = lens _iniPrivateIPAddresses (\ s a -> s{_iniPrivateIPAddresses = a}) . _Default . _Coerce;
iniSourceDestCheck :: Lens' InstanceNetworkInterface (Maybe Bool)
iniSourceDestCheck = lens _iniSourceDestCheck (\ s a -> s{_iniSourceDestCheck = a});
iniVPCId :: Lens' InstanceNetworkInterface (Maybe Text)
iniVPCId = lens _iniVPCId (\ s a -> s{_iniVPCId = a});
iniNetworkInterfaceId :: Lens' InstanceNetworkInterface (Maybe Text)
iniNetworkInterfaceId = lens _iniNetworkInterfaceId (\ s a -> s{_iniNetworkInterfaceId = a});
iniSubnetId :: Lens' InstanceNetworkInterface (Maybe Text)
iniSubnetId = lens _iniSubnetId (\ s a -> s{_iniSubnetId = a});
iniMACAddress :: Lens' InstanceNetworkInterface (Maybe Text)
iniMACAddress = lens _iniMACAddress (\ s a -> s{_iniMACAddress = a});
iniAttachment :: Lens' InstanceNetworkInterface (Maybe InstanceNetworkInterfaceAttachment)
iniAttachment = lens _iniAttachment (\ s a -> s{_iniAttachment = a});
iniOwnerId :: Lens' InstanceNetworkInterface (Maybe Text)
iniOwnerId = lens _iniOwnerId (\ s a -> s{_iniOwnerId = a});
iniPrivateIPAddress :: Lens' InstanceNetworkInterface (Maybe Text)
iniPrivateIPAddress = lens _iniPrivateIPAddress (\ s a -> s{_iniPrivateIPAddress = a});
iniPrivateDNSName :: Lens' InstanceNetworkInterface (Maybe Text)
iniPrivateDNSName = lens _iniPrivateDNSName (\ s a -> s{_iniPrivateDNSName = a});
iniDescription :: Lens' InstanceNetworkInterface (Maybe Text)
iniDescription = lens _iniDescription (\ s a -> s{_iniDescription = a});
iniAssociation :: Lens' InstanceNetworkInterface (Maybe InstanceNetworkInterfaceAssociation)
iniAssociation = lens _iniAssociation (\ s a -> s{_iniAssociation = a});
instance FromXML InstanceNetworkInterface where
parseXML x
= InstanceNetworkInterface' <$>
(x .@? "groupSet" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "status")
<*>
(x .@? "privateIpAddressesSet" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "sourceDestCheck")
<*> (x .@? "vpcId")
<*> (x .@? "networkInterfaceId")
<*> (x .@? "subnetId")
<*> (x .@? "macAddress")
<*> (x .@? "attachment")
<*> (x .@? "ownerId")
<*> (x .@? "privateIpAddress")
<*> (x .@? "privateDnsName")
<*> (x .@? "description")
<*> (x .@? "association")
instance Hashable InstanceNetworkInterface
instance NFData InstanceNetworkInterface
data InstanceNetworkInterfaceAssociation = InstanceNetworkInterfaceAssociation'
{ _iniaPublicDNSName :: !(Maybe Text)
, _iniaIPOwnerId :: !(Maybe Text)
, _iniaPublicIP :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
instanceNetworkInterfaceAssociation
:: InstanceNetworkInterfaceAssociation
instanceNetworkInterfaceAssociation =
InstanceNetworkInterfaceAssociation'
{ _iniaPublicDNSName = Nothing
, _iniaIPOwnerId = Nothing
, _iniaPublicIP = Nothing
}
iniaPublicDNSName :: Lens' InstanceNetworkInterfaceAssociation (Maybe Text)
iniaPublicDNSName = lens _iniaPublicDNSName (\ s a -> s{_iniaPublicDNSName = a});
iniaIPOwnerId :: Lens' InstanceNetworkInterfaceAssociation (Maybe Text)
iniaIPOwnerId = lens _iniaIPOwnerId (\ s a -> s{_iniaIPOwnerId = a});
iniaPublicIP :: Lens' InstanceNetworkInterfaceAssociation (Maybe Text)
iniaPublicIP = lens _iniaPublicIP (\ s a -> s{_iniaPublicIP = a});
instance FromXML InstanceNetworkInterfaceAssociation
where
parseXML x
= InstanceNetworkInterfaceAssociation' <$>
(x .@? "publicDnsName") <*> (x .@? "ipOwnerId") <*>
(x .@? "publicIp")
instance Hashable InstanceNetworkInterfaceAssociation
instance NFData InstanceNetworkInterfaceAssociation
data InstanceNetworkInterfaceAttachment = InstanceNetworkInterfaceAttachment'
{ _iniaStatus :: !(Maybe AttachmentStatus)
, _iniaDeleteOnTermination :: !(Maybe Bool)
, _iniaAttachmentId :: !(Maybe Text)
, _iniaAttachTime :: !(Maybe ISO8601)
, _iniaDeviceIndex :: !(Maybe Int)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
instanceNetworkInterfaceAttachment
:: InstanceNetworkInterfaceAttachment
instanceNetworkInterfaceAttachment =
InstanceNetworkInterfaceAttachment'
{ _iniaStatus = Nothing
, _iniaDeleteOnTermination = Nothing
, _iniaAttachmentId = Nothing
, _iniaAttachTime = Nothing
, _iniaDeviceIndex = Nothing
}
iniaStatus :: Lens' InstanceNetworkInterfaceAttachment (Maybe AttachmentStatus)
iniaStatus = lens _iniaStatus (\ s a -> s{_iniaStatus = a});
iniaDeleteOnTermination :: Lens' InstanceNetworkInterfaceAttachment (Maybe Bool)
iniaDeleteOnTermination = lens _iniaDeleteOnTermination (\ s a -> s{_iniaDeleteOnTermination = a});
iniaAttachmentId :: Lens' InstanceNetworkInterfaceAttachment (Maybe Text)
iniaAttachmentId = lens _iniaAttachmentId (\ s a -> s{_iniaAttachmentId = a});
iniaAttachTime :: Lens' InstanceNetworkInterfaceAttachment (Maybe UTCTime)
iniaAttachTime = lens _iniaAttachTime (\ s a -> s{_iniaAttachTime = a}) . mapping _Time;
iniaDeviceIndex :: Lens' InstanceNetworkInterfaceAttachment (Maybe Int)
iniaDeviceIndex = lens _iniaDeviceIndex (\ s a -> s{_iniaDeviceIndex = a});
instance FromXML InstanceNetworkInterfaceAttachment
where
parseXML x
= InstanceNetworkInterfaceAttachment' <$>
(x .@? "status") <*> (x .@? "deleteOnTermination")
<*> (x .@? "attachmentId")
<*> (x .@? "attachTime")
<*> (x .@? "deviceIndex")
instance Hashable InstanceNetworkInterfaceAttachment
instance NFData InstanceNetworkInterfaceAttachment
data InstanceNetworkInterfaceSpecification = InstanceNetworkInterfaceSpecification'
{ _inisGroups :: !(Maybe [Text])
, _inisPrivateIPAddresses :: !(Maybe [PrivateIPAddressSpecification])
, _inisDeleteOnTermination :: !(Maybe Bool)
, _inisAssociatePublicIPAddress :: !(Maybe Bool)
, _inisNetworkInterfaceId :: !(Maybe Text)
, _inisSubnetId :: !(Maybe Text)
, _inisPrivateIPAddress :: !(Maybe Text)
, _inisSecondaryPrivateIPAddressCount :: !(Maybe Int)
, _inisDescription :: !(Maybe Text)
, _inisDeviceIndex :: !(Maybe Int)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
instanceNetworkInterfaceSpecification
:: InstanceNetworkInterfaceSpecification
instanceNetworkInterfaceSpecification =
InstanceNetworkInterfaceSpecification'
{ _inisGroups = Nothing
, _inisPrivateIPAddresses = Nothing
, _inisDeleteOnTermination = Nothing
, _inisAssociatePublicIPAddress = Nothing
, _inisNetworkInterfaceId = Nothing
, _inisSubnetId = Nothing
, _inisPrivateIPAddress = Nothing
, _inisSecondaryPrivateIPAddressCount = Nothing
, _inisDescription = Nothing
, _inisDeviceIndex = Nothing
}
inisGroups :: Lens' InstanceNetworkInterfaceSpecification [Text]
inisGroups = lens _inisGroups (\ s a -> s{_inisGroups = a}) . _Default . _Coerce;
inisPrivateIPAddresses :: Lens' InstanceNetworkInterfaceSpecification [PrivateIPAddressSpecification]
inisPrivateIPAddresses = lens _inisPrivateIPAddresses (\ s a -> s{_inisPrivateIPAddresses = a}) . _Default . _Coerce;
inisDeleteOnTermination :: Lens' InstanceNetworkInterfaceSpecification (Maybe Bool)
inisDeleteOnTermination = lens _inisDeleteOnTermination (\ s a -> s{_inisDeleteOnTermination = a});
inisAssociatePublicIPAddress :: Lens' InstanceNetworkInterfaceSpecification (Maybe Bool)
inisAssociatePublicIPAddress = lens _inisAssociatePublicIPAddress (\ s a -> s{_inisAssociatePublicIPAddress = a});
inisNetworkInterfaceId :: Lens' InstanceNetworkInterfaceSpecification (Maybe Text)
inisNetworkInterfaceId = lens _inisNetworkInterfaceId (\ s a -> s{_inisNetworkInterfaceId = a});
inisSubnetId :: Lens' InstanceNetworkInterfaceSpecification (Maybe Text)
inisSubnetId = lens _inisSubnetId (\ s a -> s{_inisSubnetId = a});
inisPrivateIPAddress :: Lens' InstanceNetworkInterfaceSpecification (Maybe Text)
inisPrivateIPAddress = lens _inisPrivateIPAddress (\ s a -> s{_inisPrivateIPAddress = a});
inisSecondaryPrivateIPAddressCount :: Lens' InstanceNetworkInterfaceSpecification (Maybe Int)
inisSecondaryPrivateIPAddressCount = lens _inisSecondaryPrivateIPAddressCount (\ s a -> s{_inisSecondaryPrivateIPAddressCount = a});
inisDescription :: Lens' InstanceNetworkInterfaceSpecification (Maybe Text)
inisDescription = lens _inisDescription (\ s a -> s{_inisDescription = a});
inisDeviceIndex :: Lens' InstanceNetworkInterfaceSpecification (Maybe Int)
inisDeviceIndex = lens _inisDeviceIndex (\ s a -> s{_inisDeviceIndex = a});
instance FromXML
InstanceNetworkInterfaceSpecification where
parseXML x
= InstanceNetworkInterfaceSpecification' <$>
(x .@? "SecurityGroupId" .!@ mempty >>=
may (parseXMLList "SecurityGroupId"))
<*>
(x .@? "privateIpAddressesSet" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "deleteOnTermination")
<*> (x .@? "associatePublicIpAddress")
<*> (x .@? "networkInterfaceId")
<*> (x .@? "subnetId")
<*> (x .@? "privateIpAddress")
<*> (x .@? "secondaryPrivateIpAddressCount")
<*> (x .@? "description")
<*> (x .@? "deviceIndex")
instance Hashable
InstanceNetworkInterfaceSpecification
instance NFData InstanceNetworkInterfaceSpecification
instance ToQuery
InstanceNetworkInterfaceSpecification where
toQuery InstanceNetworkInterfaceSpecification'{..}
= mconcat
[toQuery
(toQueryList "SecurityGroupId" <$> _inisGroups),
toQuery
(toQueryList "PrivateIpAddresses" <$>
_inisPrivateIPAddresses),
"DeleteOnTermination" =: _inisDeleteOnTermination,
"AssociatePublicIpAddress" =:
_inisAssociatePublicIPAddress,
"NetworkInterfaceId" =: _inisNetworkInterfaceId,
"SubnetId" =: _inisSubnetId,
"PrivateIpAddress" =: _inisPrivateIPAddress,
"SecondaryPrivateIpAddressCount" =:
_inisSecondaryPrivateIPAddressCount,
"Description" =: _inisDescription,
"DeviceIndex" =: _inisDeviceIndex]
data InstancePrivateIPAddress = InstancePrivateIPAddress'
{ _ipiaPrimary :: !(Maybe Bool)
, _ipiaPrivateIPAddress :: !(Maybe Text)
, _ipiaPrivateDNSName :: !(Maybe Text)
, _ipiaAssociation :: !(Maybe InstanceNetworkInterfaceAssociation)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
instancePrivateIPAddress
:: InstancePrivateIPAddress
instancePrivateIPAddress =
InstancePrivateIPAddress'
{ _ipiaPrimary = Nothing
, _ipiaPrivateIPAddress = Nothing
, _ipiaPrivateDNSName = Nothing
, _ipiaAssociation = Nothing
}
ipiaPrimary :: Lens' InstancePrivateIPAddress (Maybe Bool)
ipiaPrimary = lens _ipiaPrimary (\ s a -> s{_ipiaPrimary = a});
ipiaPrivateIPAddress :: Lens' InstancePrivateIPAddress (Maybe Text)
ipiaPrivateIPAddress = lens _ipiaPrivateIPAddress (\ s a -> s{_ipiaPrivateIPAddress = a});
ipiaPrivateDNSName :: Lens' InstancePrivateIPAddress (Maybe Text)
ipiaPrivateDNSName = lens _ipiaPrivateDNSName (\ s a -> s{_ipiaPrivateDNSName = a});
ipiaAssociation :: Lens' InstancePrivateIPAddress (Maybe InstanceNetworkInterfaceAssociation)
ipiaAssociation = lens _ipiaAssociation (\ s a -> s{_ipiaAssociation = a});
instance FromXML InstancePrivateIPAddress where
parseXML x
= InstancePrivateIPAddress' <$>
(x .@? "primary") <*> (x .@? "privateIpAddress") <*>
(x .@? "privateDnsName")
<*> (x .@? "association")
instance Hashable InstancePrivateIPAddress
instance NFData InstancePrivateIPAddress
data InstanceState = InstanceState'
{ _isName :: !InstanceStateName
, _isCode :: !Int
} deriving (Eq,Read,Show,Data,Typeable,Generic)
instanceState
:: InstanceStateName
-> Int
-> InstanceState
instanceState pName_ pCode_ =
InstanceState'
{ _isName = pName_
, _isCode = pCode_
}
isName :: Lens' InstanceState InstanceStateName
isName = lens _isName (\ s a -> s{_isName = a});
isCode :: Lens' InstanceState Int
isCode = lens _isCode (\ s a -> s{_isCode = a});
instance FromXML InstanceState where
parseXML x
= InstanceState' <$> (x .@ "name") <*> (x .@ "code")
instance Hashable InstanceState
instance NFData InstanceState
data InstanceStateChange = InstanceStateChange'
{ _iscInstanceId :: !(Maybe Text)
, _iscCurrentState :: !(Maybe InstanceState)
, _iscPreviousState :: !(Maybe InstanceState)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
instanceStateChange
:: InstanceStateChange
instanceStateChange =
InstanceStateChange'
{ _iscInstanceId = Nothing
, _iscCurrentState = Nothing
, _iscPreviousState = Nothing
}
iscInstanceId :: Lens' InstanceStateChange (Maybe Text)
iscInstanceId = lens _iscInstanceId (\ s a -> s{_iscInstanceId = a});
iscCurrentState :: Lens' InstanceStateChange (Maybe InstanceState)
iscCurrentState = lens _iscCurrentState (\ s a -> s{_iscCurrentState = a});
iscPreviousState :: Lens' InstanceStateChange (Maybe InstanceState)
iscPreviousState = lens _iscPreviousState (\ s a -> s{_iscPreviousState = a});
instance FromXML InstanceStateChange where
parseXML x
= InstanceStateChange' <$>
(x .@? "instanceId") <*> (x .@? "currentState") <*>
(x .@? "previousState")
instance Hashable InstanceStateChange
instance NFData InstanceStateChange
data InstanceStatus = InstanceStatus'
{ _isInstanceId :: !(Maybe Text)
, _isSystemStatus :: !(Maybe InstanceStatusSummary)
, _isEvents :: !(Maybe [InstanceStatusEvent])
, _isAvailabilityZone :: !(Maybe Text)
, _isInstanceStatus :: !(Maybe InstanceStatusSummary)
, _isInstanceState :: !(Maybe InstanceState)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
instanceStatus
:: InstanceStatus
instanceStatus =
InstanceStatus'
{ _isInstanceId = Nothing
, _isSystemStatus = Nothing
, _isEvents = Nothing
, _isAvailabilityZone = Nothing
, _isInstanceStatus = Nothing
, _isInstanceState = Nothing
}
isInstanceId :: Lens' InstanceStatus (Maybe Text)
isInstanceId = lens _isInstanceId (\ s a -> s{_isInstanceId = a});
isSystemStatus :: Lens' InstanceStatus (Maybe InstanceStatusSummary)
isSystemStatus = lens _isSystemStatus (\ s a -> s{_isSystemStatus = a});
isEvents :: Lens' InstanceStatus [InstanceStatusEvent]
isEvents = lens _isEvents (\ s a -> s{_isEvents = a}) . _Default . _Coerce;
isAvailabilityZone :: Lens' InstanceStatus (Maybe Text)
isAvailabilityZone = lens _isAvailabilityZone (\ s a -> s{_isAvailabilityZone = a});
isInstanceStatus :: Lens' InstanceStatus (Maybe InstanceStatusSummary)
isInstanceStatus = lens _isInstanceStatus (\ s a -> s{_isInstanceStatus = a});
isInstanceState :: Lens' InstanceStatus (Maybe InstanceState)
isInstanceState = lens _isInstanceState (\ s a -> s{_isInstanceState = a});
instance FromXML InstanceStatus where
parseXML x
= InstanceStatus' <$>
(x .@? "instanceId") <*> (x .@? "systemStatus") <*>
(x .@? "eventsSet" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "availabilityZone")
<*> (x .@? "instanceStatus")
<*> (x .@? "instanceState")
instance Hashable InstanceStatus
instance NFData InstanceStatus
data InstanceStatusDetails = InstanceStatusDetails'
{ _isdStatus :: !(Maybe StatusType)
, _isdImpairedSince :: !(Maybe ISO8601)
, _isdName :: !(Maybe StatusName)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
instanceStatusDetails
:: InstanceStatusDetails
instanceStatusDetails =
InstanceStatusDetails'
{ _isdStatus = Nothing
, _isdImpairedSince = Nothing
, _isdName = Nothing
}
isdStatus :: Lens' InstanceStatusDetails (Maybe StatusType)
isdStatus = lens _isdStatus (\ s a -> s{_isdStatus = a});
isdImpairedSince :: Lens' InstanceStatusDetails (Maybe UTCTime)
isdImpairedSince = lens _isdImpairedSince (\ s a -> s{_isdImpairedSince = a}) . mapping _Time;
isdName :: Lens' InstanceStatusDetails (Maybe StatusName)
isdName = lens _isdName (\ s a -> s{_isdName = a});
instance FromXML InstanceStatusDetails where
parseXML x
= InstanceStatusDetails' <$>
(x .@? "status") <*> (x .@? "impairedSince") <*>
(x .@? "name")
instance Hashable InstanceStatusDetails
instance NFData InstanceStatusDetails
data InstanceStatusEvent = InstanceStatusEvent'
{ _iseNotBefore :: !(Maybe ISO8601)
, _iseCode :: !(Maybe EventCode)
, _iseDescription :: !(Maybe Text)
, _iseNotAfter :: !(Maybe ISO8601)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
instanceStatusEvent
:: InstanceStatusEvent
instanceStatusEvent =
InstanceStatusEvent'
{ _iseNotBefore = Nothing
, _iseCode = Nothing
, _iseDescription = Nothing
, _iseNotAfter = Nothing
}
iseNotBefore :: Lens' InstanceStatusEvent (Maybe UTCTime)
iseNotBefore = lens _iseNotBefore (\ s a -> s{_iseNotBefore = a}) . mapping _Time;
iseCode :: Lens' InstanceStatusEvent (Maybe EventCode)
iseCode = lens _iseCode (\ s a -> s{_iseCode = a});
iseDescription :: Lens' InstanceStatusEvent (Maybe Text)
iseDescription = lens _iseDescription (\ s a -> s{_iseDescription = a});
iseNotAfter :: Lens' InstanceStatusEvent (Maybe UTCTime)
iseNotAfter = lens _iseNotAfter (\ s a -> s{_iseNotAfter = a}) . mapping _Time;
instance FromXML InstanceStatusEvent where
parseXML x
= InstanceStatusEvent' <$>
(x .@? "notBefore") <*> (x .@? "code") <*>
(x .@? "description")
<*> (x .@? "notAfter")
instance Hashable InstanceStatusEvent
instance NFData InstanceStatusEvent
data InstanceStatusSummary = InstanceStatusSummary'
{ _issDetails :: !(Maybe [InstanceStatusDetails])
, _issStatus :: !SummaryStatus
} deriving (Eq,Read,Show,Data,Typeable,Generic)
instanceStatusSummary
:: SummaryStatus
-> InstanceStatusSummary
instanceStatusSummary pStatus_ =
InstanceStatusSummary'
{ _issDetails = Nothing
, _issStatus = pStatus_
}
issDetails :: Lens' InstanceStatusSummary [InstanceStatusDetails]
issDetails = lens _issDetails (\ s a -> s{_issDetails = a}) . _Default . _Coerce;
issStatus :: Lens' InstanceStatusSummary SummaryStatus
issStatus = lens _issStatus (\ s a -> s{_issStatus = a});
instance FromXML InstanceStatusSummary where
parseXML x
= InstanceStatusSummary' <$>
(x .@? "details" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@ "status")
instance Hashable InstanceStatusSummary
instance NFData InstanceStatusSummary
data InternetGateway = InternetGateway'
{ _igAttachments :: !(Maybe [InternetGatewayAttachment])
, _igTags :: !(Maybe [Tag])
, _igInternetGatewayId :: !Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
internetGateway
:: Text
-> InternetGateway
internetGateway pInternetGatewayId_ =
InternetGateway'
{ _igAttachments = Nothing
, _igTags = Nothing
, _igInternetGatewayId = pInternetGatewayId_
}
igAttachments :: Lens' InternetGateway [InternetGatewayAttachment]
igAttachments = lens _igAttachments (\ s a -> s{_igAttachments = a}) . _Default . _Coerce;
igTags :: Lens' InternetGateway [Tag]
igTags = lens _igTags (\ s a -> s{_igTags = a}) . _Default . _Coerce;
igInternetGatewayId :: Lens' InternetGateway Text
igInternetGatewayId = lens _igInternetGatewayId (\ s a -> s{_igInternetGatewayId = a});
instance FromXML InternetGateway where
parseXML x
= InternetGateway' <$>
(x .@? "attachmentSet" .!@ mempty >>=
may (parseXMLList "item"))
<*>
(x .@? "tagSet" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@ "internetGatewayId")
instance Hashable InternetGateway
instance NFData InternetGateway
data InternetGatewayAttachment = InternetGatewayAttachment'
{ _igaState :: !AttachmentStatus
, _igaVPCId :: !Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
internetGatewayAttachment
:: AttachmentStatus
-> Text
-> InternetGatewayAttachment
internetGatewayAttachment pState_ pVPCId_ =
InternetGatewayAttachment'
{ _igaState = pState_
, _igaVPCId = pVPCId_
}
igaState :: Lens' InternetGatewayAttachment AttachmentStatus
igaState = lens _igaState (\ s a -> s{_igaState = a});
igaVPCId :: Lens' InternetGatewayAttachment Text
igaVPCId = lens _igaVPCId (\ s a -> s{_igaVPCId = a});
instance FromXML InternetGatewayAttachment where
parseXML x
= InternetGatewayAttachment' <$>
(x .@ "state") <*> (x .@ "vpcId")
instance Hashable InternetGatewayAttachment
instance NFData InternetGatewayAttachment
data KeyPairInfo = KeyPairInfo'
{ _kpiKeyFingerprint :: !(Maybe Text)
, _kpiKeyName :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
keyPairInfo
:: KeyPairInfo
keyPairInfo =
KeyPairInfo'
{ _kpiKeyFingerprint = Nothing
, _kpiKeyName = Nothing
}
kpiKeyFingerprint :: Lens' KeyPairInfo (Maybe Text)
kpiKeyFingerprint = lens _kpiKeyFingerprint (\ s a -> s{_kpiKeyFingerprint = a});
kpiKeyName :: Lens' KeyPairInfo (Maybe Text)
kpiKeyName = lens _kpiKeyName (\ s a -> s{_kpiKeyName = a});
instance FromXML KeyPairInfo where
parseXML x
= KeyPairInfo' <$>
(x .@? "keyFingerprint") <*> (x .@? "keyName")
instance Hashable KeyPairInfo
instance NFData KeyPairInfo
data LaunchPermission = LaunchPermission'
{ _lpGroup :: !(Maybe PermissionGroup)
, _lpUserId :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
launchPermission
:: LaunchPermission
launchPermission =
LaunchPermission'
{ _lpGroup = Nothing
, _lpUserId = Nothing
}
lpGroup :: Lens' LaunchPermission (Maybe PermissionGroup)
lpGroup = lens _lpGroup (\ s a -> s{_lpGroup = a});
lpUserId :: Lens' LaunchPermission (Maybe Text)
lpUserId = lens _lpUserId (\ s a -> s{_lpUserId = a});
instance FromXML LaunchPermission where
parseXML x
= LaunchPermission' <$>
(x .@? "group") <*> (x .@? "userId")
instance Hashable LaunchPermission
instance NFData LaunchPermission
instance ToQuery LaunchPermission where
toQuery LaunchPermission'{..}
= mconcat
["Group" =: _lpGroup, "UserId" =: _lpUserId]
data LaunchPermissionModifications = LaunchPermissionModifications'
{ _lpmRemove :: !(Maybe [LaunchPermission])
, _lpmAdd :: !(Maybe [LaunchPermission])
} deriving (Eq,Read,Show,Data,Typeable,Generic)
launchPermissionModifications
:: LaunchPermissionModifications
launchPermissionModifications =
LaunchPermissionModifications'
{ _lpmRemove = Nothing
, _lpmAdd = Nothing
}
lpmRemove :: Lens' LaunchPermissionModifications [LaunchPermission]
lpmRemove = lens _lpmRemove (\ s a -> s{_lpmRemove = a}) . _Default . _Coerce;
lpmAdd :: Lens' LaunchPermissionModifications [LaunchPermission]
lpmAdd = lens _lpmAdd (\ s a -> s{_lpmAdd = a}) . _Default . _Coerce;
instance Hashable LaunchPermissionModifications
instance NFData LaunchPermissionModifications
instance ToQuery LaunchPermissionModifications where
toQuery LaunchPermissionModifications'{..}
= mconcat
[toQuery (toQueryList "Remove" <$> _lpmRemove),
toQuery (toQueryList "Add" <$> _lpmAdd)]
data LaunchSpecification = LaunchSpecification'
{ _lsSecurityGroups :: !(Maybe [GroupIdentifier])
, _lsKeyName :: !(Maybe Text)
, _lsNetworkInterfaces :: !(Maybe [InstanceNetworkInterfaceSpecification])
, _lsRAMDiskId :: !(Maybe Text)
, _lsSubnetId :: !(Maybe Text)
, _lsKernelId :: !(Maybe Text)
, _lsInstanceType :: !(Maybe InstanceType)
, _lsEBSOptimized :: !(Maybe Bool)
, _lsUserData :: !(Maybe Text)
, _lsMonitoring :: !(Maybe RunInstancesMonitoringEnabled)
, _lsIAMInstanceProfile :: !(Maybe IAMInstanceProfileSpecification)
, _lsImageId :: !(Maybe Text)
, _lsAddressingType :: !(Maybe Text)
, _lsBlockDeviceMappings :: !(Maybe [BlockDeviceMapping])
, _lsPlacement :: !(Maybe SpotPlacement)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
launchSpecification
:: LaunchSpecification
launchSpecification =
LaunchSpecification'
{ _lsSecurityGroups = Nothing
, _lsKeyName = Nothing
, _lsNetworkInterfaces = Nothing
, _lsRAMDiskId = Nothing
, _lsSubnetId = Nothing
, _lsKernelId = Nothing
, _lsInstanceType = Nothing
, _lsEBSOptimized = Nothing
, _lsUserData = Nothing
, _lsMonitoring = Nothing
, _lsIAMInstanceProfile = Nothing
, _lsImageId = Nothing
, _lsAddressingType = Nothing
, _lsBlockDeviceMappings = Nothing
, _lsPlacement = Nothing
}
lsSecurityGroups :: Lens' LaunchSpecification [GroupIdentifier]
lsSecurityGroups = lens _lsSecurityGroups (\ s a -> s{_lsSecurityGroups = a}) . _Default . _Coerce;
lsKeyName :: Lens' LaunchSpecification (Maybe Text)
lsKeyName = lens _lsKeyName (\ s a -> s{_lsKeyName = a});
lsNetworkInterfaces :: Lens' LaunchSpecification [InstanceNetworkInterfaceSpecification]
lsNetworkInterfaces = lens _lsNetworkInterfaces (\ s a -> s{_lsNetworkInterfaces = a}) . _Default . _Coerce;
lsRAMDiskId :: Lens' LaunchSpecification (Maybe Text)
lsRAMDiskId = lens _lsRAMDiskId (\ s a -> s{_lsRAMDiskId = a});
lsSubnetId :: Lens' LaunchSpecification (Maybe Text)
lsSubnetId = lens _lsSubnetId (\ s a -> s{_lsSubnetId = a});
lsKernelId :: Lens' LaunchSpecification (Maybe Text)
lsKernelId = lens _lsKernelId (\ s a -> s{_lsKernelId = a});
lsInstanceType :: Lens' LaunchSpecification (Maybe InstanceType)
lsInstanceType = lens _lsInstanceType (\ s a -> s{_lsInstanceType = a});
lsEBSOptimized :: Lens' LaunchSpecification (Maybe Bool)
lsEBSOptimized = lens _lsEBSOptimized (\ s a -> s{_lsEBSOptimized = a});
lsUserData :: Lens' LaunchSpecification (Maybe Text)
lsUserData = lens _lsUserData (\ s a -> s{_lsUserData = a});
lsMonitoring :: Lens' LaunchSpecification (Maybe RunInstancesMonitoringEnabled)
lsMonitoring = lens _lsMonitoring (\ s a -> s{_lsMonitoring = a});
lsIAMInstanceProfile :: Lens' LaunchSpecification (Maybe IAMInstanceProfileSpecification)
lsIAMInstanceProfile = lens _lsIAMInstanceProfile (\ s a -> s{_lsIAMInstanceProfile = a});
lsImageId :: Lens' LaunchSpecification (Maybe Text)
lsImageId = lens _lsImageId (\ s a -> s{_lsImageId = a});
lsAddressingType :: Lens' LaunchSpecification (Maybe Text)
lsAddressingType = lens _lsAddressingType (\ s a -> s{_lsAddressingType = a});
lsBlockDeviceMappings :: Lens' LaunchSpecification [BlockDeviceMapping]
lsBlockDeviceMappings = lens _lsBlockDeviceMappings (\ s a -> s{_lsBlockDeviceMappings = a}) . _Default . _Coerce;
lsPlacement :: Lens' LaunchSpecification (Maybe SpotPlacement)
lsPlacement = lens _lsPlacement (\ s a -> s{_lsPlacement = a});
instance FromXML LaunchSpecification where
parseXML x
= LaunchSpecification' <$>
(x .@? "groupSet" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "keyName")
<*>
(x .@? "networkInterfaceSet" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "ramdiskId")
<*> (x .@? "subnetId")
<*> (x .@? "kernelId")
<*> (x .@? "instanceType")
<*> (x .@? "ebsOptimized")
<*> (x .@? "userData")
<*> (x .@? "monitoring")
<*> (x .@? "iamInstanceProfile")
<*> (x .@? "imageId")
<*> (x .@? "addressingType")
<*>
(x .@? "blockDeviceMapping" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "placement")
instance Hashable LaunchSpecification
instance NFData LaunchSpecification
newtype Monitoring = Monitoring'
{ _mState :: Maybe MonitoringState
} deriving (Eq,Read,Show,Data,Typeable,Generic)
monitoring
:: Monitoring
monitoring =
Monitoring'
{ _mState = Nothing
}
mState :: Lens' Monitoring (Maybe MonitoringState)
mState = lens _mState (\ s a -> s{_mState = a});
instance FromXML Monitoring where
parseXML x = Monitoring' <$> (x .@? "state")
instance Hashable Monitoring
instance NFData Monitoring
data MovingAddressStatus = MovingAddressStatus'
{ _masMoveStatus :: !(Maybe MoveStatus)
, _masPublicIP :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
movingAddressStatus
:: MovingAddressStatus
movingAddressStatus =
MovingAddressStatus'
{ _masMoveStatus = Nothing
, _masPublicIP = Nothing
}
masMoveStatus :: Lens' MovingAddressStatus (Maybe MoveStatus)
masMoveStatus = lens _masMoveStatus (\ s a -> s{_masMoveStatus = a});
masPublicIP :: Lens' MovingAddressStatus (Maybe Text)
masPublicIP = lens _masPublicIP (\ s a -> s{_masPublicIP = a});
instance FromXML MovingAddressStatus where
parseXML x
= MovingAddressStatus' <$>
(x .@? "moveStatus") <*> (x .@? "publicIp")
instance Hashable MovingAddressStatus
instance NFData MovingAddressStatus
data NatGateway = NatGateway'
{ _ngState :: !(Maybe NatGatewayState)
, _ngFailureCode :: !(Maybe Text)
, _ngVPCId :: !(Maybe Text)
, _ngFailureMessage :: !(Maybe Text)
, _ngNatGatewayId :: !(Maybe Text)
, _ngSubnetId :: !(Maybe Text)
, _ngDeleteTime :: !(Maybe ISO8601)
, _ngNatGatewayAddresses :: !(Maybe [NatGatewayAddress])
, _ngCreateTime :: !(Maybe ISO8601)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
natGateway
:: NatGateway
natGateway =
NatGateway'
{ _ngState = Nothing
, _ngFailureCode = Nothing
, _ngVPCId = Nothing
, _ngFailureMessage = Nothing
, _ngNatGatewayId = Nothing
, _ngSubnetId = Nothing
, _ngDeleteTime = Nothing
, _ngNatGatewayAddresses = Nothing
, _ngCreateTime = Nothing
}
ngState :: Lens' NatGateway (Maybe NatGatewayState)
ngState = lens _ngState (\ s a -> s{_ngState = a});
ngFailureCode :: Lens' NatGateway (Maybe Text)
ngFailureCode = lens _ngFailureCode (\ s a -> s{_ngFailureCode = a});
ngVPCId :: Lens' NatGateway (Maybe Text)
ngVPCId = lens _ngVPCId (\ s a -> s{_ngVPCId = a});
ngFailureMessage :: Lens' NatGateway (Maybe Text)
ngFailureMessage = lens _ngFailureMessage (\ s a -> s{_ngFailureMessage = a});
ngNatGatewayId :: Lens' NatGateway (Maybe Text)
ngNatGatewayId = lens _ngNatGatewayId (\ s a -> s{_ngNatGatewayId = a});
ngSubnetId :: Lens' NatGateway (Maybe Text)
ngSubnetId = lens _ngSubnetId (\ s a -> s{_ngSubnetId = a});
ngDeleteTime :: Lens' NatGateway (Maybe UTCTime)
ngDeleteTime = lens _ngDeleteTime (\ s a -> s{_ngDeleteTime = a}) . mapping _Time;
ngNatGatewayAddresses :: Lens' NatGateway [NatGatewayAddress]
ngNatGatewayAddresses = lens _ngNatGatewayAddresses (\ s a -> s{_ngNatGatewayAddresses = a}) . _Default . _Coerce;
ngCreateTime :: Lens' NatGateway (Maybe UTCTime)
ngCreateTime = lens _ngCreateTime (\ s a -> s{_ngCreateTime = a}) . mapping _Time;
instance FromXML NatGateway where
parseXML x
= NatGateway' <$>
(x .@? "state") <*> (x .@? "failureCode") <*>
(x .@? "vpcId")
<*> (x .@? "failureMessage")
<*> (x .@? "natGatewayId")
<*> (x .@? "subnetId")
<*> (x .@? "deleteTime")
<*>
(x .@? "natGatewayAddressSet" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "createTime")
instance Hashable NatGateway
instance NFData NatGateway
data NatGatewayAddress = NatGatewayAddress'
{ _ngaPrivateIP :: !(Maybe Text)
, _ngaAllocationId :: !(Maybe Text)
, _ngaNetworkInterfaceId :: !(Maybe Text)
, _ngaPublicIP :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
natGatewayAddress
:: NatGatewayAddress
natGatewayAddress =
NatGatewayAddress'
{ _ngaPrivateIP = Nothing
, _ngaAllocationId = Nothing
, _ngaNetworkInterfaceId = Nothing
, _ngaPublicIP = Nothing
}
ngaPrivateIP :: Lens' NatGatewayAddress (Maybe Text)
ngaPrivateIP = lens _ngaPrivateIP (\ s a -> s{_ngaPrivateIP = a});
ngaAllocationId :: Lens' NatGatewayAddress (Maybe Text)
ngaAllocationId = lens _ngaAllocationId (\ s a -> s{_ngaAllocationId = a});
ngaNetworkInterfaceId :: Lens' NatGatewayAddress (Maybe Text)
ngaNetworkInterfaceId = lens _ngaNetworkInterfaceId (\ s a -> s{_ngaNetworkInterfaceId = a});
ngaPublicIP :: Lens' NatGatewayAddress (Maybe Text)
ngaPublicIP = lens _ngaPublicIP (\ s a -> s{_ngaPublicIP = a});
instance FromXML NatGatewayAddress where
parseXML x
= NatGatewayAddress' <$>
(x .@? "privateIp") <*> (x .@? "allocationId") <*>
(x .@? "networkInterfaceId")
<*> (x .@? "publicIp")
instance Hashable NatGatewayAddress
instance NFData NatGatewayAddress
data NetworkACL = NetworkACL'
{ _naEntries :: !(Maybe [NetworkACLEntry])
, _naNetworkACLId :: !(Maybe Text)
, _naVPCId :: !(Maybe Text)
, _naAssociations :: !(Maybe [NetworkACLAssociation])
, _naTags :: !(Maybe [Tag])
, _naIsDefault :: !(Maybe Bool)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
networkACL
:: NetworkACL
networkACL =
NetworkACL'
{ _naEntries = Nothing
, _naNetworkACLId = Nothing
, _naVPCId = Nothing
, _naAssociations = Nothing
, _naTags = Nothing
, _naIsDefault = Nothing
}
naEntries :: Lens' NetworkACL [NetworkACLEntry]
naEntries = lens _naEntries (\ s a -> s{_naEntries = a}) . _Default . _Coerce;
naNetworkACLId :: Lens' NetworkACL (Maybe Text)
naNetworkACLId = lens _naNetworkACLId (\ s a -> s{_naNetworkACLId = a});
naVPCId :: Lens' NetworkACL (Maybe Text)
naVPCId = lens _naVPCId (\ s a -> s{_naVPCId = a});
naAssociations :: Lens' NetworkACL [NetworkACLAssociation]
naAssociations = lens _naAssociations (\ s a -> s{_naAssociations = a}) . _Default . _Coerce;
naTags :: Lens' NetworkACL [Tag]
naTags = lens _naTags (\ s a -> s{_naTags = a}) . _Default . _Coerce;
naIsDefault :: Lens' NetworkACL (Maybe Bool)
naIsDefault = lens _naIsDefault (\ s a -> s{_naIsDefault = a});
instance FromXML NetworkACL where
parseXML x
= NetworkACL' <$>
(x .@? "entrySet" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "networkAclId")
<*> (x .@? "vpcId")
<*>
(x .@? "associationSet" .!@ mempty >>=
may (parseXMLList "item"))
<*>
(x .@? "tagSet" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "default")
instance Hashable NetworkACL
instance NFData NetworkACL
data NetworkACLAssociation = NetworkACLAssociation'
{ _naaNetworkACLId :: !(Maybe Text)
, _naaSubnetId :: !(Maybe Text)
, _naaNetworkACLAssociationId :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
networkACLAssociation
:: NetworkACLAssociation
networkACLAssociation =
NetworkACLAssociation'
{ _naaNetworkACLId = Nothing
, _naaSubnetId = Nothing
, _naaNetworkACLAssociationId = Nothing
}
naaNetworkACLId :: Lens' NetworkACLAssociation (Maybe Text)
naaNetworkACLId = lens _naaNetworkACLId (\ s a -> s{_naaNetworkACLId = a});
naaSubnetId :: Lens' NetworkACLAssociation (Maybe Text)
naaSubnetId = lens _naaSubnetId (\ s a -> s{_naaSubnetId = a});
naaNetworkACLAssociationId :: Lens' NetworkACLAssociation (Maybe Text)
naaNetworkACLAssociationId = lens _naaNetworkACLAssociationId (\ s a -> s{_naaNetworkACLAssociationId = a});
instance FromXML NetworkACLAssociation where
parseXML x
= NetworkACLAssociation' <$>
(x .@? "networkAclId") <*> (x .@? "subnetId") <*>
(x .@? "networkAclAssociationId")
instance Hashable NetworkACLAssociation
instance NFData NetworkACLAssociation
data NetworkACLEntry = NetworkACLEntry'
{ _naeICMPTypeCode :: !(Maybe ICMPTypeCode)
, _naeRuleNumber :: !(Maybe Int)
, _naeRuleAction :: !(Maybe RuleAction)
, _naeProtocol :: !(Maybe Text)
, _naePortRange :: !(Maybe PortRange)
, _naeCIdRBlock :: !(Maybe Text)
, _naeEgress :: !(Maybe Bool)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
networkACLEntry
:: NetworkACLEntry
networkACLEntry =
NetworkACLEntry'
{ _naeICMPTypeCode = Nothing
, _naeRuleNumber = Nothing
, _naeRuleAction = Nothing
, _naeProtocol = Nothing
, _naePortRange = Nothing
, _naeCIdRBlock = Nothing
, _naeEgress = Nothing
}
naeICMPTypeCode :: Lens' NetworkACLEntry (Maybe ICMPTypeCode)
naeICMPTypeCode = lens _naeICMPTypeCode (\ s a -> s{_naeICMPTypeCode = a});
naeRuleNumber :: Lens' NetworkACLEntry (Maybe Int)
naeRuleNumber = lens _naeRuleNumber (\ s a -> s{_naeRuleNumber = a});
naeRuleAction :: Lens' NetworkACLEntry (Maybe RuleAction)
naeRuleAction = lens _naeRuleAction (\ s a -> s{_naeRuleAction = a});
naeProtocol :: Lens' NetworkACLEntry (Maybe Text)
naeProtocol = lens _naeProtocol (\ s a -> s{_naeProtocol = a});
naePortRange :: Lens' NetworkACLEntry (Maybe PortRange)
naePortRange = lens _naePortRange (\ s a -> s{_naePortRange = a});
naeCIdRBlock :: Lens' NetworkACLEntry (Maybe Text)
naeCIdRBlock = lens _naeCIdRBlock (\ s a -> s{_naeCIdRBlock = a});
naeEgress :: Lens' NetworkACLEntry (Maybe Bool)
naeEgress = lens _naeEgress (\ s a -> s{_naeEgress = a});
instance FromXML NetworkACLEntry where
parseXML x
= NetworkACLEntry' <$>
(x .@? "icmpTypeCode") <*> (x .@? "ruleNumber") <*>
(x .@? "ruleAction")
<*> (x .@? "protocol")
<*> (x .@? "portRange")
<*> (x .@? "cidrBlock")
<*> (x .@? "egress")
instance Hashable NetworkACLEntry
instance NFData NetworkACLEntry
data NetworkInterface = NetworkInterface'
{ _niGroups :: !(Maybe [GroupIdentifier])
, _niStatus :: !(Maybe NetworkInterfaceStatus)
, _niPrivateIPAddresses :: !(Maybe [NetworkInterfacePrivateIPAddress])
, _niSourceDestCheck :: !(Maybe Bool)
, _niInterfaceType :: !(Maybe NetworkInterfaceType)
, _niVPCId :: !(Maybe Text)
, _niTagSet :: !(Maybe [Tag])
, _niRequesterManaged :: !(Maybe Bool)
, _niNetworkInterfaceId :: !(Maybe Text)
, _niSubnetId :: !(Maybe Text)
, _niMACAddress :: !(Maybe Text)
, _niAttachment :: !(Maybe NetworkInterfaceAttachment)
, _niOwnerId :: !(Maybe Text)
, _niAvailabilityZone :: !(Maybe Text)
, _niPrivateIPAddress :: !(Maybe Text)
, _niPrivateDNSName :: !(Maybe Text)
, _niRequesterId :: !(Maybe Text)
, _niDescription :: !(Maybe Text)
, _niAssociation :: !(Maybe NetworkInterfaceAssociation)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
networkInterface
:: NetworkInterface
networkInterface =
NetworkInterface'
{ _niGroups = Nothing
, _niStatus = Nothing
, _niPrivateIPAddresses = Nothing
, _niSourceDestCheck = Nothing
, _niInterfaceType = Nothing
, _niVPCId = Nothing
, _niTagSet = Nothing
, _niRequesterManaged = Nothing
, _niNetworkInterfaceId = Nothing
, _niSubnetId = Nothing
, _niMACAddress = Nothing
, _niAttachment = Nothing
, _niOwnerId = Nothing
, _niAvailabilityZone = Nothing
, _niPrivateIPAddress = Nothing
, _niPrivateDNSName = Nothing
, _niRequesterId = Nothing
, _niDescription = Nothing
, _niAssociation = Nothing
}
niGroups :: Lens' NetworkInterface [GroupIdentifier]
niGroups = lens _niGroups (\ s a -> s{_niGroups = a}) . _Default . _Coerce;
niStatus :: Lens' NetworkInterface (Maybe NetworkInterfaceStatus)
niStatus = lens _niStatus (\ s a -> s{_niStatus = a});
niPrivateIPAddresses :: Lens' NetworkInterface [NetworkInterfacePrivateIPAddress]
niPrivateIPAddresses = lens _niPrivateIPAddresses (\ s a -> s{_niPrivateIPAddresses = a}) . _Default . _Coerce;
niSourceDestCheck :: Lens' NetworkInterface (Maybe Bool)
niSourceDestCheck = lens _niSourceDestCheck (\ s a -> s{_niSourceDestCheck = a});
niInterfaceType :: Lens' NetworkInterface (Maybe NetworkInterfaceType)
niInterfaceType = lens _niInterfaceType (\ s a -> s{_niInterfaceType = a});
niVPCId :: Lens' NetworkInterface (Maybe Text)
niVPCId = lens _niVPCId (\ s a -> s{_niVPCId = a});
niTagSet :: Lens' NetworkInterface [Tag]
niTagSet = lens _niTagSet (\ s a -> s{_niTagSet = a}) . _Default . _Coerce;
niRequesterManaged :: Lens' NetworkInterface (Maybe Bool)
niRequesterManaged = lens _niRequesterManaged (\ s a -> s{_niRequesterManaged = a});
niNetworkInterfaceId :: Lens' NetworkInterface (Maybe Text)
niNetworkInterfaceId = lens _niNetworkInterfaceId (\ s a -> s{_niNetworkInterfaceId = a});
niSubnetId :: Lens' NetworkInterface (Maybe Text)
niSubnetId = lens _niSubnetId (\ s a -> s{_niSubnetId = a});
niMACAddress :: Lens' NetworkInterface (Maybe Text)
niMACAddress = lens _niMACAddress (\ s a -> s{_niMACAddress = a});
niAttachment :: Lens' NetworkInterface (Maybe NetworkInterfaceAttachment)
niAttachment = lens _niAttachment (\ s a -> s{_niAttachment = a});
niOwnerId :: Lens' NetworkInterface (Maybe Text)
niOwnerId = lens _niOwnerId (\ s a -> s{_niOwnerId = a});
niAvailabilityZone :: Lens' NetworkInterface (Maybe Text)
niAvailabilityZone = lens _niAvailabilityZone (\ s a -> s{_niAvailabilityZone = a});
niPrivateIPAddress :: Lens' NetworkInterface (Maybe Text)
niPrivateIPAddress = lens _niPrivateIPAddress (\ s a -> s{_niPrivateIPAddress = a});
niPrivateDNSName :: Lens' NetworkInterface (Maybe Text)
niPrivateDNSName = lens _niPrivateDNSName (\ s a -> s{_niPrivateDNSName = a});
niRequesterId :: Lens' NetworkInterface (Maybe Text)
niRequesterId = lens _niRequesterId (\ s a -> s{_niRequesterId = a});
niDescription :: Lens' NetworkInterface (Maybe Text)
niDescription = lens _niDescription (\ s a -> s{_niDescription = a});
niAssociation :: Lens' NetworkInterface (Maybe NetworkInterfaceAssociation)
niAssociation = lens _niAssociation (\ s a -> s{_niAssociation = a});
instance FromXML NetworkInterface where
parseXML x
= NetworkInterface' <$>
(x .@? "groupSet" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "status")
<*>
(x .@? "privateIpAddressesSet" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "sourceDestCheck")
<*> (x .@? "interfaceType")
<*> (x .@? "vpcId")
<*>
(x .@? "tagSet" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "requesterManaged")
<*> (x .@? "networkInterfaceId")
<*> (x .@? "subnetId")
<*> (x .@? "macAddress")
<*> (x .@? "attachment")
<*> (x .@? "ownerId")
<*> (x .@? "availabilityZone")
<*> (x .@? "privateIpAddress")
<*> (x .@? "privateDnsName")
<*> (x .@? "requesterId")
<*> (x .@? "description")
<*> (x .@? "association")
instance Hashable NetworkInterface
instance NFData NetworkInterface
data NetworkInterfaceAssociation = NetworkInterfaceAssociation'
{ _niaAssociationId :: !(Maybe Text)
, _niaPublicDNSName :: !(Maybe Text)
, _niaAllocationId :: !(Maybe Text)
, _niaIPOwnerId :: !(Maybe Text)
, _niaPublicIP :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
networkInterfaceAssociation
:: NetworkInterfaceAssociation
networkInterfaceAssociation =
NetworkInterfaceAssociation'
{ _niaAssociationId = Nothing
, _niaPublicDNSName = Nothing
, _niaAllocationId = Nothing
, _niaIPOwnerId = Nothing
, _niaPublicIP = Nothing
}
niaAssociationId :: Lens' NetworkInterfaceAssociation (Maybe Text)
niaAssociationId = lens _niaAssociationId (\ s a -> s{_niaAssociationId = a});
niaPublicDNSName :: Lens' NetworkInterfaceAssociation (Maybe Text)
niaPublicDNSName = lens _niaPublicDNSName (\ s a -> s{_niaPublicDNSName = a});
niaAllocationId :: Lens' NetworkInterfaceAssociation (Maybe Text)
niaAllocationId = lens _niaAllocationId (\ s a -> s{_niaAllocationId = a});
niaIPOwnerId :: Lens' NetworkInterfaceAssociation (Maybe Text)
niaIPOwnerId = lens _niaIPOwnerId (\ s a -> s{_niaIPOwnerId = a});
niaPublicIP :: Lens' NetworkInterfaceAssociation (Maybe Text)
niaPublicIP = lens _niaPublicIP (\ s a -> s{_niaPublicIP = a});
instance FromXML NetworkInterfaceAssociation where
parseXML x
= NetworkInterfaceAssociation' <$>
(x .@? "associationId") <*> (x .@? "publicDnsName")
<*> (x .@? "allocationId")
<*> (x .@? "ipOwnerId")
<*> (x .@? "publicIp")
instance Hashable NetworkInterfaceAssociation
instance NFData NetworkInterfaceAssociation
data NetworkInterfaceAttachment = NetworkInterfaceAttachment'
{ _niaInstanceId :: !(Maybe Text)
, _niaStatus :: !(Maybe AttachmentStatus)
, _niaDeleteOnTermination :: !(Maybe Bool)
, _niaAttachmentId :: !(Maybe Text)
, _niaInstanceOwnerId :: !(Maybe Text)
, _niaAttachTime :: !(Maybe ISO8601)
, _niaDeviceIndex :: !(Maybe Int)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
networkInterfaceAttachment
:: NetworkInterfaceAttachment
networkInterfaceAttachment =
NetworkInterfaceAttachment'
{ _niaInstanceId = Nothing
, _niaStatus = Nothing
, _niaDeleteOnTermination = Nothing
, _niaAttachmentId = Nothing
, _niaInstanceOwnerId = Nothing
, _niaAttachTime = Nothing
, _niaDeviceIndex = Nothing
}
niaInstanceId :: Lens' NetworkInterfaceAttachment (Maybe Text)
niaInstanceId = lens _niaInstanceId (\ s a -> s{_niaInstanceId = a});
niaStatus :: Lens' NetworkInterfaceAttachment (Maybe AttachmentStatus)
niaStatus = lens _niaStatus (\ s a -> s{_niaStatus = a});
niaDeleteOnTermination :: Lens' NetworkInterfaceAttachment (Maybe Bool)
niaDeleteOnTermination = lens _niaDeleteOnTermination (\ s a -> s{_niaDeleteOnTermination = a});
niaAttachmentId :: Lens' NetworkInterfaceAttachment (Maybe Text)
niaAttachmentId = lens _niaAttachmentId (\ s a -> s{_niaAttachmentId = a});
niaInstanceOwnerId :: Lens' NetworkInterfaceAttachment (Maybe Text)
niaInstanceOwnerId = lens _niaInstanceOwnerId (\ s a -> s{_niaInstanceOwnerId = a});
niaAttachTime :: Lens' NetworkInterfaceAttachment (Maybe UTCTime)
niaAttachTime = lens _niaAttachTime (\ s a -> s{_niaAttachTime = a}) . mapping _Time;
niaDeviceIndex :: Lens' NetworkInterfaceAttachment (Maybe Int)
niaDeviceIndex = lens _niaDeviceIndex (\ s a -> s{_niaDeviceIndex = a});
instance FromXML NetworkInterfaceAttachment where
parseXML x
= NetworkInterfaceAttachment' <$>
(x .@? "instanceId") <*> (x .@? "status") <*>
(x .@? "deleteOnTermination")
<*> (x .@? "attachmentId")
<*> (x .@? "instanceOwnerId")
<*> (x .@? "attachTime")
<*> (x .@? "deviceIndex")
instance Hashable NetworkInterfaceAttachment
instance NFData NetworkInterfaceAttachment
data NetworkInterfaceAttachmentChanges = NetworkInterfaceAttachmentChanges'
{ _niacDeleteOnTermination :: !(Maybe Bool)
, _niacAttachmentId :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
networkInterfaceAttachmentChanges
:: NetworkInterfaceAttachmentChanges
networkInterfaceAttachmentChanges =
NetworkInterfaceAttachmentChanges'
{ _niacDeleteOnTermination = Nothing
, _niacAttachmentId = Nothing
}
niacDeleteOnTermination :: Lens' NetworkInterfaceAttachmentChanges (Maybe Bool)
niacDeleteOnTermination = lens _niacDeleteOnTermination (\ s a -> s{_niacDeleteOnTermination = a});
niacAttachmentId :: Lens' NetworkInterfaceAttachmentChanges (Maybe Text)
niacAttachmentId = lens _niacAttachmentId (\ s a -> s{_niacAttachmentId = a});
instance Hashable NetworkInterfaceAttachmentChanges
instance NFData NetworkInterfaceAttachmentChanges
instance ToQuery NetworkInterfaceAttachmentChanges
where
toQuery NetworkInterfaceAttachmentChanges'{..}
= mconcat
["DeleteOnTermination" =: _niacDeleteOnTermination,
"AttachmentId" =: _niacAttachmentId]
data NetworkInterfacePrivateIPAddress = NetworkInterfacePrivateIPAddress'
{ _nipiaPrimary :: !(Maybe Bool)
, _nipiaPrivateIPAddress :: !(Maybe Text)
, _nipiaPrivateDNSName :: !(Maybe Text)
, _nipiaAssociation :: !(Maybe NetworkInterfaceAssociation)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
networkInterfacePrivateIPAddress
:: NetworkInterfacePrivateIPAddress
networkInterfacePrivateIPAddress =
NetworkInterfacePrivateIPAddress'
{ _nipiaPrimary = Nothing
, _nipiaPrivateIPAddress = Nothing
, _nipiaPrivateDNSName = Nothing
, _nipiaAssociation = Nothing
}
nipiaPrimary :: Lens' NetworkInterfacePrivateIPAddress (Maybe Bool)
nipiaPrimary = lens _nipiaPrimary (\ s a -> s{_nipiaPrimary = a});
nipiaPrivateIPAddress :: Lens' NetworkInterfacePrivateIPAddress (Maybe Text)
nipiaPrivateIPAddress = lens _nipiaPrivateIPAddress (\ s a -> s{_nipiaPrivateIPAddress = a});
nipiaPrivateDNSName :: Lens' NetworkInterfacePrivateIPAddress (Maybe Text)
nipiaPrivateDNSName = lens _nipiaPrivateDNSName (\ s a -> s{_nipiaPrivateDNSName = a});
nipiaAssociation :: Lens' NetworkInterfacePrivateIPAddress (Maybe NetworkInterfaceAssociation)
nipiaAssociation = lens _nipiaAssociation (\ s a -> s{_nipiaAssociation = a});
instance FromXML NetworkInterfacePrivateIPAddress
where
parseXML x
= NetworkInterfacePrivateIPAddress' <$>
(x .@? "primary") <*> (x .@? "privateIpAddress") <*>
(x .@? "privateDnsName")
<*> (x .@? "association")
instance Hashable NetworkInterfacePrivateIPAddress
instance NFData NetworkInterfacePrivateIPAddress
data NewDHCPConfiguration = NewDHCPConfiguration'
{ _ndcValues :: !(Maybe [Text])
, _ndcKey :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
newDHCPConfiguration
:: NewDHCPConfiguration
newDHCPConfiguration =
NewDHCPConfiguration'
{ _ndcValues = Nothing
, _ndcKey = Nothing
}
ndcValues :: Lens' NewDHCPConfiguration [Text]
ndcValues = lens _ndcValues (\ s a -> s{_ndcValues = a}) . _Default . _Coerce;
ndcKey :: Lens' NewDHCPConfiguration (Maybe Text)
ndcKey = lens _ndcKey (\ s a -> s{_ndcKey = a});
instance Hashable NewDHCPConfiguration
instance NFData NewDHCPConfiguration
instance ToQuery NewDHCPConfiguration where
toQuery NewDHCPConfiguration'{..}
= mconcat
[toQuery (toQueryList "Value" <$> _ndcValues),
"Key" =: _ndcKey]
data PeeringConnectionOptions = PeeringConnectionOptions'
{ _pcoAllowEgressFromLocalVPCToRemoteClassicLink :: !(Maybe Bool)
, _pcoAllowEgressFromLocalClassicLinkToRemoteVPC :: !(Maybe Bool)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
peeringConnectionOptions
:: PeeringConnectionOptions
peeringConnectionOptions =
PeeringConnectionOptions'
{ _pcoAllowEgressFromLocalVPCToRemoteClassicLink = Nothing
, _pcoAllowEgressFromLocalClassicLinkToRemoteVPC = Nothing
}
pcoAllowEgressFromLocalVPCToRemoteClassicLink :: Lens' PeeringConnectionOptions (Maybe Bool)
pcoAllowEgressFromLocalVPCToRemoteClassicLink = lens _pcoAllowEgressFromLocalVPCToRemoteClassicLink (\ s a -> s{_pcoAllowEgressFromLocalVPCToRemoteClassicLink = a});
pcoAllowEgressFromLocalClassicLinkToRemoteVPC :: Lens' PeeringConnectionOptions (Maybe Bool)
pcoAllowEgressFromLocalClassicLinkToRemoteVPC = lens _pcoAllowEgressFromLocalClassicLinkToRemoteVPC (\ s a -> s{_pcoAllowEgressFromLocalClassicLinkToRemoteVPC = a});
instance FromXML PeeringConnectionOptions where
parseXML x
= PeeringConnectionOptions' <$>
(x .@? "allowEgressFromLocalVpcToRemoteClassicLink")
<*>
(x .@? "allowEgressFromLocalClassicLinkToRemoteVpc")
instance Hashable PeeringConnectionOptions
instance NFData PeeringConnectionOptions
data PeeringConnectionOptionsRequest = PeeringConnectionOptionsRequest'
{ _pcorAllowEgressFromLocalClassicLinkToRemoteVPC :: !Bool
, _pcorAllowEgressFromLocalVPCToRemoteClassicLink :: !Bool
} deriving (Eq,Read,Show,Data,Typeable,Generic)
peeringConnectionOptionsRequest
:: Bool
-> Bool
-> PeeringConnectionOptionsRequest
peeringConnectionOptionsRequest pAllowEgressFromLocalClassicLinkToRemoteVPC_ pAllowEgressFromLocalVPCToRemoteClassicLink_ =
PeeringConnectionOptionsRequest'
{ _pcorAllowEgressFromLocalClassicLinkToRemoteVPC = pAllowEgressFromLocalClassicLinkToRemoteVPC_
, _pcorAllowEgressFromLocalVPCToRemoteClassicLink = pAllowEgressFromLocalVPCToRemoteClassicLink_
}
pcorAllowEgressFromLocalClassicLinkToRemoteVPC :: Lens' PeeringConnectionOptionsRequest Bool
pcorAllowEgressFromLocalClassicLinkToRemoteVPC = lens _pcorAllowEgressFromLocalClassicLinkToRemoteVPC (\ s a -> s{_pcorAllowEgressFromLocalClassicLinkToRemoteVPC = a});
pcorAllowEgressFromLocalVPCToRemoteClassicLink :: Lens' PeeringConnectionOptionsRequest Bool
pcorAllowEgressFromLocalVPCToRemoteClassicLink = lens _pcorAllowEgressFromLocalVPCToRemoteClassicLink (\ s a -> s{_pcorAllowEgressFromLocalVPCToRemoteClassicLink = a});
instance Hashable PeeringConnectionOptionsRequest
instance NFData PeeringConnectionOptionsRequest
instance ToQuery PeeringConnectionOptionsRequest
where
toQuery PeeringConnectionOptionsRequest'{..}
= mconcat
["AllowEgressFromLocalClassicLinkToRemoteVpc" =:
_pcorAllowEgressFromLocalClassicLinkToRemoteVPC,
"AllowEgressFromLocalVpcToRemoteClassicLink" =:
_pcorAllowEgressFromLocalVPCToRemoteClassicLink]
data Placement = Placement'
{ _pAffinity :: !(Maybe Text)
, _pHostId :: !(Maybe Text)
, _pAvailabilityZone :: !(Maybe Text)
, _pTenancy :: !(Maybe Tenancy)
, _pGroupName :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
placement
:: Placement
placement =
Placement'
{ _pAffinity = Nothing
, _pHostId = Nothing
, _pAvailabilityZone = Nothing
, _pTenancy = Nothing
, _pGroupName = Nothing
}
pAffinity :: Lens' Placement (Maybe Text)
pAffinity = lens _pAffinity (\ s a -> s{_pAffinity = a});
pHostId :: Lens' Placement (Maybe Text)
pHostId = lens _pHostId (\ s a -> s{_pHostId = a});
pAvailabilityZone :: Lens' Placement (Maybe Text)
pAvailabilityZone = lens _pAvailabilityZone (\ s a -> s{_pAvailabilityZone = a});
pTenancy :: Lens' Placement (Maybe Tenancy)
pTenancy = lens _pTenancy (\ s a -> s{_pTenancy = a});
pGroupName :: Lens' Placement (Maybe Text)
pGroupName = lens _pGroupName (\ s a -> s{_pGroupName = a});
instance FromXML Placement where
parseXML x
= Placement' <$>
(x .@? "affinity") <*> (x .@? "hostId") <*>
(x .@? "availabilityZone")
<*> (x .@? "tenancy")
<*> (x .@? "groupName")
instance Hashable Placement
instance NFData Placement
instance ToQuery Placement where
toQuery Placement'{..}
= mconcat
["Affinity" =: _pAffinity, "HostId" =: _pHostId,
"AvailabilityZone" =: _pAvailabilityZone,
"Tenancy" =: _pTenancy, "GroupName" =: _pGroupName]
data PlacementGroup = PlacementGroup'
{ _pgState :: !(Maybe PlacementGroupState)
, _pgStrategy :: !(Maybe PlacementStrategy)
, _pgGroupName :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
placementGroup
:: PlacementGroup
placementGroup =
PlacementGroup'
{ _pgState = Nothing
, _pgStrategy = Nothing
, _pgGroupName = Nothing
}
pgState :: Lens' PlacementGroup (Maybe PlacementGroupState)
pgState = lens _pgState (\ s a -> s{_pgState = a});
pgStrategy :: Lens' PlacementGroup (Maybe PlacementStrategy)
pgStrategy = lens _pgStrategy (\ s a -> s{_pgStrategy = a});
pgGroupName :: Lens' PlacementGroup (Maybe Text)
pgGroupName = lens _pgGroupName (\ s a -> s{_pgGroupName = a});
instance FromXML PlacementGroup where
parseXML x
= PlacementGroup' <$>
(x .@? "state") <*> (x .@? "strategy") <*>
(x .@? "groupName")
instance Hashable PlacementGroup
instance NFData PlacementGroup
data PortRange = PortRange'
{ _prTo :: !(Maybe Int)
, _prFrom :: !(Maybe Int)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
portRange
:: PortRange
portRange =
PortRange'
{ _prTo = Nothing
, _prFrom = Nothing
}
prTo :: Lens' PortRange (Maybe Int)
prTo = lens _prTo (\ s a -> s{_prTo = a});
prFrom :: Lens' PortRange (Maybe Int)
prFrom = lens _prFrom (\ s a -> s{_prFrom = a});
instance FromXML PortRange where
parseXML x
= PortRange' <$> (x .@? "to") <*> (x .@? "from")
instance Hashable PortRange
instance NFData PortRange
instance ToQuery PortRange where
toQuery PortRange'{..}
= mconcat ["To" =: _prTo, "From" =: _prFrom]
data PrefixList = PrefixList'
{ _plCIdRs :: !(Maybe [Text])
, _plPrefixListId :: !(Maybe Text)
, _plPrefixListName :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
prefixList
:: PrefixList
prefixList =
PrefixList'
{ _plCIdRs = Nothing
, _plPrefixListId = Nothing
, _plPrefixListName = Nothing
}
plCIdRs :: Lens' PrefixList [Text]
plCIdRs = lens _plCIdRs (\ s a -> s{_plCIdRs = a}) . _Default . _Coerce;
plPrefixListId :: Lens' PrefixList (Maybe Text)
plPrefixListId = lens _plPrefixListId (\ s a -> s{_plPrefixListId = a});
plPrefixListName :: Lens' PrefixList (Maybe Text)
plPrefixListName = lens _plPrefixListName (\ s a -> s{_plPrefixListName = a});
instance FromXML PrefixList where
parseXML x
= PrefixList' <$>
(x .@? "cidrSet" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "prefixListId")
<*> (x .@? "prefixListName")
instance Hashable PrefixList
instance NFData PrefixList
newtype PrefixListId = PrefixListId'
{ _pliPrefixListId :: Maybe Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
prefixListId
:: PrefixListId
prefixListId =
PrefixListId'
{ _pliPrefixListId = Nothing
}
pliPrefixListId :: Lens' PrefixListId (Maybe Text)
pliPrefixListId = lens _pliPrefixListId (\ s a -> s{_pliPrefixListId = a});
instance FromXML PrefixListId where
parseXML x = PrefixListId' <$> (x .@? "prefixListId")
instance Hashable PrefixListId
instance NFData PrefixListId
instance ToQuery PrefixListId where
toQuery PrefixListId'{..}
= mconcat ["PrefixListId" =: _pliPrefixListId]
data PriceSchedule = PriceSchedule'
{ _psCurrencyCode :: !(Maybe CurrencyCodeValues)
, _psTerm :: !(Maybe Integer)
, _psActive :: !(Maybe Bool)
, _psPrice :: !(Maybe Double)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
priceSchedule
:: PriceSchedule
priceSchedule =
PriceSchedule'
{ _psCurrencyCode = Nothing
, _psTerm = Nothing
, _psActive = Nothing
, _psPrice = Nothing
}
psCurrencyCode :: Lens' PriceSchedule (Maybe CurrencyCodeValues)
psCurrencyCode = lens _psCurrencyCode (\ s a -> s{_psCurrencyCode = a});
psTerm :: Lens' PriceSchedule (Maybe Integer)
psTerm = lens _psTerm (\ s a -> s{_psTerm = a});
psActive :: Lens' PriceSchedule (Maybe Bool)
psActive = lens _psActive (\ s a -> s{_psActive = a});
psPrice :: Lens' PriceSchedule (Maybe Double)
psPrice = lens _psPrice (\ s a -> s{_psPrice = a});
instance FromXML PriceSchedule where
parseXML x
= PriceSchedule' <$>
(x .@? "currencyCode") <*> (x .@? "term") <*>
(x .@? "active")
<*> (x .@? "price")
instance Hashable PriceSchedule
instance NFData PriceSchedule
data PriceScheduleSpecification = PriceScheduleSpecification'
{ _pssCurrencyCode :: !(Maybe CurrencyCodeValues)
, _pssTerm :: !(Maybe Integer)
, _pssPrice :: !(Maybe Double)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
priceScheduleSpecification
:: PriceScheduleSpecification
priceScheduleSpecification =
PriceScheduleSpecification'
{ _pssCurrencyCode = Nothing
, _pssTerm = Nothing
, _pssPrice = Nothing
}
pssCurrencyCode :: Lens' PriceScheduleSpecification (Maybe CurrencyCodeValues)
pssCurrencyCode = lens _pssCurrencyCode (\ s a -> s{_pssCurrencyCode = a});
pssTerm :: Lens' PriceScheduleSpecification (Maybe Integer)
pssTerm = lens _pssTerm (\ s a -> s{_pssTerm = a});
pssPrice :: Lens' PriceScheduleSpecification (Maybe Double)
pssPrice = lens _pssPrice (\ s a -> s{_pssPrice = a});
instance Hashable PriceScheduleSpecification
instance NFData PriceScheduleSpecification
instance ToQuery PriceScheduleSpecification where
toQuery PriceScheduleSpecification'{..}
= mconcat
["CurrencyCode" =: _pssCurrencyCode,
"Term" =: _pssTerm, "Price" =: _pssPrice]
data PricingDetail = PricingDetail'
{ _pdCount :: !(Maybe Int)
, _pdPrice :: !(Maybe Double)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
pricingDetail
:: PricingDetail
pricingDetail =
PricingDetail'
{ _pdCount = Nothing
, _pdPrice = Nothing
}
pdCount :: Lens' PricingDetail (Maybe Int)
pdCount = lens _pdCount (\ s a -> s{_pdCount = a});
pdPrice :: Lens' PricingDetail (Maybe Double)
pdPrice = lens _pdPrice (\ s a -> s{_pdPrice = a});
instance FromXML PricingDetail where
parseXML x
= PricingDetail' <$>
(x .@? "count") <*> (x .@? "price")
instance Hashable PricingDetail
instance NFData PricingDetail
data PrivateIPAddressSpecification = PrivateIPAddressSpecification'
{ _piasPrimary :: !(Maybe Bool)
, _piasPrivateIPAddress :: !Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
privateIPAddressSpecification
:: Text
-> PrivateIPAddressSpecification
privateIPAddressSpecification pPrivateIPAddress_ =
PrivateIPAddressSpecification'
{ _piasPrimary = Nothing
, _piasPrivateIPAddress = pPrivateIPAddress_
}
piasPrimary :: Lens' PrivateIPAddressSpecification (Maybe Bool)
piasPrimary = lens _piasPrimary (\ s a -> s{_piasPrimary = a});
piasPrivateIPAddress :: Lens' PrivateIPAddressSpecification Text
piasPrivateIPAddress = lens _piasPrivateIPAddress (\ s a -> s{_piasPrivateIPAddress = a});
instance FromXML PrivateIPAddressSpecification where
parseXML x
= PrivateIPAddressSpecification' <$>
(x .@? "primary") <*> (x .@ "privateIpAddress")
instance Hashable PrivateIPAddressSpecification
instance NFData PrivateIPAddressSpecification
instance ToQuery PrivateIPAddressSpecification where
toQuery PrivateIPAddressSpecification'{..}
= mconcat
["Primary" =: _piasPrimary,
"PrivateIpAddress" =: _piasPrivateIPAddress]
data ProductCode = ProductCode'
{ _pcProductCodeType :: !(Maybe ProductCodeValues)
, _pcProductCodeId :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
productCode
:: ProductCode
productCode =
ProductCode'
{ _pcProductCodeType = Nothing
, _pcProductCodeId = Nothing
}
pcProductCodeType :: Lens' ProductCode (Maybe ProductCodeValues)
pcProductCodeType = lens _pcProductCodeType (\ s a -> s{_pcProductCodeType = a});
pcProductCodeId :: Lens' ProductCode (Maybe Text)
pcProductCodeId = lens _pcProductCodeId (\ s a -> s{_pcProductCodeId = a});
instance FromXML ProductCode where
parseXML x
= ProductCode' <$>
(x .@? "type") <*> (x .@? "productCode")
instance Hashable ProductCode
instance NFData ProductCode
newtype PropagatingVGW = PropagatingVGW'
{ _pvGatewayId :: Maybe Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
propagatingVGW
:: PropagatingVGW
propagatingVGW =
PropagatingVGW'
{ _pvGatewayId = Nothing
}
pvGatewayId :: Lens' PropagatingVGW (Maybe Text)
pvGatewayId = lens _pvGatewayId (\ s a -> s{_pvGatewayId = a});
instance FromXML PropagatingVGW where
parseXML x = PropagatingVGW' <$> (x .@? "gatewayId")
instance Hashable PropagatingVGW
instance NFData PropagatingVGW
data PurchaseRequest = PurchaseRequest'
{ _prPurchaseToken :: !Text
, _prInstanceCount :: !Int
} deriving (Eq,Read,Show,Data,Typeable,Generic)
purchaseRequest
:: Text
-> Int
-> PurchaseRequest
purchaseRequest pPurchaseToken_ pInstanceCount_ =
PurchaseRequest'
{ _prPurchaseToken = pPurchaseToken_
, _prInstanceCount = pInstanceCount_
}
prPurchaseToken :: Lens' PurchaseRequest Text
prPurchaseToken = lens _prPurchaseToken (\ s a -> s{_prPurchaseToken = a});
prInstanceCount :: Lens' PurchaseRequest Int
prInstanceCount = lens _prInstanceCount (\ s a -> s{_prInstanceCount = a});
instance Hashable PurchaseRequest
instance NFData PurchaseRequest
instance ToQuery PurchaseRequest where
toQuery PurchaseRequest'{..}
= mconcat
["PurchaseToken" =: _prPurchaseToken,
"InstanceCount" =: _prInstanceCount]
data RecurringCharge = RecurringCharge'
{ _rcAmount :: !(Maybe Double)
, _rcFrequency :: !(Maybe RecurringChargeFrequency)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
recurringCharge
:: RecurringCharge
recurringCharge =
RecurringCharge'
{ _rcAmount = Nothing
, _rcFrequency = Nothing
}
rcAmount :: Lens' RecurringCharge (Maybe Double)
rcAmount = lens _rcAmount (\ s a -> s{_rcAmount = a});
rcFrequency :: Lens' RecurringCharge (Maybe RecurringChargeFrequency)
rcFrequency = lens _rcFrequency (\ s a -> s{_rcFrequency = a});
instance FromXML RecurringCharge where
parseXML x
= RecurringCharge' <$>
(x .@? "amount") <*> (x .@? "frequency")
instance Hashable RecurringCharge
instance NFData RecurringCharge
data RegionInfo = RegionInfo'
{ _riRegionName :: !(Maybe Text)
, _riEndpoint :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
regionInfo
:: RegionInfo
regionInfo =
RegionInfo'
{ _riRegionName = Nothing
, _riEndpoint = Nothing
}
riRegionName :: Lens' RegionInfo (Maybe Text)
riRegionName = lens _riRegionName (\ s a -> s{_riRegionName = a});
riEndpoint :: Lens' RegionInfo (Maybe Text)
riEndpoint = lens _riEndpoint (\ s a -> s{_riEndpoint = a});
instance FromXML RegionInfo where
parseXML x
= RegionInfo' <$>
(x .@? "regionName") <*> (x .@? "regionEndpoint")
instance Hashable RegionInfo
instance NFData RegionInfo
data RequestSpotLaunchSpecification = RequestSpotLaunchSpecification'
{ _rslsSecurityGroupIds :: !(Maybe [Text])
, _rslsSecurityGroups :: !(Maybe [Text])
, _rslsKeyName :: !(Maybe Text)
, _rslsNetworkInterfaces :: !(Maybe [InstanceNetworkInterfaceSpecification])
, _rslsRAMDiskId :: !(Maybe Text)
, _rslsSubnetId :: !(Maybe Text)
, _rslsKernelId :: !(Maybe Text)
, _rslsInstanceType :: !(Maybe InstanceType)
, _rslsEBSOptimized :: !(Maybe Bool)
, _rslsUserData :: !(Maybe Text)
, _rslsMonitoring :: !(Maybe RunInstancesMonitoringEnabled)
, _rslsIAMInstanceProfile :: !(Maybe IAMInstanceProfileSpecification)
, _rslsImageId :: !(Maybe Text)
, _rslsAddressingType :: !(Maybe Text)
, _rslsBlockDeviceMappings :: !(Maybe [BlockDeviceMapping])
, _rslsPlacement :: !(Maybe SpotPlacement)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
requestSpotLaunchSpecification
:: RequestSpotLaunchSpecification
requestSpotLaunchSpecification =
RequestSpotLaunchSpecification'
{ _rslsSecurityGroupIds = Nothing
, _rslsSecurityGroups = Nothing
, _rslsKeyName = Nothing
, _rslsNetworkInterfaces = Nothing
, _rslsRAMDiskId = Nothing
, _rslsSubnetId = Nothing
, _rslsKernelId = Nothing
, _rslsInstanceType = Nothing
, _rslsEBSOptimized = Nothing
, _rslsUserData = Nothing
, _rslsMonitoring = Nothing
, _rslsIAMInstanceProfile = Nothing
, _rslsImageId = Nothing
, _rslsAddressingType = Nothing
, _rslsBlockDeviceMappings = Nothing
, _rslsPlacement = Nothing
}
rslsSecurityGroupIds :: Lens' RequestSpotLaunchSpecification [Text]
rslsSecurityGroupIds = lens _rslsSecurityGroupIds (\ s a -> s{_rslsSecurityGroupIds = a}) . _Default . _Coerce;
rslsSecurityGroups :: Lens' RequestSpotLaunchSpecification [Text]
rslsSecurityGroups = lens _rslsSecurityGroups (\ s a -> s{_rslsSecurityGroups = a}) . _Default . _Coerce;
rslsKeyName :: Lens' RequestSpotLaunchSpecification (Maybe Text)
rslsKeyName = lens _rslsKeyName (\ s a -> s{_rslsKeyName = a});
rslsNetworkInterfaces :: Lens' RequestSpotLaunchSpecification [InstanceNetworkInterfaceSpecification]
rslsNetworkInterfaces = lens _rslsNetworkInterfaces (\ s a -> s{_rslsNetworkInterfaces = a}) . _Default . _Coerce;
rslsRAMDiskId :: Lens' RequestSpotLaunchSpecification (Maybe Text)
rslsRAMDiskId = lens _rslsRAMDiskId (\ s a -> s{_rslsRAMDiskId = a});
rslsSubnetId :: Lens' RequestSpotLaunchSpecification (Maybe Text)
rslsSubnetId = lens _rslsSubnetId (\ s a -> s{_rslsSubnetId = a});
rslsKernelId :: Lens' RequestSpotLaunchSpecification (Maybe Text)
rslsKernelId = lens _rslsKernelId (\ s a -> s{_rslsKernelId = a});
rslsInstanceType :: Lens' RequestSpotLaunchSpecification (Maybe InstanceType)
rslsInstanceType = lens _rslsInstanceType (\ s a -> s{_rslsInstanceType = a});
rslsEBSOptimized :: Lens' RequestSpotLaunchSpecification (Maybe Bool)
rslsEBSOptimized = lens _rslsEBSOptimized (\ s a -> s{_rslsEBSOptimized = a});
rslsUserData :: Lens' RequestSpotLaunchSpecification (Maybe Text)
rslsUserData = lens _rslsUserData (\ s a -> s{_rslsUserData = a});
rslsMonitoring :: Lens' RequestSpotLaunchSpecification (Maybe RunInstancesMonitoringEnabled)
rslsMonitoring = lens _rslsMonitoring (\ s a -> s{_rslsMonitoring = a});
rslsIAMInstanceProfile :: Lens' RequestSpotLaunchSpecification (Maybe IAMInstanceProfileSpecification)
rslsIAMInstanceProfile = lens _rslsIAMInstanceProfile (\ s a -> s{_rslsIAMInstanceProfile = a});
rslsImageId :: Lens' RequestSpotLaunchSpecification (Maybe Text)
rslsImageId = lens _rslsImageId (\ s a -> s{_rslsImageId = a});
rslsAddressingType :: Lens' RequestSpotLaunchSpecification (Maybe Text)
rslsAddressingType = lens _rslsAddressingType (\ s a -> s{_rslsAddressingType = a});
rslsBlockDeviceMappings :: Lens' RequestSpotLaunchSpecification [BlockDeviceMapping]
rslsBlockDeviceMappings = lens _rslsBlockDeviceMappings (\ s a -> s{_rslsBlockDeviceMappings = a}) . _Default . _Coerce;
rslsPlacement :: Lens' RequestSpotLaunchSpecification (Maybe SpotPlacement)
rslsPlacement = lens _rslsPlacement (\ s a -> s{_rslsPlacement = a});
instance Hashable RequestSpotLaunchSpecification
instance NFData RequestSpotLaunchSpecification
instance ToQuery RequestSpotLaunchSpecification where
toQuery RequestSpotLaunchSpecification'{..}
= mconcat
[toQuery
(toQueryList "SecurityGroupId" <$>
_rslsSecurityGroupIds),
toQuery
(toQueryList "SecurityGroup" <$>
_rslsSecurityGroups),
"KeyName" =: _rslsKeyName,
toQuery
(toQueryList "NetworkInterface" <$>
_rslsNetworkInterfaces),
"RamdiskId" =: _rslsRAMDiskId,
"SubnetId" =: _rslsSubnetId,
"KernelId" =: _rslsKernelId,
"InstanceType" =: _rslsInstanceType,
"EbsOptimized" =: _rslsEBSOptimized,
"UserData" =: _rslsUserData,
"Monitoring" =: _rslsMonitoring,
"IamInstanceProfile" =: _rslsIAMInstanceProfile,
"ImageId" =: _rslsImageId,
"AddressingType" =: _rslsAddressingType,
toQuery
(toQueryList "BlockDeviceMapping" <$>
_rslsBlockDeviceMappings),
"Placement" =: _rslsPlacement]
data Reservation = Reservation'
{ _rGroups :: !(Maybe [GroupIdentifier])
, _rInstances :: !(Maybe [Instance])
, _rRequesterId :: !(Maybe Text)
, _rReservationId :: !Text
, _rOwnerId :: !Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
reservation
:: Text
-> Text
-> Reservation
reservation pReservationId_ pOwnerId_ =
Reservation'
{ _rGroups = Nothing
, _rInstances = Nothing
, _rRequesterId = Nothing
, _rReservationId = pReservationId_
, _rOwnerId = pOwnerId_
}
rGroups :: Lens' Reservation [GroupIdentifier]
rGroups = lens _rGroups (\ s a -> s{_rGroups = a}) . _Default . _Coerce;
rInstances :: Lens' Reservation [Instance]
rInstances = lens _rInstances (\ s a -> s{_rInstances = a}) . _Default . _Coerce;
rRequesterId :: Lens' Reservation (Maybe Text)
rRequesterId = lens _rRequesterId (\ s a -> s{_rRequesterId = a});
rReservationId :: Lens' Reservation Text
rReservationId = lens _rReservationId (\ s a -> s{_rReservationId = a});
rOwnerId :: Lens' Reservation Text
rOwnerId = lens _rOwnerId (\ s a -> s{_rOwnerId = a});
instance FromXML Reservation where
parseXML x
= Reservation' <$>
(x .@? "groupSet" .!@ mempty >>=
may (parseXMLList "item"))
<*>
(x .@? "instancesSet" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "requesterId")
<*> (x .@ "reservationId")
<*> (x .@ "ownerId")
instance Hashable Reservation
instance NFData Reservation
data ReservedInstanceLimitPrice = ReservedInstanceLimitPrice'
{ _rilpAmount :: !(Maybe Double)
, _rilpCurrencyCode :: !(Maybe CurrencyCodeValues)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
reservedInstanceLimitPrice
:: ReservedInstanceLimitPrice
reservedInstanceLimitPrice =
ReservedInstanceLimitPrice'
{ _rilpAmount = Nothing
, _rilpCurrencyCode = Nothing
}
rilpAmount :: Lens' ReservedInstanceLimitPrice (Maybe Double)
rilpAmount = lens _rilpAmount (\ s a -> s{_rilpAmount = a});
rilpCurrencyCode :: Lens' ReservedInstanceLimitPrice (Maybe CurrencyCodeValues)
rilpCurrencyCode = lens _rilpCurrencyCode (\ s a -> s{_rilpCurrencyCode = a});
instance Hashable ReservedInstanceLimitPrice
instance NFData ReservedInstanceLimitPrice
instance ToQuery ReservedInstanceLimitPrice where
toQuery ReservedInstanceLimitPrice'{..}
= mconcat
["Amount" =: _rilpAmount,
"CurrencyCode" =: _rilpCurrencyCode]
data ReservedInstances = ReservedInstances'
{ _riState :: !(Maybe ReservedInstanceState)
, _riCurrencyCode :: !(Maybe CurrencyCodeValues)
, _riInstanceCount :: !(Maybe Int)
, _riProductDescription :: !(Maybe RIProductDescription)
, _riStart :: !(Maybe ISO8601)
, _riInstanceType :: !(Maybe InstanceType)
, _riEnd :: !(Maybe ISO8601)
, _riAvailabilityZone :: !(Maybe Text)
, _riRecurringCharges :: !(Maybe [RecurringCharge])
, _riOfferingType :: !(Maybe OfferingTypeValues)
, _riUsagePrice :: !(Maybe Double)
, _riFixedPrice :: !(Maybe Double)
, _riReservedInstancesId :: !(Maybe Text)
, _riInstanceTenancy :: !(Maybe Tenancy)
, _riDuration :: !(Maybe Integer)
, _riTags :: !(Maybe [Tag])
} deriving (Eq,Read,Show,Data,Typeable,Generic)
reservedInstances
:: ReservedInstances
reservedInstances =
ReservedInstances'
{ _riState = Nothing
, _riCurrencyCode = Nothing
, _riInstanceCount = Nothing
, _riProductDescription = Nothing
, _riStart = Nothing
, _riInstanceType = Nothing
, _riEnd = Nothing
, _riAvailabilityZone = Nothing
, _riRecurringCharges = Nothing
, _riOfferingType = Nothing
, _riUsagePrice = Nothing
, _riFixedPrice = Nothing
, _riReservedInstancesId = Nothing
, _riInstanceTenancy = Nothing
, _riDuration = Nothing
, _riTags = Nothing
}
riState :: Lens' ReservedInstances (Maybe ReservedInstanceState)
riState = lens _riState (\ s a -> s{_riState = a});
riCurrencyCode :: Lens' ReservedInstances (Maybe CurrencyCodeValues)
riCurrencyCode = lens _riCurrencyCode (\ s a -> s{_riCurrencyCode = a});
riInstanceCount :: Lens' ReservedInstances (Maybe Int)
riInstanceCount = lens _riInstanceCount (\ s a -> s{_riInstanceCount = a});
riProductDescription :: Lens' ReservedInstances (Maybe RIProductDescription)
riProductDescription = lens _riProductDescription (\ s a -> s{_riProductDescription = a});
riStart :: Lens' ReservedInstances (Maybe UTCTime)
riStart = lens _riStart (\ s a -> s{_riStart = a}) . mapping _Time;
riInstanceType :: Lens' ReservedInstances (Maybe InstanceType)
riInstanceType = lens _riInstanceType (\ s a -> s{_riInstanceType = a});
riEnd :: Lens' ReservedInstances (Maybe UTCTime)
riEnd = lens _riEnd (\ s a -> s{_riEnd = a}) . mapping _Time;
riAvailabilityZone :: Lens' ReservedInstances (Maybe Text)
riAvailabilityZone = lens _riAvailabilityZone (\ s a -> s{_riAvailabilityZone = a});
riRecurringCharges :: Lens' ReservedInstances [RecurringCharge]
riRecurringCharges = lens _riRecurringCharges (\ s a -> s{_riRecurringCharges = a}) . _Default . _Coerce;
riOfferingType :: Lens' ReservedInstances (Maybe OfferingTypeValues)
riOfferingType = lens _riOfferingType (\ s a -> s{_riOfferingType = a});
riUsagePrice :: Lens' ReservedInstances (Maybe Double)
riUsagePrice = lens _riUsagePrice (\ s a -> s{_riUsagePrice = a});
riFixedPrice :: Lens' ReservedInstances (Maybe Double)
riFixedPrice = lens _riFixedPrice (\ s a -> s{_riFixedPrice = a});
riReservedInstancesId :: Lens' ReservedInstances (Maybe Text)
riReservedInstancesId = lens _riReservedInstancesId (\ s a -> s{_riReservedInstancesId = a});
riInstanceTenancy :: Lens' ReservedInstances (Maybe Tenancy)
riInstanceTenancy = lens _riInstanceTenancy (\ s a -> s{_riInstanceTenancy = a});
riDuration :: Lens' ReservedInstances (Maybe Integer)
riDuration = lens _riDuration (\ s a -> s{_riDuration = a});
riTags :: Lens' ReservedInstances [Tag]
riTags = lens _riTags (\ s a -> s{_riTags = a}) . _Default . _Coerce;
instance FromXML ReservedInstances where
parseXML x
= ReservedInstances' <$>
(x .@? "state") <*> (x .@? "currencyCode") <*>
(x .@? "instanceCount")
<*> (x .@? "productDescription")
<*> (x .@? "start")
<*> (x .@? "instanceType")
<*> (x .@? "end")
<*> (x .@? "availabilityZone")
<*>
(x .@? "recurringCharges" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "offeringType")
<*> (x .@? "usagePrice")
<*> (x .@? "fixedPrice")
<*> (x .@? "reservedInstancesId")
<*> (x .@? "instanceTenancy")
<*> (x .@? "duration")
<*>
(x .@? "tagSet" .!@ mempty >>=
may (parseXMLList "item"))
instance Hashable ReservedInstances
instance NFData ReservedInstances
data ReservedInstancesConfiguration = ReservedInstancesConfiguration'
{ _ricPlatform :: !(Maybe Text)
, _ricInstanceCount :: !(Maybe Int)
, _ricInstanceType :: !(Maybe InstanceType)
, _ricAvailabilityZone :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
reservedInstancesConfiguration
:: ReservedInstancesConfiguration
reservedInstancesConfiguration =
ReservedInstancesConfiguration'
{ _ricPlatform = Nothing
, _ricInstanceCount = Nothing
, _ricInstanceType = Nothing
, _ricAvailabilityZone = Nothing
}
ricPlatform :: Lens' ReservedInstancesConfiguration (Maybe Text)
ricPlatform = lens _ricPlatform (\ s a -> s{_ricPlatform = a});
ricInstanceCount :: Lens' ReservedInstancesConfiguration (Maybe Int)
ricInstanceCount = lens _ricInstanceCount (\ s a -> s{_ricInstanceCount = a});
ricInstanceType :: Lens' ReservedInstancesConfiguration (Maybe InstanceType)
ricInstanceType = lens _ricInstanceType (\ s a -> s{_ricInstanceType = a});
ricAvailabilityZone :: Lens' ReservedInstancesConfiguration (Maybe Text)
ricAvailabilityZone = lens _ricAvailabilityZone (\ s a -> s{_ricAvailabilityZone = a});
instance FromXML ReservedInstancesConfiguration where
parseXML x
= ReservedInstancesConfiguration' <$>
(x .@? "platform") <*> (x .@? "instanceCount") <*>
(x .@? "instanceType")
<*> (x .@? "availabilityZone")
instance Hashable ReservedInstancesConfiguration
instance NFData ReservedInstancesConfiguration
instance ToQuery ReservedInstancesConfiguration where
toQuery ReservedInstancesConfiguration'{..}
= mconcat
["Platform" =: _ricPlatform,
"InstanceCount" =: _ricInstanceCount,
"InstanceType" =: _ricInstanceType,
"AvailabilityZone" =: _ricAvailabilityZone]
newtype ReservedInstancesId = ReservedInstancesId'
{ _riiReservedInstancesId :: Maybe Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
reservedInstancesId
:: ReservedInstancesId
reservedInstancesId =
ReservedInstancesId'
{ _riiReservedInstancesId = Nothing
}
riiReservedInstancesId :: Lens' ReservedInstancesId (Maybe Text)
riiReservedInstancesId = lens _riiReservedInstancesId (\ s a -> s{_riiReservedInstancesId = a});
instance FromXML ReservedInstancesId where
parseXML x
= ReservedInstancesId' <$>
(x .@? "reservedInstancesId")
instance Hashable ReservedInstancesId
instance NFData ReservedInstancesId
data ReservedInstancesListing = ReservedInstancesListing'
{ _rilStatus :: !(Maybe ListingStatus)
, _rilClientToken :: !(Maybe Text)
, _rilUpdateDate :: !(Maybe ISO8601)
, _rilCreateDate :: !(Maybe ISO8601)
, _rilPriceSchedules :: !(Maybe [PriceSchedule])
, _rilStatusMessage :: !(Maybe Text)
, _rilReservedInstancesId :: !(Maybe Text)
, _rilTags :: !(Maybe [Tag])
, _rilInstanceCounts :: !(Maybe [InstanceCount])
, _rilReservedInstancesListingId :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
reservedInstancesListing
:: ReservedInstancesListing
reservedInstancesListing =
ReservedInstancesListing'
{ _rilStatus = Nothing
, _rilClientToken = Nothing
, _rilUpdateDate = Nothing
, _rilCreateDate = Nothing
, _rilPriceSchedules = Nothing
, _rilStatusMessage = Nothing
, _rilReservedInstancesId = Nothing
, _rilTags = Nothing
, _rilInstanceCounts = Nothing
, _rilReservedInstancesListingId = Nothing
}
rilStatus :: Lens' ReservedInstancesListing (Maybe ListingStatus)
rilStatus = lens _rilStatus (\ s a -> s{_rilStatus = a});
rilClientToken :: Lens' ReservedInstancesListing (Maybe Text)
rilClientToken = lens _rilClientToken (\ s a -> s{_rilClientToken = a});
rilUpdateDate :: Lens' ReservedInstancesListing (Maybe UTCTime)
rilUpdateDate = lens _rilUpdateDate (\ s a -> s{_rilUpdateDate = a}) . mapping _Time;
rilCreateDate :: Lens' ReservedInstancesListing (Maybe UTCTime)
rilCreateDate = lens _rilCreateDate (\ s a -> s{_rilCreateDate = a}) . mapping _Time;
rilPriceSchedules :: Lens' ReservedInstancesListing [PriceSchedule]
rilPriceSchedules = lens _rilPriceSchedules (\ s a -> s{_rilPriceSchedules = a}) . _Default . _Coerce;
rilStatusMessage :: Lens' ReservedInstancesListing (Maybe Text)
rilStatusMessage = lens _rilStatusMessage (\ s a -> s{_rilStatusMessage = a});
rilReservedInstancesId :: Lens' ReservedInstancesListing (Maybe Text)
rilReservedInstancesId = lens _rilReservedInstancesId (\ s a -> s{_rilReservedInstancesId = a});
rilTags :: Lens' ReservedInstancesListing [Tag]
rilTags = lens _rilTags (\ s a -> s{_rilTags = a}) . _Default . _Coerce;
rilInstanceCounts :: Lens' ReservedInstancesListing [InstanceCount]
rilInstanceCounts = lens _rilInstanceCounts (\ s a -> s{_rilInstanceCounts = a}) . _Default . _Coerce;
rilReservedInstancesListingId :: Lens' ReservedInstancesListing (Maybe Text)
rilReservedInstancesListingId = lens _rilReservedInstancesListingId (\ s a -> s{_rilReservedInstancesListingId = a});
instance FromXML ReservedInstancesListing where
parseXML x
= ReservedInstancesListing' <$>
(x .@? "status") <*> (x .@? "clientToken") <*>
(x .@? "updateDate")
<*> (x .@? "createDate")
<*>
(x .@? "priceSchedules" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "statusMessage")
<*> (x .@? "reservedInstancesId")
<*>
(x .@? "tagSet" .!@ mempty >>=
may (parseXMLList "item"))
<*>
(x .@? "instanceCounts" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "reservedInstancesListingId")
instance Hashable ReservedInstancesListing
instance NFData ReservedInstancesListing
data ReservedInstancesModification = ReservedInstancesModification'
{ _rimModificationResults :: !(Maybe [ReservedInstancesModificationResult])
, _rimStatus :: !(Maybe Text)
, _rimClientToken :: !(Maybe Text)
, _rimUpdateDate :: !(Maybe ISO8601)
, _rimCreateDate :: !(Maybe ISO8601)
, _rimEffectiveDate :: !(Maybe ISO8601)
, _rimStatusMessage :: !(Maybe Text)
, _rimReservedInstancesModificationId :: !(Maybe Text)
, _rimReservedInstancesIds :: !(Maybe [ReservedInstancesId])
} deriving (Eq,Read,Show,Data,Typeable,Generic)
reservedInstancesModification
:: ReservedInstancesModification
reservedInstancesModification =
ReservedInstancesModification'
{ _rimModificationResults = Nothing
, _rimStatus = Nothing
, _rimClientToken = Nothing
, _rimUpdateDate = Nothing
, _rimCreateDate = Nothing
, _rimEffectiveDate = Nothing
, _rimStatusMessage = Nothing
, _rimReservedInstancesModificationId = Nothing
, _rimReservedInstancesIds = Nothing
}
rimModificationResults :: Lens' ReservedInstancesModification [ReservedInstancesModificationResult]
rimModificationResults = lens _rimModificationResults (\ s a -> s{_rimModificationResults = a}) . _Default . _Coerce;
rimStatus :: Lens' ReservedInstancesModification (Maybe Text)
rimStatus = lens _rimStatus (\ s a -> s{_rimStatus = a});
rimClientToken :: Lens' ReservedInstancesModification (Maybe Text)
rimClientToken = lens _rimClientToken (\ s a -> s{_rimClientToken = a});
rimUpdateDate :: Lens' ReservedInstancesModification (Maybe UTCTime)
rimUpdateDate = lens _rimUpdateDate (\ s a -> s{_rimUpdateDate = a}) . mapping _Time;
rimCreateDate :: Lens' ReservedInstancesModification (Maybe UTCTime)
rimCreateDate = lens _rimCreateDate (\ s a -> s{_rimCreateDate = a}) . mapping _Time;
rimEffectiveDate :: Lens' ReservedInstancesModification (Maybe UTCTime)
rimEffectiveDate = lens _rimEffectiveDate (\ s a -> s{_rimEffectiveDate = a}) . mapping _Time;
rimStatusMessage :: Lens' ReservedInstancesModification (Maybe Text)
rimStatusMessage = lens _rimStatusMessage (\ s a -> s{_rimStatusMessage = a});
rimReservedInstancesModificationId :: Lens' ReservedInstancesModification (Maybe Text)
rimReservedInstancesModificationId = lens _rimReservedInstancesModificationId (\ s a -> s{_rimReservedInstancesModificationId = a});
rimReservedInstancesIds :: Lens' ReservedInstancesModification [ReservedInstancesId]
rimReservedInstancesIds = lens _rimReservedInstancesIds (\ s a -> s{_rimReservedInstancesIds = a}) . _Default . _Coerce;
instance FromXML ReservedInstancesModification where
parseXML x
= ReservedInstancesModification' <$>
(x .@? "modificationResultSet" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "status")
<*> (x .@? "clientToken")
<*> (x .@? "updateDate")
<*> (x .@? "createDate")
<*> (x .@? "effectiveDate")
<*> (x .@? "statusMessage")
<*> (x .@? "reservedInstancesModificationId")
<*>
(x .@? "reservedInstancesSet" .!@ mempty >>=
may (parseXMLList "item"))
instance Hashable ReservedInstancesModification
instance NFData ReservedInstancesModification
data ReservedInstancesModificationResult = ReservedInstancesModificationResult'
{ _rimrReservedInstancesId :: !(Maybe Text)
, _rimrTargetConfiguration :: !(Maybe ReservedInstancesConfiguration)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
reservedInstancesModificationResult
:: ReservedInstancesModificationResult
reservedInstancesModificationResult =
ReservedInstancesModificationResult'
{ _rimrReservedInstancesId = Nothing
, _rimrTargetConfiguration = Nothing
}
rimrReservedInstancesId :: Lens' ReservedInstancesModificationResult (Maybe Text)
rimrReservedInstancesId = lens _rimrReservedInstancesId (\ s a -> s{_rimrReservedInstancesId = a});
rimrTargetConfiguration :: Lens' ReservedInstancesModificationResult (Maybe ReservedInstancesConfiguration)
rimrTargetConfiguration = lens _rimrTargetConfiguration (\ s a -> s{_rimrTargetConfiguration = a});
instance FromXML ReservedInstancesModificationResult
where
parseXML x
= ReservedInstancesModificationResult' <$>
(x .@? "reservedInstancesId") <*>
(x .@? "targetConfiguration")
instance Hashable ReservedInstancesModificationResult
instance NFData ReservedInstancesModificationResult
data ReservedInstancesOffering = ReservedInstancesOffering'
{ _rioMarketplace :: !(Maybe Bool)
, _rioCurrencyCode :: !(Maybe CurrencyCodeValues)
, _rioProductDescription :: !(Maybe RIProductDescription)
, _rioInstanceType :: !(Maybe InstanceType)
, _rioAvailabilityZone :: !(Maybe Text)
, _rioPricingDetails :: !(Maybe [PricingDetail])
, _rioRecurringCharges :: !(Maybe [RecurringCharge])
, _rioOfferingType :: !(Maybe OfferingTypeValues)
, _rioUsagePrice :: !(Maybe Double)
, _rioFixedPrice :: !(Maybe Double)
, _rioInstanceTenancy :: !(Maybe Tenancy)
, _rioReservedInstancesOfferingId :: !(Maybe Text)
, _rioDuration :: !(Maybe Integer)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
reservedInstancesOffering
:: ReservedInstancesOffering
reservedInstancesOffering =
ReservedInstancesOffering'
{ _rioMarketplace = Nothing
, _rioCurrencyCode = Nothing
, _rioProductDescription = Nothing
, _rioInstanceType = Nothing
, _rioAvailabilityZone = Nothing
, _rioPricingDetails = Nothing
, _rioRecurringCharges = Nothing
, _rioOfferingType = Nothing
, _rioUsagePrice = Nothing
, _rioFixedPrice = Nothing
, _rioInstanceTenancy = Nothing
, _rioReservedInstancesOfferingId = Nothing
, _rioDuration = Nothing
}
rioMarketplace :: Lens' ReservedInstancesOffering (Maybe Bool)
rioMarketplace = lens _rioMarketplace (\ s a -> s{_rioMarketplace = a});
rioCurrencyCode :: Lens' ReservedInstancesOffering (Maybe CurrencyCodeValues)
rioCurrencyCode = lens _rioCurrencyCode (\ s a -> s{_rioCurrencyCode = a});
rioProductDescription :: Lens' ReservedInstancesOffering (Maybe RIProductDescription)
rioProductDescription = lens _rioProductDescription (\ s a -> s{_rioProductDescription = a});
rioInstanceType :: Lens' ReservedInstancesOffering (Maybe InstanceType)
rioInstanceType = lens _rioInstanceType (\ s a -> s{_rioInstanceType = a});
rioAvailabilityZone :: Lens' ReservedInstancesOffering (Maybe Text)
rioAvailabilityZone = lens _rioAvailabilityZone (\ s a -> s{_rioAvailabilityZone = a});
rioPricingDetails :: Lens' ReservedInstancesOffering [PricingDetail]
rioPricingDetails = lens _rioPricingDetails (\ s a -> s{_rioPricingDetails = a}) . _Default . _Coerce;
rioRecurringCharges :: Lens' ReservedInstancesOffering [RecurringCharge]
rioRecurringCharges = lens _rioRecurringCharges (\ s a -> s{_rioRecurringCharges = a}) . _Default . _Coerce;
rioOfferingType :: Lens' ReservedInstancesOffering (Maybe OfferingTypeValues)
rioOfferingType = lens _rioOfferingType (\ s a -> s{_rioOfferingType = a});
rioUsagePrice :: Lens' ReservedInstancesOffering (Maybe Double)
rioUsagePrice = lens _rioUsagePrice (\ s a -> s{_rioUsagePrice = a});
rioFixedPrice :: Lens' ReservedInstancesOffering (Maybe Double)
rioFixedPrice = lens _rioFixedPrice (\ s a -> s{_rioFixedPrice = a});
rioInstanceTenancy :: Lens' ReservedInstancesOffering (Maybe Tenancy)
rioInstanceTenancy = lens _rioInstanceTenancy (\ s a -> s{_rioInstanceTenancy = a});
rioReservedInstancesOfferingId :: Lens' ReservedInstancesOffering (Maybe Text)
rioReservedInstancesOfferingId = lens _rioReservedInstancesOfferingId (\ s a -> s{_rioReservedInstancesOfferingId = a});
rioDuration :: Lens' ReservedInstancesOffering (Maybe Integer)
rioDuration = lens _rioDuration (\ s a -> s{_rioDuration = a});
instance FromXML ReservedInstancesOffering where
parseXML x
= ReservedInstancesOffering' <$>
(x .@? "marketplace") <*> (x .@? "currencyCode") <*>
(x .@? "productDescription")
<*> (x .@? "instanceType")
<*> (x .@? "availabilityZone")
<*>
(x .@? "pricingDetailsSet" .!@ mempty >>=
may (parseXMLList "item"))
<*>
(x .@? "recurringCharges" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "offeringType")
<*> (x .@? "usagePrice")
<*> (x .@? "fixedPrice")
<*> (x .@? "instanceTenancy")
<*> (x .@? "reservedInstancesOfferingId")
<*> (x .@? "duration")
instance Hashable ReservedInstancesOffering
instance NFData ReservedInstancesOffering
data Route = Route'
{ _rVPCPeeringConnectionId :: !(Maybe Text)
, _rInstanceId :: !(Maybe Text)
, _rOrigin :: !(Maybe RouteOrigin)
, _rState :: !(Maybe RouteState)
, _rNatGatewayId :: !(Maybe Text)
, _rNetworkInterfaceId :: !(Maybe Text)
, _rGatewayId :: !(Maybe Text)
, _rInstanceOwnerId :: !(Maybe Text)
, _rDestinationPrefixListId :: !(Maybe Text)
, _rDestinationCIdRBlock :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
route
:: Route
route =
Route'
{ _rVPCPeeringConnectionId = Nothing
, _rInstanceId = Nothing
, _rOrigin = Nothing
, _rState = Nothing
, _rNatGatewayId = Nothing
, _rNetworkInterfaceId = Nothing
, _rGatewayId = Nothing
, _rInstanceOwnerId = Nothing
, _rDestinationPrefixListId = Nothing
, _rDestinationCIdRBlock = Nothing
}
rVPCPeeringConnectionId :: Lens' Route (Maybe Text)
rVPCPeeringConnectionId = lens _rVPCPeeringConnectionId (\ s a -> s{_rVPCPeeringConnectionId = a});
rInstanceId :: Lens' Route (Maybe Text)
rInstanceId = lens _rInstanceId (\ s a -> s{_rInstanceId = a});
rOrigin :: Lens' Route (Maybe RouteOrigin)
rOrigin = lens _rOrigin (\ s a -> s{_rOrigin = a});
rState :: Lens' Route (Maybe RouteState)
rState = lens _rState (\ s a -> s{_rState = a});
rNatGatewayId :: Lens' Route (Maybe Text)
rNatGatewayId = lens _rNatGatewayId (\ s a -> s{_rNatGatewayId = a});
rNetworkInterfaceId :: Lens' Route (Maybe Text)
rNetworkInterfaceId = lens _rNetworkInterfaceId (\ s a -> s{_rNetworkInterfaceId = a});
rGatewayId :: Lens' Route (Maybe Text)
rGatewayId = lens _rGatewayId (\ s a -> s{_rGatewayId = a});
rInstanceOwnerId :: Lens' Route (Maybe Text)
rInstanceOwnerId = lens _rInstanceOwnerId (\ s a -> s{_rInstanceOwnerId = a});
rDestinationPrefixListId :: Lens' Route (Maybe Text)
rDestinationPrefixListId = lens _rDestinationPrefixListId (\ s a -> s{_rDestinationPrefixListId = a});
rDestinationCIdRBlock :: Lens' Route (Maybe Text)
rDestinationCIdRBlock = lens _rDestinationCIdRBlock (\ s a -> s{_rDestinationCIdRBlock = a});
instance FromXML Route where
parseXML x
= Route' <$>
(x .@? "vpcPeeringConnectionId") <*>
(x .@? "instanceId")
<*> (x .@? "origin")
<*> (x .@? "state")
<*> (x .@? "natGatewayId")
<*> (x .@? "networkInterfaceId")
<*> (x .@? "gatewayId")
<*> (x .@? "instanceOwnerId")
<*> (x .@? "destinationPrefixListId")
<*> (x .@? "destinationCidrBlock")
instance Hashable Route
instance NFData Route
data RouteTable = RouteTable'
{ _rtRouteTableId :: !(Maybe Text)
, _rtRoutes :: !(Maybe [Route])
, _rtVPCId :: !(Maybe Text)
, _rtPropagatingVGWs :: !(Maybe [PropagatingVGW])
, _rtAssociations :: !(Maybe [RouteTableAssociation])
, _rtTags :: !(Maybe [Tag])
} deriving (Eq,Read,Show,Data,Typeable,Generic)
routeTable
:: RouteTable
routeTable =
RouteTable'
{ _rtRouteTableId = Nothing
, _rtRoutes = Nothing
, _rtVPCId = Nothing
, _rtPropagatingVGWs = Nothing
, _rtAssociations = Nothing
, _rtTags = Nothing
}
rtRouteTableId :: Lens' RouteTable (Maybe Text)
rtRouteTableId = lens _rtRouteTableId (\ s a -> s{_rtRouteTableId = a});
rtRoutes :: Lens' RouteTable [Route]
rtRoutes = lens _rtRoutes (\ s a -> s{_rtRoutes = a}) . _Default . _Coerce;
rtVPCId :: Lens' RouteTable (Maybe Text)
rtVPCId = lens _rtVPCId (\ s a -> s{_rtVPCId = a});
rtPropagatingVGWs :: Lens' RouteTable [PropagatingVGW]
rtPropagatingVGWs = lens _rtPropagatingVGWs (\ s a -> s{_rtPropagatingVGWs = a}) . _Default . _Coerce;
rtAssociations :: Lens' RouteTable [RouteTableAssociation]
rtAssociations = lens _rtAssociations (\ s a -> s{_rtAssociations = a}) . _Default . _Coerce;
rtTags :: Lens' RouteTable [Tag]
rtTags = lens _rtTags (\ s a -> s{_rtTags = a}) . _Default . _Coerce;
instance FromXML RouteTable where
parseXML x
= RouteTable' <$>
(x .@? "routeTableId") <*>
(x .@? "routeSet" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "vpcId")
<*>
(x .@? "propagatingVgwSet" .!@ mempty >>=
may (parseXMLList "item"))
<*>
(x .@? "associationSet" .!@ mempty >>=
may (parseXMLList "item"))
<*>
(x .@? "tagSet" .!@ mempty >>=
may (parseXMLList "item"))
instance Hashable RouteTable
instance NFData RouteTable
data RouteTableAssociation = RouteTableAssociation'
{ _rtaRouteTableId :: !(Maybe Text)
, _rtaRouteTableAssociationId :: !(Maybe Text)
, _rtaMain :: !(Maybe Bool)
, _rtaSubnetId :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
routeTableAssociation
:: RouteTableAssociation
routeTableAssociation =
RouteTableAssociation'
{ _rtaRouteTableId = Nothing
, _rtaRouteTableAssociationId = Nothing
, _rtaMain = Nothing
, _rtaSubnetId = Nothing
}
rtaRouteTableId :: Lens' RouteTableAssociation (Maybe Text)
rtaRouteTableId = lens _rtaRouteTableId (\ s a -> s{_rtaRouteTableId = a});
rtaRouteTableAssociationId :: Lens' RouteTableAssociation (Maybe Text)
rtaRouteTableAssociationId = lens _rtaRouteTableAssociationId (\ s a -> s{_rtaRouteTableAssociationId = a});
rtaMain :: Lens' RouteTableAssociation (Maybe Bool)
rtaMain = lens _rtaMain (\ s a -> s{_rtaMain = a});
rtaSubnetId :: Lens' RouteTableAssociation (Maybe Text)
rtaSubnetId = lens _rtaSubnetId (\ s a -> s{_rtaSubnetId = a});
instance FromXML RouteTableAssociation where
parseXML x
= RouteTableAssociation' <$>
(x .@? "routeTableId") <*>
(x .@? "routeTableAssociationId")
<*> (x .@? "main")
<*> (x .@? "subnetId")
instance Hashable RouteTableAssociation
instance NFData RouteTableAssociation
newtype RunInstancesMonitoringEnabled = RunInstancesMonitoringEnabled'
{ _rimeEnabled :: Bool
} deriving (Eq,Read,Show,Data,Typeable,Generic)
runInstancesMonitoringEnabled
:: Bool
-> RunInstancesMonitoringEnabled
runInstancesMonitoringEnabled pEnabled_ =
RunInstancesMonitoringEnabled'
{ _rimeEnabled = pEnabled_
}
rimeEnabled :: Lens' RunInstancesMonitoringEnabled Bool
rimeEnabled = lens _rimeEnabled (\ s a -> s{_rimeEnabled = a});
instance FromXML RunInstancesMonitoringEnabled where
parseXML x
= RunInstancesMonitoringEnabled' <$> (x .@ "enabled")
instance Hashable RunInstancesMonitoringEnabled
instance NFData RunInstancesMonitoringEnabled
instance ToQuery RunInstancesMonitoringEnabled where
toQuery RunInstancesMonitoringEnabled'{..}
= mconcat ["Enabled" =: _rimeEnabled]
data S3Storage = S3Storage'
{ _ssPrefix :: !(Maybe Text)
, _ssUploadPolicy :: !(Maybe Base64)
, _ssBucket :: !(Maybe Text)
, _ssUploadPolicySignature :: !(Maybe Text)
, _ssAWSAccessKeyId :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
s3Storage
:: S3Storage
s3Storage =
S3Storage'
{ _ssPrefix = Nothing
, _ssUploadPolicy = Nothing
, _ssBucket = Nothing
, _ssUploadPolicySignature = Nothing
, _ssAWSAccessKeyId = Nothing
}
ssPrefix :: Lens' S3Storage (Maybe Text)
ssPrefix = lens _ssPrefix (\ s a -> s{_ssPrefix = a});
ssUploadPolicy :: Lens' S3Storage (Maybe ByteString)
ssUploadPolicy = lens _ssUploadPolicy (\ s a -> s{_ssUploadPolicy = a}) . mapping _Base64;
ssBucket :: Lens' S3Storage (Maybe Text)
ssBucket = lens _ssBucket (\ s a -> s{_ssBucket = a});
ssUploadPolicySignature :: Lens' S3Storage (Maybe Text)
ssUploadPolicySignature = lens _ssUploadPolicySignature (\ s a -> s{_ssUploadPolicySignature = a});
ssAWSAccessKeyId :: Lens' S3Storage (Maybe Text)
ssAWSAccessKeyId = lens _ssAWSAccessKeyId (\ s a -> s{_ssAWSAccessKeyId = a});
instance FromXML S3Storage where
parseXML x
= S3Storage' <$>
(x .@? "prefix") <*> (x .@? "uploadPolicy") <*>
(x .@? "bucket")
<*> (x .@? "uploadPolicySignature")
<*> (x .@? "AWSAccessKeyId")
instance Hashable S3Storage
instance NFData S3Storage
instance ToQuery S3Storage where
toQuery S3Storage'{..}
= mconcat
["Prefix" =: _ssPrefix,
"UploadPolicy" =: _ssUploadPolicy,
"Bucket" =: _ssBucket,
"UploadPolicySignature" =: _ssUploadPolicySignature,
"AWSAccessKeyId" =: _ssAWSAccessKeyId]
data ScheduledInstance = ScheduledInstance'
{ _siPreviousSlotEndTime :: !(Maybe ISO8601)
, _siPlatform :: !(Maybe Text)
, _siTermStartDate :: !(Maybe ISO8601)
, _siInstanceCount :: !(Maybe Int)
, _siScheduledInstanceId :: !(Maybe Text)
, _siHourlyPrice :: !(Maybe Text)
, _siCreateDate :: !(Maybe ISO8601)
, _siSlotDurationInHours :: !(Maybe Int)
, _siTotalScheduledInstanceHours :: !(Maybe Int)
, _siInstanceType :: !(Maybe Text)
, _siRecurrence :: !(Maybe ScheduledInstanceRecurrence)
, _siAvailabilityZone :: !(Maybe Text)
, _siTermEndDate :: !(Maybe ISO8601)
, _siNextSlotStartTime :: !(Maybe ISO8601)
, _siNetworkPlatform :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
scheduledInstance
:: ScheduledInstance
scheduledInstance =
ScheduledInstance'
{ _siPreviousSlotEndTime = Nothing
, _siPlatform = Nothing
, _siTermStartDate = Nothing
, _siInstanceCount = Nothing
, _siScheduledInstanceId = Nothing
, _siHourlyPrice = Nothing
, _siCreateDate = Nothing
, _siSlotDurationInHours = Nothing
, _siTotalScheduledInstanceHours = Nothing
, _siInstanceType = Nothing
, _siRecurrence = Nothing
, _siAvailabilityZone = Nothing
, _siTermEndDate = Nothing
, _siNextSlotStartTime = Nothing
, _siNetworkPlatform = Nothing
}
siPreviousSlotEndTime :: Lens' ScheduledInstance (Maybe UTCTime)
siPreviousSlotEndTime = lens _siPreviousSlotEndTime (\ s a -> s{_siPreviousSlotEndTime = a}) . mapping _Time;
siPlatform :: Lens' ScheduledInstance (Maybe Text)
siPlatform = lens _siPlatform (\ s a -> s{_siPlatform = a});
siTermStartDate :: Lens' ScheduledInstance (Maybe UTCTime)
siTermStartDate = lens _siTermStartDate (\ s a -> s{_siTermStartDate = a}) . mapping _Time;
siInstanceCount :: Lens' ScheduledInstance (Maybe Int)
siInstanceCount = lens _siInstanceCount (\ s a -> s{_siInstanceCount = a});
siScheduledInstanceId :: Lens' ScheduledInstance (Maybe Text)
siScheduledInstanceId = lens _siScheduledInstanceId (\ s a -> s{_siScheduledInstanceId = a});
siHourlyPrice :: Lens' ScheduledInstance (Maybe Text)
siHourlyPrice = lens _siHourlyPrice (\ s a -> s{_siHourlyPrice = a});
siCreateDate :: Lens' ScheduledInstance (Maybe UTCTime)
siCreateDate = lens _siCreateDate (\ s a -> s{_siCreateDate = a}) . mapping _Time;
siSlotDurationInHours :: Lens' ScheduledInstance (Maybe Int)
siSlotDurationInHours = lens _siSlotDurationInHours (\ s a -> s{_siSlotDurationInHours = a});
siTotalScheduledInstanceHours :: Lens' ScheduledInstance (Maybe Int)
siTotalScheduledInstanceHours = lens _siTotalScheduledInstanceHours (\ s a -> s{_siTotalScheduledInstanceHours = a});
siInstanceType :: Lens' ScheduledInstance (Maybe Text)
siInstanceType = lens _siInstanceType (\ s a -> s{_siInstanceType = a});
siRecurrence :: Lens' ScheduledInstance (Maybe ScheduledInstanceRecurrence)
siRecurrence = lens _siRecurrence (\ s a -> s{_siRecurrence = a});
siAvailabilityZone :: Lens' ScheduledInstance (Maybe Text)
siAvailabilityZone = lens _siAvailabilityZone (\ s a -> s{_siAvailabilityZone = a});
siTermEndDate :: Lens' ScheduledInstance (Maybe UTCTime)
siTermEndDate = lens _siTermEndDate (\ s a -> s{_siTermEndDate = a}) . mapping _Time;
siNextSlotStartTime :: Lens' ScheduledInstance (Maybe UTCTime)
siNextSlotStartTime = lens _siNextSlotStartTime (\ s a -> s{_siNextSlotStartTime = a}) . mapping _Time;
siNetworkPlatform :: Lens' ScheduledInstance (Maybe Text)
siNetworkPlatform = lens _siNetworkPlatform (\ s a -> s{_siNetworkPlatform = a});
instance FromXML ScheduledInstance where
parseXML x
= ScheduledInstance' <$>
(x .@? "previousSlotEndTime") <*> (x .@? "platform")
<*> (x .@? "termStartDate")
<*> (x .@? "instanceCount")
<*> (x .@? "scheduledInstanceId")
<*> (x .@? "hourlyPrice")
<*> (x .@? "createDate")
<*> (x .@? "slotDurationInHours")
<*> (x .@? "totalScheduledInstanceHours")
<*> (x .@? "instanceType")
<*> (x .@? "recurrence")
<*> (x .@? "availabilityZone")
<*> (x .@? "termEndDate")
<*> (x .@? "nextSlotStartTime")
<*> (x .@? "networkPlatform")
instance Hashable ScheduledInstance
instance NFData ScheduledInstance
data ScheduledInstanceAvailability = ScheduledInstanceAvailability'
{ _siaMaxTermDurationInDays :: !(Maybe Int)
, _siaPlatform :: !(Maybe Text)
, _siaPurchaseToken :: !(Maybe Text)
, _siaHourlyPrice :: !(Maybe Text)
, _siaAvailableInstanceCount :: !(Maybe Int)
, _siaSlotDurationInHours :: !(Maybe Int)
, _siaTotalScheduledInstanceHours :: !(Maybe Int)
, _siaInstanceType :: !(Maybe Text)
, _siaRecurrence :: !(Maybe ScheduledInstanceRecurrence)
, _siaAvailabilityZone :: !(Maybe Text)
, _siaMinTermDurationInDays :: !(Maybe Int)
, _siaFirstSlotStartTime :: !(Maybe ISO8601)
, _siaNetworkPlatform :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
scheduledInstanceAvailability
:: ScheduledInstanceAvailability
scheduledInstanceAvailability =
ScheduledInstanceAvailability'
{ _siaMaxTermDurationInDays = Nothing
, _siaPlatform = Nothing
, _siaPurchaseToken = Nothing
, _siaHourlyPrice = Nothing
, _siaAvailableInstanceCount = Nothing
, _siaSlotDurationInHours = Nothing
, _siaTotalScheduledInstanceHours = Nothing
, _siaInstanceType = Nothing
, _siaRecurrence = Nothing
, _siaAvailabilityZone = Nothing
, _siaMinTermDurationInDays = Nothing
, _siaFirstSlotStartTime = Nothing
, _siaNetworkPlatform = Nothing
}
siaMaxTermDurationInDays :: Lens' ScheduledInstanceAvailability (Maybe Int)
siaMaxTermDurationInDays = lens _siaMaxTermDurationInDays (\ s a -> s{_siaMaxTermDurationInDays = a});
siaPlatform :: Lens' ScheduledInstanceAvailability (Maybe Text)
siaPlatform = lens _siaPlatform (\ s a -> s{_siaPlatform = a});
siaPurchaseToken :: Lens' ScheduledInstanceAvailability (Maybe Text)
siaPurchaseToken = lens _siaPurchaseToken (\ s a -> s{_siaPurchaseToken = a});
siaHourlyPrice :: Lens' ScheduledInstanceAvailability (Maybe Text)
siaHourlyPrice = lens _siaHourlyPrice (\ s a -> s{_siaHourlyPrice = a});
siaAvailableInstanceCount :: Lens' ScheduledInstanceAvailability (Maybe Int)
siaAvailableInstanceCount = lens _siaAvailableInstanceCount (\ s a -> s{_siaAvailableInstanceCount = a});
siaSlotDurationInHours :: Lens' ScheduledInstanceAvailability (Maybe Int)
siaSlotDurationInHours = lens _siaSlotDurationInHours (\ s a -> s{_siaSlotDurationInHours = a});
siaTotalScheduledInstanceHours :: Lens' ScheduledInstanceAvailability (Maybe Int)
siaTotalScheduledInstanceHours = lens _siaTotalScheduledInstanceHours (\ s a -> s{_siaTotalScheduledInstanceHours = a});
siaInstanceType :: Lens' ScheduledInstanceAvailability (Maybe Text)
siaInstanceType = lens _siaInstanceType (\ s a -> s{_siaInstanceType = a});
siaRecurrence :: Lens' ScheduledInstanceAvailability (Maybe ScheduledInstanceRecurrence)
siaRecurrence = lens _siaRecurrence (\ s a -> s{_siaRecurrence = a});
siaAvailabilityZone :: Lens' ScheduledInstanceAvailability (Maybe Text)
siaAvailabilityZone = lens _siaAvailabilityZone (\ s a -> s{_siaAvailabilityZone = a});
siaMinTermDurationInDays :: Lens' ScheduledInstanceAvailability (Maybe Int)
siaMinTermDurationInDays = lens _siaMinTermDurationInDays (\ s a -> s{_siaMinTermDurationInDays = a});
siaFirstSlotStartTime :: Lens' ScheduledInstanceAvailability (Maybe UTCTime)
siaFirstSlotStartTime = lens _siaFirstSlotStartTime (\ s a -> s{_siaFirstSlotStartTime = a}) . mapping _Time;
siaNetworkPlatform :: Lens' ScheduledInstanceAvailability (Maybe Text)
siaNetworkPlatform = lens _siaNetworkPlatform (\ s a -> s{_siaNetworkPlatform = a});
instance FromXML ScheduledInstanceAvailability where
parseXML x
= ScheduledInstanceAvailability' <$>
(x .@? "maxTermDurationInDays") <*>
(x .@? "platform")
<*> (x .@? "purchaseToken")
<*> (x .@? "hourlyPrice")
<*> (x .@? "availableInstanceCount")
<*> (x .@? "slotDurationInHours")
<*> (x .@? "totalScheduledInstanceHours")
<*> (x .@? "instanceType")
<*> (x .@? "recurrence")
<*> (x .@? "availabilityZone")
<*> (x .@? "minTermDurationInDays")
<*> (x .@? "firstSlotStartTime")
<*> (x .@? "networkPlatform")
instance Hashable ScheduledInstanceAvailability
instance NFData ScheduledInstanceAvailability
data ScheduledInstanceRecurrence = ScheduledInstanceRecurrence'
{ _sirFrequency :: !(Maybe Text)
, _sirOccurrenceRelativeToEnd :: !(Maybe Bool)
, _sirOccurrenceUnit :: !(Maybe Text)
, _sirInterval :: !(Maybe Int)
, _sirOccurrenceDaySet :: !(Maybe [Int])
} deriving (Eq,Read,Show,Data,Typeable,Generic)
scheduledInstanceRecurrence
:: ScheduledInstanceRecurrence
scheduledInstanceRecurrence =
ScheduledInstanceRecurrence'
{ _sirFrequency = Nothing
, _sirOccurrenceRelativeToEnd = Nothing
, _sirOccurrenceUnit = Nothing
, _sirInterval = Nothing
, _sirOccurrenceDaySet = Nothing
}
sirFrequency :: Lens' ScheduledInstanceRecurrence (Maybe Text)
sirFrequency = lens _sirFrequency (\ s a -> s{_sirFrequency = a});
sirOccurrenceRelativeToEnd :: Lens' ScheduledInstanceRecurrence (Maybe Bool)
sirOccurrenceRelativeToEnd = lens _sirOccurrenceRelativeToEnd (\ s a -> s{_sirOccurrenceRelativeToEnd = a});
sirOccurrenceUnit :: Lens' ScheduledInstanceRecurrence (Maybe Text)
sirOccurrenceUnit = lens _sirOccurrenceUnit (\ s a -> s{_sirOccurrenceUnit = a});
sirInterval :: Lens' ScheduledInstanceRecurrence (Maybe Int)
sirInterval = lens _sirInterval (\ s a -> s{_sirInterval = a});
sirOccurrenceDaySet :: Lens' ScheduledInstanceRecurrence [Int]
sirOccurrenceDaySet = lens _sirOccurrenceDaySet (\ s a -> s{_sirOccurrenceDaySet = a}) . _Default . _Coerce;
instance FromXML ScheduledInstanceRecurrence where
parseXML x
= ScheduledInstanceRecurrence' <$>
(x .@? "frequency") <*>
(x .@? "occurrenceRelativeToEnd")
<*> (x .@? "occurrenceUnit")
<*> (x .@? "interval")
<*>
(x .@? "occurrenceDaySet" .!@ mempty >>=
may (parseXMLList "item"))
instance Hashable ScheduledInstanceRecurrence
instance NFData ScheduledInstanceRecurrence
data ScheduledInstanceRecurrenceRequest = ScheduledInstanceRecurrenceRequest'
{ _sirrFrequency :: !(Maybe Text)
, _sirrOccurrenceRelativeToEnd :: !(Maybe Bool)
, _sirrOccurrenceDays :: !(Maybe [Int])
, _sirrOccurrenceUnit :: !(Maybe Text)
, _sirrInterval :: !(Maybe Int)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
scheduledInstanceRecurrenceRequest
:: ScheduledInstanceRecurrenceRequest
scheduledInstanceRecurrenceRequest =
ScheduledInstanceRecurrenceRequest'
{ _sirrFrequency = Nothing
, _sirrOccurrenceRelativeToEnd = Nothing
, _sirrOccurrenceDays = Nothing
, _sirrOccurrenceUnit = Nothing
, _sirrInterval = Nothing
}
sirrFrequency :: Lens' ScheduledInstanceRecurrenceRequest (Maybe Text)
sirrFrequency = lens _sirrFrequency (\ s a -> s{_sirrFrequency = a});
sirrOccurrenceRelativeToEnd :: Lens' ScheduledInstanceRecurrenceRequest (Maybe Bool)
sirrOccurrenceRelativeToEnd = lens _sirrOccurrenceRelativeToEnd (\ s a -> s{_sirrOccurrenceRelativeToEnd = a});
sirrOccurrenceDays :: Lens' ScheduledInstanceRecurrenceRequest [Int]
sirrOccurrenceDays = lens _sirrOccurrenceDays (\ s a -> s{_sirrOccurrenceDays = a}) . _Default . _Coerce;
sirrOccurrenceUnit :: Lens' ScheduledInstanceRecurrenceRequest (Maybe Text)
sirrOccurrenceUnit = lens _sirrOccurrenceUnit (\ s a -> s{_sirrOccurrenceUnit = a});
sirrInterval :: Lens' ScheduledInstanceRecurrenceRequest (Maybe Int)
sirrInterval = lens _sirrInterval (\ s a -> s{_sirrInterval = a});
instance Hashable ScheduledInstanceRecurrenceRequest
instance NFData ScheduledInstanceRecurrenceRequest
instance ToQuery ScheduledInstanceRecurrenceRequest
where
toQuery ScheduledInstanceRecurrenceRequest'{..}
= mconcat
["Frequency" =: _sirrFrequency,
"OccurrenceRelativeToEnd" =:
_sirrOccurrenceRelativeToEnd,
toQuery
(toQueryList "OccurrenceDay" <$>
_sirrOccurrenceDays),
"OccurrenceUnit" =: _sirrOccurrenceUnit,
"Interval" =: _sirrInterval]
data ScheduledInstancesBlockDeviceMapping = ScheduledInstancesBlockDeviceMapping'
{ _sibdmVirtualName :: !(Maybe Text)
, _sibdmNoDevice :: !(Maybe Text)
, _sibdmEBS :: !(Maybe ScheduledInstancesEBS)
, _sibdmDeviceName :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
scheduledInstancesBlockDeviceMapping
:: ScheduledInstancesBlockDeviceMapping
scheduledInstancesBlockDeviceMapping =
ScheduledInstancesBlockDeviceMapping'
{ _sibdmVirtualName = Nothing
, _sibdmNoDevice = Nothing
, _sibdmEBS = Nothing
, _sibdmDeviceName = Nothing
}
sibdmVirtualName :: Lens' ScheduledInstancesBlockDeviceMapping (Maybe Text)
sibdmVirtualName = lens _sibdmVirtualName (\ s a -> s{_sibdmVirtualName = a});
sibdmNoDevice :: Lens' ScheduledInstancesBlockDeviceMapping (Maybe Text)
sibdmNoDevice = lens _sibdmNoDevice (\ s a -> s{_sibdmNoDevice = a});
sibdmEBS :: Lens' ScheduledInstancesBlockDeviceMapping (Maybe ScheduledInstancesEBS)
sibdmEBS = lens _sibdmEBS (\ s a -> s{_sibdmEBS = a});
sibdmDeviceName :: Lens' ScheduledInstancesBlockDeviceMapping (Maybe Text)
sibdmDeviceName = lens _sibdmDeviceName (\ s a -> s{_sibdmDeviceName = a});
instance Hashable
ScheduledInstancesBlockDeviceMapping
instance NFData ScheduledInstancesBlockDeviceMapping
instance ToQuery ScheduledInstancesBlockDeviceMapping
where
toQuery ScheduledInstancesBlockDeviceMapping'{..}
= mconcat
["VirtualName" =: _sibdmVirtualName,
"NoDevice" =: _sibdmNoDevice, "Ebs" =: _sibdmEBS,
"DeviceName" =: _sibdmDeviceName]
data ScheduledInstancesEBS = ScheduledInstancesEBS'
{ _sieDeleteOnTermination :: !(Maybe Bool)
, _sieVolumeSize :: !(Maybe Int)
, _sieIOPS :: !(Maybe Int)
, _sieEncrypted :: !(Maybe Bool)
, _sieVolumeType :: !(Maybe Text)
, _sieSnapshotId :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
scheduledInstancesEBS
:: ScheduledInstancesEBS
scheduledInstancesEBS =
ScheduledInstancesEBS'
{ _sieDeleteOnTermination = Nothing
, _sieVolumeSize = Nothing
, _sieIOPS = Nothing
, _sieEncrypted = Nothing
, _sieVolumeType = Nothing
, _sieSnapshotId = Nothing
}
sieDeleteOnTermination :: Lens' ScheduledInstancesEBS (Maybe Bool)
sieDeleteOnTermination = lens _sieDeleteOnTermination (\ s a -> s{_sieDeleteOnTermination = a});
sieVolumeSize :: Lens' ScheduledInstancesEBS (Maybe Int)
sieVolumeSize = lens _sieVolumeSize (\ s a -> s{_sieVolumeSize = a});
sieIOPS :: Lens' ScheduledInstancesEBS (Maybe Int)
sieIOPS = lens _sieIOPS (\ s a -> s{_sieIOPS = a});
sieEncrypted :: Lens' ScheduledInstancesEBS (Maybe Bool)
sieEncrypted = lens _sieEncrypted (\ s a -> s{_sieEncrypted = a});
sieVolumeType :: Lens' ScheduledInstancesEBS (Maybe Text)
sieVolumeType = lens _sieVolumeType (\ s a -> s{_sieVolumeType = a});
sieSnapshotId :: Lens' ScheduledInstancesEBS (Maybe Text)
sieSnapshotId = lens _sieSnapshotId (\ s a -> s{_sieSnapshotId = a});
instance Hashable ScheduledInstancesEBS
instance NFData ScheduledInstancesEBS
instance ToQuery ScheduledInstancesEBS where
toQuery ScheduledInstancesEBS'{..}
= mconcat
["DeleteOnTermination" =: _sieDeleteOnTermination,
"VolumeSize" =: _sieVolumeSize, "Iops" =: _sieIOPS,
"Encrypted" =: _sieEncrypted,
"VolumeType" =: _sieVolumeType,
"SnapshotId" =: _sieSnapshotId]
data ScheduledInstancesIAMInstanceProfile = ScheduledInstancesIAMInstanceProfile'
{ _siiapARN :: !(Maybe Text)
, _siiapName :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
scheduledInstancesIAMInstanceProfile
:: ScheduledInstancesIAMInstanceProfile
scheduledInstancesIAMInstanceProfile =
ScheduledInstancesIAMInstanceProfile'
{ _siiapARN = Nothing
, _siiapName = Nothing
}
siiapARN :: Lens' ScheduledInstancesIAMInstanceProfile (Maybe Text)
siiapARN = lens _siiapARN (\ s a -> s{_siiapARN = a});
siiapName :: Lens' ScheduledInstancesIAMInstanceProfile (Maybe Text)
siiapName = lens _siiapName (\ s a -> s{_siiapName = a});
instance Hashable
ScheduledInstancesIAMInstanceProfile
instance NFData ScheduledInstancesIAMInstanceProfile
instance ToQuery ScheduledInstancesIAMInstanceProfile
where
toQuery ScheduledInstancesIAMInstanceProfile'{..}
= mconcat ["Arn" =: _siiapARN, "Name" =: _siiapName]
data ScheduledInstancesLaunchSpecification = ScheduledInstancesLaunchSpecification'
{ _silsSecurityGroupIds :: !(Maybe [Text])
, _silsKeyName :: !(Maybe Text)
, _silsNetworkInterfaces :: !(Maybe [ScheduledInstancesNetworkInterface])
, _silsRAMDiskId :: !(Maybe Text)
, _silsSubnetId :: !(Maybe Text)
, _silsKernelId :: !(Maybe Text)
, _silsInstanceType :: !(Maybe Text)
, _silsEBSOptimized :: !(Maybe Bool)
, _silsUserData :: !(Maybe Text)
, _silsMonitoring :: !(Maybe ScheduledInstancesMonitoring)
, _silsIAMInstanceProfile :: !(Maybe ScheduledInstancesIAMInstanceProfile)
, _silsBlockDeviceMappings :: !(Maybe [ScheduledInstancesBlockDeviceMapping])
, _silsPlacement :: !(Maybe ScheduledInstancesPlacement)
, _silsImageId :: !Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
scheduledInstancesLaunchSpecification
:: Text
-> ScheduledInstancesLaunchSpecification
scheduledInstancesLaunchSpecification pImageId_ =
ScheduledInstancesLaunchSpecification'
{ _silsSecurityGroupIds = Nothing
, _silsKeyName = Nothing
, _silsNetworkInterfaces = Nothing
, _silsRAMDiskId = Nothing
, _silsSubnetId = Nothing
, _silsKernelId = Nothing
, _silsInstanceType = Nothing
, _silsEBSOptimized = Nothing
, _silsUserData = Nothing
, _silsMonitoring = Nothing
, _silsIAMInstanceProfile = Nothing
, _silsBlockDeviceMappings = Nothing
, _silsPlacement = Nothing
, _silsImageId = pImageId_
}
silsSecurityGroupIds :: Lens' ScheduledInstancesLaunchSpecification [Text]
silsSecurityGroupIds = lens _silsSecurityGroupIds (\ s a -> s{_silsSecurityGroupIds = a}) . _Default . _Coerce;
silsKeyName :: Lens' ScheduledInstancesLaunchSpecification (Maybe Text)
silsKeyName = lens _silsKeyName (\ s a -> s{_silsKeyName = a});
silsNetworkInterfaces :: Lens' ScheduledInstancesLaunchSpecification [ScheduledInstancesNetworkInterface]
silsNetworkInterfaces = lens _silsNetworkInterfaces (\ s a -> s{_silsNetworkInterfaces = a}) . _Default . _Coerce;
silsRAMDiskId :: Lens' ScheduledInstancesLaunchSpecification (Maybe Text)
silsRAMDiskId = lens _silsRAMDiskId (\ s a -> s{_silsRAMDiskId = a});
silsSubnetId :: Lens' ScheduledInstancesLaunchSpecification (Maybe Text)
silsSubnetId = lens _silsSubnetId (\ s a -> s{_silsSubnetId = a});
silsKernelId :: Lens' ScheduledInstancesLaunchSpecification (Maybe Text)
silsKernelId = lens _silsKernelId (\ s a -> s{_silsKernelId = a});
silsInstanceType :: Lens' ScheduledInstancesLaunchSpecification (Maybe Text)
silsInstanceType = lens _silsInstanceType (\ s a -> s{_silsInstanceType = a});
silsEBSOptimized :: Lens' ScheduledInstancesLaunchSpecification (Maybe Bool)
silsEBSOptimized = lens _silsEBSOptimized (\ s a -> s{_silsEBSOptimized = a});
silsUserData :: Lens' ScheduledInstancesLaunchSpecification (Maybe Text)
silsUserData = lens _silsUserData (\ s a -> s{_silsUserData = a});
silsMonitoring :: Lens' ScheduledInstancesLaunchSpecification (Maybe ScheduledInstancesMonitoring)
silsMonitoring = lens _silsMonitoring (\ s a -> s{_silsMonitoring = a});
silsIAMInstanceProfile :: Lens' ScheduledInstancesLaunchSpecification (Maybe ScheduledInstancesIAMInstanceProfile)
silsIAMInstanceProfile = lens _silsIAMInstanceProfile (\ s a -> s{_silsIAMInstanceProfile = a});
silsBlockDeviceMappings :: Lens' ScheduledInstancesLaunchSpecification [ScheduledInstancesBlockDeviceMapping]
silsBlockDeviceMappings = lens _silsBlockDeviceMappings (\ s a -> s{_silsBlockDeviceMappings = a}) . _Default . _Coerce;
silsPlacement :: Lens' ScheduledInstancesLaunchSpecification (Maybe ScheduledInstancesPlacement)
silsPlacement = lens _silsPlacement (\ s a -> s{_silsPlacement = a});
silsImageId :: Lens' ScheduledInstancesLaunchSpecification Text
silsImageId = lens _silsImageId (\ s a -> s{_silsImageId = a});
instance Hashable
ScheduledInstancesLaunchSpecification
instance NFData ScheduledInstancesLaunchSpecification
instance ToQuery
ScheduledInstancesLaunchSpecification where
toQuery ScheduledInstancesLaunchSpecification'{..}
= mconcat
[toQuery
(toQueryList "SecurityGroupId" <$>
_silsSecurityGroupIds),
"KeyName" =: _silsKeyName,
toQuery
(toQueryList "NetworkInterface" <$>
_silsNetworkInterfaces),
"RamdiskId" =: _silsRAMDiskId,
"SubnetId" =: _silsSubnetId,
"KernelId" =: _silsKernelId,
"InstanceType" =: _silsInstanceType,
"EbsOptimized" =: _silsEBSOptimized,
"UserData" =: _silsUserData,
"Monitoring" =: _silsMonitoring,
"IamInstanceProfile" =: _silsIAMInstanceProfile,
toQuery
(toQueryList "BlockDeviceMapping" <$>
_silsBlockDeviceMappings),
"Placement" =: _silsPlacement,
"ImageId" =: _silsImageId]
newtype ScheduledInstancesMonitoring = ScheduledInstancesMonitoring'
{ _simEnabled :: Maybe Bool
} deriving (Eq,Read,Show,Data,Typeable,Generic)
scheduledInstancesMonitoring
:: ScheduledInstancesMonitoring
scheduledInstancesMonitoring =
ScheduledInstancesMonitoring'
{ _simEnabled = Nothing
}
simEnabled :: Lens' ScheduledInstancesMonitoring (Maybe Bool)
simEnabled = lens _simEnabled (\ s a -> s{_simEnabled = a});
instance Hashable ScheduledInstancesMonitoring
instance NFData ScheduledInstancesMonitoring
instance ToQuery ScheduledInstancesMonitoring where
toQuery ScheduledInstancesMonitoring'{..}
= mconcat ["Enabled" =: _simEnabled]
data ScheduledInstancesNetworkInterface = ScheduledInstancesNetworkInterface'
{ _siniGroups :: !(Maybe [Text])
, _siniDeleteOnTermination :: !(Maybe Bool)
, _siniAssociatePublicIPAddress :: !(Maybe Bool)
, _siniPrivateIPAddressConfigs :: !(Maybe [ScheduledInstancesPrivateIPAddressConfig])
, _siniNetworkInterfaceId :: !(Maybe Text)
, _siniSubnetId :: !(Maybe Text)
, _siniPrivateIPAddress :: !(Maybe Text)
, _siniSecondaryPrivateIPAddressCount :: !(Maybe Int)
, _siniDescription :: !(Maybe Text)
, _siniDeviceIndex :: !(Maybe Int)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
scheduledInstancesNetworkInterface
:: ScheduledInstancesNetworkInterface
scheduledInstancesNetworkInterface =
ScheduledInstancesNetworkInterface'
{ _siniGroups = Nothing
, _siniDeleteOnTermination = Nothing
, _siniAssociatePublicIPAddress = Nothing
, _siniPrivateIPAddressConfigs = Nothing
, _siniNetworkInterfaceId = Nothing
, _siniSubnetId = Nothing
, _siniPrivateIPAddress = Nothing
, _siniSecondaryPrivateIPAddressCount = Nothing
, _siniDescription = Nothing
, _siniDeviceIndex = Nothing
}
siniGroups :: Lens' ScheduledInstancesNetworkInterface [Text]
siniGroups = lens _siniGroups (\ s a -> s{_siniGroups = a}) . _Default . _Coerce;
siniDeleteOnTermination :: Lens' ScheduledInstancesNetworkInterface (Maybe Bool)
siniDeleteOnTermination = lens _siniDeleteOnTermination (\ s a -> s{_siniDeleteOnTermination = a});
siniAssociatePublicIPAddress :: Lens' ScheduledInstancesNetworkInterface (Maybe Bool)
siniAssociatePublicIPAddress = lens _siniAssociatePublicIPAddress (\ s a -> s{_siniAssociatePublicIPAddress = a});
siniPrivateIPAddressConfigs :: Lens' ScheduledInstancesNetworkInterface [ScheduledInstancesPrivateIPAddressConfig]
siniPrivateIPAddressConfigs = lens _siniPrivateIPAddressConfigs (\ s a -> s{_siniPrivateIPAddressConfigs = a}) . _Default . _Coerce;
siniNetworkInterfaceId :: Lens' ScheduledInstancesNetworkInterface (Maybe Text)
siniNetworkInterfaceId = lens _siniNetworkInterfaceId (\ s a -> s{_siniNetworkInterfaceId = a});
siniSubnetId :: Lens' ScheduledInstancesNetworkInterface (Maybe Text)
siniSubnetId = lens _siniSubnetId (\ s a -> s{_siniSubnetId = a});
siniPrivateIPAddress :: Lens' ScheduledInstancesNetworkInterface (Maybe Text)
siniPrivateIPAddress = lens _siniPrivateIPAddress (\ s a -> s{_siniPrivateIPAddress = a});
siniSecondaryPrivateIPAddressCount :: Lens' ScheduledInstancesNetworkInterface (Maybe Int)
siniSecondaryPrivateIPAddressCount = lens _siniSecondaryPrivateIPAddressCount (\ s a -> s{_siniSecondaryPrivateIPAddressCount = a});
siniDescription :: Lens' ScheduledInstancesNetworkInterface (Maybe Text)
siniDescription = lens _siniDescription (\ s a -> s{_siniDescription = a});
siniDeviceIndex :: Lens' ScheduledInstancesNetworkInterface (Maybe Int)
siniDeviceIndex = lens _siniDeviceIndex (\ s a -> s{_siniDeviceIndex = a});
instance Hashable ScheduledInstancesNetworkInterface
instance NFData ScheduledInstancesNetworkInterface
instance ToQuery ScheduledInstancesNetworkInterface
where
toQuery ScheduledInstancesNetworkInterface'{..}
= mconcat
[toQuery (toQueryList "Group" <$> _siniGroups),
"DeleteOnTermination" =: _siniDeleteOnTermination,
"AssociatePublicIpAddress" =:
_siniAssociatePublicIPAddress,
toQuery
(toQueryList "PrivateIpAddressConfig" <$>
_siniPrivateIPAddressConfigs),
"NetworkInterfaceId" =: _siniNetworkInterfaceId,
"SubnetId" =: _siniSubnetId,
"PrivateIpAddress" =: _siniPrivateIPAddress,
"SecondaryPrivateIpAddressCount" =:
_siniSecondaryPrivateIPAddressCount,
"Description" =: _siniDescription,
"DeviceIndex" =: _siniDeviceIndex]
data ScheduledInstancesPlacement = ScheduledInstancesPlacement'
{ _sipAvailabilityZone :: !(Maybe Text)
, _sipGroupName :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
scheduledInstancesPlacement
:: ScheduledInstancesPlacement
scheduledInstancesPlacement =
ScheduledInstancesPlacement'
{ _sipAvailabilityZone = Nothing
, _sipGroupName = Nothing
}
sipAvailabilityZone :: Lens' ScheduledInstancesPlacement (Maybe Text)
sipAvailabilityZone = lens _sipAvailabilityZone (\ s a -> s{_sipAvailabilityZone = a});
sipGroupName :: Lens' ScheduledInstancesPlacement (Maybe Text)
sipGroupName = lens _sipGroupName (\ s a -> s{_sipGroupName = a});
instance Hashable ScheduledInstancesPlacement
instance NFData ScheduledInstancesPlacement
instance ToQuery ScheduledInstancesPlacement where
toQuery ScheduledInstancesPlacement'{..}
= mconcat
["AvailabilityZone" =: _sipAvailabilityZone,
"GroupName" =: _sipGroupName]
data ScheduledInstancesPrivateIPAddressConfig = ScheduledInstancesPrivateIPAddressConfig'
{ _sipiacPrimary :: !(Maybe Bool)
, _sipiacPrivateIPAddress :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
scheduledInstancesPrivateIPAddressConfig
:: ScheduledInstancesPrivateIPAddressConfig
scheduledInstancesPrivateIPAddressConfig =
ScheduledInstancesPrivateIPAddressConfig'
{ _sipiacPrimary = Nothing
, _sipiacPrivateIPAddress = Nothing
}
sipiacPrimary :: Lens' ScheduledInstancesPrivateIPAddressConfig (Maybe Bool)
sipiacPrimary = lens _sipiacPrimary (\ s a -> s{_sipiacPrimary = a});
sipiacPrivateIPAddress :: Lens' ScheduledInstancesPrivateIPAddressConfig (Maybe Text)
sipiacPrivateIPAddress = lens _sipiacPrivateIPAddress (\ s a -> s{_sipiacPrivateIPAddress = a});
instance Hashable
ScheduledInstancesPrivateIPAddressConfig
instance NFData
ScheduledInstancesPrivateIPAddressConfig
instance ToQuery
ScheduledInstancesPrivateIPAddressConfig where
toQuery ScheduledInstancesPrivateIPAddressConfig'{..}
= mconcat
["Primary" =: _sipiacPrimary,
"PrivateIpAddress" =: _sipiacPrivateIPAddress]
data SecurityGroup = SecurityGroup'
{ _sgVPCId :: !(Maybe Text)
, _sgIPPermissions :: !(Maybe [IPPermission])
, _sgIPPermissionsEgress :: !(Maybe [IPPermission])
, _sgTags :: !(Maybe [Tag])
, _sgOwnerId :: !Text
, _sgGroupId :: !Text
, _sgGroupName :: !Text
, _sgDescription :: !Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
securityGroup
:: Text
-> Text
-> Text
-> Text
-> SecurityGroup
securityGroup pOwnerId_ pGroupId_ pGroupName_ pDescription_ =
SecurityGroup'
{ _sgVPCId = Nothing
, _sgIPPermissions = Nothing
, _sgIPPermissionsEgress = Nothing
, _sgTags = Nothing
, _sgOwnerId = pOwnerId_
, _sgGroupId = pGroupId_
, _sgGroupName = pGroupName_
, _sgDescription = pDescription_
}
sgVPCId :: Lens' SecurityGroup (Maybe Text)
sgVPCId = lens _sgVPCId (\ s a -> s{_sgVPCId = a});
sgIPPermissions :: Lens' SecurityGroup [IPPermission]
sgIPPermissions = lens _sgIPPermissions (\ s a -> s{_sgIPPermissions = a}) . _Default . _Coerce;
sgIPPermissionsEgress :: Lens' SecurityGroup [IPPermission]
sgIPPermissionsEgress = lens _sgIPPermissionsEgress (\ s a -> s{_sgIPPermissionsEgress = a}) . _Default . _Coerce;
sgTags :: Lens' SecurityGroup [Tag]
sgTags = lens _sgTags (\ s a -> s{_sgTags = a}) . _Default . _Coerce;
sgOwnerId :: Lens' SecurityGroup Text
sgOwnerId = lens _sgOwnerId (\ s a -> s{_sgOwnerId = a});
sgGroupId :: Lens' SecurityGroup Text
sgGroupId = lens _sgGroupId (\ s a -> s{_sgGroupId = a});
sgGroupName :: Lens' SecurityGroup Text
sgGroupName = lens _sgGroupName (\ s a -> s{_sgGroupName = a});
sgDescription :: Lens' SecurityGroup Text
sgDescription = lens _sgDescription (\ s a -> s{_sgDescription = a});
instance FromXML SecurityGroup where
parseXML x
= SecurityGroup' <$>
(x .@? "vpcId") <*>
(x .@? "ipPermissions" .!@ mempty >>=
may (parseXMLList "item"))
<*>
(x .@? "ipPermissionsEgress" .!@ mempty >>=
may (parseXMLList "item"))
<*>
(x .@? "tagSet" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@ "ownerId")
<*> (x .@ "groupId")
<*> (x .@ "groupName")
<*> (x .@ "groupDescription")
instance Hashable SecurityGroup
instance NFData SecurityGroup
data SlotDateTimeRangeRequest = SlotDateTimeRangeRequest'
{ _sdtrrEarliestTime :: !ISO8601
, _sdtrrLatestTime :: !ISO8601
} deriving (Eq,Read,Show,Data,Typeable,Generic)
slotDateTimeRangeRequest
:: UTCTime
-> UTCTime
-> SlotDateTimeRangeRequest
slotDateTimeRangeRequest pEarliestTime_ pLatestTime_ =
SlotDateTimeRangeRequest'
{ _sdtrrEarliestTime = _Time # pEarliestTime_
, _sdtrrLatestTime = _Time # pLatestTime_
}
sdtrrEarliestTime :: Lens' SlotDateTimeRangeRequest UTCTime
sdtrrEarliestTime = lens _sdtrrEarliestTime (\ s a -> s{_sdtrrEarliestTime = a}) . _Time;
sdtrrLatestTime :: Lens' SlotDateTimeRangeRequest UTCTime
sdtrrLatestTime = lens _sdtrrLatestTime (\ s a -> s{_sdtrrLatestTime = a}) . _Time;
instance Hashable SlotDateTimeRangeRequest
instance NFData SlotDateTimeRangeRequest
instance ToQuery SlotDateTimeRangeRequest where
toQuery SlotDateTimeRangeRequest'{..}
= mconcat
["EarliestTime" =: _sdtrrEarliestTime,
"LatestTime" =: _sdtrrLatestTime]
data SlotStartTimeRangeRequest = SlotStartTimeRangeRequest'
{ _sstrrLatestTime :: !(Maybe ISO8601)
, _sstrrEarliestTime :: !(Maybe ISO8601)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
slotStartTimeRangeRequest
:: SlotStartTimeRangeRequest
slotStartTimeRangeRequest =
SlotStartTimeRangeRequest'
{ _sstrrLatestTime = Nothing
, _sstrrEarliestTime = Nothing
}
sstrrLatestTime :: Lens' SlotStartTimeRangeRequest (Maybe UTCTime)
sstrrLatestTime = lens _sstrrLatestTime (\ s a -> s{_sstrrLatestTime = a}) . mapping _Time;
sstrrEarliestTime :: Lens' SlotStartTimeRangeRequest (Maybe UTCTime)
sstrrEarliestTime = lens _sstrrEarliestTime (\ s a -> s{_sstrrEarliestTime = a}) . mapping _Time;
instance Hashable SlotStartTimeRangeRequest
instance NFData SlotStartTimeRangeRequest
instance ToQuery SlotStartTimeRangeRequest where
toQuery SlotStartTimeRangeRequest'{..}
= mconcat
["LatestTime" =: _sstrrLatestTime,
"EarliestTime" =: _sstrrEarliestTime]
data Snapshot = Snapshot'
{ _sStateMessage :: !(Maybe Text)
, _sOwnerAlias :: !(Maybe Text)
, _sDataEncryptionKeyId :: !(Maybe Text)
, _sKMSKeyId :: !(Maybe Text)
, _sTags :: !(Maybe [Tag])
, _sSnapshotId :: !Text
, _sOwnerId :: !Text
, _sVolumeId :: !Text
, _sVolumeSize :: !Int
, _sDescription :: !Text
, _sStartTime :: !ISO8601
, _sProgress :: !Text
, _sState :: !SnapshotState
, _sEncrypted :: !Bool
} deriving (Eq,Read,Show,Data,Typeable,Generic)
snapshot
:: Text
-> Text
-> Text
-> Int
-> Text
-> UTCTime
-> Text
-> SnapshotState
-> Bool
-> Snapshot
snapshot pSnapshotId_ pOwnerId_ pVolumeId_ pVolumeSize_ pDescription_ pStartTime_ pProgress_ pState_ pEncrypted_ =
Snapshot'
{ _sStateMessage = Nothing
, _sOwnerAlias = Nothing
, _sDataEncryptionKeyId = Nothing
, _sKMSKeyId = Nothing
, _sTags = Nothing
, _sSnapshotId = pSnapshotId_
, _sOwnerId = pOwnerId_
, _sVolumeId = pVolumeId_
, _sVolumeSize = pVolumeSize_
, _sDescription = pDescription_
, _sStartTime = _Time # pStartTime_
, _sProgress = pProgress_
, _sState = pState_
, _sEncrypted = pEncrypted_
}
sStateMessage :: Lens' Snapshot (Maybe Text)
sStateMessage = lens _sStateMessage (\ s a -> s{_sStateMessage = a});
sOwnerAlias :: Lens' Snapshot (Maybe Text)
sOwnerAlias = lens _sOwnerAlias (\ s a -> s{_sOwnerAlias = a});
sDataEncryptionKeyId :: Lens' Snapshot (Maybe Text)
sDataEncryptionKeyId = lens _sDataEncryptionKeyId (\ s a -> s{_sDataEncryptionKeyId = a});
sKMSKeyId :: Lens' Snapshot (Maybe Text)
sKMSKeyId = lens _sKMSKeyId (\ s a -> s{_sKMSKeyId = a});
sTags :: Lens' Snapshot [Tag]
sTags = lens _sTags (\ s a -> s{_sTags = a}) . _Default . _Coerce;
sSnapshotId :: Lens' Snapshot Text
sSnapshotId = lens _sSnapshotId (\ s a -> s{_sSnapshotId = a});
sOwnerId :: Lens' Snapshot Text
sOwnerId = lens _sOwnerId (\ s a -> s{_sOwnerId = a});
sVolumeId :: Lens' Snapshot Text
sVolumeId = lens _sVolumeId (\ s a -> s{_sVolumeId = a});
sVolumeSize :: Lens' Snapshot Int
sVolumeSize = lens _sVolumeSize (\ s a -> s{_sVolumeSize = a});
sDescription :: Lens' Snapshot Text
sDescription = lens _sDescription (\ s a -> s{_sDescription = a});
sStartTime :: Lens' Snapshot UTCTime
sStartTime = lens _sStartTime (\ s a -> s{_sStartTime = a}) . _Time;
sProgress :: Lens' Snapshot Text
sProgress = lens _sProgress (\ s a -> s{_sProgress = a});
sState :: Lens' Snapshot SnapshotState
sState = lens _sState (\ s a -> s{_sState = a});
sEncrypted :: Lens' Snapshot Bool
sEncrypted = lens _sEncrypted (\ s a -> s{_sEncrypted = a});
instance FromXML Snapshot where
parseXML x
= Snapshot' <$>
(x .@? "statusMessage") <*> (x .@? "ownerAlias") <*>
(x .@? "dataEncryptionKeyId")
<*> (x .@? "kmsKeyId")
<*>
(x .@? "tagSet" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@ "snapshotId")
<*> (x .@ "ownerId")
<*> (x .@ "volumeId")
<*> (x .@ "volumeSize")
<*> (x .@ "description")
<*> (x .@ "startTime")
<*> (x .@ "progress")
<*> (x .@ "status")
<*> (x .@ "encrypted")
instance Hashable Snapshot
instance NFData Snapshot
data SnapshotDetail = SnapshotDetail'
{ _sdStatus :: !(Maybe Text)
, _sdProgress :: !(Maybe Text)
, _sdFormat :: !(Maybe Text)
, _sdURL :: !(Maybe Text)
, _sdDeviceName :: !(Maybe Text)
, _sdStatusMessage :: !(Maybe Text)
, _sdUserBucket :: !(Maybe UserBucketDetails)
, _sdDiskImageSize :: !(Maybe Double)
, _sdDescription :: !(Maybe Text)
, _sdSnapshotId :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
snapshotDetail
:: SnapshotDetail
snapshotDetail =
SnapshotDetail'
{ _sdStatus = Nothing
, _sdProgress = Nothing
, _sdFormat = Nothing
, _sdURL = Nothing
, _sdDeviceName = Nothing
, _sdStatusMessage = Nothing
, _sdUserBucket = Nothing
, _sdDiskImageSize = Nothing
, _sdDescription = Nothing
, _sdSnapshotId = Nothing
}
sdStatus :: Lens' SnapshotDetail (Maybe Text)
sdStatus = lens _sdStatus (\ s a -> s{_sdStatus = a});
sdProgress :: Lens' SnapshotDetail (Maybe Text)
sdProgress = lens _sdProgress (\ s a -> s{_sdProgress = a});
sdFormat :: Lens' SnapshotDetail (Maybe Text)
sdFormat = lens _sdFormat (\ s a -> s{_sdFormat = a});
sdURL :: Lens' SnapshotDetail (Maybe Text)
sdURL = lens _sdURL (\ s a -> s{_sdURL = a});
sdDeviceName :: Lens' SnapshotDetail (Maybe Text)
sdDeviceName = lens _sdDeviceName (\ s a -> s{_sdDeviceName = a});
sdStatusMessage :: Lens' SnapshotDetail (Maybe Text)
sdStatusMessage = lens _sdStatusMessage (\ s a -> s{_sdStatusMessage = a});
sdUserBucket :: Lens' SnapshotDetail (Maybe UserBucketDetails)
sdUserBucket = lens _sdUserBucket (\ s a -> s{_sdUserBucket = a});
sdDiskImageSize :: Lens' SnapshotDetail (Maybe Double)
sdDiskImageSize = lens _sdDiskImageSize (\ s a -> s{_sdDiskImageSize = a});
sdDescription :: Lens' SnapshotDetail (Maybe Text)
sdDescription = lens _sdDescription (\ s a -> s{_sdDescription = a});
sdSnapshotId :: Lens' SnapshotDetail (Maybe Text)
sdSnapshotId = lens _sdSnapshotId (\ s a -> s{_sdSnapshotId = a});
instance FromXML SnapshotDetail where
parseXML x
= SnapshotDetail' <$>
(x .@? "status") <*> (x .@? "progress") <*>
(x .@? "format")
<*> (x .@? "url")
<*> (x .@? "deviceName")
<*> (x .@? "statusMessage")
<*> (x .@? "userBucket")
<*> (x .@? "diskImageSize")
<*> (x .@? "description")
<*> (x .@? "snapshotId")
instance Hashable SnapshotDetail
instance NFData SnapshotDetail
data SnapshotDiskContainer = SnapshotDiskContainer'
{ _sdcFormat :: !(Maybe Text)
, _sdcURL :: !(Maybe Text)
, _sdcUserBucket :: !(Maybe UserBucket)
, _sdcDescription :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
snapshotDiskContainer
:: SnapshotDiskContainer
snapshotDiskContainer =
SnapshotDiskContainer'
{ _sdcFormat = Nothing
, _sdcURL = Nothing
, _sdcUserBucket = Nothing
, _sdcDescription = Nothing
}
sdcFormat :: Lens' SnapshotDiskContainer (Maybe Text)
sdcFormat = lens _sdcFormat (\ s a -> s{_sdcFormat = a});
sdcURL :: Lens' SnapshotDiskContainer (Maybe Text)
sdcURL = lens _sdcURL (\ s a -> s{_sdcURL = a});
sdcUserBucket :: Lens' SnapshotDiskContainer (Maybe UserBucket)
sdcUserBucket = lens _sdcUserBucket (\ s a -> s{_sdcUserBucket = a});
sdcDescription :: Lens' SnapshotDiskContainer (Maybe Text)
sdcDescription = lens _sdcDescription (\ s a -> s{_sdcDescription = a});
instance Hashable SnapshotDiskContainer
instance NFData SnapshotDiskContainer
instance ToQuery SnapshotDiskContainer where
toQuery SnapshotDiskContainer'{..}
= mconcat
["Format" =: _sdcFormat, "Url" =: _sdcURL,
"UserBucket" =: _sdcUserBucket,
"Description" =: _sdcDescription]
data SnapshotTaskDetail = SnapshotTaskDetail'
{ _stdStatus :: !(Maybe Text)
, _stdProgress :: !(Maybe Text)
, _stdFormat :: !(Maybe Text)
, _stdURL :: !(Maybe Text)
, _stdStatusMessage :: !(Maybe Text)
, _stdUserBucket :: !(Maybe UserBucketDetails)
, _stdDiskImageSize :: !(Maybe Double)
, _stdDescription :: !(Maybe Text)
, _stdSnapshotId :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
snapshotTaskDetail
:: SnapshotTaskDetail
snapshotTaskDetail =
SnapshotTaskDetail'
{ _stdStatus = Nothing
, _stdProgress = Nothing
, _stdFormat = Nothing
, _stdURL = Nothing
, _stdStatusMessage = Nothing
, _stdUserBucket = Nothing
, _stdDiskImageSize = Nothing
, _stdDescription = Nothing
, _stdSnapshotId = Nothing
}
stdStatus :: Lens' SnapshotTaskDetail (Maybe Text)
stdStatus = lens _stdStatus (\ s a -> s{_stdStatus = a});
stdProgress :: Lens' SnapshotTaskDetail (Maybe Text)
stdProgress = lens _stdProgress (\ s a -> s{_stdProgress = a});
stdFormat :: Lens' SnapshotTaskDetail (Maybe Text)
stdFormat = lens _stdFormat (\ s a -> s{_stdFormat = a});
stdURL :: Lens' SnapshotTaskDetail (Maybe Text)
stdURL = lens _stdURL (\ s a -> s{_stdURL = a});
stdStatusMessage :: Lens' SnapshotTaskDetail (Maybe Text)
stdStatusMessage = lens _stdStatusMessage (\ s a -> s{_stdStatusMessage = a});
stdUserBucket :: Lens' SnapshotTaskDetail (Maybe UserBucketDetails)
stdUserBucket = lens _stdUserBucket (\ s a -> s{_stdUserBucket = a});
stdDiskImageSize :: Lens' SnapshotTaskDetail (Maybe Double)
stdDiskImageSize = lens _stdDiskImageSize (\ s a -> s{_stdDiskImageSize = a});
stdDescription :: Lens' SnapshotTaskDetail (Maybe Text)
stdDescription = lens _stdDescription (\ s a -> s{_stdDescription = a});
stdSnapshotId :: Lens' SnapshotTaskDetail (Maybe Text)
stdSnapshotId = lens _stdSnapshotId (\ s a -> s{_stdSnapshotId = a});
instance FromXML SnapshotTaskDetail where
parseXML x
= SnapshotTaskDetail' <$>
(x .@? "status") <*> (x .@? "progress") <*>
(x .@? "format")
<*> (x .@? "url")
<*> (x .@? "statusMessage")
<*> (x .@? "userBucket")
<*> (x .@? "diskImageSize")
<*> (x .@? "description")
<*> (x .@? "snapshotId")
instance Hashable SnapshotTaskDetail
instance NFData SnapshotTaskDetail
data SpotDatafeedSubscription = SpotDatafeedSubscription'
{ _sdsState :: !(Maybe DatafeedSubscriptionState)
, _sdsPrefix :: !(Maybe Text)
, _sdsBucket :: !(Maybe Text)
, _sdsOwnerId :: !(Maybe Text)
, _sdsFault :: !(Maybe SpotInstanceStateFault)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
spotDatafeedSubscription
:: SpotDatafeedSubscription
spotDatafeedSubscription =
SpotDatafeedSubscription'
{ _sdsState = Nothing
, _sdsPrefix = Nothing
, _sdsBucket = Nothing
, _sdsOwnerId = Nothing
, _sdsFault = Nothing
}
sdsState :: Lens' SpotDatafeedSubscription (Maybe DatafeedSubscriptionState)
sdsState = lens _sdsState (\ s a -> s{_sdsState = a});
sdsPrefix :: Lens' SpotDatafeedSubscription (Maybe Text)
sdsPrefix = lens _sdsPrefix (\ s a -> s{_sdsPrefix = a});
sdsBucket :: Lens' SpotDatafeedSubscription (Maybe Text)
sdsBucket = lens _sdsBucket (\ s a -> s{_sdsBucket = a});
sdsOwnerId :: Lens' SpotDatafeedSubscription (Maybe Text)
sdsOwnerId = lens _sdsOwnerId (\ s a -> s{_sdsOwnerId = a});
sdsFault :: Lens' SpotDatafeedSubscription (Maybe SpotInstanceStateFault)
sdsFault = lens _sdsFault (\ s a -> s{_sdsFault = a});
instance FromXML SpotDatafeedSubscription where
parseXML x
= SpotDatafeedSubscription' <$>
(x .@? "state") <*> (x .@? "prefix") <*>
(x .@? "bucket")
<*> (x .@? "ownerId")
<*> (x .@? "fault")
instance Hashable SpotDatafeedSubscription
instance NFData SpotDatafeedSubscription
data SpotFleetLaunchSpecification = SpotFleetLaunchSpecification'
{ _sflsSecurityGroups :: !(Maybe [GroupIdentifier])
, _sflsSpotPrice :: !(Maybe Text)
, _sflsWeightedCapacity :: !(Maybe Double)
, _sflsKeyName :: !(Maybe Text)
, _sflsNetworkInterfaces :: !(Maybe [InstanceNetworkInterfaceSpecification])
, _sflsRAMDiskId :: !(Maybe Text)
, _sflsSubnetId :: !(Maybe Text)
, _sflsKernelId :: !(Maybe Text)
, _sflsInstanceType :: !(Maybe InstanceType)
, _sflsEBSOptimized :: !(Maybe Bool)
, _sflsUserData :: !(Maybe Text)
, _sflsMonitoring :: !(Maybe SpotFleetMonitoring)
, _sflsIAMInstanceProfile :: !(Maybe IAMInstanceProfileSpecification)
, _sflsImageId :: !(Maybe Text)
, _sflsAddressingType :: !(Maybe Text)
, _sflsBlockDeviceMappings :: !(Maybe [BlockDeviceMapping])
, _sflsPlacement :: !(Maybe SpotPlacement)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
spotFleetLaunchSpecification
:: SpotFleetLaunchSpecification
spotFleetLaunchSpecification =
SpotFleetLaunchSpecification'
{ _sflsSecurityGroups = Nothing
, _sflsSpotPrice = Nothing
, _sflsWeightedCapacity = Nothing
, _sflsKeyName = Nothing
, _sflsNetworkInterfaces = Nothing
, _sflsRAMDiskId = Nothing
, _sflsSubnetId = Nothing
, _sflsKernelId = Nothing
, _sflsInstanceType = Nothing
, _sflsEBSOptimized = Nothing
, _sflsUserData = Nothing
, _sflsMonitoring = Nothing
, _sflsIAMInstanceProfile = Nothing
, _sflsImageId = Nothing
, _sflsAddressingType = Nothing
, _sflsBlockDeviceMappings = Nothing
, _sflsPlacement = Nothing
}
sflsSecurityGroups :: Lens' SpotFleetLaunchSpecification [GroupIdentifier]
sflsSecurityGroups = lens _sflsSecurityGroups (\ s a -> s{_sflsSecurityGroups = a}) . _Default . _Coerce;
sflsSpotPrice :: Lens' SpotFleetLaunchSpecification (Maybe Text)
sflsSpotPrice = lens _sflsSpotPrice (\ s a -> s{_sflsSpotPrice = a});
sflsWeightedCapacity :: Lens' SpotFleetLaunchSpecification (Maybe Double)
sflsWeightedCapacity = lens _sflsWeightedCapacity (\ s a -> s{_sflsWeightedCapacity = a});
sflsKeyName :: Lens' SpotFleetLaunchSpecification (Maybe Text)
sflsKeyName = lens _sflsKeyName (\ s a -> s{_sflsKeyName = a});
sflsNetworkInterfaces :: Lens' SpotFleetLaunchSpecification [InstanceNetworkInterfaceSpecification]
sflsNetworkInterfaces = lens _sflsNetworkInterfaces (\ s a -> s{_sflsNetworkInterfaces = a}) . _Default . _Coerce;
sflsRAMDiskId :: Lens' SpotFleetLaunchSpecification (Maybe Text)
sflsRAMDiskId = lens _sflsRAMDiskId (\ s a -> s{_sflsRAMDiskId = a});
sflsSubnetId :: Lens' SpotFleetLaunchSpecification (Maybe Text)
sflsSubnetId = lens _sflsSubnetId (\ s a -> s{_sflsSubnetId = a});
sflsKernelId :: Lens' SpotFleetLaunchSpecification (Maybe Text)
sflsKernelId = lens _sflsKernelId (\ s a -> s{_sflsKernelId = a});
sflsInstanceType :: Lens' SpotFleetLaunchSpecification (Maybe InstanceType)
sflsInstanceType = lens _sflsInstanceType (\ s a -> s{_sflsInstanceType = a});
sflsEBSOptimized :: Lens' SpotFleetLaunchSpecification (Maybe Bool)
sflsEBSOptimized = lens _sflsEBSOptimized (\ s a -> s{_sflsEBSOptimized = a});
sflsUserData :: Lens' SpotFleetLaunchSpecification (Maybe Text)
sflsUserData = lens _sflsUserData (\ s a -> s{_sflsUserData = a});
sflsMonitoring :: Lens' SpotFleetLaunchSpecification (Maybe SpotFleetMonitoring)
sflsMonitoring = lens _sflsMonitoring (\ s a -> s{_sflsMonitoring = a});
sflsIAMInstanceProfile :: Lens' SpotFleetLaunchSpecification (Maybe IAMInstanceProfileSpecification)
sflsIAMInstanceProfile = lens _sflsIAMInstanceProfile (\ s a -> s{_sflsIAMInstanceProfile = a});
sflsImageId :: Lens' SpotFleetLaunchSpecification (Maybe Text)
sflsImageId = lens _sflsImageId (\ s a -> s{_sflsImageId = a});
sflsAddressingType :: Lens' SpotFleetLaunchSpecification (Maybe Text)
sflsAddressingType = lens _sflsAddressingType (\ s a -> s{_sflsAddressingType = a});
sflsBlockDeviceMappings :: Lens' SpotFleetLaunchSpecification [BlockDeviceMapping]
sflsBlockDeviceMappings = lens _sflsBlockDeviceMappings (\ s a -> s{_sflsBlockDeviceMappings = a}) . _Default . _Coerce;
sflsPlacement :: Lens' SpotFleetLaunchSpecification (Maybe SpotPlacement)
sflsPlacement = lens _sflsPlacement (\ s a -> s{_sflsPlacement = a});
instance FromXML SpotFleetLaunchSpecification where
parseXML x
= SpotFleetLaunchSpecification' <$>
(x .@? "groupSet" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "spotPrice")
<*> (x .@? "weightedCapacity")
<*> (x .@? "keyName")
<*>
(x .@? "networkInterfaceSet" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "ramdiskId")
<*> (x .@? "subnetId")
<*> (x .@? "kernelId")
<*> (x .@? "instanceType")
<*> (x .@? "ebsOptimized")
<*> (x .@? "userData")
<*> (x .@? "monitoring")
<*> (x .@? "iamInstanceProfile")
<*> (x .@? "imageId")
<*> (x .@? "addressingType")
<*>
(x .@? "blockDeviceMapping" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "placement")
instance Hashable SpotFleetLaunchSpecification
instance NFData SpotFleetLaunchSpecification
instance ToQuery SpotFleetLaunchSpecification where
toQuery SpotFleetLaunchSpecification'{..}
= mconcat
[toQuery
(toQueryList "GroupSet" <$> _sflsSecurityGroups),
"SpotPrice" =: _sflsSpotPrice,
"WeightedCapacity" =: _sflsWeightedCapacity,
"KeyName" =: _sflsKeyName,
toQuery
(toQueryList "NetworkInterfaceSet" <$>
_sflsNetworkInterfaces),
"RamdiskId" =: _sflsRAMDiskId,
"SubnetId" =: _sflsSubnetId,
"KernelId" =: _sflsKernelId,
"InstanceType" =: _sflsInstanceType,
"EbsOptimized" =: _sflsEBSOptimized,
"UserData" =: _sflsUserData,
"Monitoring" =: _sflsMonitoring,
"IamInstanceProfile" =: _sflsIAMInstanceProfile,
"ImageId" =: _sflsImageId,
"AddressingType" =: _sflsAddressingType,
toQuery
(toQueryList "BlockDeviceMapping" <$>
_sflsBlockDeviceMappings),
"Placement" =: _sflsPlacement]
newtype SpotFleetMonitoring = SpotFleetMonitoring'
{ _sfmEnabled :: Maybe Bool
} deriving (Eq,Read,Show,Data,Typeable,Generic)
spotFleetMonitoring
:: SpotFleetMonitoring
spotFleetMonitoring =
SpotFleetMonitoring'
{ _sfmEnabled = Nothing
}
sfmEnabled :: Lens' SpotFleetMonitoring (Maybe Bool)
sfmEnabled = lens _sfmEnabled (\ s a -> s{_sfmEnabled = a});
instance FromXML SpotFleetMonitoring where
parseXML x
= SpotFleetMonitoring' <$> (x .@? "enabled")
instance Hashable SpotFleetMonitoring
instance NFData SpotFleetMonitoring
instance ToQuery SpotFleetMonitoring where
toQuery SpotFleetMonitoring'{..}
= mconcat ["Enabled" =: _sfmEnabled]
data SpotFleetRequestConfig = SpotFleetRequestConfig'
{ _sfrcSpotFleetRequestId :: !Text
, _sfrcSpotFleetRequestState :: !BatchState
, _sfrcSpotFleetRequestConfig :: !SpotFleetRequestConfigData
, _sfrcCreateTime :: !ISO8601
} deriving (Eq,Read,Show,Data,Typeable,Generic)
spotFleetRequestConfig
:: Text
-> BatchState
-> SpotFleetRequestConfigData
-> UTCTime
-> SpotFleetRequestConfig
spotFleetRequestConfig pSpotFleetRequestId_ pSpotFleetRequestState_ pSpotFleetRequestConfig_ pCreateTime_ =
SpotFleetRequestConfig'
{ _sfrcSpotFleetRequestId = pSpotFleetRequestId_
, _sfrcSpotFleetRequestState = pSpotFleetRequestState_
, _sfrcSpotFleetRequestConfig = pSpotFleetRequestConfig_
, _sfrcCreateTime = _Time # pCreateTime_
}
sfrcSpotFleetRequestId :: Lens' SpotFleetRequestConfig Text
sfrcSpotFleetRequestId = lens _sfrcSpotFleetRequestId (\ s a -> s{_sfrcSpotFleetRequestId = a});
sfrcSpotFleetRequestState :: Lens' SpotFleetRequestConfig BatchState
sfrcSpotFleetRequestState = lens _sfrcSpotFleetRequestState (\ s a -> s{_sfrcSpotFleetRequestState = a});
sfrcSpotFleetRequestConfig :: Lens' SpotFleetRequestConfig SpotFleetRequestConfigData
sfrcSpotFleetRequestConfig = lens _sfrcSpotFleetRequestConfig (\ s a -> s{_sfrcSpotFleetRequestConfig = a});
sfrcCreateTime :: Lens' SpotFleetRequestConfig UTCTime
sfrcCreateTime = lens _sfrcCreateTime (\ s a -> s{_sfrcCreateTime = a}) . _Time;
instance FromXML SpotFleetRequestConfig where
parseXML x
= SpotFleetRequestConfig' <$>
(x .@ "spotFleetRequestId") <*>
(x .@ "spotFleetRequestState")
<*> (x .@ "spotFleetRequestConfig")
<*> (x .@ "createTime")
instance Hashable SpotFleetRequestConfig
instance NFData SpotFleetRequestConfig
data SpotFleetRequestConfigData = SpotFleetRequestConfigData'
{ _sfrcdClientToken :: !(Maybe Text)
, _sfrcdExcessCapacityTerminationPolicy :: !(Maybe ExcessCapacityTerminationPolicy)
, _sfrcdValidUntil :: !(Maybe ISO8601)
, _sfrcdTerminateInstancesWithExpiration :: !(Maybe Bool)
, _sfrcdValidFrom :: !(Maybe ISO8601)
, _sfrcdAllocationStrategy :: !(Maybe AllocationStrategy)
, _sfrcdSpotPrice :: !Text
, _sfrcdTargetCapacity :: !Int
, _sfrcdIAMFleetRole :: !Text
, _sfrcdLaunchSpecifications :: !(List1 SpotFleetLaunchSpecification)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
spotFleetRequestConfigData
:: Text
-> Int
-> Text
-> NonEmpty SpotFleetLaunchSpecification
-> SpotFleetRequestConfigData
spotFleetRequestConfigData pSpotPrice_ pTargetCapacity_ pIAMFleetRole_ pLaunchSpecifications_ =
SpotFleetRequestConfigData'
{ _sfrcdClientToken = Nothing
, _sfrcdExcessCapacityTerminationPolicy = Nothing
, _sfrcdValidUntil = Nothing
, _sfrcdTerminateInstancesWithExpiration = Nothing
, _sfrcdValidFrom = Nothing
, _sfrcdAllocationStrategy = Nothing
, _sfrcdSpotPrice = pSpotPrice_
, _sfrcdTargetCapacity = pTargetCapacity_
, _sfrcdIAMFleetRole = pIAMFleetRole_
, _sfrcdLaunchSpecifications = _List1 # pLaunchSpecifications_
}
sfrcdClientToken :: Lens' SpotFleetRequestConfigData (Maybe Text)
sfrcdClientToken = lens _sfrcdClientToken (\ s a -> s{_sfrcdClientToken = a});
sfrcdExcessCapacityTerminationPolicy :: Lens' SpotFleetRequestConfigData (Maybe ExcessCapacityTerminationPolicy)
sfrcdExcessCapacityTerminationPolicy = lens _sfrcdExcessCapacityTerminationPolicy (\ s a -> s{_sfrcdExcessCapacityTerminationPolicy = a});
sfrcdValidUntil :: Lens' SpotFleetRequestConfigData (Maybe UTCTime)
sfrcdValidUntil = lens _sfrcdValidUntil (\ s a -> s{_sfrcdValidUntil = a}) . mapping _Time;
sfrcdTerminateInstancesWithExpiration :: Lens' SpotFleetRequestConfigData (Maybe Bool)
sfrcdTerminateInstancesWithExpiration = lens _sfrcdTerminateInstancesWithExpiration (\ s a -> s{_sfrcdTerminateInstancesWithExpiration = a});
sfrcdValidFrom :: Lens' SpotFleetRequestConfigData (Maybe UTCTime)
sfrcdValidFrom = lens _sfrcdValidFrom (\ s a -> s{_sfrcdValidFrom = a}) . mapping _Time;
sfrcdAllocationStrategy :: Lens' SpotFleetRequestConfigData (Maybe AllocationStrategy)
sfrcdAllocationStrategy = lens _sfrcdAllocationStrategy (\ s a -> s{_sfrcdAllocationStrategy = a});
sfrcdSpotPrice :: Lens' SpotFleetRequestConfigData Text
sfrcdSpotPrice = lens _sfrcdSpotPrice (\ s a -> s{_sfrcdSpotPrice = a});
sfrcdTargetCapacity :: Lens' SpotFleetRequestConfigData Int
sfrcdTargetCapacity = lens _sfrcdTargetCapacity (\ s a -> s{_sfrcdTargetCapacity = a});
sfrcdIAMFleetRole :: Lens' SpotFleetRequestConfigData Text
sfrcdIAMFleetRole = lens _sfrcdIAMFleetRole (\ s a -> s{_sfrcdIAMFleetRole = a});
sfrcdLaunchSpecifications :: Lens' SpotFleetRequestConfigData (NonEmpty SpotFleetLaunchSpecification)
sfrcdLaunchSpecifications = lens _sfrcdLaunchSpecifications (\ s a -> s{_sfrcdLaunchSpecifications = a}) . _List1;
instance FromXML SpotFleetRequestConfigData where
parseXML x
= SpotFleetRequestConfigData' <$>
(x .@? "clientToken") <*>
(x .@? "excessCapacityTerminationPolicy")
<*> (x .@? "validUntil")
<*> (x .@? "terminateInstancesWithExpiration")
<*> (x .@? "validFrom")
<*> (x .@? "allocationStrategy")
<*> (x .@ "spotPrice")
<*> (x .@ "targetCapacity")
<*> (x .@ "iamFleetRole")
<*>
(x .@? "launchSpecifications" .!@ mempty >>=
parseXMLList1 "item")
instance Hashable SpotFleetRequestConfigData
instance NFData SpotFleetRequestConfigData
instance ToQuery SpotFleetRequestConfigData where
toQuery SpotFleetRequestConfigData'{..}
= mconcat
["ClientToken" =: _sfrcdClientToken,
"ExcessCapacityTerminationPolicy" =:
_sfrcdExcessCapacityTerminationPolicy,
"ValidUntil" =: _sfrcdValidUntil,
"TerminateInstancesWithExpiration" =:
_sfrcdTerminateInstancesWithExpiration,
"ValidFrom" =: _sfrcdValidFrom,
"AllocationStrategy" =: _sfrcdAllocationStrategy,
"SpotPrice" =: _sfrcdSpotPrice,
"TargetCapacity" =: _sfrcdTargetCapacity,
"IamFleetRole" =: _sfrcdIAMFleetRole,
toQueryList "LaunchSpecifications"
_sfrcdLaunchSpecifications]
data SpotInstanceRequest = SpotInstanceRequest'
{ _sirInstanceId :: !(Maybe Text)
, _sirStatus :: !(Maybe SpotInstanceStatus)
, _sirState :: !(Maybe SpotInstanceState)
, _sirActualBlockHourlyPrice :: !(Maybe Text)
, _sirBlockDurationMinutes :: !(Maybe Int)
, _sirProductDescription :: !(Maybe RIProductDescription)
, _sirSpotPrice :: !(Maybe Text)
, _sirLaunchSpecification :: !(Maybe LaunchSpecification)
, _sirAvailabilityZoneGroup :: !(Maybe Text)
, _sirLaunchedAvailabilityZone :: !(Maybe Text)
, _sirValidUntil :: !(Maybe ISO8601)
, _sirLaunchGroup :: !(Maybe Text)
, _sirFault :: !(Maybe SpotInstanceStateFault)
, _sirSpotInstanceRequestId :: !(Maybe Text)
, _sirType :: !(Maybe SpotInstanceType)
, _sirValidFrom :: !(Maybe ISO8601)
, _sirCreateTime :: !(Maybe ISO8601)
, _sirTags :: !(Maybe [Tag])
} deriving (Eq,Read,Show,Data,Typeable,Generic)
spotInstanceRequest
:: SpotInstanceRequest
spotInstanceRequest =
SpotInstanceRequest'
{ _sirInstanceId = Nothing
, _sirStatus = Nothing
, _sirState = Nothing
, _sirActualBlockHourlyPrice = Nothing
, _sirBlockDurationMinutes = Nothing
, _sirProductDescription = Nothing
, _sirSpotPrice = Nothing
, _sirLaunchSpecification = Nothing
, _sirAvailabilityZoneGroup = Nothing
, _sirLaunchedAvailabilityZone = Nothing
, _sirValidUntil = Nothing
, _sirLaunchGroup = Nothing
, _sirFault = Nothing
, _sirSpotInstanceRequestId = Nothing
, _sirType = Nothing
, _sirValidFrom = Nothing
, _sirCreateTime = Nothing
, _sirTags = Nothing
}
sirInstanceId :: Lens' SpotInstanceRequest (Maybe Text)
sirInstanceId = lens _sirInstanceId (\ s a -> s{_sirInstanceId = a});
sirStatus :: Lens' SpotInstanceRequest (Maybe SpotInstanceStatus)
sirStatus = lens _sirStatus (\ s a -> s{_sirStatus = a});
sirState :: Lens' SpotInstanceRequest (Maybe SpotInstanceState)
sirState = lens _sirState (\ s a -> s{_sirState = a});
sirActualBlockHourlyPrice :: Lens' SpotInstanceRequest (Maybe Text)
sirActualBlockHourlyPrice = lens _sirActualBlockHourlyPrice (\ s a -> s{_sirActualBlockHourlyPrice = a});
sirBlockDurationMinutes :: Lens' SpotInstanceRequest (Maybe Int)
sirBlockDurationMinutes = lens _sirBlockDurationMinutes (\ s a -> s{_sirBlockDurationMinutes = a});
sirProductDescription :: Lens' SpotInstanceRequest (Maybe RIProductDescription)
sirProductDescription = lens _sirProductDescription (\ s a -> s{_sirProductDescription = a});
sirSpotPrice :: Lens' SpotInstanceRequest (Maybe Text)
sirSpotPrice = lens _sirSpotPrice (\ s a -> s{_sirSpotPrice = a});
sirLaunchSpecification :: Lens' SpotInstanceRequest (Maybe LaunchSpecification)
sirLaunchSpecification = lens _sirLaunchSpecification (\ s a -> s{_sirLaunchSpecification = a});
sirAvailabilityZoneGroup :: Lens' SpotInstanceRequest (Maybe Text)
sirAvailabilityZoneGroup = lens _sirAvailabilityZoneGroup (\ s a -> s{_sirAvailabilityZoneGroup = a});
sirLaunchedAvailabilityZone :: Lens' SpotInstanceRequest (Maybe Text)
sirLaunchedAvailabilityZone = lens _sirLaunchedAvailabilityZone (\ s a -> s{_sirLaunchedAvailabilityZone = a});
sirValidUntil :: Lens' SpotInstanceRequest (Maybe UTCTime)
sirValidUntil = lens _sirValidUntil (\ s a -> s{_sirValidUntil = a}) . mapping _Time;
sirLaunchGroup :: Lens' SpotInstanceRequest (Maybe Text)
sirLaunchGroup = lens _sirLaunchGroup (\ s a -> s{_sirLaunchGroup = a});
sirFault :: Lens' SpotInstanceRequest (Maybe SpotInstanceStateFault)
sirFault = lens _sirFault (\ s a -> s{_sirFault = a});
sirSpotInstanceRequestId :: Lens' SpotInstanceRequest (Maybe Text)
sirSpotInstanceRequestId = lens _sirSpotInstanceRequestId (\ s a -> s{_sirSpotInstanceRequestId = a});
sirType :: Lens' SpotInstanceRequest (Maybe SpotInstanceType)
sirType = lens _sirType (\ s a -> s{_sirType = a});
sirValidFrom :: Lens' SpotInstanceRequest (Maybe UTCTime)
sirValidFrom = lens _sirValidFrom (\ s a -> s{_sirValidFrom = a}) . mapping _Time;
sirCreateTime :: Lens' SpotInstanceRequest (Maybe UTCTime)
sirCreateTime = lens _sirCreateTime (\ s a -> s{_sirCreateTime = a}) . mapping _Time;
sirTags :: Lens' SpotInstanceRequest [Tag]
sirTags = lens _sirTags (\ s a -> s{_sirTags = a}) . _Default . _Coerce;
instance FromXML SpotInstanceRequest where
parseXML x
= SpotInstanceRequest' <$>
(x .@? "instanceId") <*> (x .@? "status") <*>
(x .@? "state")
<*> (x .@? "actualBlockHourlyPrice")
<*> (x .@? "blockDurationMinutes")
<*> (x .@? "productDescription")
<*> (x .@? "spotPrice")
<*> (x .@? "launchSpecification")
<*> (x .@? "availabilityZoneGroup")
<*> (x .@? "launchedAvailabilityZone")
<*> (x .@? "validUntil")
<*> (x .@? "launchGroup")
<*> (x .@? "fault")
<*> (x .@? "spotInstanceRequestId")
<*> (x .@? "type")
<*> (x .@? "validFrom")
<*> (x .@? "createTime")
<*>
(x .@? "tagSet" .!@ mempty >>=
may (parseXMLList "item"))
instance Hashable SpotInstanceRequest
instance NFData SpotInstanceRequest
data SpotInstanceStateFault = SpotInstanceStateFault'
{ _sisfCode :: !(Maybe Text)
, _sisfMessage :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
spotInstanceStateFault
:: SpotInstanceStateFault
spotInstanceStateFault =
SpotInstanceStateFault'
{ _sisfCode = Nothing
, _sisfMessage = Nothing
}
sisfCode :: Lens' SpotInstanceStateFault (Maybe Text)
sisfCode = lens _sisfCode (\ s a -> s{_sisfCode = a});
sisfMessage :: Lens' SpotInstanceStateFault (Maybe Text)
sisfMessage = lens _sisfMessage (\ s a -> s{_sisfMessage = a});
instance FromXML SpotInstanceStateFault where
parseXML x
= SpotInstanceStateFault' <$>
(x .@? "code") <*> (x .@? "message")
instance Hashable SpotInstanceStateFault
instance NFData SpotInstanceStateFault
data SpotInstanceStatus = SpotInstanceStatus'
{ _sisUpdateTime :: !(Maybe ISO8601)
, _sisCode :: !(Maybe Text)
, _sisMessage :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
spotInstanceStatus
:: SpotInstanceStatus
spotInstanceStatus =
SpotInstanceStatus'
{ _sisUpdateTime = Nothing
, _sisCode = Nothing
, _sisMessage = Nothing
}
sisUpdateTime :: Lens' SpotInstanceStatus (Maybe UTCTime)
sisUpdateTime = lens _sisUpdateTime (\ s a -> s{_sisUpdateTime = a}) . mapping _Time;
sisCode :: Lens' SpotInstanceStatus (Maybe Text)
sisCode = lens _sisCode (\ s a -> s{_sisCode = a});
sisMessage :: Lens' SpotInstanceStatus (Maybe Text)
sisMessage = lens _sisMessage (\ s a -> s{_sisMessage = a});
instance FromXML SpotInstanceStatus where
parseXML x
= SpotInstanceStatus' <$>
(x .@? "updateTime") <*> (x .@? "code") <*>
(x .@? "message")
instance Hashable SpotInstanceStatus
instance NFData SpotInstanceStatus
data SpotPlacement = SpotPlacement'
{ _spAvailabilityZone :: !(Maybe Text)
, _spGroupName :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
spotPlacement
:: SpotPlacement
spotPlacement =
SpotPlacement'
{ _spAvailabilityZone = Nothing
, _spGroupName = Nothing
}
spAvailabilityZone :: Lens' SpotPlacement (Maybe Text)
spAvailabilityZone = lens _spAvailabilityZone (\ s a -> s{_spAvailabilityZone = a});
spGroupName :: Lens' SpotPlacement (Maybe Text)
spGroupName = lens _spGroupName (\ s a -> s{_spGroupName = a});
instance FromXML SpotPlacement where
parseXML x
= SpotPlacement' <$>
(x .@? "availabilityZone") <*> (x .@? "groupName")
instance Hashable SpotPlacement
instance NFData SpotPlacement
instance ToQuery SpotPlacement where
toQuery SpotPlacement'{..}
= mconcat
["AvailabilityZone" =: _spAvailabilityZone,
"GroupName" =: _spGroupName]
data SpotPrice = SpotPrice'
{ _sProductDescription :: !(Maybe RIProductDescription)
, _sSpotPrice :: !(Maybe Text)
, _sInstanceType :: !(Maybe InstanceType)
, _sAvailabilityZone :: !(Maybe Text)
, _sTimestamp :: !(Maybe ISO8601)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
spotPrice
:: SpotPrice
spotPrice =
SpotPrice'
{ _sProductDescription = Nothing
, _sSpotPrice = Nothing
, _sInstanceType = Nothing
, _sAvailabilityZone = Nothing
, _sTimestamp = Nothing
}
sProductDescription :: Lens' SpotPrice (Maybe RIProductDescription)
sProductDescription = lens _sProductDescription (\ s a -> s{_sProductDescription = a});
sSpotPrice :: Lens' SpotPrice (Maybe Text)
sSpotPrice = lens _sSpotPrice (\ s a -> s{_sSpotPrice = a});
sInstanceType :: Lens' SpotPrice (Maybe InstanceType)
sInstanceType = lens _sInstanceType (\ s a -> s{_sInstanceType = a});
sAvailabilityZone :: Lens' SpotPrice (Maybe Text)
sAvailabilityZone = lens _sAvailabilityZone (\ s a -> s{_sAvailabilityZone = a});
sTimestamp :: Lens' SpotPrice (Maybe UTCTime)
sTimestamp = lens _sTimestamp (\ s a -> s{_sTimestamp = a}) . mapping _Time;
instance FromXML SpotPrice where
parseXML x
= SpotPrice' <$>
(x .@? "productDescription") <*> (x .@? "spotPrice")
<*> (x .@? "instanceType")
<*> (x .@? "availabilityZone")
<*> (x .@? "timestamp")
instance Hashable SpotPrice
instance NFData SpotPrice
data StateReason = StateReason'
{ _srCode :: !(Maybe Text)
, _srMessage :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
stateReason
:: StateReason
stateReason =
StateReason'
{ _srCode = Nothing
, _srMessage = Nothing
}
srCode :: Lens' StateReason (Maybe Text)
srCode = lens _srCode (\ s a -> s{_srCode = a});
srMessage :: Lens' StateReason (Maybe Text)
srMessage = lens _srMessage (\ s a -> s{_srMessage = a});
instance FromXML StateReason where
parseXML x
= StateReason' <$>
(x .@? "code") <*> (x .@? "message")
instance Hashable StateReason
instance NFData StateReason
newtype Storage = Storage'
{ _sS3 :: Maybe S3Storage
} deriving (Eq,Read,Show,Data,Typeable,Generic)
storage
:: Storage
storage =
Storage'
{ _sS3 = Nothing
}
sS3 :: Lens' Storage (Maybe S3Storage)
sS3 = lens _sS3 (\ s a -> s{_sS3 = a});
instance FromXML Storage where
parseXML x = Storage' <$> (x .@? "S3")
instance Hashable Storage
instance NFData Storage
instance ToQuery Storage where
toQuery Storage'{..} = mconcat ["S3" =: _sS3]
data Subnet = Subnet'
{ _subMapPublicIPOnLaunch :: !(Maybe Bool)
, _subDefaultForAz :: !(Maybe Bool)
, _subTags :: !(Maybe [Tag])
, _subAvailabilityZone :: !Text
, _subAvailableIPAddressCount :: !Int
, _subCIdRBlock :: !Text
, _subState :: !SubnetState
, _subSubnetId :: !Text
, _subVPCId :: !Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
subnet
:: Text
-> Int
-> Text
-> SubnetState
-> Text
-> Text
-> Subnet
subnet pAvailabilityZone_ pAvailableIPAddressCount_ pCIdRBlock_ pState_ pSubnetId_ pVPCId_ =
Subnet'
{ _subMapPublicIPOnLaunch = Nothing
, _subDefaultForAz = Nothing
, _subTags = Nothing
, _subAvailabilityZone = pAvailabilityZone_
, _subAvailableIPAddressCount = pAvailableIPAddressCount_
, _subCIdRBlock = pCIdRBlock_
, _subState = pState_
, _subSubnetId = pSubnetId_
, _subVPCId = pVPCId_
}
subMapPublicIPOnLaunch :: Lens' Subnet (Maybe Bool)
subMapPublicIPOnLaunch = lens _subMapPublicIPOnLaunch (\ s a -> s{_subMapPublicIPOnLaunch = a});
subDefaultForAz :: Lens' Subnet (Maybe Bool)
subDefaultForAz = lens _subDefaultForAz (\ s a -> s{_subDefaultForAz = a});
subTags :: Lens' Subnet [Tag]
subTags = lens _subTags (\ s a -> s{_subTags = a}) . _Default . _Coerce;
subAvailabilityZone :: Lens' Subnet Text
subAvailabilityZone = lens _subAvailabilityZone (\ s a -> s{_subAvailabilityZone = a});
subAvailableIPAddressCount :: Lens' Subnet Int
subAvailableIPAddressCount = lens _subAvailableIPAddressCount (\ s a -> s{_subAvailableIPAddressCount = a});
subCIdRBlock :: Lens' Subnet Text
subCIdRBlock = lens _subCIdRBlock (\ s a -> s{_subCIdRBlock = a});
subState :: Lens' Subnet SubnetState
subState = lens _subState (\ s a -> s{_subState = a});
subSubnetId :: Lens' Subnet Text
subSubnetId = lens _subSubnetId (\ s a -> s{_subSubnetId = a});
subVPCId :: Lens' Subnet Text
subVPCId = lens _subVPCId (\ s a -> s{_subVPCId = a});
instance FromXML Subnet where
parseXML x
= Subnet' <$>
(x .@? "mapPublicIpOnLaunch") <*>
(x .@? "defaultForAz")
<*>
(x .@? "tagSet" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@ "availabilityZone")
<*> (x .@ "availableIpAddressCount")
<*> (x .@ "cidrBlock")
<*> (x .@ "state")
<*> (x .@ "subnetId")
<*> (x .@ "vpcId")
instance Hashable Subnet
instance NFData Subnet
data Tag = Tag'
{ _tagKey :: !Text
, _tagValue :: !Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
tag
:: Text
-> Text
-> Tag
tag pKey_ pValue_ =
Tag'
{ _tagKey = pKey_
, _tagValue = pValue_
}
tagKey :: Lens' Tag Text
tagKey = lens _tagKey (\ s a -> s{_tagKey = a});
tagValue :: Lens' Tag Text
tagValue = lens _tagValue (\ s a -> s{_tagValue = a});
instance FromXML Tag where
parseXML x = Tag' <$> (x .@ "key") <*> (x .@ "value")
instance Hashable Tag
instance NFData Tag
instance ToQuery Tag where
toQuery Tag'{..}
= mconcat ["Key" =: _tagKey, "Value" =: _tagValue]
data TagDescription = TagDescription'
{ _tdResourceId :: !Text
, _tdResourceType :: !ResourceType
, _tdKey :: !Text
, _tdValue :: !Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
tagDescription
:: Text
-> ResourceType
-> Text
-> Text
-> TagDescription
tagDescription pResourceId_ pResourceType_ pKey_ pValue_ =
TagDescription'
{ _tdResourceId = pResourceId_
, _tdResourceType = pResourceType_
, _tdKey = pKey_
, _tdValue = pValue_
}
tdResourceId :: Lens' TagDescription Text
tdResourceId = lens _tdResourceId (\ s a -> s{_tdResourceId = a});
tdResourceType :: Lens' TagDescription ResourceType
tdResourceType = lens _tdResourceType (\ s a -> s{_tdResourceType = a});
tdKey :: Lens' TagDescription Text
tdKey = lens _tdKey (\ s a -> s{_tdKey = a});
tdValue :: Lens' TagDescription Text
tdValue = lens _tdValue (\ s a -> s{_tdValue = a});
instance FromXML TagDescription where
parseXML x
= TagDescription' <$>
(x .@ "resourceId") <*> (x .@ "resourceType") <*>
(x .@ "key")
<*> (x .@ "value")
instance Hashable TagDescription
instance NFData TagDescription
data UnsuccessfulItem = UnsuccessfulItem'
{ _uiResourceId :: !(Maybe Text)
, _uiError :: !UnsuccessfulItemError
} deriving (Eq,Read,Show,Data,Typeable,Generic)
unsuccessfulItem
:: UnsuccessfulItemError
-> UnsuccessfulItem
unsuccessfulItem pError_ =
UnsuccessfulItem'
{ _uiResourceId = Nothing
, _uiError = pError_
}
uiResourceId :: Lens' UnsuccessfulItem (Maybe Text)
uiResourceId = lens _uiResourceId (\ s a -> s{_uiResourceId = a});
uiError :: Lens' UnsuccessfulItem UnsuccessfulItemError
uiError = lens _uiError (\ s a -> s{_uiError = a});
instance FromXML UnsuccessfulItem where
parseXML x
= UnsuccessfulItem' <$>
(x .@? "resourceId") <*> (x .@ "error")
instance Hashable UnsuccessfulItem
instance NFData UnsuccessfulItem
data UnsuccessfulItemError = UnsuccessfulItemError'
{ _uieCode :: !Text
, _uieMessage :: !Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
unsuccessfulItemError
:: Text
-> Text
-> UnsuccessfulItemError
unsuccessfulItemError pCode_ pMessage_ =
UnsuccessfulItemError'
{ _uieCode = pCode_
, _uieMessage = pMessage_
}
uieCode :: Lens' UnsuccessfulItemError Text
uieCode = lens _uieCode (\ s a -> s{_uieCode = a});
uieMessage :: Lens' UnsuccessfulItemError Text
uieMessage = lens _uieMessage (\ s a -> s{_uieMessage = a});
instance FromXML UnsuccessfulItemError where
parseXML x
= UnsuccessfulItemError' <$>
(x .@ "code") <*> (x .@ "message")
instance Hashable UnsuccessfulItemError
instance NFData UnsuccessfulItemError
data UserBucket = UserBucket'
{ _ubS3Key :: !(Maybe Text)
, _ubS3Bucket :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
userBucket
:: UserBucket
userBucket =
UserBucket'
{ _ubS3Key = Nothing
, _ubS3Bucket = Nothing
}
ubS3Key :: Lens' UserBucket (Maybe Text)
ubS3Key = lens _ubS3Key (\ s a -> s{_ubS3Key = a});
ubS3Bucket :: Lens' UserBucket (Maybe Text)
ubS3Bucket = lens _ubS3Bucket (\ s a -> s{_ubS3Bucket = a});
instance Hashable UserBucket
instance NFData UserBucket
instance ToQuery UserBucket where
toQuery UserBucket'{..}
= mconcat
["S3Key" =: _ubS3Key, "S3Bucket" =: _ubS3Bucket]
data UserBucketDetails = UserBucketDetails'
{ _ubdS3Key :: !(Maybe Text)
, _ubdS3Bucket :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
userBucketDetails
:: UserBucketDetails
userBucketDetails =
UserBucketDetails'
{ _ubdS3Key = Nothing
, _ubdS3Bucket = Nothing
}
ubdS3Key :: Lens' UserBucketDetails (Maybe Text)
ubdS3Key = lens _ubdS3Key (\ s a -> s{_ubdS3Key = a});
ubdS3Bucket :: Lens' UserBucketDetails (Maybe Text)
ubdS3Bucket = lens _ubdS3Bucket (\ s a -> s{_ubdS3Bucket = a});
instance FromXML UserBucketDetails where
parseXML x
= UserBucketDetails' <$>
(x .@? "s3Key") <*> (x .@? "s3Bucket")
instance Hashable UserBucketDetails
instance NFData UserBucketDetails
newtype UserData = UserData'
{ _udData :: Maybe Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
userData
:: UserData
userData =
UserData'
{ _udData = Nothing
}
udData :: Lens' UserData (Maybe Text)
udData = lens _udData (\ s a -> s{_udData = a});
instance Hashable UserData
instance NFData UserData
instance ToQuery UserData where
toQuery UserData'{..} = mconcat ["Data" =: _udData]
data UserIdGroupPair = UserIdGroupPair'
{ _uigpVPCPeeringConnectionId :: !(Maybe Text)
, _uigpVPCId :: !(Maybe Text)
, _uigpUserId :: !(Maybe Text)
, _uigpGroupId :: !(Maybe Text)
, _uigpGroupName :: !(Maybe Text)
, _uigpPeeringStatus :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
userIdGroupPair
:: UserIdGroupPair
userIdGroupPair =
UserIdGroupPair'
{ _uigpVPCPeeringConnectionId = Nothing
, _uigpVPCId = Nothing
, _uigpUserId = Nothing
, _uigpGroupId = Nothing
, _uigpGroupName = Nothing
, _uigpPeeringStatus = Nothing
}
uigpVPCPeeringConnectionId :: Lens' UserIdGroupPair (Maybe Text)
uigpVPCPeeringConnectionId = lens _uigpVPCPeeringConnectionId (\ s a -> s{_uigpVPCPeeringConnectionId = a});
uigpVPCId :: Lens' UserIdGroupPair (Maybe Text)
uigpVPCId = lens _uigpVPCId (\ s a -> s{_uigpVPCId = a});
uigpUserId :: Lens' UserIdGroupPair (Maybe Text)
uigpUserId = lens _uigpUserId (\ s a -> s{_uigpUserId = a});
uigpGroupId :: Lens' UserIdGroupPair (Maybe Text)
uigpGroupId = lens _uigpGroupId (\ s a -> s{_uigpGroupId = a});
uigpGroupName :: Lens' UserIdGroupPair (Maybe Text)
uigpGroupName = lens _uigpGroupName (\ s a -> s{_uigpGroupName = a});
uigpPeeringStatus :: Lens' UserIdGroupPair (Maybe Text)
uigpPeeringStatus = lens _uigpPeeringStatus (\ s a -> s{_uigpPeeringStatus = a});
instance FromXML UserIdGroupPair where
parseXML x
= UserIdGroupPair' <$>
(x .@? "vpcPeeringConnectionId") <*> (x .@? "vpcId")
<*> (x .@? "userId")
<*> (x .@? "groupId")
<*> (x .@? "groupName")
<*> (x .@? "peeringStatus")
instance Hashable UserIdGroupPair
instance NFData UserIdGroupPair
instance ToQuery UserIdGroupPair where
toQuery UserIdGroupPair'{..}
= mconcat
["VpcPeeringConnectionId" =:
_uigpVPCPeeringConnectionId,
"VpcId" =: _uigpVPCId, "UserId" =: _uigpUserId,
"GroupId" =: _uigpGroupId,
"GroupName" =: _uigpGroupName,
"PeeringStatus" =: _uigpPeeringStatus]
data VGWTelemetry = VGWTelemetry'
{ _vtStatus :: !(Maybe TelemetryStatus)
, _vtOutsideIPAddress :: !(Maybe Text)
, _vtLastStatusChange :: !(Maybe ISO8601)
, _vtAcceptedRouteCount :: !(Maybe Int)
, _vtStatusMessage :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
vgwTelemetry
:: VGWTelemetry
vgwTelemetry =
VGWTelemetry'
{ _vtStatus = Nothing
, _vtOutsideIPAddress = Nothing
, _vtLastStatusChange = Nothing
, _vtAcceptedRouteCount = Nothing
, _vtStatusMessage = Nothing
}
vtStatus :: Lens' VGWTelemetry (Maybe TelemetryStatus)
vtStatus = lens _vtStatus (\ s a -> s{_vtStatus = a});
vtOutsideIPAddress :: Lens' VGWTelemetry (Maybe Text)
vtOutsideIPAddress = lens _vtOutsideIPAddress (\ s a -> s{_vtOutsideIPAddress = a});
vtLastStatusChange :: Lens' VGWTelemetry (Maybe UTCTime)
vtLastStatusChange = lens _vtLastStatusChange (\ s a -> s{_vtLastStatusChange = a}) . mapping _Time;
vtAcceptedRouteCount :: Lens' VGWTelemetry (Maybe Int)
vtAcceptedRouteCount = lens _vtAcceptedRouteCount (\ s a -> s{_vtAcceptedRouteCount = a});
vtStatusMessage :: Lens' VGWTelemetry (Maybe Text)
vtStatusMessage = lens _vtStatusMessage (\ s a -> s{_vtStatusMessage = a});
instance FromXML VGWTelemetry where
parseXML x
= VGWTelemetry' <$>
(x .@? "status") <*> (x .@? "outsideIpAddress") <*>
(x .@? "lastStatusChange")
<*> (x .@? "acceptedRouteCount")
<*> (x .@? "statusMessage")
instance Hashable VGWTelemetry
instance NFData VGWTelemetry
data VPC = VPC'
{ _vpcTags :: !(Maybe [Tag])
, _vpcIsDefault :: !(Maybe Bool)
, _vpcCIdRBlock :: !Text
, _vpcDHCPOptionsId :: !Text
, _vpcInstanceTenancy :: !Tenancy
, _vpcState :: !VPCState
, _vpcVPCId :: !Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
vpc
:: Text
-> Text
-> Tenancy
-> VPCState
-> Text
-> VPC
vpc pCIdRBlock_ pDHCPOptionsId_ pInstanceTenancy_ pState_ pVPCId_ =
VPC'
{ _vpcTags = Nothing
, _vpcIsDefault = Nothing
, _vpcCIdRBlock = pCIdRBlock_
, _vpcDHCPOptionsId = pDHCPOptionsId_
, _vpcInstanceTenancy = pInstanceTenancy_
, _vpcState = pState_
, _vpcVPCId = pVPCId_
}
vpcTags :: Lens' VPC [Tag]
vpcTags = lens _vpcTags (\ s a -> s{_vpcTags = a}) . _Default . _Coerce;
vpcIsDefault :: Lens' VPC (Maybe Bool)
vpcIsDefault = lens _vpcIsDefault (\ s a -> s{_vpcIsDefault = a});
vpcCIdRBlock :: Lens' VPC Text
vpcCIdRBlock = lens _vpcCIdRBlock (\ s a -> s{_vpcCIdRBlock = a});
vpcDHCPOptionsId :: Lens' VPC Text
vpcDHCPOptionsId = lens _vpcDHCPOptionsId (\ s a -> s{_vpcDHCPOptionsId = a});
vpcInstanceTenancy :: Lens' VPC Tenancy
vpcInstanceTenancy = lens _vpcInstanceTenancy (\ s a -> s{_vpcInstanceTenancy = a});
vpcState :: Lens' VPC VPCState
vpcState = lens _vpcState (\ s a -> s{_vpcState = a});
vpcVPCId :: Lens' VPC Text
vpcVPCId = lens _vpcVPCId (\ s a -> s{_vpcVPCId = a});
instance FromXML VPC where
parseXML x
= VPC' <$>
(x .@? "tagSet" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "isDefault")
<*> (x .@ "cidrBlock")
<*> (x .@ "dhcpOptionsId")
<*> (x .@ "instanceTenancy")
<*> (x .@ "state")
<*> (x .@ "vpcId")
instance Hashable VPC
instance NFData VPC
data VPCAttachment = VPCAttachment'
{ _vaState :: !(Maybe AttachmentStatus)
, _vaVPCId :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
vpcAttachment
:: VPCAttachment
vpcAttachment =
VPCAttachment'
{ _vaState = Nothing
, _vaVPCId = Nothing
}
vaState :: Lens' VPCAttachment (Maybe AttachmentStatus)
vaState = lens _vaState (\ s a -> s{_vaState = a});
vaVPCId :: Lens' VPCAttachment (Maybe Text)
vaVPCId = lens _vaVPCId (\ s a -> s{_vaVPCId = a});
instance FromXML VPCAttachment where
parseXML x
= VPCAttachment' <$>
(x .@? "state") <*> (x .@? "vpcId")
instance Hashable VPCAttachment
instance NFData VPCAttachment
data VPCClassicLink = VPCClassicLink'
{ _vclVPCId :: !(Maybe Text)
, _vclTags :: !(Maybe [Tag])
, _vclClassicLinkEnabled :: !(Maybe Bool)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
vpcClassicLink
:: VPCClassicLink
vpcClassicLink =
VPCClassicLink'
{ _vclVPCId = Nothing
, _vclTags = Nothing
, _vclClassicLinkEnabled = Nothing
}
vclVPCId :: Lens' VPCClassicLink (Maybe Text)
vclVPCId = lens _vclVPCId (\ s a -> s{_vclVPCId = a});
vclTags :: Lens' VPCClassicLink [Tag]
vclTags = lens _vclTags (\ s a -> s{_vclTags = a}) . _Default . _Coerce;
vclClassicLinkEnabled :: Lens' VPCClassicLink (Maybe Bool)
vclClassicLinkEnabled = lens _vclClassicLinkEnabled (\ s a -> s{_vclClassicLinkEnabled = a});
instance FromXML VPCClassicLink where
parseXML x
= VPCClassicLink' <$>
(x .@? "vpcId") <*>
(x .@? "tagSet" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "classicLinkEnabled")
instance Hashable VPCClassicLink
instance NFData VPCClassicLink
data VPCEndpoint = VPCEndpoint'
{ _veState :: !(Maybe State)
, _vePolicyDocument :: !(Maybe Text)
, _veVPCId :: !(Maybe Text)
, _veCreationTimestamp :: !(Maybe ISO8601)
, _veServiceName :: !(Maybe Text)
, _veVPCEndpointId :: !(Maybe Text)
, _veRouteTableIds :: !(Maybe [Text])
} deriving (Eq,Read,Show,Data,Typeable,Generic)
vpcEndpoint
:: VPCEndpoint
vpcEndpoint =
VPCEndpoint'
{ _veState = Nothing
, _vePolicyDocument = Nothing
, _veVPCId = Nothing
, _veCreationTimestamp = Nothing
, _veServiceName = Nothing
, _veVPCEndpointId = Nothing
, _veRouteTableIds = Nothing
}
veState :: Lens' VPCEndpoint (Maybe State)
veState = lens _veState (\ s a -> s{_veState = a});
vePolicyDocument :: Lens' VPCEndpoint (Maybe Text)
vePolicyDocument = lens _vePolicyDocument (\ s a -> s{_vePolicyDocument = a});
veVPCId :: Lens' VPCEndpoint (Maybe Text)
veVPCId = lens _veVPCId (\ s a -> s{_veVPCId = a});
veCreationTimestamp :: Lens' VPCEndpoint (Maybe UTCTime)
veCreationTimestamp = lens _veCreationTimestamp (\ s a -> s{_veCreationTimestamp = a}) . mapping _Time;
veServiceName :: Lens' VPCEndpoint (Maybe Text)
veServiceName = lens _veServiceName (\ s a -> s{_veServiceName = a});
veVPCEndpointId :: Lens' VPCEndpoint (Maybe Text)
veVPCEndpointId = lens _veVPCEndpointId (\ s a -> s{_veVPCEndpointId = a});
veRouteTableIds :: Lens' VPCEndpoint [Text]
veRouteTableIds = lens _veRouteTableIds (\ s a -> s{_veRouteTableIds = a}) . _Default . _Coerce;
instance FromXML VPCEndpoint where
parseXML x
= VPCEndpoint' <$>
(x .@? "state") <*> (x .@? "policyDocument") <*>
(x .@? "vpcId")
<*> (x .@? "creationTimestamp")
<*> (x .@? "serviceName")
<*> (x .@? "vpcEndpointId")
<*>
(x .@? "routeTableIdSet" .!@ mempty >>=
may (parseXMLList "item"))
instance Hashable VPCEndpoint
instance NFData VPCEndpoint
data VPCPeeringConnection = VPCPeeringConnection'
{ _vpcpcVPCPeeringConnectionId :: !(Maybe Text)
, _vpcpcStatus :: !(Maybe VPCPeeringConnectionStateReason)
, _vpcpcAccepterVPCInfo :: !(Maybe VPCPeeringConnectionVPCInfo)
, _vpcpcRequesterVPCInfo :: !(Maybe VPCPeeringConnectionVPCInfo)
, _vpcpcExpirationTime :: !(Maybe ISO8601)
, _vpcpcTags :: !(Maybe [Tag])
} deriving (Eq,Read,Show,Data,Typeable,Generic)
vpcPeeringConnection
:: VPCPeeringConnection
vpcPeeringConnection =
VPCPeeringConnection'
{ _vpcpcVPCPeeringConnectionId = Nothing
, _vpcpcStatus = Nothing
, _vpcpcAccepterVPCInfo = Nothing
, _vpcpcRequesterVPCInfo = Nothing
, _vpcpcExpirationTime = Nothing
, _vpcpcTags = Nothing
}
vpcpcVPCPeeringConnectionId :: Lens' VPCPeeringConnection (Maybe Text)
vpcpcVPCPeeringConnectionId = lens _vpcpcVPCPeeringConnectionId (\ s a -> s{_vpcpcVPCPeeringConnectionId = a});
vpcpcStatus :: Lens' VPCPeeringConnection (Maybe VPCPeeringConnectionStateReason)
vpcpcStatus = lens _vpcpcStatus (\ s a -> s{_vpcpcStatus = a});
vpcpcAccepterVPCInfo :: Lens' VPCPeeringConnection (Maybe VPCPeeringConnectionVPCInfo)
vpcpcAccepterVPCInfo = lens _vpcpcAccepterVPCInfo (\ s a -> s{_vpcpcAccepterVPCInfo = a});
vpcpcRequesterVPCInfo :: Lens' VPCPeeringConnection (Maybe VPCPeeringConnectionVPCInfo)
vpcpcRequesterVPCInfo = lens _vpcpcRequesterVPCInfo (\ s a -> s{_vpcpcRequesterVPCInfo = a});
vpcpcExpirationTime :: Lens' VPCPeeringConnection (Maybe UTCTime)
vpcpcExpirationTime = lens _vpcpcExpirationTime (\ s a -> s{_vpcpcExpirationTime = a}) . mapping _Time;
vpcpcTags :: Lens' VPCPeeringConnection [Tag]
vpcpcTags = lens _vpcpcTags (\ s a -> s{_vpcpcTags = a}) . _Default . _Coerce;
instance FromXML VPCPeeringConnection where
parseXML x
= VPCPeeringConnection' <$>
(x .@? "vpcPeeringConnectionId") <*> (x .@? "status")
<*> (x .@? "accepterVpcInfo")
<*> (x .@? "requesterVpcInfo")
<*> (x .@? "expirationTime")
<*>
(x .@? "tagSet" .!@ mempty >>=
may (parseXMLList "item"))
instance Hashable VPCPeeringConnection
instance NFData VPCPeeringConnection
data VPCPeeringConnectionOptionsDescription = VPCPeeringConnectionOptionsDescription'
{ _vpcodAllowEgressFromLocalVPCToRemoteClassicLink :: !(Maybe Bool)
, _vpcodAllowEgressFromLocalClassicLinkToRemoteVPC :: !(Maybe Bool)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
vpcPeeringConnectionOptionsDescription
:: VPCPeeringConnectionOptionsDescription
vpcPeeringConnectionOptionsDescription =
VPCPeeringConnectionOptionsDescription'
{ _vpcodAllowEgressFromLocalVPCToRemoteClassicLink = Nothing
, _vpcodAllowEgressFromLocalClassicLinkToRemoteVPC = Nothing
}
vpcodAllowEgressFromLocalVPCToRemoteClassicLink :: Lens' VPCPeeringConnectionOptionsDescription (Maybe Bool)
vpcodAllowEgressFromLocalVPCToRemoteClassicLink = lens _vpcodAllowEgressFromLocalVPCToRemoteClassicLink (\ s a -> s{_vpcodAllowEgressFromLocalVPCToRemoteClassicLink = a});
vpcodAllowEgressFromLocalClassicLinkToRemoteVPC :: Lens' VPCPeeringConnectionOptionsDescription (Maybe Bool)
vpcodAllowEgressFromLocalClassicLinkToRemoteVPC = lens _vpcodAllowEgressFromLocalClassicLinkToRemoteVPC (\ s a -> s{_vpcodAllowEgressFromLocalClassicLinkToRemoteVPC = a});
instance FromXML
VPCPeeringConnectionOptionsDescription where
parseXML x
= VPCPeeringConnectionOptionsDescription' <$>
(x .@? "allowEgressFromLocalVpcToRemoteClassicLink")
<*>
(x .@? "allowEgressFromLocalClassicLinkToRemoteVpc")
instance Hashable
VPCPeeringConnectionOptionsDescription
instance NFData
VPCPeeringConnectionOptionsDescription
data VPCPeeringConnectionStateReason = VPCPeeringConnectionStateReason'
{ _vpcsrCode :: !(Maybe VPCPeeringConnectionStateReasonCode)
, _vpcsrMessage :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
vpcPeeringConnectionStateReason
:: VPCPeeringConnectionStateReason
vpcPeeringConnectionStateReason =
VPCPeeringConnectionStateReason'
{ _vpcsrCode = Nothing
, _vpcsrMessage = Nothing
}
vpcsrCode :: Lens' VPCPeeringConnectionStateReason (Maybe VPCPeeringConnectionStateReasonCode)
vpcsrCode = lens _vpcsrCode (\ s a -> s{_vpcsrCode = a});
vpcsrMessage :: Lens' VPCPeeringConnectionStateReason (Maybe Text)
vpcsrMessage = lens _vpcsrMessage (\ s a -> s{_vpcsrMessage = a});
instance FromXML VPCPeeringConnectionStateReason
where
parseXML x
= VPCPeeringConnectionStateReason' <$>
(x .@? "code") <*> (x .@? "message")
instance Hashable VPCPeeringConnectionStateReason
instance NFData VPCPeeringConnectionStateReason
data VPCPeeringConnectionVPCInfo = VPCPeeringConnectionVPCInfo'
{ _vpcviVPCId :: !(Maybe Text)
, _vpcviOwnerId :: !(Maybe Text)
, _vpcviPeeringOptions :: !(Maybe VPCPeeringConnectionOptionsDescription)
, _vpcviCIdRBlock :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
vpcPeeringConnectionVPCInfo
:: VPCPeeringConnectionVPCInfo
vpcPeeringConnectionVPCInfo =
VPCPeeringConnectionVPCInfo'
{ _vpcviVPCId = Nothing
, _vpcviOwnerId = Nothing
, _vpcviPeeringOptions = Nothing
, _vpcviCIdRBlock = Nothing
}
vpcviVPCId :: Lens' VPCPeeringConnectionVPCInfo (Maybe Text)
vpcviVPCId = lens _vpcviVPCId (\ s a -> s{_vpcviVPCId = a});
vpcviOwnerId :: Lens' VPCPeeringConnectionVPCInfo (Maybe Text)
vpcviOwnerId = lens _vpcviOwnerId (\ s a -> s{_vpcviOwnerId = a});
vpcviPeeringOptions :: Lens' VPCPeeringConnectionVPCInfo (Maybe VPCPeeringConnectionOptionsDescription)
vpcviPeeringOptions = lens _vpcviPeeringOptions (\ s a -> s{_vpcviPeeringOptions = a});
vpcviCIdRBlock :: Lens' VPCPeeringConnectionVPCInfo (Maybe Text)
vpcviCIdRBlock = lens _vpcviCIdRBlock (\ s a -> s{_vpcviCIdRBlock = a});
instance FromXML VPCPeeringConnectionVPCInfo where
parseXML x
= VPCPeeringConnectionVPCInfo' <$>
(x .@? "vpcId") <*> (x .@? "ownerId") <*>
(x .@? "peeringOptions")
<*> (x .@? "cidrBlock")
instance Hashable VPCPeeringConnectionVPCInfo
instance NFData VPCPeeringConnectionVPCInfo
data VPNConnection = VPNConnection'
{ _vcCustomerGatewayConfiguration :: !(Maybe Text)
, _vcRoutes :: !(Maybe [VPNStaticRoute])
, _vcVPNGatewayId :: !(Maybe Text)
, _vcOptions :: !(Maybe VPNConnectionOptions)
, _vcTags :: !(Maybe [Tag])
, _vcVGWTelemetry :: !(Maybe [VGWTelemetry])
, _vcVPNConnectionId :: !Text
, _vcCustomerGatewayId :: !Text
, _vcState :: !VPNState
, _vcType :: !GatewayType
} deriving (Eq,Read,Show,Data,Typeable,Generic)
vpnConnection
:: Text
-> Text
-> VPNState
-> GatewayType
-> VPNConnection
vpnConnection pVPNConnectionId_ pCustomerGatewayId_ pState_ pType_ =
VPNConnection'
{ _vcCustomerGatewayConfiguration = Nothing
, _vcRoutes = Nothing
, _vcVPNGatewayId = Nothing
, _vcOptions = Nothing
, _vcTags = Nothing
, _vcVGWTelemetry = Nothing
, _vcVPNConnectionId = pVPNConnectionId_
, _vcCustomerGatewayId = pCustomerGatewayId_
, _vcState = pState_
, _vcType = pType_
}
vcCustomerGatewayConfiguration :: Lens' VPNConnection (Maybe Text)
vcCustomerGatewayConfiguration = lens _vcCustomerGatewayConfiguration (\ s a -> s{_vcCustomerGatewayConfiguration = a});
vcRoutes :: Lens' VPNConnection [VPNStaticRoute]
vcRoutes = lens _vcRoutes (\ s a -> s{_vcRoutes = a}) . _Default . _Coerce;
vcVPNGatewayId :: Lens' VPNConnection (Maybe Text)
vcVPNGatewayId = lens _vcVPNGatewayId (\ s a -> s{_vcVPNGatewayId = a});
vcOptions :: Lens' VPNConnection (Maybe VPNConnectionOptions)
vcOptions = lens _vcOptions (\ s a -> s{_vcOptions = a});
vcTags :: Lens' VPNConnection [Tag]
vcTags = lens _vcTags (\ s a -> s{_vcTags = a}) . _Default . _Coerce;
vcVGWTelemetry :: Lens' VPNConnection [VGWTelemetry]
vcVGWTelemetry = lens _vcVGWTelemetry (\ s a -> s{_vcVGWTelemetry = a}) . _Default . _Coerce;
vcVPNConnectionId :: Lens' VPNConnection Text
vcVPNConnectionId = lens _vcVPNConnectionId (\ s a -> s{_vcVPNConnectionId = a});
vcCustomerGatewayId :: Lens' VPNConnection Text
vcCustomerGatewayId = lens _vcCustomerGatewayId (\ s a -> s{_vcCustomerGatewayId = a});
vcState :: Lens' VPNConnection VPNState
vcState = lens _vcState (\ s a -> s{_vcState = a});
vcType :: Lens' VPNConnection GatewayType
vcType = lens _vcType (\ s a -> s{_vcType = a});
instance FromXML VPNConnection where
parseXML x
= VPNConnection' <$>
(x .@? "customerGatewayConfiguration") <*>
(x .@? "routes" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "vpnGatewayId")
<*> (x .@? "options")
<*>
(x .@? "tagSet" .!@ mempty >>=
may (parseXMLList "item"))
<*>
(x .@? "vgwTelemetry" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@ "vpnConnectionId")
<*> (x .@ "customerGatewayId")
<*> (x .@ "state")
<*> (x .@ "type")
instance Hashable VPNConnection
instance NFData VPNConnection
newtype VPNConnectionOptions = VPNConnectionOptions'
{ _vcoStaticRoutesOnly :: Maybe Bool
} deriving (Eq,Read,Show,Data,Typeable,Generic)
vpnConnectionOptions
:: VPNConnectionOptions
vpnConnectionOptions =
VPNConnectionOptions'
{ _vcoStaticRoutesOnly = Nothing
}
vcoStaticRoutesOnly :: Lens' VPNConnectionOptions (Maybe Bool)
vcoStaticRoutesOnly = lens _vcoStaticRoutesOnly (\ s a -> s{_vcoStaticRoutesOnly = a});
instance FromXML VPNConnectionOptions where
parseXML x
= VPNConnectionOptions' <$>
(x .@? "staticRoutesOnly")
instance Hashable VPNConnectionOptions
instance NFData VPNConnectionOptions
newtype VPNConnectionOptionsSpecification = VPNConnectionOptionsSpecification'
{ _vcosStaticRoutesOnly :: Maybe Bool
} deriving (Eq,Read,Show,Data,Typeable,Generic)
vpnConnectionOptionsSpecification
:: VPNConnectionOptionsSpecification
vpnConnectionOptionsSpecification =
VPNConnectionOptionsSpecification'
{ _vcosStaticRoutesOnly = Nothing
}
vcosStaticRoutesOnly :: Lens' VPNConnectionOptionsSpecification (Maybe Bool)
vcosStaticRoutesOnly = lens _vcosStaticRoutesOnly (\ s a -> s{_vcosStaticRoutesOnly = a});
instance Hashable VPNConnectionOptionsSpecification
instance NFData VPNConnectionOptionsSpecification
instance ToQuery VPNConnectionOptionsSpecification
where
toQuery VPNConnectionOptionsSpecification'{..}
= mconcat
["StaticRoutesOnly" =: _vcosStaticRoutesOnly]
data VPNGateway = VPNGateway'
{ _vgState :: !(Maybe VPNState)
, _vgVPCAttachments :: !(Maybe [VPCAttachment])
, _vgVPNGatewayId :: !(Maybe Text)
, _vgAvailabilityZone :: !(Maybe Text)
, _vgType :: !(Maybe GatewayType)
, _vgTags :: !(Maybe [Tag])
} deriving (Eq,Read,Show,Data,Typeable,Generic)
vpnGateway
:: VPNGateway
vpnGateway =
VPNGateway'
{ _vgState = Nothing
, _vgVPCAttachments = Nothing
, _vgVPNGatewayId = Nothing
, _vgAvailabilityZone = Nothing
, _vgType = Nothing
, _vgTags = Nothing
}
vgState :: Lens' VPNGateway (Maybe VPNState)
vgState = lens _vgState (\ s a -> s{_vgState = a});
vgVPCAttachments :: Lens' VPNGateway [VPCAttachment]
vgVPCAttachments = lens _vgVPCAttachments (\ s a -> s{_vgVPCAttachments = a}) . _Default . _Coerce;
vgVPNGatewayId :: Lens' VPNGateway (Maybe Text)
vgVPNGatewayId = lens _vgVPNGatewayId (\ s a -> s{_vgVPNGatewayId = a});
vgAvailabilityZone :: Lens' VPNGateway (Maybe Text)
vgAvailabilityZone = lens _vgAvailabilityZone (\ s a -> s{_vgAvailabilityZone = a});
vgType :: Lens' VPNGateway (Maybe GatewayType)
vgType = lens _vgType (\ s a -> s{_vgType = a});
vgTags :: Lens' VPNGateway [Tag]
vgTags = lens _vgTags (\ s a -> s{_vgTags = a}) . _Default . _Coerce;
instance FromXML VPNGateway where
parseXML x
= VPNGateway' <$>
(x .@? "state") <*>
(x .@? "attachments" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "vpnGatewayId")
<*> (x .@? "availabilityZone")
<*> (x .@? "type")
<*>
(x .@? "tagSet" .!@ mempty >>=
may (parseXMLList "item"))
instance Hashable VPNGateway
instance NFData VPNGateway
data VPNStaticRoute = VPNStaticRoute'
{ _vsrState :: !(Maybe VPNState)
, _vsrSource :: !(Maybe VPNStaticRouteSource)
, _vsrDestinationCIdRBlock :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
vpnStaticRoute
:: VPNStaticRoute
vpnStaticRoute =
VPNStaticRoute'
{ _vsrState = Nothing
, _vsrSource = Nothing
, _vsrDestinationCIdRBlock = Nothing
}
vsrState :: Lens' VPNStaticRoute (Maybe VPNState)
vsrState = lens _vsrState (\ s a -> s{_vsrState = a});
vsrSource :: Lens' VPNStaticRoute (Maybe VPNStaticRouteSource)
vsrSource = lens _vsrSource (\ s a -> s{_vsrSource = a});
vsrDestinationCIdRBlock :: Lens' VPNStaticRoute (Maybe Text)
vsrDestinationCIdRBlock = lens _vsrDestinationCIdRBlock (\ s a -> s{_vsrDestinationCIdRBlock = a});
instance FromXML VPNStaticRoute where
parseXML x
= VPNStaticRoute' <$>
(x .@? "state") <*> (x .@? "source") <*>
(x .@? "destinationCidrBlock")
instance Hashable VPNStaticRoute
instance NFData VPNStaticRoute
data Volume = Volume'
{ _vAttachments :: !(Maybe [VolumeAttachment])
, _vIOPS :: !(Maybe Int)
, _vKMSKeyId :: !(Maybe Text)
, _vTags :: !(Maybe [Tag])
, _vAvailabilityZone :: !Text
, _vCreateTime :: !ISO8601
, _vEncrypted :: !Bool
, _vSize :: !Int
, _vSnapshotId :: !Text
, _vState :: !VolumeState
, _vVolumeId :: !Text
, _vVolumeType :: !VolumeType
} deriving (Eq,Read,Show,Data,Typeable,Generic)
volume
:: Text
-> UTCTime
-> Bool
-> Int
-> Text
-> VolumeState
-> Text
-> VolumeType
-> Volume
volume pAvailabilityZone_ pCreateTime_ pEncrypted_ pSize_ pSnapshotId_ pState_ pVolumeId_ pVolumeType_ =
Volume'
{ _vAttachments = Nothing
, _vIOPS = Nothing
, _vKMSKeyId = Nothing
, _vTags = Nothing
, _vAvailabilityZone = pAvailabilityZone_
, _vCreateTime = _Time # pCreateTime_
, _vEncrypted = pEncrypted_
, _vSize = pSize_
, _vSnapshotId = pSnapshotId_
, _vState = pState_
, _vVolumeId = pVolumeId_
, _vVolumeType = pVolumeType_
}
vAttachments :: Lens' Volume [VolumeAttachment]
vAttachments = lens _vAttachments (\ s a -> s{_vAttachments = a}) . _Default . _Coerce;
vIOPS :: Lens' Volume (Maybe Int)
vIOPS = lens _vIOPS (\ s a -> s{_vIOPS = a});
vKMSKeyId :: Lens' Volume (Maybe Text)
vKMSKeyId = lens _vKMSKeyId (\ s a -> s{_vKMSKeyId = a});
vTags :: Lens' Volume [Tag]
vTags = lens _vTags (\ s a -> s{_vTags = a}) . _Default . _Coerce;
vAvailabilityZone :: Lens' Volume Text
vAvailabilityZone = lens _vAvailabilityZone (\ s a -> s{_vAvailabilityZone = a});
vCreateTime :: Lens' Volume UTCTime
vCreateTime = lens _vCreateTime (\ s a -> s{_vCreateTime = a}) . _Time;
vEncrypted :: Lens' Volume Bool
vEncrypted = lens _vEncrypted (\ s a -> s{_vEncrypted = a});
vSize :: Lens' Volume Int
vSize = lens _vSize (\ s a -> s{_vSize = a});
vSnapshotId :: Lens' Volume Text
vSnapshotId = lens _vSnapshotId (\ s a -> s{_vSnapshotId = a});
vState :: Lens' Volume VolumeState
vState = lens _vState (\ s a -> s{_vState = a});
vVolumeId :: Lens' Volume Text
vVolumeId = lens _vVolumeId (\ s a -> s{_vVolumeId = a});
vVolumeType :: Lens' Volume VolumeType
vVolumeType = lens _vVolumeType (\ s a -> s{_vVolumeType = a});
instance FromXML Volume where
parseXML x
= Volume' <$>
(x .@? "attachmentSet" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "iops")
<*> (x .@? "kmsKeyId")
<*>
(x .@? "tagSet" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@ "availabilityZone")
<*> (x .@ "createTime")
<*> (x .@ "encrypted")
<*> (x .@ "size")
<*> (x .@ "snapshotId")
<*> (x .@ "status")
<*> (x .@ "volumeId")
<*> (x .@ "volumeType")
instance Hashable Volume
instance NFData Volume
data VolumeAttachment = VolumeAttachment'
{ _volInstanceId :: !(Maybe Text)
, _volDeleteOnTermination :: !(Maybe Bool)
, _volState :: !(Maybe VolumeAttachmentState)
, _volDevice :: !(Maybe Text)
, _volVolumeId :: !(Maybe Text)
, _volAttachTime :: !(Maybe ISO8601)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
volumeAttachment
:: VolumeAttachment
volumeAttachment =
VolumeAttachment'
{ _volInstanceId = Nothing
, _volDeleteOnTermination = Nothing
, _volState = Nothing
, _volDevice = Nothing
, _volVolumeId = Nothing
, _volAttachTime = Nothing
}
volInstanceId :: Lens' VolumeAttachment (Maybe Text)
volInstanceId = lens _volInstanceId (\ s a -> s{_volInstanceId = a});
volDeleteOnTermination :: Lens' VolumeAttachment (Maybe Bool)
volDeleteOnTermination = lens _volDeleteOnTermination (\ s a -> s{_volDeleteOnTermination = a});
volState :: Lens' VolumeAttachment (Maybe VolumeAttachmentState)
volState = lens _volState (\ s a -> s{_volState = a});
volDevice :: Lens' VolumeAttachment (Maybe Text)
volDevice = lens _volDevice (\ s a -> s{_volDevice = a});
volVolumeId :: Lens' VolumeAttachment (Maybe Text)
volVolumeId = lens _volVolumeId (\ s a -> s{_volVolumeId = a});
volAttachTime :: Lens' VolumeAttachment (Maybe UTCTime)
volAttachTime = lens _volAttachTime (\ s a -> s{_volAttachTime = a}) . mapping _Time;
instance FromXML VolumeAttachment where
parseXML x
= VolumeAttachment' <$>
(x .@? "instanceId") <*>
(x .@? "deleteOnTermination")
<*> (x .@? "status")
<*> (x .@? "device")
<*> (x .@? "volumeId")
<*> (x .@? "attachTime")
instance Hashable VolumeAttachment
instance NFData VolumeAttachment
newtype VolumeDetail = VolumeDetail'
{ _vdSize :: Integer
} deriving (Eq,Read,Show,Data,Typeable,Generic)
volumeDetail
:: Integer
-> VolumeDetail
volumeDetail pSize_ =
VolumeDetail'
{ _vdSize = pSize_
}
vdSize :: Lens' VolumeDetail Integer
vdSize = lens _vdSize (\ s a -> s{_vdSize = a});
instance Hashable VolumeDetail
instance NFData VolumeDetail
instance ToQuery VolumeDetail where
toQuery VolumeDetail'{..}
= mconcat ["Size" =: _vdSize]
data VolumeStatusAction = VolumeStatusAction'
{ _vsaEventType :: !(Maybe Text)
, _vsaCode :: !(Maybe Text)
, _vsaDescription :: !(Maybe Text)
, _vsaEventId :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
volumeStatusAction
:: VolumeStatusAction
volumeStatusAction =
VolumeStatusAction'
{ _vsaEventType = Nothing
, _vsaCode = Nothing
, _vsaDescription = Nothing
, _vsaEventId = Nothing
}
vsaEventType :: Lens' VolumeStatusAction (Maybe Text)
vsaEventType = lens _vsaEventType (\ s a -> s{_vsaEventType = a});
vsaCode :: Lens' VolumeStatusAction (Maybe Text)
vsaCode = lens _vsaCode (\ s a -> s{_vsaCode = a});
vsaDescription :: Lens' VolumeStatusAction (Maybe Text)
vsaDescription = lens _vsaDescription (\ s a -> s{_vsaDescription = a});
vsaEventId :: Lens' VolumeStatusAction (Maybe Text)
vsaEventId = lens _vsaEventId (\ s a -> s{_vsaEventId = a});
instance FromXML VolumeStatusAction where
parseXML x
= VolumeStatusAction' <$>
(x .@? "eventType") <*> (x .@? "code") <*>
(x .@? "description")
<*> (x .@? "eventId")
instance Hashable VolumeStatusAction
instance NFData VolumeStatusAction
data VolumeStatusDetails = VolumeStatusDetails'
{ _vsdStatus :: !(Maybe Text)
, _vsdName :: !(Maybe VolumeStatusName)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
volumeStatusDetails
:: VolumeStatusDetails
volumeStatusDetails =
VolumeStatusDetails'
{ _vsdStatus = Nothing
, _vsdName = Nothing
}
vsdStatus :: Lens' VolumeStatusDetails (Maybe Text)
vsdStatus = lens _vsdStatus (\ s a -> s{_vsdStatus = a});
vsdName :: Lens' VolumeStatusDetails (Maybe VolumeStatusName)
vsdName = lens _vsdName (\ s a -> s{_vsdName = a});
instance FromXML VolumeStatusDetails where
parseXML x
= VolumeStatusDetails' <$>
(x .@? "status") <*> (x .@? "name")
instance Hashable VolumeStatusDetails
instance NFData VolumeStatusDetails
data VolumeStatusEvent = VolumeStatusEvent'
{ _vseNotBefore :: !(Maybe ISO8601)
, _vseEventType :: !(Maybe Text)
, _vseDescription :: !(Maybe Text)
, _vseNotAfter :: !(Maybe ISO8601)
, _vseEventId :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
volumeStatusEvent
:: VolumeStatusEvent
volumeStatusEvent =
VolumeStatusEvent'
{ _vseNotBefore = Nothing
, _vseEventType = Nothing
, _vseDescription = Nothing
, _vseNotAfter = Nothing
, _vseEventId = Nothing
}
vseNotBefore :: Lens' VolumeStatusEvent (Maybe UTCTime)
vseNotBefore = lens _vseNotBefore (\ s a -> s{_vseNotBefore = a}) . mapping _Time;
vseEventType :: Lens' VolumeStatusEvent (Maybe Text)
vseEventType = lens _vseEventType (\ s a -> s{_vseEventType = a});
vseDescription :: Lens' VolumeStatusEvent (Maybe Text)
vseDescription = lens _vseDescription (\ s a -> s{_vseDescription = a});
vseNotAfter :: Lens' VolumeStatusEvent (Maybe UTCTime)
vseNotAfter = lens _vseNotAfter (\ s a -> s{_vseNotAfter = a}) . mapping _Time;
vseEventId :: Lens' VolumeStatusEvent (Maybe Text)
vseEventId = lens _vseEventId (\ s a -> s{_vseEventId = a});
instance FromXML VolumeStatusEvent where
parseXML x
= VolumeStatusEvent' <$>
(x .@? "notBefore") <*> (x .@? "eventType") <*>
(x .@? "description")
<*> (x .@? "notAfter")
<*> (x .@? "eventId")
instance Hashable VolumeStatusEvent
instance NFData VolumeStatusEvent
data VolumeStatusInfo = VolumeStatusInfo'
{ _vsiStatus :: !(Maybe VolumeStatusInfoStatus)
, _vsiDetails :: !(Maybe [VolumeStatusDetails])
} deriving (Eq,Read,Show,Data,Typeable,Generic)
volumeStatusInfo
:: VolumeStatusInfo
volumeStatusInfo =
VolumeStatusInfo'
{ _vsiStatus = Nothing
, _vsiDetails = Nothing
}
vsiStatus :: Lens' VolumeStatusInfo (Maybe VolumeStatusInfoStatus)
vsiStatus = lens _vsiStatus (\ s a -> s{_vsiStatus = a});
vsiDetails :: Lens' VolumeStatusInfo [VolumeStatusDetails]
vsiDetails = lens _vsiDetails (\ s a -> s{_vsiDetails = a}) . _Default . _Coerce;
instance FromXML VolumeStatusInfo where
parseXML x
= VolumeStatusInfo' <$>
(x .@? "status") <*>
(x .@? "details" .!@ mempty >>=
may (parseXMLList "item"))
instance Hashable VolumeStatusInfo
instance NFData VolumeStatusInfo
data VolumeStatusItem = VolumeStatusItem'
{ _vsiVolumeStatus :: !(Maybe VolumeStatusInfo)
, _vsiActions :: !(Maybe [VolumeStatusAction])
, _vsiEvents :: !(Maybe [VolumeStatusEvent])
, _vsiAvailabilityZone :: !(Maybe Text)
, _vsiVolumeId :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
volumeStatusItem
:: VolumeStatusItem
volumeStatusItem =
VolumeStatusItem'
{ _vsiVolumeStatus = Nothing
, _vsiActions = Nothing
, _vsiEvents = Nothing
, _vsiAvailabilityZone = Nothing
, _vsiVolumeId = Nothing
}
vsiVolumeStatus :: Lens' VolumeStatusItem (Maybe VolumeStatusInfo)
vsiVolumeStatus = lens _vsiVolumeStatus (\ s a -> s{_vsiVolumeStatus = a});
vsiActions :: Lens' VolumeStatusItem [VolumeStatusAction]
vsiActions = lens _vsiActions (\ s a -> s{_vsiActions = a}) . _Default . _Coerce;
vsiEvents :: Lens' VolumeStatusItem [VolumeStatusEvent]
vsiEvents = lens _vsiEvents (\ s a -> s{_vsiEvents = a}) . _Default . _Coerce;
vsiAvailabilityZone :: Lens' VolumeStatusItem (Maybe Text)
vsiAvailabilityZone = lens _vsiAvailabilityZone (\ s a -> s{_vsiAvailabilityZone = a});
vsiVolumeId :: Lens' VolumeStatusItem (Maybe Text)
vsiVolumeId = lens _vsiVolumeId (\ s a -> s{_vsiVolumeId = a});
instance FromXML VolumeStatusItem where
parseXML x
= VolumeStatusItem' <$>
(x .@? "volumeStatus") <*>
(x .@? "actionsSet" .!@ mempty >>=
may (parseXMLList "item"))
<*>
(x .@? "eventsSet" .!@ mempty >>=
may (parseXMLList "item"))
<*> (x .@? "availabilityZone")
<*> (x .@? "volumeId")
instance Hashable VolumeStatusItem
instance NFData VolumeStatusItem