01: /*
02: * JBoss, Home of Professional Open Source.
03: * Copyright 2006, Red Hat Middleware LLC, and individual contributors
04: * as indicated by the @author tags. See the copyright.txt file in the
05: * distribution for a 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.jboss.test.security.interfaces;
23:
24: import java.io.Serializable;
25: import java.security.Principal;
26: import java.util.HashSet;
27: import java.util.Set;
28:
29: /**
30: A representation of the expected principal identity and roles.
31:
32: @author Scott.Stark@jboss.org
33: @version $Revision: 57211 $
34: */
35: public class CallerInfo implements Serializable {
36: private static final long serialVersionUID = 1;
37:
38: /** The expected caller for non-run-as contexts */
39: private Principal callerIdentity;
40: /** The expected caller for run-as contexts */
41: private Principal runAsIdentity;
42: /** HashSet<String> expected role names for isCallerInRole for non-run-as contexts */
43: private HashSet expectedCallerRoles = new HashSet();
44: /** HashSet<String> expected role names for isCallerInRole for non-run-as contexts */
45: private HashSet expectedRunAsRoles = new HashSet();
46:
47: public CallerInfo() {
48:
49: }
50:
51: public CallerInfo(Principal callerIdentity,
52: Principal runAsIdentity, Set expectedCallerRoles,
53: Set expectedRunAsRoles) {
54: this .callerIdentity = callerIdentity;
55: this .runAsIdentity = runAsIdentity;
56: this .expectedCallerRoles.addAll(expectedCallerRoles);
57: this .expectedRunAsRoles.addAll(expectedRunAsRoles);
58: }
59:
60: public Principal getCallerIdentity() {
61: return callerIdentity;
62: }
63:
64: public void setCallerIdentity(Principal callerIdentity) {
65: this .callerIdentity = callerIdentity;
66: }
67:
68: public Principal getRunAsIdentity() {
69: return runAsIdentity;
70: }
71:
72: public void setRunAsIdentity(Principal runAsIdentity) {
73: this .runAsIdentity = runAsIdentity;
74: }
75:
76: public Set getExpectedCallerRoles() {
77: return expectedCallerRoles;
78: }
79:
80: public void setExpectedCallerRoles(Set expectedCallerRoles) {
81: this .expectedCallerRoles.clear();
82: this .expectedCallerRoles.addAll(expectedCallerRoles);
83: }
84:
85: public Set getExpectedRunAsRoles() {
86: return expectedRunAsRoles;
87: }
88:
89: public void setExpectedRunAsRoles(Set expectedRunAsRoles) {
90: this.expectedRunAsRoles.clear();
91: this.expectedRunAsRoles.addAll(expectedRunAsRoles);
92: }
93: }
|