1 /*
2 * Copyright 2003 - 2013 The eFaps Team
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-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 implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 *
16 * Revision: $Rev$
17 * Last Changed: $Date$
18 * Last Changed By: $Author$
19 */
20
21 package org.efaps.jaas.efaps;
22
23 /**
24 * The class implements the {@link java.security.Principal} interface for a
25 * user. The class is used from the {@link UserLoginModule} class to implement
26 * a JAAS login module and set the group principals.
27 *
28 * @author The eFaps Team
29 * @version $Id$
30 */
31 public final class GroupPrincipal
32 extends AbstractPrincipal
33 {
34 /**
35 * Unique identifier used to serialize.
36 */
37 private static final long serialVersionUID = -6997130370815113314L;
38
39 /**
40 * Constructor used to create a new group principal instance.
41 *
42 * @param _name name of the user
43 */
44 protected GroupPrincipal(final String _name)
45 {
46 super(_name);
47 }
48
49 /**
50 * Compares this principal to the specified object.
51 *
52 * @param _another object to compare to this principle
53 * @return returns <i>true</i> if the other object is from this class and
54 * has the same name (method equals is used), otherwise <i>false</i>
55 */
56 //CHECKSTYLE:OFF
57 @Override
58 public boolean equals(final Object _another)
59 {
60 return _another instanceof GroupPrincipal && ((GroupPrincipal) _another).getName().equals(getName());
61 }
62 }