package com.rayo.server.verb;
import javax.validation.ConstraintValidatorContext;
import com.rayo.server.Actor;
import com.rayo.core.verb.Verb;
import com.rayo.core.verb.VerbCommand;
import com.voxeo.moho.Participant;
public interface VerbHandler<T extends Verb, S extends Participant> {
public void stop(boolean hangup);
public void start();
public void onCommand(VerbCommand command);
public Verb getModel();
public void setModel(Verb model);
public Actor getActor();
public void setActor(Actor actor);
public S getParticipant();
public void setParticipant(S participant);
public EventDispatcher getEventDispatcher();
public void setEventDispatcher(EventDispatcher eventDispatcher);
public boolean isComplete();
public boolean isStateValid(ConstraintValidatorContext context);
}