module Stratosphere.Resources.EIPAssociation where
import Control.Lens
import Data.Aeson
import Data.Aeson.Types
import Data.Text
import GHC.Generics
import Stratosphere.Values
data EIPAssociation =
EIPAssociation
{ _eIPAssociationAllocationId :: Maybe (Val Text)
, _eIPAssociationEIP :: Maybe (Val Text)
, _eIPAssociationInstanceId :: Maybe (Val Text)
, _eIPAssociationNetworkInterfaceId :: Maybe (Val Text)
, _eIPAssociationPrivateIpAddress :: Maybe (Val Text)
} deriving (Show, Generic)
instance ToJSON EIPAssociation where
toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 15, omitNothingFields = True }
instance FromJSON EIPAssociation where
parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 15, omitNothingFields = True }
eipAssociation
:: EIPAssociation
eipAssociation =
EIPAssociation
{ _eIPAssociationAllocationId = Nothing
, _eIPAssociationEIP = Nothing
, _eIPAssociationInstanceId = Nothing
, _eIPAssociationNetworkInterfaceId = Nothing
, _eIPAssociationPrivateIpAddress = Nothing
}
eipaAllocationId :: Lens' EIPAssociation (Maybe (Val Text))
eipaAllocationId = lens _eIPAssociationAllocationId (\s a -> s { _eIPAssociationAllocationId = a })
eipaEIP :: Lens' EIPAssociation (Maybe (Val Text))
eipaEIP = lens _eIPAssociationEIP (\s a -> s { _eIPAssociationEIP = a })
eipaInstanceId :: Lens' EIPAssociation (Maybe (Val Text))
eipaInstanceId = lens _eIPAssociationInstanceId (\s a -> s { _eIPAssociationInstanceId = a })
eipaNetworkInterfaceId :: Lens' EIPAssociation (Maybe (Val Text))
eipaNetworkInterfaceId = lens _eIPAssociationNetworkInterfaceId (\s a -> s { _eIPAssociationNetworkInterfaceId = a })
eipaPrivateIpAddress :: Lens' EIPAssociation (Maybe (Val Text))
eipaPrivateIpAddress = lens _eIPAssociationPrivateIpAddress (\s a -> s { _eIPAssociationPrivateIpAddress = a })