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