protected EventMessage<?>[] createEvents(String aggregateId, int startSequenceNumber, int count) { return IntStream.range(startSequenceNumber, startSequenceNumber + count) .mapToObj(sequenceNumber -> createEvent(aggregateId, sequenceNumber)) .peek(event -> serializer().ifPresent(serializer -> { event.serializePayload(serializer, byte[].class); event.serializeMetaData(serializer, byte[].class); })).toArray(EventMessage[]::new); }
Serializer serializer) throws SQLException { SerializedObject<?> payload = snapshot.serializePayload(serializer, dataType); SerializedObject<?> metaData = snapshot.serializeMetaData(serializer, dataType); final String sql = "INSERT INTO " + schema.snapshotTable() + " (" + String.join(", ", schema.eventIdentifierColumn(), schema.aggregateIdentifierColumn(),
DomainEventMessage<?> event = asDomainEventMessage(eventMessage); SerializedObject<?> payload = event.serializePayload(serializer, dataType); SerializedObject<?> metaData = event.serializeMetaData(serializer, dataType); preparedStatement.setString(1, event.getIdentifier()); preparedStatement.setString(2, event.getAggregateIdentifier());
DomainEventMessage<?> event = asDomainEventMessage(eventMessage); SerializedObject<?> payload = event.serializePayload(serializer, dataType); SerializedObject<?> metaData = event.serializeMetaData(serializer, dataType); preparedStatement.setString(1, event.getIdentifier()); preparedStatement.setString(2, event.getAggregateIdentifier());
Serializer serializer) throws SQLException { SerializedObject<?> payload = snapshot.serializePayload(serializer, dataType); SerializedObject<?> metaData = snapshot.serializeMetaData(serializer, dataType); final String sql = "INSERT INTO " + schema.snapshotTable() + " (" + String.join(", ", schema.eventIdentifierColumn(), schema.aggregateIdentifierColumn(),
/** * Constructor used to create a new event entry to store in Mongo. * * @param event The actual DomainEvent to store * @param serializer Serializer to use for the event to store */ public EventEntry(DomainEventMessage<?> event, Serializer serializer) { aggregateIdentifier = event.getAggregateIdentifier(); aggregateType = event.getType(); sequenceNumber = event.getSequenceNumber(); eventIdentifier = event.getIdentifier(); Class<?> serializationTarget = String.class; if (serializer.canSerializeTo(DBObject.class)) { serializationTarget = DBObject.class; } SerializedObject<?> serializedPayloadObject = event.serializePayload(serializer, serializationTarget); SerializedObject<?> serializedMetaDataObject = event.serializeMetaData(serializer, serializationTarget); serializedPayload = serializedPayloadObject.getData(); payloadType = serializedPayloadObject.getType().getName(); payloadRevision = serializedPayloadObject.getType().getRevision(); serializedMetaData = serializedMetaDataObject.getData(); timestamp = formatInstant(event.getTimestamp()); }