module Stratosphere.EC2.NetworkInsightsAccessScope.PacketHeaderStatementRequestProperty ( PacketHeaderStatementRequestProperty(..), mkPacketHeaderStatementRequestProperty ) where import qualified Data.Aeson as JSON import qualified Stratosphere.Prelude as Prelude import Stratosphere.Property import Stratosphere.ResourceProperties import Stratosphere.Value data PacketHeaderStatementRequestProperty = -- | See: PacketHeaderStatementRequestProperty {haddock_workaround_ :: (), -- | See: destinationAddresses :: (Prelude.Maybe (ValueList Prelude.Text)), -- | See: destinationPorts :: (Prelude.Maybe (ValueList Prelude.Text)), -- | See: destinationPrefixLists :: (Prelude.Maybe (ValueList Prelude.Text)), -- | See: protocols :: (Prelude.Maybe (ValueList Prelude.Text)), -- | See: sourceAddresses :: (Prelude.Maybe (ValueList Prelude.Text)), -- | See: sourcePorts :: (Prelude.Maybe (ValueList Prelude.Text)), -- | See: sourcePrefixLists :: (Prelude.Maybe (ValueList Prelude.Text))} deriving stock (Prelude.Eq, Prelude.Show) mkPacketHeaderStatementRequestProperty :: PacketHeaderStatementRequestProperty mkPacketHeaderStatementRequestProperty = PacketHeaderStatementRequestProperty {haddock_workaround_ = (), destinationAddresses = Prelude.Nothing, destinationPorts = Prelude.Nothing, destinationPrefixLists = Prelude.Nothing, protocols = Prelude.Nothing, sourceAddresses = Prelude.Nothing, sourcePorts = Prelude.Nothing, sourcePrefixLists = Prelude.Nothing} instance ToResourceProperties PacketHeaderStatementRequestProperty where toResourceProperties PacketHeaderStatementRequestProperty {..} = ResourceProperties {awsType = "AWS::EC2::NetworkInsightsAccessScope.PacketHeaderStatementRequest", supportsTags = Prelude.False, properties = Prelude.fromList (Prelude.catMaybes [(JSON..=) "DestinationAddresses" Prelude.<$> destinationAddresses, (JSON..=) "DestinationPorts" Prelude.<$> destinationPorts, (JSON..=) "DestinationPrefixLists" Prelude.<$> destinationPrefixLists, (JSON..=) "Protocols" Prelude.<$> protocols, (JSON..=) "SourceAddresses" Prelude.<$> sourceAddresses, (JSON..=) "SourcePorts" Prelude.<$> sourcePorts, (JSON..=) "SourcePrefixLists" Prelude.<$> sourcePrefixLists])} instance JSON.ToJSON PacketHeaderStatementRequestProperty where toJSON PacketHeaderStatementRequestProperty {..} = JSON.object (Prelude.fromList (Prelude.catMaybes [(JSON..=) "DestinationAddresses" Prelude.<$> destinationAddresses, (JSON..=) "DestinationPorts" Prelude.<$> destinationPorts, (JSON..=) "DestinationPrefixLists" Prelude.<$> destinationPrefixLists, (JSON..=) "Protocols" Prelude.<$> protocols, (JSON..=) "SourceAddresses" Prelude.<$> sourceAddresses, (JSON..=) "SourcePorts" Prelude.<$> sourcePorts, (JSON..=) "SourcePrefixLists" Prelude.<$> sourcePrefixLists])) instance Property "DestinationAddresses" PacketHeaderStatementRequestProperty where type PropertyType "DestinationAddresses" PacketHeaderStatementRequestProperty = ValueList Prelude.Text set newValue PacketHeaderStatementRequestProperty {..} = PacketHeaderStatementRequestProperty {destinationAddresses = Prelude.pure newValue, ..} instance Property "DestinationPorts" PacketHeaderStatementRequestProperty where type PropertyType "DestinationPorts" PacketHeaderStatementRequestProperty = ValueList Prelude.Text set newValue PacketHeaderStatementRequestProperty {..} = PacketHeaderStatementRequestProperty {destinationPorts = Prelude.pure newValue, ..} instance Property "DestinationPrefixLists" PacketHeaderStatementRequestProperty where type PropertyType "DestinationPrefixLists" PacketHeaderStatementRequestProperty = ValueList Prelude.Text set newValue PacketHeaderStatementRequestProperty {..} = PacketHeaderStatementRequestProperty {destinationPrefixLists = Prelude.pure newValue, ..} instance Property "Protocols" PacketHeaderStatementRequestProperty where type PropertyType "Protocols" PacketHeaderStatementRequestProperty = ValueList Prelude.Text set newValue PacketHeaderStatementRequestProperty {..} = PacketHeaderStatementRequestProperty {protocols = Prelude.pure newValue, ..} instance Property "SourceAddresses" PacketHeaderStatementRequestProperty where type PropertyType "SourceAddresses" PacketHeaderStatementRequestProperty = ValueList Prelude.Text set newValue PacketHeaderStatementRequestProperty {..} = PacketHeaderStatementRequestProperty {sourceAddresses = Prelude.pure newValue, ..} instance Property "SourcePorts" PacketHeaderStatementRequestProperty where type PropertyType "SourcePorts" PacketHeaderStatementRequestProperty = ValueList Prelude.Text set newValue PacketHeaderStatementRequestProperty {..} = PacketHeaderStatementRequestProperty {sourcePorts = Prelude.pure newValue, ..} instance Property "SourcePrefixLists" PacketHeaderStatementRequestProperty where type PropertyType "SourcePrefixLists" PacketHeaderStatementRequestProperty = ValueList Prelude.Text set newValue PacketHeaderStatementRequestProperty {..} = PacketHeaderStatementRequestProperty {sourcePrefixLists = Prelude.pure newValue, ..}