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
16 package org.kuali.student.common.ui.client.mvc;
17
18 /**
19 *
20 * Used to hold a reference to an object in cases where the declared reference needs to be final.
21 * For example, when using anonymous classes for asynchronous callbacks, a Holder can be used for
22 * a mutable value within the callback.
23 *
24 * @author Kuali Student Team
25 *
26 */
27 public class Holder<T extends Object> {
28 private T value = null;
29 public Holder() {
30 super();
31 }
32 public Holder(T value) {
33 this.value = value;
34 }
35 public T get() {
36 return value;
37 }
38 public void set(T value) {
39 this.value = value;
40 }
41 }