static LinkedList<EventData> toEventDataCollection(final Collection<Message> messages, final PassByRef<MessageWrapper> lastMessageRef) { if (messages == null) { return null; } LinkedList<EventData> events = new LinkedList<>(); for (Message message : messages) { EventData eventData = new EventDataImpl(message); events.add(eventData); if (lastMessageRef != null) { lastMessageRef.set(new MessageWrapper(message, EventPosition.fromSequenceNumber(eventData.getSystemProperties().getSequenceNumber(), true))); } } return events; }