feature: add event sourcing microservice init
This commit is contained in:
55
src/main/java/com/eventsourcing/es/Event.java
Normal file
55
src/main/java/com/eventsourcing/es/Event.java
Normal 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) + '\'' +
|
||||
'}';
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user