Class TunnelOption

java.lang.Object
software.amazon.awssdk.services.ec2.model.TunnelOption
All Implemented Interfaces:
Serializable, SdkPojo, ToCopyableBuilder<TunnelOption.Builder,TunnelOption>

@Generated("software.amazon.awssdk:codegen") public final class TunnelOption extends Object implements SdkPojo, Serializable, ToCopyableBuilder<TunnelOption.Builder,TunnelOption>

The VPN tunnel options.

See Also:
  • Method Details

    • outsideIpAddress

      public final String outsideIpAddress()

      The external IP address of the VPN tunnel.

      Returns:
      The external IP address of the VPN tunnel.
    • tunnelInsideCidr

      public final String tunnelInsideCidr()

      The range of inside IPv4 addresses for the tunnel.

      Returns:
      The range of inside IPv4 addresses for the tunnel.
    • tunnelInsideIpv6Cidr

      public final String tunnelInsideIpv6Cidr()

      The range of inside IPv6 addresses for the tunnel.

      Returns:
      The range of inside IPv6 addresses for the tunnel.
    • preSharedKey

      public final String preSharedKey()

      The pre-shared key (PSK) to establish initial authentication between the virtual private gateway and the customer gateway.

      Returns:
      The pre-shared key (PSK) to establish initial authentication between the virtual private gateway and the customer gateway.
    • phase1LifetimeSeconds

      public final Integer phase1LifetimeSeconds()

      The lifetime for phase 1 of the IKE negotiation, in seconds.

      Returns:
      The lifetime for phase 1 of the IKE negotiation, in seconds.
    • phase2LifetimeSeconds

      public final Integer phase2LifetimeSeconds()

      The lifetime for phase 2 of the IKE negotiation, in seconds.

      Returns:
      The lifetime for phase 2 of the IKE negotiation, in seconds.
    • rekeyMarginTimeSeconds

      public final Integer rekeyMarginTimeSeconds()

      The margin time, in seconds, before the phase 2 lifetime expires, during which the Amazon Web Services side of the VPN connection performs an IKE rekey.

      Returns:
      The margin time, in seconds, before the phase 2 lifetime expires, during which the Amazon Web Services side of the VPN connection performs an IKE rekey.
    • rekeyFuzzPercentage

      public final Integer rekeyFuzzPercentage()

      The percentage of the rekey window determined by RekeyMarginTimeSeconds during which the rekey time is randomly selected.

      Returns:
      The percentage of the rekey window determined by RekeyMarginTimeSeconds during which the rekey time is randomly selected.
    • replayWindowSize

      public final Integer replayWindowSize()

      The number of packets in an IKE replay window.

      Returns:
      The number of packets in an IKE replay window.
    • dpdTimeoutSeconds

      public final Integer dpdTimeoutSeconds()

      The number of seconds after which a DPD timeout occurs.

      Returns:
      The number of seconds after which a DPD timeout occurs.
    • dpdTimeoutAction

      public final String dpdTimeoutAction()

      The action to take after a DPD timeout occurs.

      Returns:
      The action to take after a DPD timeout occurs.
    • hasPhase1EncryptionAlgorithms

      public final boolean hasPhase1EncryptionAlgorithms()
      For responses, this returns true if the service returned a value for the Phase1EncryptionAlgorithms property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • phase1EncryptionAlgorithms

      public final List<Phase1EncryptionAlgorithmsListValue> phase1EncryptionAlgorithms()

      The permitted encryption algorithms for the VPN tunnel for phase 1 IKE negotiations.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasPhase1EncryptionAlgorithms() method.

      Returns:
      The permitted encryption algorithms for the VPN tunnel for phase 1 IKE negotiations.
    • hasPhase2EncryptionAlgorithms

      public final boolean hasPhase2EncryptionAlgorithms()
      For responses, this returns true if the service returned a value for the Phase2EncryptionAlgorithms property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • phase2EncryptionAlgorithms

      public final List<Phase2EncryptionAlgorithmsListValue> phase2EncryptionAlgorithms()

      The permitted encryption algorithms for the VPN tunnel for phase 2 IKE negotiations.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasPhase2EncryptionAlgorithms() method.

      Returns:
      The permitted encryption algorithms for the VPN tunnel for phase 2 IKE negotiations.
    • hasPhase1IntegrityAlgorithms

      public final boolean hasPhase1IntegrityAlgorithms()
      For responses, this returns true if the service returned a value for the Phase1IntegrityAlgorithms property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • phase1IntegrityAlgorithms

      public final List<Phase1IntegrityAlgorithmsListValue> phase1IntegrityAlgorithms()

      The permitted integrity algorithms for the VPN tunnel for phase 1 IKE negotiations.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasPhase1IntegrityAlgorithms() method.

      Returns:
      The permitted integrity algorithms for the VPN tunnel for phase 1 IKE negotiations.
    • hasPhase2IntegrityAlgorithms

      public final boolean hasPhase2IntegrityAlgorithms()
      For responses, this returns true if the service returned a value for the Phase2IntegrityAlgorithms property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • phase2IntegrityAlgorithms

      public final List<Phase2IntegrityAlgorithmsListValue> phase2IntegrityAlgorithms()

      The permitted integrity algorithms for the VPN tunnel for phase 2 IKE negotiations.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasPhase2IntegrityAlgorithms() method.

      Returns:
      The permitted integrity algorithms for the VPN tunnel for phase 2 IKE negotiations.
    • hasPhase1DHGroupNumbers

      public final boolean hasPhase1DHGroupNumbers()
      For responses, this returns true if the service returned a value for the Phase1DHGroupNumbers property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • phase1DHGroupNumbers

      public final List<Phase1DHGroupNumbersListValue> phase1DHGroupNumbers()

      The permitted Diffie-Hellman group numbers for the VPN tunnel for phase 1 IKE negotiations.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasPhase1DHGroupNumbers() method.

      Returns:
      The permitted Diffie-Hellman group numbers for the VPN tunnel for phase 1 IKE negotiations.
    • hasPhase2DHGroupNumbers

      public final boolean hasPhase2DHGroupNumbers()
      For responses, this returns true if the service returned a value for the Phase2DHGroupNumbers property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • phase2DHGroupNumbers

      public final List<Phase2DHGroupNumbersListValue> phase2DHGroupNumbers()

      The permitted Diffie-Hellman group numbers for the VPN tunnel for phase 2 IKE negotiations.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasPhase2DHGroupNumbers() method.

      Returns:
      The permitted Diffie-Hellman group numbers for the VPN tunnel for phase 2 IKE negotiations.
    • hasIkeVersions

      public final boolean hasIkeVersions()
      For responses, this returns true if the service returned a value for the IkeVersions property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • ikeVersions

      public final List<IKEVersionsListValue> ikeVersions()

      The IKE versions that are permitted for the VPN tunnel.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasIkeVersions() method.

      Returns:
      The IKE versions that are permitted for the VPN tunnel.
    • startupAction

      public final String startupAction()

      The action to take when the establishing the VPN tunnels for a VPN connection.

      Returns:
      The action to take when the establishing the VPN tunnels for a VPN connection.
    • logOptions

      public final VpnTunnelLogOptions logOptions()

      Options for logging VPN tunnel activity.

      Returns:
      Options for logging VPN tunnel activity.
    • enableTunnelLifecycleControl

      public final Boolean enableTunnelLifecycleControl()

      Status of tunnel endpoint lifecycle control feature.

      Returns:
      Status of tunnel endpoint lifecycle control feature.
    • toBuilder

      public TunnelOption.Builder toBuilder()
      Description copied from interface: ToCopyableBuilder
      Take this object and create a builder that contains all of the current property values of this object.
      Specified by:
      toBuilder in interface ToCopyableBuilder<TunnelOption.Builder,TunnelOption>
      Returns:
      a builder for type T
    • builder

      public static TunnelOption.Builder builder()
    • serializableBuilderClass

      public static Class<? extends TunnelOption.Builder> serializableBuilderClass()
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public final boolean equals(Object obj)
      Overrides:
      equals in class Object
    • equalsBySdkFields

      public final boolean equalsBySdkFields(Object obj)
      Description copied from interface: SdkPojo
      Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in an SdkPojo class, and is generated based on a service model.

      If an SdkPojo class does not have any inherited fields, equalsBySdkFields and equals are essentially the same.

      Specified by:
      equalsBySdkFields in interface SdkPojo
      Parameters:
      obj - the object to be compared with
      Returns:
      true if the other object equals to this object by sdk fields, false otherwise.
    • toString

      public final String toString()
      Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
      Overrides:
      toString in class Object
    • getValueForField

      public final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
    • sdkFields

      public final List<SdkField<?>> sdkFields()
      Specified by:
      sdkFields in interface SdkPojo
      Returns:
      List of SdkField in this POJO. May be empty list but should never be null.