Class LoadBalancingRuleInner

java.lang.Object
com.azure.core.management.SubResource
com.azure.resourcemanager.network.fluent.models.LoadBalancingRuleInner
All Implemented Interfaces:
com.azure.json.JsonSerializable<com.azure.core.management.SubResource>

public final class LoadBalancingRuleInner extends com.azure.core.management.SubResource
A load balancing rule for a load balancer.
  • Constructor Details

    • LoadBalancingRuleInner

      public LoadBalancingRuleInner()
      Creates an instance of LoadBalancingRuleInner class.
  • Method Details

    • name

      public String name()
      Get the name property: The name of the resource that is unique within the set of load balancing rules used by the load balancer. This name can be used to access the resource.
      Returns:
      the name value.
    • withName

      public LoadBalancingRuleInner withName(String name)
      Set the name property: The name of the resource that is unique within the set of load balancing rules used by the load balancer. This name can be used to access the resource.
      Parameters:
      name - the name value to set.
      Returns:
      the LoadBalancingRuleInner object itself.
    • etag

      public String etag()
      Get the etag property: A unique read-only string that changes whenever the resource is updated.
      Returns:
      the etag value.
    • type

      public String type()
      Get the type property: Type of the resource.
      Returns:
      the type value.
    • withId

      public LoadBalancingRuleInner withId(String id)
      Overrides:
      withId in class com.azure.core.management.SubResource
    • frontendIpConfiguration

      public com.azure.core.management.SubResource frontendIpConfiguration()
      Get the frontendIpConfiguration property: A reference to frontend IP addresses.
      Returns:
      the frontendIpConfiguration value.
    • withFrontendIpConfiguration

      public LoadBalancingRuleInner withFrontendIpConfiguration(com.azure.core.management.SubResource frontendIpConfiguration)
      Set the frontendIpConfiguration property: A reference to frontend IP addresses.
      Parameters:
      frontendIpConfiguration - the frontendIpConfiguration value to set.
      Returns:
      the LoadBalancingRuleInner object itself.
    • backendAddressPool

      public com.azure.core.management.SubResource backendAddressPool()
      Get the backendAddressPool property: A reference to a pool of DIPs. Inbound traffic is randomly load balanced across IPs in the backend IPs.
      Returns:
      the backendAddressPool value.
    • withBackendAddressPool

      public LoadBalancingRuleInner withBackendAddressPool(com.azure.core.management.SubResource backendAddressPool)
      Set the backendAddressPool property: A reference to a pool of DIPs. Inbound traffic is randomly load balanced across IPs in the backend IPs.
      Parameters:
      backendAddressPool - the backendAddressPool value to set.
      Returns:
      the LoadBalancingRuleInner object itself.
    • backendAddressPools

      public List<com.azure.core.management.SubResource> backendAddressPools()
      Get the backendAddressPools property: An array of references to pool of DIPs.
      Returns:
      the backendAddressPools value.
    • withBackendAddressPools

      public LoadBalancingRuleInner withBackendAddressPools(List<com.azure.core.management.SubResource> backendAddressPools)
      Set the backendAddressPools property: An array of references to pool of DIPs.
      Parameters:
      backendAddressPools - the backendAddressPools value to set.
      Returns:
      the LoadBalancingRuleInner object itself.
    • probe

      public com.azure.core.management.SubResource probe()
      Get the probe property: The reference to the load balancer probe used by the load balancing rule.
      Returns:
      the probe value.
    • withProbe

      public LoadBalancingRuleInner withProbe(com.azure.core.management.SubResource probe)
      Set the probe property: The reference to the load balancer probe used by the load balancing rule.
      Parameters:
      probe - the probe value to set.
      Returns:
      the LoadBalancingRuleInner object itself.
    • protocol

      public TransportProtocol protocol()
      Get the protocol property: The reference to the transport protocol used by the load balancing rule.
      Returns:
      the protocol value.
    • withProtocol

      public LoadBalancingRuleInner withProtocol(TransportProtocol protocol)
      Set the protocol property: The reference to the transport protocol used by the load balancing rule.
      Parameters:
      protocol - the protocol value to set.
      Returns:
      the LoadBalancingRuleInner object itself.
    • loadDistribution

      public LoadDistribution loadDistribution()
      Get the loadDistribution property: The load distribution policy for this rule.
      Returns:
      the loadDistribution value.
    • withLoadDistribution

      public LoadBalancingRuleInner withLoadDistribution(LoadDistribution loadDistribution)
      Set the loadDistribution property: The load distribution policy for this rule.
      Parameters:
      loadDistribution - the loadDistribution value to set.
      Returns:
      the LoadBalancingRuleInner object itself.
    • frontendPort

      public Integer frontendPort()
      Get the frontendPort property: The port for the external endpoint. Port numbers for each rule must be unique within the Load Balancer. Acceptable values are between 0 and 65534. Note that value 0 enables "Any Port".
      Returns:
      the frontendPort value.
    • withFrontendPort

      public LoadBalancingRuleInner withFrontendPort(Integer frontendPort)
      Set the frontendPort property: The port for the external endpoint. Port numbers for each rule must be unique within the Load Balancer. Acceptable values are between 0 and 65534. Note that value 0 enables "Any Port".
      Parameters:
      frontendPort - the frontendPort value to set.
      Returns:
      the LoadBalancingRuleInner object itself.
    • backendPort

      public Integer backendPort()
      Get the backendPort property: The port used for internal connections on the endpoint. Acceptable values are between 0 and 65535. Note that value 0 enables "Any Port".
      Returns:
      the backendPort value.
    • withBackendPort

      public LoadBalancingRuleInner withBackendPort(Integer backendPort)
      Set the backendPort property: The port used for internal connections on the endpoint. Acceptable values are between 0 and 65535. Note that value 0 enables "Any Port".
      Parameters:
      backendPort - the backendPort value to set.
      Returns:
      the LoadBalancingRuleInner object itself.
    • idleTimeoutInMinutes

      public Integer idleTimeoutInMinutes()
      Get the idleTimeoutInMinutes property: The timeout for the TCP idle connection. The value can be set between 4 and 30 minutes. The default value is 4 minutes. This element is only used when the protocol is set to TCP.
      Returns:
      the idleTimeoutInMinutes value.
    • withIdleTimeoutInMinutes

      public LoadBalancingRuleInner withIdleTimeoutInMinutes(Integer idleTimeoutInMinutes)
      Set the idleTimeoutInMinutes property: The timeout for the TCP idle connection. The value can be set between 4 and 30 minutes. The default value is 4 minutes. This element is only used when the protocol is set to TCP.
      Parameters:
      idleTimeoutInMinutes - the idleTimeoutInMinutes value to set.
      Returns:
      the LoadBalancingRuleInner object itself.
    • enableFloatingIp

      public Boolean enableFloatingIp()
      Get the enableFloatingIp property: Configures a virtual machine's endpoint for the floating IP capability required to configure a SQL AlwaysOn Availability Group. This setting is required when using the SQL AlwaysOn Availability Groups in SQL server. This setting can't be changed after you create the endpoint.
      Returns:
      the enableFloatingIp value.
    • withEnableFloatingIp

      public LoadBalancingRuleInner withEnableFloatingIp(Boolean enableFloatingIp)
      Set the enableFloatingIp property: Configures a virtual machine's endpoint for the floating IP capability required to configure a SQL AlwaysOn Availability Group. This setting is required when using the SQL AlwaysOn Availability Groups in SQL server. This setting can't be changed after you create the endpoint.
      Parameters:
      enableFloatingIp - the enableFloatingIp value to set.
      Returns:
      the LoadBalancingRuleInner object itself.
    • enableTcpReset

      public Boolean enableTcpReset()
      Get the enableTcpReset property: 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.
      Returns:
      the enableTcpReset value.
    • withEnableTcpReset

      public LoadBalancingRuleInner withEnableTcpReset(Boolean enableTcpReset)
      Set the enableTcpReset property: 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.
      Parameters:
      enableTcpReset - the enableTcpReset value to set.
      Returns:
      the LoadBalancingRuleInner object itself.
    • disableOutboundSnat

      public Boolean disableOutboundSnat()
      Get the disableOutboundSnat property: Configures SNAT for the VMs in the backend pool to use the publicIP address specified in the frontend of the load balancing rule.
      Returns:
      the disableOutboundSnat value.
    • withDisableOutboundSnat

      public LoadBalancingRuleInner withDisableOutboundSnat(Boolean disableOutboundSnat)
      Set the disableOutboundSnat property: Configures SNAT for the VMs in the backend pool to use the publicIP address specified in the frontend of the load balancing rule.
      Parameters:
      disableOutboundSnat - the disableOutboundSnat value to set.
      Returns:
      the LoadBalancingRuleInner object itself.
    • provisioningState

      public ProvisioningState provisioningState()
      Get the provisioningState property: The provisioning state of the load balancing rule resource.
      Returns:
      the provisioningState value.
    • validate

      public void validate()
      Validates the instance.
      Throws:
      IllegalArgumentException - thrown if the instance is not valid.
    • toJson

      public com.azure.json.JsonWriter toJson(com.azure.json.JsonWriter jsonWriter) throws IOException
      Specified by:
      toJson in interface com.azure.json.JsonSerializable<com.azure.core.management.SubResource>
      Overrides:
      toJson in class com.azure.core.management.SubResource
      Throws:
      IOException
    • fromJson

      public static LoadBalancingRuleInner fromJson(com.azure.json.JsonReader jsonReader) throws IOException
      Reads an instance of LoadBalancingRuleInner from the JsonReader.
      Parameters:
      jsonReader - The JsonReader being read.
      Returns:
      An instance of LoadBalancingRuleInner if the JsonReader was pointing to an instance of it, or null if it was pointing to JSON null.
      Throws:
      IOException - If an error occurs while reading the LoadBalancingRuleInner.