feature: add event sourcing microservice init

This commit is contained in:
Alexander
2022-04-13 12:16:23 +03:00
commit 730bfdbb8c
38 changed files with 1007 additions and 0 deletions

View File

@@ -0,0 +1,55 @@
package com.eventsourcing.es;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.time.LocalDateTime;
import java.time.ZonedDateTime;
import java.util.UUID;
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class Event {
public Event(String eventType, String aggregateType) {
this.id = UUID.randomUUID();
this.eventType = eventType;
this.aggregateType = aggregateType;
this.timeStamp = LocalDateTime.now();
}
private UUID id;
private String aggregateId;
private String eventType;
private String aggregateType;
private long version;
private byte[] data;
private byte[] metaData;
// @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm")
private LocalDateTime timeStamp;
@Override
public String toString() {
return "Event{" +
"id=" + id +
", aggregateId='" + aggregateId + '\'' +
", eventType='" + eventType + '\'' +
", aggregateType='" + aggregateType + '\'' +
", version=" + version + '\'' +
", timeStamp=" + timeStamp + '\'' +
", data=" + new String(data) + '\'' +
'}';
}
}