Class IsolineAvoidanceOptions

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

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

Specifies features of the road network to avoid when calculating reachable areas. These preferences guide route calculations but may be overridden when no reasonable alternative exists. For example, if avoiding toll roads would make an area unreachable, toll roads may still be used.

Avoidance options include physical features (like ferries and tunnels), road characteristics (like dirt roads and highways), and regulated areas (like congestion zones). They can be combined to match specific routing needs, such as avoiding both toll roads and ferries.

See Also:
  • Method Details

    • hasAreas

      public final boolean hasAreas()
      For responses, this returns true if the service returned a value for the Areas 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.
    • areas

      public final List<IsolineAvoidanceArea> areas()

      Specifies geographic areas to avoid where possible. Routes may still pass through these areas if no reasonable alternative exists.

      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 hasAreas() method.

      Returns:
      Specifies geographic areas to avoid where possible. Routes may still pass through these areas if no reasonable alternative exists.
    • carShuttleTrains

      public final Boolean carShuttleTrains()

      Indicates a preference to avoid car shuttle trains (auto trains) where possible. These may still be included if no reasonable alternative route exists.

      Returns:
      Indicates a preference to avoid car shuttle trains (auto trains) where possible. These may still be included if no reasonable alternative route exists.
    • controlledAccessHighways

      public final Boolean controlledAccessHighways()

      Indicates a preference to avoid controlled-access highways (such as interstate highways or motorways) where possible. If a viable route cannot be calculated using only local roads, controlled-access highways may still be included.

      Returns:
      Indicates a preference to avoid controlled-access highways (such as interstate highways or motorways) where possible. If a viable route cannot be calculated using only local roads, controlled-access highways may still be included.
    • dirtRoads

      public final Boolean dirtRoads()

      Indicates a preference to avoid unpaved or dirt roads where possible. Routes may still include dirt roads if no reasonable paved alternative exists.

      Returns:
      Indicates a preference to avoid unpaved or dirt roads where possible. Routes may still include dirt roads if no reasonable paved alternative exists.
    • ferries

      public final Boolean ferries()

      Indicates a preference to avoid ferries where possible. If a viable route cannot be calculated without using ferries, they may still be included.

      Returns:
      Indicates a preference to avoid ferries where possible. If a viable route cannot be calculated without using ferries, they may still be included.
    • seasonalClosure

      public final Boolean seasonalClosure()

      Indicates a preference to avoid roads that may be subject to seasonal closures where possible. These roads may still be included if no reasonable year-round alternative exists.

      Returns:
      Indicates a preference to avoid roads that may be subject to seasonal closures where possible. These roads may still be included if no reasonable year-round alternative exists.
    • tollRoads

      public final Boolean tollRoads()

      Indicates a preference to avoid toll roads where possible. If a viable route cannot be calculated without using toll roads, they may still be included.

      Returns:
      Indicates a preference to avoid toll roads where possible. If a viable route cannot be calculated without using toll roads, they may still be included.
    • tollTransponders

      public final Boolean tollTransponders()

      Indicates a preference to avoid roads that require electronic toll collection transponders where possible. These roads may still be included if no viable alternative route exists.

      Returns:
      Indicates a preference to avoid roads that require electronic toll collection transponders where possible. These roads may still be included if no viable alternative route exists.
    • hasTruckRoadTypes

      public final boolean hasTruckRoadTypes()
      For responses, this returns true if the service returned a value for the TruckRoadTypes 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.
    • truckRoadTypes

      public final List<String> truckRoadTypes()

      For truck travel modes, indicates specific road classification types in Sweden ( BK1 through BK4) and Mexico (A2, A4, B2, B4, C, D, ET2, ET4) to avoid where possible. These road types may still be used if no reasonable alternative exists.

      There are currently no other supported values as of 26th April 2024.

      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 hasTruckRoadTypes() method.

      Returns:
      For truck travel modes, indicates specific road classification types in Sweden ( BK1 through BK4) and Mexico (A2, A4, B2, B4, C, D, ET2, ET4) to avoid where possible. These road types may still be used if no reasonable alternative exists.

      There are currently no other supported values as of 26th April 2024.

    • tunnels

      public final Boolean tunnels()

      Indicates a preference to avoid tunnels where possible. If a viable route cannot be calculated without using tunnels, they may still be included.

      Returns:
      Indicates a preference to avoid tunnels where possible. If a viable route cannot be calculated without using tunnels, they may still be included.
    • uTurns

      public final Boolean uTurns()

      Indicates a preference to avoid U-turns where possible. U-turns may still be included if necessary to reach certain areas or when no reasonable alternative exists.

      Returns:
      Indicates a preference to avoid U-turns where possible. U-turns may still be included if necessary to reach certain areas or when no reasonable alternative exists.
    • hasZoneCategories

      public final boolean hasZoneCategories()
      For responses, this returns true if the service returned a value for the ZoneCategories 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.
    • zoneCategories

      public final List<IsolineAvoidanceZoneCategory> zoneCategories()

      Indicates types of regulated zones (such as congestion pricing or environmental zones) to avoid where possible. Routes may still pass through these zones if no reasonable alternative exists.

      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 hasZoneCategories() method.

      Returns:
      Indicates types of regulated zones (such as congestion pricing or environmental zones) to avoid where possible. Routes may still pass through these zones if no reasonable alternative exists.
    • toBuilder

      public IsolineAvoidanceOptions.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<IsolineAvoidanceOptions.Builder,IsolineAvoidanceOptions>
      Returns:
      a builder for type T
    • builder

      public static IsolineAvoidanceOptions.Builder builder()
    • serializableBuilderClass

      public static Class<? extends IsolineAvoidanceOptions.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.
    • sdkFieldNameToField

      public final Map<String,SdkField<?>> sdkFieldNameToField()
      Specified by:
      sdkFieldNameToField in interface SdkPojo
      Returns:
      The mapping between the field name and its corresponding field.