listeners.remove(listener);
}
@Override
public State setActive(boolean active) throws NonReferenceableSessionException {
if (getSessionState() == State.ZOMBIE) throw new NonReferenceableSessionException();
else state = active ? State.ACTIVE : State.HALTED;
return getSessionState();
}