package org.atomnuke.source.action;
/**
*
* @author zinic
*/
public class AtomSourceActionImpl<T> implements AtomSourceAction<T> {
private final ActionType actionType;
private final T value;
public AtomSourceActionImpl(ActionType actionType) {
this(actionType, null);
}
public AtomSourceActionImpl(ActionType actionType, T value) {
this.actionType = actionType;
this.value = value;
}
@Override
public boolean hasValue() {
return value != null;
}
@Override
public T value() {
return value;
}
@Override
public ActionType action() {
return actionType;
}
}