# encoding: utf-8 # Code generated by Microsoft (R) AutoRest Code Generator. # Changes may cause incorrect behavior and will be lost if the code is # regenerated. module Azure::Network::Mgmt::V2018_07_01 module Models # # Outbound pool of the load balancer. # class OutboundRule < SubResource include MsRestAzure # @return [Integer] The number of outbound ports to be used for NAT. attr_accessor :allocated_outbound_ports # @return [Array] The Frontend IP addresses of the load # balancer. attr_accessor :frontend_ipconfigurations # @return [SubResource] A reference to a pool of DIPs. Outbound traffic # is randomly load balanced across IPs in the backend IPs. attr_accessor :backend_address_pool # @return [String] Gets the provisioning state of the PublicIP resource. # Possible values are: 'Updating', 'Deleting', and 'Failed'. attr_accessor :provisioning_state # @return [Enum] Protocol - TCP, UDP or All. Possible values include: # 'Tcp', 'Udp', 'All' attr_accessor :protocol # @return [Boolean] Receive bidirectional TCP Reset on TCP flow idle # timeout or unexpected connection termination. This element is only used # when the protocol is set to TCP. attr_accessor :enable_tcp_reset # @return [Integer] The timeout for the TCP idle connection attr_accessor :idle_timeout_in_minutes # @return [String] The name of the resource that is unique within a # resource group. This name can be used to access the resource. attr_accessor :name # @return [String] A unique read-only string that changes whenever the # resource is updated. attr_accessor :etag # # Mapper for OutboundRule class as Ruby Hash. # This will be used for serialization/deserialization. # def self.mapper() { client_side_validation: true, required: false, serialized_name: 'OutboundRule', type: { name: 'Composite', class_name: 'OutboundRule', model_properties: { id: { client_side_validation: true, required: false, serialized_name: 'id', type: { name: 'String' } }, allocated_outbound_ports: { client_side_validation: true, required: false, serialized_name: 'properties.allocatedOutboundPorts', type: { name: 'Number' } }, frontend_ipconfigurations: { client_side_validation: true, required: true, serialized_name: 'properties.frontendIPConfigurations', type: { name: 'Sequence', element: { client_side_validation: true, required: false, serialized_name: 'SubResourceElementType', type: { name: 'Composite', class_name: 'SubResource' } } } }, backend_address_pool: { client_side_validation: true, required: true, serialized_name: 'properties.backendAddressPool', type: { name: 'Composite', class_name: 'SubResource' } }, provisioning_state: { client_side_validation: true, required: false, serialized_name: 'properties.provisioningState', type: { name: 'String' } }, protocol: { client_side_validation: true, required: true, serialized_name: 'properties.protocol', type: { name: 'String' } }, enable_tcp_reset: { client_side_validation: true, required: false, serialized_name: 'properties.enableTcpReset', type: { name: 'Boolean' } }, idle_timeout_in_minutes: { client_side_validation: true, required: false, serialized_name: 'properties.idleTimeoutInMinutes', type: { name: 'Number' } }, name: { client_side_validation: true, required: false, serialized_name: 'name', type: { name: 'String' } }, etag: { client_side_validation: true, required: false, serialized_name: 'etag', type: { name: 'String' } } } } } end end end end