View Javadoc

1   /**
2    * Copyright 2010 The Kuali Foundation Licensed under the
3    * Educational Community License, Version 2.0 (the "License"); you may
4    * not use this file except in compliance with the License. You may
5    * obtain a copy of the License at
6    *
7    * http://www.osedu.org/licenses/ECL-2.0
8    *
9    * Unless required by applicable law or agreed to in writing,
10   * software distributed under the License is distributed on an "AS IS"
11   * BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
12   * or implied. See the License for the specific language governing
13   * permissions and limitations under the License.
14   */
15  package org.kuali.student.contract.model.test.source;
16  
17  /**
18   *
19   * @author nwright
20   */
21  public interface HasId extends HasPrimaryKey {
22  
23      /**
24       * The system assigned unique id to identify this Object.
25       * Could be implemented as as sequence number or as a UUID.
26       *
27       * Attempts to set this value on creates should result in a ReadOnlyException being thrown
28       *
29       * An Id:<ul>
30       * <li>An id is used when the actual value is unimportant and can therefore be a large hex value for example
31       * <li>An id value might be 23b9ca9bd203df902
32       * <li>An Id is never intended to be used directly by an end user.
33       * <li>Ids are assumed to be of different values in different KS implementations
34       * <li>Id values are generated by the service implementations
35       * <li>Id values are never expected to be used in Configuration or Application code
36       * </ul>
37       * @name Unique Id
38       * @readOnly
39       * @required on update
40       */
41      public String getId();
42  }