View Javadoc

1   /*
2    * Copyright 2011 The Kuali Foundation
3    *
4    * Licensed under the Educational Community License, Version 2.0 (the
5    * "License"); you may not use this file except in compliance with the
6    * License.  You may btain a copy of the License at
7    *
8    * 	http://www.osedu.org/licenses/ECL-2.0
9    *
10   * Unless required by applicable law or agreed to in writing, software
11   * distributed under the License is distributed on an "AS IS" BASIS,
12   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
13   * implied.  See the License for the specific language governing
14   * permissions and limitations under the License.
15   */
16  
17  package org.kuali.student.r2.common.infc;
18  
19  import java.util.Date;
20  
21  /**
22   * Create and last update info for the structure.  This is optional
23   * and treated as read only since the data is set by the internals of
24   * the service during maintenance operations.
25   * 
26   * @author nwright
27   */
28  
29  public interface Meta {
30  
31      /**
32       * This is the field used for optimistic locking.
33       *
34       * An indicator of the version of the thing being described with this meta
35       * information. This is set by the service implementation and will be used to
36       * determine conflicts in updates.
37       *
38       * @name Version Indicator
39       * @readOnly
40       * @required on updates
41       */
42      public String getVersionInd();
43  
44      /**
45       * The date and time the thing being described with this meta
46       * information was last updated.
47       *
48       * @name Create Time
49       * @readOnly
50       * @required on updates
51       */
52      public Date getCreateTime();
53  
54      /**
55       * The principal who created the thing being described with this
56       * meta information.
57       * 
58       * @name Create Id
59       * @readOnly
60       * @required
61       */
62      public String getCreateId();
63  
64      /**
65       * The date and time the thing being described with this meta
66       * information was last updated.
67       * 
68       * Should be empty if it was never updated, just created.
69       *
70       * @name Update Time
71       * @readOnly
72       */
73      public Date getUpdateTime();
74  
75      /**
76       * The principal who last updated the thing being described with
77       * this meta information.
78       * 
79       * Should be empty if it was never updated, just created.
80       *
81       * @name Update Id
82       * @readOnly
83       * @required
84       */
85      public String getUpdateId();
86  }
87