X-Git-Url: https://juplo.de/gitweb/?p=demos%2Fkafka%2Fdemos-kafka-payment-system-transfer;a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fde%2Fjuplo%2Fkafka%2Fpayment%2Ftransfer%2Fdomain%2FTransfer.java;fp=src%2Fmain%2Fjava%2Fde%2Fjuplo%2Fkafka%2Fpayment%2Ftransfer%2Fdomain%2FTransfer.java;h=82891b7444666ea50b8e5b6206e612618185ce34;hp=5556a1be7c7ba982e9223869413a0a6c2c918730;hb=4467c5240397a47b181106a0ae902ed1b71d0c5d;hpb=540f0c5e8ef2c815d7ff37c7af2e119c448cbb1b diff --git a/src/main/java/de/juplo/kafka/payment/transfer/domain/Transfer.java b/src/main/java/de/juplo/kafka/payment/transfer/domain/Transfer.java index 5556a1b..82891b7 100644 --- a/src/main/java/de/juplo/kafka/payment/transfer/domain/Transfer.java +++ b/src/main/java/de/juplo/kafka/payment/transfer/domain/Transfer.java @@ -5,19 +5,29 @@ import lombok.Builder; import lombok.Data; import lombok.EqualsAndHashCode; +import java.util.LinkedList; +import java.util.List; + @Data @Builder -@EqualsAndHashCode(exclude = "state") +@EqualsAndHashCode(exclude = { "state", "messages" }) public class Transfer { public enum State { - SENT, - FAILED, - PENDING, - APPROVED, - REJECTED + RECEIVED(false), + INVALID(false), + CHECKED(false), + APPROVED(true), + REJECTED(true); + + public final boolean foreign; + + State(boolean foreign) + { + this.foreign = foreign; + } } private final long id; @@ -26,4 +36,19 @@ public class Transfer private final int amount; private State state; + + private final List messages = new LinkedList<>(); + + + public Transfer setState(State state) + { + this.state = state; + return this; + } + + public Transfer addMessage(String message) + { + messages.add(message); + return this; + } }