View Javadoc

1   package org.kuali.student.lum.program.server;
2   
3   /**
4    * This interface allows us to inject a different StateChangeService implementation for each of
5    * the program types (credential, core, major discipline) using the spring configuration. 
6    * 
7    * @author Kuali Rice Team (kuali-rice@googlegroups.com)
8    *
9    */
10  public interface StateChangeService {
11      
12      /**
13       * 
14       * This method will eventually be called from the Rice workflow after a major discipline, core, or 
15       * credential program passes back into the local workflow.  It executes the same code as the other
16       * change state method, but uses null for entry and enroll term, since they will not be available in 
17       * the rice workflow (these parameters are entered when a program is superseded)
18       * 
19       * @param programId
20       * @param newState
21       * @throws Exception
22       */
23      public void changeState(String programId, String newState) throws Exception;
24  
25      /**
26       * 
27       * This method is called from the servlet when state is changed in the GWT application (e.g. the user
28       * approves, activates, or creates a new major discipline, credential, or core program)
29       * 
30       * @param endEntryTerm
31       * @param endEnrollTerm
32       * @param programId
33       * @param newState
34       * @throws Exception
35       */
36      public void changeState(String endEntryTerm, String endEnrollTerm, String endInstAdmitTerm, String programId, String newState) throws Exception;
37  }