Interface Wrapper

  • All Superinterfaces:
    Container
    All Known Implementing Classes:
    StandardWrapper

    public interface Wrapper
    extends Container
    A Wrapper is a Container that represents an individual servlet definition from the deployment descriptor of the web application. It provides a convenient mechanism to use Interceptors that see every single request to the servlet represented by this definition.

    Implementations of Wrapper are responsible for managing the servlet life cycle for their underlying servlet class, including calling init() and destroy() at appropriate times, as well as respecting the existence of the SingleThreadModel declaration on the servlet class itself.

    The parent Container attached to a Wrapper will generally be an implementation of Context, representing the servlet context (and therefore the web application) within which this servlet executes.

    Child Containers are not allowed on Wrapper implementations, so the addChild() method should throw an IllegalArgumentException.

    Version:
    $Revision: 1.3.6.1 $ $Date: 2008/04/17 18:37:01 $
    Author:
    Craig R. McClanahan
    • Method Detail

      • getAvailable

        long getAvailable()
        Return the available date/time for this servlet, in milliseconds since the epoch. If this date/time is in the future, any request for this servlet will return an SC_SERVICE_UNAVAILABLE error. If it is zero, the servlet is currently available. A value equal to Long.MAX_VALUE is considered to mean that unavailability is permanent.
      • setAvailable

        void setAvailable​(long available)
        Set the available date/time for this servlet, in milliseconds since the epoch. If this date/time is in the future, any request for this servlet will return an SC_SERVICE_UNAVAILABLE error. A value equal to Long.MAX_VALUE is considered to mean that unavailability is permanent.
        Parameters:
        available - The new available date/time
      • getJspFile

        String getJspFile()
        Return the context-relative URI of the JSP file for this servlet.
      • setJspFile

        void setJspFile​(String jspFile)
        Set the context-relative URI of the JSP file for this servlet.
        Parameters:
        jspFile - JSP file URI
      • getLoadOnStartup

        int getLoadOnStartup()
        Return the load-on-startup order value (negative value means load on first call).
      • setLoadOnStartup

        void setLoadOnStartup​(int value)
        Set the load-on-startup order value (negative value means load on first call).
        Parameters:
        value - New load-on-startup value
      • getRunAs

        String getRunAs()
        Return the run-as identity for this servlet.
      • setRunAs

        void setRunAs​(String runAs)
        Set the run-as identity for this servlet.
        Parameters:
        runAs - New run-as identity value
      • getServletClassName

        String getServletClassName()
        Return the fully qualified servlet class name for this servlet.
      • getServletName

        String getServletName()
        Gets the name of the wrapped servler.
      • setServletClassName

        void setServletClassName​(String className)
        Set the fully qualified servlet class name for this servlet.
        Parameters:
        className - Servlet class name
      • setServletClass

        void setServletClass​(Class<? extends jakarta.servlet.Servlet> servletClass)
        Sets the class object from which this servlet will be instantiated.
        Parameters:
        servletClass - the class object from which the servlet will be instantiated
      • getServletMethods

        String[] getServletMethods()
                            throws jakarta.servlet.ServletException
        Gets the names of the methods supported by the underlying servlet. This is the same set of methods included in the Allow response header in response to an OPTIONS request method processed by the underlying servlet.
        Returns:
        Array of names of the methods supported by the underlying servlet
        Throws:
        jakarta.servlet.ServletException
      • isUnavailable

        boolean isUnavailable()
        Is this servlet currently unavailable?
      • setDescription

        void setDescription​(String description)
        Sets the description of this servlet.
      • getDescription

        String getDescription()
        Gets the description of this servlet.
      • setMultipartLocation

        void setMultipartLocation​(String location)
        Sets the multipart location
      • getMultipartLocation

        String getMultipartLocation()
        Gets the multipart location
      • setMultipartMaxFileSize

        void setMultipartMaxFileSize​(long maxFileSize)
        Sets the multipart max-file-size
      • getMultipartMaxFileSize

        long getMultipartMaxFileSize()
        Gets the multipart max-file-size
      • setMultipartMaxRequestSize

        void setMultipartMaxRequestSize​(long maxRequestSize)
        Sets the multipart max-request-size
      • getMultipartMaxRequestSize

        long getMultipartMaxRequestSize()
        Gets the multipart max-request-Size
      • setMultipartFileSizeThreshold

        void setMultipartFileSizeThreshold​(int fileSizeThreshold)
        Sets the multipart file-size-threshold
      • getMultipartFileSizeThreshold

        int getMultipartFileSizeThreshold()
        Gets the multipart file-size-threshol
      • addInitParameter

        void addInitParameter​(String name,
                              String value)
        Add a new servlet initialization parameter for this servlet.
        Parameters:
        name - Name of this initialization parameter to add
        value - Value of this initialization parameter to add
      • addInstanceListener

        void addInstanceListener​(InstanceListener listener)
        Add a new listener interested in InstanceEvents.
        Parameters:
        listener - The new listener
      • addMapping

        void addMapping​(String mapping)
        Add a mapping associated with the Wrapper.
        Parameters:
        mapping - The new wrapper mapping
      • addSecurityReference

        void addSecurityReference​(String name,
                                  String link)
        Add a new security role reference record to the set of records for this servlet.
        Parameters:
        name - Role name used within this servlet
        link - Role name used within the web application
      • allocate

        jakarta.servlet.Servlet allocate()
                                  throws jakarta.servlet.ServletException
        Allocate an initialized instance of this Servlet that is ready to have its service() method called. If the servlet class does not implement SingleThreadModel, the (only) initialized instance may be returned immediately. If the servlet class implements SingleThreadModel, the Wrapper implementation must ensure that this instance is not allocated again until it is deallocated by a call to deallocate().
        Throws:
        jakarta.servlet.ServletException - if the servlet init() method threw an exception
        jakarta.servlet.ServletException - if a loading error occurs
      • deallocate

        void deallocate​(jakarta.servlet.Servlet servlet)
                 throws jakarta.servlet.ServletException
        Return this previously allocated servlet to the pool of available instances. If this servlet class does not implement SingleThreadModel, no action is actually required.
        Parameters:
        servlet - The servlet to be returned
        Throws:
        jakarta.servlet.ServletException - if a deallocation error occurs
      • findInitParameter

        String findInitParameter​(String name)
        Return the value for the specified initialization parameter name, if any; otherwise return null.
        Parameters:
        name - Name of the requested initialization parameter
      • findInitParameters

        String[] findInitParameters()
        Return the names of all defined initialization parameters for this servlet.
      • findMappings

        String[] findMappings()
        Return the mappings associated with this wrapper.
      • findSecurityReference

        String findSecurityReference​(String name)
        Return the security role link for the specified security role reference name, if any; otherwise return null.
        Parameters:
        name - Security role reference used within this servlet
      • findSecurityReferences

        String[] findSecurityReferences()
        Return the set of security role reference names associated with this servlet, if any; otherwise return a zero-length array.
      • load

        void load()
           throws jakarta.servlet.ServletException
        Load and initialize an instance of this servlet, if there is not already at least one initialized instance. This can be used, for example, to load servlets that are marked in the deployment descriptor to be loaded at server startup time.
        Throws:
        jakarta.servlet.ServletException - if the servlet init() method threw an exception
        jakarta.servlet.ServletException - if some other loading problem occurs
      • removeInitParameter

        void removeInitParameter​(String name)
        Remove the specified initialization parameter from this servlet.
        Parameters:
        name - Name of the initialization parameter to remove
      • removeInstanceListener

        void removeInstanceListener​(InstanceListener listener)
        Remove a listener no longer interested in InstanceEvents.
        Parameters:
        listener - The listener to remove
      • removeMapping

        void removeMapping​(String mapping)
        Remove a mapping associated with the wrapper.
        Parameters:
        mapping - The pattern to remove
      • removeSecurityReference

        void removeSecurityReference​(String name)
        Remove any security role reference for the specified role name.
        Parameters:
        name - Security role used within this servlet to be removed
      • unavailable

        void unavailable​(jakarta.servlet.UnavailableException unavailable)
        Process an UnavailableException, marking this servlet as unavailable for the specified amount of time.
        Parameters:
        unavailable - The exception that occurred, or null to mark this servlet as permanently unavailable
      • unload

        void unload()
             throws jakarta.servlet.ServletException
        Unload all initialized instances of this servlet, after calling the destroy() method for each instance. This can be used, for example, prior to shutting down the entire servlet engine, or prior to reloading all of the classes from the Loader associated with our Loader's repository.
        Throws:
        jakarta.servlet.ServletException - if an unload error occurs
      • setIsAsyncSupported

        void setIsAsyncSupported​(boolean isAsyncSupported)
        Configures the wrapped servlet as either supporting or not supporting asynchronous operations.
        Parameters:
        isAsyncSupported - true if the wrapped servlet supports asynchronous operations, false otherwise
      • isAsyncSupported

        boolean isAsyncSupported()
        Checks if the wrapped servlet has been annotated or flagged in the deployment descriptor as being able to support asynchronous operations.
        Returns:
        true if the wrapped servlet supports async operations, and false otherwise