+ {
+ checkTarget();
+ delegateTarget.setHighLevelState(subStateID, newState);
+ }
+
+ @Override
+ public void addListener(Consumer<Object> stateChanged)
+ {
+ checkTarget();
+ delegateTarget.addHighLevelStateListener(subStateID, stateChanged);
+ }
+
+ @Override
+ public void removeListener(Consumer<Object> stateChanged)
+ {
+ checkTarget();
+ delegateTarget.removeHighLevelStateListener(subStateID, stateChanged);
+ }
+
+ private void checkTarget()