/** * Concatenate two DomainEventStreams. In the resulting stream events from stream {@code a} will be followed by * events from stream {@code b}. * * @param a The first stream * @param b The second stream that will follow the first stream * @return A concatenation of stream a and b */ static DomainEventStream concat(DomainEventStream a, DomainEventStream b) { Objects.requireNonNull(a); Objects.requireNonNull(b); return new ConcatenatingDomainEventStream(a, b); }
@Override public DomainEventMessage<?> peek() { if (!hasNext()) { return null; } return streams.peekFirst().peek(); }
@Override public DomainEventMessage<?> next() { if (!hasNext()) { return null; } DomainEventMessage<?> next = streams.peekFirst().next(); lastSequenceNumber = next.getSequenceNumber(); return next; }
/** * Concatenate two DomainEventStreams. In the resulting stream events from stream {@code a} will be followed by * events from stream {@code b}. * * @param a The first stream * @param b The second stream that will follow the first stream * @return A concatenation of stream a and b */ static DomainEventStream concat(DomainEventStream a, DomainEventStream b) { Objects.requireNonNull(a); Objects.requireNonNull(b); return new ConcatenatingDomainEventStream(a, b); }
@Override public DomainEventMessage<?> peek() { if (!hasNext()) { return null; } return streams.peekFirst().peek(); }
/** * Concatenate two DomainEventStreams. In the resulting stream events from stream {@code a} will be followed by * events from stream {@code b}. * * @param a The first stream * @param b The second stream that will follow the first stream * @return A concatenation of stream a and b */ static DomainEventStream concat(DomainEventStream a, DomainEventStream b) { Objects.requireNonNull(a); Objects.requireNonNull(b); return new ConcatenatingDomainEventStream(a, b); }
@Override public DomainEventMessage<?> peek() { if (!hasNext()) { return null; } return streams.peekFirst().peek(); }
@Override public DomainEventMessage<?> next() { if (!hasNext()) { return null; } DomainEventMessage<?> next = streams.peekFirst().next(); lastSequenceNumber = next.getSequenceNumber(); return next; }
@Override public DomainEventMessage<?> next() { if (!hasNext()) { return null; } DomainEventMessage<?> next = streams.peekFirst().next(); lastSequenceNumber = next.getSequenceNumber(); return next; }