Package jmri
Interface ExpectedState<T,S>
- Type Parameters:
T- the type of object this contains the expected state forS- the type of expected state this contains
- All Known Implementing Classes:
BeanSetting,LayoutTrackExpectedState,NamedBeanExpectedState,NamedBeanExpectedValue
public interface ExpectedState<T,S>
Record an object and its expected state within a specific scenario. This can
be used in collections, for example as a routing through a set of turnouts,
where the turnouts and their state when all turnouts are routed for that
routing can be iterated over in a single loop with reference to a single
collection.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringConstant for the property name whensetExpectedState(java.lang.Object)fires aPropertyChangeEvent. -
Method Summary
Modifier and TypeMethodDescriptionGet the expected state.Get the Object this records the expected state for.voidsetExpectedState(S state) Set the expected state.
-
Field Details
-
EXPECTED_STATE
Constant for the property name whensetExpectedState(java.lang.Object)fires aPropertyChangeEvent.- See Also:
-
-
Method Details
-
getExpectedState
Get the expected state. This state should not change as the state of the NamedBean changes.- Returns:
- the expected state
-
setExpectedState
Set the expected state.If UnsupportedOperationException is not thrown, this must fire a
PropertyChangeEventwith the name "expectedState"- Parameters:
state- the new expected state- Throws:
UnsupportedOperationException- if the implementing class does not allow states to be set
-
getObject
Get the Object this records the expected state for.- Returns:
- the associated object
-