package controllers;
import javax.inject.Inject;
import models.Action;
import models.ActionSubject;
import models.ActionType;
import models.User;
import models.dao.ActionDAO;
import play.Logger;
import play.Logger.ALogger;
public class ActionHandler {
private static ALogger log = Logger.of(ActionHandler.class);
ActionDAO actionDAO;
@Inject
public ActionHandler(ActionDAO actionDAO) {
super();
this.actionDAO = actionDAO;
}
public void perform(User user, ActionSubject subject, ActionType actionType) {
if (log.isDebugEnabled())
log.debug("perform <-");
if (log.isDebugEnabled())
log.debug("actionType : " + actionType);
if (log.isDebugEnabled())
log.debug("subject : " + subject);
if (log.isDebugEnabled())
log.debug("user : " + user);
Action action = new Action();
action.setCreatedBy(user);
action.setType(actionType);
subject.associate(action);
actionDAO.create(action);
}
}