Class ResteasyCamelServlet

  • All Implemented Interfaces:
    Serializable, javax.servlet.Servlet, javax.servlet.ServletConfig, org.apache.camel.http.common.HttpRegistryProvider, org.jboss.resteasy.plugins.server.servlet.HttpRequestFactory, org.jboss.resteasy.plugins.server.servlet.HttpResponseFactory

    public class ResteasyCamelServlet
    extends org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher
    implements org.apache.camel.http.common.HttpRegistryProvider
    Class extending HttpServletDispatcher from Resteasy and representing servlet used as Camel Consumer. This servlet needs to be used in application if you want to use Camel Resteasy consumer in your camel routes.
    See Also:
    Serialized Form
    • Field Summary

      • Fields inherited from class org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher

        servletContainerDispatcher
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void connect​(org.apache.camel.http.common.HttpConsumer consumer)
      Connect HttpConsumer so it can be used as consumer
      void destroy()
      Destroy ResteasyCamelServlet and delete registry created by it
      void disconnect​(org.apache.camel.http.common.HttpConsumer consumer)
      Disconnect HttpConsumer
      Map<String,​org.apache.camel.http.common.HttpConsumer> getConsumers()  
      protected ResteasyEndpoint getServletEndpoint​(org.apache.camel.http.common.HttpConsumer consumer)
      Get ResteasyEndpoint from HttpConsumer
      String getServletName()  
      void init​(javax.servlet.ServletConfig servletConfig)
      Init method for ResteasyCamelServlet, which registering servlets to HttpRegistry and it is also registering proxy classes to Resteasy dispatcher
      protected org.apache.camel.http.common.HttpConsumer resolve​(javax.servlet.http.HttpServletRequest request)
      Resolve for which HttpConsumer is given request
      protected void service​(javax.servlet.http.HttpServletRequest httpServletRequest, javax.servlet.http.HttpServletResponse httpServletResponse)
      Overridden service method to consume requests and create responses and propagate them to the Camel routes.
      void setServletName​(String servletName)  
      • Methods inherited from class org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher

        createHttpRequest, createResteasyHttpRequest, createResteasyHttpResponse, createServletResponse, getDispatcher, service
      • Methods inherited from class javax.servlet.http.HttpServlet

        doDelete, doGet, doHead, doOptions, doPost, doPut, doTrace, getLastModified, service
      • Methods inherited from class javax.servlet.GenericServlet

        getInitParameter, getInitParameterNames, getServletConfig, getServletContext, getServletInfo, init, log, log
    • Constructor Detail

      • ResteasyCamelServlet

        public ResteasyCamelServlet()
    • Method Detail

      • init

        public void init​(javax.servlet.ServletConfig servletConfig)
                  throws javax.servlet.ServletException
        Init method for ResteasyCamelServlet, which registering servlets to HttpRegistry and it is also registering proxy classes to Resteasy dispatcher
        Specified by:
        init in interface javax.servlet.Servlet
        Overrides:
        init in class org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher
        Parameters:
        servletConfig - configuration of the servlet
        Throws:
        javax.servlet.ServletException - exception thrown from the super method
      • service

        protected void service​(javax.servlet.http.HttpServletRequest httpServletRequest,
                               javax.servlet.http.HttpServletResponse httpServletResponse)
                        throws javax.servlet.ServletException,
                               IOException
        Overridden service method to consume requests and create responses and propagate them to the Camel routes. If proxies options are used then only request is propagated to the Camel route and user must create some response, which will be returned to the client.
        Overrides:
        service in class org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher
        Parameters:
        httpServletRequest - to be processed
        httpServletResponse - to be returned
        Throws:
        javax.servlet.ServletException - if there was problem in Resteasy servlet, which we are extending
        IOException - if there was problem in Resteasy servlet, which we are extending
      • connect

        public void connect​(org.apache.camel.http.common.HttpConsumer consumer)
        Connect HttpConsumer so it can be used as consumer
        Specified by:
        connect in interface org.apache.camel.http.common.HttpRegistryProvider
        Parameters:
        consumer - to be connected
      • destroy

        public void destroy()
        Destroy ResteasyCamelServlet and delete registry created by it
        Specified by:
        destroy in interface javax.servlet.Servlet
        Overrides:
        destroy in class org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher
      • disconnect

        public void disconnect​(org.apache.camel.http.common.HttpConsumer consumer)
        Disconnect HttpConsumer
        Specified by:
        disconnect in interface org.apache.camel.http.common.HttpRegistryProvider
        Parameters:
        consumer - to disconnect
      • getServletEndpoint

        protected ResteasyEndpoint getServletEndpoint​(org.apache.camel.http.common.HttpConsumer consumer)
        Get ResteasyEndpoint from HttpConsumer
        Parameters:
        consumer - from which we need to get the endpoint
        Returns:
        ResteasyEndpoint for given HttpConsumer
      • resolve

        protected org.apache.camel.http.common.HttpConsumer resolve​(javax.servlet.http.HttpServletRequest request)
        Resolve for which HttpConsumer is given request
        Parameters:
        request - to be resolved
        Returns:
        HttpConsumer, which must consume given request
      • getServletName

        public String getServletName()
        Specified by:
        getServletName in interface org.apache.camel.http.common.HttpRegistryProvider
        Specified by:
        getServletName in interface javax.servlet.ServletConfig
        Overrides:
        getServletName in class javax.servlet.GenericServlet
      • setServletName

        public void setServletName​(String servletName)
      • getConsumers

        public Map<String,​org.apache.camel.http.common.HttpConsumer> getConsumers()