You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by cr...@locus.apache.org on 2000/01/29 08:46:36 UTC

cvs commit: jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/session FileStore.java ManagerBase.java StandardManager.java

craigmcc    00/01/28 23:46:36

  Modified:    proposals/catalina/src/share/org/apache/tomcat
                        Container.java Loader.java Logger.java Manager.java
                        Realm.java Resources.java Store.java
               proposals/catalina/src/share/org/apache/tomcat/core
                        ContainerBase.java StandardContext.java
                        StandardEngine.java StandardHost.java
                        StandardResources.java
               proposals/catalina/src/share/org/apache/tomcat/logger
                        FileLogger.java LoggerBase.java
                        SystemErrLogger.java
               proposals/catalina/src/share/org/apache/tomcat/session
                        FileStore.java ManagerBase.java
                        StandardManager.java
  Log:
  Implement the JavaBeans "property change events" design pattern for all
  Catalina components except Interceptor, Valve, and Session.  Make the
  corresponding changes to the included implementation classes.  This will be
  utilized to support Java objects that care about dynamic configuration
  changes.
  
  TODO:  implement event notifications from a Container on other significant
  events (such as adding or removing child containers and valves).
  
  LET IT BE NOTED:  JavaBeans is a *lot* more than just a naming convention
  for "get" and "set" methods!
  
  Revision  Changes    Path
  1.3       +21 -4     jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/Container.java
  
  Index: Container.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/Container.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- Container.java	2000/01/24 08:31:30	1.2
  +++ Container.java	2000/01/29 07:46:32	1.3
  @@ -1,7 +1,7 @@
   /*
  - * $Header: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/Container.java,v 1.2 2000/01/24 08:31:30 craigmcc Exp $
  - * $Revision: 1.2 $
  - * $Date: 2000/01/24 08:31:30 $
  + * $Header: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/Container.java,v 1.3 2000/01/29 07:46:32 craigmcc Exp $
  + * $Revision: 1.3 $
  + * $Date: 2000/01/29 07:46:32 $
    *
    * ====================================================================
    *
  @@ -65,6 +65,7 @@
   package org.apache.tomcat;
   
   
  +import java.beans.PropertyChangeListener;
   import java.io.IOException;
   import javax.servlet.ServletException;
   
  @@ -118,7 +119,7 @@
    * </ul>
    *
    * @author Craig R. McClanahan
  - * @version $Revision: 1.2 $ $Date: 2000/01/24 08:31:30 $
  + * @version $Revision: 1.3 $ $Date: 2000/01/29 07:46:32 $
    */
   
   public interface Container {
  @@ -262,6 +263,14 @@
   
   
       /**
  +     * Add a property change listener to this component.
  +     *
  +     * @param listener The listener to add
  +     */
  +    public void addPropertyChangeListener(PropertyChangeListener listener);
  +
  +
  +    /**
        * Add a new child Container to those associated with this Container,
        * if supported.  Prior to adding this Container to the set of children,
        * the child's <code>setParent()</code> method must be called, with this
  @@ -311,6 +320,14 @@
        */
       public void invoke(Request request, Response response)
   	throws IOException, ServletException;
  +
  +
  +    /**
  +     * Remove a property change listener from this component.
  +     *
  +     * @param listener The listener to remove
  +     */
  +    public void removePropertyChangeListener(PropertyChangeListener listener);
   
   
   }
  
  
  
  1.2       +22 -3     jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/Loader.java
  
  Index: Loader.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/Loader.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- Loader.java	2000/01/20 06:32:51	1.1
  +++ Loader.java	2000/01/29 07:46:32	1.2
  @@ -1,7 +1,7 @@
   /*
  - * $Header: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/Loader.java,v 1.1 2000/01/20 06:32:51 craigmcc Exp $
  - * $Revision: 1.1 $
  - * $Date: 2000/01/20 06:32:51 $
  + * $Header: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/Loader.java,v 1.2 2000/01/29 07:46:32 craigmcc Exp $
  + * $Revision: 1.2 $
  + * $Date: 2000/01/29 07:46:32 $
    *
    * ====================================================================
    *
  @@ -65,6 +65,9 @@
   package org.apache.tomcat;
   
   
  +import java.beans.PropertyChangeListener;
  +
  +
   /**
    * A <b>Loader</b> represents a Java ClassLoader implementation that can
    * be used by a Container to load class files (within a repository associated
  @@ -73,7 +76,7 @@
    * repository.
    *
    * @author Craig R. McClanahan
  - * @version $Revision: 1.1 $ $Date: 2000/01/20 06:32:51 $
  + * @version $Revision: 1.2 $ $Date: 2000/01/29 07:46:32 $
    */
   
   public interface Loader {
  @@ -114,6 +117,14 @@
   
   
       /**
  +     * Add a property change listener to this component.
  +     *
  +     * @param listener The listener to add
  +     */
  +    public void addPropertyChangeListener(PropertyChangeListener listener);
  +
  +
  +    /**
        * Has the internal repository associated with this Loader been modified,
        * such that the loaded classes should be reloaded?
        */
  @@ -125,6 +136,14 @@
        * loaded by that class loader) to be thrown away, and creates a new one.
        */
       public void reload();
  +
  +
  +    /**
  +     * Remove a property change listener from this component.
  +     *
  +     * @param listener The listener to remove
  +     */
  +    public void removePropertyChangeListener(PropertyChangeListener listener);
   
   
   }
  
  
  
  1.2       +22 -3     jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/Logger.java
  
  Index: Logger.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/Logger.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- Logger.java	2000/01/20 06:32:51	1.1
  +++ Logger.java	2000/01/29 07:46:32	1.2
  @@ -1,7 +1,7 @@
   /*
  - * $Header: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/Logger.java,v 1.1 2000/01/20 06:32:51 craigmcc Exp $
  - * $Revision: 1.1 $
  - * $Date: 2000/01/20 06:32:51 $
  + * $Header: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/Logger.java,v 1.2 2000/01/29 07:46:32 craigmcc Exp $
  + * $Revision: 1.2 $
  + * $Date: 2000/01/29 07:46:32 $
    *
    * ====================================================================
    *
  @@ -65,6 +65,9 @@
   package org.apache.tomcat;
   
   
  +import java.beans.PropertyChangeListener;
  +
  +
   /**
    * A <b>Logger</b> is a generic interface for the message and exception
    * logging methods of the ServletContext interface.  Loggers can be
  @@ -72,7 +75,7 @@
    * to a Context, or higher level, Container.
    *
    * @author Craig R. McClanahan
  - * @version $Revision: 1.1 $ $Date: 2000/01/20 06:32:51 $
  + * @version $Revision: 1.2 $ $Date: 2000/01/29 07:46:32 $
    */
   
   public interface Logger {
  @@ -107,6 +110,14 @@
   
   
       /**
  +     * Add a property change listener to this component.
  +     *
  +     * @param listener The listener to add
  +     */
  +    public void addPropertyChangeListener(PropertyChangeListener listener);
  +
  +
  +    /**
        * Writes the specified message to a servlet log file, usually an event
        * log.  The name and type of the servlet log is specific to the
        * servlet container.
  @@ -141,6 +152,14 @@
        * @param throwable The <code>Throwable</code> error or exception
        */
       public void log(String message, Throwable throwable);
  +
  +
  +    /**
  +     * Remove a property change listener from this component.
  +     *
  +     * @param listener The listener to remove
  +     */
  +    public void removePropertyChangeListener(PropertyChangeListener listener);
   
   
   }
  
  
  
  1.2       +20 -3     jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/Manager.java
  
  Index: Manager.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/Manager.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- Manager.java	2000/01/20 06:32:51	1.1
  +++ Manager.java	2000/01/29 07:46:32	1.2
  @@ -1,7 +1,7 @@
   /*
  - * $Header: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/Manager.java,v 1.1 2000/01/20 06:32:51 craigmcc Exp $
  - * $Revision: 1.1 $
  - * $Date: 2000/01/20 06:32:51 $
  + * $Header: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/Manager.java,v 1.2 2000/01/29 07:46:32 craigmcc Exp $
  + * $Revision: 1.2 $
  + * $Date: 2000/01/29 07:46:32 $
    *
    * ====================================================================
    *
  @@ -65,6 +65,7 @@
   package org.apache.tomcat;
   
   
  +import java.beans.PropertyChangeListener;
   import java.io.IOException;
   import javax.servlet.http.Cookie;
   import javax.servlet.http.HttpSession;
  @@ -77,7 +78,7 @@
    * as well as migrating sessions for distributable web applications.
    *
    * @author Craig R. McClanahan
  - * @version $Revision: 1.1 $ $Date: 2000/01/20 06:32:51 $
  + * @version $Revision: 1.2 $ $Date: 2000/01/29 07:46:32 $
    */
   
   public interface Manager {
  @@ -145,6 +146,14 @@
   
   
       /**
  +     * Add a property change listener to this component.
  +     *
  +     * @param listener The listener to add
  +     */
  +    public void addPropertyChangeListener(PropertyChangeListener listener);
  +
  +
  +    /**
        * Construct and return a new session object, based on the default
        * settings specified by this Manager's properties.  The session
        * id will be assigned by this method, and available via the getId()
  @@ -178,6 +187,14 @@
        * If this Manager has no active Sessions, a zero-length array is returned.
        */
       public Session[] findSessions();
  +
  +
  +    /**
  +     * Remove a property change listener from this component.
  +     *
  +     * @param listener The listener to remove
  +     */
  +    public void removePropertyChangeListener(PropertyChangeListener listener);
   
   
   }
  
  
  
  1.2       +20 -3     jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/Realm.java
  
  Index: Realm.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/Realm.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- Realm.java	2000/01/20 06:33:38	1.1
  +++ Realm.java	2000/01/29 07:46:32	1.2
  @@ -1,7 +1,7 @@
   /*
  - * $Header: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/Realm.java,v 1.1 2000/01/20 06:33:38 craigmcc Exp $
  - * $Revision: 1.1 $
  - * $Date: 2000/01/20 06:33:38 $
  + * $Header: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/Realm.java,v 1.2 2000/01/29 07:46:32 craigmcc Exp $
  + * $Revision: 1.2 $
  + * $Date: 2000/01/29 07:46:32 $
    *
    * ====================================================================
    *
  @@ -65,6 +65,7 @@
   package org.apache.tomcat;
   
   
  +import java.beans.PropertyChangeListener;
   import java.security.Principal;
   
   
  @@ -76,7 +77,7 @@
    * Container.
    *
    * @author Craig R. McClanahan
  - * @version $Revision: 1.1 $ $Date: 2000/01/20 06:33:38 $
  + * @version $Revision: 1.2 $ $Date: 2000/01/29 07:46:32 $
    */
   
   public interface Realm {
  @@ -111,6 +112,14 @@
   
   
       /**
  +     * Add a property change listener to this component.
  +     *
  +     * @param listener The listener to add
  +     */
  +    public void addPropertyChangeListener(PropertyChangeListener listener);
  +
  +
  +    /**
        * Return the Principal associated with the specified username and
        * credentials, if there is one; otherwise return <code>null</code>.
        *
  @@ -141,6 +150,14 @@
        * @param role Security role to be checked
        */
       public boolean hasRole(Principal principal, String role);
  +
  +
  +    /**
  +     * Remove a property change listener from this component.
  +     *
  +     * @param listener The listener to remove
  +     */
  +    public void removePropertyChangeListener(PropertyChangeListener listener);
   
   
   }
  
  
  
  1.2       +20 -3     jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/Resources.java
  
  Index: Resources.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/Resources.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- Resources.java	2000/01/20 06:33:38	1.1
  +++ Resources.java	2000/01/29 07:46:32	1.2
  @@ -1,7 +1,7 @@
   /*
  - * $Header: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/Resources.java,v 1.1 2000/01/20 06:33:38 craigmcc Exp $
  - * $Revision: 1.1 $
  - * $Date: 2000/01/20 06:33:38 $
  + * $Header: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/Resources.java,v 1.2 2000/01/29 07:46:32 craigmcc Exp $
  + * $Revision: 1.2 $
  + * $Date: 2000/01/29 07:46:32 $
    *
    * ====================================================================
    *
  @@ -65,6 +65,7 @@
   package org.apache.tomcat;
   
   
  +import java.beans.PropertyChangeListener;
   import java.io.InputStream;
   import java.net.MalformedURLException;
   import java.net.URL;
  @@ -81,7 +82,7 @@
    * normally configured for this Container.
    *
    * @author Craig R. McClanahan
  - * @version $Revision: 1.1 $ $Date: 2000/01/20 06:33:38 $
  + * @version $Revision: 1.2 $ $Date: 2000/01/29 07:46:32 $
    */
   
   public interface Resources {
  @@ -116,6 +117,14 @@
   
   
       /**
  +     * Add a property change listener to this component.
  +     *
  +     * @param listener The listener to add
  +     */
  +    public void addPropertyChangeListener(PropertyChangeListener listener);
  +
  +
  +    /**
        * Return the MIME type of the specified file, or <code>null</code> if
        * the MIME type is not known.  The MIME type is determined by the
        * configuration of the servlet container, and may be specified in a
  @@ -207,6 +216,14 @@
        * @param path The path to the desired resource
        */
       public InputStream getResourceAsStream(String path);
  +
  +
  +    /**
  +     * Remove a property change listener from this component.
  +     *
  +     * @param listener The listener to remove
  +     */
  +    public void removePropertyChangeListener(PropertyChangeListener listener);
   
   
   }
  
  
  
  1.2       +27 -10    jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/Store.java
  
  Index: Store.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/Store.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- Store.java	2000/01/20 06:33:38	1.1
  +++ Store.java	2000/01/29 07:46:32	1.2
  @@ -1,7 +1,7 @@
   /*
  - * $Header: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/Store.java,v 1.1 2000/01/20 06:33:38 craigmcc Exp $
  - * $Revision: 1.1 $
  - * $Date: 2000/01/20 06:33:38 $
  + * $Header: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/Store.java,v 1.2 2000/01/29 07:46:32 craigmcc Exp $
  + * $Revision: 1.2 $
  + * $Date: 2000/01/29 07:46:32 $
    *
    * ====================================================================
    *
  @@ -65,6 +65,7 @@
   package org.apache.tomcat;
   
   
  +import java.beans.PropertyChangeListener;
   import java.io.IOException;
   
   
  @@ -76,7 +77,7 @@
    * server or context restarts.
    *
    * @author Craig R. McClanahan
  - * @version $Revision: 1.1 $ $Date: 2000/01/20 06:33:38 $
  + * @version $Revision: 1.2 $ $Date: 2000/01/29 07:46:32 $
    */
   
   public interface Store {
  @@ -86,6 +87,14 @@
   
   
       /**
  +     * Return descriptive information about this Store implementation and
  +     * the corresponding version number, in the format
  +     * <code>&lt;description&gt;/&lt;version&gt;</code>.
  +     */
  +    public String getInfo();
  +
  +
  +    /**
        * Return the number of Sessions present in this Store.
        *
        * @exception IOException if an input/output error occurs
  @@ -93,15 +102,15 @@
       public int getSize() throws IOException;
   
   
  -    /**
  -     * Return descriptive information about this Store implementation and
  -     * the corresponding version number, in the format
  -     * <code>&lt;description&gt;/&lt;version&gt;</code>.
  -     */
  -    public String getInfo();
  +    // --------------------------------------------------------- Public Methods
   
   
  -    // --------------------------------------------------------- Public Methods
  +    /**
  +     * Add a property change listener to this component.
  +     *
  +     * @param listener The listener to add
  +     */
  +    public void addPropertyChangeListener(PropertyChangeListener listener);
   
   
       /**
  @@ -138,6 +147,14 @@
        * @exception IOException if an input/output error occurs
        */
       public void remove(String id) throws IOException;
  +
  +
  +    /**
  +     * Remove a property change listener from this component.
  +     *
  +     * @param listener The listener to remove
  +     */
  +    public void removePropertyChangeListener(PropertyChangeListener listener);
   
   
       /**
  
  
  
  1.5       +53 -4     jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/core/ContainerBase.java
  
  Index: ContainerBase.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/core/ContainerBase.java,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- ContainerBase.java	2000/01/29 03:47:28	1.4
  +++ ContainerBase.java	2000/01/29 07:46:33	1.5
  @@ -1,7 +1,7 @@
   /*
  - * $Header: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/core/ContainerBase.java,v 1.4 2000/01/29 03:47:28 craigmcc Exp $
  - * $Revision: 1.4 $
  - * $Date: 2000/01/29 03:47:28 $
  + * $Header: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/core/ContainerBase.java,v 1.5 2000/01/29 07:46:33 craigmcc Exp $
  + * $Revision: 1.5 $
  + * $Date: 2000/01/29 07:46:33 $
    *
    * ====================================================================
    *
  @@ -65,6 +65,8 @@
   package org.apache.tomcat.core;
   
   
  +import java.beans.PropertyChangeListener;
  +import java.beans.PropertyChangeSupport;
   import java.io.IOException;
   import java.util.Enumeration;
   import java.util.Hashtable;
  @@ -97,7 +99,7 @@
    * pipeline will preceed the basic Valve.
    *
    * @author Craig R. McClanahan
  - * @version $Revision: 1.4 $ $Date: 2000/01/29 03:47:28 $
  + * @version $Revision: 1.5 $ $Date: 2000/01/29 07:46:33 $
    */
   
   public abstract class ContainerBase
  @@ -180,6 +182,12 @@
       protected boolean started = false;
   
   
  +    /**
  +     * The property change support for this component.
  +     */
  +    protected PropertyChangeSupport support = new PropertyChangeSupport(this);
  +
  +
       // ------------------------------------------------------------- Properties
   
   
  @@ -205,6 +213,7 @@
   	// FIXME - Synchronize as necessary
   	// FIXME - Lifecycle support (on old and new) if already started
   
  +	Valve oldBasic = this.basic;
   	valve.setContainer((Container) this);
   	valve.setNext(null);
   
  @@ -224,6 +233,8 @@
   	    basic = valve;
   	}
   
  +	support.firePropertyChange("basic", oldBasic, this.basic);
  +
       }
   
   
  @@ -275,7 +286,9 @@
        */
       public void setLoader(Loader loader) {
   
  +	Loader oldLoader = this.loader;
   	this.loader = loader;
  +	support.firePropertyChange("loader", oldLoader, this.loader);
   
       }
   
  @@ -303,7 +316,9 @@
        */
       public void setLogger(Logger logger) {
   
  +	Logger oldLogger = this.logger;
   	this.logger = logger;
  +	support.firePropertyChange("logger", oldLogger, this.logger);
   
       }
   
  @@ -331,7 +346,9 @@
        */
       public void setManager(Manager manager) {
   
  +	Manager oldManager = this.manager;
   	this.manager = manager;
  +	support.firePropertyChange("manager", oldManager, this.manager);
   
       }
   
  @@ -361,7 +378,9 @@
        */
       public void setName(String name) {
   
  +	String oldName = this.name;
   	this.name = name;
  +	support.firePropertyChange("name", oldName, this.name);
   
       }
   
  @@ -390,7 +409,9 @@
        */
       public void setParent(Container container) {
   
  +	Container oldParent = this.parent;
   	this.parent = parent;
  +	support.firePropertyChange("parent", oldParent, this.parent);
   
       }
   
  @@ -418,7 +439,9 @@
        */
       public void setRealm(Realm realm) {
   
  +	Realm oldRealm = this.realm;
   	this.realm = realm;
  +	support.firePropertyChange("realm", oldRealm, this.realm);
   
       }
   
  @@ -446,7 +469,9 @@
        */
       public void setResources(Resources resources) {
   
  +	Resources oldResources = this.resources;
   	this.resources = resources;
  +	support.firePropertyChange("resources", oldResources, this.resources);
   
       }
   
  @@ -455,6 +480,18 @@
   
   
       /**
  +     * Add a property change listener to this component.
  +     *
  +     * @param listener The listener to add
  +     */
  +    public void addPropertyChangeListener(PropertyChangeListener listener) {
  +
  +	support.addPropertyChangeListener(listener);
  +
  +    }
  +
  +
  +    /**
        * Add a new child Container to those associated with this Container,
        * if supported.  Prior to adding this Container to the set of children,
        * the child's <code>setParent()</code> method must be called, with this
  @@ -541,6 +578,18 @@
   	else
   	    throw new IllegalStateException
   		(sm.getString("containerBase.notConfigured"));
  +
  +    }
  +
  +
  +    /**
  +     * Remove a property change listener from this component.
  +     *
  +     * @param listener The listener to remove
  +     */
  +    public void removePropertyChangeListener(PropertyChangeListener listener) {
  +
  +	support.removePropertyChangeListener(listener);
   
       }
   
  
  
  
  1.3       +8 -4      jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/core/StandardContext.java
  
  Index: StandardContext.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/core/StandardContext.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- StandardContext.java	2000/01/24 08:31:31	1.2
  +++ StandardContext.java	2000/01/29 07:46:33	1.3
  @@ -1,7 +1,7 @@
   /*
  - * $Header: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/core/StandardContext.java,v 1.2 2000/01/24 08:31:31 craigmcc Exp $
  - * $Revision: 1.2 $
  - * $Date: 2000/01/24 08:31:31 $
  + * $Header: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/core/StandardContext.java,v 1.3 2000/01/29 07:46:33 craigmcc Exp $
  + * $Revision: 1.3 $
  + * $Date: 2000/01/29 07:46:33 $
    *
    * ====================================================================
    *
  @@ -83,7 +83,7 @@
    * requests directed to a particular servlet.
    *
    * @author Craig R. McClanahan
  - * @version $Revision: 1.2 $ $Date: 2000/01/24 08:31:31 $
  + * @version $Revision: 1.3 $ $Date: 2000/01/29 07:46:33 $
    */
   
   public final class StandardContext
  @@ -147,7 +147,11 @@
        */
       public void setDescriptor(WebApplicationDescriptor descriptor) {
   
  +	WebApplicationDescriptor oldDescriptor = this.descriptor;
   	this.descriptor = descriptor;
  +	support.firePropertyChange("descriptor", oldDescriptor,
  +				   this.descriptor);
  +
   	// FIXME - Parse out the stuff we will use a lot?
   
       }
  
  
  
  1.3       +12 -6     jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/core/StandardEngine.java
  
  Index: StandardEngine.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/core/StandardEngine.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- StandardEngine.java	2000/01/24 08:31:31	1.2
  +++ StandardEngine.java	2000/01/29 07:46:33	1.3
  @@ -1,7 +1,7 @@
   /*
  - * $Header: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/core/StandardEngine.java,v 1.2 2000/01/24 08:31:31 craigmcc Exp $
  - * $Revision: 1.2 $
  - * $Date: 2000/01/24 08:31:31 $
  + * $Header: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/core/StandardEngine.java,v 1.3 2000/01/29 07:46:33 craigmcc Exp $
  + * $Revision: 1.3 $
  + * $Date: 2000/01/29 07:46:33 $
    *
    * ====================================================================
    *
  @@ -81,7 +81,7 @@
    * fully qualified host name of that virtual host.
    *
    * @author Craig R. McClanahan
  - * @version $Revision: 1.2 $ $Date: 2000/01/24 08:31:31 $
  + * @version $Revision: 1.3 $ $Date: 2000/01/29 07:46:33 $
    */
   
   public final class StandardEngine
  @@ -145,7 +145,10 @@
        */
       public void setDefaultHost(String host) {
   
  -	defaultHost = host;
  +	String oldDefaultHost = this.defaultHost;
  +	this.defaultHost = host;
  +	support.firePropertyChange("defaultHost", oldDefaultHost,
  +				   this.defaultHost);
   
       }
   
  @@ -167,7 +170,10 @@
        */
       public void setUnknownHost(String host) {
   
  -	unknownHost = host;
  +	String oldUnknownHost = this.unknownHost;
  +	this.unknownHost = host;
  +	support.firePropertyChange("unknownHost", oldUnknownHost,
  +				   this.unknownHost);
   
       }
   
  
  
  
  1.3       +7 -4      jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/core/StandardHost.java
  
  Index: StandardHost.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/core/StandardHost.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- StandardHost.java	2000/01/24 08:31:31	1.2
  +++ StandardHost.java	2000/01/29 07:46:34	1.3
  @@ -1,7 +1,7 @@
   /*
  - * $Header: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/core/StandardHost.java,v 1.2 2000/01/24 08:31:31 craigmcc Exp $
  - * $Revision: 1.2 $
  - * $Date: 2000/01/24 08:31:31 $
  + * $Header: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/core/StandardHost.java,v 1.3 2000/01/29 07:46:34 craigmcc Exp $
  + * $Revision: 1.3 $
  + * $Date: 2000/01/29 07:46:34 $
    *
    * ====================================================================
    *
  @@ -82,7 +82,7 @@
    * requests directed to a particular web application.
    *
    * @author Craig R. McClanahan
  - * @version $Revision: 1.2 $ $Date: 2000/01/24 08:31:31 $
  + * @version $Revision: 1.3 $ $Date: 2000/01/29 07:46:34 $
    */
   
   public final class StandardHost
  @@ -176,7 +176,10 @@
        */
       public void setRoot(boolean root) {
   
  +	boolean oldRoot = this.root;
   	this.root = root;
  +	support.firePropertyChange("root", new Boolean(oldRoot),
  +				   new Boolean(this.root));
   
       }
   
  
  
  
  1.3       +40 -4     jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/core/StandardResources.java
  
  Index: StandardResources.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/core/StandardResources.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- StandardResources.java	2000/01/29 03:47:29	1.2
  +++ StandardResources.java	2000/01/29 07:46:34	1.3
  @@ -1,7 +1,7 @@
   /*
  - * $Header: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/core/StandardResources.java,v 1.2 2000/01/29 03:47:29 craigmcc Exp $
  - * $Revision: 1.2 $
  - * $Date: 2000/01/29 03:47:29 $
  + * $Header: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/core/StandardResources.java,v 1.3 2000/01/29 07:46:34 craigmcc Exp $
  + * $Revision: 1.3 $
  + * $Date: 2000/01/29 07:46:34 $
    *
    * ====================================================================
    *
  @@ -65,6 +65,8 @@
   package org.apache.tomcat.core;
   
   
  +import java.beans.PropertyChangeSupport;
  +import java.beans.PropertyChangeListener;
   import java.io.File;
   import java.io.InputStream;
   import java.io.IOException;
  @@ -84,7 +86,7 @@
    * requests are resolved against the document base URL that is configured.
    *
    * @author Craig R. McClanahan
  - * @version $Revision: 1.2 $ $Date: 2000/01/29 03:47:29 $
  + * @version $Revision: 1.3 $ $Date: 2000/01/29 07:46:34 $
    */
   
   public final class StandardResources
  @@ -139,6 +141,12 @@
       private boolean started = false;
   
   
  +    /**
  +     * The property change support for this component.
  +     */
  +    protected PropertyChangeSupport support = new PropertyChangeSupport(this);
  +
  +
       // ------------------------------------------------------------- Properties
   
   
  @@ -159,7 +167,9 @@
        */
       public void setContainer(Container container) {
   
  +	Container oldContainer = this.container;
   	this.container = container;
  +	support.firePropertyChange("container", oldContainer, this.container);
   
       }
   
  @@ -191,7 +201,9 @@
   	    throw new IllegalArgumentException
   		(sm.getString("standardResources.malformedURL"));
   	}
  +	String oldDocRoot = this.docRoot;
   	this.docRoot = url.toString();
  +	support.firePropertyChange("docRoot", oldDocRoot, this.docRoot);
   
       }
   
  @@ -212,6 +224,18 @@
   
   
       /**
  +     * Add a property change listener to this component.
  +     *
  +     * @param listener The listener to add
  +     */
  +    public void addPropertyChangeListener(PropertyChangeListener listener) {
  +
  +	support.addPropertyChangeListener(listener);
  +
  +    }
  +
  +
  +    /**
        * Return the MIME type of the specified file, or <code>null</code> if
        * the MIME type is not known.  The MIME type is determined by the
        * configuration of the servlet container, and may be specified in a
  @@ -332,6 +356,18 @@
   	} catch (IOException e) {
   	    return (null);
   	}
  +
  +    }
  +
  +
  +    /**
  +     * Remove a property change listener from this component.
  +     *
  +     * @param listener The listener to remove
  +     */
  +    public void removePropertyChangeListener(PropertyChangeListener listener) {
  +
  +	support.removePropertyChangeListener(listener);
   
       }
   
  
  
  
  1.3       +13 -4     jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/logger/FileLogger.java
  
  Index: FileLogger.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/logger/FileLogger.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- FileLogger.java	2000/01/29 03:47:29	1.2
  +++ FileLogger.java	2000/01/29 07:46:34	1.3
  @@ -1,7 +1,7 @@
   /*
  - * $Header: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/logger/FileLogger.java,v 1.2 2000/01/29 03:47:29 craigmcc Exp $
  - * $Revision: 1.2 $
  - * $Date: 2000/01/29 03:47:29 $
  + * $Header: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/logger/FileLogger.java,v 1.3 2000/01/29 07:46:34 craigmcc Exp $
  + * $Revision: 1.3 $
  + * $Date: 2000/01/29 07:46:34 $
    *
    * ====================================================================
    *
  @@ -83,7 +83,7 @@
    * optional preceding timestamp.
    *
    * @author Craig R. McClanahan
  - * @version $Revision: 1.2 $ $Date: 2000/01/29 03:47:29 $
  + * @version $Revision: 1.3 $ $Date: 2000/01/29 07:46:34 $
    */
   
   public final class FileLogger
  @@ -171,7 +171,9 @@
        */
       public void setDirectory(String directory) {
   
  +	String oldDirectory = this.directory;
   	this.directory = directory;
  +	support.firePropertyChange("directory", oldDirectory, this.directory);
   
       }
   
  @@ -193,7 +195,9 @@
        */
       public void setPrefix(String prefix) {
   
  +	String oldPrefix = this.prefix;
   	this.prefix = prefix;
  +	support.firePropertyChange("prefix", oldPrefix, this.prefix);
   
       }
   
  @@ -215,7 +219,9 @@
        */
       public void setSuffix(String suffix) {
   
  +	String oldSuffix = this.suffix;
   	this.suffix = suffix;
  +	support.firePropertyChange("suffix", oldSuffix, this.suffix);
   
       }
   
  @@ -237,7 +243,10 @@
        */
       public void setTimestamp(boolean timestamp) {
   
  +	boolean oldTimestamp = this.timestamp;
   	this.timestamp = timestamp;
  +	support.firePropertyChange("timestamp", new Boolean(oldTimestamp),
  +				   new Boolean(this.timestamp));
   
       }
   
  
  
  
  1.2       +37 -3     jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/logger/LoggerBase.java
  
  Index: LoggerBase.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/logger/LoggerBase.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- LoggerBase.java	2000/01/20 06:36:29	1.1
  +++ LoggerBase.java	2000/01/29 07:46:34	1.2
  @@ -1,7 +1,7 @@
   /*
  - * $Header: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/logger/LoggerBase.java,v 1.1 2000/01/20 06:36:29 craigmcc Exp $
  - * $Revision: 1.1 $
  - * $Date: 2000/01/20 06:36:29 $
  + * $Header: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/logger/LoggerBase.java,v 1.2 2000/01/29 07:46:34 craigmcc Exp $
  + * $Revision: 1.2 $
  + * $Date: 2000/01/29 07:46:34 $
    *
    * ====================================================================
    *
  @@ -65,6 +65,8 @@
   package org.apache.tomcat.logger;
   
   
  +import java.beans.PropertyChangeSupport;
  +import java.beans.PropertyChangeListener;
   import java.io.CharArrayWriter;
   import java.io.PrintWriter;
   import org.apache.tomcat.Container;
  @@ -77,7 +79,7 @@
    * any property setting and lifecycle methods required for configuration.
    *
    * @author Craig R. McClanahan
  - * @version $Revision: 1.1 $ $Date: 2000/01/20 06:36:29 $
  + * @version $Revision: 1.2 $ $Date: 2000/01/29 07:46:34 $
    */
   
   abstract class LoggerBase
  @@ -100,6 +102,12 @@
   	"org.apache.tomcat.logger.LoggerBase/1.0";
   
   
  +    /**
  +     * The property change support for this component.
  +     */
  +    protected PropertyChangeSupport support = new PropertyChangeSupport(this);
  +
  +
       // ------------------------------------------------------------- Properties
   
   
  @@ -120,7 +128,9 @@
        */
       public void setContainer(Container container) {
   
  +	Container oldContainer = this.container;
   	this.container = container;
  +	support.firePropertyChange("container", oldContainer, this.container);
   
       }
   
  @@ -141,6 +151,18 @@
   
   
       /**
  +     * Add a property change listener to this component.
  +     *
  +     * @param listener The listener to add
  +     */
  +    public void addPropertyChangeListener(PropertyChangeListener listener) {
  +
  +	support.addPropertyChangeListener(listener);
  +
  +    }
  +
  +
  +    /**
        * Writes the specified message to a servlet log file, usually an event
        * log.  The name and type of the servlet log is specific to the
        * servlet container.
  @@ -185,6 +207,18 @@
   	writer.print(msg);
   	throwable.printStackTrace(writer);
   	log(buf.toString());
  +
  +    }
  +
  +
  +    /**
  +     * Remove a property change listener from this component.
  +     *
  +     * @param listener The listener to remove
  +     */
  +    public void removePropertyChangeListener(PropertyChangeListener listener) {
  +
  +	support.removePropertyChangeListener(listener);
   
       }
   
  
  
  
  1.2       +3 -5      jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/logger/SystemErrLogger.java
  
  Index: SystemErrLogger.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/logger/SystemErrLogger.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- SystemErrLogger.java	2000/01/20 06:36:29	1.1
  +++ SystemErrLogger.java	2000/01/29 07:46:34	1.2
  @@ -1,7 +1,7 @@
   /*
  - * $Header: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/logger/SystemErrLogger.java,v 1.1 2000/01/20 06:36:29 craigmcc Exp $
  - * $Revision: 1.1 $
  - * $Date: 2000/01/20 06:36:29 $
  + * $Header: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/logger/SystemErrLogger.java,v 1.2 2000/01/29 07:46:34 craigmcc Exp $
  + * $Revision: 1.2 $
  + * $Date: 2000/01/29 07:46:34 $
    *
    * ====================================================================
    *
  @@ -67,11 +67,9 @@
   
   /**
    * Simple implementation of <b>Logger</b> that writes to System.err.
  - * Because this component is so simple, no configuration is required.
  - * Therefore, Lifecycle is not implemented.
    *
    * @author Craig R. McClanahan
  - * @version $Revision: 1.1 $ $Date: 2000/01/20 06:36:29 $
  + * @version $Revision: 1.2 $ $Date: 2000/01/29 07:46:34 $
    */
   
   public final class SystemErrLogger
  
  
  
  1.3       +51 -12    jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/session/FileStore.java
  
  Index: FileStore.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/session/FileStore.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- FileStore.java	2000/01/29 03:47:30	1.2
  +++ FileStore.java	2000/01/29 07:46:35	1.3
  @@ -1,7 +1,7 @@
   /*
  - * $Header: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/session/FileStore.java,v 1.2 2000/01/29 03:47:30 craigmcc Exp $
  - * $Revision: 1.2 $
  - * $Date: 2000/01/29 03:47:30 $
  + * $Header: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/session/FileStore.java,v 1.3 2000/01/29 07:46:35 craigmcc Exp $
  + * $Revision: 1.3 $
  + * $Date: 2000/01/29 07:46:35 $
    *
    * ====================================================================
    *
  @@ -65,6 +65,8 @@
   package org.apache.tomcat.session;
   
   
  +import java.beans.PropertyChangeListener;
  +import java.beans.PropertyChangeSupport;
   import java.io.BufferedInputStream;
   import java.io.BufferedOutputStream;
   import java.io.File;
  @@ -91,7 +93,7 @@
    * saved are still subject to being expired based on inactivity.
    *
    * @author Craig R. McClanahan
  - * @version $Revision: 1.2 $ $Date: 2000/01/29 03:47:30 $
  + * @version $Revision: 1.3 $ $Date: 2000/01/29 07:46:35 $
    */
   
   public final class FileStore
  @@ -134,6 +136,12 @@
   
   
       /**
  +     * The property change support for this component.
  +     */
  +    private PropertyChangeSupport support = new PropertyChangeSupport(this);
  +
  +
  +    /**
        * The background thread.
        */
       private Thread thread = null;
  @@ -171,7 +179,11 @@
        */
       public void setCheckInterval(int checkInterval) {
   
  +	int oldCheckInterval = this.checkInterval;
   	this.checkInterval = checkInterval;
  +	support.firePropertyChange("checkInterval",
  +				   new Integer(oldCheckInterval),
  +				   new Integer(this.checkInterval));
   
       }
   
  @@ -193,8 +205,23 @@
        */
       public void setDirectoryPath(String path) {
   
  +	String oldDirectoryPath = this.directoryPath;
   	this.directoryPath = path;
  +	support.firePropertyChange("directoryPath", oldDirectoryPath,
  +				   this.directoryPath);
  +
  +    }
  +
  +
  +    /**
  +     * Return descriptive information about this Store implementation and
  +     * the corresponding version number, in the format
  +     * <code>&lt;description&gt;/&lt;version&gt;</code>.
  +     */
  +    public String getInfo() {
   
  +	return (info);
  +
       }
   
   
  @@ -210,21 +237,21 @@
       }
   
   
  +    // --------------------------------------------------------- Public Methods
  +
  +
       /**
  -     * Return descriptive information about this Store implementation and
  -     * the corresponding version number, in the format
  -     * <code>&lt;description&gt;/&lt;version&gt;</code>.
  +     * Add a property change listener to this component.
  +     *
  +     * @param listener The listener to add
        */
  -    public String getInfo() {
  +    public void addPropertyChangeListener(PropertyChangeListener listener) {
   
  -	return (info);
  +	support.addPropertyChangeListener(listener);
   
       }
   
   
  -    // --------------------------------------------------------- Public Methods
  -
  -
       /**
        * Return an array containing the session identifiers of all Sessions
        * currently saved in this Store.  If there are no such Sessions, a
  @@ -269,6 +296,18 @@
       public void remove(String id) throws IOException {
   
   	;	// FIXME: remove()
  +
  +    }
  +
  +
  +    /**
  +     * Remove a property change listener from this component.
  +     *
  +     * @param listener The listener to remove
  +     */
  +    public void removePropertyChangeListener(PropertyChangeListener listener) {
  +
  +	support.removePropertyChangeListener(listener);
   
       }
   
  
  
  
  1.2       +46 -4     jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/session/ManagerBase.java
  
  Index: ManagerBase.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/session/ManagerBase.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- ManagerBase.java	2000/01/20 06:37:30	1.1
  +++ ManagerBase.java	2000/01/29 07:46:35	1.2
  @@ -1,7 +1,7 @@
   /*
  - * $Header: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/session/ManagerBase.java,v 1.1 2000/01/20 06:37:30 craigmcc Exp $
  - * $Revision: 1.1 $
  - * $Date: 2000/01/20 06:37:30 $
  + * $Header: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/session/ManagerBase.java,v 1.2 2000/01/29 07:46:35 craigmcc Exp $
  + * $Revision: 1.2 $
  + * $Date: 2000/01/29 07:46:35 $
    *
    * ====================================================================
    *
  @@ -65,6 +65,8 @@
   package org.apache.tomcat.session;
   
   
  +import java.beans.PropertyChangeListener;
  +import java.beans.PropertyChangeSupport;
   import java.io.IOException;
   import java.util.Enumeration;
   import java.util.Hashtable;
  @@ -84,7 +86,7 @@
    * be subclassed to create more sophisticated Manager implementations.
    *
    * @author Craig R. McClanahan
  - * @version $Revision: 1.1 $ $Date: 2000/01/20 06:37:30 $
  + * @version $Revision: 1.2 $ $Date: 2000/01/29 07:46:35 $
    */
   
   public abstract class ManagerBase implements Manager {
  @@ -133,6 +135,12 @@
       protected Hashtable sessions = new Hashtable();
   
   
  +    /**
  +     * The property change support for this component.
  +     */
  +    protected PropertyChangeSupport support = new PropertyChangeSupport(this);
  +
  +
       // ------------------------------------------------------------- Properties
   
   
  @@ -153,7 +161,9 @@
        */
       public void setContainer(Container container) {
   
  +	Container oldContainer = this.container;
   	this.container = container;
  +	support.firePropertyChange("container", oldContainer, this.container);
   
       }
   
  @@ -178,7 +188,11 @@
        */
       public void setDistributable(boolean distributable) {
   
  +	boolean oldDistributable = this.distributable;
   	this.distributable = distributable;
  +	support.firePropertyChange("distributable",
  +				   new Boolean(oldDistributable),
  +				   new Boolean(this.distributable));
   
       }
   
  @@ -214,7 +228,11 @@
        */
       public void setMaxInactiveInterval(int interval) {
   
  +	int oldMaxInactiveInterval = this.maxInactiveInterval;
   	this.maxInactiveInterval = interval;
  +	support.firePropertyChange("maxInactiveInterval",
  +				   new Integer(oldMaxInactiveInterval),
  +				   new Integer(this.maxInactiveInterval));
   
       }
   
  @@ -223,6 +241,18 @@
   
   
       /**
  +     * Add a property change listener to this component.
  +     *
  +     * @param listener The listener to add
  +     */
  +    public void addPropertyChangeListener(PropertyChangeListener listener) {
  +
  +	support.addPropertyChangeListener(listener);
  +
  +    }
  +
  +
  +    /**
        * Construct and return a new session object, based on the default
        * settings specified by this Manager's properties.  The session
        * id will be assigned by this method, and available via the getId()
  @@ -300,6 +330,18 @@
   	    }
   	    return (results);
   	}
  +
  +    }
  +
  +
  +    /**
  +     * Remove a property change listener from this component.
  +     *
  +     * @param listener The listener to remove
  +     */
  +    public void removePropertyChangeListener(PropertyChangeListener listener) {
  +
  +	support.removePropertyChangeListener(listener);
   
       }
   
  
  
  
  1.3       +12 -4     jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/session/StandardManager.java
  
  Index: StandardManager.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/session/StandardManager.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- StandardManager.java	2000/01/29 03:47:30	1.2
  +++ StandardManager.java	2000/01/29 07:46:35	1.3
  @@ -1,7 +1,7 @@
   /*
  - * $Header: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/session/StandardManager.java,v 1.2 2000/01/29 03:47:30 craigmcc Exp $
  - * $Revision: 1.2 $
  - * $Date: 2000/01/29 03:47:30 $
  + * $Header: /home/cvs/jakarta-tomcat/proposals/catalina/src/share/org/apache/tomcat/session/StandardManager.java,v 1.3 2000/01/29 07:46:35 craigmcc Exp $
  + * $Revision: 1.3 $
  + * $Date: 2000/01/29 07:46:35 $
    *
    * ====================================================================
    *
  @@ -84,7 +84,7 @@
    * an optional, configurable, maximum number of active sessions allowed.
    *
    * @author Craig R. McClanahan
  - * @version $Revision: 1.2 $ $Date: 2000/01/29 03:47:30 $
  + * @version $Revision: 1.3 $ $Date: 2000/01/29 07:46:35 $
    */
   
   public final class StandardManager
  @@ -164,7 +164,11 @@
        */
       public void setCheckInterval(int checkInterval) {
   
  +	int oldCheckInterval = this.checkInterval;
   	this.checkInterval = checkInterval;
  +	support.firePropertyChange("checkInterval",
  +				   new Integer(oldCheckInterval),
  +				   new Integer(this.checkInterval));
   
       }
   
  @@ -200,7 +204,11 @@
        */
       public void setMaxActiveSessions(int max) {
   
  +	int oldMaxActiveSessions = this.maxActiveSessions;
   	this.maxActiveSessions = max;
  +	support.firePropertyChange("maxActiveSessions",
  +				   new Integer(oldMaxActiveSessions),
  +				   new Integer(this.maxActiveSessions));
   
       }