@Override
 public void preSave(
     ActionMapping mapping,
     ActionForm form,
     HttpServletRequest request,
     HttpServletResponse response)
     throws Exception {
   super.preSave(mapping, form, request, response);
   getIacucProtocolProcedureService().synchronizeProtocolStudyGroups(getIacucProtocol(form));
 }
 @Override
 public ActionForward save(
     ActionMapping mapping,
     ActionForm form,
     HttpServletRequest request,
     HttpServletResponse response)
     throws Exception {
   super.save(mapping, form, request, response);
   IacucProtocolForm protocolForm = (IacucProtocolForm) form;
   return mapping.findForward(getProcedureActionForward(protocolForm));
 }
 /**
  * @see
  *     org.kuali.rice.kns.web.struts.action.KualiDocumentActionBase#reload(org.apache.struts.action.ActionMapping,
  *     org.apache.struts.action.ActionForm, javax.servlet.http.HttpServletRequest,
  *     javax.servlet.http.HttpServletResponse)
  */
 public ActionForward reload(
     ActionMapping mapping,
     ActionForm form,
     HttpServletRequest request,
     HttpServletResponse response)
     throws Exception {
   ProtocolFormBase protocolForm = (ProtocolFormBase) form;
   super.reload(mapping, form, request, response);
   protocolForm.getCustomDataHelper().prepareCustomData();
   return mapping.findForward("iacucCustomData");
 }
 public ActionForward setEditPersonProcedures(
     ActionMapping mapping,
     ActionForm form,
     HttpServletRequest request,
     HttpServletResponse response)
     throws Exception {
   IacucProtocolForm protocolForm = (IacucProtocolForm) form;
   IacucProtocol iacucProtocol = getIacucProtocol(protocolForm);
   protocolForm
       .getIacucProtocolProceduresHelper()
       .setCurrentProcedureDetailTab(IacucProcedureNavigation.PERSONNEL);
   getIacucProtocolProcedureService().addPersonResponsibleProcedures(iacucProtocol);
   super.save(mapping, form, request, response);
   return mapping.findForward(IacucConstants.PROCEDURE_PERSONNEL);
 }
 public ActionForward updateProcedures(
     ActionMapping mapping,
     ActionForm form,
     HttpServletRequest request,
     HttpServletResponse response)
     throws Exception {
   IacucProtocolForm protocolForm = (IacucProtocolForm) form;
   if (protocolForm.getIacucProtocolProceduresHelper().isModifyProtocolProcedures()) {
     super.save(mapping, form, request, response);
   }
   protocolForm
       .getIacucProtocolProceduresHelper()
       .setCurrentProcedureDetailTab(IacucProcedureNavigation.PROCEDURES);
   return mapping.findForward(Constants.MAPPING_BASIC);
 }
 public ActionForward updateSummary(
     ActionMapping mapping,
     ActionForm form,
     HttpServletRequest request,
     HttpServletResponse response)
     throws Exception {
   IacucProtocolForm protocolForm = (IacucProtocolForm) form;
   ActionForward forward = mapping.findForward(IacucConstants.PROCEDURE_SUMMARY);
   if (protocolForm.getIacucProtocolProceduresHelper().isModifyProtocolProcedures()) {
     if (isSaveProcedureValid(form)) {
       super.save(mapping, form, request, response);
     } else {
       return mapping.findForward(Constants.MAPPING_BASIC);
     }
   }
   getIacucProtocolProcedureService().setProcedureSummaryBySpeciesGroup(getIacucProtocol(form));
   protocolForm
       .getIacucProtocolProceduresHelper()
       .setCurrentProcedureDetailTab(IacucProcedureNavigation.SUMMARY);
   protocolForm.getIacucProtocolProceduresHelper().setSummaryGroupedBySpecies(false);
   return forward;
 }
 public ActionForward updateLocation(
     ActionMapping mapping,
     ActionForm form,
     HttpServletRequest request,
     HttpServletResponse response)
     throws Exception {
   IacucProtocolForm protocolForm = (IacucProtocolForm) form;
   ActionForward forward = mapping.findForward(IacucConstants.PROCEDURE_LOCATION);
   if (protocolForm.getIacucProtocolProceduresHelper().isModifyProtocolProcedures()) {
     if (isSaveProcedureValid(form)) {
       super.save(mapping, form, request, response);
     } else {
       return mapping.findForward(Constants.MAPPING_BASIC);
     }
   }
   getIacucProtocolProcedureService()
       .populateIacucSpeciesLocationProcedures(getIacucProtocol(protocolForm));
   protocolForm
       .getIacucProtocolProceduresHelper()
       .setCurrentProcedureDetailTab(IacucProcedureNavigation.LOCATION);
   return forward;
 }