Merge pull request #53 from dartpopikyardo/private-event-sourcing-examples-38

Resolve issues with PR
This commit is contained in:
Chris Richardson
2016-09-28 10:31:46 -07:00
committed by GitHub
15 changed files with 30 additions and 35 deletions

View File

@@ -40,7 +40,7 @@ public class AccountInfoUpdateService {
.set("description", description) .set("description", description)
.set("balance", toIntegerRepr(initialBalance)) .set("balance", toIntegerRepr(initialBalance))
.push("changes", ci) .push("changes", ci)
.set("date", getFromEventId(version)) .set("creationDate", getFromEventId(version))
.set("version", version), .set("version", version),
AccountInfo.class); AccountInfo.class);
logger.info("Saved in mongo"); logger.info("Saved in mongo");

View File

@@ -29,7 +29,6 @@ import java.io.InputStream;
import java.io.InputStreamReader; import java.io.InputStreamReader;
import java.net.URISyntaxException; import java.net.URISyntaxException;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import java.util.stream.Stream;
import static org.springframework.web.bind.annotation.RequestMethod.*; import static org.springframework.web.bind.annotation.RequestMethod.*;
@@ -59,11 +58,12 @@ public class GatewayController {
logger.info("request: {}", proxiedRequest); logger.info("request: {}", proxiedRequest);
HttpResponse proxiedResponse = httpClient.execute(proxiedRequest); HttpResponse proxiedResponse = httpClient.execute(proxiedRequest);
logger.info("Response {}", proxiedResponse.getStatusLine().getStatusCode()); logger.info("Response {}", proxiedResponse.getStatusLine().getStatusCode());
return new ResponseEntity<>(read(proxiedResponse.getEntity().getContent()), processHeaders(proxiedResponse.getFirstHeader("Content-Type")), HttpStatus.valueOf(proxiedResponse.getStatusLine().getStatusCode())); return new ResponseEntity<>(read(proxiedResponse.getEntity().getContent()), makeResponseHeaders(proxiedResponse), HttpStatus.valueOf(proxiedResponse.getStatusLine().getStatusCode()));
} }
private HttpHeaders processHeaders(Header h) { private HttpHeaders makeResponseHeaders(HttpResponse response) {
HttpHeaders result = new HttpHeaders(); HttpHeaders result = new HttpHeaders();
Header h = response.getFirstHeader("Content-Type");
result.set(h.getName(), h.getValue()); result.set(h.getName(), h.getValue());
return result; return result;
} }

View File

