Class UtilityTraceFilter
- java.lang.Object
-
- com.esri.arcgisruntime.utilitynetworks.UtilityTraceFilter
-
public final class UtilityTraceFilter extends java.lang.Object
A mechanism that can be used to stop tracing when returning results.UtilityTraceFilter
objects do not stop traversability to the controller.Consider an upstream protective device trace. At first, you might try defining a
UtilityCategoryComparison
that looks for a Protective Device category and assigning this toUtilityTraversability.getBarriers()
. When you try to run an upstream trace using this configuration, it will probably fail. This is because traversability will stop at the first protective device, and the trace will be unable to find the subnetwork controller. The correct way to implement this trace is to assignUtilityCategoryComparison
to the filter.UtilityTraceFilter
is set in theUtilityTraceConfiguration
.- Since:
- 100.8.0
-
-
Constructor Summary
Constructors Constructor Description UtilityTraceFilter()
Creates a new instance of UtilityTraceFilter.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description UtilityTraceCondition
getBarriers()
Gets a condition object specifying when to traverse a node or its subnodes.UtilityNetworkAttribute
getBitsetNetworkAttribute()
Gets a UtilityNetworkAttribute that stores a bitset, and this bitset should be used to filter results.java.util.List<UtilityTraceFunctionBarrier>
getFunctionBarriers()
Gets a mutable list of utility trace function barriers.UtilityNearestNeighbor
getNearestNeighbor()
Gets a filter object specifying the next N features to be returned from the starting point.UtilityTraversabilityScope
getScope()
Gets a UtilityTraversabilityScope value that determines whether traversability criteria are evaluated on edges, junctions, or both.void
setBarriers(UtilityTraceCondition utilityTraceCondition)
Sets a condition object specifying when to traverse a node or its subnodes.void
setBitsetNetworkAttribute(UtilityNetworkAttribute utilityNetworkAttribute)
Sets a UtilityNetworkAttribute that stores a bitset, and this bitset should be used to filter results.void
setNearestNeighbor(UtilityNearestNeighbor nearestNeighbor)
Sets a filter object specifying the next N features to be returned from the starting point.void
setScope(UtilityTraversabilityScope scope)
Sets a value that determines whether traversability criteria are evaluated on edges, junctions, or both.
-
-
-
Method Detail
-
getBarriers
public UtilityTraceCondition getBarriers()
Gets a condition object specifying when to traverse a node or its subnodes.- Returns:
- a condition object specifying when to traverse a node or its subnodes, or null if none has been set
- Since:
- 100.8.0
-
setBarriers
public void setBarriers(UtilityTraceCondition utilityTraceCondition)
Sets a condition object specifying when to traverse a node or its subnodes.- Parameters:
utilityTraceCondition
- a condition object specifying when to traverse a node or its subnodes- Since:
- 100.8.0
-
getBitsetNetworkAttribute
public UtilityNetworkAttribute getBitsetNetworkAttribute()
Gets a UtilityNetworkAttribute that stores a bitset, and this bitset should be used to filter results.- Returns:
- a UtilityNetworkAttribute that stores a bitset, or null if none has been set
- Since:
- 100.8.0
-
setBitsetNetworkAttribute
public void setBitsetNetworkAttribute(UtilityNetworkAttribute utilityNetworkAttribute)
Sets a UtilityNetworkAttribute that stores a bitset, and this bitset should be used to filter results.- Parameters:
utilityNetworkAttribute
- UtilityNetworkAttribute that stores a bitset which should be used to filter- Since:
- 100.8.0
-
getFunctionBarriers
public java.util.List<UtilityTraceFunctionBarrier> getFunctionBarriers()
Gets a mutable list of utility trace function barriers. AddUtilityTraceFunctionBarrier
to it to specify barriers. If any of these objects evaluates to true, further traversal is terminated.- Returns:
- a mutable list of UtilityTraceFunctionBarrier that specify the function barriers. Initially it is empty.
- Since:
- 100.8.0
-
getNearestNeighbor
public UtilityNearestNeighbor getNearestNeighbor()
Gets a filter object specifying the next N features to be returned from the starting point.- Returns:
- a UtilityNearestNeighbor object specifying the next N features to be returned from the starting point, or null if none has been set
- Since:
- 100.8.0
-
setNearestNeighbor
public void setNearestNeighbor(UtilityNearestNeighbor nearestNeighbor)
Sets a filter object specifying the next N features to be returned from the starting point.- Parameters:
nearestNeighbor
- a UtilityNearestNeighbor object specifying the next N features to be returned from the starting point- Since:
- 100.8.0
-
getScope
public UtilityTraversabilityScope getScope()
Gets a UtilityTraversabilityScope value that determines whether traversability criteria are evaluated on edges, junctions, or both.Note: The default value is
UtilityTraversabilityScope.JUNCTIONS_AND_EDGES
.- Returns:
- a UtilityTraversabilityScope value that determines whether traversability criteria are evaluated on edges, junctions, or both
- Since:
- 100.8.0
-
setScope
public void setScope(UtilityTraversabilityScope scope)
Sets a value that determines whether traversability criteria are evaluated on edges, junctions, or both.- Parameters:
scope
- a UtilityTraversabilityScope value- Throws:
java.lang.IllegalArgumentException
- if scope is null- Since:
- 100.8.0
-
-