Package org.apache.camel.spi
Interface IdempotentRepository
- All Superinterfaces:
AutoCloseable
,Service
Access to a repository of Message IDs to implement the
Idempotent Consumer pattern.
The add and contains methods is operating according to the
Set
contract.
The repository supports eager (default) and non-eager mode.
- eager: calls add and confirm if complete, or remove if failed
- non-eager: calls contains and add if complete, or remove if failed
-
Method Summary
Modifier and TypeMethodDescriptionboolean
Adds the key to the repository.default boolean
Adds the key to the repository.void
clear()
Clear the repository.boolean
Confirms the key, after the exchange has been processed successfully.default boolean
Confirms the key, after the exchange has been processed successfully.boolean
Returns true if this repository contains the specified element.default boolean
Returns true if this repository contains the specified element.boolean
Removes the key from the repository.default boolean
Removes the key from the repository.
-
Method Details
-
add
Adds the key to the repository. Important: Read the class javadoc about eager vs non-eager mode.- Parameters:
key
- the key of the message for duplicate test- Returns:
- true if this repository did not already contain the specified element
-
contains
Returns true if this repository contains the specified element. Important: Read the class javadoc about eager vs non-eager mode.- Parameters:
key
- the key of the message- Returns:
- true if this repository contains the specified element
-
remove
Removes the key from the repository. Is usually invoked if the exchange failed. Important: Read the class javadoc about eager vs non-eager mode.- Parameters:
key
- the key of the message for duplicate test- Returns:
- true if the key was removed
-
confirm
Confirms the key, after the exchange has been processed successfully. Important: Read the class javadoc about eager vs non-eager mode.- Parameters:
key
- the key of the message for duplicate test- Returns:
- true if the key was confirmed
-
clear
void clear()Clear the repository. Important: Read the class javadoc about eager vs non-eager mode. -
add
Adds the key to the repository. Important: Read the class javadoc about eager vs non-eager mode.- Parameters:
key
- the key of the message for duplicate test- Returns:
- true if this repository did not already contain the specified element
-
contains
Returns true if this repository contains the specified element. Important: Read the class javadoc about eager vs non-eager mode.- Parameters:
key
- the key of the message- Returns:
- true if this repository contains the specified element
-
remove
Removes the key from the repository. Is usually invoked if the exchange failed. Important: Read the class javadoc about eager vs non-eager mode.- Parameters:
key
- the key of the message for duplicate test- Returns:
- true if the key was removed
-
confirm
Confirms the key, after the exchange has been processed successfully. Important: Read the class javadoc about eager vs non-eager mode.- Parameters:
key
- the key of the message for duplicate test- Returns:
- true if the key was confirmed
-