View Javadoc

1   /*
2    * $Id: HttpProxyFactoryBean.java 21749 2011-04-29 15:20:47Z dirk.olmes $
3    * --------------------------------------------------------------------------------------
4    * Copyright (c) MuleSoft, Inc.  All rights reserved.  http://www.mulesoft.com
5    *
6    * The software in this package is published under the terms of the CPAL v1.0
7    * license, a copy of which has been included with this distribution in the
8    * LICENSE.txt file.
9    */
10  
11  package org.mule.transport.http.config.spring.factories;
12  
13  import org.mule.api.endpoint.EndpointBuilder;
14  import org.mule.api.endpoint.OutboundEndpoint;
15  import org.mule.api.processor.InterceptingMessageProcessor;
16  import org.mule.api.processor.MessageProcessor;
17  import org.mule.api.transformer.Transformer;
18  import org.mule.config.spring.factories.AbstractFlowConstructFactoryBean;
19  import org.mule.construct.builder.AbstractFlowConstructBuilder;
20  import org.mule.module.ws.construct.WSProxy;
21  import org.mule.transport.http.construct.HttpProxy;
22  import org.mule.transport.http.construct.builder.HttpProxyBuilder;
23  
24  public class HttpProxyFactoryBean extends AbstractFlowConstructFactoryBean
25  {
26      final HttpProxyBuilder httpProxyBuilder = new HttpProxyBuilder();
27  
28      public Class<?> getObjectType()
29      {
30          return WSProxy.class;
31      }
32  
33      @Override
34      protected AbstractFlowConstructBuilder<HttpProxyBuilder, HttpProxy> getFlowConstructBuilder()
35      {
36          return httpProxyBuilder;
37      }
38  
39      public void setEndpoint(final OutboundEndpoint endpoint)
40      {
41          httpProxyBuilder.outboundEndpoint(endpoint);
42      }
43  
44      public void setMessageProcessor(final MessageProcessor processor)
45      {
46          httpProxyBuilder.outboundEndpoint((OutboundEndpoint) processor);
47      }
48  
49      public void setInboundAddress(final String inboundAddress)
50      {
51          httpProxyBuilder.inboundAddress(inboundAddress);
52      }
53  
54      public void setInboundEndpoint(final EndpointBuilder inboundEndpointBuilder)
55      {
56          httpProxyBuilder.inboundEndpoint(inboundEndpointBuilder);
57      }
58  
59      public void setOutboundAddress(final String outboundAddress)
60      {
61          httpProxyBuilder.outboundAddress(outboundAddress);
62      }
63  
64      public void setOutboundEndpoint(final EndpointBuilder outboundEndpointBuilder)
65      {
66          httpProxyBuilder.outboundEndpoint(outboundEndpointBuilder);
67      }
68  
69      public void setTransformers(final Transformer... transformers)
70      {
71          httpProxyBuilder.transformers(transformers);
72      }
73  
74      public void setResponseTransformers(final Transformer... responseTransformers)
75      {
76          httpProxyBuilder.responseTransformers(responseTransformers);
77      }
78  
79      public void setCachingMessageProcessor(final InterceptingMessageProcessor cachingMessageProcessor)
80      {
81          httpProxyBuilder.cachingMessageProcessor(cachingMessageProcessor);
82      }
83  }