Save This Page
Home » apache-tomcat-6.0.16-src » org.apache » catalina » [javadoc | source]
    1   /*
    2    * Licensed to the Apache Software Foundation (ASF) under one or more
    3    * contributor license agreements.  See the NOTICE file distributed with
    4    * this work for additional information regarding copyright ownership.
    5    * The ASF licenses this file to You under the Apache License, Version 2.0
    6    * (the "License"); you may not use this file except in compliance with
    7    * the License.  You may obtain a copy of the License at
    8    * 
    9    *      http://www.apache.org/licenses/LICENSE-2.0
   10    * 
   11    * Unless required by applicable law or agreed to in writing, software
   12    * distributed under the License is distributed on an "AS IS" BASIS,
   13    * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   14    * See the License for the specific language governing permissions and
   15    * limitations under the License.
   16    */
   17   
   18   
   19   package org.apache.catalina;
   20   
   21   
   22   import java.util.EventObject;
   23   import javax.servlet.Filter;
   24   import javax.servlet.Servlet;
   25   import javax.servlet.ServletRequest;
   26   import javax.servlet.ServletResponse;
   27   
   28   
   29   /**
   30    * General event for notifying listeners of significant events related to
   31    * a specific instance of a Servlet, or a specific instance of a Filter,
   32    * as opposed to the Wrapper component that manages it.
   33    *
   34    * @author Craig R. McClanahan
   35    * @version $Revision: 467222 $ $Date: 2006-10-24 05:17:11 +0200 (mar., 24 oct. 2006) $
   36    */
   37   
   38   public final class InstanceEvent
   39       extends EventObject {
   40   
   41   
   42       // ----------------------------------------------------- Manifest Constants
   43   
   44   
   45       /**
   46        * The event indicating that the <code>init()</code> method is about
   47        * to be called for this instance.
   48        */
   49       public static final String BEFORE_INIT_EVENT = "beforeInit";
   50   
   51   
   52       /**
   53        * The event indicating that the <code>init()</code> method has returned.
   54        */
   55       public static final String AFTER_INIT_EVENT = "afterInit";
   56   
   57   
   58       /**
   59        * The event indicating that the <code>service()</code> method is about
   60        * to be called on a servlet.  The <code>servlet</code> property contains
   61        * the servlet being called, and the <code>request</code> and
   62        * <code>response</code> properties contain the current request and
   63        * response being processed.
   64        */
   65       public static final String BEFORE_SERVICE_EVENT = "beforeService";
   66   
   67   
   68       /**
   69        * The event indicating that the <code>service()</code> method has
   70        * returned.  The <code>servlet</code> property contains the servlet
   71        * that was called, and the <code>request</code> and
   72        * <code>response</code> properties contain the current request and
   73        * response being processed.
   74        */
   75       public static final String AFTER_SERVICE_EVENT = "afterService";
   76   
   77   
   78       /**
   79        * The event indicating that the <code>destroy</code> method is about
   80        * to be called for this instance.
   81        */
   82       public static final String BEFORE_DESTROY_EVENT = "beforeDestroy";
   83   
   84   
   85       /**
   86        * The event indicating that the <code>destroy()</code> method has
   87        * returned.
   88        */
   89       public static final String AFTER_DESTROY_EVENT = "afterDestroy";
   90   
   91   
   92       /**
   93        * The event indicating that the <code>service()</code> method of a
   94        * servlet accessed via a request dispatcher is about to be called.
   95        * The <code>servlet</code> property contains a reference to the
   96        * dispatched-to servlet instance, and the <code>request</code> and
   97        * <code>response</code> properties contain the current request and
   98        * response being processed.  The <code>wrapper</code> property will
   99        * contain a reference to the dispatched-to Wrapper.
  100        */
  101       public static final String BEFORE_DISPATCH_EVENT = "beforeDispatch";
  102   
  103   
  104       /**
  105        * The event indicating that the <code>service()</code> method of a
  106        * servlet accessed via a request dispatcher has returned.  The
  107        * <code>servlet</code> property contains a reference to the
  108        * dispatched-to servlet instance, and the <code>request</code> and
  109        * <code>response</code> properties contain the current request and
  110        * response being processed.  The <code>wrapper</code> property will
  111        * contain a reference to the dispatched-to Wrapper.
  112        */
  113       public static final String AFTER_DISPATCH_EVENT = "afterDispatch";
  114   
  115   
  116       /**
  117        * The event indicating that the <code>doFilter()</code> method of a
  118        * Filter is about to be called.  The <code>filter</code> property
  119        * contains a reference to the relevant filter instance, and the
  120        * <code>request</code> and <code>response</code> properties contain
  121        * the current request and response being processed.
  122        */
  123       public static final String BEFORE_FILTER_EVENT = "beforeFilter";
  124   
  125   
  126       /**
  127        * The event indicating that the <code>doFilter()</code> method of a
  128        * Filter has returned.  The <code>filter</code> property contains
  129        * a reference to the relevant filter instance, and the
  130        * <code>request</code> and <code>response</code> properties contain
  131        * the current request and response being processed.
  132        */
  133       public static final String AFTER_FILTER_EVENT = "afterFilter";
  134   
  135   
  136       // ----------------------------------------------------------- Constructors
  137   
  138   
  139       /**
  140        * Construct a new InstanceEvent with the specified parameters.  This
  141        * constructor is used for filter lifecycle events.
  142        *
  143        * @param wrapper Wrapper managing this servlet instance
  144        * @param filter Filter instance for which this event occurred
  145        * @param type Event type (required)
  146        */
  147       public InstanceEvent(Wrapper wrapper, Filter filter, String type) {
  148   
  149         super(wrapper);
  150         this.wrapper = wrapper;
  151         this.filter = filter;
  152         this.servlet = null;
  153         this.type = type;
  154   
  155       }
  156   
  157   
  158       /**
  159        * Construct a new InstanceEvent with the specified parameters.  This
  160        * constructor is used for filter lifecycle events.
  161        *
  162        * @param wrapper Wrapper managing this servlet instance
  163        * @param filter Filter instance for which this event occurred
  164        * @param type Event type (required)
  165        * @param exception Exception that occurred
  166        */
  167       public InstanceEvent(Wrapper wrapper, Filter filter, String type,
  168                            Throwable exception) {
  169   
  170         super(wrapper);
  171         this.wrapper = wrapper;
  172         this.filter = filter;
  173         this.servlet = null;
  174         this.type = type;
  175         this.exception = exception;
  176   
  177       }
  178   
  179   
  180       /**
  181        * Construct a new InstanceEvent with the specified parameters.  This
  182        * constructor is used for filter processing events.
  183        *
  184        * @param wrapper Wrapper managing this servlet instance
  185        * @param filter Filter instance for which this event occurred
  186        * @param type Event type (required)
  187        * @param request Servlet request we are processing
  188        * @param response Servlet response we are processing
  189        */
  190       public InstanceEvent(Wrapper wrapper, Filter filter, String type,
  191                            ServletRequest request, ServletResponse response) {
  192   
  193         super(wrapper);
  194         this.wrapper = wrapper;
  195         this.filter = filter;
  196         this.servlet = null;
  197         this.type = type;
  198         this.request = request;
  199         this.response = response;
  200   
  201       }
  202   
  203   
  204       /**
  205        * Construct a new InstanceEvent with the specified parameters.  This
  206        * constructor is used for filter processing events.
  207        *
  208        * @param wrapper Wrapper managing this servlet instance
  209        * @param filter Filter instance for which this event occurred
  210        * @param type Event type (required)
  211        * @param request Servlet request we are processing
  212        * @param response Servlet response we are processing
  213        * @param exception Exception that occurred
  214        */
  215       public InstanceEvent(Wrapper wrapper, Filter filter, String type,
  216                            ServletRequest request, ServletResponse response,
  217                            Throwable exception) {
  218   
  219         super(wrapper);
  220         this.wrapper = wrapper;
  221         this.filter = filter;
  222         this.servlet = null;
  223         this.type = type;
  224         this.request = request;
  225         this.response = response;
  226         this.exception = exception;
  227   
  228       }
  229   
  230   
  231       /**
  232        * Construct a new InstanceEvent with the specified parameters.  This
  233        * constructor is used for processing servlet lifecycle events.
  234        *
  235        * @param wrapper Wrapper managing this servlet instance
  236        * @param servlet Servlet instance for which this event occurred
  237        * @param type Event type (required)
  238        */
  239       public InstanceEvent(Wrapper wrapper, Servlet servlet, String type) {
  240   
  241         super(wrapper);
  242         this.wrapper = wrapper;
  243         this.filter = null;
  244         this.servlet = servlet;
  245         this.type = type;
  246   
  247       }
  248   
  249   
  250       /**
  251        * Construct a new InstanceEvent with the specified parameters.  This
  252        * constructor is used for processing servlet lifecycle events.
  253        *
  254        * @param wrapper Wrapper managing this servlet instance
  255        * @param servlet Servlet instance for which this event occurred
  256        * @param type Event type (required)
  257        * @param exception Exception that occurred
  258        */
  259       public InstanceEvent(Wrapper wrapper, Servlet servlet, String type,
  260                            Throwable exception) {
  261   
  262         super(wrapper);
  263         this.wrapper = wrapper;
  264         this.filter = null;
  265         this.servlet = servlet;
  266         this.type = type;
  267         this.exception = exception;
  268   
  269       }
  270   
  271   
  272       /**
  273        * Construct a new InstanceEvent with the specified parameters.  This
  274        * constructor is used for processing servlet processing events.
  275        *
  276        * @param wrapper Wrapper managing this servlet instance
  277        * @param servlet Servlet instance for which this event occurred
  278        * @param type Event type (required)
  279        * @param request Servlet request we are processing
  280        * @param response Servlet response we are processing
  281        */
  282       public InstanceEvent(Wrapper wrapper, Servlet servlet, String type,
  283                            ServletRequest request, ServletResponse response) {
  284   
  285         super(wrapper);
  286         this.wrapper = wrapper;
  287         this.filter = null;
  288         this.servlet = servlet;
  289         this.type = type;
  290         this.request = request;
  291         this.response = response;
  292   
  293       }
  294   
  295   
  296       /**
  297        * Construct a new InstanceEvent with the specified parameters.  This
  298        * constructor is used for processing servlet processing events.
  299        *
  300        * @param wrapper Wrapper managing this servlet instance
  301        * @param servlet Servlet instance for which this event occurred
  302        * @param type Event type (required)
  303        * @param request Servlet request we are processing
  304        * @param response Servlet response we are processing
  305        * @param exception Exception that occurred
  306        */
  307       public InstanceEvent(Wrapper wrapper, Servlet servlet, String type,
  308                            ServletRequest request, ServletResponse response,
  309                            Throwable exception) {
  310   
  311         super(wrapper);
  312         this.wrapper = wrapper;
  313         this.filter = null;
  314         this.servlet = servlet;
  315         this.type = type;
  316         this.request = request;
  317         this.response = response;
  318         this.exception = exception;
  319   
  320       }
  321   
  322   
  323       // ----------------------------------------------------- Instance Variables
  324   
  325   
  326       /**
  327        * The exception that was thrown during the processing being reported
  328        * by this event (AFTER_INIT_EVENT, AFTER_SERVICE_EVENT, 
  329        * AFTER_DESTROY_EVENT, AFTER_DISPATCH_EVENT, and AFTER_FILTER_EVENT only).
  330        */
  331       private Throwable exception = null;
  332   
  333   
  334       /**
  335        * The Filter instance for which this event occurred (BEFORE_FILTER_EVENT
  336        * and AFTER_FILTER_EVENT only).
  337        */
  338       private Filter filter = null;
  339   
  340   
  341       /**
  342        * The servlet request being processed (BEFORE_FILTER_EVENT,
  343        * AFTER_FILTER_EVENT, BEFORE_SERVICE_EVENT, and AFTER_SERVICE_EVENT).
  344        */
  345       private ServletRequest request = null;
  346   
  347   
  348       /**
  349        * The servlet response being processed (BEFORE_FILTER_EVENT,
  350        * AFTER_FILTER_EVENT, BEFORE_SERVICE_EVENT, and AFTER_SERVICE_EVENT).
  351        */
  352       private ServletResponse response = null;
  353   
  354   
  355       /**
  356        * The Servlet instance for which this event occurred (not present on
  357        * BEFORE_FILTER_EVENT or AFTER_FILTER_EVENT events).
  358        */
  359       private Servlet servlet = null;
  360   
  361   
  362       /**
  363        * The event type this instance represents.
  364        */
  365       private String type = null;
  366   
  367   
  368       /**
  369        * The Wrapper managing the servlet instance for which this event occurred.
  370        */
  371       private Wrapper wrapper = null;
  372   
  373   
  374       // ------------------------------------------------------------- Properties
  375   
  376   
  377       /**
  378        * Return the exception that occurred during the processing
  379        * that was reported by this event.
  380        */
  381       public Throwable getException() {
  382   
  383           return (this.exception);
  384   
  385       }
  386   
  387   
  388       /**
  389        * Return the filter instance for which this event occurred.
  390        */
  391       public Filter getFilter() {
  392   
  393           return (this.filter);
  394   
  395       }
  396   
  397   
  398       /**
  399        * Return the servlet request for which this event occurred.
  400        */
  401       public ServletRequest getRequest() {
  402   
  403           return (this.request);
  404   
  405       }
  406   
  407   
  408       /**
  409        * Return the servlet response for which this event occurred.
  410        */
  411       public ServletResponse getResponse() {
  412   
  413           return (this.response);
  414   
  415       }
  416   
  417   
  418       /**
  419        * Return the servlet instance for which this event occurred.
  420        */
  421       public Servlet getServlet() {
  422   
  423           return (this.servlet);
  424   
  425       }
  426   
  427   
  428       /**
  429        * Return the event type of this event.
  430        */
  431       public String getType() {
  432   
  433           return (this.type);
  434   
  435       }
  436   
  437   
  438       /**
  439        * Return the Wrapper managing the servlet instance for which this
  440        * event occurred.
  441        */
  442       public Wrapper getWrapper() {
  443   
  444           return (this.wrapper);
  445   
  446       }
  447   
  448   
  449   }

Save This Page
Home » apache-tomcat-6.0.16-src » org.apache » catalina » [javadoc | source]