KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > alfresco > repo > security > permissions > impl > AbstractPermissionReference


1 /*
2  * Copyright (C) 2005 Alfresco, Inc.
3  *
4  * Licensed under the Mozilla Public License version 1.1
5  * with a permitted attribution clause. You may obtain a
6  * copy of the License at
7  *
8  * http://www.alfresco.org/legal/license.txt
9  *
10  * Unless required by applicable law or agreed to in writing,
11  * software distributed under the License is distributed on an
12  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
13  * either express or implied. See the License for the specific
14  * language governing permissions and limitations under the
15  * License.
16  */

17 package org.alfresco.repo.security.permissions.impl;
18
19 import org.alfresco.repo.security.permissions.PermissionReference;
20
21
22 /**
23  * This class provides common support for hash code and equality.
24  *
25  * @author andyh
26  */

27 public abstract class AbstractPermissionReference implements PermissionReference
28 {
29     private int hashcode = 0;
30     
31     public AbstractPermissionReference()
32     {
33         super();
34     }
35
36     @Override JavaDoc
37     public final boolean equals(Object JavaDoc o)
38     {
39         if(this == o)
40         {
41             return true;
42         }
43         if(!(o instanceof AbstractPermissionReference))
44         {
45             return false;
46         }
47         AbstractPermissionReference other = (AbstractPermissionReference)o;
48         return this.getName().equals(other.getName()) && this.getQName().equals(other.getQName());
49     }
50
51     @Override JavaDoc
52     public final int hashCode()
53     {
54         if (hashcode == 0)
55         {
56            hashcode = getQName().hashCode() * 37 + getName().hashCode();
57         }
58         return hashcode;
59     }
60
61     @Override JavaDoc
62     public String JavaDoc toString()
63     {
64         return getQName()+ "." + getName();
65     }
66 }
67
Popular Tags