01: /*
02: * JBoss, Home of Professional Open Source
03: * Copyright 2005, JBoss Inc., and individual contributors as indicated
04: * by the @authors tag. See the copyright.txt in the distribution for a
05: * full listing of individual contributors.
06: *
07: * This is free software; you can redistribute it and/or modify it
08: * under the terms of the GNU Lesser General Public License as
09: * published by the Free Software Foundation; either version 2.1 of
10: * the License, or (at your option) any later version.
11: *
12: * This software is distributed in the hope that it will be useful,
13: * but WITHOUT ANY WARRANTY; without even the implied warranty of
14: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15: * Lesser General Public License for more details.
16: *
17: * You should have received a copy of the GNU Lesser General Public
18: * License along with this software; if not, write to the Free
19: * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
20: * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
21: */
22: package org.jbpm.identity;
23:
24: import java.io.*;
25: import java.security.*;
26: import java.util.*;
27:
28: /**
29: * common supertype for users, groups and memberships
30: * that manages the name and permissions.
31: */
32: public class Entity implements Serializable {
33:
34: private static final long serialVersionUID = 1L;
35:
36: long id = 0;
37: protected String name = null;
38: /* permissions is a set of java.security.Permission's */
39: protected Set permissions = null;
40:
41: // constructors /////////////////////////////////////////////////////////////
42:
43: public Entity() {
44: }
45:
46: public Entity(String name) {
47: this .name = name;
48: }
49:
50: public Entity(String name, Set permissions) {
51: this .name = name;
52: this .permissions = permissions;
53: }
54:
55: // permissions //////////////////////////////////////////////////////////////
56:
57: public void addPermission(Permission permission) {
58: if (permissions == null)
59: permissions = new HashSet();
60: permissions.add(permission);
61: }
62:
63: public Set getPermissions() {
64: return permissions;
65: }
66:
67: public void removePermission(Permission permission) {
68: if (permissions != null) {
69: permissions.remove(permission);
70: }
71: }
72:
73: // getters //////////////////////////////////////////////////////////////////
74:
75: public long getId() {
76: return id;
77: }
78:
79: public String getName() {
80: return name;
81: }
82: }
|