KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > jboss > test > security > ejb > jbas1852 > PublicSessionBean


1 /*
2   * JBoss, Home of Professional Open Source
3   * Copyright 2005, JBoss Inc., and individual contributors as indicated
4   * by the @authors tag. See the copyright.txt in the distribution for a
5   * full listing of individual contributors.
6   *
7   * This is free software; you can redistribute it and/or modify it
8   * under the terms of the GNU Lesser General Public License as
9   * 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.ejb.jbas1852;
23
24 import java.security.Principal JavaDoc;
25 import javax.ejb.CreateException JavaDoc;
26 import javax.ejb.SessionBean JavaDoc;
27 import javax.ejb.SessionContext JavaDoc;
28 import javax.naming.InitialContext JavaDoc;
29
30 /** An implmentation of the Session interface that delegates its
31 echo method call to the PrivateSession bean to test run-as.
32
33 @author Scott.Stark@jboss.org
34 @version $Revision: 37406 $
35 */

36 public class PublicSessionBean implements SessionBean JavaDoc
37 {
38     private SessionContext JavaDoc sessionContext;
39
40     public void ejbCreate() throws CreateException JavaDoc
41     {
42         System.out.println("PublicSessionBean.ejbCreate() called");
43     }
44
45     public void ejbActivate()
46     {
47         System.out.println("PublicSessionBean.ejbActivate() called");
48     }
49
50     public void ejbPassivate()
51     {
52         System.out.println("PublicSessionBean.ejbPassivate() called");
53     }
54
55     public void ejbRemove()
56     {
57         System.out.println("PublicSessionBean.ejbRemove() called");
58     }
59
60     public void setSessionContext(SessionContext JavaDoc context)
61     {
62         sessionContext = context;
63     }
64
65     public String JavaDoc echo(String JavaDoc arg)
66     {
67         System.out.println("PublicSessionBean.echo, arg="+arg);
68         Principal JavaDoc p = sessionContext.getCallerPrincipal();
69         System.out.println("PublicSessionBean.echo, callerPrincipal="+p);
70         System.out.println("PublicSessionBean.echo, isCallerInRole('EchoUser')="+sessionContext.isCallerInRole("EchoUser"));
71         try
72         {
73             InitialContext JavaDoc ctx = new InitialContext JavaDoc();
74             SessionHome home = (SessionHome) ctx.lookup("java:comp/env/ejb/PrivateSession");
75             Session bean = home.create();
76             System.out.println("PublicSessionBean.echo, created PrivateSession");
77             arg = bean.echo(arg);
78         }
79         catch(Exception JavaDoc e)
80         {
81         }
82         return arg;
83     }
84     public void noop()
85     {
86         System.out.println("PublicSessionBean.noop");
87         Principal JavaDoc p = sessionContext.getCallerPrincipal();
88         System.out.println("PublicSessionBean.noop, callerPrincipal="+p);
89     }
90     public void restricted()
91     {
92         System.out.println("PublicSessionBean.restricted");
93         Principal JavaDoc p = sessionContext.getCallerPrincipal();
94         System.out.println("PublicSessionBean.restricted, callerPrincipal="+p);
95     }
96 }
97
Popular Tags