/** * Convert an {@link EventMessage} to a {@link TrackedEventMessage} using the given {@code trackingToken}. If the * event is a {@link DomainEventMessage} the message will be converted to a {@link * GenericTrackedDomainEventMessage}, otherwise a {@link GenericTrackedEventMessage} is returned. * * @param eventMessage the message to convert * @param trackingToken the tracking token to use for the resulting message * @param <T> the payload type of the event * @return the message converted to a tracked event messge */ public static <T> TrackedEventMessage<T> asTrackedEventMessage(EventMessage<T> eventMessage, TrackingToken trackingToken) { if (eventMessage instanceof DomainEventMessage<?>) { return new GenericTrackedDomainEventMessage<>(trackingToken, (DomainEventMessage<T>) eventMessage); } return new GenericTrackedEventMessage<>(trackingToken, eventMessage); }
@SuppressWarnings("unchecked") public <T> TrackedEventMessage<T> alterToken(TrackedEventMessage<T> message) { if (lastToken == null) { return message; } if (message instanceof DomainEventMessage) { return new GenericTrackedDomainEventMessage<>(lastToken.advancedTo(message.trackingToken()), (DomainEventMessage<T>) message); } else { return new GenericTrackedEventMessage<>(lastToken.advancedTo(message.trackingToken()), message); } } }
@Override public GenericTrackedDomainEventMessage<T> withMetaData(Map<String, ?> metaData) { return new GenericTrackedDomainEventMessage<>(trackingToken, getType(), getAggregateIdentifier(), getSequenceNumber(), getDelegate().withMetaData(metaData), getTimestamp()); }
@Override public GenericTrackedDomainEventMessage<T> andMetaData(Map<String, ?> metaData) { return new GenericTrackedDomainEventMessage<>(trackingToken, getType(), getAggregateIdentifier(), getSequenceNumber(), getDelegate().andMetaData(metaData), getTimestamp()); }
ir.getMetaData()); if (ir.getTrackingToken().isPresent()) { return new GenericTrackedDomainEventMessage<>(ir.getTrackingToken().get(), ir.getAggregateType().get(), ir.getAggregateIdentifier().get(), ir.getSequenceNumber().get(), serializedMessage,
ir.getMetaData()); if (ir.getAggregateIdentifier().isPresent()) { return new GenericTrackedDomainEventMessage<>(ir.getTrackingToken().get(), ir.getAggregateType().orElse(null), ir.getAggregateIdentifier().get(),
/** * Convert an {@link EventMessage} to a {@link TrackedEventMessage} using the given {@code trackingToken}. If the * event is a {@link DomainEventMessage} the message will be converted to a {@link * GenericTrackedDomainEventMessage}, otherwise a {@link GenericTrackedEventMessage} is returned. * * @param eventMessage the message to convert * @param trackingToken the tracking token to use for the resulting message * @param <T> the payload type of the event * @return the message converted to a tracked event messge */ public static <T> TrackedEventMessage<T> asTrackedEventMessage(EventMessage<T> eventMessage, TrackingToken trackingToken) { if (eventMessage instanceof DomainEventMessage<?>) { return new GenericTrackedDomainEventMessage<>(trackingToken, (DomainEventMessage<T>) eventMessage); } return new GenericTrackedEventMessage<>(trackingToken, eventMessage); }
@SuppressWarnings("unchecked") public <T> TrackedEventMessage<T> alterToken(TrackedEventMessage<T> message) { if (lastToken == null) { return message; } if (message instanceof DomainEventMessage) { return new GenericTrackedDomainEventMessage<>(lastToken.advancedTo(message.trackingToken()), (DomainEventMessage<T>) message); } else { return new GenericTrackedEventMessage<>(lastToken.advancedTo(message.trackingToken()), message); } } }
@Override public GenericTrackedDomainEventMessage<T> andMetaData(Map<String, ?> metaData) { return new GenericTrackedDomainEventMessage<>(trackingToken, getType(), getAggregateIdentifier(), getSequenceNumber(), getDelegate().andMetaData(metaData), getTimestamp()); }
@Override public GenericTrackedDomainEventMessage<T> withMetaData(Map<String, ?> metaData) { return new GenericTrackedDomainEventMessage<>(trackingToken, getType(), getAggregateIdentifier(), getSequenceNumber(), getDelegate().withMetaData(metaData), getTimestamp()); }
ir.getMetaData()); if (ir.getTrackingToken().isPresent()) { return new GenericTrackedDomainEventMessage<>(ir.getTrackingToken().get(), ir.getAggregateType().get(), ir.getAggregateIdentifier().get(), ir.getSequenceNumber().get(), serializedMessage,
ir.getMetaData()); if (ir.getAggregateIdentifier().isPresent()) { return new GenericTrackedDomainEventMessage<>(ir.getTrackingToken().get(), ir.getAggregateType().orElse(null), ir.getAggregateIdentifier().get(),