Package org.jboss.resteasy.core

Examples of org.jboss.resteasy.core.SynchronousDispatcher


   protected Dispatcher dispatcher;
   protected URI baseUri;

   public InMemoryClientExecutor()
   {
      dispatcher = new SynchronousDispatcher(ResteasyProviderFactory.getInstance());
   }
View Full Code Here


   private Dispatcher createDispatcher()
   {
      ResteasyProviderFactory factory = new ResteasyProviderFactory();
      factory.registerProvider(StringTextStar.class);
      factory.registerProvider(DefaultTextPlain.class);
      return new SynchronousDispatcher(factory);
   }
View Full Code Here

      providerFactory.registerProvider(StringTextStar.class);

      // use @Provider annotation to register a custom ValueInjector!!!
      providerFactory.registerProvider(MyInjectorFactoryImpl.class);

      return new SynchronousDispatcher(providerFactory);
   }
View Full Code Here

   }

   public void render(final Map model, final HttpServletRequest servletRequest,
                      final HttpServletResponse servletResponse) throws Exception
   {
      final SynchronousDispatcher dispatcher = (SynchronousDispatcher)deployment.getDispatcher();
      ResteasyWebHandlerTemplate template = new ResteasyWebHandlerTemplate<Void>(dispatcher.getProviderFactory())
      {
         protected Void handle(ResteasyRequestWrapper requestWrapper,
                               HttpResponse response) throws Exception
         {
            HttpRequest httpRequest = requestWrapper.getHttpRequest();
            dispatcher.pushContextObjects(httpRequest, response);
            try
            {
               try
               {
                  MediaType resolvedContentType = resolveContentType(httpRequest,
                          httpRequest.getHttpHeaders().getMediaType());
                  BuiltResponse responseInvoker = getResponse(model, resolvedContentType);
                  if (responseInvoker != null)
                  {
                     ServerResponseWriter.writeNomapResponse(responseInvoker, httpRequest, response, dispatcher.getProviderFactory());
                  }
               }
               catch (Exception e)
               {
                  dispatcher.writeException(httpRequest, response, e);
               }
               return null;
            }
            finally
            {
               dispatcher.clearContextData();
            }
         }
      };
      ResteasyRequestWrapper requestWrapper = RequestUtil.getRequestWrapper(servletRequest);
      template.handle(requestWrapper, servletResponse);
View Full Code Here

   }

   protected ModelAndView handle(ResteasyRequestWrapper requestWrapper,
                                 HttpResponse response) throws IOException
   {
      SynchronousDispatcher dispatcher = (SynchronousDispatcher)deployment.getDispatcher();
      if (requestWrapper.getErrorCode() != null)
      {
         try
         {
            response.sendError(requestWrapper.getErrorCode(), requestWrapper
                    .getErrorMessage());
         }
         catch (Exception e)
         {
            throw new UnhandledException(e);
         }
         return null;
      }
      if (requestWrapper.getAbortedResponse() != null)
      {
         ServerResponseWriter.writeNomapResponse(((BuiltResponse) requestWrapper.getAbortedResponse()), requestWrapper.getHttpRequest(), response, dispatcher.getProviderFactory());
         return null;
      }
      HttpRequest request = requestWrapper.getHttpRequest();
      if (dispatcher instanceof AsynchronousDispatcher)
      {
View Full Code Here

   protected ModelAndView createModelAndView(
           ResteasyRequestWrapper requestWrapper, HttpResponse response)
   {
      HttpRequest request = requestWrapper.getHttpRequest();
      SynchronousDispatcher dispatcher = (SynchronousDispatcher)deployment.getDispatcher();
      dispatcher.pushContextObjects(request, response);
      try
      {
         BuiltResponse jaxrsResponse = null;
         try
         {
            jaxrsResponse = (BuiltResponse) requestWrapper.getInvoker().invoke(request, response);
         }
         catch (Exception e)
         {
            dispatcher.writeException(request, response, e);
         }

         if (jaxrsResponse == null)
            return null;

         try
         {
            Object entity = jaxrsResponse.getEntity();
            if (entity instanceof ModelAndView)
            {
               ServerResponseWriter.commitHeaders(jaxrsResponse, response);
               return (ModelAndView) entity;
            }
            return createModelAndView(jaxrsResponse);
         }
         catch (Exception e)
         {
            dispatcher.writeException(request, response, e);
            return null;
         }
      }
      finally
      {
         dispatcher.clearContextData();
      }
   }
View Full Code Here

      new ResteasyWebHandlerTemplate<Void>(deployment.getProviderFactory())
      {
         protected Void handle(ResteasyRequestWrapper requestWrapper,
                               HttpResponse response) throws Exception
         {
            SynchronousDispatcher dispatcher = (SynchronousDispatcher)deployment.getDispatcher();
            dispatcher.writeException(requestWrapper.getHttpRequest(), response, failure);
            return null;
         }

      }.handle(new ResteasyRequestWrapper(request), response);
   }
View Full Code Here

         dispatcher = asyncDispatcher;
         asyncDispatcher.start();
      }
      else
      {
         SynchronousDispatcher dis = new SynchronousDispatcher(providerFactory);
         dis.getUnwrappedExceptions().addAll(unwrappedExceptions);
         dispatcher = dis;
      }
      registry = dispatcher.getRegistry();
      if (widerRequestMatching)
      {
View Full Code Here

         dispatcher = asyncDispatcher;
         asyncDispatcher.start();
      }
      else
      {
         dispatcher = new SynchronousDispatcher(providerFactory);
      }
      registry = dispatcher.getRegistry();

      // Interceptor preferences should come before provider registration or builtin.
View Full Code Here

TOP

Related Classes of org.jboss.resteasy.core.SynchronousDispatcher

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.