@@ -1,10 +1,8 @@
package net.chrisrichardson.eventstore.javaexamples.banking.backend.common.accounts; package net.chrisrichardson.eventstore.javaexamples.banking.backend.common.accounts;
import io.eventuate.Event;
import java.math.BigDecimal; import java.math.BigDecimal;
public class AccountChangedEvent implements Event { public class AccountChangedEvent extends AccountEvent {
protected BigDecimal amount; protected BigDecimal amount;
protected String transactionId; protected String transactionId;

View File

@@ -1,8 +1,6 @@
package net.chrisrichardson.eventstore.javaexamples.banking.backend.common.accounts; package net.chrisrichardson.eventstore.javaexamples.banking.backend.common.accounts;
import io.eventuate.Event; public class AccountDebitFailedDueToInsufficientFundsEvent extends AccountEvent {
public class AccountDebitFailedDueToInsufficientFundsEvent implements Event {
private String transactionId; private String transactionId;
private AccountDebitFailedDueToInsufficientFundsEvent() { private AccountDebitFailedDueToInsufficientFundsEvent() {

View File

@@ -1,8 +1,4 @@
package net.chrisrichardson.eventstore.javaexamples.banking.backend.common.accounts; package net.chrisrichardson.eventstore.javaexamples.banking.backend.common.accounts;
import io.eventuate.Event; public class AccountDeletedEvent extends AccountEvent {
import java.util.Date;
public class AccountDeletedEvent implements Event {
} }

View File

@@ -0,0 +1,8 @@
package net.chrisrichardson.eventstore.javaexamples.banking.backend.common.accounts;
import io.eventuate.Event;
import io.eventuate.EventEntity;
@EventEntity(entity="net.chrisrichardson.eventstore.javaexamples.banking.backend.commandside.accounts.Account")
public abstract class AccountEvent implements Event{
}

View File

@@ -1,11 +1,8 @@
package net.chrisrichardson.eventstore.javaexamples.banking.backend.common.accounts; package net.chrisrichardson.eventstore.javaexamples.banking.backend.common.accounts;
import io.eventuate.Event;
import java.math.BigDecimal; import java.math.BigDecimal;
public class AccountOpenedEvent implements Event { public class AccountOpenedEvent extends AccountEvent {
private String customerId; private String customerId;
private String title; private String title;

View File

@@ -1,2 +0,0 @@
@io.eventuate.EventEntity(entity="net.chrisrichardson.eventstore.javaexamples.banking.backend.commandside.accounts.Account")
package net.chrisrichardson.eventstore.javaexamples.banking.backend.common.accounts;

View File

@@ -1,8 +1,7 @@
package net.chrisrichardson.eventstore.javaexamples.banking.backend.common.transactions; package net.chrisrichardson.eventstore.javaexamples.banking.backend.common.transactions;
import io.eventuate.Event;
public class CreditRecordedEvent implements Event { public class CreditRecordedEvent extends MoneyTransferEvent {
private TransferDetails details; private TransferDetails details;
private CreditRecordedEvent() { private CreditRecordedEvent() {

View File

@@ -1,10 +1,6 @@
package net.chrisrichardson.eventstore.javaexamples.banking.backend.common.transactions; package net.chrisrichardson.eventstore.javaexamples.banking.backend.common.transactions;
// import io.eventuate.Event; public class DebitRecordedEvent extends MoneyTransferEvent {
import io.eventuate.Event;
public class DebitRecordedEvent implements Event {
private TransferDetails details; private TransferDetails details;
private DebitRecordedEvent() { private DebitRecordedEvent() {

View File

@@ -1,8 +1,7 @@
package net.chrisrichardson.eventstore.javaexamples.banking.backend.common.transactions; package net.chrisrichardson.eventstore.javaexamples.banking.backend.common.transactions;
import io.eventuate.Event;
public class FailedDebitRecordedEvent implements Event { public class FailedDebitRecordedEvent extends MoneyTransferEvent {
private TransferDetails details; private TransferDetails details;
private FailedDebitRecordedEvent() { private FailedDebitRecordedEvent() {

View File

@@ -1,9 +1,7 @@
package net.chrisrichardson.eventstore.javaexamples.banking.backend.common.transactions; package net.chrisrichardson.eventstore.javaexamples.banking.backend.common.transactions;
import io.eventuate.Event; public class MoneyTransferCreatedEvent extends MoneyTransferEvent {
public class MoneyTransferCreatedEvent implements Event {
private TransferDetails details; private TransferDetails details;
private MoneyTransferCreatedEvent() { private MoneyTransferCreatedEvent() {

View File

@@ -0,0 +1,8 @@
package net.chrisrichardson.eventstore.javaexamples.banking.backend.common.transactions;
import io.eventuate.Event;
import io.eventuate.EventEntity;
@EventEntity(entity="net.chrisrichardson.eventstore.javaexamples.banking.backend.commandside.transactions.MoneyTransfer")
public abstract class MoneyTransferEvent implements Event {
}

View File

@@ -1,2 +0,0 @@
@io.eventuate.EventEntity(entity="net.chrisrichardson.eventstore.javaexamples.banking.backend.commandside.transactions.MoneyTransfer")
package net.chrisrichardson.eventstore.javaexamples.banking.backend.common.transactions;

View File

@@ -4,12 +4,14 @@ import net.chrisrichardson.eventstore.javaexamples.banking.common.customers.Addr
import net.chrisrichardson.eventstore.javaexamples.banking.common.customers.Name; import net.chrisrichardson.eventstore.javaexamples.banking.common.customers.Name;
import net.chrisrichardson.eventstore.javaexamples.banking.common.customers.ToAccountInfo; import net.chrisrichardson.eventstore.javaexamples.banking.common.customers.ToAccountInfo;
import org.springframework.data.mongodb.core.index.Indexed; import org.springframework.data.mongodb.core.index.Indexed;
import org.springframework.data.mongodb.core.mapping.Document;
import java.util.Map; import java.util.Map;
/** /**
* Created by Main on 05.02.2016. * Created by Main on 05.02.2016.
*/ */
@Document
public class QuerySideCustomer { public class QuerySideCustomer {
private String id; private String id;