From fd0a4355a75c9e66f3979aea4ac4bc39eb2cd6c5 Mon Sep 17 00:00:00 2001 From: dartpopikyardo Date: Fri, 21 Oct 2016 21:29:17 +0300 Subject: [PATCH 1/4] - updated eventuateClientVersion - updated Int128 usage --- .../accounts/AccountInfoUpdateService.java | 13 +++---------- .../queryside/accounts/AccountQueryWorkflow.java | 7 ++++--- java-spring/gradle.properties | 2 +- 3 files changed, 8 insertions(+), 14 deletions(-) diff --git a/java-spring/accounts-query-side-backend/src/main/java/net/chrisrichardson/eventstore/javaexamples/banking/backend/queryside/accounts/AccountInfoUpdateService.java b/java-spring/accounts-query-side-backend/src/main/java/net/chrisrichardson/eventstore/javaexamples/banking/backend/queryside/accounts/AccountInfoUpdateService.java index 973e661..0ff9aaf 100644 --- a/java-spring/accounts-query-side-backend/src/main/java/net/chrisrichardson/eventstore/javaexamples/banking/backend/queryside/accounts/AccountInfoUpdateService.java +++ b/java-spring/accounts-query-side-backend/src/main/java/net/chrisrichardson/eventstore/javaexamples/banking/backend/queryside/accounts/AccountInfoUpdateService.java @@ -1,6 +1,7 @@ package net.chrisrichardson.eventstore.javaexamples.banking.backend.queryside.accounts; import com.mongodb.WriteResult; +import io.eventuate.Int128; import net.chrisrichardson.eventstore.javaexamples.banking.common.accounts.AccountChangeInfo; import net.chrisrichardson.eventstore.javaexamples.banking.common.accounts.AccountTransactionInfo; import net.chrisrichardson.eventstore.javaexamples.banking.common.transactions.TransferState; @@ -29,7 +30,7 @@ public class AccountInfoUpdateService { } - public void create(String accountId, String customerId, String title, BigDecimal initialBalance, String description, String version) { + public void create(String accountId, String customerId, String title, BigDecimal initialBalance, String description, Int128 version) { try { AccountChangeInfo ci = new AccountChangeInfo(); ci.setAmount(toIntegerRepr(initialBalance)); @@ -40,7 +41,7 @@ public class AccountInfoUpdateService { .set("description", description) .set("balance", toIntegerRepr(initialBalance)) .push("changes", ci) - .set("creationDate", getFromEventId(version)) + .set("creationDate", new Date(version.getHi())) .set("version", version), AccountInfo.class); logger.info("Saved in mongo"); @@ -81,12 +82,4 @@ public class AccountInfoUpdateService { set("transactions." + transactionId + ".status", status), AccountInfo.class); } - - private Date getFromEventId(String eventId) { - String[] s = eventId.split("-"); - if (s.length != 2) { - return new Date(); - } - return new Date(Long.parseUnsignedLong(s[0], 16)); - } } diff --git a/java-spring/accounts-query-side-backend/src/main/java/net/chrisrichardson/eventstore/javaexamples/banking/backend/queryside/accounts/AccountQueryWorkflow.java b/java-spring/accounts-query-side-backend/src/main/java/net/chrisrichardson/eventstore/javaexamples/banking/backend/queryside/accounts/AccountQueryWorkflow.java index 6dd2217..5437c8e 100644 --- a/java-spring/accounts-query-side-backend/src/main/java/net/chrisrichardson/eventstore/javaexamples/banking/backend/queryside/accounts/AccountQueryWorkflow.java +++ b/java-spring/accounts-query-side-backend/src/main/java/net/chrisrichardson/eventstore/javaexamples/banking/backend/queryside/accounts/AccountQueryWorkflow.java @@ -3,6 +3,7 @@ package net.chrisrichardson.eventstore.javaexamples.banking.backend.queryside.ac import io.eventuate.DispatchedEvent; import io.eventuate.EventHandlerMethod; import io.eventuate.EventSubscriber; +import io.eventuate.Int128; import net.chrisrichardson.eventstore.javaexamples.banking.backend.common.accounts.*; import net.chrisrichardson.eventstore.javaexamples.banking.backend.common.transactions.CreditRecordedEvent; import net.chrisrichardson.eventstore.javaexamples.banking.backend.common.transactions.DebitRecordedEvent; @@ -34,7 +35,7 @@ public class AccountQueryWorkflow { public void create(DispatchedEvent de) { AccountOpenedEvent event = de.getEvent(); String id = de.getEntityId(); - String eventId = de.getEventId().asString(); + Int128 eventId = de.getEventId(); logger.info("**************** account version=" + id + ", " + eventId); BigDecimal initialBalance = event.getInitialBalance(); @@ -57,8 +58,8 @@ public class AccountQueryWorkflow { String moneyTransferId = de.getEntityId(); String fromAccountId = de.getEvent().getDetails().getFromAccountId(); String toAccountId = de.getEvent().getDetails().getToAccountId(); - logger.info("**************** account version=" + fromAccountId + ", " + de.getEventId().asString()); - logger.info("**************** account version=" + toAccountId + ", " + de.getEventId().asString()); + logger.info("**************** account version=" + fromAccountId + ", " + eventId); + logger.info("**************** account version=" + toAccountId + ", " + eventId); AccountTransactionInfo ti = new AccountTransactionInfo(moneyTransferId, fromAccountId, diff --git a/java-spring/gradle.properties b/java-spring/gradle.properties index e93b4ed..9aa239b 100644 --- a/java-spring/gradle.properties +++ b/java-spring/gradle.properties @@ -5,5 +5,5 @@ eventuateMavenRepoUrl=http://mavenrepo.eventuate.io/release springBootVersion=1.3.5.RELEASE -eventuateClientVersion=0.10.0.RELEASE +eventuateClientVersion=0.12.0.RELEASE eventuateLocalVersion=0.4.0.RELEASE From c157ba572043210066e7d406a92ae493c1deea09 Mon Sep 17 00:00:00 2001 From: dartpopikyardo Date: Fri, 21 Oct 2016 21:34:21 +0300 Subject: [PATCH 2/4] - fixed AccountInfoUpdateServiceTest --- .../queryside/accounts/AccountInfoUpdateServiceTest.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/java-spring/accounts-query-side-backend/src/test/java/net/chrisrichardson/eventstore/javaexamples/banking/backend/queryside/accounts/AccountInfoUpdateServiceTest.java b/java-spring/accounts-query-side-backend/src/test/java/net/chrisrichardson/eventstore/javaexamples/banking/backend/queryside/accounts/AccountInfoUpdateServiceTest.java index 4a11089..a64c304 100644 --- a/java-spring/accounts-query-side-backend/src/test/java/net/chrisrichardson/eventstore/javaexamples/banking/backend/queryside/accounts/AccountInfoUpdateServiceTest.java +++ b/java-spring/accounts-query-side-backend/src/test/java/net/chrisrichardson/eventstore/javaexamples/banking/backend/queryside/accounts/AccountInfoUpdateServiceTest.java @@ -1,5 +1,6 @@ package net.chrisrichardson.eventstore.javaexamples.banking.backend.queryside.accounts; +import io.eventuate.Int128; import io.eventuate.javaclient.spring.jdbc.EventuateJdbcEventStoreConfiguration; import io.eventuate.javaclient.spring.jdbc.IdGenerator; import io.eventuate.javaclient.spring.jdbc.IdGeneratorImpl; @@ -46,7 +47,7 @@ public class AccountInfoUpdateServiceTest { IdGenerator x = new IdGeneratorImpl(); String accountId = x.genId().asString(); String customerId = x.genId().asString(); - String version = x.genId().asString(); + Int128 version = x.genId(); String title = "Checking account"; BigDecimal initialBalance = new BigDecimal("1345"); @@ -99,7 +100,7 @@ public class AccountInfoUpdateServiceTest { IdGenerator x = new IdGeneratorImpl(); String accountId = x.genId().asString(); String customerId = x.genId().asString(); - String version = x.genId().asString(); + Int128 version = x.genId(); String title = "Checking account"; BigDecimal initialBalance = new BigDecimal("1345"); @@ -114,7 +115,7 @@ public class AccountInfoUpdateServiceTest { IdGenerator x = new IdGeneratorImpl(); String accountId = x.genId().asString(); String customerId = x.genId().asString(); - String version = x.genId().asString(); + Int128 version = x.genId(); String title = "Checking account"; BigDecimal initialBalance = new BigDecimal("1345"); From d30adea37ca3fa43b7fc5f13a40baa31d02d53ce Mon Sep 17 00:00:00 2001 From: dartpopikyardo Date: Fri, 21 Oct 2016 21:36:32 +0300 Subject: [PATCH 3/4] - fixed AccountInfoUpdateServiceTest --- .../queryside/accounts/AccountInfoUpdateServiceTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/java-spring/accounts-query-side-backend/src/test/java/net/chrisrichardson/eventstore/javaexamples/banking/backend/queryside/accounts/AccountInfoUpdateServiceTest.java b/java-spring/accounts-query-side-backend/src/test/java/net/chrisrichardson/eventstore/javaexamples/banking/backend/queryside/accounts/AccountInfoUpdateServiceTest.java index a64c304..220b97f 100644 --- a/java-spring/accounts-query-side-backend/src/test/java/net/chrisrichardson/eventstore/javaexamples/banking/backend/queryside/accounts/AccountInfoUpdateServiceTest.java +++ b/java-spring/accounts-query-side-backend/src/test/java/net/chrisrichardson/eventstore/javaexamples/banking/backend/queryside/accounts/AccountInfoUpdateServiceTest.java @@ -64,7 +64,7 @@ public class AccountInfoUpdateServiceTest { assertEquals(initialBalance.longValue() * 100, accountInfo.getBalance()); assertEquals(1, accountInfo.getChanges().size()); assertTrue(accountInfo.getTransactions().isEmpty()); - assertEquals(version, accountInfo.getVersion()); + assertEquals(version.asString(), accountInfo.getVersion()); String changeId = x.genId().asString(); From 56cadd3139d32d9c9ccc8990a39a444085c86e65 Mon Sep 17 00:00:00 2001 From: dartpopikyardo Date: Fri, 21 Oct 2016 21:43:31 +0300 Subject: [PATCH 4/4] - fixed AccountInfoUpdateService --- .../backend/queryside/accounts/AccountInfoUpdateService.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/java-spring/accounts-query-side-backend/src/main/java/net/chrisrichardson/eventstore/javaexamples/banking/backend/queryside/accounts/AccountInfoUpdateService.java b/java-spring/accounts-query-side-backend/src/main/java/net/chrisrichardson/eventstore/javaexamples/banking/backend/queryside/accounts/AccountInfoUpdateService.java index 0ff9aaf..e86d57c 100644 --- a/java-spring/accounts-query-side-backend/src/main/java/net/chrisrichardson/eventstore/javaexamples/banking/backend/queryside/accounts/AccountInfoUpdateService.java +++ b/java-spring/accounts-query-side-backend/src/main/java/net/chrisrichardson/eventstore/javaexamples/banking/backend/queryside/accounts/AccountInfoUpdateService.java @@ -42,7 +42,7 @@ public class AccountInfoUpdateService { .set("balance", toIntegerRepr(initialBalance)) .push("changes", ci) .set("creationDate", new Date(version.getHi())) - .set("version", version), + .set("version", version.asString()), AccountInfo.class); logger.info("Saved in mongo");