org.apache.camel.impl
Class ProducerCache

java.lang.Object
  extended by org.apache.camel.impl.ServiceSupport
      extended by org.apache.camel.impl.ProducerCache
All Implemented Interfaces:
Service

public class ProducerCache
extends ServiceSupport

Cache containing created Producer.

Version:
$Revision: 826967 $

Constructor Summary
ProducerCache(CamelContext context)
           
ProducerCache(CamelContext context, ServicePool<Endpoint,Producer> producerServicePool)
           
ProducerCache(CamelContext context, ServicePool<Endpoint,Producer> producerServicePool, Map<String,Producer> cache)
           
 
Method Summary
protected  Producer doGetProducer(Endpoint endpoint, boolean pooled)
           
<T> T
doInProducer(Endpoint endpoint, Exchange exchange, ExchangePattern pattern, ProducerCallback<T> callback)
          Sends an exchange to an endpoint using a supplied callback
protected  void doStart()
           
protected  void doStop()
           
 Producer getProducer(Endpoint endpoint)
           
 void send(Endpoint endpoint, Exchange exchange)
          Sends the exchange to the given endpoint
 Exchange send(Endpoint endpoint, ExchangePattern pattern, Processor processor)
          Sends an exchange to an endpoint using a supplied Processor to populate the exchange
 Exchange send(Endpoint endpoint, Processor processor)
          Sends an exchange to an endpoint using a supplied Processor to populate the exchange
protected  Exchange sendExchange(Endpoint endpoint, ExchangePattern pattern, Processor processor, Exchange exchange)
           
 
Methods inherited from class org.apache.camel.impl.ServiceSupport
addChildService, getStatus, getVersion, isRunAllowed, isStarted, isStarting, isStopped, isStopping, removeChildService, start, stop
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ProducerCache

public ProducerCache(CamelContext context)

ProducerCache

public ProducerCache(CamelContext context,
                     ServicePool<Endpoint,Producer> producerServicePool)

ProducerCache

public ProducerCache(CamelContext context,
                     ServicePool<Endpoint,Producer> producerServicePool,
                     Map<String,Producer> cache)
Method Detail

getProducer

public Producer getProducer(Endpoint endpoint)

send

public void send(Endpoint endpoint,
                 Exchange exchange)
Sends the exchange to the given endpoint

Parameters:
endpoint - the endpoint to send the exchange to
exchange - the exchange to send

send

public Exchange send(Endpoint endpoint,
                     Processor processor)
Sends an exchange to an endpoint using a supplied Processor to populate the exchange

Parameters:
endpoint - the endpoint to send the exchange to
processor - the transformer used to populate the new exchange
Returns:
the exchange

send

public Exchange send(Endpoint endpoint,
                     ExchangePattern pattern,
                     Processor processor)
Sends an exchange to an endpoint using a supplied Processor to populate the exchange

Parameters:
endpoint - the endpoint to send the exchange to
pattern - the message ExchangePattern such as ExchangePattern.InOnly or ExchangePattern.InOut
processor - the transformer used to populate the new exchange
Returns:
the exchange

doInProducer

public <T> T doInProducer(Endpoint endpoint,
                          Exchange exchange,
                          ExchangePattern pattern,
                          ProducerCallback<T> callback)
               throws Exception
Sends an exchange to an endpoint using a supplied callback

Parameters:
endpoint - the endpoint to send the exchange to
exchange - the exchange, can be null if so then create a new exchange from the producer
pattern - the exchange pattern, can be null
Returns:
the response from the callback
Throws:
Exception - if an internal processing error has occurred.

sendExchange

protected Exchange sendExchange(Endpoint endpoint,
                                ExchangePattern pattern,
                                Processor processor,
                                Exchange exchange)
                         throws Exception
Throws:
Exception

doGetProducer

protected Producer doGetProducer(Endpoint endpoint,
                                 boolean pooled)

doStop

protected void doStop()
               throws Exception
Specified by:
doStop in class ServiceSupport
Throws:
Exception

doStart

protected void doStart()
                throws Exception
Specified by:
doStart in class ServiceSupport
Throws:
Exception


Copyright © 2007-2009 The Apache Software Foundation. All Rights Reserved.