Return-Path: Mailing-List: contact tomcat-dev-help@jakarta.apache.org; run by ezmlm Delivered-To: mailing list tomcat-dev@jakarta.apache.org Received: (qmail 46652 invoked from network); 19 Jan 2001 22:40:39 -0000 Received: from falcon.prod.itd.earthlink.net (207.217.120.74) by h31.sny.collab.net with SMTP; 19 Jan 2001 22:40:39 -0000 Received: from SANTANA.bitbull.com (pool-63.49.205.140.troy.grid.net [63.49.205.140]) by falcon.prod.itd.earthlink.net (EL-8_9_3_3/8.9.3) with ESMTP id OAA25480 for ; Fri, 19 Jan 2001 14:40:29 -0800 (PST) Message-Id: <4.3.2.7.2.20010119172859.0236aa30@pop3.demon.co.uk> X-Sender: kief_bitbull@kief.demon.co.uk@pop3.demon.co.uk X-Mailer: QUALCOMM Windows Eudora Version 4.3.2 Date: Fri, 19 Jan 2001 17:40:34 -0500 To: tomcat-dev@jakarta.apache.org From: Kief Morris Subject: Re: [PROPOSAL] Tomcat 4.0-beta API Change: Security Manager Facades In-Reply-To: <3A68B8F5.B5D796BD@eng.sun.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" X-Spam-Rating: h31.sny.collab.net 1.6.2 0/1000/N Craig R. McClanahan typed the following on 02:00 PM 1/19/2001 -0800 >THE PROPOSAL: > >For each Servlet API interface that represents an internal Catalina object >exposed to an application object, create a new >org.apache.catalina.facade.XxxxxFacade class according to the following basic >pattern: > >* Pass the internal object to the constructor (the facade > will be a wrapper around it). > >* Implement the appropriate servlet API interface (so the > facade object can be passed to application components) > >* For each public method in the interface, implement a doPrivileged > block that calls the corresponding method on the underlying > internal Catalina object. Sounds cool. If the application doesn't use the security manager, will the object simply continue "raw" without being wrapped by the facade to avoid the added overhead? e.g: // Raw session Session mySession = whatever; if (security_enabled) { mySession = new SessionFacade (mySession); } // Raw or facade session, doesn't really matter mySession.doStuff(); Kief