org.refcodes.checkerboard.StateChangedEventImpl Maven / Gradle / Ivy
Show all versions of refcodes-checkerboard Show documentation
package org.refcodes.checkerboard;
/**
* The Class StateChangedEventImpl.
*
* @param the generic type
* @param the generic type
*/
public class StateChangedEventImpl
, S> extends AbstractPlayerEvent
implements StateChangedEvent
{
// /////////////////////////////////////////////////////////////////////////
// STATICS:
// /////////////////////////////////////////////////////////////////////////
// /////////////////////////////////////////////////////////////////////////
// CONSTANTS:
// /////////////////////////////////////////////////////////////////////////
// /////////////////////////////////////////////////////////////////////////
// VARIABLES:
// /////////////////////////////////////////////////////////////////////////
private S _state;
private S _precedingState;
// /////////////////////////////////////////////////////////////////////////
// CONSTRUCTORS:
// /////////////////////////////////////////////////////////////////////////
/**
* Instantiates a new state changed event.
*
* @param aState the state
* @param aPrecedingState the preceding state
* @param aSource The according source (origin).
*/
public StateChangedEventImpl( S aState, S aPrecedingState, P aSource ) {
super( ACTION, aSource );
_state = aState;
_precedingState = aPrecedingState;
}
// /////////////////////////////////////////////////////////////////////////
// INJECTION:
// /////////////////////////////////////////////////////////////////////////
// /////////////////////////////////////////////////////////////////////////
// METHODS:
// /////////////////////////////////////////////////////////////////////////
/**
* {@inheritDoc}
*/
@Override
public S getState() {
return _state;
}
/**
* {@inheritDoc}
*/
@Override
public S getPrecedingState() {
return _precedingState;
}
/**
* {@inheritDoc}
*/
@Override
public String toString() {
return super.toString() + ", state := " + _state + " (state before: " + _precedingState + ")";
}
// /////////////////////////////////////////////////////////////////////////
// HOOKS:
// /////////////////////////////////////////////////////////////////////////
// /////////////////////////////////////////////////////////////////////////
// HELPER:
// /////////////////////////////////////////////////////////////////////////
// /////////////////////////////////////////////////////////////////////////
// INNER CLASSES:
// /////////////////////////////////////////////////////////////////////////
}