Interface ExchangeExtension


public interface ExchangeExtension
  • Method Details

    • getInOrNull

      <T> T getInOrNull(Class<T> type)
      If there is an existing inbound message of the given type then return it as-is, otherwise return null.
      Parameters:
      type - the given type
      Returns:
      the message if exists with the given type, otherwise null.
    • setFromEndpoint

      void setFromEndpoint(Endpoint fromEndpoint)
      Sets the endpoint which originated this message exchange. This method should typically only be called by Endpoint implementations
    • getFromEndpoint

      Endpoint getFromEndpoint()
      Returns the endpoint which originated this message exchange. See Exchange.getFromEndpoint() for details.
    • setFromRouteId

      void setFromRouteId(String fromRouteId)
      Sets the route id which originated this message exchange. This method should typically only be called by the internal framework.
    • setUnitOfWork

      void setUnitOfWork(UnitOfWork unitOfWork)
      Sets the unit of work that this exchange belongs to; which may map to zero, one or more physical transactions
    • isStreamCacheDisabled

      boolean isStreamCacheDisabled()
      Is stream caching disabled on the given exchange
    • setStreamCacheDisabled

      void setStreamCacheDisabled(boolean streamCacheDisabled)
      Used to force disabling stream caching which some components can do in special use-cases.
    • addOnCompletion

      void addOnCompletion(Synchronization onCompletion)
      Adds a Synchronization to be invoked as callback when this exchange is completed.
      Parameters:
      onCompletion - the callback to invoke on completion of this exchange
    • isErrorHandlerHandledSet

      boolean isErrorHandlerHandledSet()
      Whether the error handler handled flag has been set.
    • isErrorHandlerHandled

      boolean isErrorHandlerHandled()
      Whether the exchange has been handled by the error handler. This is used internally by Camel.

      Important: Call isErrorHandlerHandledSet() first before this method.

      See Also:
    • getErrorHandlerHandled

      Boolean getErrorHandlerHandled()
      Whether the exchange has been handled by the error handler. This is used internally by Camel.
    • setErrorHandlerHandled

      void setErrorHandlerHandled(Boolean errorHandlerHandled)
      Used to signal that this exchange has been handled by the error handler. This is used internally by Camel.
    • setInterruptable

      void setInterruptable(boolean interruptable)
      To control whether the exchange can accept being interrupted currently.
    • isInterrupted

      boolean isInterrupted()
      Whether the exchange was interrupted (InterruptException) during routing.
    • setInterrupted

      void setInterrupted(boolean interrupted)
      Used to signal that this exchange was interrupted (InterruptException) during routing.
    • isRedeliveryExhausted

      boolean isRedeliveryExhausted()
      Whether the exchange has exhausted (attempted all) its redeliveries and still failed. This is used internally by Camel.
    • setRedeliveryExhausted

      void setRedeliveryExhausted(boolean redeliveryExhausted)
      Used to signal that this exchange has exhausted (attempted all) its redeliveries and still failed. This is used internally by Camel.
    • containsOnCompletion

      boolean containsOnCompletion(Synchronization onCompletion)
      Checks if the passed Synchronization instance is already contained on this exchange.
      Parameters:
      onCompletion - the callback instance that is being checked for
      Returns:
      true, if callback instance is already contained on this exchange, else false
    • handoverCompletions

      void handoverCompletions(Exchange target)
      Handover all the on completions from this exchange to the target exchange.
    • handoverCompletions

      List<Synchronization> handoverCompletions()
      Handover all the on completions from this exchange
    • setProperties

      void setProperties(Map<String,Object> properties)
      Sets the properties on the exchange
    • setHistoryNodeId

      void setHistoryNodeId(String historyNodeId)
      Sets the history node id (the current processor that will process the exchange)
    • getHistoryNodeId

      String getHistoryNodeId()
      Gets the history node id (the current processor that will process the exchange)
    • getHistoryNodeSource

      String getHistoryNodeSource()
      Gets the history node source:line-number where the node is located in the source code (the current processor that will process the exchange).
    • setHistoryNodeSource

      void setHistoryNodeSource(String historyNodeSource)
      Sets the history node source:line-number where the node is located in the source code (the current processor that will process the exchange).
    • getHistoryNodeLabel

      String getHistoryNodeLabel()
      Gets the history node label (the current processor that will process the exchange)
    • setHistoryNodeLabel

      void setHistoryNodeLabel(String historyNodeLabel)
      Sets the history node label (the current processor that will process the exchange)
    • isNotifyEvent

      boolean isNotifyEvent()
      Whether the exchange is currently used as event notification.
    • setNotifyEvent

      void setNotifyEvent(boolean notifyEvent)
      Sets whether the exchange is currently used as event notification and if so then this should not generate additional events.
    • copyInternalProperties

      void copyInternalProperties(Exchange target)
      To copy the internal properties from this exchange to the target exchange

      This method is only intended for Camel internally.

      Parameters:
      target - the target exchange
    • getSafeCopyProperty

      <T> T getSafeCopyProperty(String key, Class<T> type)
      To get a property that was copied specially (thread safe with deep cloning).
      See Also:
    • setSafeCopyProperty

      void setSafeCopyProperty(String key, SafeCopyProperty value)
      To set a property that must be copied specially (thread safe with deep cloning).
      See Also:
    • copySafeCopyPropertiesTo

      void copySafeCopyPropertiesTo(ExchangeExtension target)
      Copy the safe copy properties from this exchange to the target exchange
    • getInternalProperties

      Map<String,Object> getInternalProperties()
      Gets the internal properties from this exchange. The known set of internal keys is defined in ExchangePropertyKey.

      This method is only intended for Camel internally.

      Returns:
      all the internal properties in a Map
    • setTransacted

      void setTransacted(boolean transacted)
      Sets whether the exchange is routed in a transaction.
    • getDefaultConsumerCallback

      AsyncCallback getDefaultConsumerCallback()
      Callback used by Consumer if the consumer is completing the exchange processing with default behaviour.

      This is only used when pooled exchange is enabled for optimization and reducing object allocations.

    • setDefaultConsumerCallback

      void setDefaultConsumerCallback(AsyncCallback callback)
      Callback used by Consumer if the consumer is completing the exchange processing with default behaviour.

      This is only used when pooled exchange is enabled for optimization and reducing object allocations.

    • isFailureHandled

      boolean isFailureHandled()
      Returns whether the exchange has been failure handed
      Returns:
      true if failure handled or false otherwise
    • setFailureHandled

      void setFailureHandled(boolean failureHandled)
      Sets whether the exchange has been failure handled
      Parameters:
      failureHandled - true if failure handled or false otherwise
    • createCopyWithProperties

      Exchange createCopyWithProperties(CamelContext context)
      Create a new exchange copied from this, with the context set to the given context
      Parameters:
      context - the context associated with the new exchange
      Returns:
      A new Exchange instance