package fi.otavanopisto.pyramus.json.settings;
import fi.internetix.smvc.SmvcRuntimeException;
import fi.internetix.smvc.StatusCode;
import fi.internetix.smvc.controllers.JSONRequestContext;
import fi.otavanopisto.pyramus.dao.DAOFactory;
import fi.otavanopisto.pyramus.dao.base.CurriculumDAO;
import fi.otavanopisto.pyramus.domainmodel.base.Curriculum;
import fi.otavanopisto.pyramus.framework.JSONRequestController;
import fi.otavanopisto.pyramus.framework.UserRole;
public class ArchiveCurriculumJSONRequestController extends JSONRequestController {
public void process(JSONRequestContext requestContext) {
CurriculumDAO curriculumDAO = DAOFactory.getInstance().getCurriculumDAO();
Long curriculumId = requestContext.getLong("curriculumId");
Curriculum curriculum = curriculumId != null ? curriculumDAO.findById(curriculumId) : null;
if (curriculum != null)
curriculumDAO.archive(curriculum);
else
throw new SmvcRuntimeException(StatusCode.UNDEFINED, "Given curriculum was not found.");
}
public UserRole[] getAllowedRoles() {
return new UserRole[] { UserRole.MANAGER, UserRole.STUDY_PROGRAMME_LEADER, UserRole.ADMINISTRATOR };
}
}