Class ClaimCheckDefinition

  • All Implemented Interfaces:
    Block, org.apache.camel.NamedNode, org.apache.camel.spi.HasId, org.apache.camel.spi.IdAware

    @Metadata(label="eip,routing")
    public class ClaimCheckDefinition
    extends NoOutputDefinition<ClaimCheckDefinition>
    The Claim Check EIP allows you to replace message content with a claim check (a unique key), which can be used to retrieve the message content at a later time.
    • Constructor Detail

      • ClaimCheckDefinition

        public ClaimCheckDefinition()
    • Method Detail

      • getShortName

        public String getShortName()
      • operation

        public ClaimCheckDefinition operation​(ClaimCheckOperation operation)
        The claim check operation to use. The following operations is supported:
        • Get
        • - Gets (does not remove) the claim check by the given key.
        • GetAndRemove
        • - Gets and remove the claim check by the given key.
        • Set
        • - Sets a new (will override if key already exists) claim check with the given key.
        • Push
        • - Sets a new claim check on the stack (does not use key).
        • Pop
        • - Gets the latest claim check from the stack (does not use key).
      • operation

        public ClaimCheckDefinition operation​(String operation)
        The claim check operation to use. The following operations is supported:
        • Get
        • - Gets (does not remove) the claim check by the given key.
        • GetAndRemove
        • - Gets and remove the claim check by the given key.
        • Set
        • - Sets a new (will override if key already exists) claim check with the given key.
        • Push
        • - Sets a new claim check on the stack (does not use key).
        • Pop
        • - Gets the latest claim check from the stack (does not use key).
      • key

        public ClaimCheckDefinition key​(String key)
        To use a specific key for claim check id (for dynamic keys use simple language syntax as the key).
      • filter

        public ClaimCheckDefinition filter​(String filter)
        Specified a filter to control what data gets merging data back from the claim check repository. The following syntax is supported:
        • body
        • - to aggregate the message body
        • attachments
        • - to aggregate all the message attachments
        • headers
        • - to aggregate all the message headers
        • header:pattern
        • - to aggregate all the message headers that matches the pattern.
        The pattern uses the following rules are applied in this order:
        • exact match, returns true
        • wildcard match (pattern ends with a * and the name starts with the pattern), returns true
        • regular expression match, returns true
        • otherwise returns false

        You can specify multiple rules separated by comma. For example to include the message body and all headers starting with foo body,header:foo*. The syntax supports the following prefixes which can be used to specify include,exclude, or remove

        • +
        • - to include (which is the default mode)
        • -
        • - to exclude (exclude takes precedence over include)
        • --
        • - to remove (remove takes precedence)
        For example to exclude a header name foo, and remove all headers starting with bar -header:foo,--headers:bar* Note you cannot have both include and exclude header:pattern at the same time.
      • aggregationStrategy

        public ClaimCheckDefinition aggregationStrategy​(org.apache.camel.AggregationStrategy aggregationStrategy)
        To use a custom AggregationStrategy instead of the default implementation. Notice you cannot use both custom aggregation strategy and configure data at the same time.
      • aggregationStrategy

        public ClaimCheckDefinition aggregationStrategy​(Supplier<org.apache.camel.AggregationStrategy> aggregationStrategy)
        To use a custom AggregationStrategy instead of the default implementation. Notice you cannot use both custom aggregation strategy and configure data at the same time.
      • aggregationStrategyRef

        public ClaimCheckDefinition aggregationStrategyRef​(String aggregationStrategyRef)
        To use a custom AggregationStrategy instead of the default implementation. Notice you cannot use both custom aggregation strategy and configure data at the same time.

        The value can either refer to a bean to lookup, or to lookup a singleton bean by its type, or to create a new bean:

        • Lookup bean - This is the default behavior to lookup an existing bean by the bean id (value)
        • reference by type - Values can refer to singleton beans by their type in the registry by prefixing with #type: syntax, eg #type:com.foo.MyClassType
        • reference new class - Values can refer to creating new beans by their class name by prefixing with #class, eg #class:com.foo.MyClassType. The class is created using a default no-arg constructor, however if you need to create the instance via a factory method then you specify the method as shown: #class:com.foo.MyClassType#myFactoryMethod. And if the factory method requires parameters they can be specified as follows: #class:com.foo.MyClassType#myFactoryMethod('Hello World', 5, true). Or if you need to create the instance via constructor parameters then you can specify the parameters as shown: #class:com.foo.MyClass('Hello World', 5, true)
        • .
      • aggregationStrategyMethodName

        public ClaimCheckDefinition aggregationStrategyMethodName​(String aggregationStrategyMethodName)
        This option can be used to explicit declare the method name to use, when using POJOs as the AggregationStrategy.
      • getKey

        public String getKey()
      • setKey

        public void setKey​(String key)
      • getOperation

        public String getOperation()
      • setOperation

        public void setOperation​(String operation)
      • getFilter

        public String getFilter()
      • setFilter

        public void setFilter​(String filter)
      • getAggregationStrategyRef

        public String getAggregationStrategyRef()
      • setAggregationStrategyRef

        public void setAggregationStrategyRef​(String aggregationStrategyRef)
      • getAggregationStrategyMethodName

        public String getAggregationStrategyMethodName()
      • setAggregationStrategyMethodName

        public void setAggregationStrategyMethodName​(String aggregationStrategyMethodName)
      • getAggregationStrategy

        public org.apache.camel.AggregationStrategy getAggregationStrategy()
      • setAggregationStrategy

        public void setAggregationStrategy​(org.apache.camel.AggregationStrategy aggregationStrategy)