This is an automated email from the ASF dual-hosted git repository.

cmorris pushed a commit to branch tendermint
in repository https://gitbox.apache.org/repos/asf/incubator-milagro-dta.git


The following commit(s) were added to refs/heads/tendermint by this push:
     new c04fa50  Process History
c04fa50 is described below

commit c04fa50e1cd8232b719c9ca9ddffb218379a202e
Author: Christopher Morris <[email protected]>
AuthorDate: Mon Oct 14 10:21:51 2019 +0100

    Process History
---
 cmd/servicetester/e2e_test.sh                      |  10 +-
 .../{e2e_test.sh => e2e_test_multi.sh}             |  26 +--
 cmd/servicetester/orders                           |  13 ++
 cmd/servicetester/orders4                          |  13 ++
 cmd/servicetester/refs                             |   1 +
 cmd/servicetester/refs4                            | 193 +++++++++++++++++++++
 cmd/servicetester/secret                           |  10 ++
 cmd/servicetester/secret4                          |  10 ++
 libs/documents/docs.go                             |   4 +
 pkg/tendermint/connector.go                        |  68 +++++---
 r4                                                 |   5 +
 11 files changed, 317 insertions(+), 36 deletions(-)

diff --git a/cmd/servicetester/e2e_test.sh b/cmd/servicetester/e2e_test.sh
index cbd53ef..3568441 100755
--- a/cmd/servicetester/e2e_test.sh
+++ b/cmd/servicetester/e2e_test.sh
@@ -119,7 +119,7 @@ execute_safeguardsecret () {
 
   ( sleep 2; curl -s -X POST "$apiURL/$apiVersion/order" -H "accept: */*" -H 
"Content-Type: application/json" -d 
"{\"beneficiaryIDDocumentCID\":$identity,\"extension\":{\"plainText\":\"$inputString\"}}"
 > ref ) &
   output1=$(fishhook $configdir $host "self" 2)
- 
+
   ref=$(cat ref | jq .orderReference)
   cipherText=$(echo $output1 | jq .OrderPart2.Extension.CipherText)
 
@@ -150,17 +150,17 @@ execute_milagro () {
   output1=$(fishhook $configdir $host "self" 1)
   ref=$(cat ref | jq .orderReference)
   commitment1=$(echo $output1 | jq .OrderPart2.CommitmentPublicKey)
-  #echo "Committment1 $commitment1"
+  echo "Committment1 $commitment1"
 
   ( sleep 1; curl -s -X POST "$apiURL/$apiVersion/order/secret" -H "accept: 
*/*" -H "Content-Type: application/json" -d 
"{\"orderReference\":$ref,\"beneficiaryIDDocumentCID\":$identity}" > /dev/null) 
&
   output2=$(fishhook $configdir $host "self" 3)
   commitment2=$(echo $output2 | jq .OrderPart4.Extension.FinalPublicKey)
   orderIndex=0
-  #echo "Committment1 $commitment1"
-  #echo "Committment2 $commitment2"
+  echo "Committment1 $commitment1"
+  echo "Committment2 $commitment2"
 
   if [ -z $commitment2 ]; then
-      eprintfcho "  ${RED}FAIL${NC}  Commitment is empty\n"
+      printf "  ${RED}FAIL${NC}  Commitment is empty\n"
       exit 1
   fi
 
diff --git a/cmd/servicetester/e2e_test.sh b/cmd/servicetester/e2e_test_multi.sh
similarity index 94%
copy from cmd/servicetester/e2e_test.sh
copy to cmd/servicetester/e2e_test_multi.sh
index cbd53ef..f788d1d 100755
--- a/cmd/servicetester/e2e_test.sh
+++ b/cmd/servicetester/e2e_test_multi.sh
@@ -19,10 +19,13 @@
 
 #End to End Test of Services using curl/bash
 
+principalID="FvhP9PyS1LNNizM1kns65PUA9imPya2zzTbZZ9BYaVLo"
+beneficiaryID="5m4iJRCRzcMySHFXgAPB1gyfBvHgomwEpWDpZRHayPyP"
+beneficiaryConfigdir=~/.milagro3
 apiVersion="v1"
 defaultURL="http://localhost:5556";
 apiURL="${1:-$defaultURL}"
-configdir=~/.milagro
+configdir=~/.milagro1
 host="34.246.173.153:26657"
 RED='\033[0;31m'
 GREEN='\033[0;32m'
@@ -119,7 +122,7 @@ execute_safeguardsecret () {
 
   ( sleep 2; curl -s -X POST "$apiURL/$apiVersion/order" -H "accept: */*" -H 
"Content-Type: application/json" -d 
"{\"beneficiaryIDDocumentCID\":$identity,\"extension\":{\"plainText\":\"$inputString\"}}"
 > ref ) &
   output1=$(fishhook $configdir $host "self" 2)
- 
+
   ref=$(cat ref | jq .orderReference)
   cipherText=$(echo $output1 | jq .OrderPart2.Extension.CipherText)
 
@@ -146,21 +149,25 @@ execute_safeguardsecret () {
 
 execute_milagro () {
   echo "  Milagro Tests [1 Test]"
-  ( sleep 1; curl -s -X POST "$apiURL/$apiVersion/order" -H "accept: */*" -H 
"Content-Type: application/json" -d "{\"beneficiaryIDDocumentCID\":$identity}" 
> ref ) &
+  ( sleep 1; curl -s -X POST "$apiURL/$apiVersion/order" -H "accept: */*" -H 
"Content-Type: application/json" -d "{\"beneficiaryIDDocumentCID\":\"\"}" > ref 
) &
+
   output1=$(fishhook $configdir $host "self" 1)
   ref=$(cat ref | jq .orderReference)
   commitment1=$(echo $output1 | jq .OrderPart2.CommitmentPublicKey)
-  #echo "Committment1 $commitment1"
+  echo "Committment1 $commitment1"
+
+
 
-  ( sleep 1; curl -s -X POST "$apiURL/$apiVersion/order/secret" -H "accept: 
*/*" -H "Content-Type: application/json" -d 
"{\"orderReference\":$ref,\"beneficiaryIDDocumentCID\":$identity}" > /dev/null) 
&
-  output2=$(fishhook $configdir $host "self" 3)
+  ( sleep 1; curl -s -X POST "$apiURL/$apiVersion/order/secret" -H "accept: 
*/*" -H "Content-Type: application/json" -d 
"{\"orderReference\":$ref,\"beneficiaryIDDocumentCID\":\"$beneficiaryID\"}" > 
/dev/null) &
+
+
+  output2=$(fishhook $beneficiaryConfigdir $host "self" 1)
   commitment2=$(echo $output2 | jq .OrderPart4.Extension.FinalPublicKey)
   orderIndex=0
-  #echo "Committment1 $commitment1"
-  #echo "Committment2 $commitment2"
 
+  
   if [ -z $commitment2 ]; then
-      eprintfcho "  ${RED}FAIL${NC}  Commitment is empty\n"
+      printf "  ${RED}FAIL${NC}  Commitment is empty\n"
       exit 1
   fi
 
@@ -201,7 +208,6 @@ execute_orderlist () {
 
 status
 
-
 if [ $plugin == "bitcoinwallet" ]; then
    execute_bitcoin
 fi
diff --git a/cmd/servicetester/orders b/cmd/servicetester/orders
new file mode 100755
index 0000000..c627f9c
--- /dev/null
+++ b/cmd/servicetester/orders
@@ -0,0 +1,13 @@
+#!/bin/bash
+rm refs
+x=1
+while [ $x -le $1 ]
+do
+    (curl -s -X POST http://localhost:5556/v1/order -H "accept: */*" -H 
"Content-Type: application/json" -d "{\"beneficiaryIDDocumentCID\":\"\"}" | jq 
.orderReference >> refs ) &
+  x=$(( $x + 1 ))
+done
+
+
+
+
+
diff --git a/cmd/servicetester/orders4 b/cmd/servicetester/orders4
new file mode 100755
index 0000000..5a8bf34
--- /dev/null
+++ b/cmd/servicetester/orders4
@@ -0,0 +1,13 @@
+#!/bin/bash
+rm refs
+x=1
+while [ $x -le $1 ]
+do
+  curl -s -X POST http://localhost:8556/v1/order -H "accept: */*" -H 
"Content-Type: application/json" -d "{\"beneficiaryIDDocumentCID\":\"\"}" | jq 
.orderReference >> refs4 
+  x=$(( $x + 1 ))
+done
+
+
+
+
+
diff --git a/cmd/servicetester/refs b/cmd/servicetester/refs
new file mode 100644
index 0000000..942602f
--- /dev/null
+++ b/cmd/servicetester/refs
@@ -0,0 +1 @@
+"G6c5SAXkDanPvsQVqbdeyRXQ3nUtfF8YUtmqVGoKN7Dn"
diff --git a/cmd/servicetester/refs4 b/cmd/servicetester/refs4
new file mode 100644
index 0000000..0190582
--- /dev/null
+++ b/cmd/servicetester/refs4
@@ -0,0 +1,193 @@
+"EL3e7rfCmYRsrtCBGcZwPKJoDcr6DAAuDjUsJXfY5Pm2"
+"9VjvbiBdpezT5MJSxZdYtxQSuWUVkRnfHTCptd37YcVm"
+"F46mnFDoQHEGitY6LuvUUcvkpCFaMRgthTqWAwVi6u4Y"
+"5urdsUM3dTRmhvzu6AkiBwYGnziwVYGfRYEQ15vKnzTe"
+"A75Xo1kf8JMVcD989Kyj6igM8tiTynEbuJ7QKrjJ2NZe"
+"9yc5U5tEH5qcTxdwKRDbTaGH7AriLH4UFow3h3CQu1pP"
+"HkYAE5koRcek5sNK5mNcs2hQ8NdFMbcQ8Cyh4R1nMGVq"
+"3DVMjTcUL9PpjXW8U6wb5ZUEtTCHxVBLFNCPM418WNEU"
+"9zG6bCCDP4xGZVE3ySkpCThtjZaf3EeH5LX8BvaCSkC2"
+"ErRX7EUen9RT1KYfhVbhGWpPmdAX8RpFPejedxD2h922"
+"EWX8Q9QZPxXXKXhbi7dEbNCgpQ2xEofcopK8Dp5vsxvM"
+"AufU3nRsShZejXdt9XeC5i6cXUyZhH5X14TUdTrSGCTf"
+"89aqoF3rZcvPhTNMLMJgTRFoJAvtWXoRyFCaz6LotLoV"
+"3VPkSfCsEJSEygWWVRNFqGmAfeUqso2MpB27ZUeo2vEs"
+"3am1DjAPSKkoZrQyHkxjJqHFmFJ4zdjNqGtvaZRttvVU"
+"HnRSdFqojwZUh1hiFjMP87KZBAHFK4KRLEh1qSzhmhni"
+"Fgipj8gETxrCmNAtx2Cu96RHPj8rdzPfWmQ7N6fkfGMj"
+"Bz1Z4opxsJdjgoUarYqaymk7jMj886W7NyaxZxypYiNR"
+"HAHisc3bxeCHSpsN29awvhE8Bc326R2jQG6WTkxS8bVo"
+"2HrR57Yz8v5wBog3bAAyfhhoY31U8mZTWT1PikarmLPs"
+"2TDd4MUZGBZ8ZkbM66EZNSHDxM3DjXtQKXCGhiSwur1Y"
+"DJToC2dptgjC5bgmhVKs7L6wimsiy2rqjkwDPybhrTyh"
+"26VpRR6LYnR1fxkt58h48uYHvkj2HY9wAvnjesBqy3Qx"
+"7gHP5pNuZPsEjdb6BLhG2DnbrzMrcgH9smXsR67oNH5Y"
+"Fgpd5mVpsu1MasDdAgn1TStURKTBjjTUBwY3n1mXkvmq"
+"D6KrzR76tQ2eURg47cAEVb2r22NEBpRBib2ewrApxHvG"
+"98NbwHpTXH6cNmS81rkao7opaQcc39nkay2wLeBc9YKV"
+"2vVhayxcbxP7SFtrar613rycA5bLkgVXXAtKwykZhLcQ"
+"6DBGZ5iizWriQGwgG2gR2SPrn6yeVLfisJNj91Pf2Rdx"
+"Fp6oF7efgpgCpzycsSq7ux4M2rNPPp9LyjHrk7aUvWhP"
+"9b6T1fmyGfdanEDj74ccPrxdfFGe65Ui5KgJek1tHmAn"
+"AMv3rKSGRtALogskeRtkssgv3st8tSGH5YzKRur83w1X"
+"Gg41gX36SAczx11o7tGEFs4TvghQx3eZBVBpptc2oh9U"
+"AecNfbQ9p7Ce51MxaeKSTPS6GJwnCftaQEYN8GcYr5YY"
+"EvnasbWpNrzzRxSCfWBPmiabvM8zgxdKHP6rMxMqpRV8"
+"65bJ3X2DGMGxCrPWTdhCAz4DeWQJc8yQHSefxeEB6Nxo"
+"HkrnUeZEbBEr44xz8qLk6CMeWzH6tJSgkPs6uCdQaf8e"
+"aCyy3boV5tiNVv6EfNaW3tQi3viR3igDREevYz6ZB8T"
+"A2DuvQ7u9pCyFtRfTUgbabhrvitMxjNN7u6hZHyAfNqV"
+"H8hV1CZen2sBssAEYkE3iSkaYZaHS86z6fiTNVU9hgov"
+"6R8ES9BSAGDny9cSD5TMF3YkDE3zZJtQjAFdEZibef7T"
+"4gU4UWSZQwZAKQvSGw2jkMoWqpdN99UYX9p86RA11LEs"
+"6pxCaEpieYdrgToQQrqJz2DuHBjakv4gRhZ2kb9VuE5C"
+"296rKKjpu11qGTr5bNPwHxyW4LAHHYF8V44VmwaoJU5W"
+"AeJ2v4astM5yd9Gpr7xsX3QLcQHYCvAAPuwBsJ6pNdUW"
+"7Lxc3sxVBqEHz4GTXA45em1qZYtx5JrHGEjBFYAxpzWy"
+"Fgyt5ehUyjMgpUcti29GxmpTMSxDhUXMCR14wznUFbzg"
+"26TKapdLEenuo1BZYTdQDGGTH9QVi74fkmby2c95ksGh"
+"4K6kwK4wvxy89e3jNt5KxPYbrMqGhNUbmEhBKut1rTUM"
+"65MfB7gsJip3EHRhEkGwiR8tU5mk5Xtq4yYjVuohuWY4"
+"H29ZmRZ9S5wMKwbWVS1q15XdJUHt3yuvhEuk47mF1MPr"
+"GFpywDnK86w6WXZV9Vby3yY3iArvftfhSZNVDyPtyHUx"
+"EMfmJiHESXBrWHcQEdAsjJEZLBaSHFrxbPQ1rvp6kyAL"
+"DRb45jCL6ugV9BPboC9QtYbvMhgtciYsvT9ASq9Qgz1Z"
+"mTbsWAYmhqQc8WR2Tu9k1mCyUrg9JynDSGNrtccveaZ"
+"3uS1qBitUqRfbptztYwQFh7PaTCQeGnB4ieuDuwS2A5g"
+"647y1ymdq5wQkKp9Ue7bbJSW3kSVmLK5NYmtXwQgDqHn"
+"BeSw4wtiCMgX7s8QbUpQexJBYS9AcTTw57aEVEB1dc1u"
+"3XnNLS7vGFAtZFRuEChu7HpNa9edW4xZWaR1iTg2WWVz"
+"Dg12VpjNhX8yi4arjsYXcNPwSjad256W2Qb9JjWuhXqG"
+"Cdrwhhkh1e17NMvHsyczd3QEoRT66tTDfL2fqSfcqf8B"
+"BS3RqbDYYQHSaoTqndE4qeZ7B9ikYzQx6RNZfRsspNPa"
+"2TeLW5FMXPZM2wpQ4jj7chDfoogAed47bmXUhwfRknch"
+"3MGB3LvkvX1iEDNeadCgZPZKvWDNpQVzhit6HWhpwUhE"
+"AGgHDAjmoNVWxmUxWJ1At51hyhZkbUANwg4Ww2aYaGKd"
+"ESHviwtzS6HquafqosQBxrwY9d6yPjHX236BPp4YMWsH"
+"59gVPRTcoHtCGi8L9iBRqmrPSuLiFmavBjKG4e7cj5JB"
+"6FhR3PjufuCZMTDNCB61QqTYwLscqqhBHJA3awEFddcp"
+"uAEjobkjvrd69r3sa24VZqZC6XyFLCcRzo37aMeguXN"
+"EPAMzwMriyX6cgyuTfAey3tUddv8hWjTiR892V3RQw9P"
+"9zm6eePCbiT2zftRSwPp8AtVNAibdS5KTcXnCpBgh9dj"
+"CbywFktqe6bbTG95Bo6fRFcVWbvwsGcv8t4pVw1inkvx"
+"A93rU9v9LQM3weY3DHc5sbWkDWxX9gHR2evzqTWuNnAQ"
+"Cfqmh9PEnrwNejgmVjm1pYpG5XJo7ja3dKxrsYugr4YZ"
+"AGaxa5S9EsSrYzAzNY5D6FgE6T2pgRRUaWWTu3vakdH2"
+"Fya41zwPkELFSfL1eQtjHxt2Nmfm35htRwAE5UUtqAkw"
+"BKnYnjpJdegA7VsjEtmizFc28HqUrtwFRxYnui6xQf8g"
+"8RTbXgeK3w3N6zdF216diAPtTfuEEppGaAssZmH52WxG"
+"9MkHcrELBii9FcB4CoAh8SnzCFDyHV4HyNqLcoVVx5NE"
+"8g4AWZNEsq2MT7X9FaKqxFCVg2sEiiDA3Dj5JFHvN8GZ"
+"4D4Q4LY7jv3mtdf8EJFgjxWBpVSL9MRtM5RfEyL1TucT"
+"H2YMzY3XYK61mUoGXz8ZX7TMjo7NDUybg71cXtTttnFT"
+"CVCNqS57yQRUuEpcXCinPwNZxGrZkmF4SceVxWvT1CjN"
+"99g6i2931bXYfwfrZTB84KTo4LpCvU3LVnJrUoRep5qv"
+"34mC3tuP1ChUZAAhgSucY9mczP6yYbauLsfwjE7LFVSG"
+"7G1Yr9Y6rFnVWfYF8S8aLFakmH2fxkEVz8LUYgirz3y1"
+"9VrLZwMiC89noBeoWo9e2hDVWzrw2JeghKMxEjaZR26g"
+"J6BqTeum6vZxyDWqNysXGnS9aqV6chEubUg48XqAkERV"
+"FSZg4sNQCKEM4bmEoGrG2BdkCnjNjZCfRwPFC2YrB2s"
+"EKGWMuZNFYLvp8ayvJKLM4a5xbjkFhaXCnkL25gY3f5g"
+"FWh4vYQU3XZ7AYiXGP1mKsvV6kzJUhnqCfUJq5JuJsbQ"
+"Cz2b83m7YGTfvdWU5fnV9McBVuQjnQWENzfFPK4wg1CJ"
+"3rQ7RBHjBbrEuj5CrCktkbydPmr2zkmj7HfnFAmS7upg"
+"BZj5RrmzXGcafoQ2mYbaUGDm9MpBaVjAZxKMoCeEoErT"
+"8STyS1Egw2PoXZmRsV9umhYJgpiqevAXgYq8uL8TxPwf"
+"DLL1ZyyheZyVzs8PAV2uPCaPnjeY2hBPDVUrqX2KmwaN"
+"7HXtUSgK1ZFQKdWhpE24PyMhJWtFeeqvapUgpZ4djU1a"
+"CNEf8BXmEoiks9sdANQ5CVZ2SFmo4PNp7Tx3smbypkwB"
+"7b6eJ18bgdWscaxW2rLjNBYwdmDhmsN2az5DtatjoA1V"
+"6Uh4S99bmFpefn55RQy9nVK2PLERbKFcss5JQpbdV2sE"
+"5v18n2aWcx61vimETAEramRJ6hW5rBsiSYMUB51LcR8u"
+"9oB5FsWS8rrSBC7XFDSdcVKDwD3SNADMx4YjNf6XJcuM"
+"DbLsvrgUq1ySc9KsanJebmpdzDKXrttUS3tK2bKfLZS4"
+"43aaev4qUajoQorF3cXxgLzjSpH1i2jfV1bbsjxPD4e5"
+"2muZL3vSh24gycGdyzHW5otGEY74c3oPH8bsmYkMeF6T"
+"8oG11wLAW2PwuzQ6LcZ1xTbQ4KecaJfomDgfbxKsRwgE"
+"DrtJZ5V3JyoT2Hj9zqGvqkHPFMMxB5rUsuMwN6Bj3k9q"
+"EbwC1fEnfPjtPth8ZtEGDW8ZrndrTBYomdtwFiTJPU8j"
+"2qkY8pMruaKYSnEBA6RsFEga8uhdQNSQzfWxhLqfnsGJ"
+"ANWe93q4BpisAbSckE1LEq9owoQidpzMffGTUPtD6zuP"
+"Gtx22daAGeacVaLSLiQ1DZowVLAGe2yW6J9xyEiPGapL"
+"6HHUJkZN4YTwPjso32sXp6C8fo7PcPp8bCz5xMFzzpXC"
+"824wUz4TsYCURNW1PPjdcaY9o9J5VKLG1DtGQeDh1JiN"
+"CF39RYkcPXSfikT89NcqK85aJKhQwk4yPMvL8znSuysD"
+"6dmBhijdA54fiaJnSXa8V64NXtFP1cd95w2Yk8k7Bq8x"
+"Cg9hYSMEb3okq7HHdW86xsJeuvk1kGDbsiHhZ6gpcdqi"
+"7AA64iggMMesd8WcUQtfufv8vYqHdGiGJnzpnb9pdhjg"
+"HU3BeSuEH7PmYHXXn6VwgVCggArrZJMritM6ZhxoVv2d"
+"4UdDc8CvXn79tS2UZs5uSrdQZQPn5ccHK7eFZzbLJB1A"
+"8k1WnXRJoMPBZaNpLZcFjTAqDRYH6Mb1Jd7AgZAYnoQS"
+"ESuBqwsgCQ65mL5oKXpThqbTgeT5FUMtj3CRtixrg3eW"
+"CGHUcnunUwTLqfoYUKDKhJh6LAiGww2uyVFcofNRbuq6"
+"BFLkV6hC3ELrfgy55apmuhHupwC6SPECWmSjPGrdjPRH"
+"A63sr93zWE6t3y6GtVBPsqStS3EkoyPo72RSTr2b5QNV"
+"2VM32wLrHJHAWDn9mnzo8VpJ1USJYBS9JUmbvMhLAz5H"
+"29bWiigLg8xCRynzkCcmPHrkew6yiL1KabSkraseQpL9"
+"EpGedZY4iiKzABjHjBUv9k5s5oLYECKsYjWRyxpvmZvg"
+"AYcifHm9CwuLokh4aBhNmbdGRwS2kYwrsRYzX8YA7N23"
+"2XxnQQBE7RcnW5bkKpRrGNcr8ED3UL15fSySztRVcZGz"
+"AFEZJpeTDVSqqzJyRBFy7djgYzJP77j34dGNMyELDivv"
+"RQ9pm9H52xArHyjw7X1sjPSkFEYHWnGPLqEC4U1wa1t"
+"5ycD6Ec79yTnHUpmq89GcTxTLhf6FbyBC4ZZicuiPLTN"
+"FdRn3T4xHiu9z2T8uG6sVpETTajKnpTEjfDEckZwxE8L"
+"8TvuS7UJGo9V5nbqvWBcRvKEyPJUQ2au7d3dWeVTsXSz"
+"AcaheBFxqe3pTw5dsmb3W4ijRs92iqndakgR4Rosb4rh"
+"8VaZLjcL7xRiDsthjWCiBSDAoEdyxHgSHMxZsaTcryta"
+"EKqCMTwTHh8VghLMJsnWu1XgvzYceWKDWNYaPShPLveC"
+"837ZejSjEmarp3hLGGGtEPaacALjdNxyjfww9nPioxcG"
+"BBBnshFnxwJSxcDkePDkWsRyXyNYpfTWJaNTNuouiFp4"
+"8zXtGVmHKyRp6qedTHBgBesp7gP63DapF14ecWVzWyCB"
+"DqU4Cez9Ax7AvKHCmztWsGUV6MpHt1XAPUnPXLduPxfE"
+"D6FMVdtT6A5fSF53FNaq9dAgZVxh1SWq9MpLf9Gbrdh7"
+"BKrj91uwqc2kJ9ANGeXdeVqWqFABT9rkHC2oYu9jJphu"
+"3UioXcQ4EbwZcofm4Jfbn8zHT3eenvUkFM5Lz2skc7LF"
+"2YVwXg3xjvV3QrXf4oyrh4m7T72icMuMTpoo646BvBdY"
+"AcyFeNHF5afTF6J1HHsV9376Ceyv5xh3rwsJGqW7fWnb"
+"2LECcq5tqPyM86XrtQzgaBXLEoHy3SadvPPXLiZ8oKsR"
+"7CN3egUo7QCBf8Rc473Df2vLK9uRtbE7YLw6eZMvWyrv"
+"DCp6sfcUEdHkaqp4jhBPfnFLpTQd8pMJ9smahkUn9VPp"
+"EUb4YV5qL31RnrZ2DhfM72uJzqLtdJJjyxvboLbowvwR"
+"H2726Q5SA49mJhJW6GYXZxb6Zdm3EY32ZK4qLEdUsmR2"
+"HjrMf5YNfmoiqqea9YK5k7n74zb8kcTUopf9M6b5DXXM"
+"4qwE9UMfPYgR7JbMcWRaH2oYdsJdA7Dh5JeFR8zRkWCN"
+"pyTrxaJCKPSH4y97KUJTYF8JUcLGGBkSzoxLGnM3tWQ"
+"FNibCepGQ3Ua4bAJ9C9gPNVWYCRU6zTXXYisdqgrGrJD"
+"8qFxzdkq2KVqJyEvhREkb6aZarRGSk278VYUHkf91o51"
+"2927FbPNMahJDf9UhncA1y4wGyMLXMfxHyQrpHfRAqcX"
+"58AhvAevaHaiieU25AzuNte6fA36JUv6JmbESGLnCvNG"
+"35sFLtscL6KTtdNVfYecowVmShJrvoj9JTyVqsWBvoGy"
+"6ZPrvvMX7rbgPmDN2So73Zur6jEG2uQgmsHnPzj9Ci4J"
+"zYayVMDPXJq1FcqF6n7e9Kg7yvBKtjx8DdcovqJ9qir"
+"E16D2Kz31DHFg5CKGk5AMkdb3RiUKquQwN5Xeg3azGZk"
+"GFFwfGWB9vMbrhYacKVHmQMzhbWQ4dCQszMs4eX95jJF"
+"6kuLTStMZn631Nyp2DaLK6cSqJ5ti9HvqbGsWVLSRubW"
+"5qnG4HVGYyynJHNx1BUceLny7epY2RahU4ddx36WjLed"
+"GnjQF1HB8JaCwV6wZf7HxzVHgtLf6NoXtnBBBJyWhWKi"
+"ERghbpGX7UkVcey35PmA1cgSkQNZPen3Q5Q8Yd1TQsWZ"
+"89aRsFaRwwXF87fG5eEXoFWxz9FZVetMEpFeb9dWuqVM"
+"5KkNqeGRtpwZPwsmGTrzve3G53jEDeBWL36Pg2LYeZX8"
+"BcgC9y4grVNtWL1wveaJkvSKTkGpXynTogTVWfLSd7tB"
+"AqrygxSRX6wdrvRsEgA1QkqWb1VzqariqYJV67QBhBkt"
+"9c32ZhDD2zDZAbdNETT5zagJ7tpmH1qj4Qh2YQNyQmX3"
+"FU1kaAHnQ3tPPRMZXfaqPiYjAe46aqqddurGjCsdADwd"
+"Fb4LweGZT7faSGRka7XUKLqZzyGzSxS9c7Yj1ndEtPuP"
+"68rmB4bXYgEn77o9VfGaDrv5rsJ3oKJ3Vp41LHMHVok1"
+"FtitZtSgbQxVr2dnru8wNm7bmCmDwfCretCEsWEvRXm4"
+"9aez8kptrg3Ab2WMx7G1hVCvL7VMmx3eZqQiZ7wsJ8vU"
+"BXi7B6eF957aEZzvC7yuVwoskNxPz5guNhG73HF2jAKg"
+"9HCjETxLm6QzKi14pcVW4nQj8VUYcbb8NU2sEhSKnXwM"
+"6E5L2VWdarNw6ghmUJUdJTBVGC3TdnpjUdMhYtEvxaY3"
+"4Pxb97q1XwW2uUSBoWcsvDe8w4L9qWx3e1baqTQqysac"
+"67ocwkNgnzFEHvTaP4cdniPqwv1GBJEo7Qg3v519vPYJ"
+"CF7qGBFxms9MVH1hfNaJcC3LGgdXdHo9Nt1PSbXvBpuJ"
+"CYS6PXhwfm9m2QJQxGCbcRQC2e2i5mgPzWtHrmC9geBd"
+"BdcFhYGsE8HuwitoBixkdYhLitM3VzB2m6dPnJK7jhGX"
+"5yrCsj3twcknVXncnPPFZ76beCnQ5GP9B69dGWSr4rFk"
+"E81XYAhxnMBjAZAfdVr8sd6UvAYe2Kq65fXtJwLdh67D"
+"cyG4bDnutfJh9gChCgn3LEiXinYnqrTxjUxmFHL781t"
+"DwDvSwhpg2CB7wjEBvFBTsAxCR666LHMrcg5PYsCN8E3"
+"7eYNwjdXQheb6VGxryvmz3NuhUPkPJ4cJHqtPghRzsQM"
+"33CSWd6bru3BzuQv5Cs5EGjrhBzX8gS6kq94ErpAZvdd"
+"6E9kWUpFdhr56es5ryeXnPszmR9uYUhoiEBUBrhnnKzU"
+"5FNNz2rufCWAx58Qog1LYZghXLXky3dCoVVVm94yJWS8"
diff --git a/cmd/servicetester/secret b/cmd/servicetester/secret
new file mode 100755
index 0000000..0bb82cd
--- /dev/null
+++ b/cmd/servicetester/secret
@@ -0,0 +1,10 @@
+#!/bin/bash
+beneficiaryID="GisugaBj3LrtJ5eF1aRB13uxBt6SfGk4wErzLFaKKfZL"
+
+while IFS= read -r line; do
+    (curl -s -X POST http://localhost:5556/v1/order/secret -H "accept: */*" -H 
"Content-Type: application/json" -d 
"{\"orderReference\":$line,\"beneficiaryIDDocumentCID\":\"$beneficiaryID\"}") &
+done < "refs"
+
+
+
+
diff --git a/cmd/servicetester/secret4 b/cmd/servicetester/secret4
new file mode 100755
index 0000000..a16dfff
--- /dev/null
+++ b/cmd/servicetester/secret4
@@ -0,0 +1,10 @@
+#!/bin/bash
+beneficiaryID="5m4iJRCRzcMySHFXgAPB1gyfBvHgomwEpWDpZRHayPyP"
+
+while IFS= read -r line; do
+curl -s -X POST http://localhost:8556/v1/order/secret -H "accept: */*" -H 
"Content-Type: application/json" -d 
"{\"orderReference\":$line,\"beneficiaryIDDocumentCID\":\"$beneficiaryID\"}"
+done < "refs4"
+
+
+
+
diff --git a/libs/documents/docs.go b/libs/documents/docs.go
index 1949af5..9ef77a1 100644
--- a/libs/documents/docs.go
+++ b/libs/documents/docs.go
@@ -21,6 +21,8 @@ Package documents - data is signed and nested in "encrypted 
envelope"
 package documents
 
 import (
+       "sync"
+
        "github.com/gogo/protobuf/proto"
        "github.com/pkg/errors"
 )
@@ -31,6 +33,7 @@ import (
 var (
        //EnvelopeVersion the versioning of the entire Envelope, (not 
individual documents/contents)
        EnvelopeVersion float32 = 1.0
+       mutex                   = &sync.Mutex{}
 )
 
 //IDDoc wrapper to encapsulate Header & IDDocument into one object
@@ -166,6 +169,7 @@ func Decode(rawDoc []byte, tag string, sikeSK []byte, 
recipientID string, plainT
                }
 
                decryptedCipherText, err := aesDecrypt(envelope.EncryptedBody, 
header.EncryptedBodyIV, aesKey)
+
                if err != nil {
                        return &Header{}, errors.Wrap(err, "Failed to AES 
Decrypt Envelope cipherText")
                }
diff --git a/pkg/tendermint/connector.go b/pkg/tendermint/connector.go
index 5bba07b..d17a0d2 100644
--- a/pkg/tendermint/connector.go
+++ b/pkg/tendermint/connector.go
@@ -172,7 +172,6 @@ func (nc *NodeConnector) Subscribe(ctx context.Context, 
processFn ProcessTXFunc)
        }
 
        nc.loadMissingHistory(currentBlockHeight, processedTo, processFn)
-       // TODO: load historicTX
 
        // Process events
        return nc.processTXQueue(ctx, txQueue, processFn)
@@ -212,15 +211,20 @@ func (nc *NodeConnector) 
loadMissingHistory(currentBlockHeight int, processedTo
        }
 
        currentPage := 1
-       query := fmt.Sprintf("tag.recipient='%v' AND tag.sender='%v' AND 
tx.height>=%d AND tx.height<=%d", nc.nodeID, nc.nodeID, processedToHeight, 
currentBlockHeight)
+       query := fmt.Sprintf("tag.recipient='%v' AND tx.height>=%v AND 
tx.height<=%v", nc.nodeID, processedToHeight, currentBlockHeight)
        numPerPage := 5
-
+       processedCount := 1
        for {
                result, err := tmHistoryClient.TxSearch(query, true, 
currentPage, numPerPage)
                if err != nil {
                        return errors.Wrapf(err, "Failed to subscribe to query 
%s", query)
                }
 
+               //skip over any previously processed
+
+               totalCount := result.TotalCount
+               totalToProcess := totalCount - int(processedToIndex)
+
                for _, chainTx := range result.Txs {
 
                        tx := chainTx.Tx
@@ -235,33 +239,51 @@ func (nc *NodeConnector) 
loadMissingHistory(currentBlockHeight int, processedTo
                        payload.Height = chainTx.Height
 
                        //processedTo check
-                       if payload.Height < processedToHeight {
-                               continue
-                       }
-                       if payload.Height == processedToHeight && payload.Index 
<= processedToIndex {
+
+                       if processedToHeight == payload.Height && 
processedToIndex >= payload.Index {
+                               //We have already processed this before
+                               msg := fmt.Sprintf("[%v/%v] HISTORY %s Block:%v 
Index:%v", processedCount, totalCount, color.BlueString("ALREADY PROCESSED"), 
chainTx.Height, chainTx.Index)
+                               nc.log.Info(msg)
+                               processedCount++
                                continue
+
                        }
+                       // if processedToHeight == payload.Height && 
payload.Index == 0 {
+                       //      totalCount = totalCount - int(processedToIndex)
+                       // }
+
+                       // if processedToHeight > payload.Height {
+                       //      continue
+                       // }
+
+                       // if processedToHeight == payload.Height && 
processedToIndex > payload.Index {
+                       //      continue
+                       // }
 
                        //Dont queue just process directly
 
                        if err := processFn(payload); err != nil {
-                               msg := fmt.Sprintf("HISTORY %s Block:%v 
Index:%v Error:%v", color.RedString("FAILURE"), chainTx.Height, chainTx.Index, 
err)
+                               msg := fmt.Sprintf("[%v/%v] HISTORY %s Block:%v 
Index:%v Error:%v", processedCount, totalCount, color.RedString("FAILURE"), 
chainTx.Height, chainTx.Index, err)
                                nc.log.Info(msg)
                        } else {
-                               msg := fmt.Sprintf("HISTORY %s Block:%v 
Index:%v", color.GreenString("PROCESSED"), chainTx.Height, chainTx.Index)
+                               msg := fmt.Sprintf("[%v/%v] HISTORY %s Block:%v 
Index:%v", processedCount, totalCount, color.GreenString("PROCESSED"), 
chainTx.Height, chainTx.Index)
                                nc.log.Info(msg)
                        }
+                       processedCount++
 
                        if err := nc.updateProcessedUpToHeight(chainTx.Height, 
chainTx.Index); err != nil {
                                return err
                        }
+                       processedToHeight = chainTx.Height
+                       processedToIndex = chainTx.Index
 
                }
-               if currentPage*numPerPage > result.TotalCount {
+               if processedCount == totalToProcess {
                        break
                }
                currentPage++
        }
+       nc.log.Info("Process history complete")
        return nil
 }
 
@@ -312,17 +334,21 @@ func (nc *NodeConnector) processTXQueue(ctx 
context.Context, txQueue chan *api.B
        for {
                select {
                case chainTx := <-txQueue:
-
-                       if err := processFn(chainTx); err != nil {
-                               msg := fmt.Sprintf("TX %s Block:%v Index:%v 
Error:%v", color.RedString("FAILURE"), chainTx.Height, chainTx.Index, err)
-                               nc.log.Info(msg)
-                       } else {
-                               msg := fmt.Sprintf("TX %s Block:%v Index:%v 
Type:%v", color.GreenString("PROCESSED"), chainTx.Height, chainTx.Index, 
chainTx.Processor)
-                               nc.log.Info(msg)
-                       }
-                       if err := nc.updateProcessedUpToHeight(chainTx.Height, 
chainTx.Index); err != nil {
-                               return err
-                       }
+                       //nc.log.Info(("incoming tx"))
+                       go func() error {
+                               if err := processFn(chainTx); err != nil {
+                                       msg := fmt.Sprintf("TX %s Block:%v 
Index:%v Error:%v", color.RedString("FAILURE"), chainTx.Height, chainTx.Index, 
err)
+                                       nc.log.Info(msg)
+                               } else {
+                                       orderRef := chainTx.Tags["reference"]
+                                       msg := fmt.Sprintf("TX %s Block:%v 
Index:%v Type:%v Ref:%v", color.GreenString("PROCESSED"), chainTx.Height, 
chainTx.Index, chainTx.Processor, orderRef)
+                                       nc.log.Info(msg)
+                               }
+                               if err := 
nc.updateProcessedUpToHeight(chainTx.Height, chainTx.Index); err != nil {
+                                       return err
+                               }
+                               return nil
+                       }()
 
                        // TODO: store the last block height
                case <-ctx.Done():
diff --git a/r4 b/r4
new file mode 100755
index 0000000..6470df2
--- /dev/null
+++ b/r4
@@ -0,0 +1,5 @@
+GO111MODULE=on go build -o target/milagro 
github.com/apache/incubator-milagro-dta/cmd/service
+export MILAGRO_HOME=~/.milagro4
+target/milagro daemon
+
+

Reply via email to