Class UtilityPropagator
UtilityNetworkAttribute
values to propagate through a network while
executing a trace.
The propagated UtilityNetworkAttribute
values can be tested to allow or disallow further traversal. In the
example of phase propagation, open devices along the network will restrict some phases from continuing along the trace.
Propagators only apply to subnetwork-based traces (UtilityTraceType.UPSTREAM
, UtilityTraceType.DOWNSTREAM
and so on).
UtilityPropagator
is set in the UtilityTraceConfiguration
.
- Since:
- 100.7.0
-
Constructor Summary
ConstructorDescriptionUtilityPropagator
(UtilityNetworkAttribute networkAttribute, UtilityPropagatorFunctionType propagatorFunctionType, UtilityAttributeComparisonOperator comparisonOperator, Object value) Creates a utility propagator object that allows a subset ofUtilityNetworkAttribute
values to propagate through a network.UtilityPropagator
(UtilityNetworkAttribute networkAttribute, UtilityPropagatorFunctionType propagatorFunctionType, UtilityAttributeComparisonOperator comparisonOperator, Object value, UtilityNetworkAttribute substitutionAttribute) Creates a utility propagator object that allows a subset ofUtilityNetworkAttribute
values to propagate through a network. -
Method Summary
Modifier and TypeMethodDescriptionGets the operator that is applied when executing the trace.Gets theUtilityNetworkAttribute
to propagate further along the trace.Gets the function type that is applied to theUtilityNetworkAttribute
to propagate the attribute further along the trace.Gets theUtilityNetworkAttribute
that maps each bit in another bitset network attribute value to a new value.getValue()
Gets the value that is compared against the propagated value when executing the trace.
-
Constructor Details
-
UtilityPropagator
public UtilityPropagator(UtilityNetworkAttribute networkAttribute, UtilityPropagatorFunctionType propagatorFunctionType, UtilityAttributeComparisonOperator comparisonOperator, Object value) Creates a utility propagator object that allows a subset ofUtilityNetworkAttribute
values to propagate through a network.- Parameters:
networkAttribute
- the network attribute to propagate further along the tracepropagatorFunctionType
- the function type that is applied to the utility network attribute to propagate the attribute further along the tracecomparisonOperator
- the filter operator that is applied when executing the trace. This operator is used to compare the propagated value to the specifiedgetValue()
.value
- the value that is compared against the propagated value when executing the trace. The type of this numeric value is dependent onUtilityNetworkAttribute.DataType
inUtilityNetworkAttribute
.- Throws:
IllegalArgumentException
- if networkAttribute is nullIllegalArgumentException
- if propagatorFunctionType is nullIllegalArgumentException
- if comparisonOperator is nullIllegalArgumentException
- if value is nullIllegalArgumentException
- if value is not a valid network attribute datatype- Since:
- 100.7.0
-
UtilityPropagator
public UtilityPropagator(UtilityNetworkAttribute networkAttribute, UtilityPropagatorFunctionType propagatorFunctionType, UtilityAttributeComparisonOperator comparisonOperator, Object value, UtilityNetworkAttribute substitutionAttribute) Creates a utility propagator object that allows a subset ofUtilityNetworkAttribute
values to propagate through a network.- Parameters:
networkAttribute
- the network attribute to propagate further along the tracepropagatorFunctionType
- the function type that is applied to the utility network attribute to propagate the attribute further along the tracecomparisonOperator
- the filter operator that is applied when executing the trace. This operator is used to compare the propagated value to the specifiedgetValue()
.value
- the value that is compared against the propagated value when executing the trace. The type of this numeric value is dependent on theUtilityNetworkAttribute.DataType
inUtilityNetworkAttribute
.substitutionAttribute
- a utility network attribute that maps each bit in another bitset network attribute value to a new value- Throws:
IllegalArgumentException
- if networkAttribute is nullIllegalArgumentException
- if propagatorFunctionType is nullIllegalArgumentException
- if comparisonOperator is nullIllegalArgumentException
- if value is nullIllegalArgumentException
- if value is not a valid network attribute datatypeIllegalArgumentException
- if substitutionAttribution is null- Since:
- 100.7.0
-
-
Method Details
-
getComparisonOperator
Gets the operator that is applied when executing the trace.This operator is used to compare the propagated value to the specified
getValue()
. For example, if propagating phase, this would beUtilityAttributeComparisonOperator.INCLUDES_ANY
.- Returns:
- the operator applied when executing the trace
- Since:
- 100.7.0
-
getNetworkAttribute
Gets theUtilityNetworkAttribute
to propagate further along the trace.For example, if propagating phase, this would be the
UtilityNetworkAttribute
that stores phase.- Returns:
- the utility network attribute to propagate further along the trace
- Since:
- 100.7.0
-
getPropagatorFunctionType
Gets the function type that is applied to theUtilityNetworkAttribute
to propagate the attribute further along the trace.For example, if propagating phase, this would be
UtilityPropagatorFunctionType.BITWISE_AND
.- Returns:
- the function type
- Since:
- 100.7.0
-
getSubstitutionNetworkAttribute
Gets theUtilityNetworkAttribute
that maps each bit in another bitset network attribute value to a new value.- Returns:
- the utility network attribute
- Since:
- 100.7.0
-
getValue
Gets the value that is compared against the propagated value when executing the trace.The type of this numeric value is dependent on the
UtilityNetworkAttribute.DataType
of theUtilityNetworkAttribute
.- Returns:
- the value
- Since:
- 100.7.0
-