1 //======================================================================== 2 //$Id: RunAs.java 1594 2007-02-14 02:45:12Z janb $ 3 //Copyright 2006 Mort Bay Consulting Pty. Ltd. 4 //------------------------------------------------------------------------ 5 //Licensed under the Apache License, Version 2.0 (the "License"); 6 //you may not use this file except in compliance with the License. 7 //You may obtain a copy of the License at 8 //http://www.apache.org/licenses/LICENSE-2.0 9 //Unless required by applicable law or agreed to in writing, software 10 //distributed under the License is distributed on an "AS IS" BASIS, 11 //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 //See the License for the specific language governing permissions and 13 //limitations under the License. 14 //======================================================================== 15 16 package org.mortbay.jetty.plus.annotation; 17 18 import javax.servlet.Servlet; 19 20 import org.mortbay.jetty.servlet.ServletHolder; 21 22 /** 23 * RunAs 24 * 25 * Represents a <run-as> element in web.xml, or a runAs annotation. 26 */ 27 public class RunAs 28 { 29 private Class _targetClass; 30 private String _roleName; 31 RunAs()32 public RunAs() 33 {} 34 35 setTargetClass(Class clazz)36 public void setTargetClass (Class clazz) 37 { 38 _targetClass=clazz; 39 } 40 getTargetClass()41 public Class getTargetClass () 42 { 43 return _targetClass; 44 } 45 setRoleName(String roleName)46 public void setRoleName (String roleName) 47 { 48 _roleName = roleName; 49 } 50 getRoleName()51 public String getRoleName () 52 { 53 return _roleName; 54 } 55 56 setRunAs(ServletHolder holder)57 public void setRunAs (ServletHolder holder) 58 { 59 if (holder==null) 60 return; 61 if (holder.getClassName().equals(_targetClass.getName())) 62 holder.setRunAs(_roleName); 63 } 64 } 65