@Override
    public void onChange(final State newState, final State oldState) {
        for (final StateListener listener : listeners) {
            listener.onChange(newState, oldState);
        }
    }
A {@link StateListener} that holds zero or more listeners internally and invokes all of them
when a state transition occurs (i.e. {@link #onChange(State, State)} is called). If any listener
throws {@link RuntimeException} or {@link Error} this immediately stops execution of listeners
and causes the thrown exception to be raised.
streams/src/test/java/org/apache/kafka/streams/integration/utils/CompositeStateListener.java