01: /*
02: * Copyright 2005-2006 The Kuali Foundation.
03: *
04: *
05: * Licensed under the Educational Community License, Version 1.0 (the "License");
06: * you may not use this file except in compliance with the License.
07: * You may obtain a copy of the License at
08: *
09: * http://www.opensource.org/licenses/ecl1.php
10: *
11: * Unless required by applicable law or agreed to in writing, software
12: * distributed under the License is distributed on an "AS IS" BASIS,
13: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14: * See the License for the specific language governing permissions and
15: * limitations under the License.
16: */
17: package edu.iu.uis.eden.workgroup;
18:
19: /**
20: * A {@link GroupId} which is a unique numerical identifier for a {@link Workgroup}.
21: *
22: * @see Workgroup
23: *
24: * @author rkirkend
25: */
26: public final class WorkflowGroupId implements GroupId {
27:
28: private static final long serialVersionUID = -2452096307070075024L;
29:
30: private Long groupId;
31:
32: public WorkflowGroupId(Long groupId) {
33: this .groupId = groupId;
34: }
35:
36: public Long getGroupId() {
37: return groupId;
38: }
39:
40: /**
41: * Returns true if this userId has an empty value. Empty userIds can't be used as keys in a Hash, among other things.
42: *
43: * @return true if this instance doesn't have a value
44: */
45: public boolean isEmpty() {
46: return groupId == null;
47: }
48:
49: /**
50: * If you make this class non-final, you must rewrite equals to work for subclasses.
51: */
52: public boolean equals(Object obj) {
53: boolean isEqual = false;
54:
55: if (obj != null && (obj instanceof WorkflowGroupId)) {
56: WorkflowGroupId w = (WorkflowGroupId) obj;
57:
58: if (w.getGroupId() != null && getGroupId() != null) {
59: return w.getGroupId().equals(getGroupId());
60: } else {
61: return false;
62: }
63: }
64:
65: return isEqual;
66: }
67:
68: public int hashCode() {
69: if (groupId == null) {
70: return 0;
71: }
72: return groupId.hashCode();
73: }
74:
75: public String toString() {
76: if (groupId != null) {
77: return groupId.toString();
78: }
79: return "null";
80: }
81: }
|