Class ConfigToken
java.lang.Object
org.axonframework.messaging.eventhandling.processing.streaming.token.store.ConfigToken
- All Implemented Interfaces:
TrackingToken
A special implementation of a Token that is used to store configuration specific to the underlying storage of each
TokenStore instance.
This class merely implements TrackingToken to adhere to certain API requirements. It is not meant to be used
as a means to track progress of event stream processing.
- Since:
- 4.4
- Author:
- Allard Buijze
-
Field Summary
Fields inherited from interface org.axonframework.messaging.eventhandling.processing.streaming.token.TrackingToken
FIRST, LATEST, RESOURCE_KEY -
Constructor Summary
ConstructorsConstructorDescriptionConfigToken(Map<String, String> config) Initialize a ConfigToken instance using the givenconfigproperties. -
Method Summary
Modifier and TypeMethodDescriptionbooleancovers(TrackingToken other) Indicates whether this token covers theothertoken completely.booleanRetrieves the value of the configuration element for the givenkey.Returns the properties contained in this token as a Map.inthashCode()lowerBound(TrackingToken other) Returns a token that represents the lower bound between this and theothertoken.booleansamePositionAs(TrackingToken other) Indicates whetherthistoken is at the exact same spot in the event stream as theothertoken.toString()upperBound(TrackingToken other) Returns the token that represents the furthest possible position in a stream that either this token or the givenotherrepresents.Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface org.axonframework.messaging.eventhandling.processing.streaming.token.TrackingToken
position
-
Constructor Details
-
ConfigToken
Initialize a ConfigToken instance using the givenconfigproperties.- Parameters:
config- the properties to store as part of this ConfigToken
-
-
Method Details
-
getConfig
Returns the properties contained in this token as a Map.- Returns:
- the configuration elements in this token
-
get
Retrieves the value of the configuration element for the givenkey.- Parameters:
key- the key for which to retrieve the configuration element- Returns:
- the configuration element registered under the given key, or
nullif no such key was present.
-
lowerBound
Description copied from interface:TrackingTokenReturns a token that represents the lower bound between this and theothertoken. Effectively, the returned token will cause events not received by both this and theothertoken to be redelivered.- Specified by:
lowerBoundin interfaceTrackingToken- Parameters:
other- The token to compare to this one- Returns:
- The token representing the lower bound of the two
-
upperBound
Description copied from interface:TrackingTokenReturns the token that represents the furthest possible position in a stream that either this token or the givenotherrepresents. Effectively, this means this token will only deliver events that neither this, nor the other have been received.- Specified by:
upperBoundin interfaceTrackingToken- Parameters:
other- The token to compare this token to- Returns:
- a token that represents the furthest position of this or the other stream
-
covers
Description copied from interface:TrackingTokenIndicates whether this token covers theothertoken completely. That means that this token represents a position in a stream that has received all the events that a stream represented by theothertoken has received.Note that this operation is only safe when comparing tokens obtained from events from the same
StreamableEventSource.- Specified by:
coversin interfaceTrackingToken- Parameters:
other- The token to compare to this one- Returns:
trueif this token covers the other, otherwisefalse
-
samePositionAs
Description copied from interface:TrackingTokenIndicates whetherthistoken is at the exact same spot in the event stream as theothertoken.This method is particularly useful when comparing tokens from different points in time, such as during replay detection, where token implementations may naturally differ.
By default, this method checks bidirectional coverage:
this.covers(other) && other.covers(this), which ensures both tokens are at the same position.- Specified by:
samePositionAsin interfaceTrackingToken- Parameters:
other- The token to validate againstthistoken.- Returns:
trueif this token is at the same location as the other token, otherwisefalse. Returnsfalseifotherisnull.- See Also:
-
equals
-
hashCode
public int hashCode() -
toString
-