Class ServletRegistration

  • All Implemented Interfaces:
    jakarta.servlet.Registration, jakarta.servlet.Registration.Dynamic, jakarta.servlet.ServletRegistration, jakarta.servlet.ServletRegistration.Dynamic, Comparable<ServletRegistration>

    public class ServletRegistration
    extends Registration
    implements jakarta.servlet.ServletRegistration.Dynamic, Comparable<ServletRegistration>
    Allows customization of a Servlet registered with the WebappContext.
    Since:
    2.2
    • Field Detail

      • servletClass

        protected Class<? extends jakarta.servlet.Servlet> servletClass
      • urlPatterns

        protected final org.glassfish.grizzly.utils.ArraySet<String> urlPatterns
      • servlet

        protected jakarta.servlet.Servlet servlet
      • loadOnStartup

        protected int loadOnStartup
      • isAsyncSupported

        protected boolean isAsyncSupported
    • Constructor Detail

      • ServletRegistration

        protected ServletRegistration​(WebappContext ctx,
                                      String name,
                                      String servletClassName)
        Creates a new ServletRegistration associated with the specified WebappContext.
        Parameters:
        ctx - the owning WebappContext.
        name - the name of the Filter.
        servletClassName - the fully qualified class name of the Servlet implementation.
      • ServletRegistration

        protected ServletRegistration​(WebappContext ctx,
                                      String name,
                                      jakarta.servlet.Servlet servlet)
        Creates a new ServletRegistration associated with the specified WebappContext.
        Parameters:
        ctx - the owning WebappContext.
        name - the name of the Filter.
        servlet - the Servlet instance.
      • ServletRegistration

        protected ServletRegistration​(WebappContext ctx,
                                      String name,
                                      Class<? extends jakarta.servlet.Servlet> servletClass)
        Creates a new ServletRegistration associated with the specified WebappContext.
        Parameters:
        ctx - the owning WebappContext.
        name - the name of the Filter.
        servletClass - the class of the Servlet implementation.
    • Method Detail

      • addMapping

        public Set<String> addMapping​(String... urlPatterns)
        Adds a servlet mapping with the given URL patterns for the Servlet represented by this ServletRegistration.

        If any of the specified URL patterns are already mapped to a different Servlet, no updates will be performed.

        If this method is called multiple times, each successive call adds to the effects of the former.

        Specified by:
        addMapping in interface jakarta.servlet.ServletRegistration
        Parameters:
        urlPatterns - the URL patterns of the servlet mapping
        Returns:
        the (possibly empty) Set of URL patterns that are already mapped to a different Servlet
        Throws:
        IllegalArgumentException - if urlPatterns is null or empty
        IllegalStateException - if the ServletContext from which this ServletRegistration was obtained has already been initialized
      • getMappings

        public Collection<String> getMappings()
        Gets the currently available mappings of the Servlet represented by this ServletRegistration.

        If permitted, any changes to the returned Collection must not affect this ServletRegistration.

        Specified by:
        getMappings in interface jakarta.servlet.ServletRegistration
        Returns:
        a (possibly empty) Collection of the currently available mappings of the Servlet represented by this ServletRegistration
      • setLoadOnStartup

        public void setLoadOnStartup​(int loadOnStartup)
        Sets the loadOnStartup priority on the Servlet represented by this dynamic ServletRegistration.

        A loadOnStartup value of greater than or equal to zero indicates to the container the initialization priority of the Servlet. In this case, the container must instantiate and initialize the Servlet during the initialization phase of the WebappContext, that is, after it has invoked all of the ServletContextListener objects configured for the WebappContext at their ServletContextListener.contextInitialized(jakarta.servlet.ServletContextEvent) method.

        If loadOnStartup is a negative integer, the container is free to instantiate and initialize the Servlet lazily.

        The default value for loadOnStartup is -1.

        A call to this method overrides any previous setting.

        Specified by:
        setLoadOnStartup in interface jakarta.servlet.ServletRegistration.Dynamic
        Parameters:
        loadOnStartup - the initialization priority of the Servlet
        Throws:
        IllegalStateException - if the ServletContext from which this ServletRegistration was obtained has already been initialized
      • getExpectationHandler

        public ExpectationHandler getExpectationHandler()
        Get the ExpectationHandler responsible for processing Expect: header (for example "Expect: 100-Continue").
        Returns:
        the ExpectationHandler responsible for processing Expect: header (for example "Expect: 100-Continue").
      • setServletSecurity

        public Set<String> setServletSecurity​(jakarta.servlet.ServletSecurityElement constraint)
        Specified by:
        setServletSecurity in interface jakarta.servlet.ServletRegistration.Dynamic
      • setMultipartConfig

        public void setMultipartConfig​(jakarta.servlet.MultipartConfigElement multipartConfig)
        Specified by:
        setMultipartConfig in interface jakarta.servlet.ServletRegistration.Dynamic
      • getRunAsRole

        public String getRunAsRole()
        Specified by:
        getRunAsRole in interface jakarta.servlet.ServletRegistration
      • setRunAsRole

        public void setRunAsRole​(String roleName)
        Specified by:
        setRunAsRole in interface jakarta.servlet.ServletRegistration.Dynamic
      • setAsyncSupported

        public void setAsyncSupported​(boolean isAsyncSupported)
        Specified by:
        setAsyncSupported in interface jakarta.servlet.Registration.Dynamic
      • setExpectationHandler

        public void setExpectationHandler​(ExpectationHandler expectationHandler)
        Set the ExpectationHandler responsible for processing Expect: header (for example "Expect: 100-Continue").
        Parameters:
        expectationHandler - the ExpectationHandler responsible for processing Expect: header (for example "Expect: 100-Continue").