View Javadoc

1   package org.kuali.student.enrollment.lpr.infc;
2   
3   import java.util.List;
4   
5   import org.kuali.student.r2.common.infc.IdEntity;
6   
7   /**
8    * A transaction item represents a request for creating a new relation of a
9    * person (student) to a LUI. The transaction item also handle removing,
10   * updating, swapping out an old LUI for a new LUI for a person.
11   * 
12   * @author Kuali Student Team (sambit)
13   */
14  
15  public interface LprTransactionItem extends IdEntity {
16  
17      /**
18       * The type of the transaction item.
19       * 
20       * The types of LPR transaction item  are things like ADD, UPDATE, DROP,
21       * and SWAP
22       * 
23       * @name Type Key
24       * @required
25       * @readOnly
26       */
27      @Override
28      public String getTypeKey();
29  
30      /**
31       * The state of this transaction item
32       * 
33       * The states of the LPR transaction item are things like DRAFT, SUBMITTED,
34       * and FAILED. etc
35       * 
36       * @name State Key
37       * @required
38       *
39       */
40      @Override
41      public String getStateKey();
42  
43      /**
44       * The person id for whom this request is to generate or update the lpr
45       * 
46       * @name Person Id
47       * @required
48       */
49      public String getPersonId();
50  
51      /**
52       * The identifier of the transaction that contains this transaction item.
53       * @name Transaction Id
54       * @required
55       * @readOnly
56       */
57      public String getTransactionId ();
58  
59      /**
60       * The LUI id for a new relation request.
61       * 
62       * @name New LUI Id
63       */
64      public String getNewLuiId();
65  
66      /**
67       * The existing LUI id for an existing relation remove or change requests.
68       * 
69       * @Existing LUI Id
70       */
71      public String getExistingLuiId();
72  
73      /**
74       * Specify the various request (or registration ) options for creating this
75       * relationship.
76       * 
77       * @name Request Options
78       */
79      public List<? extends LprTransactionItemRequestOption> getRequestOptions();
80  
81      /**
82       * Returns the result for this transaction item once it has been processed.
83       * 
84       * @name LPR Transaction Item Result
85       */
86      public LprTransactionItemResult getLprTransactionItemResult();
87  
88      /**
89       * The keys of the result values groups to be applied to the LPR
90       * once created.
91       * 
92       * For example, setting the grading option to pass/fail or the credits to 3
93       * for a course.
94       * 
95       * @name Result Values Group Keys
96       */
97      public List<String> getResultValuesGroupKeys();
98  
99  }