remm        02/02/26 18:34:54

  Modified:    catalina/src/share/org/apache/catalina/core
                        StandardContext.java
  Log:
  - Slightly improve Craig's patch to integrate it better in the stop processing.
  
  Revision  Changes    Path
  1.99      +21 -24    
jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/core/StandardContext.java
  
  Index: StandardContext.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/core/StandardContext.java,v
  retrieving revision 1.98
  retrieving revision 1.99
  diff -u -r1.98 -r1.99
  --- StandardContext.java      27 Feb 2002 01:17:00 -0000      1.98
  +++ StandardContext.java      27 Feb 2002 02:34:54 -0000      1.99
  @@ -1,7 +1,7 @@
   /*
  - * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/core/StandardContext.java,v
 1.98 2002/02/27 01:17:00 craigmcc Exp $
  - * $Revision: 1.98 $
  - * $Date: 2002/02/27 01:17:00 $
  + * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/core/StandardContext.java,v
 1.99 2002/02/27 02:34:54 remm Exp $
  + * $Revision: 1.99 $
  + * $Date: 2002/02/27 02:34:54 $
    *
    * ====================================================================
    *
  @@ -147,7 +147,7 @@
    *
    * @author Craig R. McClanahan
    * @author Remy Maucherat
  - * @version $Revision: 1.98 $ $Date: 2002/02/27 01:17:00 $
  + * @version $Revision: 1.99 $ $Date: 2002/02/27 02:34:54 $
    */
   
   public class StandardContext
  @@ -3544,8 +3544,23 @@
               }
   
               // Stop our subordinate components, if any
  -            if ((resources != null) && (resources instanceof Lifecycle)) {
  -                ((Lifecycle) resources).stop();
  +            if (resources != null) {
  +                if (resources instanceof Lifecycle) {
  +                    ((Lifecycle) resources).stop();
  +                } else if (resources instanceof ProxyDirContext) {
  +                    DirContext dirContext = 
  +                        ((ProxyDirContext) resources).getDirContext();
  +                    if (dirContext != null) {
  +                        if (debug >= 1) {
  +                            log("Releasing document base " + docBase);
  +                        }
  +                        if (dirContext instanceof BaseDirContext) {
  +                            ((BaseDirContext) dirContext).release();
  +                        } else {
  +                            log("Cannot release " + resources);
  +                        }
  +                    }
  +                }
               }
               if ((realm != null) && (realm instanceof Lifecycle)) {
                   ((Lifecycle) realm).stop();
  @@ -3566,24 +3581,6 @@
               if ((loader != null) && (loader instanceof Lifecycle)) {
                   ((Lifecycle) loader).stop();
               }
  -
  -            // Release our resources DirContext
  -            DirContext dirContext = resources;
  -            if ((dirContext != null) &&
  -                (dirContext instanceof ProxyDirContext)) {
  -                dirContext = ((ProxyDirContext) dirContext).getDirContext();
  -            }
  -            if (dirContext != null) {
  -                if (debug >= 1) {
  -                    log("Releasing document base " + docBase);
  -                }
  -                if (dirContext instanceof BaseDirContext) {
  -                    ((BaseDirContext) dirContext).release();
  -                } else {
  -                    log("Cannot release " + resources);
  -                }
  -            }
  -
   
           } finally {
   
  
  
  

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to