From 897ee6935a3ccbdbfc3015320e07cdc3b3308218 Mon Sep 17 00:00:00 2001 From: shaozhuguang Date: Thu, 4 Apr 2019 17:06:33 +0800 Subject: [PATCH 01/10] Modify license files, readme files, and other configurations, and generate 0.8.3.RELEASE versions --- LICENSE | 190 +++++++++++++++++- README.md | 6 +- source/base/pom.xml | 2 +- source/binary-proto/pom.xml | 2 +- source/consensus/consensus-bftsmart/pom.xml | 2 +- source/consensus/consensus-framework/pom.xml | 2 +- source/consensus/consensus-mq/pom.xml | 2 +- source/consensus/pom.xml | 2 +- source/contract/contract-framework/pom.xml | 2 +- source/contract/contract-jvm/pom.xml | 2 +- source/contract/contract-maven-plugin/pom.xml | 4 +- source/contract/contract-model/pom.xml | 2 +- source/contract/pom.xml | 2 +- source/crypto/crypto-adv/pom.xml | 2 +- source/crypto/crypto-framework/pom.xml | 2 +- source/crypto/pom.xml | 2 +- source/deployment/deployment-gateway/pom.xml | 2 +- .../src/main/resources/config/gateway.conf | 18 +- .../src/main/resources/scripts/startup.sh | 2 +- source/deployment/deployment-peer/pom.xml | 2 +- .../resources/config/init/bftsmart.config | 8 +- .../resources/config/init/ledger-init.conf | 18 +- .../src/main/resources/config/init/local.conf | 12 +- .../src/main/resources/scripts/startup.sh | 2 +- source/deployment/pom.xml | 2 +- source/gateway/pom.xml | 2 +- source/ledger/ledger-core/pom.xml | 2 +- source/ledger/ledger-model/pom.xml | 2 +- source/ledger/pom.xml | 2 +- source/peer/pom.xml | 2 +- source/pom.xml | 2 +- source/runtime/pom.xml | 2 +- source/runtime/runtime-context/pom.xml | 2 +- source/runtime/runtime-modular-booter/pom.xml | 2 +- source/runtime/runtime-modular/pom.xml | 2 +- source/sdk/pom.xml | 2 +- source/sdk/sdk-base/pom.xml | 2 +- source/sdk/sdk-client/pom.xml | 2 +- source/sdk/sdk-samples/pom.xml | 2 +- source/storage/pom.xml | 2 +- source/storage/storage-composite/pom.xml | 2 +- source/storage/storage-redis/pom.xml | 2 +- source/storage/storage-rocksdb/pom.xml | 2 +- source/storage/storage-service/pom.xml | 2 +- source/test/pom.xml | 2 +- source/test/test-consensus-client/pom.xml | 2 +- source/test/test-consensus-node/pom.xml | 4 +- source/test/test-integration/pom.xml | 2 +- source/test/test-ledger-core/pom.xml | 2 +- source/tools/pom.xml | 2 +- source/tools/tools-capability/pom.xml | 2 +- source/tools/tools-initializer-booter/pom.xml | 2 +- source/tools/tools-initializer/pom.xml | 2 +- source/tools/tools-keygen-booter/pom.xml | 2 +- source/tools/tools-keygen/pom.xml | 2 +- source/utils/pom.xml | 2 +- source/utils/utils-common/pom.xml | 2 +- source/utils/utils-http/pom.xml | 2 +- source/utils/utils-serialize/pom.xml | 2 +- source/utils/utils-test/pom.xml | 2 +- source/utils/utils-web-server/pom.xml | 2 +- source/utils/utils-web/pom.xml | 2 +- 62 files changed, 281 insertions(+), 87 deletions(-) diff --git a/LICENSE b/LICENSE index f225091e..a333417e 100644 --- a/LICENSE +++ b/LICENSE @@ -1,10 +1,198 @@ +Apache License +Version 2.0, January 2004 +http://www.apache.org/licenses/ + +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + +1. Definitions. + +"License" shall mean the terms and conditions for use, reproduction, +and distribution as defined by Sections 1 through 9 of this document. + +"Licensor" shall mean the copyright owner or entity authorized by +the copyright owner that is granting the License. + +"Legal Entity" shall mean the union of the acting entity and all +other entities that control, are controlled by, or are under common +control with that entity. For the purposes of this definition, +"control" means (i) the power, direct or indirect, to cause the +direction or management of such entity, whether by contract or +otherwise, or (ii) ownership of fifty percent (50%) or more of the +outstanding shares, or (iii) beneficial ownership of such entity. + +"You" (or "Your") shall mean an individual or Legal Entity +exercising permissions granted by this License. + +"Source" form shall mean the preferred form for making modifications, +including but not limited to software source code, documentation +source, and configuration files. + +"Object" form shall mean any form resulting from mechanical +transformation or translation of a Source form, including but +not limited to compiled object code, generated documentation, +and conversions to other media types. + +"Work" shall mean the work of authorship, whether in Source or +Object form, made available under the License, as indicated by a +copyright notice that is included in or attached to the work +(an example is provided in the Appendix below). + +"Derivative Works" shall mean any work, whether in Source or Object +form, that is based on (or derived from) the Work and for which the +editorial revisions, annotations, elaborations, or other modifications +represent, as a whole, an original work of authorship. For the purposes +of this License, Derivative Works shall not include works that remain +separable from, or merely link (or bind by name) to the interfaces of, +the Work and Derivative Works thereof. + +"Contribution" shall mean any work of authorship, including +the original version of the Work and any modifications or additions +to that Work or Derivative Works thereof, that is intentionally +submitted to Licensor for inclusion in the Work by the copyright owner +or by an individual or Legal Entity authorized to submit on behalf of +the copyright owner. For the purposes of this definition, "submitted" +means any form of electronic, verbal, or written communication sent +to the Licensor or its representatives, including but not limited to +communication on electronic mailing lists, source code control systems, +and issue tracking systems that are managed by, or on behalf of, the +Licensor for the purpose of discussing and improving the Work, but +excluding communication that is conspicuously marked or otherwise +designated in writing by the copyright owner as "Not a Contribution." + +"Contributor" shall mean Licensor and any individual or Legal Entity +on behalf of whom a Contribution has been received by Licensor and +subsequently incorporated within the Work. + +2. Grant of Copyright License. Subject to the terms and conditions of +this License, each Contributor hereby grants to You a perpetual, +worldwide, non-exclusive, no-charge, royalty-free, irrevocable +copyright license to reproduce, prepare Derivative Works of, +publicly display, publicly perform, sublicense, and distribute the +Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. Subject to the terms and conditions of +this License, each Contributor hereby grants to You a perpetual, +worldwide, non-exclusive, no-charge, royalty-free, irrevocable +(except as stated in this section) patent license to make, have made, +use, offer to sell, sell, import, and otherwise transfer the Work, +where such license applies only to those patent claims licensable +by such Contributor that are necessarily infringed by their +Contribution(s) alone or by combination of their Contribution(s) +with the Work to which such Contribution(s) was submitted. If You +institute patent litigation against any entity (including a +cross-claim or counterclaim in a lawsuit) alleging that the Work +or a Contribution incorporated within the Work constitutes direct +or contributory patent infringement, then any patent licenses +granted to You under this License for that Work shall terminate +as of the date such litigation is filed. + +4. Redistribution. You may reproduce and distribute copies of the +Work or Derivative Works thereof in any medium, with or without +modifications, and in Source or Object form, provided that You +meet the following conditions: + +(a) You must give any other recipients of the Work or +Derivative Works a copy of this License; and + +(b) You must cause any modified files to carry prominent notices +stating that You changed the files; and + +(c) You must retain, in the Source form of any Derivative Works +that You distribute, all copyright, patent, trademark, and +attribution notices from the Source form of the Work, +excluding those notices that do not pertain to any part of +the Derivative Works; and + +(d) If the Work includes a "NOTICE" text file as part of its +distribution, then any Derivative Works that You distribute must +include a readable copy of the attribution notices contained +within such NOTICE file, excluding those notices that do not +pertain to any part of the Derivative Works, in at least one +of the following places: within a NOTICE text file distributed +as part of the Derivative Works; within the Source form or +documentation, if provided along with the Derivative Works; or, +within a display generated by the Derivative Works, if and +wherever such third-party notices normally appear. The contents +of the NOTICE file are for informational purposes only and +do not modify the License. You may add Your own attribution +notices within Derivative Works that You distribute, alongside +or as an addendum to the NOTICE text from the Work, provided +that such additional attribution notices cannot be construed +as modifying the License. + +You may add Your own copyright statement to Your modifications and +may provide additional or different license terms and conditions +for use, reproduction, or distribution of Your modifications, or +for any such Derivative Works as a whole, provided Your use, +reproduction, and distribution of the Work otherwise complies with +the conditions stated in this License. + +5. Submission of Contributions. Unless You explicitly state otherwise, +any Contribution intentionally submitted for inclusion in the Work +by You to the Licensor shall be under the terms and conditions of +this License, without any additional terms or conditions. +Notwithstanding the above, nothing herein shall supersede or modify +the terms of any separate license agreement you may have executed +with Licensor regarding such Contributions. + +6. Trademarks. This License does not grant permission to use the trade +names, trademarks, service marks, or product names of the Licensor, +except as required for reasonable and customary use in describing the +origin of the Work and reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. Unless required by applicable law or +agreed to in writing, Licensor provides the Work (and each +Contributor provides its Contributions) on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +implied, including, without limitation, any warranties or conditions +of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A +PARTICULAR PURPOSE. You are solely responsible for determining the +appropriateness of using or redistributing the Work and assume any +risks associated with Your exercise of permissions under this License. + +8. Limitation of Liability. In no event and under no legal theory, +whether in tort (including negligence), contract, or otherwise, +unless required by applicable law (such as deliberate and grossly +negligent acts) or agreed to in writing, shall any Contributor be +liable to You for damages, including any direct, indirect, special, +incidental, or consequential damages of any character arising as a +result of this License or out of the use or inability to use the +Work (including but not limited to damages for loss of goodwill, +work stoppage, computer failure or malfunction, or any and all +other commercial damages or losses), even if such Contributor +has been advised of the possibility of such damages. + +9. Accepting Warranty or Additional Liability. While redistributing +the Work or Derivative Works thereof, You may choose to offer, +and charge a fee for, acceptance of support, warranty, indemnity, +or other liability obligations and/or rights consistent with this +License. However, in accepting such obligations, You may act only +on Your own behalf and on Your sole responsibility, not on behalf +of any other Contributor, and only if You agree to indemnify, +defend, and hold each Contributor harmless for any liability +incurred by, or claims asserted against, such Contributor by reason +of your accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + +To apply the Apache License to your work, attach the following +boilerplate notice, with the fields enclosed by brackets "[]" +replaced with your own identifying information. (Don't include +the brackets!) The text should be enclosed in the appropriate +comment syntax for the file format. We also recommend that a +file or class name and description of purpose be included on the +same "printed page" as the copyright notice for easier +identification within third-party archives. + Copyright 2019 Jingdong Digits Technology Holding Co., Ltd. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at - http://www.apache.org/licenses/LICENSE-2.0 +http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, diff --git a/README.md b/README.md index 47382e47..c498e807 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,9 @@ [TOC] -#JD区块链 0.8.3-SNAPSHOT +#JD区块链 + + +[![License](https://img.shields.io/badge/license-Apache%202-4EB1BA.svg)](https://www.apache.org/licenses/LICENSE-2.0.html) + ------------------------------------------------------------------------ ### 版本修订历史 diff --git a/source/base/pom.xml b/source/base/pom.xml index e010425a..d347bcfa 100644 --- a/source/base/pom.xml +++ b/source/base/pom.xml @@ -5,7 +5,7 @@ com.jd.blockchain jdchain-root - 0.8.2.RELEASE + 0.8.3.RELEASE base \ No newline at end of file diff --git a/source/binary-proto/pom.xml b/source/binary-proto/pom.xml index 63ce3ffc..0daf1d37 100644 --- a/source/binary-proto/pom.xml +++ b/source/binary-proto/pom.xml @@ -5,7 +5,7 @@ com.jd.blockchain jdchain-root - 0.8.2.RELEASE + 0.8.3.RELEASE binary-proto diff --git a/source/consensus/consensus-bftsmart/pom.xml b/source/consensus/consensus-bftsmart/pom.xml index ddf7b73a..2cda1a83 100644 --- a/source/consensus/consensus-bftsmart/pom.xml +++ b/source/consensus/consensus-bftsmart/pom.xml @@ -5,7 +5,7 @@ com.jd.blockchain consensus - 0.8.2.RELEASE + 0.8.3.RELEASE consensus-bftsmart diff --git a/source/consensus/consensus-framework/pom.xml b/source/consensus/consensus-framework/pom.xml index 53f87df7..96320b84 100644 --- a/source/consensus/consensus-framework/pom.xml +++ b/source/consensus/consensus-framework/pom.xml @@ -5,7 +5,7 @@ com.jd.blockchain consensus - 0.8.2.RELEASE + 0.8.3.RELEASE consensus-framework diff --git a/source/consensus/consensus-mq/pom.xml b/source/consensus/consensus-mq/pom.xml index 7e5a6a0b..957e14e7 100644 --- a/source/consensus/consensus-mq/pom.xml +++ b/source/consensus/consensus-mq/pom.xml @@ -5,7 +5,7 @@ com.jd.blockchain consensus - 0.8.2.RELEASE + 0.8.3.RELEASE consensus-mq diff --git a/source/consensus/pom.xml b/source/consensus/pom.xml index c7b8c41e..a26ca1c8 100644 --- a/source/consensus/pom.xml +++ b/source/consensus/pom.xml @@ -5,7 +5,7 @@ com.jd.blockchain jdchain-root - 0.8.2.RELEASE + 0.8.3.RELEASE consensus pom diff --git a/source/contract/contract-framework/pom.xml b/source/contract/contract-framework/pom.xml index be2b88ab..bdf57bfd 100644 --- a/source/contract/contract-framework/pom.xml +++ b/source/contract/contract-framework/pom.xml @@ -5,7 +5,7 @@ com.jd.blockchain contract - 0.8.2.RELEASE + 0.8.3.RELEASE contract-framework diff --git a/source/contract/contract-jvm/pom.xml b/source/contract/contract-jvm/pom.xml index 7c36748a..b7d4faeb 100644 --- a/source/contract/contract-jvm/pom.xml +++ b/source/contract/contract-jvm/pom.xml @@ -5,7 +5,7 @@ com.jd.blockchain contract - 0.8.2.RELEASE + 0.8.3.RELEASE contract-jvm diff --git a/source/contract/contract-maven-plugin/pom.xml b/source/contract/contract-maven-plugin/pom.xml index 49a7f3f8..b6277d9f 100644 --- a/source/contract/contract-maven-plugin/pom.xml +++ b/source/contract/contract-maven-plugin/pom.xml @@ -5,17 +5,17 @@ com.jd.blockchain contract - 0.8.2.RELEASE + 0.8.3.RELEASE contract-maven-plugin maven-plugin + ${parent.version} ${parent.version} 4.12 - 0.8.2.RELEASE junit diff --git a/source/contract/contract-model/pom.xml b/source/contract/contract-model/pom.xml index 880c446e..19d0bc08 100644 --- a/source/contract/contract-model/pom.xml +++ b/source/contract/contract-model/pom.xml @@ -5,7 +5,7 @@ com.jd.blockchain contract - 0.8.2.RELEASE + 0.8.3.RELEASE contract-model diff --git a/source/contract/pom.xml b/source/contract/pom.xml index ba9ac007..0c648aad 100644 --- a/source/contract/pom.xml +++ b/source/contract/pom.xml @@ -4,7 +4,7 @@ com.jd.blockchain jdchain-root - 0.8.2.RELEASE + 0.8.3.RELEASE contract pom diff --git a/source/crypto/crypto-adv/pom.xml b/source/crypto/crypto-adv/pom.xml index ac213acd..c17ca3f2 100644 --- a/source/crypto/crypto-adv/pom.xml +++ b/source/crypto/crypto-adv/pom.xml @@ -3,7 +3,7 @@ com.jd.blockchain crypto - 0.8.2.RELEASE + 0.8.3.RELEASE crypto-adv diff --git a/source/crypto/crypto-framework/pom.xml b/source/crypto/crypto-framework/pom.xml index 7816a2b9..ad90cb9a 100644 --- a/source/crypto/crypto-framework/pom.xml +++ b/source/crypto/crypto-framework/pom.xml @@ -5,7 +5,7 @@ com.jd.blockchain crypto - 0.8.2.RELEASE + 0.8.3.RELEASE crypto-framework diff --git a/source/crypto/pom.xml b/source/crypto/pom.xml index 15e92fd9..5bfc5c49 100644 --- a/source/crypto/pom.xml +++ b/source/crypto/pom.xml @@ -5,7 +5,7 @@ com.jd.blockchain jdchain-root - 0.8.2.RELEASE + 0.8.3.RELEASE crypto pom diff --git a/source/deployment/deployment-gateway/pom.xml b/source/deployment/deployment-gateway/pom.xml index 7dda468f..8ea1fbdd 100644 --- a/source/deployment/deployment-gateway/pom.xml +++ b/source/deployment/deployment-gateway/pom.xml @@ -5,7 +5,7 @@ com.jd.blockchain deployment - 0.8.2.RELEASE + 0.8.3.RELEASE deployment-gateway diff --git a/source/deployment/deployment-gateway/src/main/resources/config/gateway.conf b/source/deployment/deployment-gateway/src/main/resources/config/gateway.conf index 79902cc6..d2913069 100644 --- a/source/deployment/deployment-gateway/src/main/resources/config/gateway.conf +++ b/source/deployment/deployment-gateway/src/main/resources/config/gateway.conf @@ -1,28 +1,30 @@ #网关的HTTP服务地址; -http.host=127.0.0.1 +http.host=0.0.0.0 #网关的HTTP服务端口; http.port=8081 #网关的HTTP服务上下文路径,可选; #http.context-path= -#共识节点的服务地址; +#共识节点的服务地址(与该网关节点连接的Peer节点的IP地址); peer.host=127.0.0.1 -#共识节点的服务端口; +#共识节点的服务端口(与该网关节点连接的Peer节点的端口); peer.port=7080 #共识节点的服务是否启用安全证书; peer.secure=false #共识节点的服务提供解析器 +#BftSmart共识Provider:com.jd.blockchain.consensus.bftsmart.BftsmartConsensusProvider +#简单消息共识Provider:com.jd.blockchain.consensus.mq.MsgQueueConsensusProvider peer.providers=com.jd.blockchain.consensus.bftsmart.BftsmartConsensusProvider -#数据检索服务对应URL +#数据检索服务对应URL,格式:http://{ip}:{port},例如:http://127.0.0.1:10001 #若该值不配置或配置不正确,则浏览器模糊查询部分无法正常显示 -data.retrieval.url=http://192.168.1.1:10001 +data.retrieval.url=http://127.0.0.1:10001 #默认公钥的内容(Base58编码数据); -keys.default.pubkey=endPsK36koyFr1D245Sa9j83vt6pZUdFBJoJRB3xAsWM6cwhRbna +keys.default.pubkey= #默认私钥的路径;在 pk-path 和 pk 之间必须设置其一; keys.default.privkey-path= #默认私钥的内容(加密的Base58编码数据);在 pk-path 和 pk 之间必须设置其一; -keys.default.privkey=177gjsj5PHeCpbAtJE7qnbmhuZMHAEKuMsd45zHkv8F8AWBvTBbff8yRKdCyT3kwrmAjSnY +keys.default.privkey= #默认私钥的解码密码; -keys.default.privkey-password=DYu3G8aGTMBW1WrTw76zxQJQU4DHLw9MLyy7peG4LKkY \ No newline at end of file +keys.default.privkey-password= \ No newline at end of file diff --git a/source/deployment/deployment-gateway/src/main/resources/scripts/startup.sh b/source/deployment/deployment-gateway/src/main/resources/scripts/startup.sh index eecb9daf..db75a6ad 100644 --- a/source/deployment/deployment-gateway/src/main/resources/scripts/startup.sh +++ b/source/deployment/deployment-gateway/src/main/resources/scripts/startup.sh @@ -5,5 +5,5 @@ GATEWAY=$(ls $HOME/lib | grep deployment-gateway-) if [ ! -n "$GATEWAY" ]; then echo "GateWay Is Null !!!" else - nohup java -jar -server $HOME/lib/$GATEWAY -c $HOME/config/gateway.conf -sp $HOME/config/application.properties $* > gw.out 2>&1 & + nohup java -jar -server $HOME/lib/$GATEWAY -c $HOME/config/gateway.conf $* > gw.out 2>&1 & fi \ No newline at end of file diff --git a/source/deployment/deployment-peer/pom.xml b/source/deployment/deployment-peer/pom.xml index fb4f6a79..b4635fd9 100644 --- a/source/deployment/deployment-peer/pom.xml +++ b/source/deployment/deployment-peer/pom.xml @@ -5,7 +5,7 @@ com.jd.blockchain deployment - 0.8.2.RELEASE + 0.8.3.RELEASE deployment-peer diff --git a/source/deployment/deployment-peer/src/main/resources/config/init/bftsmart.config b/source/deployment/deployment-peer/src/main/resources/config/init/bftsmart.config index 99bcff8d..8c2ba5af 100644 --- a/source/deployment/deployment-peer/src/main/resources/config/init/bftsmart.config +++ b/source/deployment/deployment-peer/src/main/resources/config/init/bftsmart.config @@ -28,7 +28,7 @@ system.block.maxdelay=500 ###### #Consensus Participant0 ###### ############################################ -system.server.0.pubkey=endPsK36koyFr1D245Sa9j83vt6pZUdFBJoJRB3xAsWM6cwhRbna +system.server.0.pubkey= system.server.0.network.host=127.0.0.1 system.server.0.network.port=16000 system.server.0.network.secure=false @@ -37,7 +37,7 @@ system.server.0.network.secure=false ###### #Consensus Participant1 ###### ############################################ -system.server.1.pubkey=endPsK36sC5JdPCDPDAXUwZtS3sxEmqEhFcC4whayAsTTh8Z6eoZ +system.server.1.pubkey= system.server.1.network.host=127.0.0.1 system.server.1.network.port=16010 system.server.1.network.secure=false @@ -46,7 +46,7 @@ system.server.1.network.secure=false ###### #Consensus Participant2 ###### ############################################ -system.server.2.pubkey=endPsK36jEG281HMHeh6oSqzqLkT95DTnCM6REDURjdb2c67uR3R +system.server.2.pubkey= system.server.2.network.host=127.0.0.1 system.server.2.network.port=16020 system.server.2.network.secure=false @@ -55,7 +55,7 @@ system.server.2.network.secure=false ###### #Consensus Participant3 ###### ############################################ -system.server.3.pubkey=endPsK36nse1dck4uF19zPvAMijCV336Y3zWdgb4rQG8QoRj5ktR +system.server.3.pubkey= system.server.3.network.host=127.0.0.1 system.server.3.network.port=16030 system.server.3.network.secure=false diff --git a/source/deployment/deployment-peer/src/main/resources/config/init/ledger-init.conf b/source/deployment/deployment-peer/src/main/resources/config/init/ledger-init.conf index a9e8134c..4e84269b 100644 --- a/source/deployment/deployment-peer/src/main/resources/config/init/ledger-init.conf +++ b/source/deployment/deployment-peer/src/main/resources/config/init/ledger-init.conf @@ -8,12 +8,12 @@ ledger.seed=932dfe23-fe23232f-283f32fa-dd32aa76-8322ca2f-56236cda-7136b322-cb323 cons_parti.count=4 -#第0个参与方的名称 -cons_parti.0.name=xx-0.com +#第0个参与方的名称(不同参与方名称不能相同) +cons_parti.0.name= #第0个参与方的公钥文件路径 cons_parti.0.pubkey-path= #第0个参与方的公钥内容(由keygen工具生成),此参数优先于 pubkey-path 参数 -cons_parti.0.pubkey=endPsK36koyFr1D245Sa9j83vt6pZUdFBJoJRB3xAsWM6cwhRbna +cons_parti.0.pubkey= #第0个参与方的账本初始服务的主机 cons_parti.0.initializer.host=127.0.0.1 #第0个参与方的账本初始服务的端口 @@ -23,11 +23,11 @@ cons_parti.0.initializer.secure=false #第1个参与方的名称 -cons_parti.1.name=xx-1.com +cons_parti.1.name= #第1个参与方的公钥文件路径 cons_parti.1.pubkey-path= #第1个参与方的公钥内容(由keygen工具生成),此参数优先于 pubkey-path 参数 -cons_parti.1.pubkey=endPsK36sC5JdPCDPDAXUwZtS3sxEmqEhFcC4whayAsTTh8Z6eoZ +cons_parti.1.pubkey= #第1个参与方的账本初始服务的主机 cons_parti.1.initializer.host=127.0.0.1 #第1个参与方的账本初始服务的端口 @@ -37,11 +37,11 @@ cons_parti.1.initializer.secure=false #第2个参与方的名称 -cons_parti.2.name=xx-2.com +cons_parti.2.name= #第2个参与方的公钥文件路径 cons_parti.2.pubkey-path= #第2个参与方的公钥内容(由keygen工具生成),此参数优先于 pubkey-path 参数 -cons_parti.2.pubkey=endPsK36jEG281HMHeh6oSqzqLkT95DTnCM6REDURjdb2c67uR3R +cons_parti.2.pubkey= #第2个参与方的账本初始服务的主机 cons_parti.2.initializer.host=127.0.0.1 #第2个参与方的账本初始服务的端口 @@ -51,11 +51,11 @@ cons_parti.2.initializer.secure=false #第3个参与方的名称 -cons_parti.3.name=xx-3.com +cons_parti.3.name= #第3个参与方的公钥文件路径 cons_parti.3.pubkey-path= #第3个参与方的公钥内容(由keygen工具生成),此参数优先于 pubkey-path 参数 -cons_parti.3.pubkey=endPsK36nse1dck4uF19zPvAMijCV336Y3zWdgb4rQG8QoRj5ktR +cons_parti.3.pubkey= #第3个参与方的账本初始服务的主机 cons_parti.3.initializer.host=127.0.0.1 #第3个参与方的账本初始服务的端口 diff --git a/source/deployment/deployment-peer/src/main/resources/config/init/local.conf b/source/deployment/deployment-peer/src/main/resources/config/init/local.conf index a5fcad37..b182823e 100644 --- a/source/deployment/deployment-peer/src/main/resources/config/init/local.conf +++ b/source/deployment/deployment-peer/src/main/resources/config/init/local.conf @@ -2,22 +2,22 @@ local.parti.id=0 #当前参与方的公钥 -local.parti.pubkey=endPsK36koyFr1D245Sa9j83vt6pZUdFBJoJRB3xAsWM6cwhRbna +local.parti.pubkey= #当前参与方的私钥(密文编码) -local.parti.privkey=177gjsj5PHeCpbAtJE7qnbmhuZMHAEKuMsd45zHkv8F8AWBvTBbff8yRKdCyT3kwrmAjSnY +local.parti.privkey= #当前参与方的私钥解密密钥(原始口令的一次哈希,Base58格式),如果不设置,则启动过程中需要从控制台输入 -local.parti.pwd=DYu3G8aGTMBW1WrTw76zxQJQU4DHLw9MLyy7peG4LKkY +local.parti.pwd= #账本初始化完成后生成的"账本绑定配置文件"的输出目录 #推荐使用绝对路径,相对路径以当前文件(local.conf)所在目录为基准 ledger.binding.out=../ #账本数据库的连接字符 -#rocksdb数据库连接格式:rocksdb://{path} -#redis数据库连接格式:redis://{ip}:{prot}/{db} -ledger.db.uri=rocksdb:///export/App08/peer/rocks.db/rocksdb0.db +#rocksdb数据库连接格式:rocksdb://{path},例如:rocksdb:///export/App08/peer/rocks.db/rocksdb0.db +#redis数据库连接格式:redis://{ip}:{prot}/{db},例如:redis://127.0.0.1:6379/0 +ledger.db.uri= #账本数据库的连接口令 ledger.db.pwd= diff --git a/source/deployment/deployment-peer/src/main/resources/scripts/startup.sh b/source/deployment/deployment-peer/src/main/resources/scripts/startup.sh index 4318fdb0..371b8d78 100644 --- a/source/deployment/deployment-peer/src/main/resources/scripts/startup.sh +++ b/source/deployment/deployment-peer/src/main/resources/scripts/startup.sh @@ -5,5 +5,5 @@ PEER=$(ls $HOME/system | grep deployment-peer-) if [ ! -n "$PEER" ]; then echo "Peer Is Null !!!" else - nohup java -jar -server -Xmx2g -Xms2g $HOME/system/$PEER -home=$HOME -c $HOME/config/init/mq/ledger-binding.conf -p 7080 $* & + nohup java -jar -server -Xmx2g -Xms2g $HOME/system/$PEER -home=$HOME -c $HOME/config/ledger-binding.conf -p 7080 $* & fi \ No newline at end of file diff --git a/source/deployment/pom.xml b/source/deployment/pom.xml index 4270f809..4448d21d 100644 --- a/source/deployment/pom.xml +++ b/source/deployment/pom.xml @@ -5,7 +5,7 @@ com.jd.blockchain jdchain-root - 0.8.2.RELEASE + 0.8.3.RELEASE deployment pom diff --git a/source/gateway/pom.xml b/source/gateway/pom.xml index 42e07bbc..15f2f248 100644 --- a/source/gateway/pom.xml +++ b/source/gateway/pom.xml @@ -5,7 +5,7 @@ com.jd.blockchain jdchain-root - 0.8.2.RELEASE + 0.8.3.RELEASE gateway diff --git a/source/ledger/ledger-core/pom.xml b/source/ledger/ledger-core/pom.xml index bd23883e..dbdde5a2 100644 --- a/source/ledger/ledger-core/pom.xml +++ b/source/ledger/ledger-core/pom.xml @@ -5,7 +5,7 @@ com.jd.blockchain ledger - 0.8.2.RELEASE + 0.8.3.RELEASE ledger-core diff --git a/source/ledger/ledger-model/pom.xml b/source/ledger/ledger-model/pom.xml index 7a1522e1..2fb477cc 100644 --- a/source/ledger/ledger-model/pom.xml +++ b/source/ledger/ledger-model/pom.xml @@ -6,7 +6,7 @@ com.jd.blockchain ledger - 0.8.2.RELEASE + 0.8.3.RELEASE ledger-model diff --git a/source/ledger/pom.xml b/source/ledger/pom.xml index 0af7101b..cb67e9c2 100644 --- a/source/ledger/pom.xml +++ b/source/ledger/pom.xml @@ -5,7 +5,7 @@ com.jd.blockchain jdchain-root - 0.8.2.RELEASE + 0.8.3.RELEASE ledger pom diff --git a/source/peer/pom.xml b/source/peer/pom.xml index 476a201c..9bf7bf76 100644 --- a/source/peer/pom.xml +++ b/source/peer/pom.xml @@ -5,7 +5,7 @@ com.jd.blockchain jdchain-root - 0.8.2.RELEASE + 0.8.3.RELEASE peer diff --git a/source/pom.xml b/source/pom.xml index 89f926f5..92da4ac7 100644 --- a/source/pom.xml +++ b/source/pom.xml @@ -16,7 +16,7 @@ com.jd.blockchain jdchain-root - 0.8.2.RELEASE + 0.8.3.RELEASE pom jdchain diff --git a/source/runtime/pom.xml b/source/runtime/pom.xml index e17377a2..17be7040 100644 --- a/source/runtime/pom.xml +++ b/source/runtime/pom.xml @@ -5,7 +5,7 @@ com.jd.blockchain jdchain-root - 0.8.2.RELEASE + 0.8.3.RELEASE runtime pom diff --git a/source/runtime/runtime-context/pom.xml b/source/runtime/runtime-context/pom.xml index 95bf6e1b..7cdb25a3 100644 --- a/source/runtime/runtime-context/pom.xml +++ b/source/runtime/runtime-context/pom.xml @@ -5,7 +5,7 @@ com.jd.blockchain runtime - 0.8.2.RELEASE + 0.8.3.RELEASE runtime-context diff --git a/source/runtime/runtime-modular-booter/pom.xml b/source/runtime/runtime-modular-booter/pom.xml index a02e738c..9b5b22db 100644 --- a/source/runtime/runtime-modular-booter/pom.xml +++ b/source/runtime/runtime-modular-booter/pom.xml @@ -5,7 +5,7 @@ com.jd.blockchain runtime - 0.8.2.RELEASE + 0.8.3.RELEASE runtime-modular-booter \ No newline at end of file diff --git a/source/runtime/runtime-modular/pom.xml b/source/runtime/runtime-modular/pom.xml index 1354ce0a..80b9fa18 100644 --- a/source/runtime/runtime-modular/pom.xml +++ b/source/runtime/runtime-modular/pom.xml @@ -5,7 +5,7 @@ com.jd.blockchain runtime - 0.8.2.RELEASE + 0.8.3.RELEASE runtime-modular diff --git a/source/sdk/pom.xml b/source/sdk/pom.xml index 67a240cc..e6b001b9 100644 --- a/source/sdk/pom.xml +++ b/source/sdk/pom.xml @@ -4,7 +4,7 @@ com.jd.blockchain jdchain-root - 0.8.2.RELEASE + 0.8.3.RELEASE sdk pom diff --git a/source/sdk/sdk-base/pom.xml b/source/sdk/sdk-base/pom.xml index e09d8150..d22a71f4 100644 --- a/source/sdk/sdk-base/pom.xml +++ b/source/sdk/sdk-base/pom.xml @@ -4,7 +4,7 @@ com.jd.blockchain sdk - 0.8.2.RELEASE + 0.8.3.RELEASE sdk-base diff --git a/source/sdk/sdk-client/pom.xml b/source/sdk/sdk-client/pom.xml index 14b5c23c..6d13514c 100644 --- a/source/sdk/sdk-client/pom.xml +++ b/source/sdk/sdk-client/pom.xml @@ -4,7 +4,7 @@ com.jd.blockchain sdk - 0.8.2.RELEASE + 0.8.3.RELEASE sdk-client diff --git a/source/sdk/sdk-samples/pom.xml b/source/sdk/sdk-samples/pom.xml index 999ba911..a480ec8f 100644 --- a/source/sdk/sdk-samples/pom.xml +++ b/source/sdk/sdk-samples/pom.xml @@ -4,7 +4,7 @@ com.jd.blockchain sdk - 0.8.2.RELEASE + 0.8.3.RELEASE sdk-samples diff --git a/source/storage/pom.xml b/source/storage/pom.xml index 30d5b132..ac83af58 100644 --- a/source/storage/pom.xml +++ b/source/storage/pom.xml @@ -3,7 +3,7 @@ com.jd.blockchain jdchain-root - 0.8.2.RELEASE + 0.8.3.RELEASE storage pom diff --git a/source/storage/storage-composite/pom.xml b/source/storage/storage-composite/pom.xml index 975e29d7..14e394c2 100644 --- a/source/storage/storage-composite/pom.xml +++ b/source/storage/storage-composite/pom.xml @@ -4,7 +4,7 @@ com.jd.blockchain storage - 0.8.2.RELEASE + 0.8.3.RELEASE storage-composite diff --git a/source/storage/storage-redis/pom.xml b/source/storage/storage-redis/pom.xml index abf14fb0..91368cad 100644 --- a/source/storage/storage-redis/pom.xml +++ b/source/storage/storage-redis/pom.xml @@ -4,7 +4,7 @@ com.jd.blockchain storage - 0.8.2.RELEASE + 0.8.3.RELEASE storage-redis diff --git a/source/storage/storage-rocksdb/pom.xml b/source/storage/storage-rocksdb/pom.xml index 9ccef320..8565f1e2 100644 --- a/source/storage/storage-rocksdb/pom.xml +++ b/source/storage/storage-rocksdb/pom.xml @@ -5,7 +5,7 @@ com.jd.blockchain storage - 0.8.2.RELEASE + 0.8.3.RELEASE storage-rocksdb diff --git a/source/storage/storage-service/pom.xml b/source/storage/storage-service/pom.xml index 255bd759..5f4ba268 100644 --- a/source/storage/storage-service/pom.xml +++ b/source/storage/storage-service/pom.xml @@ -5,7 +5,7 @@ com.jd.blockchain storage - 0.8.2.RELEASE + 0.8.3.RELEASE storage-service diff --git a/source/test/pom.xml b/source/test/pom.xml index f26c27e0..9950c36c 100644 --- a/source/test/pom.xml +++ b/source/test/pom.xml @@ -5,7 +5,7 @@ com.jd.blockchain jdchain-root - 0.8.2.RELEASE + 0.8.3.RELEASE test pom diff --git a/source/test/test-consensus-client/pom.xml b/source/test/test-consensus-client/pom.xml index c57a5b2c..48920002 100644 --- a/source/test/test-consensus-client/pom.xml +++ b/source/test/test-consensus-client/pom.xml @@ -5,7 +5,7 @@ com.jd.blockchain test - 0.8.2.RELEASE + 0.8.3.RELEASE test-consensus-client diff --git a/source/test/test-consensus-node/pom.xml b/source/test/test-consensus-node/pom.xml index dff4dc21..2ccdfd2d 100644 --- a/source/test/test-consensus-node/pom.xml +++ b/source/test/test-consensus-node/pom.xml @@ -5,7 +5,7 @@ com.jd.blockchain test - 0.8.2.RELEASE + 0.8.3.RELEASE test-consensus-node @@ -26,7 +26,7 @@ com.jd.blockchain consensus-bftsmart - 0.8.2.RELEASE + 0.8.3.RELEASE org.springframework.boot diff --git a/source/test/test-integration/pom.xml b/source/test/test-integration/pom.xml index 9aa3e873..212ab078 100644 --- a/source/test/test-integration/pom.xml +++ b/source/test/test-integration/pom.xml @@ -5,7 +5,7 @@ com.jd.blockchain test - 0.8.2.RELEASE + 0.8.3.RELEASE test-integration diff --git a/source/test/test-ledger-core/pom.xml b/source/test/test-ledger-core/pom.xml index bd8b83c1..f92fb1f6 100644 --- a/source/test/test-ledger-core/pom.xml +++ b/source/test/test-ledger-core/pom.xml @@ -5,7 +5,7 @@ com.jd.blockchain test - 0.8.2.RELEASE + 0.8.3.RELEASE test-ledger-core diff --git a/source/tools/pom.xml b/source/tools/pom.xml index d5986244..9f4f7eeb 100644 --- a/source/tools/pom.xml +++ b/source/tools/pom.xml @@ -5,7 +5,7 @@ com.jd.blockchain jdchain-root - 0.8.2.RELEASE + 0.8.3.RELEASE tools pom diff --git a/source/tools/tools-capability/pom.xml b/source/tools/tools-capability/pom.xml index 289fd670..619f3e7f 100644 --- a/source/tools/tools-capability/pom.xml +++ b/source/tools/tools-capability/pom.xml @@ -5,7 +5,7 @@ tools com.jd.blockchain - 0.8.2.RELEASE + 0.8.3.RELEASE 4.0.0 diff --git a/source/tools/tools-initializer-booter/pom.xml b/source/tools/tools-initializer-booter/pom.xml index 26bf0b36..490521d0 100644 --- a/source/tools/tools-initializer-booter/pom.xml +++ b/source/tools/tools-initializer-booter/pom.xml @@ -5,7 +5,7 @@ com.jd.blockchain tools - 0.8.2.RELEASE + 0.8.3.RELEASE tools-initializer-booter diff --git a/source/tools/tools-initializer/pom.xml b/source/tools/tools-initializer/pom.xml index d4fe5039..959a592f 100644 --- a/source/tools/tools-initializer/pom.xml +++ b/source/tools/tools-initializer/pom.xml @@ -5,7 +5,7 @@ com.jd.blockchain tools - 0.8.2.RELEASE + 0.8.3.RELEASE tools-initializer diff --git a/source/tools/tools-keygen-booter/pom.xml b/source/tools/tools-keygen-booter/pom.xml index c0e91f9a..50490e0e 100644 --- a/source/tools/tools-keygen-booter/pom.xml +++ b/source/tools/tools-keygen-booter/pom.xml @@ -5,7 +5,7 @@ com.jd.blockchain tools - 0.8.2.RELEASE + 0.8.3.RELEASE tools-keygen-booter diff --git a/source/tools/tools-keygen/pom.xml b/source/tools/tools-keygen/pom.xml index fa1755c9..752e9672 100644 --- a/source/tools/tools-keygen/pom.xml +++ b/source/tools/tools-keygen/pom.xml @@ -5,7 +5,7 @@ com.jd.blockchain tools - 0.8.2.RELEASE + 0.8.3.RELEASE tools-keygen diff --git a/source/utils/pom.xml b/source/utils/pom.xml index 42ae182d..6d7a2688 100644 --- a/source/utils/pom.xml +++ b/source/utils/pom.xml @@ -4,7 +4,7 @@ com.jd.blockchain jdchain-root - 0.8.2.RELEASE + 0.8.3.RELEASE utils pom diff --git a/source/utils/utils-common/pom.xml b/source/utils/utils-common/pom.xml index ce523d77..57785897 100644 --- a/source/utils/utils-common/pom.xml +++ b/source/utils/utils-common/pom.xml @@ -4,7 +4,7 @@ com.jd.blockchain utils - 0.8.2.RELEASE + 0.8.3.RELEASE utils-common diff --git a/source/utils/utils-http/pom.xml b/source/utils/utils-http/pom.xml index ef13d9e8..0a28b5a7 100644 --- a/source/utils/utils-http/pom.xml +++ b/source/utils/utils-http/pom.xml @@ -4,7 +4,7 @@ com.jd.blockchain utils - 0.8.2.RELEASE + 0.8.3.RELEASE diff --git a/source/utils/utils-serialize/pom.xml b/source/utils/utils-serialize/pom.xml index c8349fb3..b194f64b 100644 --- a/source/utils/utils-serialize/pom.xml +++ b/source/utils/utils-serialize/pom.xml @@ -4,7 +4,7 @@ com.jd.blockchain utils - 0.8.2.RELEASE + 0.8.3.RELEASE utils-serialize diff --git a/source/utils/utils-test/pom.xml b/source/utils/utils-test/pom.xml index 5a3f0fa3..f5ef47d0 100644 --- a/source/utils/utils-test/pom.xml +++ b/source/utils/utils-test/pom.xml @@ -4,7 +4,7 @@ com.jd.blockchain utils - 0.8.2.RELEASE + 0.8.3.RELEASE utils-test diff --git a/source/utils/utils-web-server/pom.xml b/source/utils/utils-web-server/pom.xml index 85cb5dfc..8b9b834d 100644 --- a/source/utils/utils-web-server/pom.xml +++ b/source/utils/utils-web-server/pom.xml @@ -4,7 +4,7 @@ com.jd.blockchain utils - 0.8.2.RELEASE + 0.8.3.RELEASE utils-web-server diff --git a/source/utils/utils-web/pom.xml b/source/utils/utils-web/pom.xml index 4368e4ed..dda28376 100644 --- a/source/utils/utils-web/pom.xml +++ b/source/utils/utils-web/pom.xml @@ -4,7 +4,7 @@ com.jd.blockchain utils - 0.8.2.RELEASE + 0.8.3.RELEASE utils-web From ab71089fa905f37b2b0bb2f5370cd478fccf0428 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=91=A8=E6=98=A5=E5=85=89?= <9943470+cg-zhou@users.noreply.github.com> Date: Wed, 17 Apr 2019 11:11:45 +0800 Subject: [PATCH 02/10] Update contract/README.MD style Update contract/README.MD style for github web view --- source/contract/README.MD | 39 ++++++++++++++++++++++----------------- 1 file changed, 22 insertions(+), 17 deletions(-) diff --git a/source/contract/README.MD b/source/contract/README.MD index 15b32c0d..9e940486 100644 --- a/source/contract/README.MD +++ b/source/contract/README.MD @@ -1,22 +1,27 @@ -合约相关说明 - -1.编译合约入口:ContractCompilerCmdTest.java; -2.账本调用合约测试入口:ContractEventSendOperationHandleTest.java; +### 合约相关说明 +1. 编译合约入口:ContractCompilerCmdTest.java; +2. 账本调用合约测试入口:ContractEventSendOperationHandleTest.java; +### 单元测试注意事项 使用ContractEventSendOperationHandleTest.java进行单元测试,注意事项: -1.设置合约使用PUB_CLASS_PATH、CORE_CLASS_PATH位置(sys-contract.properties); +1. 设置合约使用PUB_CLASS_PATH、CORE_CLASS_PATH位置(sys-contract.properties); PUB包在根目录中的contract-libs文件夹;core包需要编译来生成。具体如下: -1)进入contract-jar模块,执行maven命令:mvn clean assembly:assembly -2)生成的core包位于模块的target中的contract-jar-xxx所在的coreLib中; -3)将此coreLib目录作为CORE_CLASS_PATH指向的目录。 -2.编译生成合约压缩包,即执行:ContractCompilerCmdTest.java对应的mainTestOk(); + - 进入contract-jar模块,执行maven命令: + ``` + mvn clean assembly:assembly + ``` + - 生成的core包位于模块的target中的contract-jar-xxx所在的coreLib中; + - 将此coreLib目录作为CORE_CLASS_PATH指向的目录。 +2. 编译生成合约压缩包,即执行:ContractCompilerCmdTest.java对应的mainTestOk(); 在编译之前,修改sys-contract.properties文件的变量CONTRACT_FROM_PATH(合约源文件位置)、CONTRACT_SAVE_TO_PATH(合约保存位置)。 -3.在合约保存位置中可看到生成的压缩包:xxx.contract;然后执行 ContractEventSendOperationHandleTest.java测试用例test1()即可。 - -20180910版本改造 -1.在contract-jar中添加了mvn assembly处理逻辑,将合约用到的lib包全部放置其target/xxx/pubLib文件夹中,执行:mvn clean assembly:assembly -2.修改了sys-contract.properties文件,新增了CONTRACT_CLASS_LIBS参数,将CONTRACT_CLASS_PATH专用于存储路径,CONTRACT_CLASS_LIBS来存放所有的jar包; -3.删减了contract-libs文件夹中需要动态生成的jar; - - +3. 在合约保存位置中可看到生成的压缩包:xxx.contract;然后执行 ContractEventSendOperationHandleTest.java测试用例test1()即可。 +### 20180910版本改造 +1. 在contract-jar中添加了mvn assembly处理逻辑,将合约用到的lib包全部放置其target/xxx/pubLib文件夹中,执行: +``` +mvn clean assembly:assembly +``` +2. 修改了sys-contract.properties文件,新增了CONTRACT_CLASS_LIBS参数; + - 将CONTRACT_CLASS_PATH专用于存储路径 + - CONTRACT_CLASS_LIBS来存放所有的jar包 +3. 删减了contract-libs文件夹中需要动态生成的jar。 From 343629312eddd15b3e2216796714a75415774edf Mon Sep 17 00:00:00 2001 From: huanghaiquan Date: Wed, 24 Apr 2019 09:33:31 +0800 Subject: [PATCH 03/10] Upgrade the version of Jetty dependencies to fix security vulnerabilities; --- source/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/pom.xml b/source/pom.xml index 92da4ac7..761f758d 100644 --- a/source/pom.xml +++ b/source/pom.xml @@ -66,7 +66,7 @@ 1.10.19 4.5.1 - 9.4.12.v20180830 + 9.4.17.v20190418 1.2.3 3.3.6 From 4f60971f668050f429c0e2a746084d47d5245ff9 Mon Sep 17 00:00:00 2001 From: huanghaiquan Date: Tue, 30 Apr 2019 20:46:28 +0800 Subject: [PATCH 04/10] Refactor ledger model: rename packages; --- source/contract/contract-framework/pom.xml | 3 +- .../contract/{ => engine}/ContractCode.java | 4 +- .../contract/{ => engine}/ContractEngine.java | 2 +- .../{ => engine}/ContractServiceProvider.java | 2 +- .../ContractServiceProviders.java | 2 +- .../contract/jvm/JVMContractEngine.java | 4 +- .../jvm/JVMContractServiceProvider.java | 4 +- .../contract/jvm/JavaContractCode.java | 21 ++-- source/contract/contract-maven-plugin/pom.xml | 74 ++++++------- .../jd/blockchain}/ContractDeployExeUtil.java | 43 ++++---- .../com/jd/blockchain/ContractDeployMojo.java | 1 - source/contract/contract-model/pom.xml | 9 +- .../contract/model/LedgerContext.java | 11 -- .../jd/blockchain/gateway/PeerService.java | 4 +- .../service/PeerConnectionManager.java | 4 +- .../gateway/web/TxProcessingController.java | 2 +- .../ledger/core/impl/LedgerQueryService.java | 22 +++- .../core/impl/TransactionBatchProcessor.java | 6 +- .../core/impl/TransactionEngineImpl.java | 4 +- .../ContractEventSendOperationHandle.java | 4 +- .../impl/handles/ContractLedgerContext.java | 33 ++++-- .../ledger/LedgerAdminAccountTest.java | 4 +- .../blockchain/ledger/LedgerEditerTest.java | 4 +- .../ledger/LedgerInitOperationTest.java | 6 +- .../ledger/LedgerInitSettingTest.java | 6 +- .../blockchain/ledger/LedgerManagerTest.java | 6 +- .../jd/blockchain/ledger/LedgerTestUtils.java | 4 +- .../ledger/LedgerTransactionDataTest.java | 8 +- .../blockchain/ledger/TransactionSetTest.java | 2 +- .../com/jd/blockchain/contract}/Contract.java | 2 +- .../contract}/ContractAppLifecycleAwire.java | 2 +- .../blockchain/contract}/ContractEvent.java | 2 +- .../contract}/ContractEventContext.java | 2 +- .../contract}/ContractException.java | 2 +- .../contract}/ContractRuntimeAwire.java | 2 +- .../blockchain/contract}/ErrorCodeEnum.java | 2 +- .../jd/blockchain/contract}/EventHandle.java | 2 +- .../contract}/EventProcessingAwire.java | 2 +- .../jd/blockchain/contract/LedgerContext.java | 11 ++ .../contract}/LocalContractEventContext.java | 2 +- .../ledger/ContractEventSendOperation.java | 6 -- .../blockchain/ledger/TransactionBuilder.java | 4 +- .../ledger/TransactionTemplate.java | 2 +- .../blockchain/ledger/data/EventOperator.java | 11 -- .../service/TransactionBatchProcess.java | 2 +- .../service/TransactionBatchResult.java | 2 +- .../service/TransactionBatchResultHandle.java | 2 +- .../service/TransactionEngine.java | 2 +- .../GatewayIncomingSetting.java | 2 +- .../LedgerIncomingSetting.java | 2 +- .../BlockchainOperationFactory.java | 13 ++- .../transaction}/BlockchainQueryService.java | 2 +- .../data => transaction}/ClientOperator.java | 2 +- .../ConsensusParticipantData.java | 2 +- .../ContractCodeDeployOpTemplate.java | 2 +- .../ContractCodeDeployOperationBuilder.java | 2 +- ...ontractCodeDeployOperationBuilderImpl.java | 2 +- .../transaction/ContractDefinition.java | 5 + .../ContractEventSendOpTemplate.java | 2 +- .../ContractEventSendOperationBuilder.java | 4 +- ...ContractEventSendOperationBuilderImpl.java | 5 +- .../transaction/ContractInvocationProxy.java | 22 ++++ .../ContractInvocationProxyBuilder.java | 6 ++ .../ContractOperator.java | 2 +- .../DataAccountKVSetOpTemplate.java | 2 +- .../DataAccountKVSetOperationBuilder.java | 2 +- .../DataAccountKVSetOperationBuilderImpl.java | 2 +- .../DataAccountOperator.java | 2 +- .../DataAccountRegisterOpTemplate.java | 2 +- .../DataAccountRegisterOperationBuilder.java | 2 +- ...taAccountRegisterOperationBuilderImpl.java | 2 +- .../DigitalSignatureBlob.java | 2 +- .../blockchain/transaction/EventOperator.java | 22 ++++ .../{ledger/data => transaction}/KVData.java | 2 +- .../LedgerInitOpTemplate.java | 2 +- .../LedgerInitOperationBuilder.java | 2 +- .../LedgerInitOperationBuilderImpl.java | 2 +- .../LedgerInitOperator.java | 2 +- .../LedgerInitSettingData.java | 2 +- .../data => transaction}/NewLedgerOpBlob.java | 1 + .../data => transaction}/PreparedTx.java | 2 +- .../PrivilegeSettingOperationBuilder.java | 2 +- .../data => transaction}/PubKeyData.java | 1 + .../SignatureEncoding.java | 2 +- .../TransactionService.java | 2 +- .../data => transaction}/TxBuilder.java | 8 +- .../data => transaction}/TxContentBlob.java | 2 +- .../TxRequestBuilder.java | 2 +- .../TxRequestMessage.java | 2 +- .../TxResponseMessage.java | 2 +- .../data => transaction}/TxTemplate.java | 7 +- .../data => transaction}/UserOperator.java | 2 +- .../UserRegisterOpTemplate.java | 2 +- .../UserRegisterOperationBuilder.java | 2 +- .../UserRegisterOperationBuilderImpl.java | 2 +- .../ContractCodeDeployOpTemplateTest.java | 2 +- .../data/ContractEventSendOpTemplateTest.java | 4 +- .../data/DataAccountKVSetOpTemplateTest.java | 4 +- .../DataAccountRegisterOpTemplateTest.java | 2 +- .../ledger/data/DigitalSignatureBlobTest.java | 2 +- .../jd/blockchain/ledger/data/KVDataTest.java | 5 +- .../ledger/data/TxContentBlobTest.java | 4 +- .../ledger/data/TxRequestMessageTest.java | 8 +- .../ledger/data/TxResponseMessageTest.java | 2 +- .../data/UserRegisterOpTemplateTest.java | 2 +- .../consensus/ConsensusMessageDispatcher.java | 7 +- .../peer/ledger/LedgerConfigurer.java | 2 +- .../peer/web/LedgerQueryController.java | 33 ++++-- .../peer/web/ManagementController.java | 4 +- .../sdk/BlockchainExtendQueryService.java | 2 + .../jd/blockchain/sdk/BlockchainService.java | 2 + .../blockchain/sdk/LedgerAccessContext.java | 3 +- .../blockchain/sdk/ManagementHttpService.java | 3 +- .../BinarySerializeRequestConverter.java | 2 +- .../BinarySerializeResponseConverter.java | 2 +- .../HashDigestsResponseConverter.java | 2 +- .../sdk/proxy/BlockchainServiceProxy.java | 6 +- .../sdk/proxy/HttpBlockchainQueryService.java | 3 +- .../service/ConsensusTransactionService.java | 2 +- .../sdk/service/NodeSigningAppender.java | 6 +- .../service/PeerBlockchainServiceFactory.java | 7 +- .../sdk/service/PeerServiceProxy.java | 4 +- .../com/jd/blockchain/client/Command.java | 100 ------------------ .../com/jd/blockchain/client/PeerClient.java | 75 ------------- .../jd/blockchain/client/PeerClientDemo.java | 35 ------ .../client/GatewayBlockchainServiceProxy.java | 4 +- .../sdk/client/GatewayServiceFactory.java | 8 +- .../sdk/client/HttpConsensusService.java | 2 +- .../contract/samples/AssetContract.java | 4 +- .../contract/samples/AssetContractImpl.java | 6 +- .../sdk/samples/SDKDemo_Contract.java | 18 +--- .../SDK_GateWay_BatchInsertData_Test_.java | 2 +- .../test/SDK_GateWay_DataAccount_Test_.java | 2 +- .../test/SDK_GateWay_InsertData_Test_.java | 2 +- .../sdk/test/SDK_GateWay_Query_Test_.java | 2 +- .../sdk/test/SDK_GateWay_User_Test_.java | 2 +- .../intgr/perf/LedgerPerformanceTest.java | 4 +- .../LedgerInitializeWeb4SingleStepsTest.java | 2 +- .../ledger/LedgerBlockGeneratingTest.java | 4 +- .../service/RemoteTransactionService.java | 2 +- .../web/LedgerInitializeWebController.java | 8 +- 141 files changed, 415 insertions(+), 519 deletions(-) rename source/contract/contract-framework/src/main/java/com/jd/blockchain/contract/{ => engine}/ContractCode.java (58%) rename source/contract/contract-framework/src/main/java/com/jd/blockchain/contract/{ => engine}/ContractEngine.java (92%) rename source/contract/contract-framework/src/main/java/com/jd/blockchain/contract/{ => engine}/ContractServiceProvider.java (79%) rename source/contract/contract-framework/src/main/java/com/jd/blockchain/contract/{ => engine}/ContractServiceProviders.java (96%) rename source/contract/{contract-model/src/main/java/com/jd/blockchain/contract/model => contract-maven-plugin/src/main/java/com/jd/blockchain}/ContractDeployExeUtil.java (85%) delete mode 100644 source/contract/contract-model/src/main/java/com/jd/blockchain/contract/model/LedgerContext.java rename source/{contract/contract-model/src/main/java/com/jd/blockchain/contract/model => ledger/ledger-model/src/main/java/com/jd/blockchain/contract}/Contract.java (83%) rename source/{contract/contract-model/src/main/java/com/jd/blockchain/contract/model => ledger/ledger-model/src/main/java/com/jd/blockchain/contract}/ContractAppLifecycleAwire.java (85%) rename source/{contract/contract-model/src/main/java/com/jd/blockchain/contract/model => ledger/ledger-model/src/main/java/com/jd/blockchain/contract}/ContractEvent.java (84%) rename source/{contract/contract-model/src/main/java/com/jd/blockchain/contract/model => ledger/ledger-model/src/main/java/com/jd/blockchain/contract}/ContractEventContext.java (95%) rename source/{contract/contract-model/src/main/java/com/jd/blockchain/contract/model => ledger/ledger-model/src/main/java/com/jd/blockchain/contract}/ContractException.java (89%) rename source/{contract/contract-model/src/main/java/com/jd/blockchain/contract/model => ledger/ledger-model/src/main/java/com/jd/blockchain/contract}/ContractRuntimeAwire.java (81%) rename source/{contract/contract-model/src/main/java/com/jd/blockchain/contract/model => ledger/ledger-model/src/main/java/com/jd/blockchain/contract}/ErrorCodeEnum.java (96%) rename source/{contract/contract-model/src/main/java/com/jd/blockchain/contract/model => ledger/ledger-model/src/main/java/com/jd/blockchain/contract}/EventHandle.java (84%) rename source/{contract/contract-model/src/main/java/com/jd/blockchain/contract/model => ledger/ledger-model/src/main/java/com/jd/blockchain/contract}/EventProcessingAwire.java (95%) create mode 100644 source/ledger/ledger-model/src/main/java/com/jd/blockchain/contract/LedgerContext.java rename source/{contract/contract-model/src/main/java/com/jd/blockchain/contract/model => ledger/ledger-model/src/main/java/com/jd/blockchain/contract}/LocalContractEventContext.java (98%) delete mode 100644 source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/EventOperator.java rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger => }/service/TransactionBatchProcess.java (95%) rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger => }/service/TransactionBatchResult.java (85%) rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger => }/service/TransactionBatchResultHandle.java (82%) rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger => }/service/TransactionEngine.java (83%) rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{manage => setting}/GatewayIncomingSetting.java (86%) rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{manage => setting}/LedgerIncomingSetting.java (98%) rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger/data => transaction}/BlockchainOperationFactory.java (93%) rename source/{sdk/sdk-base/src/main/java/com/jd/blockchain/sdk => ledger/ledger-model/src/main/java/com/jd/blockchain/transaction}/BlockchainQueryService.java (95%) rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger/data => transaction}/ClientOperator.java (81%) rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger/data => transaction}/ConsensusParticipantData.java (95%) rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger/data => transaction}/ContractCodeDeployOpTemplate.java (92%) rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger/data => transaction}/ContractCodeDeployOperationBuilder.java (87%) rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger/data => transaction}/ContractCodeDeployOperationBuilderImpl.java (88%) create mode 100644 source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ContractDefinition.java rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger/data => transaction}/ContractEventSendOpTemplate.java (91%) rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger/data => transaction}/ContractEventSendOperationBuilder.java (85%) rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger/data => transaction}/ContractEventSendOperationBuilderImpl.java (76%) create mode 100644 source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ContractInvocationProxy.java create mode 100644 source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ContractInvocationProxyBuilder.java rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger/data => transaction}/ContractOperator.java (76%) rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger/data => transaction}/DataAccountKVSetOpTemplate.java (94%) rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger/data => transaction}/DataAccountKVSetOperationBuilder.java (93%) rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger/data => transaction}/DataAccountKVSetOperationBuilderImpl.java (95%) rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger/data => transaction}/DataAccountOperator.java (91%) rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger/data => transaction}/DataAccountRegisterOpTemplate.java (91%) rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger/data => transaction}/DataAccountRegisterOperationBuilder.java (83%) rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger/data => transaction}/DataAccountRegisterOperationBuilderImpl.java (87%) rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger/data => transaction}/DigitalSignatureBlob.java (95%) create mode 100644 source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/EventOperator.java rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger/data => transaction}/KVData.java (93%) rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger/data => transaction}/LedgerInitOpTemplate.java (89%) rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger/data => transaction}/LedgerInitOperationBuilder.java (85%) rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger/data => transaction}/LedgerInitOperationBuilderImpl.java (86%) rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger/data => transaction}/LedgerInitOperator.java (77%) rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger/data => transaction}/LedgerInitSettingData.java (97%) rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger/data => transaction}/NewLedgerOpBlob.java (92%) rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger/data => transaction}/PreparedTx.java (98%) rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger/data => transaction}/PrivilegeSettingOperationBuilder.java (92%) rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger/data => transaction}/PubKeyData.java (88%) rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger/data => transaction}/SignatureEncoding.java (92%) rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger/data => transaction}/TransactionService.java (81%) rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger/data => transaction}/TxBuilder.java (89%) rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger/data => transaction}/TxContentBlob.java (93%) rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger/data => transaction}/TxRequestBuilder.java (95%) rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger/data => transaction}/TxRequestMessage.java (96%) rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger/data => transaction}/TxResponseMessage.java (92%) rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger/data => transaction}/TxTemplate.java (86%) rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger/data => transaction}/UserOperator.java (76%) rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger/data => transaction}/UserRegisterOpTemplate.java (89%) rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger/data => transaction}/UserRegisterOperationBuilder.java (86%) rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/{ledger/data => transaction}/UserRegisterOperationBuilderImpl.java (85%) delete mode 100644 source/sdk/sdk-client/src/main/java/com/jd/blockchain/client/Command.java delete mode 100644 source/sdk/sdk-client/src/main/java/com/jd/blockchain/client/PeerClient.java delete mode 100644 source/sdk/sdk-client/src/main/java/com/jd/blockchain/client/PeerClientDemo.java diff --git a/source/contract/contract-framework/pom.xml b/source/contract/contract-framework/pom.xml index 9f449374..83d1cf06 100644 --- a/source/contract/contract-framework/pom.xml +++ b/source/contract/contract-framework/pom.xml @@ -12,7 +12,7 @@ com.jd.blockchain - contract-model + ledger-model ${project.version} @@ -27,7 +27,6 @@ org.apache.maven.plugins maven-deploy-plugin - 2.8.2 true diff --git a/source/contract/contract-framework/src/main/java/com/jd/blockchain/contract/ContractCode.java b/source/contract/contract-framework/src/main/java/com/jd/blockchain/contract/engine/ContractCode.java similarity index 58% rename from source/contract/contract-framework/src/main/java/com/jd/blockchain/contract/ContractCode.java rename to source/contract/contract-framework/src/main/java/com/jd/blockchain/contract/engine/ContractCode.java index 5590cabb..d75f5b60 100644 --- a/source/contract/contract-framework/src/main/java/com/jd/blockchain/contract/ContractCode.java +++ b/source/contract/contract-framework/src/main/java/com/jd/blockchain/contract/engine/ContractCode.java @@ -1,6 +1,6 @@ -package com.jd.blockchain.contract; +package com.jd.blockchain.contract.engine; -import com.jd.blockchain.contract.model.ContractEventContext; +import com.jd.blockchain.contract.ContractEventContext; public interface ContractCode { diff --git a/source/contract/contract-framework/src/main/java/com/jd/blockchain/contract/ContractEngine.java b/source/contract/contract-framework/src/main/java/com/jd/blockchain/contract/engine/ContractEngine.java similarity index 92% rename from source/contract/contract-framework/src/main/java/com/jd/blockchain/contract/ContractEngine.java rename to source/contract/contract-framework/src/main/java/com/jd/blockchain/contract/engine/ContractEngine.java index 09f7b416..e047bcc7 100644 --- a/source/contract/contract-framework/src/main/java/com/jd/blockchain/contract/ContractEngine.java +++ b/source/contract/contract-framework/src/main/java/com/jd/blockchain/contract/engine/ContractEngine.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.contract; +package com.jd.blockchain.contract.engine; /** * 合约引擎; diff --git a/source/contract/contract-framework/src/main/java/com/jd/blockchain/contract/ContractServiceProvider.java b/source/contract/contract-framework/src/main/java/com/jd/blockchain/contract/engine/ContractServiceProvider.java similarity index 79% rename from source/contract/contract-framework/src/main/java/com/jd/blockchain/contract/ContractServiceProvider.java rename to source/contract/contract-framework/src/main/java/com/jd/blockchain/contract/engine/ContractServiceProvider.java index ae8a0d00..753efd2f 100644 --- a/source/contract/contract-framework/src/main/java/com/jd/blockchain/contract/ContractServiceProvider.java +++ b/source/contract/contract-framework/src/main/java/com/jd/blockchain/contract/engine/ContractServiceProvider.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.contract; +package com.jd.blockchain.contract.engine; public interface ContractServiceProvider { diff --git a/source/contract/contract-framework/src/main/java/com/jd/blockchain/contract/ContractServiceProviders.java b/source/contract/contract-framework/src/main/java/com/jd/blockchain/contract/engine/ContractServiceProviders.java similarity index 96% rename from source/contract/contract-framework/src/main/java/com/jd/blockchain/contract/ContractServiceProviders.java rename to source/contract/contract-framework/src/main/java/com/jd/blockchain/contract/engine/ContractServiceProviders.java index f0a6ba37..146dffa6 100644 --- a/source/contract/contract-framework/src/main/java/com/jd/blockchain/contract/ContractServiceProviders.java +++ b/source/contract/contract-framework/src/main/java/com/jd/blockchain/contract/engine/ContractServiceProviders.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.contract; +package com.jd.blockchain.contract.engine; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; diff --git a/source/contract/contract-jvm/src/main/java/com/jd/blockchain/contract/jvm/JVMContractEngine.java b/source/contract/contract-jvm/src/main/java/com/jd/blockchain/contract/jvm/JVMContractEngine.java index 6769b618..e07e5215 100644 --- a/source/contract/contract-jvm/src/main/java/com/jd/blockchain/contract/jvm/JVMContractEngine.java +++ b/source/contract/contract-jvm/src/main/java/com/jd/blockchain/contract/jvm/JVMContractEngine.java @@ -1,7 +1,7 @@ package com.jd.blockchain.contract.jvm; -import com.jd.blockchain.contract.ContractCode; -import com.jd.blockchain.contract.ContractEngine; +import com.jd.blockchain.contract.engine.ContractCode; +import com.jd.blockchain.contract.engine.ContractEngine; import com.jd.blockchain.runtime.Module; import com.jd.blockchain.runtime.RuntimeContext; diff --git a/source/contract/contract-jvm/src/main/java/com/jd/blockchain/contract/jvm/JVMContractServiceProvider.java b/source/contract/contract-jvm/src/main/java/com/jd/blockchain/contract/jvm/JVMContractServiceProvider.java index 859c25c7..013537bf 100644 --- a/source/contract/contract-jvm/src/main/java/com/jd/blockchain/contract/jvm/JVMContractServiceProvider.java +++ b/source/contract/contract-jvm/src/main/java/com/jd/blockchain/contract/jvm/JVMContractServiceProvider.java @@ -1,7 +1,7 @@ package com.jd.blockchain.contract.jvm; -import com.jd.blockchain.contract.ContractEngine; -import com.jd.blockchain.contract.ContractServiceProvider; +import com.jd.blockchain.contract.engine.ContractEngine; +import com.jd.blockchain.contract.engine.ContractServiceProvider; public class JVMContractServiceProvider implements ContractServiceProvider { @Override diff --git a/source/contract/contract-jvm/src/main/java/com/jd/blockchain/contract/jvm/JavaContractCode.java b/source/contract/contract-jvm/src/main/java/com/jd/blockchain/contract/jvm/JavaContractCode.java index 147b6a26..da5d2fb8 100644 --- a/source/contract/contract-jvm/src/main/java/com/jd/blockchain/contract/jvm/JavaContractCode.java +++ b/source/contract/contract-jvm/src/main/java/com/jd/blockchain/contract/jvm/JavaContractCode.java @@ -1,22 +1,19 @@ package com.jd.blockchain.contract.jvm; -import com.jd.blockchain.contract.ContractCode; -import com.jd.blockchain.contract.model.ContractEvent; -import com.jd.blockchain.contract.model.ContractEventContext; -import com.jd.blockchain.runtime.Module; -import com.jd.blockchain.utils.BaseConstant; +import java.lang.annotation.Annotation; +import java.lang.reflect.Method; +import java.util.HashMap; +import java.util.Map; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.util.ReflectionUtils; -import static com.jd.blockchain.utils.BaseConstant.CONTRACT_MAIN_CLASS_KEY; - -import java.lang.annotation.Annotation; -import java.lang.reflect.Method; -import java.util.HashMap; -import java.util.Map; -import java.util.Properties; +import com.jd.blockchain.contract.ContractEvent; +import com.jd.blockchain.contract.ContractEventContext; +import com.jd.blockchain.contract.engine.ContractCode; +import com.jd.blockchain.runtime.Module; +import com.jd.blockchain.utils.BaseConstant; /** * contract code based jvm diff --git a/source/contract/contract-maven-plugin/pom.xml b/source/contract/contract-maven-plugin/pom.xml index c8c11adb..0a357e52 100644 --- a/source/contract/contract-maven-plugin/pom.xml +++ b/source/contract/contract-maven-plugin/pom.xml @@ -9,32 +9,33 @@ contract-maven-plugin maven-plugin - - ${parent.version} - ${parent.version} - 4.12 - - 0.9.0-SNAPSHOT - junit - junit - test + com.jd.blockchain + ledger-model + ${project.version} com.jd.blockchain - contract-model - ${contract.version} + utils-common + ${project.version} com.jd.blockchain - utils-common - ${utils.version} + sdk-client + ${project.version} + + + + com.jd.blockchain + tools-keygen + ${project.version} + org.apache.maven.plugin-tools @@ -83,29 +84,30 @@ false - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + org.apache.maven.plugins diff --git a/source/contract/contract-model/src/main/java/com/jd/blockchain/contract/model/ContractDeployExeUtil.java b/source/contract/contract-maven-plugin/src/main/java/com/jd/blockchain/ContractDeployExeUtil.java similarity index 85% rename from source/contract/contract-model/src/main/java/com/jd/blockchain/contract/model/ContractDeployExeUtil.java rename to source/contract/contract-maven-plugin/src/main/java/com/jd/blockchain/ContractDeployExeUtil.java index 820668e4..a206a854 100644 --- a/source/contract/contract-model/src/main/java/com/jd/blockchain/contract/model/ContractDeployExeUtil.java +++ b/source/contract/contract-maven-plugin/src/main/java/com/jd/blockchain/ContractDeployExeUtil.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.contract.model; +package com.jd.blockchain; import java.io.File; import java.io.FileInputStream; @@ -160,25 +160,28 @@ public enum ContractDeployExeUtil { return deploy(ledgerHash, contractIdentity, ownerKey, chainCode); } - public boolean exeContract(String ledger,String ownerPubPath, String ownerPrvPath, - String ownerPassword,String event,String contractArgs){ - BlockchainKeypair ownerKey = getKeyPair(ownerPubPath, ownerPrvPath, ownerPassword); - HashDigest ledgerHash = new HashDigest(Base58Utils.decode(ledger)); - - // 定义交易,传输最简单的数字、字符串、提取合约中的地址; - TransactionTemplate txTpl = bcsrv.newTransaction(ledgerHash); - txTpl.contractEvents().send(getContractAddress(),event,contractArgs.getBytes()); - - // 签名; - PreparedTransaction ptx = txTpl.prepare(); - ptx.sign(ownerKey); - - // 提交并等待共识返回; - TransactionResponse txResp = ptx.commit(); - - // 验证结果; - return txResp.isSuccess(); - } + +// 暂不支持从插件执行合约;此外,由于合约参数调用的格式发生变化,故此方法被废弃;by: huanghaiquan at 2019-04-30; + +// public boolean exeContract(String ledger,String ownerPubPath, String ownerPrvPath, +// String ownerPassword,String event,String contractArgs){ +// BlockchainKeypair ownerKey = getKeyPair(ownerPubPath, ownerPrvPath, ownerPassword); +// HashDigest ledgerHash = new HashDigest(Base58Utils.decode(ledger)); +// +// // 定义交易,传输最简单的数字、字符串、提取合约中的地址; +// TransactionTemplate txTpl = bcsrv.newTransaction(ledgerHash); +// txTpl.contractEvents().send(getContractAddress(),event,contractArgs.getBytes()); +// +// // 签名; +// PreparedTransaction ptx = txTpl.prepare(); +// ptx.sign(ownerKey); +// +// // 提交并等待共识返回; +// TransactionResponse txResp = ptx.commit(); +// +// // 验证结果; +// return txResp.isSuccess(); +// } public Bytes getContractAddress() { return contractAddress; diff --git a/source/contract/contract-maven-plugin/src/main/java/com/jd/blockchain/ContractDeployMojo.java b/source/contract/contract-maven-plugin/src/main/java/com/jd/blockchain/ContractDeployMojo.java index d942c165..80be911f 100644 --- a/source/contract/contract-maven-plugin/src/main/java/com/jd/blockchain/ContractDeployMojo.java +++ b/source/contract/contract-maven-plugin/src/main/java/com/jd/blockchain/ContractDeployMojo.java @@ -1,6 +1,5 @@ package com.jd.blockchain; -import com.jd.blockchain.contract.model.ContractDeployExeUtil; import com.jd.blockchain.crypto.HashDigest; import com.jd.blockchain.crypto.PrivKey; import com.jd.blockchain.crypto.PubKey; diff --git a/source/contract/contract-model/pom.xml b/source/contract/contract-model/pom.xml index 6a5da9c5..de1c279c 100644 --- a/source/contract/contract-model/pom.xml +++ b/source/contract/contract-model/pom.xml @@ -10,7 +10,7 @@ contract-model - + - - - - - \ No newline at end of file diff --git a/source/contract/contract-model/src/main/java/com/jd/blockchain/contract/model/LedgerContext.java b/source/contract/contract-model/src/main/java/com/jd/blockchain/contract/model/LedgerContext.java deleted file mode 100644 index 5f2fbcbc..00000000 --- a/source/contract/contract-model/src/main/java/com/jd/blockchain/contract/model/LedgerContext.java +++ /dev/null @@ -1,11 +0,0 @@ -package com.jd.blockchain.contract.model; - -import com.jd.blockchain.ledger.data.DataAccountOperator; -import com.jd.blockchain.ledger.data.UserOperator; -import com.jd.blockchain.sdk.BlockchainQueryService; - -public interface LedgerContext extends BlockchainQueryService, UserOperator, DataAccountOperator{ - - - -} diff --git a/source/gateway/src/main/java/com/jd/blockchain/gateway/PeerService.java b/source/gateway/src/main/java/com/jd/blockchain/gateway/PeerService.java index 38039582..b3fd6065 100644 --- a/source/gateway/src/main/java/com/jd/blockchain/gateway/PeerService.java +++ b/source/gateway/src/main/java/com/jd/blockchain/gateway/PeerService.java @@ -1,7 +1,7 @@ package com.jd.blockchain.gateway; -import com.jd.blockchain.ledger.data.TransactionService; -import com.jd.blockchain.sdk.BlockchainQueryService; +import com.jd.blockchain.transaction.BlockchainQueryService; +import com.jd.blockchain.transaction.TransactionService; public interface PeerService { diff --git a/source/gateway/src/main/java/com/jd/blockchain/gateway/service/PeerConnectionManager.java b/source/gateway/src/main/java/com/jd/blockchain/gateway/service/PeerConnectionManager.java index 443b1208..ba17036b 100644 --- a/source/gateway/src/main/java/com/jd/blockchain/gateway/service/PeerConnectionManager.java +++ b/source/gateway/src/main/java/com/jd/blockchain/gateway/service/PeerConnectionManager.java @@ -7,9 +7,9 @@ import org.springframework.stereotype.Component; import com.jd.blockchain.crypto.AsymmetricKeypair; import com.jd.blockchain.gateway.PeerConnector; import com.jd.blockchain.gateway.PeerService; -import com.jd.blockchain.ledger.data.TransactionService; -import com.jd.blockchain.sdk.BlockchainQueryService; import com.jd.blockchain.sdk.service.PeerBlockchainServiceFactory; +import com.jd.blockchain.transaction.BlockchainQueryService; +import com.jd.blockchain.transaction.TransactionService; import com.jd.blockchain.utils.net.NetworkAddress; import java.util.List; diff --git a/source/gateway/src/main/java/com/jd/blockchain/gateway/web/TxProcessingController.java b/source/gateway/src/main/java/com/jd/blockchain/gateway/web/TxProcessingController.java index 02ac7fc6..7209f589 100644 --- a/source/gateway/src/main/java/com/jd/blockchain/gateway/web/TxProcessingController.java +++ b/source/gateway/src/main/java/com/jd/blockchain/gateway/web/TxProcessingController.java @@ -16,7 +16,7 @@ import com.jd.blockchain.ledger.DigitalSignature; import com.jd.blockchain.ledger.TransactionContent; import com.jd.blockchain.ledger.TransactionRequest; import com.jd.blockchain.ledger.TransactionResponse; -import com.jd.blockchain.ledger.data.TransactionService; +import com.jd.blockchain.transaction.TransactionService; import com.jd.blockchain.utils.BusinessException; import com.jd.blockchain.web.converters.BinaryMessageConverter; diff --git a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/LedgerQueryService.java b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/LedgerQueryService.java index 4b8cd2c2..27eeefd0 100644 --- a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/LedgerQueryService.java +++ b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/LedgerQueryService.java @@ -2,9 +2,25 @@ package com.jd.blockchain.ledger.core.impl; import com.jd.blockchain.binaryproto.BinaryEncodingUtils; import com.jd.blockchain.crypto.HashDigest; -import com.jd.blockchain.ledger.*; -import com.jd.blockchain.ledger.core.*; -import com.jd.blockchain.sdk.BlockchainQueryService; +import com.jd.blockchain.ledger.AccountHeader; +import com.jd.blockchain.ledger.BytesValue; +import com.jd.blockchain.ledger.KVDataEntry; +import com.jd.blockchain.ledger.KVDataObject; +import com.jd.blockchain.ledger.LedgerBlock; +import com.jd.blockchain.ledger.LedgerInfo; +import com.jd.blockchain.ledger.LedgerTransaction; +import com.jd.blockchain.ledger.ParticipantNode; +import com.jd.blockchain.ledger.TransactionState; +import com.jd.blockchain.ledger.UserInfo; +import com.jd.blockchain.ledger.core.ContractAccountSet; +import com.jd.blockchain.ledger.core.DataAccount; +import com.jd.blockchain.ledger.core.DataAccountSet; +import com.jd.blockchain.ledger.core.LedgerAdministration; +import com.jd.blockchain.ledger.core.LedgerRepository; +import com.jd.blockchain.ledger.core.LedgerService; +import com.jd.blockchain.ledger.core.TransactionSet; +import com.jd.blockchain.ledger.core.UserAccountSet; +import com.jd.blockchain.transaction.BlockchainQueryService; import com.jd.blockchain.utils.Bytes; import com.jd.blockchain.utils.QueryUtil; import com.jd.blockchain.utils.ValueType; diff --git a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/TransactionBatchProcessor.java b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/TransactionBatchProcessor.java index 1001230f..7a0670b8 100644 --- a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/TransactionBatchProcessor.java +++ b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/TransactionBatchProcessor.java @@ -20,9 +20,9 @@ import com.jd.blockchain.ledger.core.LedgerService; import com.jd.blockchain.ledger.core.LedgerTransactionContext; import com.jd.blockchain.ledger.core.OperationHandle; import com.jd.blockchain.ledger.core.TransactionRequestContext; -import com.jd.blockchain.ledger.service.TransactionBatchProcess; -import com.jd.blockchain.ledger.service.TransactionBatchResult; -import com.jd.blockchain.ledger.service.TransactionBatchResultHandle; +import com.jd.blockchain.service.TransactionBatchProcess; +import com.jd.blockchain.service.TransactionBatchResult; +import com.jd.blockchain.service.TransactionBatchResultHandle; import com.jd.blockchain.utils.Bytes; public class TransactionBatchProcessor implements TransactionBatchProcess { diff --git a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/TransactionEngineImpl.java b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/TransactionEngineImpl.java index 73053188..bf2470e4 100644 --- a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/TransactionEngineImpl.java +++ b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/TransactionEngineImpl.java @@ -11,8 +11,8 @@ import com.jd.blockchain.ledger.core.LedgerDataSet; import com.jd.blockchain.ledger.core.LedgerEditor; import com.jd.blockchain.ledger.core.LedgerRepository; import com.jd.blockchain.ledger.core.LedgerService; -import com.jd.blockchain.ledger.service.TransactionBatchProcess; -import com.jd.blockchain.ledger.service.TransactionEngine; +import com.jd.blockchain.service.TransactionBatchProcess; +import com.jd.blockchain.service.TransactionEngine; public class TransactionEngineImpl implements TransactionEngine { diff --git a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/handles/ContractEventSendOperationHandle.java b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/handles/ContractEventSendOperationHandle.java index 498457af..5c3b67cc 100644 --- a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/handles/ContractEventSendOperationHandle.java +++ b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/handles/ContractEventSendOperationHandle.java @@ -1,7 +1,7 @@ package com.jd.blockchain.ledger.core.impl.handles; -import com.jd.blockchain.contract.ContractServiceProviders; -import com.jd.blockchain.contract.model.LocalContractEventContext; +import com.jd.blockchain.contract.LocalContractEventContext; +import com.jd.blockchain.contract.engine.ContractServiceProviders; import com.jd.blockchain.ledger.ContractEventSendOperation; import com.jd.blockchain.ledger.Operation; import com.jd.blockchain.ledger.core.*; diff --git a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/handles/ContractLedgerContext.java b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/handles/ContractLedgerContext.java index d8cbb571..acd13e99 100644 --- a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/handles/ContractLedgerContext.java +++ b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/handles/ContractLedgerContext.java @@ -4,17 +4,32 @@ import java.util.ArrayList; import java.util.List; import com.alibaba.fastjson.JSON; -import com.jd.blockchain.contract.model.LedgerContext; +import com.jd.blockchain.contract.LedgerContext; import com.jd.blockchain.crypto.HashDigest; -import com.jd.blockchain.ledger.*; +import com.jd.blockchain.ledger.AccountHeader; +import com.jd.blockchain.ledger.BlockchainIdentity; +import com.jd.blockchain.ledger.BytesValue; +import com.jd.blockchain.ledger.BytesValueImpl; +import com.jd.blockchain.ledger.DataAccountKVSetOperation; +import com.jd.blockchain.ledger.DataAccountRegisterOperation; +import com.jd.blockchain.ledger.DataType; +import com.jd.blockchain.ledger.KVDataEntry; +import com.jd.blockchain.ledger.LedgerBlock; +import com.jd.blockchain.ledger.LedgerInfo; +import com.jd.blockchain.ledger.LedgerTransaction; +import com.jd.blockchain.ledger.Operation; +import com.jd.blockchain.ledger.ParticipantNode; +import com.jd.blockchain.ledger.TransactionState; +import com.jd.blockchain.ledger.UserInfo; +import com.jd.blockchain.ledger.UserRegisterOperation; import com.jd.blockchain.ledger.core.impl.OperationHandleContext; -import com.jd.blockchain.ledger.data.DataAccountKVSetOperationBuilder; -import com.jd.blockchain.ledger.data.DataAccountRegisterOperationBuilder; -import com.jd.blockchain.ledger.data.DataAccountRegisterOperationBuilderImpl; -import com.jd.blockchain.ledger.data.KVData; -import com.jd.blockchain.ledger.data.UserRegisterOperationBuilder; -import com.jd.blockchain.ledger.data.UserRegisterOperationBuilderImpl; -import com.jd.blockchain.sdk.BlockchainQueryService; +import com.jd.blockchain.transaction.BlockchainQueryService; +import com.jd.blockchain.transaction.DataAccountKVSetOperationBuilder; +import com.jd.blockchain.transaction.DataAccountRegisterOperationBuilder; +import com.jd.blockchain.transaction.DataAccountRegisterOperationBuilderImpl; +import com.jd.blockchain.transaction.KVData; +import com.jd.blockchain.transaction.UserRegisterOperationBuilder; +import com.jd.blockchain.transaction.UserRegisterOperationBuilderImpl; import com.jd.blockchain.utils.Bytes; import com.jd.blockchain.utils.io.BytesUtils; diff --git a/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerAdminAccountTest.java b/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerAdminAccountTest.java index 54999130..af06d0b1 100644 --- a/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerAdminAccountTest.java +++ b/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerAdminAccountTest.java @@ -21,9 +21,9 @@ import com.jd.blockchain.ledger.core.CryptoConfig; import com.jd.blockchain.ledger.core.LedgerAdminAccount; import com.jd.blockchain.ledger.core.LedgerConfiguration; import com.jd.blockchain.ledger.core.LedgerMetadata; -import com.jd.blockchain.ledger.data.ConsensusParticipantData; -import com.jd.blockchain.ledger.data.LedgerInitSettingData; import com.jd.blockchain.storage.service.utils.MemoryKVStorage; +import com.jd.blockchain.transaction.ConsensusParticipantData; +import com.jd.blockchain.transaction.LedgerInitSettingData; import com.jd.blockchain.utils.Bytes; import com.jd.blockchain.utils.io.BytesUtils; import com.jd.blockchain.utils.net.NetworkAddress; diff --git a/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerEditerTest.java b/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerEditerTest.java index 047e4066..621aa6fc 100644 --- a/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerEditerTest.java +++ b/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerEditerTest.java @@ -26,9 +26,9 @@ import com.jd.blockchain.ledger.core.LedgerEditor; import com.jd.blockchain.ledger.core.LedgerTransactionContext; import com.jd.blockchain.ledger.core.UserAccount; import com.jd.blockchain.ledger.core.impl.LedgerTransactionalEditor; -import com.jd.blockchain.ledger.data.ConsensusParticipantData; -import com.jd.blockchain.ledger.data.LedgerInitSettingData; import com.jd.blockchain.storage.service.utils.MemoryKVStorage; +import com.jd.blockchain.transaction.ConsensusParticipantData; +import com.jd.blockchain.transaction.LedgerInitSettingData; import com.jd.blockchain.utils.Bytes; import com.jd.blockchain.utils.io.BytesUtils; import com.jd.blockchain.utils.net.NetworkAddress; diff --git a/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerInitOperationTest.java b/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerInitOperationTest.java index a6a56143..81b8e728 100644 --- a/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerInitOperationTest.java +++ b/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerInitOperationTest.java @@ -19,9 +19,9 @@ import com.jd.blockchain.ledger.LedgerInitOperation; import com.jd.blockchain.ledger.LedgerInitSetting; import com.jd.blockchain.ledger.core.CryptoConfig; import com.jd.blockchain.ledger.core.ParticipantCertData; -import com.jd.blockchain.ledger.data.ConsensusParticipantData; -import com.jd.blockchain.ledger.data.LedgerInitOpTemplate; -import com.jd.blockchain.ledger.data.LedgerInitSettingData; +import com.jd.blockchain.transaction.ConsensusParticipantData; +import com.jd.blockchain.transaction.LedgerInitOpTemplate; +import com.jd.blockchain.transaction.LedgerInitSettingData; import com.jd.blockchain.utils.Bytes; import com.jd.blockchain.utils.net.NetworkAddress; diff --git a/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerInitSettingTest.java b/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerInitSettingTest.java index 8055ff5b..c4e6e5ce 100644 --- a/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerInitSettingTest.java +++ b/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerInitSettingTest.java @@ -18,9 +18,9 @@ import com.jd.blockchain.ledger.BlockchainKeypair; import com.jd.blockchain.ledger.LedgerInitSetting; import com.jd.blockchain.ledger.core.CryptoConfig; import com.jd.blockchain.ledger.core.ParticipantCertData; -import com.jd.blockchain.ledger.data.ConsensusParticipantData; -import com.jd.blockchain.ledger.data.LedgerInitOpTemplate; -import com.jd.blockchain.ledger.data.LedgerInitSettingData; +import com.jd.blockchain.transaction.ConsensusParticipantData; +import com.jd.blockchain.transaction.LedgerInitOpTemplate; +import com.jd.blockchain.transaction.LedgerInitSettingData; import com.jd.blockchain.utils.Bytes; import com.jd.blockchain.utils.net.NetworkAddress; diff --git a/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerManagerTest.java b/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerManagerTest.java index 637828f8..9974d5d8 100644 --- a/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerManagerTest.java +++ b/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerManagerTest.java @@ -39,10 +39,10 @@ import com.jd.blockchain.ledger.core.LedgerTransactionContext; import com.jd.blockchain.ledger.core.UserAccount; import com.jd.blockchain.ledger.core.UserAccountSet; import com.jd.blockchain.ledger.core.impl.LedgerManager; -import com.jd.blockchain.ledger.data.ConsensusParticipantData; -import com.jd.blockchain.ledger.data.LedgerInitSettingData; -import com.jd.blockchain.ledger.data.TxBuilder; import com.jd.blockchain.storage.service.utils.MemoryKVStorage; +import com.jd.blockchain.transaction.ConsensusParticipantData; +import com.jd.blockchain.transaction.LedgerInitSettingData; +import com.jd.blockchain.transaction.TxBuilder; import com.jd.blockchain.utils.Bytes; import com.jd.blockchain.utils.io.BytesUtils; import com.jd.blockchain.utils.net.NetworkAddress; diff --git a/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerTestUtils.java b/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerTestUtils.java index 28a01823..d6f6ae43 100644 --- a/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerTestUtils.java +++ b/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerTestUtils.java @@ -15,8 +15,8 @@ import com.jd.blockchain.ledger.TransactionRequest; import com.jd.blockchain.ledger.TransactionResponse; import com.jd.blockchain.ledger.core.CryptoConfig; import com.jd.blockchain.ledger.core.impl.TransactionStagedSnapshot; -import com.jd.blockchain.ledger.data.TransactionService; -import com.jd.blockchain.ledger.data.TxTemplate; +import com.jd.blockchain.transaction.TransactionService; +import com.jd.blockchain.transaction.TxTemplate; public class LedgerTestUtils { diff --git a/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerTransactionDataTest.java b/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerTransactionDataTest.java index bfff2a7c..55e13930 100644 --- a/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerTransactionDataTest.java +++ b/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerTransactionDataTest.java @@ -37,10 +37,10 @@ import com.jd.blockchain.ledger.TransactionRequest; import com.jd.blockchain.ledger.TransactionState; import com.jd.blockchain.ledger.core.impl.LedgerTransactionData; import com.jd.blockchain.ledger.core.impl.TransactionStagedSnapshot; -import com.jd.blockchain.ledger.data.BlockchainOperationFactory; -import com.jd.blockchain.ledger.data.DigitalSignatureBlob; -import com.jd.blockchain.ledger.data.TxContentBlob; -import com.jd.blockchain.ledger.data.TxRequestMessage; +import com.jd.blockchain.transaction.BlockchainOperationFactory; +import com.jd.blockchain.transaction.DigitalSignatureBlob; +import com.jd.blockchain.transaction.TxContentBlob; +import com.jd.blockchain.transaction.TxRequestMessage; import com.jd.blockchain.utils.io.ByteArray; /** diff --git a/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/TransactionSetTest.java b/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/TransactionSetTest.java index 6214d090..60b48975 100644 --- a/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/TransactionSetTest.java +++ b/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/TransactionSetTest.java @@ -33,8 +33,8 @@ import com.jd.blockchain.ledger.UserRegisterOperation; import com.jd.blockchain.ledger.core.TransactionSet; import com.jd.blockchain.ledger.core.impl.LedgerTransactionData; import com.jd.blockchain.ledger.core.impl.TransactionStagedSnapshot; -import com.jd.blockchain.ledger.data.TxBuilder; import com.jd.blockchain.storage.service.utils.MemoryKVStorage; +import com.jd.blockchain.transaction.TxBuilder; import com.jd.blockchain.utils.io.BytesUtils; public class TransactionSetTest { diff --git a/source/contract/contract-model/src/main/java/com/jd/blockchain/contract/model/Contract.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/contract/Contract.java similarity index 83% rename from source/contract/contract-model/src/main/java/com/jd/blockchain/contract/model/Contract.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/contract/Contract.java index 3e79827c..e1b7ea4e 100644 --- a/source/contract/contract-model/src/main/java/com/jd/blockchain/contract/model/Contract.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/contract/Contract.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.contract.model; +package com.jd.blockchain.contract; import java.lang.annotation.ElementType; import java.lang.annotation.Retention; diff --git a/source/contract/contract-model/src/main/java/com/jd/blockchain/contract/model/ContractAppLifecycleAwire.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/contract/ContractAppLifecycleAwire.java similarity index 85% rename from source/contract/contract-model/src/main/java/com/jd/blockchain/contract/model/ContractAppLifecycleAwire.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/contract/ContractAppLifecycleAwire.java index cb9869c4..c8f4f8a9 100644 --- a/source/contract/contract-model/src/main/java/com/jd/blockchain/contract/model/ContractAppLifecycleAwire.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/contract/ContractAppLifecycleAwire.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.contract.model; +package com.jd.blockchain.contract; /** * 合约实现此接口可以监听合约应用的生命周期事件; diff --git a/source/contract/contract-model/src/main/java/com/jd/blockchain/contract/model/ContractEvent.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/contract/ContractEvent.java similarity index 84% rename from source/contract/contract-model/src/main/java/com/jd/blockchain/contract/model/ContractEvent.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/contract/ContractEvent.java index 00f24e76..6249945e 100644 --- a/source/contract/contract-model/src/main/java/com/jd/blockchain/contract/model/ContractEvent.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/contract/ContractEvent.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.contract.model; +package com.jd.blockchain.contract; import java.lang.annotation.ElementType; import java.lang.annotation.Retention; diff --git a/source/contract/contract-model/src/main/java/com/jd/blockchain/contract/model/ContractEventContext.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/contract/ContractEventContext.java similarity index 95% rename from source/contract/contract-model/src/main/java/com/jd/blockchain/contract/model/ContractEventContext.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/contract/ContractEventContext.java index d2c16761..a24ba26d 100644 --- a/source/contract/contract-model/src/main/java/com/jd/blockchain/contract/model/ContractEventContext.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/contract/ContractEventContext.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.contract.model; +package com.jd.blockchain.contract; import com.jd.blockchain.crypto.HashDigest; import com.jd.blockchain.ledger.BlockchainIdentity; diff --git a/source/contract/contract-model/src/main/java/com/jd/blockchain/contract/model/ContractException.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/contract/ContractException.java similarity index 89% rename from source/contract/contract-model/src/main/java/com/jd/blockchain/contract/model/ContractException.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/contract/ContractException.java index 0e13d2c5..61ba347a 100644 --- a/source/contract/contract-model/src/main/java/com/jd/blockchain/contract/model/ContractException.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/contract/ContractException.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.contract.model; +package com.jd.blockchain.contract; public class ContractException extends RuntimeException { diff --git a/source/contract/contract-model/src/main/java/com/jd/blockchain/contract/model/ContractRuntimeAwire.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/contract/ContractRuntimeAwire.java similarity index 81% rename from source/contract/contract-model/src/main/java/com/jd/blockchain/contract/model/ContractRuntimeAwire.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/contract/ContractRuntimeAwire.java index d5627985..eab96a41 100644 --- a/source/contract/contract-model/src/main/java/com/jd/blockchain/contract/model/ContractRuntimeAwire.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/contract/ContractRuntimeAwire.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.contract.model; +package com.jd.blockchain.contract; /** * 合约实现 {@link ContractRuntimeAwire} 的子接口可以监听运行时的生命周期事件; diff --git a/source/contract/contract-model/src/main/java/com/jd/blockchain/contract/model/ErrorCodeEnum.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/contract/ErrorCodeEnum.java similarity index 96% rename from source/contract/contract-model/src/main/java/com/jd/blockchain/contract/model/ErrorCodeEnum.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/contract/ErrorCodeEnum.java index 5e2bcb05..f978cb2f 100644 --- a/source/contract/contract-model/src/main/java/com/jd/blockchain/contract/model/ErrorCodeEnum.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/contract/ErrorCodeEnum.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.contract.model; +package com.jd.blockchain.contract; /** * 给每个错误编码,编译快速定位; diff --git a/source/contract/contract-model/src/main/java/com/jd/blockchain/contract/model/EventHandle.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/contract/EventHandle.java similarity index 84% rename from source/contract/contract-model/src/main/java/com/jd/blockchain/contract/model/EventHandle.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/contract/EventHandle.java index 35af3fe0..9b301460 100644 --- a/source/contract/contract-model/src/main/java/com/jd/blockchain/contract/model/EventHandle.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/contract/EventHandle.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.contract.model; +package com.jd.blockchain.contract; import java.lang.annotation.ElementType; import java.lang.annotation.Retention; diff --git a/source/contract/contract-model/src/main/java/com/jd/blockchain/contract/model/EventProcessingAwire.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/contract/EventProcessingAwire.java similarity index 95% rename from source/contract/contract-model/src/main/java/com/jd/blockchain/contract/model/EventProcessingAwire.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/contract/EventProcessingAwire.java index 9098dda3..36080be1 100644 --- a/source/contract/contract-model/src/main/java/com/jd/blockchain/contract/model/EventProcessingAwire.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/contract/EventProcessingAwire.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.contract.model; +package com.jd.blockchain.contract; /** * @author huanghaiquan diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/contract/LedgerContext.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/contract/LedgerContext.java new file mode 100644 index 00000000..196949ab --- /dev/null +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/contract/LedgerContext.java @@ -0,0 +1,11 @@ +package com.jd.blockchain.contract; + +import com.jd.blockchain.transaction.BlockchainQueryService; +import com.jd.blockchain.transaction.DataAccountOperator; +import com.jd.blockchain.transaction.UserOperator; + +public interface LedgerContext extends BlockchainQueryService, UserOperator, DataAccountOperator{ + + + +} diff --git a/source/contract/contract-model/src/main/java/com/jd/blockchain/contract/model/LocalContractEventContext.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/contract/LocalContractEventContext.java similarity index 98% rename from source/contract/contract-model/src/main/java/com/jd/blockchain/contract/model/LocalContractEventContext.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/contract/LocalContractEventContext.java index 2b1261b8..7d366d0c 100644 --- a/source/contract/contract-model/src/main/java/com/jd/blockchain/contract/model/LocalContractEventContext.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/contract/LocalContractEventContext.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.contract.model; +package com.jd.blockchain.contract; import com.jd.blockchain.crypto.HashDigest; import com.jd.blockchain.ledger.BlockchainIdentity; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/ContractEventSendOperation.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/ContractEventSendOperation.java index 38c6b90d..301dda65 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/ContractEventSendOperation.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/ContractEventSendOperation.java @@ -13,12 +13,6 @@ import com.jd.blockchain.utils.ValueType; @DataContract(code= TypeCodes.TX_OP_CONTRACT_EVENT_SEND) public interface ContractEventSendOperation extends Operation { -// @DataField(order=1, refEnum=true) -// @Override -// default OperationType getType() { -// return OperationType.SEND_CONTRACT_EVENT; -// } - @DataField(order=2, primitiveType=ValueType.BYTES) Bytes getContractAddress(); diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionBuilder.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionBuilder.java index 65eca630..26c5cfc5 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionBuilder.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionBuilder.java @@ -1,8 +1,8 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.crypto.HashDigest; -import com.jd.blockchain.ledger.data.ClientOperator; -import com.jd.blockchain.ledger.data.LedgerInitOperator; +import com.jd.blockchain.transaction.ClientOperator; +import com.jd.blockchain.transaction.LedgerInitOperator; /** * 区块链交易模板; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionTemplate.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionTemplate.java index afc1eb95..3c5acdcf 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionTemplate.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionTemplate.java @@ -1,7 +1,7 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.crypto.HashDigest; -import com.jd.blockchain.ledger.data.ClientOperator; +import com.jd.blockchain.transaction.ClientOperator; /** * 区块链交易模板; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/EventOperator.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/EventOperator.java deleted file mode 100644 index 551dc06b..00000000 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/EventOperator.java +++ /dev/null @@ -1,11 +0,0 @@ -package com.jd.blockchain.ledger.data; - -public interface EventOperator { - - /** - * 部署合约; - * @return - */ - ContractEventSendOperationBuilder contractEvents(); - -} \ No newline at end of file diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/service/TransactionBatchProcess.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/service/TransactionBatchProcess.java similarity index 95% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/service/TransactionBatchProcess.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/service/TransactionBatchProcess.java index 083b5215..9ac5c78e 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/service/TransactionBatchProcess.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/service/TransactionBatchProcess.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.ledger.service; +package com.jd.blockchain.service; import com.jd.blockchain.ledger.TransactionRequest; import com.jd.blockchain.ledger.TransactionResponse; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/service/TransactionBatchResult.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/service/TransactionBatchResult.java similarity index 85% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/service/TransactionBatchResult.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/service/TransactionBatchResult.java index b1363325..3b7038a5 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/service/TransactionBatchResult.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/service/TransactionBatchResult.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.ledger.service; +package com.jd.blockchain.service; import java.util.Iterator; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/service/TransactionBatchResultHandle.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/service/TransactionBatchResultHandle.java similarity index 82% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/service/TransactionBatchResultHandle.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/service/TransactionBatchResultHandle.java index 2af06531..03caed25 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/service/TransactionBatchResultHandle.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/service/TransactionBatchResultHandle.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.ledger.service; +package com.jd.blockchain.service; import com.jd.blockchain.ledger.TransactionState; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/service/TransactionEngine.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/service/TransactionEngine.java similarity index 83% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/service/TransactionEngine.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/service/TransactionEngine.java index bfcde37b..aad92209 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/service/TransactionEngine.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/service/TransactionEngine.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.ledger.service; +package com.jd.blockchain.service; import com.jd.blockchain.crypto.HashDigest; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/manage/GatewayIncomingSetting.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/setting/GatewayIncomingSetting.java similarity index 86% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/manage/GatewayIncomingSetting.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/setting/GatewayIncomingSetting.java index abd25b4d..d6212fd7 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/manage/GatewayIncomingSetting.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/setting/GatewayIncomingSetting.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.manage; +package com.jd.blockchain.setting; /** * 网关接入设置; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/manage/LedgerIncomingSetting.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/setting/LedgerIncomingSetting.java similarity index 98% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/manage/LedgerIncomingSetting.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/setting/LedgerIncomingSetting.java index 15dbbf77..0e110f12 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/manage/LedgerIncomingSetting.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/setting/LedgerIncomingSetting.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.manage; +package com.jd.blockchain.setting; import com.jd.blockchain.crypto.HashDigest; import com.jd.blockchain.ledger.CryptoSetting; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/BlockchainOperationFactory.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/BlockchainOperationFactory.java similarity index 93% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/BlockchainOperationFactory.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/BlockchainOperationFactory.java index 08d9d45a..bd1bfd5b 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/BlockchainOperationFactory.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/BlockchainOperationFactory.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.ledger.data; +package com.jd.blockchain.transaction; import java.util.ArrayList; import java.util.Collection; @@ -15,6 +15,10 @@ import com.jd.blockchain.ledger.Operation; import com.jd.blockchain.ledger.UserRegisterOperation; import com.jd.blockchain.utils.Bytes; +/** + * @author huanghaiquan + * + */ public class BlockchainOperationFactory implements ClientOperator, LedgerInitOperator { private static final LedgerInitOperationBuilderImpl LEDGER_INIT_OP_BUILDER = new LedgerInitOperationBuilderImpl(); @@ -27,6 +31,7 @@ public class BlockchainOperationFactory implements ClientOperator, LedgerInitOpe private static final ContractEventSendOperationBuilderImpl CONTRACT_EVENT_SEND_OP_BUILDER = new ContractEventSendOperationBuilderImpl(); + private LedgerInitOperationBuilder ledgerInitOpBuilder = new LedgerInitOperationBuilderFilter(); private UserRegisterOperationBuilder userRegOpBuilder = new UserRegisterOperationBuilderFilter(); @@ -73,6 +78,12 @@ public class BlockchainOperationFactory implements ClientOperator, LedgerInitOpe public ContractEventSendOperationBuilder contractEvents() { return contractEventSendOpBuilder; } + + @Override + public T contract(String address, Class contractIntf) { + // TODO Auto-generated method stub + return null; + } public Collection getOperations() { // TODO: 合并操作列表中可能的重复操作; diff --git a/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/BlockchainQueryService.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/BlockchainQueryService.java similarity index 95% rename from source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/BlockchainQueryService.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/BlockchainQueryService.java index 942019a5..3b33a720 100644 --- a/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/BlockchainQueryService.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/BlockchainQueryService.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.sdk; +package com.jd.blockchain.transaction; import com.jd.blockchain.crypto.HashDigest; import com.jd.blockchain.ledger.*; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/ClientOperator.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ClientOperator.java similarity index 81% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/ClientOperator.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ClientOperator.java index 9fe9ff4f..5e47ef89 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/ClientOperator.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ClientOperator.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.ledger.data; +package com.jd.blockchain.transaction; /** * 面向客户端的操作; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/ConsensusParticipantData.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ConsensusParticipantData.java similarity index 95% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/ConsensusParticipantData.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ConsensusParticipantData.java index e31d6447..b4e64744 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/ConsensusParticipantData.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ConsensusParticipantData.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.ledger.data; +package com.jd.blockchain.transaction; import com.jd.blockchain.crypto.PubKey; import com.jd.blockchain.ledger.ParticipantNode; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/ContractCodeDeployOpTemplate.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ContractCodeDeployOpTemplate.java similarity index 92% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/ContractCodeDeployOpTemplate.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ContractCodeDeployOpTemplate.java index 704d0cde..4da74638 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/ContractCodeDeployOpTemplate.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ContractCodeDeployOpTemplate.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.ledger.data; +package com.jd.blockchain.transaction; import com.jd.blockchain.binaryproto.DataContractRegistry; import com.jd.blockchain.ledger.BlockchainIdentity; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/ContractCodeDeployOperationBuilder.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ContractCodeDeployOperationBuilder.java similarity index 87% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/ContractCodeDeployOperationBuilder.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ContractCodeDeployOperationBuilder.java index ee48739c..ff2c18fb 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/ContractCodeDeployOperationBuilder.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ContractCodeDeployOperationBuilder.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.ledger.data; +package com.jd.blockchain.transaction; import com.jd.blockchain.ledger.BlockchainIdentity; import com.jd.blockchain.ledger.ContractCodeDeployOperation; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/ContractCodeDeployOperationBuilderImpl.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ContractCodeDeployOperationBuilderImpl.java similarity index 88% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/ContractCodeDeployOperationBuilderImpl.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ContractCodeDeployOperationBuilderImpl.java index 67921caf..a0c2bba4 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/ContractCodeDeployOperationBuilderImpl.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ContractCodeDeployOperationBuilderImpl.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.ledger.data; +package com.jd.blockchain.transaction; import com.jd.blockchain.ledger.BlockchainIdentity; import com.jd.blockchain.ledger.ContractCodeDeployOperation; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ContractDefinition.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ContractDefinition.java new file mode 100644 index 00000000..cee26713 --- /dev/null +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ContractDefinition.java @@ -0,0 +1,5 @@ +package com.jd.blockchain.transaction; + +class ContractDefinition { + +} diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/ContractEventSendOpTemplate.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ContractEventSendOpTemplate.java similarity index 91% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/ContractEventSendOpTemplate.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ContractEventSendOpTemplate.java index 23b15d02..29777b96 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/ContractEventSendOpTemplate.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ContractEventSendOpTemplate.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.ledger.data; +package com.jd.blockchain.transaction; import com.jd.blockchain.binaryproto.DataContractRegistry; import com.jd.blockchain.ledger.ContractEventSendOperation; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/ContractEventSendOperationBuilder.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ContractEventSendOperationBuilder.java similarity index 85% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/ContractEventSendOperationBuilder.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ContractEventSendOperationBuilder.java index 1c3f7721..66f1ec22 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/ContractEventSendOperationBuilder.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ContractEventSendOperationBuilder.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.ledger.data; +package com.jd.blockchain.transaction; import com.jd.blockchain.ledger.ContractEventSendOperation; import com.jd.blockchain.utils.Bytes; @@ -11,6 +11,7 @@ public interface ContractEventSendOperationBuilder { * @param args 事件参数; * @return */ + @Deprecated ContractEventSendOperation send(String address, String event, byte[] args); /** @@ -19,6 +20,7 @@ public interface ContractEventSendOperationBuilder { * @param args 事件参数; * @return */ + @Deprecated ContractEventSendOperation send(Bytes address, String event, byte[] args); } diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/ContractEventSendOperationBuilderImpl.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ContractEventSendOperationBuilderImpl.java similarity index 76% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/ContractEventSendOperationBuilderImpl.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ContractEventSendOperationBuilderImpl.java index fdef8106..7c54e4e8 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/ContractEventSendOperationBuilderImpl.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ContractEventSendOperationBuilderImpl.java @@ -1,9 +1,10 @@ -package com.jd.blockchain.ledger.data; +package com.jd.blockchain.transaction; import com.jd.blockchain.ledger.ContractEventSendOperation; import com.jd.blockchain.utils.Bytes; -public class ContractEventSendOperationBuilderImpl implements ContractEventSendOperationBuilder{ +@Deprecated +class ContractEventSendOperationBuilderImpl implements ContractEventSendOperationBuilder{ @Override diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ContractInvocationProxy.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ContractInvocationProxy.java new file mode 100644 index 00000000..c9b97e4d --- /dev/null +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ContractInvocationProxy.java @@ -0,0 +1,22 @@ +package com.jd.blockchain.transaction; + +import java.lang.reflect.InvocationHandler; +import java.lang.reflect.Method; + +public class ContractInvocationProxy implements InvocationHandler { + + + private String contractMessage; + + + private ContractEventSendOperationBuilder sendOpBuilder; + + + + @Override + public Object invoke(Object proxy, Method method, Object[] args) throws Throwable { + // TODO Auto-generated method stub + return null; + } + +} diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ContractInvocationProxyBuilder.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ContractInvocationProxyBuilder.java new file mode 100644 index 00000000..2bc6c9ea --- /dev/null +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ContractInvocationProxyBuilder.java @@ -0,0 +1,6 @@ +package com.jd.blockchain.transaction; + +class ContractInvocationProxyBuilder { + + +} diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/ContractOperator.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ContractOperator.java similarity index 76% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/ContractOperator.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ContractOperator.java index dada75c1..cc0f7da4 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/ContractOperator.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ContractOperator.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.ledger.data; +package com.jd.blockchain.transaction; public interface ContractOperator { diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/DataAccountKVSetOpTemplate.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/DataAccountKVSetOpTemplate.java similarity index 94% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/DataAccountKVSetOpTemplate.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/DataAccountKVSetOpTemplate.java index 0fc6d2e3..5a1b48ab 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/DataAccountKVSetOpTemplate.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/DataAccountKVSetOpTemplate.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.ledger.data; +package com.jd.blockchain.transaction; import java.util.LinkedHashMap; import java.util.Map; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/DataAccountKVSetOperationBuilder.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/DataAccountKVSetOperationBuilder.java similarity index 93% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/DataAccountKVSetOperationBuilder.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/DataAccountKVSetOperationBuilder.java index 9f0ae566..4e0a903c 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/DataAccountKVSetOperationBuilder.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/DataAccountKVSetOperationBuilder.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.ledger.data; +package com.jd.blockchain.transaction; import com.jd.blockchain.ledger.DataAccountKVSetOperation; import com.jd.blockchain.utils.Bytes; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/DataAccountKVSetOperationBuilderImpl.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/DataAccountKVSetOperationBuilderImpl.java similarity index 95% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/DataAccountKVSetOperationBuilderImpl.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/DataAccountKVSetOperationBuilderImpl.java index 58d94a2c..6d7aff58 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/DataAccountKVSetOperationBuilderImpl.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/DataAccountKVSetOperationBuilderImpl.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.ledger.data; +package com.jd.blockchain.transaction; import com.jd.blockchain.ledger.BytesValue; import com.jd.blockchain.ledger.BytesValueImpl; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/DataAccountOperator.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/DataAccountOperator.java similarity index 91% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/DataAccountOperator.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/DataAccountOperator.java index ff08d6cf..7964e7ef 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/DataAccountOperator.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/DataAccountOperator.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.ledger.data; +package com.jd.blockchain.transaction; import com.jd.blockchain.utils.Bytes; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/DataAccountRegisterOpTemplate.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/DataAccountRegisterOpTemplate.java similarity index 91% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/DataAccountRegisterOpTemplate.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/DataAccountRegisterOpTemplate.java index 63ad84d9..ffcbd455 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/DataAccountRegisterOpTemplate.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/DataAccountRegisterOpTemplate.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.ledger.data; +package com.jd.blockchain.transaction; import com.jd.blockchain.binaryproto.DataContractRegistry; import com.jd.blockchain.ledger.BlockchainIdentity; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/DataAccountRegisterOperationBuilder.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/DataAccountRegisterOperationBuilder.java similarity index 83% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/DataAccountRegisterOperationBuilder.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/DataAccountRegisterOperationBuilder.java index c6bd23f0..ca248fc4 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/DataAccountRegisterOperationBuilder.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/DataAccountRegisterOperationBuilder.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.ledger.data; +package com.jd.blockchain.transaction; import com.jd.blockchain.ledger.BlockchainIdentity; import com.jd.blockchain.ledger.DataAccountRegisterOperation; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/DataAccountRegisterOperationBuilderImpl.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/DataAccountRegisterOperationBuilderImpl.java similarity index 87% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/DataAccountRegisterOperationBuilderImpl.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/DataAccountRegisterOperationBuilderImpl.java index afff51a2..eba6b97d 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/DataAccountRegisterOperationBuilderImpl.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/DataAccountRegisterOperationBuilderImpl.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.ledger.data; +package com.jd.blockchain.transaction; import com.jd.blockchain.ledger.BlockchainIdentity; import com.jd.blockchain.ledger.DataAccountRegisterOperation; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/DigitalSignatureBlob.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/DigitalSignatureBlob.java similarity index 95% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/DigitalSignatureBlob.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/DigitalSignatureBlob.java index 18cc78fa..a2125490 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/DigitalSignatureBlob.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/DigitalSignatureBlob.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.ledger.data; +package com.jd.blockchain.transaction; import com.jd.blockchain.crypto.PubKey; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/EventOperator.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/EventOperator.java new file mode 100644 index 00000000..687c204d --- /dev/null +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/EventOperator.java @@ -0,0 +1,22 @@ +package com.jd.blockchain.transaction; + +public interface EventOperator { + + /** + * 部署合约; + * + * @return + */ + @Deprecated + ContractEventSendOperationBuilder contractEvents(); + + /** + * 创建调用合约的代理实例; + * + * @param address + * @param contractIntf + * @return + */ + T contract(String address, Class contractIntf); + +} \ No newline at end of file diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/KVData.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/KVData.java similarity index 93% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/KVData.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/KVData.java index 29ed209f..de93fcc8 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/KVData.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/KVData.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.ledger.data; +package com.jd.blockchain.transaction; import com.jd.blockchain.ledger.BytesValue; import com.jd.blockchain.ledger.DataAccountKVSetOperation.KVWriteEntry; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/LedgerInitOpTemplate.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/LedgerInitOpTemplate.java similarity index 89% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/LedgerInitOpTemplate.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/LedgerInitOpTemplate.java index ccfdecaa..4259c98c 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/LedgerInitOpTemplate.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/LedgerInitOpTemplate.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.ledger.data; +package com.jd.blockchain.transaction; import com.jd.blockchain.binaryproto.DataContractRegistry; import com.jd.blockchain.ledger.LedgerInitOperation; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/LedgerInitOperationBuilder.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/LedgerInitOperationBuilder.java similarity index 85% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/LedgerInitOperationBuilder.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/LedgerInitOperationBuilder.java index 6b7ff42b..9416d73d 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/LedgerInitOperationBuilder.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/LedgerInitOperationBuilder.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.ledger.data; +package com.jd.blockchain.transaction; import com.jd.blockchain.ledger.LedgerInitOperation; import com.jd.blockchain.ledger.LedgerInitSetting; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/LedgerInitOperationBuilderImpl.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/LedgerInitOperationBuilderImpl.java similarity index 86% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/LedgerInitOperationBuilderImpl.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/LedgerInitOperationBuilderImpl.java index 5cb11dc2..9562ae64 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/LedgerInitOperationBuilderImpl.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/LedgerInitOperationBuilderImpl.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.ledger.data; +package com.jd.blockchain.transaction; import com.jd.blockchain.ledger.LedgerInitOperation; import com.jd.blockchain.ledger.LedgerInitSetting; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/LedgerInitOperator.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/LedgerInitOperator.java similarity index 77% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/LedgerInitOperator.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/LedgerInitOperator.java index 43ee3fbb..62c4f293 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/LedgerInitOperator.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/LedgerInitOperator.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.ledger.data; +package com.jd.blockchain.transaction; public interface LedgerInitOperator { diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/LedgerInitSettingData.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/LedgerInitSettingData.java similarity index 97% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/LedgerInitSettingData.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/LedgerInitSettingData.java index ae40966b..e4fe8171 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/LedgerInitSettingData.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/LedgerInitSettingData.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.ledger.data; +package com.jd.blockchain.transaction; import com.jd.blockchain.ledger.ParticipantNode; import com.jd.blockchain.utils.Bytes; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/NewLedgerOpBlob.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/NewLedgerOpBlob.java similarity index 92% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/NewLedgerOpBlob.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/NewLedgerOpBlob.java index cd68cd30..ee496969 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/NewLedgerOpBlob.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/NewLedgerOpBlob.java @@ -1,3 +1,4 @@ +package com.jd.blockchain.transaction; //package com.jd.blockchain.ledger.data; // //import com.jd.blockchain.ledger.OperationType; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/PreparedTx.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/PreparedTx.java similarity index 98% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/PreparedTx.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/PreparedTx.java index 02c74a84..ce5f9920 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/PreparedTx.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/PreparedTx.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.ledger.data; +package com.jd.blockchain.transaction; import com.jd.blockchain.binaryproto.BinaryEncodingUtils; import com.jd.blockchain.crypto.AsymmetricKeypair; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/PrivilegeSettingOperationBuilder.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/PrivilegeSettingOperationBuilder.java similarity index 92% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/PrivilegeSettingOperationBuilder.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/PrivilegeSettingOperationBuilder.java index f65b3cde..f2cbab74 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/PrivilegeSettingOperationBuilder.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/PrivilegeSettingOperationBuilder.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.ledger.data; +package com.jd.blockchain.transaction; import com.jd.blockchain.ledger.PrivilegeType; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/PubKeyData.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/PubKeyData.java similarity index 88% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/PubKeyData.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/PubKeyData.java index e7350873..a31864e6 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/PubKeyData.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/PubKeyData.java @@ -1,3 +1,4 @@ +package com.jd.blockchain.transaction; //package com.jd.blockchain.ledger.data; // //import com.jd.blockchain.ledger.KeyType; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/SignatureEncoding.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/SignatureEncoding.java similarity index 92% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/SignatureEncoding.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/SignatureEncoding.java index 78031fb3..d92c9eb8 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/SignatureEncoding.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/SignatureEncoding.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.ledger.data; +package com.jd.blockchain.transaction; import org.springframework.util.Base64Utils; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/TransactionService.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/TransactionService.java similarity index 81% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/TransactionService.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/TransactionService.java index aa56dbe7..9d9a9ab8 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/TransactionService.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/TransactionService.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.ledger.data; +package com.jd.blockchain.transaction; import com.jd.blockchain.ledger.TransactionRequest; import com.jd.blockchain.ledger.TransactionResponse; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/TxBuilder.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/TxBuilder.java similarity index 89% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/TxBuilder.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/TxBuilder.java index 0b6bfa48..2a2c62fd 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/TxBuilder.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/TxBuilder.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.ledger.data; +package com.jd.blockchain.transaction; import com.jd.blockchain.binaryproto.BinaryEncodingUtils; import com.jd.blockchain.binaryproto.DataContractRegistry; @@ -83,5 +83,11 @@ public class TxBuilder implements TransactionBuilder { public ContractEventSendOperationBuilder contractEvents() { return opFactory.contractEvents(); } + + @Override + public T contract(String address, Class contractIntf) { + // TODO Auto-generated method stub + return null; + } } diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/TxContentBlob.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/TxContentBlob.java similarity index 93% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/TxContentBlob.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/TxContentBlob.java index 5be77cf0..f1cb2993 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/TxContentBlob.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/TxContentBlob.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.ledger.data; +package com.jd.blockchain.transaction; import java.util.ArrayList; import java.util.Collection; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/TxRequestBuilder.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/TxRequestBuilder.java similarity index 95% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/TxRequestBuilder.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/TxRequestBuilder.java index 848f1e3d..a26a9a4d 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/TxRequestBuilder.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/TxRequestBuilder.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.ledger.data; +package com.jd.blockchain.transaction; import java.util.ArrayList; import java.util.List; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/TxRequestMessage.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/TxRequestMessage.java similarity index 96% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/TxRequestMessage.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/TxRequestMessage.java index 06c29cbf..50037ee4 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/TxRequestMessage.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/TxRequestMessage.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.ledger.data; +package com.jd.blockchain.transaction; import java.util.LinkedHashMap; import java.util.List; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/TxResponseMessage.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/TxResponseMessage.java similarity index 92% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/TxResponseMessage.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/TxResponseMessage.java index 144a7762..8a912d21 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/TxResponseMessage.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/TxResponseMessage.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.ledger.data; +package com.jd.blockchain.transaction; import com.jd.blockchain.ledger.TransactionState; import com.jd.blockchain.crypto.HashDigest; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/TxTemplate.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/TxTemplate.java similarity index 86% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/TxTemplate.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/TxTemplate.java index 3f8523bc..f19906db 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/TxTemplate.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/TxTemplate.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.ledger.data; +package com.jd.blockchain.transaction; import com.jd.blockchain.crypto.HashDigest; import com.jd.blockchain.ledger.PreparedTransaction; @@ -57,5 +57,10 @@ public class TxTemplate implements TransactionTemplate { public ContractEventSendOperationBuilder contractEvents() { return txBuilder.contractEvents(); } + + @Override + public T contract(String address, Class contractIntf) { + return txBuilder.contract(address, contractIntf); + } } diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/UserOperator.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/UserOperator.java similarity index 76% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/UserOperator.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/UserOperator.java index 9053b9fb..fdd82668 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/UserOperator.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/UserOperator.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.ledger.data; +package com.jd.blockchain.transaction; public interface UserOperator { diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/UserRegisterOpTemplate.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/UserRegisterOpTemplate.java similarity index 89% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/UserRegisterOpTemplate.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/UserRegisterOpTemplate.java index f1c9940d..91ea541a 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/UserRegisterOpTemplate.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/UserRegisterOpTemplate.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.ledger.data; +package com.jd.blockchain.transaction; import com.jd.blockchain.binaryproto.DataContractRegistry; import com.jd.blockchain.ledger.BlockchainIdentity; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/UserRegisterOperationBuilder.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/UserRegisterOperationBuilder.java similarity index 86% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/UserRegisterOperationBuilder.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/UserRegisterOperationBuilder.java index 8977ce3d..76f0e956 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/UserRegisterOperationBuilder.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/UserRegisterOperationBuilder.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.ledger.data; +package com.jd.blockchain.transaction; import com.jd.blockchain.ledger.BlockchainIdentity; import com.jd.blockchain.ledger.UserRegisterOperation; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/UserRegisterOperationBuilderImpl.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/UserRegisterOperationBuilderImpl.java similarity index 85% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/UserRegisterOperationBuilderImpl.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/UserRegisterOperationBuilderImpl.java index ae7301b9..39a84725 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/data/UserRegisterOperationBuilderImpl.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/UserRegisterOperationBuilderImpl.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.ledger.data; +package com.jd.blockchain.transaction; import com.jd.blockchain.ledger.BlockchainIdentity; import com.jd.blockchain.ledger.UserRegisterOperation; diff --git a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/ContractCodeDeployOpTemplateTest.java b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/ContractCodeDeployOpTemplateTest.java index cbdbe67f..bc534897 100644 --- a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/ContractCodeDeployOpTemplateTest.java +++ b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/ContractCodeDeployOpTemplateTest.java @@ -24,7 +24,7 @@ import com.jd.blockchain.ledger.BlockchainIdentity; import com.jd.blockchain.ledger.BlockchainIdentityData; import com.jd.blockchain.ledger.ContractCodeDeployOperation; import com.jd.blockchain.ledger.Operation; -import com.jd.blockchain.ledger.data.ContractCodeDeployOpTemplate; +import com.jd.blockchain.transaction.ContractCodeDeployOpTemplate; import com.jd.blockchain.utils.io.BytesUtils; /** diff --git a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/ContractEventSendOpTemplateTest.java b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/ContractEventSendOpTemplateTest.java index ead7b0e5..3f70b8ca 100644 --- a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/ContractEventSendOpTemplateTest.java +++ b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/ContractEventSendOpTemplateTest.java @@ -13,8 +13,8 @@ import com.jd.blockchain.binaryproto.DataContractRegistry; import com.jd.blockchain.ledger.ContractEventSendOperation; import com.jd.blockchain.ledger.DataAccountKVSetOperation; import com.jd.blockchain.ledger.Operation; -import com.jd.blockchain.ledger.data.ContractEventSendOpTemplate; -import com.jd.blockchain.ledger.data.DataAccountKVSetOpTemplate; +import com.jd.blockchain.transaction.ContractEventSendOpTemplate; +import com.jd.blockchain.transaction.DataAccountKVSetOpTemplate; import com.jd.blockchain.utils.Bytes; import org.junit.Before; diff --git a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/DataAccountKVSetOpTemplateTest.java b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/DataAccountKVSetOpTemplateTest.java index 2ad55386..ed7d8c57 100644 --- a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/DataAccountKVSetOpTemplateTest.java +++ b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/DataAccountKVSetOpTemplateTest.java @@ -14,8 +14,8 @@ import com.jd.blockchain.ledger.BytesValueImpl; import com.jd.blockchain.ledger.DataAccountKVSetOperation; import com.jd.blockchain.ledger.DataType; import com.jd.blockchain.ledger.Operation; -import com.jd.blockchain.ledger.data.DataAccountKVSetOpTemplate; -import com.jd.blockchain.ledger.data.KVData; +import com.jd.blockchain.transaction.DataAccountKVSetOpTemplate; +import com.jd.blockchain.transaction.KVData; import com.jd.blockchain.utils.Bytes; import org.junit.Before; diff --git a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/DataAccountRegisterOpTemplateTest.java b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/DataAccountRegisterOpTemplateTest.java index 207f5e42..861db193 100644 --- a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/DataAccountRegisterOpTemplateTest.java +++ b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/DataAccountRegisterOpTemplateTest.java @@ -22,7 +22,7 @@ import com.jd.blockchain.ledger.BlockchainIdentity; import com.jd.blockchain.ledger.BlockchainIdentityData; import com.jd.blockchain.ledger.DataAccountRegisterOperation; import com.jd.blockchain.ledger.Operation; -import com.jd.blockchain.ledger.data.DataAccountRegisterOpTemplate; +import com.jd.blockchain.transaction.DataAccountRegisterOpTemplate; /** * diff --git a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/DigitalSignatureBlobTest.java b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/DigitalSignatureBlobTest.java index ac0bc568..e7a66d8b 100644 --- a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/DigitalSignatureBlobTest.java +++ b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/DigitalSignatureBlobTest.java @@ -23,7 +23,7 @@ import com.jd.blockchain.crypto.SignatureDigest; import com.jd.blockchain.crypto.SignatureFunction; import com.jd.blockchain.ledger.DigitalSignature; import com.jd.blockchain.ledger.DigitalSignatureBody; -import com.jd.blockchain.ledger.data.DigitalSignatureBlob; +import com.jd.blockchain.transaction.DigitalSignatureBlob; /** * diff --git a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/KVDataTest.java b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/KVDataTest.java index 1ee20e8a..666d3a0e 100644 --- a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/KVDataTest.java +++ b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/KVDataTest.java @@ -13,8 +13,9 @@ import com.jd.blockchain.binaryproto.DataContractRegistry; import com.jd.blockchain.ledger.BytesValueImpl; import com.jd.blockchain.ledger.DataAccountKVSetOperation; import com.jd.blockchain.ledger.DataType; -import com.jd.blockchain.ledger.data.DataAccountKVSetOpTemplate; -import com.jd.blockchain.ledger.data.KVData; +import com.jd.blockchain.transaction.DataAccountKVSetOpTemplate; +import com.jd.blockchain.transaction.KVData; + import org.junit.Before; import org.junit.Test; diff --git a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/TxContentBlobTest.java b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/TxContentBlobTest.java index 20f0e8d0..6587db91 100644 --- a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/TxContentBlobTest.java +++ b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/TxContentBlobTest.java @@ -20,8 +20,8 @@ import com.jd.blockchain.ledger.HashObject; import com.jd.blockchain.ledger.Operation; import com.jd.blockchain.ledger.TransactionContent; import com.jd.blockchain.ledger.TransactionContentBody; -import com.jd.blockchain.ledger.data.BlockchainOperationFactory; -import com.jd.blockchain.ledger.data.TxContentBlob; +import com.jd.blockchain.transaction.BlockchainOperationFactory; +import com.jd.blockchain.transaction.TxContentBlob; import com.jd.blockchain.utils.io.ByteArray; public class TxContentBlobTest { diff --git a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/TxRequestMessageTest.java b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/TxRequestMessageTest.java index 7434ec66..3c653d0e 100644 --- a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/TxRequestMessageTest.java +++ b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/TxRequestMessageTest.java @@ -33,10 +33,10 @@ import com.jd.blockchain.ledger.NodeRequest; import com.jd.blockchain.ledger.Operation; import com.jd.blockchain.ledger.TransactionContent; import com.jd.blockchain.ledger.TransactionRequest; -import com.jd.blockchain.ledger.data.BlockchainOperationFactory; -import com.jd.blockchain.ledger.data.DigitalSignatureBlob; -import com.jd.blockchain.ledger.data.TxContentBlob; -import com.jd.blockchain.ledger.data.TxRequestMessage; +import com.jd.blockchain.transaction.BlockchainOperationFactory; +import com.jd.blockchain.transaction.DigitalSignatureBlob; +import com.jd.blockchain.transaction.TxContentBlob; +import com.jd.blockchain.transaction.TxRequestMessage; import com.jd.blockchain.utils.io.ByteArray; /** diff --git a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/TxResponseMessageTest.java b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/TxResponseMessageTest.java index 69f0dea0..f34b8eb3 100644 --- a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/TxResponseMessageTest.java +++ b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/TxResponseMessageTest.java @@ -20,7 +20,7 @@ import com.jd.blockchain.crypto.HashDigest; import com.jd.blockchain.crypto.HashFunction; import com.jd.blockchain.ledger.TransactionResponse; import com.jd.blockchain.ledger.TransactionState; -import com.jd.blockchain.ledger.data.TxResponseMessage; +import com.jd.blockchain.transaction.TxResponseMessage; /** * diff --git a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/UserRegisterOpTemplateTest.java b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/UserRegisterOpTemplateTest.java index 2d79c03d..36fea9a6 100644 --- a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/UserRegisterOpTemplateTest.java +++ b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/UserRegisterOpTemplateTest.java @@ -22,7 +22,7 @@ import com.jd.blockchain.ledger.BlockchainIdentity; import com.jd.blockchain.ledger.BlockchainIdentityData; import com.jd.blockchain.ledger.Operation; import com.jd.blockchain.ledger.UserRegisterOperation; -import com.jd.blockchain.ledger.data.UserRegisterOpTemplate; +import com.jd.blockchain.transaction.UserRegisterOpTemplate; /** * diff --git a/source/peer/src/main/java/com/jd/blockchain/peer/consensus/ConsensusMessageDispatcher.java b/source/peer/src/main/java/com/jd/blockchain/peer/consensus/ConsensusMessageDispatcher.java index 80e48bcc..17d862b1 100644 --- a/source/peer/src/main/java/com/jd/blockchain/peer/consensus/ConsensusMessageDispatcher.java +++ b/source/peer/src/main/java/com/jd/blockchain/peer/consensus/ConsensusMessageDispatcher.java @@ -5,10 +5,9 @@ import com.jd.blockchain.ledger.LedgerBlock; import com.jd.blockchain.ledger.TransactionRequest; import com.jd.blockchain.ledger.TransactionResponse; import com.jd.blockchain.ledger.TransactionState; -import com.jd.blockchain.ledger.service.TransactionBatchProcess; -import com.jd.blockchain.ledger.service.TransactionBatchResultHandle; -import com.jd.blockchain.ledger.service.TransactionEngine; - +import com.jd.blockchain.service.TransactionBatchProcess; +import com.jd.blockchain.service.TransactionBatchResultHandle; +import com.jd.blockchain.service.TransactionEngine; import com.jd.blockchain.utils.codec.Base58Utils; import com.jd.blockchain.utils.concurrent.AsyncFuture; import com.jd.blockchain.utils.concurrent.CompletableAsyncFuture; diff --git a/source/peer/src/main/java/com/jd/blockchain/peer/ledger/LedgerConfigurer.java b/source/peer/src/main/java/com/jd/blockchain/peer/ledger/LedgerConfigurer.java index 289e16cf..5a2bc247 100644 --- a/source/peer/src/main/java/com/jd/blockchain/peer/ledger/LedgerConfigurer.java +++ b/source/peer/src/main/java/com/jd/blockchain/peer/ledger/LedgerConfigurer.java @@ -7,7 +7,7 @@ import com.jd.blockchain.ledger.core.impl.DefaultOperationHandleRegisteration; import com.jd.blockchain.ledger.core.impl.LedgerManager; import com.jd.blockchain.ledger.core.impl.OperationHandleRegisteration; import com.jd.blockchain.ledger.core.impl.TransactionEngineImpl; -import com.jd.blockchain.ledger.service.TransactionEngine; +import com.jd.blockchain.service.TransactionEngine; @Configuration public class LedgerConfigurer { diff --git a/source/peer/src/main/java/com/jd/blockchain/peer/web/LedgerQueryController.java b/source/peer/src/main/java/com/jd/blockchain/peer/web/LedgerQueryController.java index c061956a..196d5175 100644 --- a/source/peer/src/main/java/com/jd/blockchain/peer/web/LedgerQueryController.java +++ b/source/peer/src/main/java/com/jd/blockchain/peer/web/LedgerQueryController.java @@ -1,16 +1,37 @@ package com.jd.blockchain.peer.web; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; + import com.jd.blockchain.binaryproto.BinaryEncodingUtils; import com.jd.blockchain.crypto.HashDigest; -import com.jd.blockchain.ledger.*; -import com.jd.blockchain.ledger.core.*; -import com.jd.blockchain.ledger.core.impl.LedgerQueryService; -import com.jd.blockchain.sdk.BlockchainQueryService; +import com.jd.blockchain.ledger.AccountHeader; +import com.jd.blockchain.ledger.BytesValue; +import com.jd.blockchain.ledger.KVDataEntry; +import com.jd.blockchain.ledger.KVDataObject; +import com.jd.blockchain.ledger.LedgerBlock; +import com.jd.blockchain.ledger.LedgerInfo; +import com.jd.blockchain.ledger.LedgerTransaction; +import com.jd.blockchain.ledger.ParticipantNode; +import com.jd.blockchain.ledger.TransactionState; +import com.jd.blockchain.ledger.UserInfo; +import com.jd.blockchain.ledger.core.ContractAccountSet; +import com.jd.blockchain.ledger.core.DataAccount; +import com.jd.blockchain.ledger.core.DataAccountSet; +import com.jd.blockchain.ledger.core.LedgerAdministration; +import com.jd.blockchain.ledger.core.LedgerRepository; +import com.jd.blockchain.ledger.core.LedgerService; +import com.jd.blockchain.ledger.core.ParticipantCertData; +import com.jd.blockchain.ledger.core.TransactionSet; +import com.jd.blockchain.ledger.core.UserAccountSet; +import com.jd.blockchain.transaction.BlockchainQueryService; import com.jd.blockchain.utils.Bytes; import com.jd.blockchain.utils.QueryUtil; import com.jd.blockchain.utils.ValueType; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.*; @RestController @RequestMapping(path = "/") diff --git a/source/peer/src/main/java/com/jd/blockchain/peer/web/ManagementController.java b/source/peer/src/main/java/com/jd/blockchain/peer/web/ManagementController.java index 0f0c3127..0e8c863e 100644 --- a/source/peer/src/main/java/com/jd/blockchain/peer/web/ManagementController.java +++ b/source/peer/src/main/java/com/jd/blockchain/peer/web/ManagementController.java @@ -38,11 +38,11 @@ import com.jd.blockchain.crypto.HashDigest; import com.jd.blockchain.ledger.core.LedgerAdminAccount; import com.jd.blockchain.ledger.core.LedgerManage; import com.jd.blockchain.ledger.core.LedgerRepository; -import com.jd.blockchain.manage.GatewayIncomingSetting; -import com.jd.blockchain.manage.LedgerIncomingSetting; import com.jd.blockchain.peer.ConsensusRealm; import com.jd.blockchain.peer.LedgerBindingConfigAware; import com.jd.blockchain.peer.PeerManage; +import com.jd.blockchain.setting.GatewayIncomingSetting; +import com.jd.blockchain.setting.LedgerIncomingSetting; import com.jd.blockchain.storage.service.DbConnection; import com.jd.blockchain.storage.service.DbConnectionFactory; import com.jd.blockchain.tools.initializer.LedgerBindingConfig; diff --git a/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/BlockchainExtendQueryService.java b/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/BlockchainExtendQueryService.java index c05a0ab7..66c8b604 100644 --- a/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/BlockchainExtendQueryService.java +++ b/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/BlockchainExtendQueryService.java @@ -10,6 +10,8 @@ package com.jd.blockchain.sdk; import com.jd.blockchain.crypto.HashDigest; import com.jd.blockchain.ledger.LedgerBlock; +import com.jd.blockchain.transaction.BlockchainQueryService; + import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; diff --git a/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/BlockchainService.java b/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/BlockchainService.java index 13f78855..e24f8a80 100644 --- a/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/BlockchainService.java +++ b/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/BlockchainService.java @@ -1,5 +1,7 @@ package com.jd.blockchain.sdk; +import com.jd.blockchain.transaction.BlockchainQueryService; + /** * 区块链服务; * diff --git a/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/LedgerAccessContext.java b/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/LedgerAccessContext.java index a8e8b74f..df1d2689 100644 --- a/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/LedgerAccessContext.java +++ b/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/LedgerAccessContext.java @@ -2,7 +2,8 @@ package com.jd.blockchain.sdk; import com.jd.blockchain.crypto.HashDigest; import com.jd.blockchain.ledger.CryptoSetting; -import com.jd.blockchain.ledger.data.TransactionService; +import com.jd.blockchain.transaction.BlockchainQueryService; +import com.jd.blockchain.transaction.TransactionService; public interface LedgerAccessContext { diff --git a/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/ManagementHttpService.java b/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/ManagementHttpService.java index 5d35623f..f4bd68be 100644 --- a/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/ManagementHttpService.java +++ b/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/ManagementHttpService.java @@ -1,10 +1,9 @@ package com.jd.blockchain.sdk; import com.jd.blockchain.consensus.ClientIdentifications; -import com.jd.blockchain.manage.GatewayIncomingSetting; - import com.jd.blockchain.sdk.converters.BinarySerializeRequestConverter; import com.jd.blockchain.sdk.converters.BinarySerializeResponseConverter; +import com.jd.blockchain.setting.GatewayIncomingSetting; import com.jd.blockchain.utils.http.HttpAction; import com.jd.blockchain.utils.http.HttpMethod; import com.jd.blockchain.utils.http.HttpService; diff --git a/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/converters/BinarySerializeRequestConverter.java b/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/converters/BinarySerializeRequestConverter.java index 92168134..2c89a42f 100644 --- a/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/converters/BinarySerializeRequestConverter.java +++ b/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/converters/BinarySerializeRequestConverter.java @@ -11,7 +11,7 @@ package com.jd.blockchain.sdk.converters; import com.jd.blockchain.binaryproto.BinaryEncodingUtils; import com.jd.blockchain.consensus.ClientIdentifications; import com.jd.blockchain.ledger.TransactionRequest; -import com.jd.blockchain.ledger.data.TxRequestMessage; +import com.jd.blockchain.transaction.TxRequestMessage; import com.jd.blockchain.utils.http.RequestBodyConverter; import java.io.IOException; diff --git a/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/converters/BinarySerializeResponseConverter.java b/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/converters/BinarySerializeResponseConverter.java index 163bc33e..271c3315 100644 --- a/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/converters/BinarySerializeResponseConverter.java +++ b/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/converters/BinarySerializeResponseConverter.java @@ -9,7 +9,7 @@ package com.jd.blockchain.sdk.converters; import com.jd.blockchain.binaryproto.BinaryEncodingUtils; -import com.jd.blockchain.ledger.data.TxResponseMessage; +import com.jd.blockchain.transaction.TxResponseMessage; import com.jd.blockchain.utils.http.HttpServiceContext; import com.jd.blockchain.utils.http.ResponseConverter; import com.jd.blockchain.utils.http.agent.ServiceRequest; diff --git a/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/converters/HashDigestsResponseConverter.java b/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/converters/HashDigestsResponseConverter.java index ec30787a..f647deb3 100644 --- a/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/converters/HashDigestsResponseConverter.java +++ b/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/converters/HashDigestsResponseConverter.java @@ -7,7 +7,7 @@ import com.jd.blockchain.binaryproto.BinaryEncodingUtils; import com.jd.blockchain.crypto.HashDigest; import com.jd.blockchain.crypto.PubKey; import com.jd.blockchain.crypto.SignatureDigest; -import com.jd.blockchain.ledger.data.TxResponseMessage; +import com.jd.blockchain.transaction.TxResponseMessage; import com.jd.blockchain.utils.codec.Base58Utils; import com.jd.blockchain.utils.http.HttpServiceContext; import com.jd.blockchain.utils.http.ResponseConverter; diff --git a/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/proxy/BlockchainServiceProxy.java b/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/proxy/BlockchainServiceProxy.java index 081f5be8..da602b9b 100644 --- a/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/proxy/BlockchainServiceProxy.java +++ b/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/proxy/BlockchainServiceProxy.java @@ -2,12 +2,12 @@ package com.jd.blockchain.sdk.proxy; import com.jd.blockchain.crypto.HashDigest; import com.jd.blockchain.ledger.*; -import com.jd.blockchain.ledger.data.TransactionService; -import com.jd.blockchain.ledger.data.TxTemplate; import com.jd.blockchain.sdk.BlockchainEventHandle; import com.jd.blockchain.sdk.BlockchainEventListener; -import com.jd.blockchain.sdk.BlockchainQueryService; import com.jd.blockchain.sdk.BlockchainService; +import com.jd.blockchain.transaction.BlockchainQueryService; +import com.jd.blockchain.transaction.TransactionService; +import com.jd.blockchain.transaction.TxTemplate; public abstract class BlockchainServiceProxy implements BlockchainService { diff --git a/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/proxy/HttpBlockchainQueryService.java b/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/proxy/HttpBlockchainQueryService.java index aa7188c6..19df6c9a 100644 --- a/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/proxy/HttpBlockchainQueryService.java +++ b/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/proxy/HttpBlockchainQueryService.java @@ -3,9 +3,8 @@ package com.jd.blockchain.sdk.proxy; import com.jd.blockchain.crypto.HashDigest; import com.jd.blockchain.ledger.*; import com.jd.blockchain.sdk.BlockchainExtendQueryService; -import com.jd.blockchain.sdk.BlockchainQueryService; - import com.jd.blockchain.sdk.converters.HashDigestsResponseConverter; +import com.jd.blockchain.transaction.BlockchainQueryService; import com.jd.blockchain.utils.http.*; import com.jd.blockchain.utils.web.client.WebResponseConverterFactory; import com.jd.blockchain.sdk.converters.HashDigestToStringConverter; diff --git a/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/service/ConsensusTransactionService.java b/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/service/ConsensusTransactionService.java index 9ae5db3b..3fbc3a2d 100644 --- a/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/service/ConsensusTransactionService.java +++ b/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/service/ConsensusTransactionService.java @@ -4,7 +4,7 @@ import com.jd.blockchain.consensus.ActionMessage; import com.jd.blockchain.consensus.OrderedAction; import com.jd.blockchain.ledger.TransactionRequest; import com.jd.blockchain.ledger.TransactionResponse; -import com.jd.blockchain.ledger.data.TransactionService; +import com.jd.blockchain.transaction.TransactionService; /** * 带共识的交易服务; diff --git a/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/service/NodeSigningAppender.java b/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/service/NodeSigningAppender.java index 8b4c3aad..ff667de4 100644 --- a/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/service/NodeSigningAppender.java +++ b/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/service/NodeSigningAppender.java @@ -13,9 +13,9 @@ import com.jd.blockchain.crypto.SignatureFunction; import com.jd.blockchain.ledger.NodeRequest; import com.jd.blockchain.ledger.TransactionRequest; import com.jd.blockchain.ledger.TransactionResponse; -import com.jd.blockchain.ledger.data.DigitalSignatureBlob; -import com.jd.blockchain.ledger.data.TransactionService; -import com.jd.blockchain.ledger.data.TxRequestMessage; +import com.jd.blockchain.transaction.DigitalSignatureBlob; +import com.jd.blockchain.transaction.TransactionService; +import com.jd.blockchain.transaction.TxRequestMessage; import com.jd.blockchain.utils.concurrent.AsyncFuture; /** diff --git a/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/service/PeerBlockchainServiceFactory.java b/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/service/PeerBlockchainServiceFactory.java index 56f0b12a..c3504185 100644 --- a/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/service/PeerBlockchainServiceFactory.java +++ b/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/service/PeerBlockchainServiceFactory.java @@ -7,11 +7,12 @@ import com.jd.blockchain.consensus.client.ConsensusClient; import com.jd.blockchain.crypto.AsymmetricKeypair; import com.jd.blockchain.crypto.HashDigest; import com.jd.blockchain.ledger.CryptoSetting; -import com.jd.blockchain.ledger.data.TransactionService; -import com.jd.blockchain.manage.GatewayIncomingSetting; -import com.jd.blockchain.manage.LedgerIncomingSetting; import com.jd.blockchain.sdk.*; import com.jd.blockchain.sdk.proxy.HttpBlockchainQueryService; +import com.jd.blockchain.setting.GatewayIncomingSetting; +import com.jd.blockchain.setting.LedgerIncomingSetting; +import com.jd.blockchain.transaction.BlockchainQueryService; +import com.jd.blockchain.transaction.TransactionService; import com.jd.blockchain.utils.http.agent.HttpServiceAgent; import com.jd.blockchain.utils.http.agent.ServiceConnection; import com.jd.blockchain.utils.http.agent.ServiceConnectionManager; diff --git a/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/service/PeerServiceProxy.java b/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/service/PeerServiceProxy.java index 4324ea79..535b45f5 100644 --- a/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/service/PeerServiceProxy.java +++ b/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/service/PeerServiceProxy.java @@ -3,11 +3,11 @@ package com.jd.blockchain.sdk.service; import com.jd.blockchain.crypto.HashDigest; import com.jd.blockchain.ledger.TransactionRequest; import com.jd.blockchain.ledger.TransactionResponse; -import com.jd.blockchain.ledger.data.TransactionService; import com.jd.blockchain.sdk.BlockchainException; -import com.jd.blockchain.sdk.BlockchainQueryService; import com.jd.blockchain.sdk.LedgerAccessContext; import com.jd.blockchain.sdk.proxy.BlockchainServiceProxy; +import com.jd.blockchain.transaction.BlockchainQueryService; +import com.jd.blockchain.transaction.TransactionService; import java.util.HashMap; import java.util.List; diff --git a/source/sdk/sdk-client/src/main/java/com/jd/blockchain/client/Command.java b/source/sdk/sdk-client/src/main/java/com/jd/blockchain/client/Command.java deleted file mode 100644 index 8b07376e..00000000 --- a/source/sdk/sdk-client/src/main/java/com/jd/blockchain/client/Command.java +++ /dev/null @@ -1,100 +0,0 @@ -//package com.jd.blockchain.client; -// -//import java.util.HashMap; -//import java.util.Map; -// -//public class Command { -// -// private PeerClient peerClient; -// -// private Map executors; -// -// public Command(PeerClient peerClient) { -// this.peerClient = peerClient; -// this.executors = new HashMap<>(); -// executors.put("set", new SetCmd()); -// executors.put("get", new GetCmd()); -// executors.put("remove", new RemoveCmd()); -// executors.put("keys", new KeysCmd()); -// executors.put("contain", new ContainCmd()); -// } -// -// public void execute(String cmd) { -// String[] cmdArgs = cmd.split(" "); -// if (cmdArgs.length == 0) { -// System.out.println("Illegal input!!"); -// return; -// } -// -// String command = cmdArgs[0].trim(); -// String[] args = new String[cmdArgs.length - 1]; -// for (int i = 1; i < cmdArgs.length; i++) { -// args[i - 1] = cmdArgs[i].trim(); -// } -// -// CmdExecutor executor = executors.get(command); -// executor.execute(args); -// } -// -// private static interface CmdExecutor { -// -// public void execute(String[] args); -// -// } -// -// private class SetCmd implements CmdExecutor { -// @Override -// public void execute(String[] args) { -// if (args.length < 2) { -// System.out.println("SET command require 2 args!"); -// return; -// } -// String result = peerClient.set(args[0], args[1]); -// System.out.println("ok. --[" + result + "]"); -// } -// } -// -// private class GetCmd implements CmdExecutor { -// @Override -// public void execute(String[] args) { -// if (args.length < 1) { -// System.out.println("GET command require 1 args!"); -// return; -// } -// String result = peerClient.get(args[0]); -// System.out.println("ok. --[" + result + "]"); -// } -// } -// -// private class RemoveCmd implements CmdExecutor { -// @Override -// public void execute(String[] args) { -// if (args.length < 1) { -// System.out.println("REMOVE command require 1 args!"); -// return; -// } -// String result = peerClient.remove(args[0]); -// System.out.println("ok. --[" + result + "]"); -// } -// } -// -// private class KeysCmd implements CmdExecutor { -// @Override -// public void execute(String[] args) { -// String[] result = peerClient.getKeys(); -// System.out.println("ok. --[" + result + "]"); -// } -// } -// -// private class ContainCmd implements CmdExecutor { -// @Override -// public void execute(String[] args) { -// if (args.length < 1) { -// System.out.println("CONTAIN command require 1 args!"); -// return; -// } -// boolean result = peerClient.contain(args[0]); -// System.out.println("ok. --[" + result + "]"); -// } -// } -//} diff --git a/source/sdk/sdk-client/src/main/java/com/jd/blockchain/client/PeerClient.java b/source/sdk/sdk-client/src/main/java/com/jd/blockchain/client/PeerClient.java deleted file mode 100644 index bcc762e7..00000000 --- a/source/sdk/sdk-client/src/main/java/com/jd/blockchain/client/PeerClient.java +++ /dev/null @@ -1,75 +0,0 @@ -//package com.jd.blockchain.client; -// -//import java.io.ByteArrayInputStream; -//import java.io.IOException; -//import java.io.ObjectInputStream; -// -//import com.jd.blockchain.ledger.Operation; -// -//import bftsmart.tom.AsynchServiceProxy; -// -//public class PeerClient { -// -// private AsynchServiceProxy peerProxy; -// -// public PeerClient(int clientId) { -// this.peerProxy = new AsynchServiceProxy(clientId); -// } -// -// public void close(){ -// peerProxy.close(); -// } -// -// public String set(String key, String value){ -// Operation.SetOP setOP = new Operation.SetOP(key, value); -// byte[] reply = peerProxy.invokeOrdered(setOP.toBytes()); -// -// return resolveResult(reply, String.class); -// } -// -// -// public String remove(String key){ -// Operation.RemoveOP removeOP = new Operation.RemoveOP(key); -// byte[] reply = peerProxy.invokeOrdered(removeOP.toBytes()); -// -// return resolveResult(reply, String.class); -// } -// -// public String get(String key){ -// Operation.GetOP getOP = new Operation.GetOP(key); -// byte[] reply = peerProxy.invokeUnordered(getOP.toBytes()); -// -// return resolveResult(reply, String.class); -// } -// -// public String[] getKeys(){ -// Operation.KeysOP keysOP = new Operation.KeysOP(); -// byte[] reply = peerProxy.invokeUnordered(keysOP.toBytes()); -// -// return resolveResult(reply, String[].class); -// } -// -// public boolean contain(String key){ -// Operation.ContainOP containOP = new Operation.ContainOP(key); -// byte[] reply = peerProxy.invokeUnordered(containOP.toBytes()); -// -// return resolveResult(reply, Boolean.class); -// } -// -// @SuppressWarnings("unchecked") -// public static T resolveResult(byte[] bytes, Class resultType){ -// if (bytes == null || bytes.length == 0) { -// return null; -// } -// try { -// ByteArrayInputStream bi = new ByteArrayInputStream(bytes); -// ObjectInputStream in = new ObjectInputStream(bi); -// Object op = in.readObject(); -// return (T) op; -// } catch (ClassNotFoundException e) { -// throw new IllegalStateException(e.getMessage(), e); -// } catch (IOException e) { -// throw new IllegalStateException(e.getMessage(), e); -// } -// } -//} diff --git a/source/sdk/sdk-client/src/main/java/com/jd/blockchain/client/PeerClientDemo.java b/source/sdk/sdk-client/src/main/java/com/jd/blockchain/client/PeerClientDemo.java deleted file mode 100644 index cad4ceb0..00000000 --- a/source/sdk/sdk-client/src/main/java/com/jd/blockchain/client/PeerClientDemo.java +++ /dev/null @@ -1,35 +0,0 @@ -//package com.jd.blockchain.client; -// -//import java.io.Console; -// -//public class PeerClientDemo { -// -// public static void main(String[] args) { -// int clientId; -// if (args.length == 0) { -//// System.out.println("No client id !!!"); -//// return; -// clientId = 7; -// }else{ -// clientId = Integer.parseInt(args[0]); -// } -// -// PeerClient client = new PeerClient(clientId); -// Command cmd = new Command(client); -// System.out.println("---------------- Client["+clientId+"] started -----------------"); -// -// do { -// System.out.println(">>"); -// Console console = System.console(); -// String op = console.readLine(); -// if ("exit".equalsIgnoreCase(op)) { -// break; -// } -// cmd.execute(op); -// } while (true); -//// -// System.out.println("Client exist!"); -// client.close(); -// } -// -//} diff --git a/source/sdk/sdk-client/src/main/java/com/jd/blockchain/sdk/client/GatewayBlockchainServiceProxy.java b/source/sdk/sdk-client/src/main/java/com/jd/blockchain/sdk/client/GatewayBlockchainServiceProxy.java index b78dff08..940acbee 100644 --- a/source/sdk/sdk-client/src/main/java/com/jd/blockchain/sdk/client/GatewayBlockchainServiceProxy.java +++ b/source/sdk/sdk-client/src/main/java/com/jd/blockchain/sdk/client/GatewayBlockchainServiceProxy.java @@ -1,9 +1,9 @@ package com.jd.blockchain.sdk.client; import com.jd.blockchain.crypto.HashDigest; -import com.jd.blockchain.ledger.data.TransactionService; -import com.jd.blockchain.sdk.BlockchainQueryService; import com.jd.blockchain.sdk.proxy.BlockchainServiceProxy; +import com.jd.blockchain.transaction.BlockchainQueryService; +import com.jd.blockchain.transaction.TransactionService; public class GatewayBlockchainServiceProxy extends BlockchainServiceProxy { diff --git a/source/sdk/sdk-client/src/main/java/com/jd/blockchain/sdk/client/GatewayServiceFactory.java b/source/sdk/sdk-client/src/main/java/com/jd/blockchain/sdk/client/GatewayServiceFactory.java index ba0d9eaa..0dd20872 100644 --- a/source/sdk/sdk-client/src/main/java/com/jd/blockchain/sdk/client/GatewayServiceFactory.java +++ b/source/sdk/sdk-client/src/main/java/com/jd/blockchain/sdk/client/GatewayServiceFactory.java @@ -12,13 +12,13 @@ import com.jd.blockchain.ledger.DigitalSignature; import com.jd.blockchain.ledger.TransactionContent; import com.jd.blockchain.ledger.TransactionRequest; import com.jd.blockchain.ledger.TransactionResponse; -import com.jd.blockchain.ledger.data.DigitalSignatureBlob; -import com.jd.blockchain.ledger.data.TransactionService; -import com.jd.blockchain.ledger.data.TxRequestMessage; -import com.jd.blockchain.sdk.BlockchainQueryService; import com.jd.blockchain.sdk.BlockchainService; import com.jd.blockchain.sdk.BlockchainServiceFactory; import com.jd.blockchain.sdk.proxy.HttpBlockchainQueryService; +import com.jd.blockchain.transaction.BlockchainQueryService; +import com.jd.blockchain.transaction.DigitalSignatureBlob; +import com.jd.blockchain.transaction.TransactionService; +import com.jd.blockchain.transaction.TxRequestMessage; import com.jd.blockchain.utils.http.agent.HttpServiceAgent; import com.jd.blockchain.utils.http.agent.ServiceConnection; import com.jd.blockchain.utils.http.agent.ServiceConnectionManager; diff --git a/source/sdk/sdk-client/src/main/java/com/jd/blockchain/sdk/client/HttpConsensusService.java b/source/sdk/sdk-client/src/main/java/com/jd/blockchain/sdk/client/HttpConsensusService.java index 69368504..9485436f 100644 --- a/source/sdk/sdk-client/src/main/java/com/jd/blockchain/sdk/client/HttpConsensusService.java +++ b/source/sdk/sdk-client/src/main/java/com/jd/blockchain/sdk/client/HttpConsensusService.java @@ -2,9 +2,9 @@ package com.jd.blockchain.sdk.client; import com.jd.blockchain.ledger.TransactionRequest; import com.jd.blockchain.ledger.TransactionResponse; -import com.jd.blockchain.ledger.data.TransactionService; import com.jd.blockchain.sdk.converters.BinarySerializeRequestConverter; import com.jd.blockchain.sdk.converters.BinarySerializeResponseConverter; +import com.jd.blockchain.transaction.TransactionService; import com.jd.blockchain.utils.http.HttpAction; import com.jd.blockchain.utils.http.HttpMethod; import com.jd.blockchain.utils.http.HttpService; diff --git a/source/sdk/sdk-samples/src/main/java/com/jd/blockchain/contract/samples/AssetContract.java b/source/sdk/sdk-samples/src/main/java/com/jd/blockchain/contract/samples/AssetContract.java index 8b343649..a6b91415 100644 --- a/source/sdk/sdk-samples/src/main/java/com/jd/blockchain/contract/samples/AssetContract.java +++ b/source/sdk/sdk-samples/src/main/java/com/jd/blockchain/contract/samples/AssetContract.java @@ -1,7 +1,7 @@ package com.jd.blockchain.contract.samples; -import com.jd.blockchain.contract.model.Contract; -import com.jd.blockchain.contract.model.ContractEvent; +import com.jd.blockchain.contract.Contract; +import com.jd.blockchain.contract.ContractEvent; /** * 示例:一个“资产管理”智能合约; diff --git a/source/sdk/sdk-samples/src/main/java/com/jd/blockchain/contract/samples/AssetContractImpl.java b/source/sdk/sdk-samples/src/main/java/com/jd/blockchain/contract/samples/AssetContractImpl.java index 31e962a0..ab644986 100644 --- a/source/sdk/sdk-samples/src/main/java/com/jd/blockchain/contract/samples/AssetContractImpl.java +++ b/source/sdk/sdk-samples/src/main/java/com/jd/blockchain/contract/samples/AssetContractImpl.java @@ -4,9 +4,9 @@ import java.util.HashMap; import java.util.Map; import java.util.Set; -import com.jd.blockchain.contract.model.ContractException; -import com.jd.blockchain.contract.model.ContractEventContext; -import com.jd.blockchain.contract.model.EventProcessingAwire; +import com.jd.blockchain.contract.ContractEventContext; +import com.jd.blockchain.contract.ContractException; +import com.jd.blockchain.contract.EventProcessingAwire; import com.jd.blockchain.crypto.HashDigest; import com.jd.blockchain.ledger.BlockchainIdentity; import com.jd.blockchain.ledger.KVDataEntry; diff --git a/source/sdk/sdk-samples/src/main/java/com/jd/blockchain/sdk/samples/SDKDemo_Contract.java b/source/sdk/sdk-samples/src/main/java/com/jd/blockchain/sdk/samples/SDKDemo_Contract.java index ef0753bd..f88e1cf9 100644 --- a/source/sdk/sdk-samples/src/main/java/com/jd/blockchain/sdk/samples/SDKDemo_Contract.java +++ b/source/sdk/sdk-samples/src/main/java/com/jd/blockchain/sdk/samples/SDKDemo_Contract.java @@ -1,5 +1,6 @@ package com.jd.blockchain.sdk.samples; +import com.jd.blockchain.contract.samples.AssetContract; import com.jd.blockchain.crypto.AsymmetricKeypair; import com.jd.blockchain.crypto.Crypto; import com.jd.blockchain.crypto.HashDigest; @@ -35,12 +36,6 @@ public class SDKDemo_Contract { new NetworkAddress("192.168.10.11", 8080), new NetworkAddress("192.168.10.12", 8080), new NetworkAddress("192.168.10.13", 8080) }; - // 网关客户端编号; - int gatewayId = 1001; - // 客户端的认证账户; - // String clientAddress = "kkjsafieweqEkadsfaslkdslkae998232jojf=="; - // String privKey = "safefsd32q34vdsvs"; - // 创建服务代理; final String GATEWAY_IP = "127.0.0.1"; final int GATEWAY_PORT = 80; @@ -72,15 +67,10 @@ public class SDKDemo_Contract { // 备注信息; Remark remark = new Remark(); String remarkJSON = JSONSerializeUtils.serializeToJSON(remark); + +// AssetContract assetContract = txTemp.contract("", AssetContract.class); +// txTemp.contractInvocation(assetContract.issue(amount, assetHolderAddress)) - // 合约代码的参数表; - ByteArray[] args = {}; - // 调用合约代码的分配操作; - // txTemp.deployContract().deploy(identity, appByteCodes); - - // todo args暂时无数据,尚未确定填入什么 - txTemp.contractEvents().send(commerceAccount, "trans-asset", null); -// txTemp.invokeContract().send(commerceAccount, "trans-asset", args); // -------------------------------------- // TX 准备就绪; diff --git a/source/sdk/sdk-samples/src/test/java/test/com/jd/blockchain/sdk/test/SDK_GateWay_BatchInsertData_Test_.java b/source/sdk/sdk-samples/src/test/java/test/com/jd/blockchain/sdk/test/SDK_GateWay_BatchInsertData_Test_.java index c7dae27f..644bf609 100644 --- a/source/sdk/sdk-samples/src/test/java/test/com/jd/blockchain/sdk/test/SDK_GateWay_BatchInsertData_Test_.java +++ b/source/sdk/sdk-samples/src/test/java/test/com/jd/blockchain/sdk/test/SDK_GateWay_BatchInsertData_Test_.java @@ -30,9 +30,9 @@ import com.jd.blockchain.ledger.TransactionRequest; import com.jd.blockchain.ledger.TransactionResponse; import com.jd.blockchain.ledger.TransactionState; import com.jd.blockchain.ledger.TransactionTemplate; -import com.jd.blockchain.ledger.data.TxResponseMessage; import com.jd.blockchain.sdk.BlockchainTransactionService; import com.jd.blockchain.sdk.client.GatewayServiceFactory; +import com.jd.blockchain.transaction.TxResponseMessage; import com.jd.blockchain.utils.codec.Base58Utils; /** diff --git a/source/sdk/sdk-samples/src/test/java/test/com/jd/blockchain/sdk/test/SDK_GateWay_DataAccount_Test_.java b/source/sdk/sdk-samples/src/test/java/test/com/jd/blockchain/sdk/test/SDK_GateWay_DataAccount_Test_.java index 4976b92b..7d343505 100644 --- a/source/sdk/sdk-samples/src/test/java/test/com/jd/blockchain/sdk/test/SDK_GateWay_DataAccount_Test_.java +++ b/source/sdk/sdk-samples/src/test/java/test/com/jd/blockchain/sdk/test/SDK_GateWay_DataAccount_Test_.java @@ -28,9 +28,9 @@ import com.jd.blockchain.ledger.TransactionRequest; import com.jd.blockchain.ledger.TransactionResponse; import com.jd.blockchain.ledger.TransactionState; import com.jd.blockchain.ledger.TransactionTemplate; -import com.jd.blockchain.ledger.data.TxResponseMessage; import com.jd.blockchain.sdk.BlockchainService; import com.jd.blockchain.sdk.client.GatewayServiceFactory; +import com.jd.blockchain.transaction.TxResponseMessage; /** * 插入数据测试 diff --git a/source/sdk/sdk-samples/src/test/java/test/com/jd/blockchain/sdk/test/SDK_GateWay_InsertData_Test_.java b/source/sdk/sdk-samples/src/test/java/test/com/jd/blockchain/sdk/test/SDK_GateWay_InsertData_Test_.java index ccf6f333..07dba29f 100644 --- a/source/sdk/sdk-samples/src/test/java/test/com/jd/blockchain/sdk/test/SDK_GateWay_InsertData_Test_.java +++ b/source/sdk/sdk-samples/src/test/java/test/com/jd/blockchain/sdk/test/SDK_GateWay_InsertData_Test_.java @@ -30,9 +30,9 @@ import com.jd.blockchain.ledger.TransactionRequest; import com.jd.blockchain.ledger.TransactionResponse; import com.jd.blockchain.ledger.TransactionState; import com.jd.blockchain.ledger.TransactionTemplate; -import com.jd.blockchain.ledger.data.TxResponseMessage; import com.jd.blockchain.sdk.BlockchainTransactionService; import com.jd.blockchain.sdk.client.GatewayServiceFactory; +import com.jd.blockchain.transaction.TxResponseMessage; /** * 插入数据测试 diff --git a/source/sdk/sdk-samples/src/test/java/test/com/jd/blockchain/sdk/test/SDK_GateWay_Query_Test_.java b/source/sdk/sdk-samples/src/test/java/test/com/jd/blockchain/sdk/test/SDK_GateWay_Query_Test_.java index 937b4604..a5343eb6 100644 --- a/source/sdk/sdk-samples/src/test/java/test/com/jd/blockchain/sdk/test/SDK_GateWay_Query_Test_.java +++ b/source/sdk/sdk-samples/src/test/java/test/com/jd/blockchain/sdk/test/SDK_GateWay_Query_Test_.java @@ -38,9 +38,9 @@ import com.jd.blockchain.ledger.TransactionContentBody; import com.jd.blockchain.ledger.TransactionRequest; import com.jd.blockchain.ledger.TransactionResponse; import com.jd.blockchain.ledger.TransactionState; -import com.jd.blockchain.ledger.data.TxResponseMessage; import com.jd.blockchain.sdk.BlockchainService; import com.jd.blockchain.sdk.client.GatewayServiceFactory; +import com.jd.blockchain.transaction.TxResponseMessage; import com.jd.blockchain.utils.serialize.json.JSONSerializeUtils; /** diff --git a/source/sdk/sdk-samples/src/test/java/test/com/jd/blockchain/sdk/test/SDK_GateWay_User_Test_.java b/source/sdk/sdk-samples/src/test/java/test/com/jd/blockchain/sdk/test/SDK_GateWay_User_Test_.java index 382466e9..65cce89b 100644 --- a/source/sdk/sdk-samples/src/test/java/test/com/jd/blockchain/sdk/test/SDK_GateWay_User_Test_.java +++ b/source/sdk/sdk-samples/src/test/java/test/com/jd/blockchain/sdk/test/SDK_GateWay_User_Test_.java @@ -32,9 +32,9 @@ import com.jd.blockchain.ledger.TransactionRequest; import com.jd.blockchain.ledger.TransactionResponse; import com.jd.blockchain.ledger.TransactionState; import com.jd.blockchain.ledger.TransactionTemplate; -import com.jd.blockchain.ledger.data.TxResponseMessage; import com.jd.blockchain.sdk.BlockchainService; import com.jd.blockchain.sdk.client.GatewayServiceFactory; +import com.jd.blockchain.transaction.TxResponseMessage; /** * 插入数据测试 diff --git a/source/test/test-integration/src/main/java/test/com/jd/blockchain/intgr/perf/LedgerPerformanceTest.java b/source/test/test-integration/src/main/java/test/com/jd/blockchain/intgr/perf/LedgerPerformanceTest.java index d2e13f49..ec035f22 100644 --- a/source/test/test-integration/src/main/java/test/com/jd/blockchain/intgr/perf/LedgerPerformanceTest.java +++ b/source/test/test-integration/src/main/java/test/com/jd/blockchain/intgr/perf/LedgerPerformanceTest.java @@ -38,8 +38,7 @@ import com.jd.blockchain.ledger.core.LedgerRepository; import com.jd.blockchain.ledger.core.impl.DefaultOperationHandleRegisteration; import com.jd.blockchain.ledger.core.impl.LedgerManager; import com.jd.blockchain.ledger.core.impl.TransactionBatchProcessor; -import com.jd.blockchain.ledger.data.TxBuilder; -import com.jd.blockchain.ledger.service.TransactionBatchResultHandle; +import com.jd.blockchain.service.TransactionBatchResultHandle; import com.jd.blockchain.storage.service.DbConnectionFactory; import com.jd.blockchain.storage.service.impl.redis.JedisConnection; import com.jd.blockchain.storage.service.impl.redis.RedisConnectionFactory; @@ -51,6 +50,7 @@ import com.jd.blockchain.tools.initializer.LedgerInitProperties; import com.jd.blockchain.tools.initializer.Prompter; import com.jd.blockchain.tools.initializer.web.LedgerInitConsensusService; import com.jd.blockchain.tools.keygen.KeyGenCommand; +import com.jd.blockchain.transaction.TxBuilder; import com.jd.blockchain.utils.ArgumentSet; import com.jd.blockchain.utils.ConsoleUtils; import com.jd.blockchain.utils.concurrent.ThreadInvoker.AsyncCallback; diff --git a/source/test/test-integration/src/test/java/test/com/jd/blockchain/intgr/initializer/LedgerInitializeWeb4SingleStepsTest.java b/source/test/test-integration/src/test/java/test/com/jd/blockchain/intgr/initializer/LedgerInitializeWeb4SingleStepsTest.java index 4c60f314..adac6a1a 100644 --- a/source/test/test-integration/src/test/java/test/com/jd/blockchain/intgr/initializer/LedgerInitializeWeb4SingleStepsTest.java +++ b/source/test/test-integration/src/test/java/test/com/jd/blockchain/intgr/initializer/LedgerInitializeWeb4SingleStepsTest.java @@ -29,7 +29,6 @@ import com.jd.blockchain.ledger.core.LedgerInitDecision; import com.jd.blockchain.ledger.core.LedgerInitPermission; import com.jd.blockchain.ledger.core.LedgerRepository; import com.jd.blockchain.ledger.core.impl.LedgerManager; -import com.jd.blockchain.ledger.data.TxRequestBuilder; import com.jd.blockchain.storage.service.DbConnection; import com.jd.blockchain.storage.service.impl.composite.CompositeConnectionFactory; import com.jd.blockchain.tools.initializer.DBConnectionConfig; @@ -42,6 +41,7 @@ import com.jd.blockchain.tools.initializer.web.HttpInitConsensServiceFactory; import com.jd.blockchain.tools.initializer.web.LedgerInitConsensusService; import com.jd.blockchain.tools.initializer.web.LedgerInitializeWebController; import com.jd.blockchain.tools.keygen.KeyGenCommand; +import com.jd.blockchain.transaction.TxRequestBuilder; import com.jd.blockchain.utils.concurrent.ThreadInvoker; import com.jd.blockchain.utils.concurrent.ThreadInvoker.AsyncCallback; import com.jd.blockchain.utils.io.BytesUtils; diff --git a/source/test/test-integration/src/test/java/test/com/jd/blockchain/intgr/ledger/LedgerBlockGeneratingTest.java b/source/test/test-integration/src/test/java/test/com/jd/blockchain/intgr/ledger/LedgerBlockGeneratingTest.java index 0be0fff4..c350f232 100644 --- a/source/test/test-integration/src/test/java/test/com/jd/blockchain/intgr/ledger/LedgerBlockGeneratingTest.java +++ b/source/test/test-integration/src/test/java/test/com/jd/blockchain/intgr/ledger/LedgerBlockGeneratingTest.java @@ -30,13 +30,13 @@ import com.jd.blockchain.ledger.core.LedgerRepository; import com.jd.blockchain.ledger.core.impl.DefaultOperationHandleRegisteration; import com.jd.blockchain.ledger.core.impl.LedgerManager; import com.jd.blockchain.ledger.core.impl.TransactionBatchProcessor; -import com.jd.blockchain.ledger.data.TxBuilder; -import com.jd.blockchain.ledger.service.TransactionBatchResultHandle; +import com.jd.blockchain.service.TransactionBatchResultHandle; import com.jd.blockchain.tools.initializer.DBConnectionConfig; import com.jd.blockchain.tools.initializer.LedgerInitProperties; import com.jd.blockchain.tools.initializer.Prompter; import com.jd.blockchain.tools.initializer.web.LedgerInitConsensusService; import com.jd.blockchain.tools.keygen.KeyGenCommand; +import com.jd.blockchain.transaction.TxBuilder; import com.jd.blockchain.utils.ConsoleUtils; import com.jd.blockchain.utils.concurrent.ThreadInvoker.AsyncCallback; import com.jd.blockchain.utils.io.FileUtils; diff --git a/source/tools/tools-capability/src/main/java/com/jd/blockchain/capability/service/RemoteTransactionService.java b/source/tools/tools-capability/src/main/java/com/jd/blockchain/capability/service/RemoteTransactionService.java index d498dddd..b9364e9c 100644 --- a/source/tools/tools-capability/src/main/java/com/jd/blockchain/capability/service/RemoteTransactionService.java +++ b/source/tools/tools-capability/src/main/java/com/jd/blockchain/capability/service/RemoteTransactionService.java @@ -28,7 +28,7 @@ import com.jd.blockchain.ledger.BlockchainKeyGenerator; import com.jd.blockchain.ledger.BlockchainKeypair; import com.jd.blockchain.ledger.TransactionRequest; import com.jd.blockchain.ledger.TransactionRequestBuilder; -import com.jd.blockchain.ledger.data.TxBuilder; +import com.jd.blockchain.transaction.TxBuilder; import com.jd.blockchain.utils.Bytes; import com.jd.blockchain.utils.ConsoleUtils; import com.jd.blockchain.utils.io.BytesUtils; diff --git a/source/tools/tools-initializer/src/main/java/com/jd/blockchain/tools/initializer/web/LedgerInitializeWebController.java b/source/tools/tools-initializer/src/main/java/com/jd/blockchain/tools/initializer/web/LedgerInitializeWebController.java index 1bbf595f..42e1d5d6 100644 --- a/source/tools/tools-initializer/src/main/java/com/jd/blockchain/tools/initializer/web/LedgerInitializeWebController.java +++ b/source/tools/tools-initializer/src/main/java/com/jd/blockchain/tools/initializer/web/LedgerInitializeWebController.java @@ -45,10 +45,6 @@ import com.jd.blockchain.ledger.core.LedgerInitPermission; import com.jd.blockchain.ledger.core.LedgerInitPermissionData; import com.jd.blockchain.ledger.core.LedgerManage; import com.jd.blockchain.ledger.core.LedgerTransactionContext; -import com.jd.blockchain.ledger.data.DigitalSignatureBlob; -import com.jd.blockchain.ledger.data.LedgerInitSettingData; -import com.jd.blockchain.ledger.data.TxBuilder; -import com.jd.blockchain.ledger.data.TxRequestBuilder; import com.jd.blockchain.storage.service.DbConnection; import com.jd.blockchain.storage.service.DbConnectionFactory; import com.jd.blockchain.tools.initializer.DBConnectionConfig; @@ -57,6 +53,10 @@ import com.jd.blockchain.tools.initializer.LedgerInitException; import com.jd.blockchain.tools.initializer.LedgerInitProcess; import com.jd.blockchain.tools.initializer.LedgerInitProperties; import com.jd.blockchain.tools.initializer.LedgerInitProperties.ConsensusParticipantConfig; +import com.jd.blockchain.transaction.DigitalSignatureBlob; +import com.jd.blockchain.transaction.LedgerInitSettingData; +import com.jd.blockchain.transaction.TxBuilder; +import com.jd.blockchain.transaction.TxRequestBuilder; import com.jd.blockchain.tools.initializer.Prompter; import com.jd.blockchain.utils.Bytes; import com.jd.blockchain.utils.concurrent.InvocationResult; From 545aec3335ad893b31a21143f6303693c11cf5cb Mon Sep 17 00:00:00 2001 From: huanghaiquan Date: Tue, 30 Apr 2019 20:51:15 +0800 Subject: [PATCH 05/10] =?UTF-8?q?Merged=20contract-model=20project=20into?= =?UTF-8?q?=20ledger-model=20project=EF=BC=8Cand=20removed=20it.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- source/contract/contract-model/pom.xml | 32 ------------------- .../main/resources/sys-contract.properties | 7 ---- source/contract/pom.xml | 1 - 3 files changed, 40 deletions(-) delete mode 100644 source/contract/contract-model/pom.xml delete mode 100644 source/contract/contract-model/src/main/resources/sys-contract.properties diff --git a/source/contract/contract-model/pom.xml b/source/contract/contract-model/pom.xml deleted file mode 100644 index de1c279c..00000000 --- a/source/contract/contract-model/pom.xml +++ /dev/null @@ -1,32 +0,0 @@ - - 4.0.0 - - com.jd.blockchain - contract - 0.9.0-SNAPSHOT - - contract-model - - - - - - \ No newline at end of file diff --git a/source/contract/contract-model/src/main/resources/sys-contract.properties b/source/contract/contract-model/src/main/resources/sys-contract.properties deleted file mode 100644 index e8aee795..00000000 --- a/source/contract/contract-model/src/main/resources/sys-contract.properties +++ /dev/null @@ -1,7 +0,0 @@ -#项目源文件存放的位置; -PROJECT_BASE_DIR=e:\\gitCode\\block\\prototype\\ -#合同使用的类库存放的位置,可能不在项目中,故采用全新的地址; -LEDGER_BASE_CLASS_PATH=e:\\gitCode\\block\\prototype\\libs\\ -BLACKLIST=java.io;java.net;java.util.Random -#type:public,private -CONTRACT_CLASSLOADER_TYPE=private \ No newline at end of file diff --git a/source/contract/pom.xml b/source/contract/pom.xml index 39cbad89..835b06aa 100644 --- a/source/contract/pom.xml +++ b/source/contract/pom.xml @@ -10,7 +10,6 @@ pom - contract-model contract-framework contract-jvm contract-maven-plugin From 9cdda498977cbd16d35080c5203b72eb4a7d6f5d Mon Sep 17 00:00:00 2001 From: huanghaiquan Date: Fri, 3 May 2019 11:02:25 +0800 Subject: [PATCH 06/10] Optimized contract loading. --- .../contract/engine/ContractCode.java | 3 +- .../contract/engine/ContractEngine.java | 6 +- .../contract/jvm/JVMContractEngine.java | 10 +-- .../contract/jvm/JavaContractCode.java | 7 +- .../ledger/core/ContractAccount.java | 4 - .../ContractEventSendOperationHandle.java | 73 ++++++++++++------- .../contract/LocalContractEventContext.java | 25 +++---- .../java/com/jd/blockchain/utils/Bytes.java | 54 ++++++++------ 8 files changed, 105 insertions(+), 77 deletions(-) diff --git a/source/contract/contract-framework/src/main/java/com/jd/blockchain/contract/engine/ContractCode.java b/source/contract/contract-framework/src/main/java/com/jd/blockchain/contract/engine/ContractCode.java index d75f5b60..891acd4c 100644 --- a/source/contract/contract-framework/src/main/java/com/jd/blockchain/contract/engine/ContractCode.java +++ b/source/contract/contract-framework/src/main/java/com/jd/blockchain/contract/engine/ContractCode.java @@ -1,10 +1,11 @@ package com.jd.blockchain.contract.engine; import com.jd.blockchain.contract.ContractEventContext; +import com.jd.blockchain.utils.Bytes; public interface ContractCode { - String getAddress(); + Bytes getAddress(); long getVersion(); diff --git a/source/contract/contract-framework/src/main/java/com/jd/blockchain/contract/engine/ContractEngine.java b/source/contract/contract-framework/src/main/java/com/jd/blockchain/contract/engine/ContractEngine.java index e047bcc7..3f5a21c1 100644 --- a/source/contract/contract-framework/src/main/java/com/jd/blockchain/contract/engine/ContractEngine.java +++ b/source/contract/contract-framework/src/main/java/com/jd/blockchain/contract/engine/ContractEngine.java @@ -1,5 +1,7 @@ package com.jd.blockchain.contract.engine; +import com.jd.blockchain.utils.Bytes; + /** * 合约引擎; * @@ -16,7 +18,7 @@ public interface ContractEngine { * @param address * @return */ - ContractCode getContract(String address, long version); + ContractCode getContract(Bytes address, long version); /** * 装入合约代码;
@@ -27,6 +29,6 @@ public interface ContractEngine { * @param code * @return */ - ContractCode setupContract(String address, long version, byte[] code); + ContractCode setupContract(Bytes address, long version, byte[] code); } diff --git a/source/contract/contract-jvm/src/main/java/com/jd/blockchain/contract/jvm/JVMContractEngine.java b/source/contract/contract-jvm/src/main/java/com/jd/blockchain/contract/jvm/JVMContractEngine.java index e07e5215..ea1ee9fa 100644 --- a/source/contract/contract-jvm/src/main/java/com/jd/blockchain/contract/jvm/JVMContractEngine.java +++ b/source/contract/contract-jvm/src/main/java/com/jd/blockchain/contract/jvm/JVMContractEngine.java @@ -4,18 +4,18 @@ import com.jd.blockchain.contract.engine.ContractCode; import com.jd.blockchain.contract.engine.ContractEngine; import com.jd.blockchain.runtime.Module; import com.jd.blockchain.runtime.RuntimeContext; +import com.jd.blockchain.utils.Bytes; public class JVMContractEngine implements ContractEngine { private RuntimeContext runtimeContext = RuntimeContext.get(); -// private RuntimeContext runtimeContext = ModularRuntimeContext.setup(System.getProperty("user.dir")); - private String getCodeName(String address, long version) { - return address + "_" + version; + private String getCodeName(Bytes address, long version) { + return address.toBase58() + "_" + version; } @Override - public ContractCode getContract(String address, long version) { + public ContractCode getContract(Bytes address, long version) { String codeName = getCodeName(address, version); Module module = runtimeContext.getDynamicModule(codeName); if (module == null) { @@ -25,7 +25,7 @@ public class JVMContractEngine implements ContractEngine { } @Override - public ContractCode setupContract(String address, long version, byte[] code) { + public ContractCode setupContract(Bytes address, long version, byte[] code) { //is there the contractCode before setup? if yes ,then return; ContractCode contractCode = getContract(address,version); if(contractCode != null){ diff --git a/source/contract/contract-jvm/src/main/java/com/jd/blockchain/contract/jvm/JavaContractCode.java b/source/contract/contract-jvm/src/main/java/com/jd/blockchain/contract/jvm/JavaContractCode.java index da5d2fb8..90f68d5a 100644 --- a/source/contract/contract-jvm/src/main/java/com/jd/blockchain/contract/jvm/JavaContractCode.java +++ b/source/contract/contract-jvm/src/main/java/com/jd/blockchain/contract/jvm/JavaContractCode.java @@ -14,6 +14,7 @@ import com.jd.blockchain.contract.ContractEventContext; import com.jd.blockchain.contract.engine.ContractCode; import com.jd.blockchain.runtime.Module; import com.jd.blockchain.utils.BaseConstant; +import com.jd.blockchain.utils.Bytes; /** * contract code based jvm @@ -22,18 +23,18 @@ import com.jd.blockchain.utils.BaseConstant; public class JavaContractCode implements ContractCode { private static final Logger LOGGER = LoggerFactory.getLogger(JavaContractCode.class); private Module codeModule; - private String address; + private Bytes address; private long version; private ContractEventContext contractEventContext; - public JavaContractCode(String address, long version, Module codeModule) { + public JavaContractCode(Bytes address, long version, Module codeModule) { this.address = address; this.version = version; this.codeModule = codeModule; } @Override - public String getAddress() { + public Bytes getAddress() { return address; } diff --git a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/ContractAccount.java b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/ContractAccount.java index 06817550..323960f3 100644 --- a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/ContractAccount.java +++ b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/ContractAccount.java @@ -8,11 +8,8 @@ import com.jd.blockchain.utils.io.BytesUtils; public class ContractAccount implements AccountHeader { - // private static final String CONTRACT_INFO_PREFIX = "INFO" + - // LedgerConsts.KEY_SEPERATOR; private static final Bytes CONTRACT_INFO_PREFIX = Bytes.fromString("INFO" + LedgerConsts.KEY_SEPERATOR); - // private static final String CHAIN_CODE_KEY = "CHAIN-CODE"; private static final Bytes CHAIN_CODE_KEY = Bytes.fromString("CHAIN-CODE"); private BaseAccount accBase; @@ -74,7 +71,6 @@ public class ContractAccount implements AccountHeader { private Bytes encodePropertyKey(Bytes key) { return CONTRACT_INFO_PREFIX.concat(key); -// return key.concatTo(CONTRACT_INFO_PREFIX); } } \ No newline at end of file diff --git a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/handles/ContractEventSendOperationHandle.java b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/handles/ContractEventSendOperationHandle.java index 5c3b67cc..e1930a35 100644 --- a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/handles/ContractEventSendOperationHandle.java +++ b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/handles/ContractEventSendOperationHandle.java @@ -1,49 +1,72 @@ package com.jd.blockchain.ledger.core.impl.handles; +import static com.jd.blockchain.utils.BaseConstant.CONTRACT_SERVICE_PROVIDER; + +import org.springframework.stereotype.Service; + import com.jd.blockchain.contract.LocalContractEventContext; +import com.jd.blockchain.contract.engine.ContractCode; +import com.jd.blockchain.contract.engine.ContractEngine; import com.jd.blockchain.contract.engine.ContractServiceProviders; import com.jd.blockchain.ledger.ContractEventSendOperation; import com.jd.blockchain.ledger.Operation; -import com.jd.blockchain.ledger.core.*; +import com.jd.blockchain.ledger.core.ContractAccount; +import com.jd.blockchain.ledger.core.ContractAccountSet; +import com.jd.blockchain.ledger.core.LedgerDataSet; +import com.jd.blockchain.ledger.core.LedgerException; +import com.jd.blockchain.ledger.core.LedgerService; +import com.jd.blockchain.ledger.core.OperationHandle; +import com.jd.blockchain.ledger.core.TransactionRequestContext; import com.jd.blockchain.ledger.core.impl.LedgerQueryService; import com.jd.blockchain.ledger.core.impl.OperationHandleContext; -import org.springframework.stereotype.Service; - -import static com.jd.blockchain.utils.BaseConstant.CONTRACT_SERVICE_PROVIDER; @Service public class ContractEventSendOperationHandle implements OperationHandle { + + private static final ContractEngine JVM_ENGINE; + + static { + JVM_ENGINE = ContractServiceProviders.getProvider(CONTRACT_SERVICE_PROVIDER).getEngine(); + } + @Override public void process(Operation op, LedgerDataSet dataset, TransactionRequestContext requestContext, LedgerDataSet previousBlockDataset, OperationHandleContext opHandleContext, LedgerService ledgerService) { ContractEventSendOperation contractOP = (ContractEventSendOperation) op; // 先从账本校验合约的有效性; // 注意:必须在前一个区块的数据集中进行校验,因为那是经过共识的数据;从当前新区块链数据集校验则会带来攻击风险:未经共识的合约得到执行; - if (!previousBlockDataset.getContractAccountSet().contains(contractOP.getContractAddress())) { - throw new LedgerException( - String.format("Target contract of ContractEvent was not registered! --[ContractAddress=%s]", - contractOP.getContractAddress())); + ContractAccountSet contractSet = previousBlockDataset.getContractAccountSet(); + if (!contractSet.contains(contractOP.getContractAddress())) { + throw new LedgerException(String.format("Contract was not registered! --[ContractAddress=%s]", + contractOP.getContractAddress())); } - - //创建合约的账本上下文实例; - LedgerQueryService queryService = new LedgerQueryService(ledgerService) ; + + // 创建合约的账本上下文实例; + LedgerQueryService queryService = new LedgerQueryService(ledgerService); ContractLedgerContext ledgerContext = new ContractLedgerContext(queryService, opHandleContext); - // TODO:从合约引擎加载合约,执行合约代码; - ContractAccount contract = previousBlockDataset.getContractAccountSet() - .getContract(contractOP.getContractAddress()); - try { - // 在调用方法前,需要加载上下文信息; - LocalContractEventContext localContractEventContext = new LocalContractEventContext( - requestContext.getRequest().getTransactionContent().getLedgerHash(),contract.getChainCode(), contractOP.getEvent()); - localContractEventContext.setArgs(contractOP.getArgs()).setTransactionRequest(requestContext.getRequest()). - setLedgerContext(ledgerContext); - ContractServiceProviders.getProvider(CONTRACT_SERVICE_PROVIDER).getEngine().setupContract( - contract.getAddress().toBase58(),contract.getChaincodeVersion(),contract.getChainCode()). - processEvent(localContractEventContext); - } catch (Exception e) { - e.printStackTrace(); + // 先检查合约引擎是否已经加载合约;如果未加载,再从账本中读取合约代码并装载到引擎中执行; + ContractAccount contract = contractSet.getContract(contractOP.getContractAddress()); + if (contract == null) { + throw new LedgerException(String.format("Contract was not registered! --[ContractAddress=%s]", + contractOP.getContractAddress())); } + + // 创建合约上下文; + LocalContractEventContext localContractEventContext = new LocalContractEventContext( + requestContext.getRequest().getTransactionContent().getLedgerHash(), contractOP.getEvent()); + localContractEventContext.setArgs(contractOP.getArgs()).setTransactionRequest(requestContext.getRequest()) + .setLedgerContext(ledgerContext); + + ContractCode contractCode = JVM_ENGINE.getContract(contract.getAddress(), contract.getChaincodeVersion()); + if (contractCode == null) { + // 装载合约; + contractCode = JVM_ENGINE.setupContract(contract.getAddress(), contract.getChaincodeVersion(), + contract.getChainCode()); + } + + // 处理合约事件; + contractCode.processEvent(localContractEventContext); } @Override diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/contract/LocalContractEventContext.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/contract/LocalContractEventContext.java index 7d366d0c..e18d7714 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/contract/LocalContractEventContext.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/contract/LocalContractEventContext.java @@ -1,11 +1,10 @@ package com.jd.blockchain.contract; +import java.util.Set; + import com.jd.blockchain.crypto.HashDigest; import com.jd.blockchain.ledger.BlockchainIdentity; import com.jd.blockchain.ledger.TransactionRequest; -import com.jd.blockchain.utils.io.ByteArray; - -import java.util.Set; /** * @Author zhaogw @@ -21,10 +20,10 @@ public class LocalContractEventContext implements ContractEventContext,Cloneable private Set contractOwners; private LedgerContext ledgerContext; - public LocalContractEventContext(HashDigest ledgeHash, byte[] chainCode, String event){ + public LocalContractEventContext(HashDigest ledgeHash, String event){ this.ledgeHash = ledgeHash; this.event = event; - this.chainCode = chainCode; +// this.chainCode = chainCode; } @Override @@ -92,14 +91,14 @@ public class LocalContractEventContext implements ContractEventContext,Cloneable return this; } - public byte[] getChainCode() { - return chainCode; - } - - public LocalContractEventContext setChainCode(byte[] chainCode) { - this.chainCode = chainCode; - return this; - } +// public byte[] getChainCode() { +// return chainCode; +// } +// +// public LocalContractEventContext setChainCode(byte[] chainCode) { +// this.chainCode = chainCode; +// return this; +// } public LocalContractEventContext setArgs(byte[] args) { this.args = args; diff --git a/source/utils/utils-common/src/main/java/com/jd/blockchain/utils/Bytes.java b/source/utils/utils-common/src/main/java/com/jd/blockchain/utils/Bytes.java index 7b7921b8..2aeb488e 100644 --- a/source/utils/utils-common/src/main/java/com/jd/blockchain/utils/Bytes.java +++ b/source/utils/utils-common/src/main/java/com/jd/blockchain/utils/Bytes.java @@ -8,6 +8,12 @@ import com.jd.blockchain.utils.io.BytesSerializable; import com.jd.blockchain.utils.io.BytesUtils; import com.jd.blockchain.utils.io.RuntimeIOException; +/** + * Bytes 被设计为不可变对象; + * + * @author huanghaiquan + * + */ public class Bytes implements BytesSerializable { public static final Bytes EMPTY = new Bytes(BytesUtils.EMPTY_BYTES); @@ -38,7 +44,7 @@ public class Bytes implements BytesSerializable { } public Bytes() { - prefix=null; + prefix = null; data = null; hashCode = hashCode(1); } @@ -47,7 +53,7 @@ public class Bytes implements BytesSerializable { if (data == null) { throw new IllegalArgumentException("data is null!"); } - this.prefix=null; + this.prefix = null; this.data = data; hashCode = hashCode(1); } @@ -56,30 +62,30 @@ public class Bytes implements BytesSerializable { if (data == null) { throw new IllegalArgumentException("data is null!"); } - this.prefix=prefix; + this.prefix = prefix; this.data = data; -// setPrefix(prefix); + // setPrefix(prefix); hashCode = hashCode(1); } public Bytes(Bytes prefix, Bytes data) { -// setData(data.toBytes()); -// setPrefix(prefix); + // setData(data.toBytes()); + // setPrefix(prefix); if (data == null) { throw new IllegalArgumentException("data is null!"); } - this.prefix=prefix; + this.prefix = prefix; this.data = data.toBytes(); - + hashCode = hashCode(1); } -// private void setData(byte[] data) { -// if (data == null) { -// throw new IllegalArgumentException("data is null!"); -// } -// this.data = data; -// } + // private void setData(byte[] data) { + // if (data == null) { + // throw new IllegalArgumentException("data is null!"); + // } + // this.data = data; + // } /** * 返回当前的字节数组(不包含前缀对象); @@ -98,16 +104,16 @@ public class Bytes implements BytesSerializable { return new Bytes(Base58Utils.decode(str)); } -// /** -// * 连接指定的前缀后面;此操作并不会更改“prefix”参数; -// * -// * @param prefix -// * @return -// */ -// private Bytes setPrefix(Bytes prefix) { -// this.prefix = prefix; -// return this; -// } + // /** + // * 连接指定的前缀后面;此操作并不会更改“prefix”参数; + // * + // * @param prefix + // * @return + // */ + // private Bytes setPrefix(Bytes prefix) { + // this.prefix = prefix; + // return this; + // } public Bytes concat(Bytes key) { return new Bytes(this, key); From f483a5a0d463283e0aa9542708e93b39959bc0f7 Mon Sep 17 00:00:00 2001 From: huanghaiquan Date: Sat, 4 May 2019 00:20:46 +0800 Subject: [PATCH 07/10] Fixed compiling errors. --- .../transaction/ContractDefinition.java | 5 -- .../blockchain/transaction/ContractType.java | 56 +++++++++++++++++++ .../jd/blockchain/transaction/TxBuilder.java | 2 +- source/sdk/sdk-samples/pom.xml | 20 +++---- source/test/test-integration/pom.xml | 5 -- .../com/jd/blockchain/utils/ValueType.java | 10 +++- 6 files changed, 75 insertions(+), 23 deletions(-) delete mode 100644 source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ContractDefinition.java create mode 100644 source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ContractType.java diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ContractDefinition.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ContractDefinition.java deleted file mode 100644 index cee26713..00000000 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ContractDefinition.java +++ /dev/null @@ -1,5 +0,0 @@ -package com.jd.blockchain.transaction; - -class ContractDefinition { - -} diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ContractType.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ContractType.java new file mode 100644 index 00000000..27d75e25 --- /dev/null +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/ContractType.java @@ -0,0 +1,56 @@ +package com.jd.blockchain.transaction; + +import java.lang.reflect.Method; +import java.util.Set; +import java.util.SortedMap; + +class ContractType { + + private String name; + + private SortedMap events; + + private SortedMap handleMethods; + + /** + * 返回声明的所有事件; + * + * @return + */ + Set getEvents() { + return events.keySet(); + } + + /** + * 返回指定方法声明的事件;
+ * + * 如果不存在,则返回 null; + * + * @param method + * @return + */ + String getEvent(Method method) { + return handleMethods.get(method); + } + + /** + * 返回事件的处理方法;
+ * + * 如果不存在,则返回 null; + * + * @param event + * @return + */ + Method getHandleMethod(String event) { + return events.get(event); + } + + private ContractType() { + } + + +// public static ContractType resolve(Class contractIntf) { +// +// } + +} diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/TxBuilder.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/TxBuilder.java index 2a2c62fd..bab7dd0f 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/TxBuilder.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/TxBuilder.java @@ -87,7 +87,7 @@ public class TxBuilder implements TransactionBuilder { @Override public T contract(String address, Class contractIntf) { // TODO Auto-generated method stub - return null; + throw new IllegalStateException("Not implemented."); } } diff --git a/source/sdk/sdk-samples/pom.xml b/source/sdk/sdk-samples/pom.xml index bc85d375..b6c36f6d 100644 --- a/source/sdk/sdk-samples/pom.xml +++ b/source/sdk/sdk-samples/pom.xml @@ -1,4 +1,5 @@ - 4.0.0 @@ -16,7 +17,7 @@
com.jd.blockchain - contract-model + ledger-model ${project.version} @@ -31,18 +32,17 @@ org.apache.maven.plugins maven-deploy-plugin - 2.8.2 true - - - - - - - + + + + + + + \ No newline at end of file diff --git a/source/test/test-integration/pom.xml b/source/test/test-integration/pom.xml index 8e2e4946..b84a54bd 100644 --- a/source/test/test-integration/pom.xml +++ b/source/test/test-integration/pom.xml @@ -40,11 +40,6 @@ sdk-client ${project.version} - - com.jd.blockchain - contract-model - ${project.version} - io.nats jnats diff --git a/source/utils/utils-common/src/main/java/com/jd/blockchain/utils/ValueType.java b/source/utils/utils-common/src/main/java/com/jd/blockchain/utils/ValueType.java index ccabc600..906223fe 100644 --- a/source/utils/utils-common/src/main/java/com/jd/blockchain/utils/ValueType.java +++ b/source/utils/utils-common/src/main/java/com/jd/blockchain/utils/ValueType.java @@ -16,12 +16,11 @@ public enum ValueType { /** * 布尔型; */ - BOOLEAN((byte) 0x10), + BOOLEAN((byte) 0x10), /** * 数值型: */ - INT8((byte) 0x11), INT16((byte) 0x12), @@ -89,6 +88,13 @@ public enum ValueType { // * // */ // REFERENCE((byte) 0x80); + + + public static final byte NUMERIC_FLAG = (byte)0x10; + + public static final byte TEXT_FLAG = (byte)0x20; + + public static final byte BINARY_FLAG = (byte)0x40; public final byte CODE; From f88ef08fc2bcc2ac1980e10c4e1bc0dd109bc03d Mon Sep 17 00:00:00 2001 From: huanghaiquan Date: Sat, 4 May 2019 14:27:03 +0800 Subject: [PATCH 08/10] Moved ValueType from utils-common project to binary-proto project --- .../consts/{TypeCodes.java => DataCodes.java} | 20 +++--- .../jd/blockchain/binaryproto/DataField.java | 10 ++- .../jd/blockchain/binaryproto/DataType.java} | 10 +-- .../jd/blockchain/binaryproto/EnumField.java | 6 +- .../binaryproto/EnumSpecification.java | 6 +- .../jd/blockchain/binaryproto/FieldSpec.java | 6 +- .../binaryproto/impl/DataContractContext.java | 49 +++++++------- .../impl/EnumSpecificationInfo.java | 8 +-- .../binaryproto/impl/EnumValueConverter.java | 6 +- .../binaryproto/impl/FieldSpecInfo.java | 8 +-- .../binaryproto/CompositeDatas.java | 7 +- .../jd/blockchain/binaryproto/EnumLevel.java | 4 +- .../FieldOrderConflictedDatas.java | 15 ++--- .../binaryproto/PrimitiveDatas.java | 24 +++---- .../binaryproto/RefContractDatas.java | 1 - .../blockchain/binaryproto/SubOperation.java | 4 +- .../contract/AddressCodeDuplicate.java | 6 +- .../contract/AddressOrderDuplicate.java | 6 +- .../binaryproto/contract/Array.java | 10 +-- .../binaryproto/contract/Level.java | 4 +- .../contract/PrivilegeModelSetting.java | 4 +- .../BftsmartClientIncomingSettings.java | 12 ++-- .../bftsmart/BftsmartCommitBlockSettings.java | 10 +-- .../bftsmart/BftsmartConsensusSettings.java | 8 +-- .../bftsmart/BftsmartNodeSettings.java | 10 +-- .../consensus/ClientIdentification.java | 14 ++-- .../consensus/ClientIdentifications.java | 4 +- .../consensus/ClientIncomingSettings.java | 10 +-- .../consensus/ConsensusSettings.java | 4 +- .../jd/blockchain/consensus/NodeSettings.java | 10 +-- .../consensus/action/ActionRequest.java | 16 ++--- .../consensus/action/ActionResponse.java | 14 ++-- .../mq/settings/MsgQueueBlockSettings.java | 10 +-- .../MsgQueueClientIncomingSettings.java | 8 +-- .../settings/MsgQueueConsensusSettings.java | 6 +- .../mq/settings/MsgQueueNetworkSettings.java | 14 ++-- .../mq/settings/MsgQueueNodeSettings.java | 4 +- .../jd/blockchain/crypto/CryptoAlgorithm.java | 8 +-- .../blockchain/ledger/core/DataAccount.java | 4 +- .../ledger/core/LedgerInitDecision.java | 12 ++-- .../ledger/core/LedgerInitPermission.java | 10 +-- .../ledger/core/LedgerMetadata.java | 10 +-- .../blockchain/ledger/core/LedgerSetting.java | 10 +-- .../ledger/core/impl/LedgerQueryService.java | 6 +- .../impl/handles/ContractLedgerContext.java | 12 ++-- .../jd/blockchain/ledger/AccountHeader.java | 12 ++-- .../com/jd/blockchain/ledger/BlockBody.java | 14 ++-- .../blockchain/ledger/BlockchainIdentity.java | 10 +-- .../com/jd/blockchain/ledger/BytesValue.java | 10 +-- .../jd/blockchain/ledger/BytesValueImpl.java | 8 +-- .../{DataType.java => BytesValueType.java} | 44 ++++++------- .../ledger/ContractCodeDeployOperation.java | 8 +-- .../ledger/ContractEventSendOperation.java | 12 ++-- .../jd/blockchain/ledger/CryptoSetting.java | 10 +-- .../ledger/DataAccountKVSetOperation.java | 14 ++-- .../ledger/DataAccountRegisterOperation.java | 4 +- .../blockchain/ledger/DigitalSignature.java | 4 +- .../ledger/DigitalSignatureBody.java | 10 +-- .../jd/blockchain/ledger/EndpointRequest.java | 8 +-- .../com/jd/blockchain/ledger/HashObject.java | 4 +- .../com/jd/blockchain/ledger/KVDataEntry.java | 4 +- .../jd/blockchain/ledger/KVDataObject.java | 64 +++++++++---------- .../com/jd/blockchain/ledger/LedgerBlock.java | 8 +-- .../blockchain/ledger/LedgerDataSnapshot.java | 14 ++-- .../ledger/LedgerInitOperation.java | 4 +- .../blockchain/ledger/LedgerInitSetting.java | 12 ++-- .../blockchain/ledger/LedgerTransaction.java | 4 +- .../com/jd/blockchain/ledger/NodeRequest.java | 4 +- .../com/jd/blockchain/ledger/Operation.java | 4 +- .../jd/blockchain/ledger/ParticipantNode.java | 12 ++-- .../com/jd/blockchain/ledger/Transaction.java | 10 +-- .../blockchain/ledger/TransactionContent.java | 8 +-- .../ledger/TransactionContentBody.java | 8 +-- .../blockchain/ledger/TransactionRequest.java | 8 +-- .../ledger/TransactionResponse.java | 14 ++-- .../blockchain/ledger/TransactionState.java | 8 +-- .../com/jd/blockchain/ledger/UserInfo.java | 4 +- .../ledger/UserRegisterOperation.java | 4 +- .../DataAccountKVSetOperationBuilderImpl.java | 12 ++-- .../data/DataAccountKVSetOpTemplateTest.java | 8 +-- .../jd/blockchain/ledger/data/KVDataTest.java | 4 +- .../peer/web/LedgerQueryController.java | 6 +- 82 files changed, 410 insertions(+), 426 deletions(-) rename source/base/src/main/java/com/jd/blockchain/consts/{TypeCodes.java => DataCodes.java} (93%) rename source/{utils/utils-common/src/main/java/com/jd/blockchain/utils/ValueType.java => binary-proto/src/main/java/com/jd/blockchain/binaryproto/DataType.java} (82%) rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/{DataType.java => BytesValueType.java} (57%) diff --git a/source/base/src/main/java/com/jd/blockchain/consts/TypeCodes.java b/source/base/src/main/java/com/jd/blockchain/consts/DataCodes.java similarity index 93% rename from source/base/src/main/java/com/jd/blockchain/consts/TypeCodes.java rename to source/base/src/main/java/com/jd/blockchain/consts/DataCodes.java index 3289a18f..2afa40f3 100644 --- a/source/base/src/main/java/com/jd/blockchain/consts/TypeCodes.java +++ b/source/base/src/main/java/com/jd/blockchain/consts/DataCodes.java @@ -1,10 +1,12 @@ package com.jd.blockchain.consts; /** + * A const registeration of codes of all data contracts in ledger model; + * * @author huanghaiquan * */ -public interface TypeCodes { +public interface DataCodes { public static final int BYTES_VALUE = 0x80; @@ -59,11 +61,11 @@ public interface TypeCodes { public static final int METADATA_CONSENSUS_PARTICIPANT = 0x621; -// public static final int METADATA_CONSENSUS_NODE = 0x630; + // public static final int METADATA_CONSENSUS_NODE = 0x630; public static final int METADATA_CONSENSUS_SETTING = 0x631; -// public static final int METADATA_PARTICIPANT_INFO = 0x640; + // public static final int METADATA_PARTICIPANT_INFO = 0x640; public static final int METADATA_CRYPTO_SETTING = 0x642; @@ -87,7 +89,7 @@ public interface TypeCodes { public static final int ENUM_TYPE_TRANSACTION_STATE = 0xB22; - public static final int ENUM_TYPE_DATA_TYPE= 0xB23; + public static final int ENUM_TYPE_DATA_TYPE = 0xB23; public static final int DIGITALSIGNATURE = 0xB30; @@ -103,8 +105,6 @@ public interface TypeCodes { public static final int REQUEST_ENDPOINT = 0xD20; - - // ------------------ 共识相关 ---------------- public static final int CONSENSUS = 0x1000; @@ -112,12 +112,11 @@ public interface TypeCodes { public static final int CONSENSUS_ACTION_REQUEST = CONSENSUS | 0x01; public static final int CONSENSUS_ACTION_RESPONSE = CONSENSUS | 0x02; - - + public static final int CONSENSUS_SETTINGS = CONSENSUS | 0x03; public static final int CONSENSUS_NODE_SETTINGS = CONSENSUS | 0x04; - + public static final int CONSENSUS_CLI_INCOMING_SETTINGS = CONSENSUS | 0x05; // ------------------ 共识相关(BFTSMART) ---------------- @@ -126,7 +125,7 @@ public interface TypeCodes { public static final int CONSENSUS_BFTSMART_SETTINGS = CONSENSUS_BFTSMART | 0x01; public static final int CONSENSUS_BFTSMART_NODE_SETTINGS = CONSENSUS_BFTSMART | 0x02; - + public static final int CONSENSUS_BFTSMART_CLI_INCOMING_SETTINGS = CONSENSUS_BFTSMART | 0x03; public static final int CONSENSUS_BFTSMART_BLOCK_SETTINGS = CONSENSUS_BFTSMART | 0x04; @@ -144,5 +143,4 @@ public interface TypeCodes { public static final int CONSENSUS_MSGQUEUE_BLOCK_SETTINGS = CONSENSUS_MSGQUEUE | 0x05; - } diff --git a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/DataField.java b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/DataField.java index fbd02711..ca714dae 100644 --- a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/DataField.java +++ b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/DataField.java @@ -5,8 +5,6 @@ import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; -import com.jd.blockchain.utils.ValueType; - /** * 标记一个接口的字段作为数据契约的字段; *

@@ -39,11 +37,11 @@ public @interface DataField { * 基本数据类型; *

* - * 如果字段的类型属于 {@link ValueType} 枚举中的基本数据类型,则需要显式指定一种具体的类型; + * 如果字段的类型属于 {@link DataType} 枚举中的基本数据类型,则需要显式指定一种具体的类型; * * @return */ - ValueType primitiveType() default ValueType.NIL; + DataType primitiveType() default DataType.NIL; /** * 是否是枚举类型; @@ -80,8 +78,8 @@ public @interface DataField { /** * 最大长度,单位为“byte” *

- * 仅对于文本、字节数组、大整数等相关的数据类型有效(即:{@link ValueType} 枚举中编码大于等于 0x20 - * {@link ValueType#TEXT}的数据类型); + * 仅对于文本、字节数组、大整数等相关的数据类型有效(即:{@link DataType} 枚举中编码大于等于 0x20 + * {@link DataType#TEXT}的数据类型); * * @return */ diff --git a/source/utils/utils-common/src/main/java/com/jd/blockchain/utils/ValueType.java b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/DataType.java similarity index 82% rename from source/utils/utils-common/src/main/java/com/jd/blockchain/utils/ValueType.java rename to source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/DataType.java index 906223fe..e4a55280 100644 --- a/source/utils/utils-common/src/main/java/com/jd/blockchain/utils/ValueType.java +++ b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/DataType.java @@ -1,4 +1,4 @@ -package com.jd.blockchain.utils; +package com.jd.blockchain.binaryproto; /** * 键值操作的数据类型; @@ -6,7 +6,7 @@ package com.jd.blockchain.utils; * @author huanghaiquan * */ -public enum ValueType { +public enum DataType { /** * 空; @@ -98,12 +98,12 @@ public enum ValueType { public final byte CODE; - private ValueType(byte code) { + private DataType(byte code) { this.CODE = code; } - public static ValueType valueOf(byte code) { - for (ValueType dataType : ValueType.values()) { + public static DataType valueOf(byte code) { + for (DataType dataType : DataType.values()) { if (dataType.CODE == code) { return dataType; } diff --git a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/EnumField.java b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/EnumField.java index 43074e98..2d55d4d5 100644 --- a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/EnumField.java +++ b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/EnumField.java @@ -5,8 +5,6 @@ import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; -import com.jd.blockchain.utils.ValueType; - @Target({ ElementType.FIELD, ElementType.METHOD }) @Retention(RetentionPolicy.RUNTIME) public @interface EnumField { @@ -15,11 +13,11 @@ public @interface EnumField { * 枚举值的类型; * *

- * 注:只支持 {@link ValueType#INT8} ~ {@link ValueType#INT32} 这几种类型; + * 注:只支持 {@link DataType#INT8} ~ {@link DataType#INT32} 这几种类型; * * * @return */ - ValueType type(); + DataType type(); } diff --git a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/EnumSpecification.java b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/EnumSpecification.java index c86f0bf0..ffb39582 100644 --- a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/EnumSpecification.java +++ b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/EnumSpecification.java @@ -1,9 +1,5 @@ package com.jd.blockchain.binaryproto; -import java.util.Set; - -import com.jd.blockchain.utils.ValueType; - public interface EnumSpecification { int getCode(); @@ -14,7 +10,7 @@ public interface EnumSpecification { long getVersion(); - ValueType getValueType(); + DataType getValueType(); int[] getItemValues(); diff --git a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/FieldSpec.java b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/FieldSpec.java index 1c3621d6..8f88291c 100644 --- a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/FieldSpec.java +++ b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/FieldSpec.java @@ -1,7 +1,5 @@ package com.jd.blockchain.binaryproto; -import com.jd.blockchain.utils.ValueType; - /** * 表示数据契约字段的格式标准; * @@ -35,11 +33,11 @@ public interface FieldSpec { * 字段的值的类型; *

* 如果不是字段的值不是基本类型,则返回 null(即: {@link DataField#primitiveType()} 设置为 - * {@link ValueType#NIL}); + * {@link DataType#NIL}); * * @return */ - ValueType getPrimitiveType(); + DataType getPrimitiveType(); /** * 字段的值引用的枚举契约; diff --git a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/impl/DataContractContext.java b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/impl/DataContractContext.java index f5efaa0e..f78bb96d 100644 --- a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/impl/DataContractContext.java +++ b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/impl/DataContractContext.java @@ -5,7 +5,6 @@ import java.lang.reflect.Method; import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; -import java.util.Collections; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -18,12 +17,12 @@ import com.jd.blockchain.binaryproto.DataContractEncoder; import com.jd.blockchain.binaryproto.DataContractException; import com.jd.blockchain.binaryproto.DataField; import com.jd.blockchain.binaryproto.DataSpecification; +import com.jd.blockchain.binaryproto.DataType; import com.jd.blockchain.binaryproto.EnumContract; import com.jd.blockchain.binaryproto.EnumField; import com.jd.blockchain.binaryproto.EnumSpecification; import com.jd.blockchain.binaryproto.FieldSpec; import com.jd.blockchain.binaryproto.impl.EnumSpecificationInfo.EnumConstant; -import com.jd.blockchain.utils.ValueType; import com.jd.blockchain.utils.io.BytesSerializable; import com.jd.blockchain.utils.io.BytesUtils; import com.jd.blockchain.utils.security.SHA256Hash; @@ -66,23 +65,23 @@ public class DataContractContext { private static Map, EnumSpecification> enumContractSpecMap = new ConcurrentHashMap<>(); - private static Map, ValueConverter>> primitiveTypeConverters = new HashMap<>(); + private static Map, ValueConverter>> primitiveTypeConverters = new HashMap<>(); static { - addConverterMapping(ValueType.BOOLEAN, boolean.class, new BoolConverter()); - addConverterMapping(ValueType.BOOLEAN, Boolean.class, new BoolWrapperConverter()); - addConverterMapping(ValueType.INT8, byte.class, new Int8ByteConverter()); - addConverterMapping(ValueType.INT8, Byte.class, new Int8ByteWrapperConverter()); - addConverterMapping(ValueType.INT16, short.class, new Int16ShortConverter()); - addConverterMapping(ValueType.INT16, Short.class, new Int16ShortWrapperConverter()); - addConverterMapping(ValueType.INT16, char.class, new Int16CharConverter()); - addConverterMapping(ValueType.INT16, Character.class, new Int16CharWrapperConverter()); - addConverterMapping(ValueType.INT32, int.class, new Int32IntConverter()); - addConverterMapping(ValueType.INT32, Integer.class, new Int32IntWrapperConverter()); - addConverterMapping(ValueType.INT64, long.class, new Int64LongConverter()); - addConverterMapping(ValueType.INT64, Long.class, new Int64LongWrapperConverter()); - addConverterMapping(ValueType.TEXT, String.class, new StringValueConverter()); - addConverterMapping(ValueType.BYTES, byte[].class, new BytesValueConverter()); + addConverterMapping(DataType.BOOLEAN, boolean.class, new BoolConverter()); + addConverterMapping(DataType.BOOLEAN, Boolean.class, new BoolWrapperConverter()); + addConverterMapping(DataType.INT8, byte.class, new Int8ByteConverter()); + addConverterMapping(DataType.INT8, Byte.class, new Int8ByteWrapperConverter()); + addConverterMapping(DataType.INT16, short.class, new Int16ShortConverter()); + addConverterMapping(DataType.INT16, Short.class, new Int16ShortWrapperConverter()); + addConverterMapping(DataType.INT16, char.class, new Int16CharConverter()); + addConverterMapping(DataType.INT16, Character.class, new Int16CharWrapperConverter()); + addConverterMapping(DataType.INT32, int.class, new Int32IntConverter()); + addConverterMapping(DataType.INT32, Integer.class, new Int32IntWrapperConverter()); + addConverterMapping(DataType.INT64, long.class, new Int64LongConverter()); + addConverterMapping(DataType.INT64, Long.class, new Int64LongWrapperConverter()); + addConverterMapping(DataType.TEXT, String.class, new StringValueConverter()); + addConverterMapping(DataType.BYTES, byte[].class, new BytesValueConverter()); ENCODER_LOOKUP = new DataContractEncoderLookup() { @Override @@ -102,7 +101,7 @@ public class DataContractContext { }; } - private static void addConverterMapping(ValueType protocalType, Class javaType, ValueConverter converter) { + private static void addConverterMapping(DataType protocalType, Class javaType, ValueConverter converter) { Map, ValueConverter> converterMap = primitiveTypeConverters.get(protocalType); if (converterMap == null) { converterMap = new HashMap<>(); @@ -111,14 +110,14 @@ public class DataContractContext { converterMap.put(javaType, converter); } - private static ValueConverter getPrimitiveTypeConverter(ValueType protocalType, Class javaType) { + private static ValueConverter getPrimitiveTypeConverter(DataType protocalType, Class javaType) { Map, ValueConverter> converterMap = primitiveTypeConverters.get(protocalType); if (converterMap != null) { ValueConverter converter = converterMap.get(javaType); if (converter != null) { return converter; } - if (ValueType.BYTES == protocalType && BytesSerializable.class.isAssignableFrom(javaType)) { + if (DataType.BYTES == protocalType && BytesSerializable.class.isAssignableFrom(javaType)) { converter = new BytesSerializableValueConverter(javaType); converterMap.put(javaType, converter); return converter; @@ -367,7 +366,7 @@ public class DataContractContext { EnumSpecificationInfo enumSpec = (EnumSpecificationInfo) fieldInfo.fieldSpec.getRefEnum(); int[] values = enumSpec.getItemValues(); Object[] constants = enumSpec.getConstants(); - ValueType codeType = enumSpec.getValueType(); + DataType codeType = enumSpec.getValueType(); ValueConverter baseConverter = getPrimitiveTypeConverter(codeType, enumSpec.getDataType()); @@ -411,8 +410,8 @@ public class DataContractContext { private static BinarySliceSpec buildSlice(FieldSpecInfo fieldSpec) { boolean fixed = false; int len = -1; - ValueType fixedValueType = null; - if (fieldSpec.getPrimitiveType() != null && fieldSpec.getPrimitiveType() != ValueType.NIL) { + DataType fixedValueType = null; + if (fieldSpec.getPrimitiveType() != null && fieldSpec.getPrimitiveType() != DataType.NIL) { fixedValueType = fieldSpec.getPrimitiveType(); } else if (fieldSpec.getRefEnum() != null) { fixedValueType = fieldSpec.getRefEnum().getValueType(); @@ -547,7 +546,7 @@ public class DataContractContext { } int maxSize = annoField.maxSize(); - ValueType primitiveType = annoField.primitiveType(); + DataType primitiveType = annoField.primitiveType(); if (primitiveType != null) { primitiveType = verifyPrimitiveType(primitiveType, dataType, accessor); } @@ -651,7 +650,7 @@ public class DataContractContext { * @param dataType * @return */ - private static ValueType verifyPrimitiveType(ValueType primitiveType, Class dataType, Method accessor) { + private static DataType verifyPrimitiveType(DataType primitiveType, Class dataType, Method accessor) { switch (primitiveType) { case NIL: return null; diff --git a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/impl/EnumSpecificationInfo.java b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/impl/EnumSpecificationInfo.java index baf753c5..244dfd61 100644 --- a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/impl/EnumSpecificationInfo.java +++ b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/impl/EnumSpecificationInfo.java @@ -3,15 +3,15 @@ package com.jd.blockchain.binaryproto.impl; import java.util.LinkedHashSet; import java.util.Set; +import com.jd.blockchain.binaryproto.DataType; import com.jd.blockchain.binaryproto.EnumSpecification; -import com.jd.blockchain.utils.ValueType; /** * Created by zhangshuang3 on 2018/6/21. */ public class EnumSpecificationInfo implements EnumSpecification { - private ValueType valueType; + private DataType valueType; private Class dataType; @@ -24,7 +24,7 @@ public class EnumSpecificationInfo implements EnumSpecification { // private Map itemCodeMapping = new HashMap<>(); // private Map codeItemMapping = new HashMap<>(); - public EnumSpecificationInfo(ValueType valueType, int code, long version, String name, String description, Class dataType) { + public EnumSpecificationInfo(DataType valueType, int code, long version, String name, String description, Class dataType) { this.valueType = valueType; this.code = code; this.version = version; @@ -54,7 +54,7 @@ public class EnumSpecificationInfo implements EnumSpecification { } @Override - public ValueType getValueType() { + public DataType getValueType() { return this.valueType; } diff --git a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/impl/EnumValueConverter.java b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/impl/EnumValueConverter.java index f0c57fb8..79d0ec25 100644 --- a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/impl/EnumValueConverter.java +++ b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/impl/EnumValueConverter.java @@ -1,14 +1,14 @@ package com.jd.blockchain.binaryproto.impl; import com.jd.blockchain.binaryproto.DataContractException; -import com.jd.blockchain.utils.ValueType; +import com.jd.blockchain.binaryproto.DataType; import com.jd.blockchain.utils.io.BytesSlice; public class EnumValueConverter implements FixedValueConverter { private Class enumType; - private ValueType codeType; + private DataType codeType; private int[] values; @@ -16,7 +16,7 @@ public class EnumValueConverter implements FixedValueConverter { private FixedValueConverter valueConverter; - public EnumValueConverter(Class enumType, ValueType codeType, int[] values, Object[] constants, FixedValueConverter valueConverter) { + public EnumValueConverter(Class enumType, DataType codeType, int[] values, Object[] constants, FixedValueConverter valueConverter) { this.enumType = enumType; this.values = values; this.constants = constants; diff --git a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/impl/FieldSpecInfo.java b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/impl/FieldSpecInfo.java index 6e8425bc..3018d690 100644 --- a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/impl/FieldSpecInfo.java +++ b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/impl/FieldSpecInfo.java @@ -1,9 +1,9 @@ package com.jd.blockchain.binaryproto.impl; import com.jd.blockchain.binaryproto.DataSpecification; +import com.jd.blockchain.binaryproto.DataType; import com.jd.blockchain.binaryproto.EnumSpecification; import com.jd.blockchain.binaryproto.FieldSpec; -import com.jd.blockchain.utils.ValueType; public class FieldSpecInfo implements FieldSpec { @@ -15,7 +15,7 @@ public class FieldSpecInfo implements FieldSpec { private boolean repeatable; - private ValueType primitiveType; + private DataType primitiveType; private EnumSpecification enumSpec; @@ -27,7 +27,7 @@ public class FieldSpecInfo implements FieldSpec { private boolean isGenericContract = false; - public FieldSpecInfo(int order, String name, String decription, ValueType primitiveType, boolean repeatable, + public FieldSpecInfo(int order, String name, String decription, DataType primitiveType, boolean repeatable, int maxSize, Class dataType) { if (primitiveType == null) { throw new IllegalArgumentException("primitiveType is null!"); @@ -71,7 +71,7 @@ public class FieldSpecInfo implements FieldSpec { } @Override - public ValueType getPrimitiveType() { + public DataType getPrimitiveType() { return primitiveType; } diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/CompositeDatas.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/CompositeDatas.java index be60a558..56873e70 100644 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/CompositeDatas.java +++ b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/CompositeDatas.java @@ -2,8 +2,7 @@ package test.com.jd.blockchain.binaryproto; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.utils.Bytes; -import com.jd.blockchain.utils.ValueType; +import com.jd.blockchain.binaryproto.DataType; /** * Created by zhangshuang3 on 2018/11/30. @@ -11,7 +10,7 @@ import com.jd.blockchain.utils.ValueType; @DataContract(code = 0xc, name = "CompositeDatas", description = "") public interface CompositeDatas { - @DataField(order = 1, primitiveType = ValueType.BOOLEAN) + @DataField(order = 1, primitiveType = DataType.BOOLEAN) boolean isEnable(); @DataField(order = 2, refEnum = true) @@ -23,7 +22,7 @@ public interface CompositeDatas { @DataField(order=4, list = true, refContract=true, genericContract = true) Operation[] getOperations(); - @DataField(order = 5, primitiveType = ValueType.INT16) + @DataField(order = 5, primitiveType = DataType.INT16) short getAge(); } diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/EnumLevel.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/EnumLevel.java index a736e334..8c8a1885 100644 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/EnumLevel.java +++ b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/EnumLevel.java @@ -1,8 +1,8 @@ package test.com.jd.blockchain.binaryproto; +import com.jd.blockchain.binaryproto.DataType; import com.jd.blockchain.binaryproto.EnumContract; import com.jd.blockchain.binaryproto.EnumField; -import com.jd.blockchain.utils.ValueType; /** * Created by zhangshuang3 on 2018/11/29. @@ -14,7 +14,7 @@ public enum EnumLevel { V2((byte) 2); - @EnumField(type= ValueType.INT8) + @EnumField(type= DataType.INT8) public final byte CODE; public byte getCode() { return CODE; diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/FieldOrderConflictedDatas.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/FieldOrderConflictedDatas.java index 2c17922c..9fc70c04 100644 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/FieldOrderConflictedDatas.java +++ b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/FieldOrderConflictedDatas.java @@ -2,8 +2,7 @@ package test.com.jd.blockchain.binaryproto; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.utils.Bytes; -import com.jd.blockchain.utils.ValueType; +import com.jd.blockchain.binaryproto.DataType; /** * Created by zhangshuang3 on 2018/7/11. @@ -11,22 +10,22 @@ import com.jd.blockchain.utils.ValueType; @DataContract(code = 0x06, name = "Primitive", description = "") public interface FieldOrderConflictedDatas { - @DataField(order = 2, primitiveType = ValueType.BOOLEAN) + @DataField(order = 2, primitiveType = DataType.BOOLEAN) boolean isEnable(); - @DataField(order = 3, primitiveType = ValueType.INT8) + @DataField(order = 3, primitiveType = DataType.INT8) byte isBoy(); - @DataField(order = 7, primitiveType = ValueType.INT16) + @DataField(order = 7, primitiveType = DataType.INT16) short getAge(); - @DataField(order = -1, primitiveType = ValueType.INT32) + @DataField(order = -1, primitiveType = DataType.INT32) int getId(); - @DataField(order = 6, primitiveType = ValueType.TEXT) + @DataField(order = 6, primitiveType = DataType.TEXT) String getName(); - @DataField(order = 7, primitiveType = ValueType.INT64) + @DataField(order = 7, primitiveType = DataType.INT64) long getValue(); diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/PrimitiveDatas.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/PrimitiveDatas.java index f855785c..192fea7f 100644 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/PrimitiveDatas.java +++ b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/PrimitiveDatas.java @@ -2,8 +2,8 @@ package test.com.jd.blockchain.binaryproto; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; +import com.jd.blockchain.binaryproto.DataType; import com.jd.blockchain.utils.Bytes; -import com.jd.blockchain.utils.ValueType; import com.jd.blockchain.utils.net.NetworkAddress; /** @@ -12,37 +12,37 @@ import com.jd.blockchain.utils.net.NetworkAddress; @DataContract(code = 0x05, name = "Primitive", description = "") public interface PrimitiveDatas { - @DataField(order = 2, primitiveType = ValueType.BOOLEAN) + @DataField(order = 2, primitiveType = DataType.BOOLEAN) boolean isEnable(); - @DataField(order = 3, primitiveType = ValueType.INT8) + @DataField(order = 3, primitiveType = DataType.INT8) byte isBoy(); - @DataField(order = 4, primitiveType = ValueType.INT16) + @DataField(order = 4, primitiveType = DataType.INT16) short getAge(); - @DataField(order = -1, primitiveType = ValueType.INT32) + @DataField(order = -1, primitiveType = DataType.INT32) int getId(); - @DataField(order = 6, primitiveType = ValueType.TEXT) + @DataField(order = 6, primitiveType = DataType.TEXT) String getName(); - @DataField(order = 7, primitiveType = ValueType.INT64) + @DataField(order = 7, primitiveType = DataType.INT64) long getValue(); - @DataField(order = 12, primitiveType = ValueType.BYTES) + @DataField(order = 12, primitiveType = DataType.BYTES) byte[] getImage(); - @DataField(order = 100, primitiveType = ValueType.INT16) + @DataField(order = 100, primitiveType = DataType.INT16) char getFlag(); - @DataField(order = 200, primitiveType = ValueType.BYTES) + @DataField(order = 200, primitiveType = DataType.BYTES) Bytes getConfig(); - @DataField(order = 201, primitiveType = ValueType.BYTES) + @DataField(order = 201, primitiveType = DataType.BYTES) Bytes getSetting(); - @DataField(order = 202, primitiveType = ValueType.BYTES) + @DataField(order = 202, primitiveType = DataType.BYTES) NetworkAddress getNetworkAddr(); } diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/RefContractDatas.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/RefContractDatas.java index 4bc61955..0c3d1947 100644 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/RefContractDatas.java +++ b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/RefContractDatas.java @@ -2,7 +2,6 @@ package test.com.jd.blockchain.binaryproto; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.utils.ValueType; /** * Created by zhangshuang3 on 2018/11/29. diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/SubOperation.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/SubOperation.java index a72a6077..b6903cb0 100644 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/SubOperation.java +++ b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/SubOperation.java @@ -2,7 +2,7 @@ package test.com.jd.blockchain.binaryproto; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.utils.ValueType; +import com.jd.blockchain.binaryproto.DataType; /** * Created by zhangshuang3 on 2018/11/29. @@ -10,7 +10,7 @@ import com.jd.blockchain.utils.ValueType; @DataContract(code = 0xa, name = "SubOperation", description = "") public interface SubOperation extends Operation { - @DataField(order=1, primitiveType = ValueType.TEXT) + @DataField(order=1, primitiveType = DataType.TEXT) String getUserName(); } diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/AddressCodeDuplicate.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/AddressCodeDuplicate.java index 7e60715e..f5017950 100644 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/AddressCodeDuplicate.java +++ b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/AddressCodeDuplicate.java @@ -2,7 +2,7 @@ package test.com.jd.blockchain.binaryproto.contract; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.utils.ValueType; +import com.jd.blockchain.binaryproto.DataType; /** * Created by zhangshuang3 on 2018/7/9. @@ -10,10 +10,10 @@ import com.jd.blockchain.utils.ValueType; @DataContract(code=0x02, name="Address" , description="") public interface AddressCodeDuplicate { - @DataField(order=1, primitiveType= ValueType.TEXT) + @DataField(order=1, primitiveType= DataType.TEXT) String getStreet(); - @DataField(order=2, primitiveType=ValueType.INT32) + @DataField(order=2, primitiveType=DataType.INT32) int getNumber(); } \ No newline at end of file diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/AddressOrderDuplicate.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/AddressOrderDuplicate.java index cf23898f..afea177f 100644 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/AddressOrderDuplicate.java +++ b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/AddressOrderDuplicate.java @@ -2,7 +2,7 @@ package test.com.jd.blockchain.binaryproto.contract; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.utils.ValueType; +import com.jd.blockchain.binaryproto.DataType; /** * Created by zhangshuang3 on 2018/7/9. @@ -10,10 +10,10 @@ import com.jd.blockchain.utils.ValueType; @DataContract(code=0x03, name="Address" , description="") public interface AddressOrderDuplicate { - @DataField(order=1, primitiveType= ValueType.TEXT) + @DataField(order=1, primitiveType= DataType.TEXT) String getStreet(); - @DataField(order=1, primitiveType=ValueType.INT32) + @DataField(order=1, primitiveType=DataType.INT32) int getNumber(); } diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/Array.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/Array.java index 802cfb15..534ff67d 100644 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/Array.java +++ b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/Array.java @@ -2,7 +2,7 @@ package test.com.jd.blockchain.binaryproto.contract; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.utils.ValueType; +import com.jd.blockchain.binaryproto.DataType; /** * Created by zhangshuang3 on 2018/7/11. @@ -10,16 +10,16 @@ import com.jd.blockchain.utils.ValueType; @DataContract(code=0x08, name="Array" , description="") public interface Array { - @DataField(order=1, primitiveType= ValueType.INT32, list=true) + @DataField(order=1, primitiveType= DataType.INT32, list=true) int[] getScores(); - @DataField(order=2, primitiveType=ValueType.TEXT, list=true) + @DataField(order=2, primitiveType=DataType.TEXT, list=true) String[] getFeatures(); - @DataField(order=3, primitiveType=ValueType.BYTES) + @DataField(order=3, primitiveType=DataType.BYTES) byte[] getFamilyMemberAges(); - @DataField(order=4, primitiveType=ValueType.INT64, list=true) + @DataField(order=4, primitiveType=DataType.INT64, list=true) long[] getFamilyMemberIds(); } \ No newline at end of file diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/Level.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/Level.java index 7b74768c..6efb4935 100644 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/Level.java +++ b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/Level.java @@ -1,8 +1,8 @@ package test.com.jd.blockchain.binaryproto.contract; +import com.jd.blockchain.binaryproto.DataType; import com.jd.blockchain.binaryproto.EnumContract; import com.jd.blockchain.binaryproto.EnumField; -import com.jd.blockchain.utils.ValueType; @EnumContract(code=0x0100) public enum Level { @@ -11,7 +11,7 @@ public enum Level { V2((byte) 2); - @EnumField(type=ValueType.INT8) + @EnumField(type=DataType.INT8) public final byte CODE; public byte getCode() { return CODE; diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/PrivilegeModelSetting.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/PrivilegeModelSetting.java index 65df415b..c2102279 100644 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/PrivilegeModelSetting.java +++ b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/PrivilegeModelSetting.java @@ -2,7 +2,7 @@ package test.com.jd.blockchain.binaryproto.contract; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.utils.ValueType; +import com.jd.blockchain.binaryproto.DataType; /** * Created by zhangshuang3 on 2018/7/30. @@ -10,7 +10,7 @@ import com.jd.blockchain.utils.ValueType; @DataContract(code=0x0f, name="PrivilegeModelSetting", description ="Privilege Model setting") public interface PrivilegeModelSetting { - @DataField(order=1, primitiveType= ValueType.INT64) + @DataField(order=1, primitiveType= DataType.INT64) long getLatestVersion(); //@DataField(order=2, refContract=true) diff --git a/source/consensus/consensus-bftsmart/src/main/java/com/jd/blockchain/consensus/bftsmart/BftsmartClientIncomingSettings.java b/source/consensus/consensus-bftsmart/src/main/java/com/jd/blockchain/consensus/bftsmart/BftsmartClientIncomingSettings.java index 354180a8..6d470f1b 100644 --- a/source/consensus/consensus-bftsmart/src/main/java/com/jd/blockchain/consensus/bftsmart/BftsmartClientIncomingSettings.java +++ b/source/consensus/consensus-bftsmart/src/main/java/com/jd/blockchain/consensus/bftsmart/BftsmartClientIncomingSettings.java @@ -2,21 +2,21 @@ package com.jd.blockchain.consensus.bftsmart; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; +import com.jd.blockchain.binaryproto.DataType; import com.jd.blockchain.consensus.ClientIncomingSettings; -import com.jd.blockchain.consts.TypeCodes; +import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.crypto.PubKey; -import com.jd.blockchain.utils.ValueType; -@DataContract(code = TypeCodes.CONSENSUS_BFTSMART_CLI_INCOMING_SETTINGS) +@DataContract(code = DataCodes.CONSENSUS_BFTSMART_CLI_INCOMING_SETTINGS) public interface BftsmartClientIncomingSettings extends ClientIncomingSettings { - @DataField(order = 1, primitiveType = ValueType.BYTES) + @DataField(order = 1, primitiveType = DataType.BYTES) byte[] getTopology(); - @DataField(order = 2, primitiveType = ValueType.BYTES) + @DataField(order = 2, primitiveType = DataType.BYTES) byte[] getTomConfig(); - @DataField(order = 3, primitiveType=ValueType.BYTES) + @DataField(order = 3, primitiveType=DataType.BYTES) PubKey getPubKey(); } diff --git a/source/consensus/consensus-bftsmart/src/main/java/com/jd/blockchain/consensus/bftsmart/BftsmartCommitBlockSettings.java b/source/consensus/consensus-bftsmart/src/main/java/com/jd/blockchain/consensus/bftsmart/BftsmartCommitBlockSettings.java index e99ea811..db515fbf 100644 --- a/source/consensus/consensus-bftsmart/src/main/java/com/jd/blockchain/consensus/bftsmart/BftsmartCommitBlockSettings.java +++ b/source/consensus/consensus-bftsmart/src/main/java/com/jd/blockchain/consensus/bftsmart/BftsmartCommitBlockSettings.java @@ -2,16 +2,16 @@ package com.jd.blockchain.consensus.bftsmart; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.consts.TypeCodes; -import com.jd.blockchain.utils.ValueType; +import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.consts.DataCodes; -@DataContract(code = TypeCodes.CONSENSUS_BFTSMART_BLOCK_SETTINGS) +@DataContract(code = DataCodes.CONSENSUS_BFTSMART_BLOCK_SETTINGS) public interface BftsmartCommitBlockSettings { - @DataField(order = 0, primitiveType = ValueType.INT32) + @DataField(order = 0, primitiveType = DataType.INT32) int getTxSizePerBlock(); - @DataField(order = 1, primitiveType = ValueType.INT64) + @DataField(order = 1, primitiveType = DataType.INT64) long getMaxDelayMilliSecondsPerBlock(); } diff --git a/source/consensus/consensus-bftsmart/src/main/java/com/jd/blockchain/consensus/bftsmart/BftsmartConsensusSettings.java b/source/consensus/consensus-bftsmart/src/main/java/com/jd/blockchain/consensus/bftsmart/BftsmartConsensusSettings.java index 8b6fa451..3058b042 100644 --- a/source/consensus/consensus-bftsmart/src/main/java/com/jd/blockchain/consensus/bftsmart/BftsmartConsensusSettings.java +++ b/source/consensus/consensus-bftsmart/src/main/java/com/jd/blockchain/consensus/bftsmart/BftsmartConsensusSettings.java @@ -2,16 +2,16 @@ package com.jd.blockchain.consensus.bftsmart; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; +import com.jd.blockchain.binaryproto.DataType; import com.jd.blockchain.consensus.ConsensusSettings; -import com.jd.blockchain.consts.TypeCodes; +import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.utils.Property; -import com.jd.blockchain.utils.ValueType; import com.jd.blockchain.utils.serialize.binary.BinarySerializeUtils; -@DataContract(code = TypeCodes.CONSENSUS_BFTSMART_SETTINGS) +@DataContract(code = DataCodes.CONSENSUS_BFTSMART_SETTINGS) public interface BftsmartConsensusSettings extends ConsensusSettings { - @DataField(order = 1, primitiveType = ValueType.BYTES, list=true) + @DataField(order = 1, primitiveType = DataType.BYTES, list=true) Property[] getSystemConfigs(); @DataField(order = 2, refContract = true) diff --git a/source/consensus/consensus-bftsmart/src/main/java/com/jd/blockchain/consensus/bftsmart/BftsmartNodeSettings.java b/source/consensus/consensus-bftsmart/src/main/java/com/jd/blockchain/consensus/bftsmart/BftsmartNodeSettings.java index e1595626..9571b1f9 100644 --- a/source/consensus/consensus-bftsmart/src/main/java/com/jd/blockchain/consensus/bftsmart/BftsmartNodeSettings.java +++ b/source/consensus/consensus-bftsmart/src/main/java/com/jd/blockchain/consensus/bftsmart/BftsmartNodeSettings.java @@ -2,13 +2,13 @@ package com.jd.blockchain.consensus.bftsmart; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; +import com.jd.blockchain.binaryproto.DataType; import com.jd.blockchain.consensus.NodeSettings; -import com.jd.blockchain.consts.TypeCodes; +import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.crypto.PubKey; -import com.jd.blockchain.utils.ValueType; import com.jd.blockchain.utils.net.NetworkAddress; -@DataContract(code = TypeCodes.CONSENSUS_BFTSMART_NODE_SETTINGS) +@DataContract(code = DataCodes.CONSENSUS_BFTSMART_NODE_SETTINGS) public interface BftsmartNodeSettings extends NodeSettings { /** @@ -31,7 +31,7 @@ public interface BftsmartNodeSettings extends NodeSettings { * * @return */ - @DataField(order = 2, primitiveType = ValueType.INT32) + @DataField(order = 2, primitiveType = DataType.INT32) int getId(); /** @@ -39,7 +39,7 @@ public interface BftsmartNodeSettings extends NodeSettings { * * @return */ - @DataField(order = 3, primitiveType = ValueType.BYTES) + @DataField(order = 3, primitiveType = DataType.BYTES) NetworkAddress getNetworkAddress(); } diff --git a/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/ClientIdentification.java b/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/ClientIdentification.java index d835c09e..5ea22126 100644 --- a/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/ClientIdentification.java +++ b/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/ClientIdentification.java @@ -2,10 +2,10 @@ package com.jd.blockchain.consensus; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.consts.TypeCodes; +import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.crypto.PubKey; import com.jd.blockchain.crypto.SignatureDigest; -import com.jd.blockchain.utils.ValueType; /** * 客户端的身份证明; @@ -13,7 +13,7 @@ import com.jd.blockchain.utils.ValueType; * @author huanghaiquan * */ -@DataContract(code = TypeCodes.CLIENT_IDENTIFICATION) +@DataContract(code = DataCodes.CLIENT_IDENTIFICATION) public interface ClientIdentification { /** @@ -21,7 +21,7 @@ public interface ClientIdentification { * * @return */ - @DataField(order = 0, primitiveType = ValueType.BYTES) + @DataField(order = 0, primitiveType = DataType.BYTES) byte[] getIdentityInfo(); /** @@ -29,7 +29,7 @@ public interface ClientIdentification { * * @return */ - @DataField(order = 1, primitiveType = ValueType.BYTES) + @DataField(order = 1, primitiveType = DataType.BYTES) PubKey getPubKey(); /** @@ -37,7 +37,7 @@ public interface ClientIdentification { * * @return */ - @DataField(order = 2, primitiveType = ValueType.BYTES) + @DataField(order = 2, primitiveType = DataType.BYTES) SignatureDigest getSignature(); /** @@ -45,6 +45,6 @@ public interface ClientIdentification { * * @return */ - @DataField(order = 3, primitiveType = ValueType.TEXT) + @DataField(order = 3, primitiveType = DataType.TEXT) String getProviderName(); } diff --git a/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/ClientIdentifications.java b/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/ClientIdentifications.java index 8d23135a..7fe4aa92 100644 --- a/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/ClientIdentifications.java +++ b/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/ClientIdentifications.java @@ -10,7 +10,7 @@ package com.jd.blockchain.consensus; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.consts.TypeCodes; +import com.jd.blockchain.consts.DataCodes; /** * @@ -18,7 +18,7 @@ import com.jd.blockchain.consts.TypeCodes; * @create 2018/12/19 * @since 1.0.0 */ -@DataContract(code = TypeCodes.CLIENT_IDENTIFICATIONS) +@DataContract(code = DataCodes.CLIENT_IDENTIFICATIONS) public interface ClientIdentifications { @DataField(order = 0, list = true, refContract = true, genericContract = true) diff --git a/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/ClientIncomingSettings.java b/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/ClientIncomingSettings.java index 3585c613..17ae6917 100644 --- a/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/ClientIncomingSettings.java +++ b/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/ClientIncomingSettings.java @@ -2,8 +2,8 @@ package com.jd.blockchain.consensus; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.consts.TypeCodes; -import com.jd.blockchain.utils.ValueType; +import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.consts.DataCodes; /** * 共识网络的客户接入参数; @@ -11,7 +11,7 @@ import com.jd.blockchain.utils.ValueType; * @author huanghaiquan * */ -@DataContract(code = TypeCodes.CONSENSUS_CLI_INCOMING_SETTINGS) +@DataContract(code = DataCodes.CONSENSUS_CLI_INCOMING_SETTINGS) public interface ClientIncomingSettings { /** @@ -19,7 +19,7 @@ public interface ClientIncomingSettings { * * @return */ - @DataField(order = 0, primitiveType = ValueType.INT32) + @DataField(order = 0, primitiveType = DataType.INT32) int getClientId(); /** @@ -27,7 +27,7 @@ public interface ClientIncomingSettings { * * @return */ - @DataField(order = 1, primitiveType = ValueType.TEXT) + @DataField(order = 1, primitiveType = DataType.TEXT) String getProviderName(); /** diff --git a/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/ConsensusSettings.java b/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/ConsensusSettings.java index b7849625..b75996f5 100644 --- a/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/ConsensusSettings.java +++ b/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/ConsensusSettings.java @@ -2,7 +2,7 @@ package com.jd.blockchain.consensus; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.consts.TypeCodes; +import com.jd.blockchain.consts.DataCodes; /** * 共识网络的配置参数; @@ -10,7 +10,7 @@ import com.jd.blockchain.consts.TypeCodes; * @author huanghaiquan * */ -@DataContract(code = TypeCodes.CONSENSUS_SETTINGS) +@DataContract(code = DataCodes.CONSENSUS_SETTINGS) public interface ConsensusSettings { /** diff --git a/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/NodeSettings.java b/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/NodeSettings.java index a0c7ee66..2fd015ac 100644 --- a/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/NodeSettings.java +++ b/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/NodeSettings.java @@ -2,9 +2,9 @@ package com.jd.blockchain.consensus; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.consts.TypeCodes; +import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.crypto.PubKey; -import com.jd.blockchain.utils.ValueType; /** * 节点的配置参数; @@ -12,7 +12,7 @@ import com.jd.blockchain.utils.ValueType; * @author huanghaiquan * */ -@DataContract(code=TypeCodes.CONSENSUS_NODE_SETTINGS) +@DataContract(code=DataCodes.CONSENSUS_NODE_SETTINGS) public interface NodeSettings { /** @@ -22,7 +22,7 @@ public interface NodeSettings { * * @return */ - @DataField(order=0, primitiveType=ValueType.TEXT) + @DataField(order=0, primitiveType=DataType.TEXT) String getAddress(); /** @@ -30,6 +30,6 @@ public interface NodeSettings { * * @return */ - @DataField(order = 1, primitiveType = ValueType.BYTES) + @DataField(order = 1, primitiveType = DataType.BYTES) PubKey getPubKey(); } diff --git a/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/action/ActionRequest.java b/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/action/ActionRequest.java index 694d7326..5d6fc400 100644 --- a/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/action/ActionRequest.java +++ b/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/action/ActionRequest.java @@ -2,27 +2,27 @@ package com.jd.blockchain.consensus.action; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.consts.TypeCodes; -import com.jd.blockchain.utils.ValueType; +import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.consts.DataCodes; -@DataContract(code= TypeCodes.CONSENSUS_ACTION_REQUEST) +@DataContract(code= DataCodes.CONSENSUS_ACTION_REQUEST) public interface ActionRequest { - @DataField(order=1, list=true, primitiveType= ValueType.INT8) + @DataField(order=1, list=true, primitiveType= DataType.INT8) byte[] getGroupId(); - @DataField(order=2, primitiveType=ValueType.TEXT) + @DataField(order=2, primitiveType=DataType.TEXT) String getHandleType(); - @DataField(order=3, primitiveType=ValueType.TEXT) + @DataField(order=3, primitiveType=DataType.TEXT) String getHandleMethod(); // String getMessageType(); - @DataField(order=4, list=true, primitiveType= ValueType.INT8) + @DataField(order=4, list=true, primitiveType= DataType.INT8) byte[] getMessageBody(); - @DataField(order=5, primitiveType= ValueType.TEXT) + @DataField(order=5, primitiveType= DataType.TEXT) String getTransactionType(); // String getReponseType(); diff --git a/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/action/ActionResponse.java b/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/action/ActionResponse.java index 1ba34d01..069189ef 100644 --- a/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/action/ActionResponse.java +++ b/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/action/ActionResponse.java @@ -2,22 +2,22 @@ package com.jd.blockchain.consensus.action; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.consts.TypeCodes; -import com.jd.blockchain.utils.ValueType; +import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.consts.DataCodes; -@DataContract(code= TypeCodes.CONSENSUS_ACTION_RESPONSE) +@DataContract(code= DataCodes.CONSENSUS_ACTION_RESPONSE) public interface ActionResponse { - @DataField(order=1, list=true, primitiveType= ValueType.INT8) + @DataField(order=1, list=true, primitiveType= DataType.INT8) byte[] getMessage(); - @DataField(order=2, primitiveType=ValueType.BOOLEAN) + @DataField(order=2, primitiveType=DataType.BOOLEAN) boolean getError(); - @DataField(order=3, primitiveType=ValueType.TEXT) + @DataField(order=3, primitiveType=DataType.TEXT) String getErrorMessage(); - @DataField(order=4, primitiveType=ValueType.TEXT) + @DataField(order=4, primitiveType=DataType.TEXT) String getErrorType(); } \ No newline at end of file diff --git a/source/consensus/consensus-mq/src/main/java/com/jd/blockchain/consensus/mq/settings/MsgQueueBlockSettings.java b/source/consensus/consensus-mq/src/main/java/com/jd/blockchain/consensus/mq/settings/MsgQueueBlockSettings.java index e2edaa7b..c2ed1749 100644 --- a/source/consensus/consensus-mq/src/main/java/com/jd/blockchain/consensus/mq/settings/MsgQueueBlockSettings.java +++ b/source/consensus/consensus-mq/src/main/java/com/jd/blockchain/consensus/mq/settings/MsgQueueBlockSettings.java @@ -10,8 +10,8 @@ package com.jd.blockchain.consensus.mq.settings; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.consts.TypeCodes; -import com.jd.blockchain.utils.ValueType; +import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.consts.DataCodes; /** * @@ -19,12 +19,12 @@ import com.jd.blockchain.utils.ValueType; * @create 2018/12/13 * @since 1.0.0 */ -@DataContract(code = TypeCodes.CONSENSUS_MSGQUEUE_BLOCK_SETTINGS) +@DataContract(code = DataCodes.CONSENSUS_MSGQUEUE_BLOCK_SETTINGS) public interface MsgQueueBlockSettings { - @DataField(order = 0, primitiveType = ValueType.INT32) + @DataField(order = 0, primitiveType = DataType.INT32) int getTxSizePerBlock(); - @DataField(order = 1, primitiveType = ValueType.INT64) + @DataField(order = 1, primitiveType = DataType.INT64) long getMaxDelayMilliSecondsPerBlock(); } \ No newline at end of file diff --git a/source/consensus/consensus-mq/src/main/java/com/jd/blockchain/consensus/mq/settings/MsgQueueClientIncomingSettings.java b/source/consensus/consensus-mq/src/main/java/com/jd/blockchain/consensus/mq/settings/MsgQueueClientIncomingSettings.java index e0cb03d1..12a30820 100644 --- a/source/consensus/consensus-mq/src/main/java/com/jd/blockchain/consensus/mq/settings/MsgQueueClientIncomingSettings.java +++ b/source/consensus/consensus-mq/src/main/java/com/jd/blockchain/consensus/mq/settings/MsgQueueClientIncomingSettings.java @@ -10,11 +10,11 @@ package com.jd.blockchain.consensus.mq.settings; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; +import com.jd.blockchain.binaryproto.DataType; import com.jd.blockchain.consensus.ClientIncomingSettings; import com.jd.blockchain.consensus.ConsensusSettings; -import com.jd.blockchain.consts.TypeCodes; +import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.crypto.PubKey; -import com.jd.blockchain.utils.ValueType; /** * @@ -22,9 +22,9 @@ import com.jd.blockchain.utils.ValueType; * @create 2018/12/13 * @since 1.0.0 */ -@DataContract(code = TypeCodes.CONSENSUS_MSGQUEUE_CLI_INCOMING_SETTINGS) +@DataContract(code = DataCodes.CONSENSUS_MSGQUEUE_CLI_INCOMING_SETTINGS) public interface MsgQueueClientIncomingSettings extends ClientIncomingSettings { - @DataField(order = 1, primitiveType=ValueType.BYTES) + @DataField(order = 1, primitiveType=DataType.BYTES) PubKey getPubKey(); } \ No newline at end of file diff --git a/source/consensus/consensus-mq/src/main/java/com/jd/blockchain/consensus/mq/settings/MsgQueueConsensusSettings.java b/source/consensus/consensus-mq/src/main/java/com/jd/blockchain/consensus/mq/settings/MsgQueueConsensusSettings.java index d4e9e648..a3359084 100644 --- a/source/consensus/consensus-mq/src/main/java/com/jd/blockchain/consensus/mq/settings/MsgQueueConsensusSettings.java +++ b/source/consensus/consensus-mq/src/main/java/com/jd/blockchain/consensus/mq/settings/MsgQueueConsensusSettings.java @@ -10,11 +10,11 @@ package com.jd.blockchain.consensus.mq.settings; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; +import com.jd.blockchain.binaryproto.DataType; import com.jd.blockchain.consensus.ConsensusSettings; import com.jd.blockchain.consensus.mq.config.MsgQueueBlockConfig; -import com.jd.blockchain.consts.TypeCodes; +import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.utils.Property; -import com.jd.blockchain.utils.ValueType; /** * @@ -22,7 +22,7 @@ import com.jd.blockchain.utils.ValueType; * @create 2018/12/13 * @since 1.0.0 */ -@DataContract(code = TypeCodes.CONSENSUS_MSGQUEUE_SETTINGS) +@DataContract(code = DataCodes.CONSENSUS_MSGQUEUE_SETTINGS) public interface MsgQueueConsensusSettings extends ConsensusSettings { @DataField(order = 0, refContract = true) diff --git a/source/consensus/consensus-mq/src/main/java/com/jd/blockchain/consensus/mq/settings/MsgQueueNetworkSettings.java b/source/consensus/consensus-mq/src/main/java/com/jd/blockchain/consensus/mq/settings/MsgQueueNetworkSettings.java index fea1690e..fce789cf 100644 --- a/source/consensus/consensus-mq/src/main/java/com/jd/blockchain/consensus/mq/settings/MsgQueueNetworkSettings.java +++ b/source/consensus/consensus-mq/src/main/java/com/jd/blockchain/consensus/mq/settings/MsgQueueNetworkSettings.java @@ -10,8 +10,8 @@ package com.jd.blockchain.consensus.mq.settings; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.consts.TypeCodes; -import com.jd.blockchain.utils.ValueType; +import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.consts.DataCodes; /** * @@ -19,18 +19,18 @@ import com.jd.blockchain.utils.ValueType; * @create 2018/12/12 * @since 1.0.0 */ -@DataContract(code = TypeCodes.CONSENSUS_MSGQUEUE_NETWORK_SETTINGS) +@DataContract(code = DataCodes.CONSENSUS_MSGQUEUE_NETWORK_SETTINGS) public interface MsgQueueNetworkSettings { - @DataField(order = 0, primitiveType = ValueType.TEXT) + @DataField(order = 0, primitiveType = DataType.TEXT) String getServer(); - @DataField(order = 1, primitiveType = ValueType.TEXT) + @DataField(order = 1, primitiveType = DataType.TEXT) String getTxTopic(); - @DataField(order = 2, primitiveType = ValueType.TEXT) + @DataField(order = 2, primitiveType = DataType.TEXT) String getBlTopic(); - @DataField(order = 3, primitiveType = ValueType.TEXT) + @DataField(order = 3, primitiveType = DataType.TEXT) String getMsgTopic(); } \ No newline at end of file diff --git a/source/consensus/consensus-mq/src/main/java/com/jd/blockchain/consensus/mq/settings/MsgQueueNodeSettings.java b/source/consensus/consensus-mq/src/main/java/com/jd/blockchain/consensus/mq/settings/MsgQueueNodeSettings.java index acfeb22b..9bd2a159 100644 --- a/source/consensus/consensus-mq/src/main/java/com/jd/blockchain/consensus/mq/settings/MsgQueueNodeSettings.java +++ b/source/consensus/consensus-mq/src/main/java/com/jd/blockchain/consensus/mq/settings/MsgQueueNodeSettings.java @@ -10,7 +10,7 @@ package com.jd.blockchain.consensus.mq.settings; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.consensus.NodeSettings; -import com.jd.blockchain.consts.TypeCodes; +import com.jd.blockchain.consts.DataCodes; /** * @@ -19,7 +19,7 @@ import com.jd.blockchain.consts.TypeCodes; * @since 1.0.0 */ -@DataContract(code=TypeCodes.CONSENSUS_MSGQUEUE_NODE_SETTINGS) +@DataContract(code=DataCodes.CONSENSUS_MSGQUEUE_NODE_SETTINGS) public interface MsgQueueNodeSettings extends NodeSettings { } \ No newline at end of file diff --git a/source/crypto/crypto-framework/src/main/java/com/jd/blockchain/crypto/CryptoAlgorithm.java b/source/crypto/crypto-framework/src/main/java/com/jd/blockchain/crypto/CryptoAlgorithm.java index 19688f65..5f9922bd 100644 --- a/source/crypto/crypto-framework/src/main/java/com/jd/blockchain/crypto/CryptoAlgorithm.java +++ b/source/crypto/crypto-framework/src/main/java/com/jd/blockchain/crypto/CryptoAlgorithm.java @@ -5,11 +5,11 @@ import java.io.OutputStream; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.consts.TypeCodes; -import com.jd.blockchain.utils.ValueType; +import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.utils.io.BytesUtils; -@DataContract(code = TypeCodes.CRYPTO_ALGORITHM) +@DataContract(code = DataCodes.CRYPTO_ALGORITHM) public interface CryptoAlgorithm { /** @@ -63,7 +63,7 @@ public interface CryptoAlgorithm { * {@link #EXT_ALGORITHM}) 5 种); 接下来4位标识密钥类型(包括:{@link #SYMMETRIC_KEY}, * {@link #ASYMMETRIC_KEY}); 最后8位是算法唯一ID; */ - @DataField(primitiveType = ValueType.INT16, order = 0) + @DataField(primitiveType = DataType.INT16, order = 0) short code(); /** diff --git a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/DataAccount.java b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/DataAccount.java index dfe09bae..234d5fef 100644 --- a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/DataAccount.java +++ b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/DataAccount.java @@ -1,6 +1,7 @@ package com.jd.blockchain.ledger.core; import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.DataType; import com.jd.blockchain.crypto.HashDigest; import com.jd.blockchain.crypto.PubKey; import com.jd.blockchain.ledger.AccountHeader; @@ -8,7 +9,6 @@ import com.jd.blockchain.ledger.BytesValue; import com.jd.blockchain.ledger.KVDataEntry; import com.jd.blockchain.ledger.KVDataObject; import com.jd.blockchain.utils.Bytes; -import com.jd.blockchain.utils.ValueType; import com.jd.blockchain.utils.serialize.binary.BinarySerializeUtils; public class DataAccount implements AccountHeader, MerkleProvable { @@ -142,7 +142,7 @@ public class DataAccount implements AccountHeader, MerkleProvable { key = baseAccount.dataset.getKeyAtIndex(fromIndex); ver = baseAccount.dataset.getVersion(key); BytesValue decodeData = BinaryEncodingUtils.decode(value); - kvDataEntries[i] = new KVDataObject(key, ver, ValueType.valueOf(decodeData.getType().CODE), decodeData.getValue().toBytes()); + kvDataEntries[i] = new KVDataObject(key, ver, DataType.valueOf(decodeData.getType().CODE), decodeData.getValue().toBytes()); fromIndex++; } diff --git a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/LedgerInitDecision.java b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/LedgerInitDecision.java index ac1387b0..48fdef1e 100644 --- a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/LedgerInitDecision.java +++ b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/LedgerInitDecision.java @@ -2,10 +2,10 @@ package com.jd.blockchain.ledger.core; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.consts.TypeCodes; +import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.crypto.HashDigest; import com.jd.blockchain.crypto.SignatureDigest; -import com.jd.blockchain.utils.ValueType; /** * 账本初始化决定; @@ -13,7 +13,7 @@ import com.jd.blockchain.utils.ValueType; * @author huanghaiquan * */ -@DataContract(code = TypeCodes.METADATA_INIT_DECISION) +@DataContract(code = DataCodes.METADATA_INIT_DECISION) public interface LedgerInitDecision { /** @@ -21,14 +21,14 @@ public interface LedgerInitDecision { * * @return */ - @DataField(order=1, primitiveType=ValueType.INT32) + @DataField(order=1, primitiveType=DataType.INT32) int getParticipantId(); /** * 新建账本的哈希; * @return */ - @DataField(order=2, primitiveType = ValueType.BYTES) + @DataField(order=2, primitiveType = DataType.BYTES) HashDigest getLedgerHash(); /** @@ -40,7 +40,7 @@ public interface LedgerInitDecision { * * @return */ - @DataField(order=3, primitiveType = ValueType.BYTES) + @DataField(order=3, primitiveType = DataType.BYTES) SignatureDigest getSignature(); } diff --git a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/LedgerInitPermission.java b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/LedgerInitPermission.java index 7c2297ae..690c763a 100644 --- a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/LedgerInitPermission.java +++ b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/LedgerInitPermission.java @@ -2,10 +2,10 @@ package com.jd.blockchain.ledger.core; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.consts.TypeCodes; +import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.crypto.SignatureDigest; import com.jd.blockchain.ledger.LedgerInitOperation; -import com.jd.blockchain.utils.ValueType; /** * 账本初始化许可; @@ -13,7 +13,7 @@ import com.jd.blockchain.utils.ValueType; * @author huanghaiquan * */ -@DataContract(code = TypeCodes.METADATA_INIT_PERMISSION) +@DataContract(code = DataCodes.METADATA_INIT_PERMISSION) public interface LedgerInitPermission { /** @@ -21,7 +21,7 @@ public interface LedgerInitPermission { * * @return */ - @DataField(order = 1, primitiveType = ValueType.INT32) + @DataField(order = 1, primitiveType = DataType.INT32) int getParticipantId(); /** @@ -39,7 +39,7 @@ public interface LedgerInitPermission { * * @return */ - @DataField(order = 2, primitiveType = ValueType.BYTES) + @DataField(order = 2, primitiveType = DataType.BYTES) SignatureDigest getTransactionSignature(); } diff --git a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/LedgerMetadata.java b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/LedgerMetadata.java index c0536716..5324ad5b 100644 --- a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/LedgerMetadata.java +++ b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/LedgerMetadata.java @@ -2,11 +2,11 @@ package com.jd.blockchain.ledger.core; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.consts.TypeCodes; +import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.crypto.HashDigest; -import com.jd.blockchain.utils.ValueType; -@DataContract(code = TypeCodes.METADATA) +@DataContract(code = DataCodes.METADATA) public interface LedgerMetadata { /** @@ -14,7 +14,7 @@ public interface LedgerMetadata { * * @return */ - @DataField(order = 1, primitiveType = ValueType.BYTES) + @DataField(order = 1, primitiveType = DataType.BYTES) byte[] getSeed(); /** @@ -22,7 +22,7 @@ public interface LedgerMetadata { * * @return */ - @DataField(order = 2, primitiveType = ValueType.BYTES) + @DataField(order = 2, primitiveType = DataType.BYTES) HashDigest getParticipantsHash(); /** diff --git a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/LedgerSetting.java b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/LedgerSetting.java index eba16465..914c6cf3 100644 --- a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/LedgerSetting.java +++ b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/LedgerSetting.java @@ -2,18 +2,18 @@ package com.jd.blockchain.ledger.core; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.consts.TypeCodes; +import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.ledger.CryptoSetting; import com.jd.blockchain.utils.Bytes; -import com.jd.blockchain.utils.ValueType; -@DataContract(code = TypeCodes.METADATA_LEDGER_SETTING) +@DataContract(code = DataCodes.METADATA_LEDGER_SETTING) public interface LedgerSetting { - @DataField(order=0, primitiveType=ValueType.TEXT) + @DataField(order=0, primitiveType=DataType.TEXT) String getConsensusProvider(); - @DataField(order=1, primitiveType=ValueType.BYTES) + @DataField(order=1, primitiveType=DataType.BYTES) Bytes getConsensusSetting(); @DataField(order=2, refContract=true) diff --git a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/LedgerQueryService.java b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/LedgerQueryService.java index 27eeefd0..d01f5089 100644 --- a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/LedgerQueryService.java +++ b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/LedgerQueryService.java @@ -1,6 +1,7 @@ package com.jd.blockchain.ledger.core.impl; import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.DataType; import com.jd.blockchain.crypto.HashDigest; import com.jd.blockchain.ledger.AccountHeader; import com.jd.blockchain.ledger.BytesValue; @@ -23,7 +24,6 @@ import com.jd.blockchain.ledger.core.UserAccountSet; import com.jd.blockchain.transaction.BlockchainQueryService; import com.jd.blockchain.utils.Bytes; import com.jd.blockchain.utils.QueryUtil; -import com.jd.blockchain.utils.ValueType; public class LedgerQueryService implements BlockchainQueryService { @@ -271,11 +271,11 @@ public class LedgerQueryService implements BlockchainQueryService { for (int i = 0; i < entries.length; i++) { ver = dataAccount.getDataVersion(Bytes.fromString(keys[i])); if (ver < 0) { - entries[i] = new KVDataObject(keys[i], -1, ValueType.NIL, null); + entries[i] = new KVDataObject(keys[i], -1, DataType.NIL, null); }else { byte[] value = dataAccount.getBytes(Bytes.fromString(keys[i]), ver); BytesValue decodeData = BinaryEncodingUtils.decode(value); - entries[i] = new KVDataObject(keys[i], ver, ValueType.valueOf(decodeData.getType().CODE), decodeData.getValue().toBytes()); + entries[i] = new KVDataObject(keys[i], ver, DataType.valueOf(decodeData.getType().CODE), decodeData.getValue().toBytes()); } } diff --git a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/handles/ContractLedgerContext.java b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/handles/ContractLedgerContext.java index acd13e99..f8615e16 100644 --- a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/handles/ContractLedgerContext.java +++ b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/handles/ContractLedgerContext.java @@ -12,7 +12,7 @@ import com.jd.blockchain.ledger.BytesValue; import com.jd.blockchain.ledger.BytesValueImpl; import com.jd.blockchain.ledger.DataAccountKVSetOperation; import com.jd.blockchain.ledger.DataAccountRegisterOperation; -import com.jd.blockchain.ledger.DataType; +import com.jd.blockchain.ledger.BytesValueType; import com.jd.blockchain.ledger.KVDataEntry; import com.jd.blockchain.ledger.LedgerBlock; import com.jd.blockchain.ledger.LedgerInfo; @@ -273,7 +273,7 @@ public class ContractLedgerContext implements LedgerContext { @Override public DataAccountKVSetOperationBuilder set(String key, byte[] value, long expVersion) { - BytesValue bytesValue = new BytesValueImpl(DataType.BYTES, value); + BytesValue bytesValue = new BytesValueImpl(BytesValueType.BYTES, value); this.op = new SingleKVSetOpTemplate(key, bytesValue, expVersion); generatedOpList.add(op); opHandleContext.handle(op); @@ -283,10 +283,10 @@ public class ContractLedgerContext implements LedgerContext { public DataAccountKVSetOperationBuilder set(String key, String value, long expVersion) { BytesValue bytesValue; if (isJson(value)) { - bytesValue = new BytesValueImpl(DataType.JSON, value.getBytes()); + bytesValue = new BytesValueImpl(BytesValueType.JSON, value.getBytes()); } else { - bytesValue = new BytesValueImpl(DataType.TEXT, value.getBytes()); + bytesValue = new BytesValueImpl(BytesValueType.TEXT, value.getBytes()); } this.op = new SingleKVSetOpTemplate(key, bytesValue, expVersion); generatedOpList.add(op); @@ -295,7 +295,7 @@ public class ContractLedgerContext implements LedgerContext { } @Override public DataAccountKVSetOperationBuilder set(String key, Bytes value, long expVersion) { - BytesValue bytesValue = new BytesValueImpl(DataType.BYTES, value.toBytes()); + BytesValue bytesValue = new BytesValueImpl(BytesValueType.BYTES, value.toBytes()); this.op = new SingleKVSetOpTemplate(key, bytesValue, expVersion); generatedOpList.add(op); opHandleContext.handle(op); @@ -303,7 +303,7 @@ public class ContractLedgerContext implements LedgerContext { } @Override public DataAccountKVSetOperationBuilder set(String key, long value, long expVersion) { - BytesValue bytesValue = new BytesValueImpl(DataType.INT64, BytesUtils.toBytes(value)); + BytesValue bytesValue = new BytesValueImpl(BytesValueType.INT64, BytesUtils.toBytes(value)); this.op = new SingleKVSetOpTemplate(key, bytesValue, expVersion); generatedOpList.add(op); opHandleContext.handle(op); diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/AccountHeader.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/AccountHeader.java index 4252446f..15dbcb1b 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/AccountHeader.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/AccountHeader.java @@ -2,22 +2,22 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.consts.TypeCodes; +import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.crypto.HashDigest; import com.jd.blockchain.crypto.PubKey; import com.jd.blockchain.utils.Bytes; -import com.jd.blockchain.utils.ValueType; -@DataContract(code= TypeCodes.ACCOUNT_HEADER) +@DataContract(code= DataCodes.ACCOUNT_HEADER) public interface AccountHeader { - @DataField(order=1, primitiveType = ValueType.BYTES) + @DataField(order=1, primitiveType = DataType.BYTES) Bytes getAddress(); - @DataField(order=2, primitiveType = ValueType.BYTES) + @DataField(order=2, primitiveType = DataType.BYTES) PubKey getPubKey(); - @DataField(order=3, primitiveType = ValueType.BYTES) + @DataField(order=3, primitiveType = DataType.BYTES) HashDigest getRootHash(); } diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BlockBody.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BlockBody.java index 7ab8411d..baca7f6f 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BlockBody.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BlockBody.java @@ -2,22 +2,22 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.consts.TypeCodes; +import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.crypto.HashDigest; -import com.jd.blockchain.utils.ValueType; -@DataContract(code= TypeCodes.BLOCK_BODY) +@DataContract(code= DataCodes.BLOCK_BODY) public interface BlockBody extends LedgerDataSnapshot{ - @DataField(order=2, primitiveType = ValueType.BYTES) + @DataField(order=2, primitiveType = DataType.BYTES) HashDigest getPreviousHash(); - @DataField(order=3, primitiveType = ValueType.BYTES) + @DataField(order=3, primitiveType = DataType.BYTES) HashDigest getLedgerHash(); - @DataField(order=4, primitiveType= ValueType.INT64) + @DataField(order=4, primitiveType= DataType.INT64) long getHeight(); - @DataField(order=5, primitiveType = ValueType.BYTES) + @DataField(order=5, primitiveType = DataType.BYTES) HashDigest getTransactionSetHash(); } diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BlockchainIdentity.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BlockchainIdentity.java index ea061bcf..cab5b4f5 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BlockchainIdentity.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BlockchainIdentity.java @@ -2,18 +2,18 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.consts.TypeCodes; +import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.crypto.PubKey; import com.jd.blockchain.utils.Bytes; -import com.jd.blockchain.utils.ValueType; -@DataContract(code= TypeCodes.BLOCK_CHAIN_IDENTITY) +@DataContract(code= DataCodes.BLOCK_CHAIN_IDENTITY) public interface BlockchainIdentity { - @DataField(order = 1, primitiveType = ValueType.BYTES) + @DataField(order = 1, primitiveType = DataType.BYTES) Bytes getAddress(); - @DataField(order = 2, primitiveType=ValueType.BYTES) + @DataField(order = 2, primitiveType=DataType.BYTES) PubKey getPubKey(); } \ No newline at end of file diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BytesValue.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BytesValue.java index d54b29b0..f9a18ea9 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BytesValue.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BytesValue.java @@ -2,11 +2,11 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.consts.TypeCodes; -import com.jd.blockchain.utils.ValueType; +import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.utils.io.BytesSlice; -@DataContract(code = TypeCodes.BYTES_VALUE) +@DataContract(code = DataCodes.BYTES_VALUE) public interface BytesValue { /** @@ -15,14 +15,14 @@ public interface BytesValue { * @return */ @DataField(order = 0, refEnum = true) - DataType getType(); + BytesValueType getType(); /** * 数据值的二进制序列; * * @return */ - @DataField(order = 1, primitiveType = ValueType.BYTES) + @DataField(order = 1, primitiveType = DataType.BYTES) BytesSlice getValue(); } diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BytesValueImpl.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BytesValueImpl.java index 99278adb..80f2e8bc 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BytesValueImpl.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BytesValueImpl.java @@ -6,20 +6,20 @@ import com.jd.blockchain.utils.io.BytesSlice; * Created by zhangshuang3 on 2018/12/3. */ public class BytesValueImpl implements BytesValue{ - DataType type; + BytesValueType type; BytesSlice slice; - public BytesValueImpl(DataType type, byte[] bytes) { + public BytesValueImpl(BytesValueType type, byte[] bytes) { this.type = type; this.slice = new BytesSlice(bytes); } @Override - public DataType getType() { + public BytesValueType getType() { return this.type; } - public void setType(DataType type) { + public void setType(BytesValueType type) { this.type = type; } diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/DataType.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BytesValueType.java similarity index 57% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/DataType.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BytesValueType.java index 278937d0..02ecdf55 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/DataType.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BytesValueType.java @@ -1,9 +1,9 @@ package com.jd.blockchain.ledger; +import com.jd.blockchain.binaryproto.DataType; import com.jd.blockchain.binaryproto.EnumContract; import com.jd.blockchain.binaryproto.EnumField; -import com.jd.blockchain.consts.TypeCodes; -import com.jd.blockchain.utils.ValueType; +import com.jd.blockchain.consts.DataCodes; /** * 键值操作的数据类型; @@ -11,13 +11,13 @@ import com.jd.blockchain.utils.ValueType; * @author huanghaiquan * */ -@EnumContract(code= TypeCodes.ENUM_TYPE_DATA_TYPE, name = "DataType", decription = "") -public enum DataType { +@EnumContract(code = DataCodes.ENUM_TYPE_DATA_TYPE, name = "DataType", decription = "") +public enum BytesValueType { /** * 空; */ - NIL((byte) 0x00), + NIL(DataType.NIL.CODE), /** * 布尔型; @@ -81,28 +81,28 @@ public enum DataType { */ LOCATION((byte) 0x44); -// /** -// * 引用;
-// * -// * 表示引用区块链系统中的某一个特定的对象,用以下形式的 URI 表示; -// * -// * state://ledger/account/key/version
-// * 或
-// * proof:state://account_merkle_path/key_merkle_path -// * -// * proof:tx:// -// * -// */ -// REFERENCE((byte) 0x80); - @EnumField(type= ValueType.INT8) + // /** + // * 引用;
+ // * + // * 表示引用区块链系统中的某一个特定的对象,用以下形式的 URI 表示; + // * + // * state://ledger/account/key/version
+ // * 或
+ // * proof:state://account_merkle_path/key_merkle_path + // * + // * proof:tx:// + // * + // */ + // REFERENCE((byte) 0x80); + @EnumField(type = DataType.INT8) public final byte CODE; - private DataType(byte code) { + private BytesValueType(byte code) { this.CODE = code; } - public static DataType valueOf(byte code) { - for (DataType dataType : DataType.values()) { + public static BytesValueType valueOf(byte code) { + for (BytesValueType dataType : BytesValueType.values()) { if (dataType.CODE == code) { return dataType; } diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/ContractCodeDeployOperation.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/ContractCodeDeployOperation.java index 7d82a7c8..1e8d8ec9 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/ContractCodeDeployOperation.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/ContractCodeDeployOperation.java @@ -2,16 +2,16 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.consts.TypeCodes; -import com.jd.blockchain.utils.ValueType; +import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.consts.DataCodes; -@DataContract(code= TypeCodes.TX_OP_CONTRACT_DEPLOY) +@DataContract(code= DataCodes.TX_OP_CONTRACT_DEPLOY) public interface ContractCodeDeployOperation extends Operation { @DataField(order=2, refContract = true) BlockchainIdentity getContractID(); - @DataField(order=3, primitiveType=ValueType.BYTES) + @DataField(order=3, primitiveType=DataType.BYTES) byte[] getChainCode(); diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/ContractEventSendOperation.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/ContractEventSendOperation.java index 301dda65..04c1ca80 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/ContractEventSendOperation.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/ContractEventSendOperation.java @@ -2,25 +2,25 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.consts.TypeCodes; +import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.utils.Bytes; -import com.jd.blockchain.utils.ValueType; /** * @author huanghaiquan * */ -@DataContract(code= TypeCodes.TX_OP_CONTRACT_EVENT_SEND) +@DataContract(code= DataCodes.TX_OP_CONTRACT_EVENT_SEND) public interface ContractEventSendOperation extends Operation { - @DataField(order=2, primitiveType=ValueType.BYTES) + @DataField(order=2, primitiveType=DataType.BYTES) Bytes getContractAddress(); - @DataField(order=3, primitiveType=ValueType.TEXT) + @DataField(order=3, primitiveType=DataType.TEXT) String getEvent(); - @DataField(order=4, primitiveType=ValueType.BYTES) + @DataField(order=4, primitiveType=DataType.BYTES) byte[] getArgs(); } diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/CryptoSetting.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/CryptoSetting.java index 71c25416..4b79154e 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/CryptoSetting.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/CryptoSetting.java @@ -2,8 +2,8 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.consts.TypeCodes; -import com.jd.blockchain.utils.ValueType; +import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.consts.DataCodes; /** * 默克尔树算法相关的配置; @@ -11,7 +11,7 @@ import com.jd.blockchain.utils.ValueType; * @author huanghaiquan * */ -@DataContract(code = TypeCodes.METADATA_CRYPTO_SETTING) +@DataContract(code = DataCodes.METADATA_CRYPTO_SETTING) public interface CryptoSetting { /** @@ -23,7 +23,7 @@ public interface CryptoSetting { * * @return */ - @DataField(order = 1, primitiveType = ValueType.INT16) + @DataField(order = 1, primitiveType = DataType.INT16) public short getHashAlgorithm(); /** @@ -35,7 +35,7 @@ public interface CryptoSetting { * * @return */ - @DataField(order = 2, primitiveType = ValueType.BOOLEAN) + @DataField(order = 2, primitiveType = DataType.BOOLEAN) public boolean getAutoVerifyHash(); } diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/DataAccountKVSetOperation.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/DataAccountKVSetOperation.java index a892aba9..bbe3c1ad 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/DataAccountKVSetOperation.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/DataAccountKVSetOperation.java @@ -2,30 +2,30 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.consts.TypeCodes; +import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.utils.Bytes; -import com.jd.blockchain.utils.ValueType; -@DataContract(code= TypeCodes.TX_OP_DATA_ACC_SET) +@DataContract(code= DataCodes.TX_OP_DATA_ACC_SET) public interface DataAccountKVSetOperation extends Operation{ - @DataField(order=2, primitiveType=ValueType.BYTES) + @DataField(order=2, primitiveType=DataType.BYTES) Bytes getAccountAddress(); @DataField(order=3, list=true, refContract=true) KVWriteEntry[] getWriteSet(); - @DataContract(code=TypeCodes.TX_OP_DATA_ACC_SET_KV) + @DataContract(code=DataCodes.TX_OP_DATA_ACC_SET_KV) public static interface KVWriteEntry{ - @DataField(order=1, primitiveType=ValueType.TEXT) + @DataField(order=1, primitiveType=DataType.TEXT) String getKey(); @DataField(order=2, refContract = true) BytesValue getValue(); - @DataField(order=3, primitiveType=ValueType.INT64) + @DataField(order=3, primitiveType=DataType.INT64) long getExpectedVersion(); } diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/DataAccountRegisterOperation.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/DataAccountRegisterOperation.java index c938d352..f75621f7 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/DataAccountRegisterOperation.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/DataAccountRegisterOperation.java @@ -2,9 +2,9 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.consts.TypeCodes; +import com.jd.blockchain.consts.DataCodes; -@DataContract(code= TypeCodes.TX_OP_DATA_ACC_REG) +@DataContract(code= DataCodes.TX_OP_DATA_ACC_REG) public interface DataAccountRegisterOperation extends Operation { @DataField(order=1, refContract = true) diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/DigitalSignature.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/DigitalSignature.java index 1a4ce413..f5acef07 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/DigitalSignature.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/DigitalSignature.java @@ -1,7 +1,7 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; -import com.jd.blockchain.consts.TypeCodes; +import com.jd.blockchain.consts.DataCodes; /** * 数字签名; @@ -9,7 +9,7 @@ import com.jd.blockchain.consts.TypeCodes; * @author huanghaiquan * */ -@DataContract(code= TypeCodes.DIGITALSIGNATURE) +@DataContract(code= DataCodes.DIGITALSIGNATURE) public interface DigitalSignature extends DigitalSignatureBody { } diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/DigitalSignatureBody.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/DigitalSignatureBody.java index 276f4ba9..3cfb8164 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/DigitalSignatureBody.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/DigitalSignatureBody.java @@ -2,10 +2,10 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.consts.TypeCodes; +import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.crypto.PubKey; import com.jd.blockchain.crypto.SignatureDigest; -import com.jd.blockchain.utils.ValueType; /** * 数字签名; @@ -13,7 +13,7 @@ import com.jd.blockchain.utils.ValueType; * @author huanghaiquan * */ -@DataContract(code= TypeCodes.DIGITALSIGNATURE_BODY) +@DataContract(code= DataCodes.DIGITALSIGNATURE_BODY) public interface DigitalSignatureBody { /** @@ -23,7 +23,7 @@ public interface DigitalSignatureBody { * * @return */ - @DataField(order=1, primitiveType = ValueType.BYTES) + @DataField(order=1, primitiveType = DataType.BYTES) PubKey getPubKey(); /** @@ -31,7 +31,7 @@ public interface DigitalSignatureBody { * * @return */ - @DataField(order=2, primitiveType = ValueType.BYTES ) + @DataField(order=2, primitiveType = DataType.BYTES ) SignatureDigest getDigest(); } diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/EndpointRequest.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/EndpointRequest.java index 2c0acba0..e5c6219a 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/EndpointRequest.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/EndpointRequest.java @@ -2,14 +2,14 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.consts.TypeCodes; +import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.crypto.HashDigest; -import com.jd.blockchain.utils.ValueType; -@DataContract(code= TypeCodes.REQUEST_ENDPOINT) +@DataContract(code= DataCodes.REQUEST_ENDPOINT) public interface EndpointRequest { - @DataField(order=1, primitiveType = ValueType.BYTES) + @DataField(order=1, primitiveType = DataType.BYTES) HashDigest getHash(); /** * 交易内容; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/HashObject.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/HashObject.java index 293c9394..ccba57aa 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/HashObject.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/HashObject.java @@ -1,7 +1,7 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; -import com.jd.blockchain.consts.TypeCodes; +import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.crypto.HashDigest; /** @@ -10,7 +10,7 @@ import com.jd.blockchain.crypto.HashDigest; * @author huanghaiquan * */ -@DataContract(code= TypeCodes.HASH_OBJECT) +@DataContract(code= DataCodes.HASH_OBJECT) public interface HashObject { /** diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/KVDataEntry.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/KVDataEntry.java index f4875b9c..97f910d8 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/KVDataEntry.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/KVDataEntry.java @@ -1,6 +1,6 @@ package com.jd.blockchain.ledger; -import com.jd.blockchain.utils.ValueType; +import com.jd.blockchain.binaryproto.DataType; public interface KVDataEntry { @@ -27,7 +27,7 @@ public interface KVDataEntry { * * @return */ - ValueType getType(); + DataType getType(); /** * 值; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/KVDataObject.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/KVDataObject.java index b3e1157a..e575f71a 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/KVDataObject.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/KVDataObject.java @@ -5,7 +5,7 @@ import java.io.UnsupportedEncodingException; import java.math.BigInteger; import java.util.Date; -import com.jd.blockchain.utils.ValueType; +import com.jd.blockchain.binaryproto.DataType; import com.jd.blockchain.utils.io.ByteArray; import com.jd.blockchain.utils.io.BytesUtils; @@ -25,11 +25,11 @@ public class KVDataObject implements KVDataEntry { private long version; - private ValueType type; + private DataType type; private byte[] bytesValue; - public KVDataObject(String key, long version, ValueType type, byte[] bytesValue) { + public KVDataObject(String key, long version, DataType type, byte[] bytesValue) { this.key = key; this.type = type; this.version = version < 0 ? -1 : version; @@ -62,7 +62,7 @@ public class KVDataObject implements KVDataEntry { * @see com.jd.blockchain.ledger.KVDataEntry#getType() */ @Override - public ValueType getType() { + public DataType getType() { return type; } @@ -97,13 +97,13 @@ public class KVDataObject implements KVDataEntry { * 是否为空值; *

* - * 仅当数据类型 {@link #getType()} 为 {@link ValueType#NIL} 时返回 true,其它情况返回 false; + * 仅当数据类型 {@link #getType()} 为 {@link DataType#NIL} 时返回 true,其它情况返回 false; *

* * @return */ public boolean isNil() { - return ValueType.NIL == type; + return DataType.NIL == type; } /** @@ -119,7 +119,7 @@ public class KVDataObject implements KVDataEntry { * 返回 8 位整数值; *

* - * 仅当数据类型 {@link #getType()} 为 {@link ValueType#INT8} 有效; + * 仅当数据类型 {@link #getType()} 为 {@link DataType#INT8} 有效; *

* * 无效类型将引发 {@link IllegalStateException} 异常; @@ -127,17 +127,17 @@ public class KVDataObject implements KVDataEntry { * @return */ public byte tinyValue() { - if (ValueType.INT8 == type) { + if (DataType.INT8 == type) { return bytesValue[0]; } - throw new IllegalStateException(String.format("Expected type [%s], but [%s]", ValueType.INT8, type)); + throw new IllegalStateException(String.format("Expected type [%s], but [%s]", DataType.INT8, type)); } /** * 返回 16 位整数值; *

* - * 仅当数据类型 {@link #getType()} 为 {@link ValueType#INT16} 有效; + * 仅当数据类型 {@link #getType()} 为 {@link DataType#INT16} 有效; *

* * 无效类型将引发 {@link IllegalStateException} 异常; @@ -145,17 +145,17 @@ public class KVDataObject implements KVDataEntry { * @return */ public short shortValue() { - if (ValueType.INT16 == type) { + if (DataType.INT16 == type) { return BytesUtils.toShort(bytesValue, 0); } - throw new IllegalStateException(String.format("Expected type [%s], but [%s]", ValueType.INT16, type)); + throw new IllegalStateException(String.format("Expected type [%s], but [%s]", DataType.INT16, type)); } /** * 返回 32 位整数值; *

* - * 仅当数据类型 {@link #getType()} 为 {@link ValueType#INT32} 有效; + * 仅当数据类型 {@link #getType()} 为 {@link DataType#INT32} 有效; *

* * 无效类型将引发 {@link IllegalStateException} 异常; @@ -163,17 +163,17 @@ public class KVDataObject implements KVDataEntry { * @return */ public int intValue() { - if (ValueType.INT32 == type) { + if (DataType.INT32 == type) { return BytesUtils.toInt(bytesValue, 0); } - throw new IllegalStateException(String.format("Expected type [%s], but [%s]", ValueType.INT32, type)); + throw new IllegalStateException(String.format("Expected type [%s], but [%s]", DataType.INT32, type)); } /** * 返回 64 位整数值; *

* - * 仅当数据类型 {@link #getType()} 为 {@link ValueType#INT64} 有效; + * 仅当数据类型 {@link #getType()} 为 {@link DataType#INT64} 有效; *

* * 无效类型将引发 {@link IllegalStateException} 异常; @@ -181,10 +181,10 @@ public class KVDataObject implements KVDataEntry { * @return */ public long longValue() { - if (ValueType.INT64 == type) { + if (DataType.INT64 == type) { return BytesUtils.toLong(bytesValue, 0); } - throw new IllegalStateException(String.format("Expected type [%s], but [%s]", ValueType.INT64, type)); + throw new IllegalStateException(String.format("Expected type [%s], but [%s]", DataType.INT64, type)); } @@ -192,7 +192,7 @@ public class KVDataObject implements KVDataEntry { * 返回大整数值; *

* - * 仅当数据类型 {@link #getType()} 为 {@link ValueType#BIG_INT} 有效; + * 仅当数据类型 {@link #getType()} 为 {@link DataType#BIG_INT} 有效; *

* * 无效类型将引发 {@link IllegalStateException} 异常; @@ -200,17 +200,17 @@ public class KVDataObject implements KVDataEntry { * @return */ public BigInteger bigIntValue() { - if (ValueType.BIG_INT == type) { + if (DataType.BIG_INT == type) { return new BigInteger(bytesValue); } - throw new IllegalStateException(String.format("Expected type [%s], but [%s]", ValueType.BIG_INT, type)); + throw new IllegalStateException(String.format("Expected type [%s], but [%s]", DataType.BIG_INT, type)); } /** * 返回布尔值; *

* - * 仅当数据类型 {@link #getType()} 为 {@link ValueType#BIG_INT} 有效; + * 仅当数据类型 {@link #getType()} 为 {@link DataType#BIG_INT} 有效; *

* * 无效类型将引发 {@link IllegalStateException} 异常; @@ -218,17 +218,17 @@ public class KVDataObject implements KVDataEntry { * @return */ public boolean boolValue() { - if (ValueType.BOOLEAN == type) { + if (DataType.BOOLEAN == type) { return bytesValue[0] != 0; } - throw new IllegalStateException(String.format("Expected type [%s], but [%s]", ValueType.BOOLEAN, type)); + throw new IllegalStateException(String.format("Expected type [%s], but [%s]", DataType.BOOLEAN, type)); } /** * 返回日期时间值; *

* - * 仅当数据类型 {@link #getType()} 为 {@link ValueType#DATETIME} 有效; + * 仅当数据类型 {@link #getType()} 为 {@link DataType#DATETIME} 有效; *

* * 无效类型将引发 {@link IllegalStateException} 异常; @@ -236,19 +236,19 @@ public class KVDataObject implements KVDataEntry { * @return */ public Date datetimeValue() { - if (ValueType.DATETIME == type) { + if (DataType.DATETIME == type) { long ts = BytesUtils.toLong(bytesValue); return new Date(ts); } - throw new IllegalStateException(String.format("Expected type [%s], but [%s]", ValueType.DATETIME, type)); + throw new IllegalStateException(String.format("Expected type [%s], but [%s]", DataType.DATETIME, type)); } /** * 返回大整数值; *

* - * 仅当数据类型 {@link #getType()} 为 {@link ValueType#TEXT} / {@link ValueType#JSON} / - * {@link ValueType#XML} 有效; + * 仅当数据类型 {@link #getType()} 为 {@link DataType#TEXT} / {@link DataType#JSON} / + * {@link DataType#XML} 有效; *

* * 无效类型将引发 {@link IllegalStateException} 异常; @@ -256,15 +256,15 @@ public class KVDataObject implements KVDataEntry { * @return */ public String stringValue() { - if (ValueType.TEXT == type || ValueType.JSON == type || ValueType.XML == type) { + if (DataType.TEXT == type || DataType.JSON == type || DataType.XML == type) { try { return new String(bytesValue, "UTF-8"); } catch (UnsupportedEncodingException e) { throw new IllegalStateException(e.getMessage(), e); } } - throw new IllegalStateException(String.format("Expected type [%s] or [%s] or [%s] , but [%s]", ValueType.TEXT, - ValueType.JSON, ValueType.XML, type)); + throw new IllegalStateException(String.format("Expected type [%s] or [%s] or [%s] , but [%s]", DataType.TEXT, + DataType.JSON, DataType.XML, type)); } // // ---------------- diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/LedgerBlock.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/LedgerBlock.java index d002ed2d..31b4ae16 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/LedgerBlock.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/LedgerBlock.java @@ -2,11 +2,11 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.consts.TypeCodes; +import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.crypto.HashDigest; -import com.jd.blockchain.utils.ValueType; -@DataContract(code = TypeCodes.BLOCK) +@DataContract(code = DataCodes.BLOCK) public interface LedgerBlock extends BlockBody { /** @@ -19,7 +19,7 @@ public interface LedgerBlock extends BlockBody { * * @return */ - @DataField(order = 1, primitiveType = ValueType.BYTES) + @DataField(order = 1, primitiveType = DataType.BYTES) HashDigest getHash(); } diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/LedgerDataSnapshot.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/LedgerDataSnapshot.java index 83d0e78c..f65b3612 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/LedgerDataSnapshot.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/LedgerDataSnapshot.java @@ -2,23 +2,23 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.consts.TypeCodes; +import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.crypto.HashDigest; -import com.jd.blockchain.utils.ValueType; -@DataContract(code=TypeCodes.DATA_SNAPSHOT) +@DataContract(code=DataCodes.DATA_SNAPSHOT) public interface LedgerDataSnapshot { - @DataField(order=1, primitiveType = ValueType.BYTES) + @DataField(order=1, primitiveType = DataType.BYTES) HashDigest getAdminAccountHash(); - @DataField(order=2, primitiveType = ValueType.BYTES) + @DataField(order=2, primitiveType = DataType.BYTES) HashDigest getUserAccountSetHash(); - @DataField(order=3, primitiveType = ValueType.BYTES) + @DataField(order=3, primitiveType = DataType.BYTES) HashDigest getDataAccountSetHash(); - @DataField(order=4, primitiveType = ValueType.BYTES) + @DataField(order=4, primitiveType = DataType.BYTES) HashDigest getContractAccountSetHash(); // HashDigest getUserPrivilegeHash(); diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/LedgerInitOperation.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/LedgerInitOperation.java index c14e79c1..08b02e07 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/LedgerInitOperation.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/LedgerInitOperation.java @@ -2,9 +2,9 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.consts.TypeCodes; +import com.jd.blockchain.consts.DataCodes; -@DataContract(code= TypeCodes.TX_OP_LEDGER_INIT) +@DataContract(code= DataCodes.TX_OP_LEDGER_INIT) public interface LedgerInitOperation extends Operation{ @DataField(order=1, refContract=true) diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/LedgerInitSetting.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/LedgerInitSetting.java index 7d36dd30..ffd33592 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/LedgerInitSetting.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/LedgerInitSetting.java @@ -2,9 +2,9 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.consts.TypeCodes; +import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.utils.Bytes; -import com.jd.blockchain.utils.ValueType; /** * 账本初始化配置; @@ -12,14 +12,14 @@ import com.jd.blockchain.utils.ValueType; * @author huanghaiquan * */ -@DataContract(code = TypeCodes.METADATA_INIT_SETTING) +@DataContract(code = DataCodes.METADATA_INIT_SETTING) public interface LedgerInitSetting { /** * 账本的种子; * @return */ - @DataField(order = 1, primitiveType = ValueType.BYTES) + @DataField(order = 1, primitiveType = DataType.BYTES) byte[] getLedgerSeed(); /** @@ -39,7 +39,7 @@ public interface LedgerInitSetting { CryptoSetting getCryptoSetting(); - @DataField(order = 4, primitiveType=ValueType.TEXT) + @DataField(order = 4, primitiveType=DataType.TEXT) String getConsensusProvider(); /** @@ -47,7 +47,7 @@ public interface LedgerInitSetting { * * @return */ - @DataField(order = 5, primitiveType=ValueType.BYTES) + @DataField(order = 5, primitiveType=DataType.BYTES) Bytes getConsensusSettings(); } diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/LedgerTransaction.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/LedgerTransaction.java index ef7cb4d3..6514193e 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/LedgerTransaction.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/LedgerTransaction.java @@ -1,7 +1,7 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; -import com.jd.blockchain.consts.TypeCodes; +import com.jd.blockchain.consts.DataCodes; /** * 账本的事务; @@ -11,7 +11,7 @@ import com.jd.blockchain.consts.TypeCodes; * @author huanghaiquan * */ -@DataContract(code=TypeCodes.TX_LEDGER) +@DataContract(code=DataCodes.TX_LEDGER) public interface LedgerTransaction extends Transaction, LedgerDataSnapshot { } diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/NodeRequest.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/NodeRequest.java index c141de6f..4ccd8051 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/NodeRequest.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/NodeRequest.java @@ -2,9 +2,9 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.consts.TypeCodes; +import com.jd.blockchain.consts.DataCodes; -@DataContract(code = TypeCodes.REQUEST_NODE) +@DataContract(code = DataCodes.REQUEST_NODE) public interface NodeRequest extends EndpointRequest { diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/Operation.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/Operation.java index cbc7ffcb..ce78fa11 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/Operation.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/Operation.java @@ -1,9 +1,9 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; -import com.jd.blockchain.consts.TypeCodes; +import com.jd.blockchain.consts.DataCodes; -@DataContract(code= TypeCodes.TX_OP) +@DataContract(code= DataCodes.TX_OP) public interface Operation { } diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/ParticipantNode.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/ParticipantNode.java index 91b63af1..dfa066a9 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/ParticipantNode.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/ParticipantNode.java @@ -2,9 +2,9 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.consts.TypeCodes; +import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.crypto.PubKey; -import com.jd.blockchain.utils.ValueType; /** * 参与方节点; @@ -12,7 +12,7 @@ import com.jd.blockchain.utils.ValueType; * @author huanghaiquan * */ -@DataContract(code = TypeCodes.METADATA_CONSENSUS_PARTICIPANT) +@DataContract(code = DataCodes.METADATA_CONSENSUS_PARTICIPANT) public interface ParticipantNode {// extends ConsensusNode, ParticipantInfo { /** @@ -29,7 +29,7 @@ public interface ParticipantNode {// extends ConsensusNode, ParticipantInfo { * * @return */ - @DataField(order = 1, primitiveType = ValueType.TEXT) + @DataField(order = 1, primitiveType = DataType.TEXT) String getAddress(); /** @@ -37,7 +37,7 @@ public interface ParticipantNode {// extends ConsensusNode, ParticipantInfo { * * @return */ - @DataField(order = 2, primitiveType = ValueType.TEXT) + @DataField(order = 2, primitiveType = DataType.TEXT) String getName(); /** @@ -45,6 +45,6 @@ public interface ParticipantNode {// extends ConsensusNode, ParticipantInfo { * * @return */ - @DataField(order = 3, primitiveType = ValueType.BYTES) + @DataField(order = 3, primitiveType = DataType.BYTES) PubKey getPubKey(); } \ No newline at end of file diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/Transaction.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/Transaction.java index 76c98880..85ce1eb3 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/Transaction.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/Transaction.java @@ -2,9 +2,9 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.consts.TypeCodes; +import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.crypto.HashDigest; -import com.jd.blockchain.utils.ValueType; import com.jd.blockchain.utils.io.ByteArray; /** @@ -13,7 +13,7 @@ import com.jd.blockchain.utils.io.ByteArray; * @author huanghaiquan * */ -@DataContract(code= TypeCodes.TX) +@DataContract(code= DataCodes.TX) public interface Transaction extends NodeRequest, HashObject { /** @@ -23,7 +23,7 @@ public interface Transaction extends NodeRequest, HashObject { * * @return */ - @DataField(order=1, primitiveType = ValueType.BYTES) + @DataField(order=1, primitiveType = DataType.BYTES) @Override HashDigest getHash(); @@ -32,7 +32,7 @@ public interface Transaction extends NodeRequest, HashObject { * * @return */ - @DataField(order=2, primitiveType=ValueType.INT64) + @DataField(order=2, primitiveType=DataType.INT64) long getBlockHeight(); /** diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionContent.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionContent.java index 936c2a21..91e7c7a8 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionContent.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionContent.java @@ -2,9 +2,9 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.consts.TypeCodes; +import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.crypto.HashDigest; -import com.jd.blockchain.utils.ValueType; /** * 交易内容; @@ -12,10 +12,10 @@ import com.jd.blockchain.utils.ValueType; * @author huanghaiquan * */ -@DataContract(code= TypeCodes.TX_CONTENT) +@DataContract(code= DataCodes.TX_CONTENT) public interface TransactionContent extends TransactionContentBody, HashObject { @Override - @DataField(order=1, primitiveType = ValueType.BYTES) + @DataField(order=1, primitiveType = DataType.BYTES) HashDigest getHash(); } diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionContentBody.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionContentBody.java index 41663044..22ee2c3b 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionContentBody.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionContentBody.java @@ -2,9 +2,9 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.consts.TypeCodes; +import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.crypto.HashDigest; -import com.jd.blockchain.utils.ValueType; /** * 交易内容; @@ -12,7 +12,7 @@ import com.jd.blockchain.utils.ValueType; * @author huanghaiquan * */ -@DataContract(code = TypeCodes.TX_CONTENT_BODY) +@DataContract(code = DataCodes.TX_CONTENT_BODY) public interface TransactionContentBody { /** @@ -22,7 +22,7 @@ public interface TransactionContentBody { * * @return */ - @DataField(order = 1, primitiveType = ValueType.BYTES) + @DataField(order = 1, primitiveType = DataType.BYTES) HashDigest getLedgerHash(); /** diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionRequest.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionRequest.java index 557d1141..03887417 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionRequest.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionRequest.java @@ -2,9 +2,9 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.consts.TypeCodes; +import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.crypto.HashDigest; -import com.jd.blockchain.utils.ValueType; /** * 交易请求; @@ -12,7 +12,7 @@ import com.jd.blockchain.utils.ValueType; * @author huanghaiquan * */ -@DataContract(code= TypeCodes.REQUEST) +@DataContract(code= DataCodes.REQUEST) public interface TransactionRequest extends NodeRequest, HashObject { /** @@ -21,6 +21,6 @@ public interface TransactionRequest extends NodeRequest, HashObject { * @return */ @Override - @DataField(order=1, primitiveType = ValueType.BYTES) + @DataField(order=1, primitiveType = DataType.BYTES) HashDigest getHash(); } \ No newline at end of file diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionResponse.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionResponse.java index b6168dcb..7d66a7c1 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionResponse.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionResponse.java @@ -2,9 +2,9 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.consts.TypeCodes; +import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.crypto.HashDigest; -import com.jd.blockchain.utils.ValueType; /** * 交易请求 {@link TransactionRequest} 的回复; @@ -12,7 +12,7 @@ import com.jd.blockchain.utils.ValueType; * @author huanghaiquan * */ -@DataContract(code= TypeCodes.TX_RESPONSE) +@DataContract(code= DataCodes.TX_RESPONSE) public interface TransactionResponse { /** @@ -20,7 +20,7 @@ public interface TransactionResponse { * * @return */ - @DataField(order=1, primitiveType = ValueType.BYTES) + @DataField(order=1, primitiveType = DataType.BYTES) HashDigest getContentHash(); /** @@ -36,7 +36,7 @@ public interface TransactionResponse { * * @return */ - @DataField(order=3, primitiveType = ValueType.BYTES) + @DataField(order=3, primitiveType = DataType.BYTES) HashDigest getBlockHash(); /** @@ -47,10 +47,10 @@ public interface TransactionResponse { * * @return */ - @DataField(order=4, primitiveType=ValueType.INT64) + @DataField(order=4, primitiveType=DataType.INT64) long getBlockHeight(); - @DataField(order=5, primitiveType=ValueType.BOOLEAN) + @DataField(order=5, primitiveType=DataType.BOOLEAN) boolean isSuccess(); } \ No newline at end of file diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionState.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionState.java index ed756109..6c9a4644 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionState.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionState.java @@ -1,9 +1,9 @@ package com.jd.blockchain.ledger; +import com.jd.blockchain.binaryproto.DataType; import com.jd.blockchain.binaryproto.EnumContract; import com.jd.blockchain.binaryproto.EnumField; -import com.jd.blockchain.consts.TypeCodes; -import com.jd.blockchain.utils.ValueType; +import com.jd.blockchain.consts.DataCodes; /** * 交易(事务)执行状态; @@ -11,7 +11,7 @@ import com.jd.blockchain.utils.ValueType; * @author huanghaiquan * */ -@EnumContract(code= TypeCodes.ENUM_TYPE_TRANSACTION_STATE) +@EnumContract(code= DataCodes.ENUM_TYPE_TRANSACTION_STATE) public enum TransactionState { /** @@ -39,7 +39,7 @@ public enum TransactionState { */ TIMEOUT((byte) 0x81); - @EnumField(type= ValueType.INT8) + @EnumField(type= DataType.INT8) public final byte CODE; private TransactionState(byte code) { diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/UserInfo.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/UserInfo.java index eea581ff..48759b9f 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/UserInfo.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/UserInfo.java @@ -1,10 +1,10 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; -import com.jd.blockchain.consts.TypeCodes; +import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.crypto.PubKey; -@DataContract(code= TypeCodes.USER) +@DataContract(code= DataCodes.USER) public interface UserInfo extends AccountHeader { PubKey getDataPubKey(); diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/UserRegisterOperation.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/UserRegisterOperation.java index f565b190..7cf658b7 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/UserRegisterOperation.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/UserRegisterOperation.java @@ -2,9 +2,9 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.consts.TypeCodes; +import com.jd.blockchain.consts.DataCodes; -@DataContract(code= TypeCodes.TX_OP_USER_REG) +@DataContract(code= DataCodes.TX_OP_USER_REG) public interface UserRegisterOperation extends Operation { // @Override diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/DataAccountKVSetOperationBuilderImpl.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/DataAccountKVSetOperationBuilderImpl.java index 6d7aff58..08522f3d 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/DataAccountKVSetOperationBuilderImpl.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/DataAccountKVSetOperationBuilderImpl.java @@ -3,7 +3,7 @@ package com.jd.blockchain.transaction; import com.jd.blockchain.ledger.BytesValue; import com.jd.blockchain.ledger.BytesValueImpl; import com.jd.blockchain.ledger.DataAccountKVSetOperation; -import com.jd.blockchain.ledger.DataType; +import com.jd.blockchain.ledger.BytesValueType; import com.jd.blockchain.utils.Bytes; import com.jd.blockchain.utils.io.BytesUtils; import com.jd.blockchain.utils.serialize.json.JSONSerializeUtils; @@ -23,7 +23,7 @@ public class DataAccountKVSetOperationBuilderImpl implements DataAccountKVSetOpe @Override public DataAccountKVSetOperationBuilder set(String key, byte[] value, long expVersion) { - BytesValue bytesValue = new BytesValueImpl(DataType.BYTES, value); + BytesValue bytesValue = new BytesValueImpl(BytesValueType.BYTES, value); operation.set(key, bytesValue, expVersion); return this; } @@ -32,10 +32,10 @@ public class DataAccountKVSetOperationBuilderImpl implements DataAccountKVSetOpe public DataAccountKVSetOperationBuilder set(String key, String value, long expVersion) { BytesValue bytesValue; if (JSONSerializeUtils.isJSON(value)) { - bytesValue = new BytesValueImpl(DataType.JSON, value.getBytes()); + bytesValue = new BytesValueImpl(BytesValueType.JSON, value.getBytes()); } else { - bytesValue = new BytesValueImpl(DataType.TEXT, value.getBytes()); + bytesValue = new BytesValueImpl(BytesValueType.TEXT, value.getBytes()); } operation.set(key, bytesValue, expVersion); return this; @@ -43,13 +43,13 @@ public class DataAccountKVSetOperationBuilderImpl implements DataAccountKVSetOpe @Override public DataAccountKVSetOperationBuilder set(String key, Bytes value, long expVersion) { - BytesValue bytesValue = new BytesValueImpl(DataType.BYTES, value.toBytes()); + BytesValue bytesValue = new BytesValueImpl(BytesValueType.BYTES, value.toBytes()); operation.set(key, bytesValue, expVersion); return this; } @Override public DataAccountKVSetOperationBuilder set(String key, long value, long expVersion) { - BytesValue bytesValue = new BytesValueImpl(DataType.INT64, BytesUtils.toBytes(value)); + BytesValue bytesValue = new BytesValueImpl(BytesValueType.INT64, BytesUtils.toBytes(value)); operation.set(key, bytesValue, expVersion); return this; } diff --git a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/DataAccountKVSetOpTemplateTest.java b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/DataAccountKVSetOpTemplateTest.java index ed7d8c57..2f877868 100644 --- a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/DataAccountKVSetOpTemplateTest.java +++ b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/DataAccountKVSetOpTemplateTest.java @@ -12,7 +12,7 @@ import com.jd.blockchain.binaryproto.BinaryEncodingUtils; import com.jd.blockchain.binaryproto.DataContractRegistry; import com.jd.blockchain.ledger.BytesValueImpl; import com.jd.blockchain.ledger.DataAccountKVSetOperation; -import com.jd.blockchain.ledger.DataType; +import com.jd.blockchain.ledger.BytesValueType; import com.jd.blockchain.ledger.Operation; import com.jd.blockchain.transaction.DataAccountKVSetOpTemplate; import com.jd.blockchain.transaction.KVData; @@ -43,11 +43,11 @@ public class DataAccountKVSetOpTemplateTest { String accountAddress = "zhangsandhakhdkah"; data = new DataAccountKVSetOpTemplate(Bytes.fromString(accountAddress)); KVData kvData1 = - new KVData("test1", new BytesValueImpl(DataType.TEXT, "zhangsan".getBytes()), 9999L); + new KVData("test1", new BytesValueImpl(BytesValueType.TEXT, "zhangsan".getBytes()), 9999L); KVData kvData2 = - new KVData("test2", new BytesValueImpl(DataType.TEXT, "lisi".getBytes()), 9990L); + new KVData("test2", new BytesValueImpl(BytesValueType.TEXT, "lisi".getBytes()), 9990L); KVData kvData3 = - new KVData("test3", new BytesValueImpl(DataType.TEXT, "wangwu".getBytes()), 1990L); + new KVData("test3", new BytesValueImpl(BytesValueType.TEXT, "wangwu".getBytes()), 1990L); data.set(kvData1); data.set(kvData2); data.set(kvData3); diff --git a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/KVDataTest.java b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/KVDataTest.java index 666d3a0e..e7786f91 100644 --- a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/KVDataTest.java +++ b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/KVDataTest.java @@ -12,7 +12,7 @@ import com.jd.blockchain.binaryproto.BinaryEncodingUtils; import com.jd.blockchain.binaryproto.DataContractRegistry; import com.jd.blockchain.ledger.BytesValueImpl; import com.jd.blockchain.ledger.DataAccountKVSetOperation; -import com.jd.blockchain.ledger.DataType; +import com.jd.blockchain.ledger.BytesValueType; import com.jd.blockchain.transaction.DataAccountKVSetOpTemplate; import com.jd.blockchain.transaction.KVData; @@ -39,7 +39,7 @@ public class KVDataTest { byte[] value = "test-value".getBytes(); long expectedVersion = 9999L; - kvData = new KVData(key, new BytesValueImpl(DataType.BYTES, value), expectedVersion); + kvData = new KVData(key, new BytesValueImpl(BytesValueType.BYTES, value), expectedVersion); } @Test diff --git a/source/peer/src/main/java/com/jd/blockchain/peer/web/LedgerQueryController.java b/source/peer/src/main/java/com/jd/blockchain/peer/web/LedgerQueryController.java index 196d5175..673f5e7e 100644 --- a/source/peer/src/main/java/com/jd/blockchain/peer/web/LedgerQueryController.java +++ b/source/peer/src/main/java/com/jd/blockchain/peer/web/LedgerQueryController.java @@ -8,6 +8,7 @@ import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.DataType; import com.jd.blockchain.crypto.HashDigest; import com.jd.blockchain.ledger.AccountHeader; import com.jd.blockchain.ledger.BytesValue; @@ -31,7 +32,6 @@ import com.jd.blockchain.ledger.core.UserAccountSet; import com.jd.blockchain.transaction.BlockchainQueryService; import com.jd.blockchain.utils.Bytes; import com.jd.blockchain.utils.QueryUtil; -import com.jd.blockchain.utils.ValueType; @RestController @RequestMapping(path = "/") @@ -339,11 +339,11 @@ public class LedgerQueryController implements BlockchainQueryService { for (int i = 0; i < entries.length; i++) { ver = dataAccount.getDataVersion(Bytes.fromString(keys[i])); if (ver < 0) { - entries[i] = new KVDataObject(keys[i], -1, ValueType.NIL, null); + entries[i] = new KVDataObject(keys[i], -1, DataType.NIL, null); }else { byte[] value = dataAccount.getBytes(Bytes.fromString(keys[i]), ver); BytesValue decodeData = BinaryEncodingUtils.decode(value); - entries[i] = new KVDataObject(keys[i], ver, ValueType.valueOf(decodeData.getType().CODE), decodeData.getValue().toBytes()); + entries[i] = new KVDataObject(keys[i], ver, DataType.valueOf(decodeData.getType().CODE), decodeData.getValue().toBytes()); } } From 4bc5dbf36e50752f7f414cd0e6d6d612148eaf00 Mon Sep 17 00:00:00 2001 From: huanghaiquan Date: Sat, 4 May 2019 21:23:22 +0800 Subject: [PATCH 09/10] Renamed some base types in binary-proto; --- .../com/jd/blockchain/consts/DataCodes.java | 2 +- .../binaryproto/DataContractEncoder.java | 1 - .../jd/blockchain/binaryproto/DataField.java | 8 +- .../jd/blockchain/binaryproto/DataType.java | 125 +----- .../jd/blockchain/binaryproto/EnumField.java | 4 +- .../binaryproto/EnumSpecification.java | 2 +- .../jd/blockchain/binaryproto/FieldSpec.java | 4 +- .../blockchain/binaryproto/PrimitiveType.java | 93 ++++ .../impl/AbstractDynamicValueConverter.java | 1 - .../binaryproto/impl/DataContractContext.java | 49 +-- .../impl/DataContractSpecification.java | 1 - .../impl/EnumSpecificationInfo.java | 8 +- .../binaryproto/impl/EnumValueConverter.java | 6 +- .../binaryproto/impl/FieldSpecInfo.java | 8 +- .../binaryproto/CompositeDatas.java | 6 +- .../jd/blockchain/binaryproto/EnumLevel.java | 4 +- .../FieldOrderConflictedDatas.java | 14 +- .../GenericRefContractDatasImpl.java | 2 - .../binaryproto/PrimitiveDatas.java | 24 +- .../binaryproto/PrimitiveDatasImpl.java | 2 - .../blockchain/binaryproto/SubOperation.java | 4 +- .../binaryproto/contract/Address.java | 16 - .../contract/AddressCodeDuplicate.java | 6 +- .../contract/AddressOrderDuplicate.java | 6 +- .../binaryproto/contract/Array.java | 10 +- .../binaryproto/contract/CryptoAlgorithm.java | 158 ------- .../binaryproto/contract/CryptoSetting.java | 41 -- .../binaryproto/contract/HashAlgorithm.java | 50 --- .../binaryproto/contract/LedgerBlock.java | 28 -- .../contract/LedgerDataSnapshot.java | 34 -- .../binaryproto/contract/LedgerMetadata.java | 25 -- .../binaryproto/contract/LedgerSetting.java | 21 - .../binaryproto/contract/Level.java | 4 +- .../binaryproto/contract/Privilege.java | 18 - .../contract/PrivilegeModelSetting.java | 4 +- .../binaryproto/contract/RefContract.java | 20 - .../binaryproto/contract/Student.java | 41 -- .../binaryproto/contract/StudentInvert.java | 44 -- .../blockchain/binaryproto/contract/User.java | 31 -- .../contract/impl/AddressImpl.java | 29 -- .../contract/impl/CryptoSettingImpl.java | 40 -- .../contract/impl/LedgerBlockImpl.java | 147 ------- .../contract/impl/LedgerMetadataImpl.java | 56 --- .../contract/impl/LedgerSettingImpl.java | 30 -- .../contract/impl/RefContractImpl.java | 32 -- .../contract/impl/StudentImpl.java | 108 ----- .../binaryproto/contract/impl/UserImpl.java | 51 --- .../BftsmartClientIncomingSettings.java | 8 +- .../bftsmart/BftsmartCommitBlockSettings.java | 6 +- .../bftsmart/BftsmartConsensusSettings.java | 4 +- .../bftsmart/BftsmartNodeSettings.java | 6 +- .../consensus/ClientIdentification.java | 10 +- .../consensus/ClientIncomingSettings.java | 6 +- .../jd/blockchain/consensus/NodeSettings.java | 6 +- .../consensus/action/ActionRequest.java | 12 +- .../consensus/action/ActionResponse.java | 10 +- .../mq/settings/MsgQueueBlockSettings.java | 6 +- .../MsgQueueClientIncomingSettings.java | 4 +- .../settings/MsgQueueConsensusSettings.java | 2 +- .../mq/settings/MsgQueueNetworkSettings.java | 10 +- .../jd/blockchain/crypto/CryptoAlgorithm.java | 4 +- .../blockchain/ledger/core/DataAccount.java | 4 +- .../ledger/core/LedgerInitDecision.java | 8 +- .../ledger/core/LedgerInitPermission.java | 6 +- .../ledger/core/LedgerMetadata.java | 6 +- .../blockchain/ledger/core/LedgerSetting.java | 6 +- .../ledger/core/impl/LedgerQueryService.java | 6 +- .../impl/handles/ContractLedgerContext.java | 12 +- .../jd/blockchain/ledger/AccountHeader.java | 8 +- .../com/jd/blockchain/ledger/AccountImpl.java | 406 ------------------ .../ledger/AccountRegisterOperation.java | 38 -- .../com/jd/blockchain/ledger/BlockBody.java | 10 +- .../blockchain/ledger/BlockchainAccount.java | 146 ------- .../blockchain/ledger/BlockchainIdentity.java | 6 +- .../ledger/BlockchainOperation.java | 11 - .../com/jd/blockchain/ledger/BytesValue.java | 10 +- ...tesValueImpl.java => BytesValueEntry.java} | 4 +- .../jd/blockchain/ledger/BytesValueType.java | 54 +-- .../ledger/ContractCodeDeployOperation.java | 4 +- .../ledger/ContractEventSendOperation.java | 8 +- .../jd/blockchain/ledger/CryptoSetting.java | 6 +- .../ledger/DataAccountKVSetOperation.java | 8 +- .../ledger/DigitalSignatureBody.java | 6 +- .../jd/blockchain/ledger/EndpointRequest.java | 4 +- .../com/jd/blockchain/ledger/KVDataEntry.java | 4 +- .../jd/blockchain/ledger/KVDataObject.java | 64 +-- .../com/jd/blockchain/ledger/LedgerBlock.java | 4 +- .../blockchain/ledger/LedgerDataSnapshot.java | 10 +- .../blockchain/ledger/LedgerInitSetting.java | 8 +- .../jd/blockchain/ledger/ParticipantNode.java | 8 +- .../com/jd/blockchain/ledger/Transaction.java | 6 +- .../blockchain/ledger/TransactionContent.java | 4 +- .../ledger/TransactionContentBody.java | 4 +- .../blockchain/ledger/TransactionRequest.java | 4 +- .../ledger/TransactionResponse.java | 10 +- .../blockchain/ledger/TransactionState.java | 4 +- .../ledger/UserRegisterOperation.java | 6 - .../DataAccountKVSetOperationBuilderImpl.java | 12 +- .../data/DataAccountKVSetOpTemplateTest.java | 8 +- .../jd/blockchain/ledger/data/KVDataTest.java | 4 +- .../peer/web/LedgerQueryController.java | 6 +- 101 files changed, 403 insertions(+), 2052 deletions(-) create mode 100644 source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/PrimitiveType.java delete mode 100644 source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/Address.java delete mode 100644 source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/CryptoAlgorithm.java delete mode 100644 source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/CryptoSetting.java delete mode 100644 source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/HashAlgorithm.java delete mode 100644 source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/LedgerBlock.java delete mode 100644 source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/LedgerDataSnapshot.java delete mode 100644 source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/LedgerMetadata.java delete mode 100644 source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/LedgerSetting.java delete mode 100644 source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/Privilege.java delete mode 100644 source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/RefContract.java delete mode 100644 source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/Student.java delete mode 100644 source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/StudentInvert.java delete mode 100644 source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/User.java delete mode 100644 source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/impl/AddressImpl.java delete mode 100644 source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/impl/CryptoSettingImpl.java delete mode 100644 source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/impl/LedgerBlockImpl.java delete mode 100644 source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/impl/LedgerMetadataImpl.java delete mode 100644 source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/impl/LedgerSettingImpl.java delete mode 100644 source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/impl/RefContractImpl.java delete mode 100644 source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/impl/StudentImpl.java delete mode 100644 source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/impl/UserImpl.java delete mode 100644 source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/AccountImpl.java delete mode 100644 source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/AccountRegisterOperation.java delete mode 100644 source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BlockchainAccount.java delete mode 100644 source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BlockchainOperation.java rename source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/{BytesValueImpl.java => BytesValueEntry.java} (81%) diff --git a/source/base/src/main/java/com/jd/blockchain/consts/DataCodes.java b/source/base/src/main/java/com/jd/blockchain/consts/DataCodes.java index 2afa40f3..e4e17a14 100644 --- a/source/base/src/main/java/com/jd/blockchain/consts/DataCodes.java +++ b/source/base/src/main/java/com/jd/blockchain/consts/DataCodes.java @@ -89,7 +89,7 @@ public interface DataCodes { public static final int ENUM_TYPE_TRANSACTION_STATE = 0xB22; - public static final int ENUM_TYPE_DATA_TYPE = 0xB23; + public static final int ENUM_TYPE_BYTES_VALUE_TYPE = 0xB23; public static final int DIGITALSIGNATURE = 0xB30; diff --git a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/DataContractEncoder.java b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/DataContractEncoder.java index 1cb0fc75..179f7d76 100644 --- a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/DataContractEncoder.java +++ b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/DataContractEncoder.java @@ -2,7 +2,6 @@ package com.jd.blockchain.binaryproto; import com.jd.blockchain.utils.io.BytesInputStream; import com.jd.blockchain.utils.io.BytesOutputBuffer; -import com.jd.blockchain.utils.io.BytesSlice; /** * 二进制编码器; diff --git a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/DataField.java b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/DataField.java index ca714dae..1829eed6 100644 --- a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/DataField.java +++ b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/DataField.java @@ -37,11 +37,11 @@ public @interface DataField { * 基本数据类型; *

* - * 如果字段的类型属于 {@link DataType} 枚举中的基本数据类型,则需要显式指定一种具体的类型; + * 如果字段的类型属于 {@link PrimitiveType} 枚举中的基本数据类型,则需要显式指定一种具体的类型; * * @return */ - DataType primitiveType() default DataType.NIL; + PrimitiveType primitiveType() default PrimitiveType.NIL; /** * 是否是枚举类型; @@ -78,8 +78,8 @@ public @interface DataField { /** * 最大长度,单位为“byte” *

- * 仅对于文本、字节数组、大整数等相关的数据类型有效(即:{@link DataType} 枚举中编码大于等于 0x20 - * {@link DataType#TEXT}的数据类型); + * 仅对于文本、字节数组、大整数等相关的数据类型有效(即:{@link PrimitiveType} 枚举中编码大于等于 0x20 + * {@link PrimitiveType#TEXT}的数据类型); * * @return */ diff --git a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/DataType.java b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/DataType.java index e4a55280..08c3728b 100644 --- a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/DataType.java +++ b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/DataType.java @@ -1,114 +1,11 @@ -package com.jd.blockchain.binaryproto; - -/** - * 键值操作的数据类型; - * - * @author huanghaiquan - * - */ -public enum DataType { - - /** - * 空; - */ - NIL((byte) 0x00), - - /** - * 布尔型; - */ - BOOLEAN((byte) 0x10), - - /** - * 数值型: - */ - INT8((byte) 0x11), - - INT16((byte) 0x12), - - INT32((byte) 0x13), - - INT64((byte) 0x14), - - /** - * 日期时间; - */ - DATETIME((byte) 0x15), - - /** - * 文本数据; - */ - TEXT((byte) 0x20), - - /** - * 文本数据; - */ - JSON((byte) 0x21), - - /** - * 文本数据; - */ - XML((byte) 0x22), - - /** - * 二进制数据; - */ - BYTES((byte) 0x40), - - /** - * 大整数; - */ - BIG_INT((byte) 0x41), - - /** - * 图片; - */ - IMG((byte) 0x42), - - /** - * 视频; - */ - VIDEO((byte) 0x43), - - /** - * 位置; - */ - LOCATION((byte) 0x44); - - -// /** -// * 引用;
-// * -// * 表示引用区块链系统中的某一个特定的对象,用以下形式的 URI 表示; -// * -// * state://ledger/account/key/version
-// * 或
-// * proof:state://account_merkle_path/key_merkle_path -// * -// * proof:tx:// -// * -// */ -// REFERENCE((byte) 0x80); - - - public static final byte NUMERIC_FLAG = (byte)0x10; - - public static final byte TEXT_FLAG = (byte)0x20; - - public static final byte BINARY_FLAG = (byte)0x40; - - public final byte CODE; - - private DataType(byte code) { - this.CODE = code; - } - - public static DataType valueOf(byte code) { - for (DataType dataType : DataType.values()) { - if (dataType.CODE == code) { - return dataType; - } - } - throw new IllegalArgumentException("Unsupported code[" + code + "] of DataType!"); - } - -} +package com.jd.blockchain.binaryproto; + +public interface DataType { + + public static final byte NUMERIC_FLAG = (byte)0x10; + + public static final byte TEXT_FLAG = (byte)0x20; + + public static final byte BINARY_FLAG = (byte)0x40; + +} diff --git a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/EnumField.java b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/EnumField.java index 2d55d4d5..f7c588f1 100644 --- a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/EnumField.java +++ b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/EnumField.java @@ -13,11 +13,11 @@ public @interface EnumField { * 枚举值的类型; * *

- * 注:只支持 {@link DataType#INT8} ~ {@link DataType#INT32} 这几种类型; + * 注:只支持 {@link PrimitiveType#INT8} ~ {@link PrimitiveType#INT32} 这几种类型; * * * @return */ - DataType type(); + PrimitiveType type(); } diff --git a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/EnumSpecification.java b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/EnumSpecification.java index ffb39582..6c4e73ce 100644 --- a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/EnumSpecification.java +++ b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/EnumSpecification.java @@ -10,7 +10,7 @@ public interface EnumSpecification { long getVersion(); - DataType getValueType(); + PrimitiveType getValueType(); int[] getItemValues(); diff --git a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/FieldSpec.java b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/FieldSpec.java index 8f88291c..315e6580 100644 --- a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/FieldSpec.java +++ b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/FieldSpec.java @@ -33,11 +33,11 @@ public interface FieldSpec { * 字段的值的类型; *

* 如果不是字段的值不是基本类型,则返回 null(即: {@link DataField#primitiveType()} 设置为 - * {@link DataType#NIL}); + * {@link PrimitiveType#NIL}); * * @return */ - DataType getPrimitiveType(); + PrimitiveType getPrimitiveType(); /** * 字段的值引用的枚举契约; diff --git a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/PrimitiveType.java b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/PrimitiveType.java new file mode 100644 index 00000000..6fd475cd --- /dev/null +++ b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/PrimitiveType.java @@ -0,0 +1,93 @@ +package com.jd.blockchain.binaryproto; + +/** + * 键值操作的数据类型; + * + * @author huanghaiquan + * + */ +public enum PrimitiveType { + + /** + * 空; + */ + NIL((byte) 0x00), + + /** + * 布尔型; + */ + BOOLEAN((byte) 0x10), + + /** + * 数值型: + */ + INT8((byte) 0x11), + + INT16((byte) 0x12), + + INT32((byte) 0x13), + + INT64((byte) 0x14), + + /** + * 日期时间; + */ + DATETIME((byte) 0x15), + + /** + * 文本数据; + */ + TEXT((byte) 0x20), + + /** + * 文本数据; + */ + JSON((byte) 0x21), + + /** + * 文本数据; + */ + XML((byte) 0x22), + + /** + * 二进制数据; + */ + BYTES((byte) 0x40), + + /** + * 大整数; + */ + BIG_INT((byte) 0x41), + + /** + * 图片; + */ + IMG((byte) 0x42), + + /** + * 视频; + */ + VIDEO((byte) 0x43), + + /** + * 位置; + */ + LOCATION((byte) 0x44); + + + public final byte CODE; + + private PrimitiveType(byte code) { + this.CODE = code; + } + + public static PrimitiveType valueOf(byte code) { + for (PrimitiveType dataType : PrimitiveType.values()) { + if (dataType.CODE == code) { + return dataType; + } + } + throw new IllegalArgumentException("Code[" + code + "] not suppported by PrimitiveType!"); + } + +} diff --git a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/impl/AbstractDynamicValueConverter.java b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/impl/AbstractDynamicValueConverter.java index b0536f76..53c8161e 100644 --- a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/impl/AbstractDynamicValueConverter.java +++ b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/impl/AbstractDynamicValueConverter.java @@ -2,7 +2,6 @@ package com.jd.blockchain.binaryproto.impl; import com.jd.blockchain.utils.io.BytesInputStream; import com.jd.blockchain.utils.io.BytesOutputBuffer; -import com.jd.blockchain.utils.io.BytesSlice; import com.jd.blockchain.utils.io.NumberMask; public abstract class AbstractDynamicValueConverter implements DynamicValueConverter { diff --git a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/impl/DataContractContext.java b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/impl/DataContractContext.java index f78bb96d..ae923b4e 100644 --- a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/impl/DataContractContext.java +++ b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/impl/DataContractContext.java @@ -17,7 +17,7 @@ import com.jd.blockchain.binaryproto.DataContractEncoder; import com.jd.blockchain.binaryproto.DataContractException; import com.jd.blockchain.binaryproto.DataField; import com.jd.blockchain.binaryproto.DataSpecification; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.binaryproto.EnumContract; import com.jd.blockchain.binaryproto.EnumField; import com.jd.blockchain.binaryproto.EnumSpecification; @@ -65,23 +65,23 @@ public class DataContractContext { private static Map, EnumSpecification> enumContractSpecMap = new ConcurrentHashMap<>(); - private static Map, ValueConverter>> primitiveTypeConverters = new HashMap<>(); + private static Map, ValueConverter>> primitiveTypeConverters = new HashMap<>(); static { - addConverterMapping(DataType.BOOLEAN, boolean.class, new BoolConverter()); - addConverterMapping(DataType.BOOLEAN, Boolean.class, new BoolWrapperConverter()); - addConverterMapping(DataType.INT8, byte.class, new Int8ByteConverter()); - addConverterMapping(DataType.INT8, Byte.class, new Int8ByteWrapperConverter()); - addConverterMapping(DataType.INT16, short.class, new Int16ShortConverter()); - addConverterMapping(DataType.INT16, Short.class, new Int16ShortWrapperConverter()); - addConverterMapping(DataType.INT16, char.class, new Int16CharConverter()); - addConverterMapping(DataType.INT16, Character.class, new Int16CharWrapperConverter()); - addConverterMapping(DataType.INT32, int.class, new Int32IntConverter()); - addConverterMapping(DataType.INT32, Integer.class, new Int32IntWrapperConverter()); - addConverterMapping(DataType.INT64, long.class, new Int64LongConverter()); - addConverterMapping(DataType.INT64, Long.class, new Int64LongWrapperConverter()); - addConverterMapping(DataType.TEXT, String.class, new StringValueConverter()); - addConverterMapping(DataType.BYTES, byte[].class, new BytesValueConverter()); + addConverterMapping(PrimitiveType.BOOLEAN, boolean.class, new BoolConverter()); + addConverterMapping(PrimitiveType.BOOLEAN, Boolean.class, new BoolWrapperConverter()); + addConverterMapping(PrimitiveType.INT8, byte.class, new Int8ByteConverter()); + addConverterMapping(PrimitiveType.INT8, Byte.class, new Int8ByteWrapperConverter()); + addConverterMapping(PrimitiveType.INT16, short.class, new Int16ShortConverter()); + addConverterMapping(PrimitiveType.INT16, Short.class, new Int16ShortWrapperConverter()); + addConverterMapping(PrimitiveType.INT16, char.class, new Int16CharConverter()); + addConverterMapping(PrimitiveType.INT16, Character.class, new Int16CharWrapperConverter()); + addConverterMapping(PrimitiveType.INT32, int.class, new Int32IntConverter()); + addConverterMapping(PrimitiveType.INT32, Integer.class, new Int32IntWrapperConverter()); + addConverterMapping(PrimitiveType.INT64, long.class, new Int64LongConverter()); + addConverterMapping(PrimitiveType.INT64, Long.class, new Int64LongWrapperConverter()); + addConverterMapping(PrimitiveType.TEXT, String.class, new StringValueConverter()); + addConverterMapping(PrimitiveType.BYTES, byte[].class, new BytesValueConverter()); ENCODER_LOOKUP = new DataContractEncoderLookup() { @Override @@ -101,7 +101,7 @@ public class DataContractContext { }; } - private static void addConverterMapping(DataType protocalType, Class javaType, ValueConverter converter) { + private static void addConverterMapping(PrimitiveType protocalType, Class javaType, ValueConverter converter) { Map, ValueConverter> converterMap = primitiveTypeConverters.get(protocalType); if (converterMap == null) { converterMap = new HashMap<>(); @@ -110,14 +110,14 @@ public class DataContractContext { converterMap.put(javaType, converter); } - private static ValueConverter getPrimitiveTypeConverter(DataType protocalType, Class javaType) { + private static ValueConverter getPrimitiveTypeConverter(PrimitiveType protocalType, Class javaType) { Map, ValueConverter> converterMap = primitiveTypeConverters.get(protocalType); if (converterMap != null) { ValueConverter converter = converterMap.get(javaType); if (converter != null) { return converter; } - if (DataType.BYTES == protocalType && BytesSerializable.class.isAssignableFrom(javaType)) { + if (PrimitiveType.BYTES == protocalType && BytesSerializable.class.isAssignableFrom(javaType)) { converter = new BytesSerializableValueConverter(javaType); converterMap.put(javaType, converter); return converter; @@ -366,7 +366,7 @@ public class DataContractContext { EnumSpecificationInfo enumSpec = (EnumSpecificationInfo) fieldInfo.fieldSpec.getRefEnum(); int[] values = enumSpec.getItemValues(); Object[] constants = enumSpec.getConstants(); - DataType codeType = enumSpec.getValueType(); + PrimitiveType codeType = enumSpec.getValueType(); ValueConverter baseConverter = getPrimitiveTypeConverter(codeType, enumSpec.getDataType()); @@ -410,8 +410,8 @@ public class DataContractContext { private static BinarySliceSpec buildSlice(FieldSpecInfo fieldSpec) { boolean fixed = false; int len = -1; - DataType fixedValueType = null; - if (fieldSpec.getPrimitiveType() != null && fieldSpec.getPrimitiveType() != DataType.NIL) { + PrimitiveType fixedValueType = null; + if (fieldSpec.getPrimitiveType() != null && fieldSpec.getPrimitiveType() != PrimitiveType.NIL) { fixedValueType = fieldSpec.getPrimitiveType(); } else if (fieldSpec.getRefEnum() != null) { fixedValueType = fieldSpec.getRefEnum().getValueType(); @@ -546,7 +546,7 @@ public class DataContractContext { } int maxSize = annoField.maxSize(); - DataType primitiveType = annoField.primitiveType(); + PrimitiveType primitiveType = annoField.primitiveType(); if (primitiveType != null) { primitiveType = verifyPrimitiveType(primitiveType, dataType, accessor); } @@ -650,7 +650,7 @@ public class DataContractContext { * @param dataType * @return */ - private static DataType verifyPrimitiveType(DataType primitiveType, Class dataType, Method accessor) { + private static PrimitiveType verifyPrimitiveType(PrimitiveType primitiveType, Class dataType, Method accessor) { switch (primitiveType) { case NIL: return null; @@ -762,6 +762,7 @@ public class DataContractContext { public Method reader; + @SuppressWarnings("unused") public DataField annoField; public FieldDeclaredInfo(Method accessor, DataField annoField, FieldSpecInfo fieldSpec) { diff --git a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/impl/DataContractSpecification.java b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/impl/DataContractSpecification.java index 8a2d05b1..d13e3242 100644 --- a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/impl/DataContractSpecification.java +++ b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/impl/DataContractSpecification.java @@ -1,6 +1,5 @@ package com.jd.blockchain.binaryproto.impl; -import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; import java.util.List; diff --git a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/impl/EnumSpecificationInfo.java b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/impl/EnumSpecificationInfo.java index 244dfd61..3a67a022 100644 --- a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/impl/EnumSpecificationInfo.java +++ b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/impl/EnumSpecificationInfo.java @@ -3,7 +3,7 @@ package com.jd.blockchain.binaryproto.impl; import java.util.LinkedHashSet; import java.util.Set; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.binaryproto.EnumSpecification; /** @@ -11,7 +11,7 @@ import com.jd.blockchain.binaryproto.EnumSpecification; */ public class EnumSpecificationInfo implements EnumSpecification { - private DataType valueType; + private PrimitiveType valueType; private Class dataType; @@ -24,7 +24,7 @@ public class EnumSpecificationInfo implements EnumSpecification { // private Map itemCodeMapping = new HashMap<>(); // private Map codeItemMapping = new HashMap<>(); - public EnumSpecificationInfo(DataType valueType, int code, long version, String name, String description, Class dataType) { + public EnumSpecificationInfo(PrimitiveType valueType, int code, long version, String name, String description, Class dataType) { this.valueType = valueType; this.code = code; this.version = version; @@ -54,7 +54,7 @@ public class EnumSpecificationInfo implements EnumSpecification { } @Override - public DataType getValueType() { + public PrimitiveType getValueType() { return this.valueType; } diff --git a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/impl/EnumValueConverter.java b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/impl/EnumValueConverter.java index 79d0ec25..34e3cdf2 100644 --- a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/impl/EnumValueConverter.java +++ b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/impl/EnumValueConverter.java @@ -1,14 +1,14 @@ package com.jd.blockchain.binaryproto.impl; import com.jd.blockchain.binaryproto.DataContractException; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.utils.io.BytesSlice; public class EnumValueConverter implements FixedValueConverter { private Class enumType; - private DataType codeType; + private PrimitiveType codeType; private int[] values; @@ -16,7 +16,7 @@ public class EnumValueConverter implements FixedValueConverter { private FixedValueConverter valueConverter; - public EnumValueConverter(Class enumType, DataType codeType, int[] values, Object[] constants, FixedValueConverter valueConverter) { + public EnumValueConverter(Class enumType, PrimitiveType codeType, int[] values, Object[] constants, FixedValueConverter valueConverter) { this.enumType = enumType; this.values = values; this.constants = constants; diff --git a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/impl/FieldSpecInfo.java b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/impl/FieldSpecInfo.java index 3018d690..5a9c7c6d 100644 --- a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/impl/FieldSpecInfo.java +++ b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/impl/FieldSpecInfo.java @@ -1,7 +1,7 @@ package com.jd.blockchain.binaryproto.impl; import com.jd.blockchain.binaryproto.DataSpecification; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.binaryproto.EnumSpecification; import com.jd.blockchain.binaryproto.FieldSpec; @@ -15,7 +15,7 @@ public class FieldSpecInfo implements FieldSpec { private boolean repeatable; - private DataType primitiveType; + private PrimitiveType primitiveType; private EnumSpecification enumSpec; @@ -27,7 +27,7 @@ public class FieldSpecInfo implements FieldSpec { private boolean isGenericContract = false; - public FieldSpecInfo(int order, String name, String decription, DataType primitiveType, boolean repeatable, + public FieldSpecInfo(int order, String name, String decription, PrimitiveType primitiveType, boolean repeatable, int maxSize, Class dataType) { if (primitiveType == null) { throw new IllegalArgumentException("primitiveType is null!"); @@ -71,7 +71,7 @@ public class FieldSpecInfo implements FieldSpec { } @Override - public DataType getPrimitiveType() { + public PrimitiveType getPrimitiveType() { return primitiveType; } diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/CompositeDatas.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/CompositeDatas.java index 56873e70..b1c9c95e 100644 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/CompositeDatas.java +++ b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/CompositeDatas.java @@ -2,7 +2,7 @@ package test.com.jd.blockchain.binaryproto; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; /** * Created by zhangshuang3 on 2018/11/30. @@ -10,7 +10,7 @@ import com.jd.blockchain.binaryproto.DataType; @DataContract(code = 0xc, name = "CompositeDatas", description = "") public interface CompositeDatas { - @DataField(order = 1, primitiveType = DataType.BOOLEAN) + @DataField(order = 1, primitiveType = PrimitiveType.BOOLEAN) boolean isEnable(); @DataField(order = 2, refEnum = true) @@ -22,7 +22,7 @@ public interface CompositeDatas { @DataField(order=4, list = true, refContract=true, genericContract = true) Operation[] getOperations(); - @DataField(order = 5, primitiveType = DataType.INT16) + @DataField(order = 5, primitiveType = PrimitiveType.INT16) short getAge(); } diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/EnumLevel.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/EnumLevel.java index 8c8a1885..54c94f32 100644 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/EnumLevel.java +++ b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/EnumLevel.java @@ -1,6 +1,6 @@ package test.com.jd.blockchain.binaryproto; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.binaryproto.EnumContract; import com.jd.blockchain.binaryproto.EnumField; @@ -14,7 +14,7 @@ public enum EnumLevel { V2((byte) 2); - @EnumField(type= DataType.INT8) + @EnumField(type= PrimitiveType.INT8) public final byte CODE; public byte getCode() { return CODE; diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/FieldOrderConflictedDatas.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/FieldOrderConflictedDatas.java index 9fc70c04..428b74cf 100644 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/FieldOrderConflictedDatas.java +++ b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/FieldOrderConflictedDatas.java @@ -2,7 +2,7 @@ package test.com.jd.blockchain.binaryproto; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; /** * Created by zhangshuang3 on 2018/7/11. @@ -10,22 +10,22 @@ import com.jd.blockchain.binaryproto.DataType; @DataContract(code = 0x06, name = "Primitive", description = "") public interface FieldOrderConflictedDatas { - @DataField(order = 2, primitiveType = DataType.BOOLEAN) + @DataField(order = 2, primitiveType = PrimitiveType.BOOLEAN) boolean isEnable(); - @DataField(order = 3, primitiveType = DataType.INT8) + @DataField(order = 3, primitiveType = PrimitiveType.INT8) byte isBoy(); - @DataField(order = 7, primitiveType = DataType.INT16) + @DataField(order = 7, primitiveType = PrimitiveType.INT16) short getAge(); - @DataField(order = -1, primitiveType = DataType.INT32) + @DataField(order = -1, primitiveType = PrimitiveType.INT32) int getId(); - @DataField(order = 6, primitiveType = DataType.TEXT) + @DataField(order = 6, primitiveType = PrimitiveType.TEXT) String getName(); - @DataField(order = 7, primitiveType = DataType.INT64) + @DataField(order = 7, primitiveType = PrimitiveType.INT64) long getValue(); diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/GenericRefContractDatasImpl.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/GenericRefContractDatasImpl.java index 774dd5c7..d257c612 100644 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/GenericRefContractDatasImpl.java +++ b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/GenericRefContractDatasImpl.java @@ -1,8 +1,6 @@ package test.com.jd.blockchain.binaryproto; import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; import java.util.List; /** diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/PrimitiveDatas.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/PrimitiveDatas.java index 192fea7f..30848834 100644 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/PrimitiveDatas.java +++ b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/PrimitiveDatas.java @@ -2,7 +2,7 @@ package test.com.jd.blockchain.binaryproto; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.utils.Bytes; import com.jd.blockchain.utils.net.NetworkAddress; @@ -12,37 +12,37 @@ import com.jd.blockchain.utils.net.NetworkAddress; @DataContract(code = 0x05, name = "Primitive", description = "") public interface PrimitiveDatas { - @DataField(order = 2, primitiveType = DataType.BOOLEAN) + @DataField(order = 2, primitiveType = PrimitiveType.BOOLEAN) boolean isEnable(); - @DataField(order = 3, primitiveType = DataType.INT8) + @DataField(order = 3, primitiveType = PrimitiveType.INT8) byte isBoy(); - @DataField(order = 4, primitiveType = DataType.INT16) + @DataField(order = 4, primitiveType = PrimitiveType.INT16) short getAge(); - @DataField(order = -1, primitiveType = DataType.INT32) + @DataField(order = -1, primitiveType = PrimitiveType.INT32) int getId(); - @DataField(order = 6, primitiveType = DataType.TEXT) + @DataField(order = 6, primitiveType = PrimitiveType.TEXT) String getName(); - @DataField(order = 7, primitiveType = DataType.INT64) + @DataField(order = 7, primitiveType = PrimitiveType.INT64) long getValue(); - @DataField(order = 12, primitiveType = DataType.BYTES) + @DataField(order = 12, primitiveType = PrimitiveType.BYTES) byte[] getImage(); - @DataField(order = 100, primitiveType = DataType.INT16) + @DataField(order = 100, primitiveType = PrimitiveType.INT16) char getFlag(); - @DataField(order = 200, primitiveType = DataType.BYTES) + @DataField(order = 200, primitiveType = PrimitiveType.BYTES) Bytes getConfig(); - @DataField(order = 201, primitiveType = DataType.BYTES) + @DataField(order = 201, primitiveType = PrimitiveType.BYTES) Bytes getSetting(); - @DataField(order = 202, primitiveType = DataType.BYTES) + @DataField(order = 202, primitiveType = PrimitiveType.BYTES) NetworkAddress getNetworkAddr(); } diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/PrimitiveDatasImpl.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/PrimitiveDatasImpl.java index ec0f6a4b..b505fb34 100644 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/PrimitiveDatasImpl.java +++ b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/PrimitiveDatasImpl.java @@ -1,7 +1,5 @@ package test.com.jd.blockchain.binaryproto; -import org.omg.CORBA.PUBLIC_MEMBER; - import com.jd.blockchain.utils.Bytes; import com.jd.blockchain.utils.net.NetworkAddress; diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/SubOperation.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/SubOperation.java index b6903cb0..6760bdcb 100644 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/SubOperation.java +++ b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/SubOperation.java @@ -2,7 +2,7 @@ package test.com.jd.blockchain.binaryproto; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; /** * Created by zhangshuang3 on 2018/11/29. @@ -10,7 +10,7 @@ import com.jd.blockchain.binaryproto.DataType; @DataContract(code = 0xa, name = "SubOperation", description = "") public interface SubOperation extends Operation { - @DataField(order=1, primitiveType = DataType.TEXT) + @DataField(order=1, primitiveType = PrimitiveType.TEXT) String getUserName(); } diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/Address.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/Address.java deleted file mode 100644 index 013d414e..00000000 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/Address.java +++ /dev/null @@ -1,16 +0,0 @@ -//package test.com.jd.blockchain.binaryproto.contract; -// -//import com.jd.blockchain.binaryproto.DataContract; -//import com.jd.blockchain.binaryproto.DataField; -//import com.jd.blockchain.binaryproto.ValueType; -// -//@DataContract(code=0x02, name="Address" , description="") -//public interface Address { -// -// @DataField(order=1, primitiveType=ValueType.TEXT) -// String getStreet(); -// -// @DataField(order=2, primitiveType=ValueType.INT32) -// int getNumber(); -// -//} diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/AddressCodeDuplicate.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/AddressCodeDuplicate.java index f5017950..9e1ac6cc 100644 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/AddressCodeDuplicate.java +++ b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/AddressCodeDuplicate.java @@ -2,7 +2,7 @@ package test.com.jd.blockchain.binaryproto.contract; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; /** * Created by zhangshuang3 on 2018/7/9. @@ -10,10 +10,10 @@ import com.jd.blockchain.binaryproto.DataType; @DataContract(code=0x02, name="Address" , description="") public interface AddressCodeDuplicate { - @DataField(order=1, primitiveType= DataType.TEXT) + @DataField(order=1, primitiveType= PrimitiveType.TEXT) String getStreet(); - @DataField(order=2, primitiveType=DataType.INT32) + @DataField(order=2, primitiveType=PrimitiveType.INT32) int getNumber(); } \ No newline at end of file diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/AddressOrderDuplicate.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/AddressOrderDuplicate.java index afea177f..f5b33e66 100644 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/AddressOrderDuplicate.java +++ b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/AddressOrderDuplicate.java @@ -2,7 +2,7 @@ package test.com.jd.blockchain.binaryproto.contract; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; /** * Created by zhangshuang3 on 2018/7/9. @@ -10,10 +10,10 @@ import com.jd.blockchain.binaryproto.DataType; @DataContract(code=0x03, name="Address" , description="") public interface AddressOrderDuplicate { - @DataField(order=1, primitiveType= DataType.TEXT) + @DataField(order=1, primitiveType= PrimitiveType.TEXT) String getStreet(); - @DataField(order=1, primitiveType=DataType.INT32) + @DataField(order=1, primitiveType=PrimitiveType.INT32) int getNumber(); } diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/Array.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/Array.java index 534ff67d..6eaf8c1d 100644 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/Array.java +++ b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/Array.java @@ -2,7 +2,7 @@ package test.com.jd.blockchain.binaryproto.contract; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; /** * Created by zhangshuang3 on 2018/7/11. @@ -10,16 +10,16 @@ import com.jd.blockchain.binaryproto.DataType; @DataContract(code=0x08, name="Array" , description="") public interface Array { - @DataField(order=1, primitiveType= DataType.INT32, list=true) + @DataField(order=1, primitiveType= PrimitiveType.INT32, list=true) int[] getScores(); - @DataField(order=2, primitiveType=DataType.TEXT, list=true) + @DataField(order=2, primitiveType=PrimitiveType.TEXT, list=true) String[] getFeatures(); - @DataField(order=3, primitiveType=DataType.BYTES) + @DataField(order=3, primitiveType=PrimitiveType.BYTES) byte[] getFamilyMemberAges(); - @DataField(order=4, primitiveType=DataType.INT64, list=true) + @DataField(order=4, primitiveType=PrimitiveType.INT64, list=true) long[] getFamilyMemberIds(); } \ No newline at end of file diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/CryptoAlgorithm.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/CryptoAlgorithm.java deleted file mode 100644 index d4900959..00000000 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/CryptoAlgorithm.java +++ /dev/null @@ -1,158 +0,0 @@ -//package test.com.jd.blockchain.binaryproto.contract; -// -//import com.jd.blockchain.binaryproto.EnumContract; -//import com.jd.blockchain.binaryproto.EnumField; -//import com.jd.blockchain.binaryproto.ValueType; -//import com.jd.blockchain.crypto.CryptoAlgorithmType; -//import my.utils.io.BytesUtils; -// -///** -// * Created by zhangshuang3 on 2018/7/30. -// */ -//@EnumContract(code=0x0102) -//public enum CryptoAlgorithm { -// -// // Hash 类; -// // SHA_128(CryptoAlgorithmMask.HASH, (byte) 0x01, false, false), -// -// SHA_256(CryptoAlgorithmType.HASH, (byte) 0x01, false, false), -// -// RIPLE160(CryptoAlgorithmType.HASH, (byte) 0x02, false, false), -// -// SM3(CryptoAlgorithmType.HASH, (byte) 0x03, false, false), -// -// // 非对称签名/加密算法; -// -// /** -// * RSA 签名算法;可签名,可加密; -// */ -// RSA(CryptoAlgorithmType.ASYMMETRIC, (byte) 0x01, true, true), -// -// /** -// * ED25519 签名算法;只用于签名,没有加密特性; -// */ -// ED25519(CryptoAlgorithmType.ASYMMETRIC, (byte) 0x02, true, false), -// -// /** -// * ECDSA 签名算法;只用于签名,没有加密特性;??? -// */ -// ECDSA(CryptoAlgorithmType.ASYMMETRIC, (byte) 0x03, true, false), -// -// /** -// * 国密 SM2 算法;可签名,可加密; -// */ -// SM2(CryptoAlgorithmType.ASYMMETRIC, (byte) 0x04, true, true), -// -// // 对称加密; -// /** -// * AES 算法;可加密; -// */ -// AES(CryptoAlgorithmType.SYMMETRIC, (byte) 0x01, false, true), -// -// SM4(CryptoAlgorithmType.SYMMETRIC, (byte) 0x02, false, true), -// -// // 随机性; -// /** -// * ?????  一种随机数算法,待定; -// */ -// JAVA_SECURE(CryptoAlgorithmType.RANDOM, (byte) 0x01, false, false); -// -// /** -// * 密码算法的代号;
-// * 注:只占16位; -// */ -// @EnumField(type = ValueType.INT8) -// public final byte CODE; -// -// private final boolean signable; -// -// private final boolean encryptable; -// -// private CryptoAlgorithm(byte algType, byte algId, boolean signable, boolean encryptable) { -// this.CODE = (byte) (algType | algId); -// this.signable = signable; -// this.encryptable = encryptable; -// } -// -// /** -// * 是否属于摘要算法; -// * -// * @return -// */ -// public boolean isHash() { -// return (CODE & CryptoAlgorithmType.HASH) == CryptoAlgorithmType.HASH; -// } -// -// /** -// * 是否属于非对称密码算法; -// * -// * @return -// */ -// public boolean isAsymmetric() { -// return (CODE & CryptoAlgorithmType.ASYMMETRIC) == CryptoAlgorithmType.ASYMMETRIC; -// } -// -// /** -// * 是否属于对称密码算法; -// * -// * @return -// */ -// public boolean isSymmetric() { -// return (CODE & CryptoAlgorithmType.SYMMETRIC) == CryptoAlgorithmType.SYMMETRIC; -// } -// -// /** -// * 是否属于随机数算法; -// * -// * @return -// */ -// public boolean isRandom() { -// return (CODE & CryptoAlgorithmType.RANDOM) == CryptoAlgorithmType.RANDOM; -// } -// -// /** -// * 是否支持签名操作; -// * -// * @return -// */ -// public boolean isSignable() { -// return signable; -// } -// -// /** -// * 是否支持加密操作; -// * -// * @return -// */ -// public boolean isEncryptable() { -// return encryptable; -// } -// -// /** -// * 返回指定编码对应的枚举实例;
-// * -// * 如果不存在,则返回 null; -// * -// * @param code -// * @return -// */ -// public static CryptoAlgorithm valueOf(byte code) { -// for (CryptoAlgorithm alg : CryptoAlgorithm.values()) { -// if (alg.CODE == code) { -// return alg; -// } -// } -// throw new IllegalArgumentException("CryptoAlgorithm doesn't support enum code[" + code + "]!"); -// } -// -// // /** -// // * @return -// // */ -// // public byte[] toBytes() { -// // byte[] bytes = BytesUtils.toBytes(CODE); -// // byte[] result = new byte[BYTES_SIZE]; -// // System.arraycopy(bytes, 2, result, 0, 2); -// // // TODO: 只返回最后2个字节; -// // return result; -// // } -//} \ No newline at end of file diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/CryptoSetting.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/CryptoSetting.java deleted file mode 100644 index 35662d50..00000000 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/CryptoSetting.java +++ /dev/null @@ -1,41 +0,0 @@ -//package test.com.jd.blockchain.binaryproto.contract; -// -//import com.jd.blockchain.binaryproto.DataContract; -//import com.jd.blockchain.binaryproto.DataField; -//import com.jd.blockchain.binaryproto.ValueType; -// -///** -// * Created by zhangshuang3 on 2018/7/30. -// */ -//@DataContract(code=0x0d, name="CryptoSetting", description = "Crypto setting") -//public interface CryptoSetting { -// -// /** -// * 系统中使用的 Hash 算法;
-// * -// * 对于历史数据,如果它未发生更改,则总是按照该数据产生时采用的算法进行校验,即使当时指定的Hash算法和当前的不同;
-// * -// * 如果对数据进行了更新,则采用新的 Hash 算法来计算生成完整性证明; -// * -// * @return -// */ -// @DataField(order=1, refEnum=true) -// public HashAlgorithm getHashAlgorithm(); -// -// @DataField(order=2, refEnum=true) -// public CryptoAlgorithm getHashAlgorithm1(); -// -// /** -// * 当有完整性证明的数据被从持久化介质中加载时,是否对其进行完整性校验(重新计算 hash 比对是否一致);
-// * -// * 如果为 true ,则自动进行校验,如果校验失败,会引发异常;
-// * -// * 注意:开启此选项将对性能会产生负面影响,因此使用者需要在性能和数据安全性之间做出权衡; -// * -// * @return -// */ -// @DataField(order=3, primitiveType= ValueType.BOOLEAN) -// public boolean getAutoVerifyHash();//func name is getxxxxx type -// -//} -// diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/HashAlgorithm.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/HashAlgorithm.java deleted file mode 100644 index 7f8296ff..00000000 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/HashAlgorithm.java +++ /dev/null @@ -1,50 +0,0 @@ -//package test.com.jd.blockchain.binaryproto.contract; -// -//import com.jd.blockchain.binaryproto.EnumContract; -//import com.jd.blockchain.binaryproto.EnumField; -//import com.jd.blockchain.binaryproto.ValueType; -// -///** -// * Created by zhangshuang3 on 2018/7/30. -// */ -//@EnumContract(code=0x0101) -//public enum HashAlgorithm { -// -// RIPE160((byte) 1), -// -// SHA256((byte) 2), -// -// SM3((byte) 4); -// -// @EnumField(type = ValueType.INT8) -// public final byte CODE; -// -// private HashAlgorithm(byte algorithm) { -// CODE = algorithm; -// } -// -// public byte getAlgorithm() { -// return CODE; -// } -// -// public static HashAlgorithm valueOf(byte algorithm) { -// for (HashAlgorithm hashAlgorithm : HashAlgorithm.values()) { -// if (hashAlgorithm.CODE == algorithm) { -// return hashAlgorithm; -// } -// } -// throw new IllegalArgumentException("Unsupported hash algorithm [" + algorithm + "]!"); -// } -// -// public static void checkHashAlgorithm(HashAlgorithm algorithm) { -// switch (algorithm) { -// case RIPE160: -// break; -// case SHA256: -// break; -// default: -// throw new IllegalArgumentException("Unsupported hash algorithm [" + algorithm + "]!"); -// } -// } -//} -// diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/LedgerBlock.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/LedgerBlock.java deleted file mode 100644 index 74e206be..00000000 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/LedgerBlock.java +++ /dev/null @@ -1,28 +0,0 @@ -//package test.com.jd.blockchain.binaryproto.contract; -// -//import com.jd.blockchain.binaryproto.DataContract; -//import com.jd.blockchain.binaryproto.DataField; -//import com.jd.blockchain.binaryproto.ValueType; -//import com.jd.blockchain.crypto.hash.HashDigest; -// -///** -// * Created by zhangshuang3 on 2018/7/30. -// */ -//@DataContract(code=0x12, name="LedgerBlock", description ="LedgerBlock") -//public interface LedgerBlock extends LedgerDataSnapshot{ -// -// @DataField(order=1, refHashDigest=true) -// HashDigest getHash(); -// -// @DataField(order=2, refHashDigest=true) -// HashDigest getPreviousHash(); -// -// @DataField(order=3, refHashDigest=true) -// HashDigest getLedgerHash(); -// -// @DataField(order=4, primitiveType=ValueType.INT64) -// long getHeight(); -// -// @DataField(order=5, refHashDigest=true) -// HashDigest getTransactionSetHash(); -//} \ No newline at end of file diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/LedgerDataSnapshot.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/LedgerDataSnapshot.java deleted file mode 100644 index 683e13f4..00000000 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/LedgerDataSnapshot.java +++ /dev/null @@ -1,34 +0,0 @@ -//package test.com.jd.blockchain.binaryproto.contract; -// -//import com.jd.blockchain.binaryproto.DataContract; -//import com.jd.blockchain.binaryproto.DataField; -//import com.jd.blockchain.crypto.hash.HashDigest; -// -///** -// * Created by zhangshuang3 on 2018/7/30. -// */ -//@DataContract(code=0x11, name="LedgerDataSnapshot", description ="LedgerDataSnapshot") -//public interface LedgerDataSnapshot { -// -// @DataField(order=1, refHashDigest=true) -// HashDigest getAdminAccountHash(); -// -// @DataField(order=2, refHashDigest=true) -// HashDigest getUserAccountSetHash(); -// -// @DataField(order=3, refHashDigest=true) -// HashDigest getUserPrivilegeHash(); -// -// @DataField(order=4, refHashDigest=true) -// HashDigest getDataAccountSetHash(); -// -// @DataField(order=5, refHashDigest=true) -// HashDigest getDataPrivilegeHash(); -// -// @DataField(order=6, refHashDigest=true) -// HashDigest getContractAccountSetHash(); -// -// @DataField(order=7, refHashDigest=true) -// HashDigest getContractPrivilegeHash(); -// -//} diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/LedgerMetadata.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/LedgerMetadata.java deleted file mode 100644 index d40babdf..00000000 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/LedgerMetadata.java +++ /dev/null @@ -1,25 +0,0 @@ -//package test.com.jd.blockchain.binaryproto.contract; -// -//import com.jd.blockchain.binaryproto.DataContract; -//import com.jd.blockchain.binaryproto.DataField; -//import com.jd.blockchain.binaryproto.ValueType; -// -///** -// * Created by zhangshuang3 on 2018/7/30. -// */ -//@DataContract(code=0x0b, name="LedgerMetadata", description = "Ledger meta data") -//public interface LedgerMetadata { -// -// @DataField(order=1, primitiveType= ValueType.INT8, list=true) -// byte[] getSeed(); -// -// @DataField(order = 2, refContract=true) -// LedgerSetting getSetting(); -// -// @DataField(order=3, primitiveType=ValueType.INT8, list=true) -// byte[] getPrivilegesHash(); -// -// @DataField(order=4, primitiveType=ValueType.INT8, list=true) -// byte[] getParticipantsHash(); -// -//} \ No newline at end of file diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/LedgerSetting.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/LedgerSetting.java deleted file mode 100644 index 6f2f383b..00000000 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/LedgerSetting.java +++ /dev/null @@ -1,21 +0,0 @@ -//package test.com.jd.blockchain.binaryproto.contract; -// -//import com.jd.blockchain.binaryproto.DataContract; -//import com.jd.blockchain.binaryproto.DataField; -// -///** -// * Created by zhangshuang3 on 2018/7/30. -// */ -//@DataContract(code=0x0c, name="LedgerSetting", description = "Ledger setting") -//public interface LedgerSetting { -// -// //@DataField(order=1, refContract=true) -// //ConsensusSetting getConsensusSetting(); -// -// @DataField(order=2, refContract=true) -// CryptoSetting getCryptoSetting(); -// -// @DataField(order=3, refContract=true) -// PrivilegeModelSetting getPrivilegesModelSetting(); -// -//} \ No newline at end of file diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/Level.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/Level.java index 6efb4935..d7e1c676 100644 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/Level.java +++ b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/Level.java @@ -1,6 +1,6 @@ package test.com.jd.blockchain.binaryproto.contract; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.binaryproto.EnumContract; import com.jd.blockchain.binaryproto.EnumField; @@ -11,7 +11,7 @@ public enum Level { V2((byte) 2); - @EnumField(type=DataType.INT8) + @EnumField(type=PrimitiveType.INT8) public final byte CODE; public byte getCode() { return CODE; diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/Privilege.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/Privilege.java deleted file mode 100644 index 3b1d53de..00000000 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/Privilege.java +++ /dev/null @@ -1,18 +0,0 @@ -//package test.com.jd.blockchain.binaryproto.contract; -// -//import com.jd.blockchain.binaryproto.DataContract; -//import com.jd.blockchain.binaryproto.DataField; -//import com.jd.blockchain.binaryproto.ValueType; -// -///** -// * Created by zhangshuang3 on 2018/7/30. -// */ -//@DataContract(code=0x10, name="Privilege", description ="Privilege") -//public interface Privilege { -// -// //SortedSet getOpCodes(); implement later -// -// @DataField(order=2, primitiveType= ValueType.INT64) -// long getVersion(); -// -//} \ No newline at end of file diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/PrivilegeModelSetting.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/PrivilegeModelSetting.java index c2102279..52586c94 100644 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/PrivilegeModelSetting.java +++ b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/PrivilegeModelSetting.java @@ -2,7 +2,7 @@ package test.com.jd.blockchain.binaryproto.contract; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; /** * Created by zhangshuang3 on 2018/7/30. @@ -10,7 +10,7 @@ import com.jd.blockchain.binaryproto.DataType; @DataContract(code=0x0f, name="PrivilegeModelSetting", description ="Privilege Model setting") public interface PrivilegeModelSetting { - @DataField(order=1, primitiveType= DataType.INT64) + @DataField(order=1, primitiveType= PrimitiveType.INT64) long getLatestVersion(); //@DataField(order=2, refContract=true) diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/RefContract.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/RefContract.java deleted file mode 100644 index 0decffb1..00000000 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/RefContract.java +++ /dev/null @@ -1,20 +0,0 @@ -//package test.com.jd.blockchain.binaryproto.contract; - -//import com.jd.blockchain.binaryproto.DataContract; -//import com.jd.blockchain.binaryproto.DataField; - -/** - * Created by zhangshuang3 on 2018/7/11. - */ -/* -@DataContract(code=0x07, name="RefContract" , description="") -public interface RefContract { - - @DataField(order=1, refContract=true) - Address getAddress(); - - @DataField(order=2, refContract=true) - Address getAddress1(); - -} -*/ \ No newline at end of file diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/Student.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/Student.java deleted file mode 100644 index 29d6dae5..00000000 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/Student.java +++ /dev/null @@ -1,41 +0,0 @@ -//package test.com.jd.blockchain.binaryproto.contract; - -//import com.jd.blockchain.binaryproto.DataContract; -//import com.jd.blockchain.binaryproto.DataField; -//import com.jd.blockchain.binaryproto.ValueType; - -/* -@DataContract(code=0x01, name="测试数据契约1", description = "用于测试的数据契约") -public interface Student { - - @DataField(order=1, primitiveType=ValueType.INT32) - int getId(); - - @DataField(order=2, primitiveType=ValueType.INT8) - byte getFamilyMemberNum(); - - @DataField(order=3, primitiveType=ValueType.TEXT) - String getName(); - - @DataField(order=4, primitiveType=ValueType.INT16) - short getAge(); - - @DataField(order=5, refEnum=true) - Level getLevel(); - - @DataField(order=6, refContract=true) - Address getAddress(); - - @DataField(order=7, primitiveType=ValueType.INT32, list=true) - int[] getScores(); - - @DataField(order=8, primitiveType=ValueType.TEXT, list=true) - String[] getFeatures(); - - @DataField(order=9, primitiveType=ValueType.INT8, list=true) - byte[] getFamilyMemberAges(); - - @DataField(order=10, primitiveType=ValueType.INT64, list=true) - long[] getFamilyMemberIds(); -} -*/ \ No newline at end of file diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/StudentInvert.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/StudentInvert.java deleted file mode 100644 index b82f23c1..00000000 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/StudentInvert.java +++ /dev/null @@ -1,44 +0,0 @@ -//package test.com.jd.blockchain.binaryproto.contract; - -//import com.jd.blockchain.binaryproto.DataContract; -//import com.jd.blockchain.binaryproto.DataField; -//import com.jd.blockchain.binaryproto.ValueType; - -/** - * Created by zhangshuang3 on 2018/7/9. - */ -/* -@DataContract(code=0x04, name="测试数据契约1", description = "用于测试的数据契约") -public interface StudentInvert { - - @DataField(order=10, primitiveType=ValueType.INT64, list=true) - long[] getFamilyMemberIds(); - - @DataField(order=9, primitiveType=ValueType.INT8, list=true) - byte[] getFamilyMemberAges(); - - @DataField(order=8, primitiveType=ValueType.TEXT, list=true) - String[] getFeatures(); - - @DataField(order=7, primitiveType=ValueType.INT32, list=true) - int[] getScores(); - - @DataField(order=6, refContract=true) - Address getAddress(); - - @DataField(order=5, refEnum=true) - Level getLevel(); - - @DataField(order=4, primitiveType=ValueType.INT16) - short getAge(); - - @DataField(order=3, primitiveType=ValueType.TEXT) - String getName(); - - @DataField(order=2, primitiveType=ValueType.INT8) - byte getFamilyMemberNum(); - - @DataField(order=1, primitiveType= ValueType.INT32) - int getId(); -} -*/ \ No newline at end of file diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/User.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/User.java deleted file mode 100644 index fa6adef1..00000000 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/User.java +++ /dev/null @@ -1,31 +0,0 @@ -//package test.com.jd.blockchain.binaryproto.contract; - -//import com.jd.blockchain.binaryproto.DataContract; -//import com.jd.blockchain.binaryproto.DataField; -//import com.jd.blockchain.binaryproto.ValueType; -//import com.jd.blockchain.crypto.asymmetric.PubKey; -//import my.utils.io.ByteArray; - -/** - * Created by zhangshuang3 on 2018/7/25. - */ -/* -@DataContract(code=0x09, name="UserAccount", description = "用户账户") -public interface User { - - @DataField(order=1, primitiveType= ValueType.TEXT) - String getAddress(); - - @DataField(order=2, refPubKey = true) - PubKey getPubKey(); - - @DataField(order=3, refPubKey = true) - PubKey getDataPubKey(); - - @DataField(order=4, primitiveType = ValueType.BYTES) - ByteArray getDataHash(); - - @DataField(order=5, primitiveType = ValueType.BYTES) - ByteArray getPrivilegeHash(); -} -*/ \ No newline at end of file diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/impl/AddressImpl.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/impl/AddressImpl.java deleted file mode 100644 index c2af3153..00000000 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/impl/AddressImpl.java +++ /dev/null @@ -1,29 +0,0 @@ -/* -package test.com.jd.blockchain.binaryproto.contract.impl; - -import test.com.jd.blockchain.binaryproto.contract.Address; - -public class AddressImpl implements Address { - private String street; - private int number; - - @Override - public String getStreet() { - // TODO Auto-generated method stub - return this.street; - } - public void setStreet(String street) { - this.street = street; - } - - @Override - public int getNumber() { - // TODO Auto-generated method stub - return this.number; - } - public void setNumber(int number) { - this.number = number; - } - -} -*/ \ No newline at end of file diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/impl/CryptoSettingImpl.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/impl/CryptoSettingImpl.java deleted file mode 100644 index 2fe4cb23..00000000 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/impl/CryptoSettingImpl.java +++ /dev/null @@ -1,40 +0,0 @@ -//package test.com.jd.blockchain.binaryproto.contract.impl; - -//import test.com.jd.blockchain.binaryproto.contract.CryptoAlgorithm; -//import test.com.jd.blockchain.binaryproto.contract.CryptoSetting; -//import test.com.jd.blockchain.binaryproto.contract.HashAlgorithm; - -/** - * Created by zhangshuang3 on 2018/7/30. - */ -/* -public class CryptoSettingImpl implements CryptoSetting { - private HashAlgorithm hashAlgorithm; - private CryptoAlgorithm cryptoAlgorithm; - private boolean isAuto; - - @Override - public HashAlgorithm getHashAlgorithm() { - return this.hashAlgorithm; - } - public void setHashAlgorithm(HashAlgorithm hashAlgorithm) { - this.hashAlgorithm = hashAlgorithm; - } - - @Override - public CryptoAlgorithm getHashAlgorithm1() { - return this.cryptoAlgorithm; - } - public void setHashAlgorithm1(CryptoAlgorithm cryptoAlgorithm) { - this.cryptoAlgorithm = cryptoAlgorithm; - } - @Override - public boolean getAutoVerifyHash() { - return isAuto; - } - public void setAutoVerifyHash(boolean isAuto) { - this.isAuto = isAuto; - } - -} -*/ \ No newline at end of file diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/impl/LedgerBlockImpl.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/impl/LedgerBlockImpl.java deleted file mode 100644 index 803b4b5a..00000000 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/impl/LedgerBlockImpl.java +++ /dev/null @@ -1,147 +0,0 @@ -//package test.com.jd.blockchain.binaryproto.contract.impl; - -//import com.jd.blockchain.binaryproto.DConstructor; -//import com.jd.blockchain.binaryproto.DataField; -//import com.jd.blockchain.binaryproto.FieldSetter; -//import com.jd.blockchain.crypto.hash.HashDigest; -//import test.com.jd.blockchain.binaryproto.contract.Address; -//import test.com.jd.blockchain.binaryproto.contract.LedgerBlock; - -/** - * Created by zhangshuang3 on 2018/7/30. - */ -/* -public class LedgerBlockImpl implements LedgerBlock { - - private HashDigest hash; - - private long height; - - private HashDigest ledgerHash; - - private HashDigest previousHash; - - private HashDigest adminAccountHash; - - private HashDigest userAccountSetHash; - - private HashDigest userPrivilegeHash; - - private HashDigest dataAccountSetHash; - - private HashDigest dataPrivilegeHash; - - private HashDigest contractAccountSetHash; - - private HashDigest contractPrivilegeHash; - - private HashDigest transactionSetHash; - - public void setAdminAccountHash(HashDigest adminAccountHash) { - this.adminAccountHash = adminAccountHash; - } - - public void setUserAccountSetHash(HashDigest userAccountSetHash) { - this.userAccountSetHash = userAccountSetHash; - } - - public void setUserPrivilegeHash(HashDigest userPrivilegeHash) { - this.userPrivilegeHash = userPrivilegeHash; - } - - public void setDataAccountSetHash(HashDigest dataAccountSetHash) { - this.dataAccountSetHash = dataAccountSetHash; - } - - public void setDataPrivilegeHash(HashDigest dataPrivilegeHash) { - this.dataPrivilegeHash = dataPrivilegeHash; - } - - public void setContractAccountSetHash(HashDigest contractAccountSetHash) { - this.contractAccountSetHash = contractAccountSetHash; - } - - public void setContractPrivilegeHash(HashDigest contractPrivilegeHash) { - this.contractPrivilegeHash = contractPrivilegeHash; - } - - public void setTransactionSetHash(HashDigest transactionSetHash) { - this.transactionSetHash = transactionSetHash; - } - - public LedgerBlockImpl() { - } - - @DConstructor(name="LedgerBlockImpl") - public LedgerBlockImpl(@FieldSetter(name="getHeight", type="long") long height, @FieldSetter(name="getLedgerHash", type="HashDigest") HashDigest ledgerHash, @FieldSetter(name="getPreviousHash", type="HashDigest") HashDigest previousHash) { - this.height = height; - this.ledgerHash = ledgerHash; - this.previousHash = previousHash; - } - - @Override - public HashDigest getHash() { - return hash; - } - - @Override - public HashDigest getPreviousHash() { - return previousHash; - } - - @Override - public HashDigest getLedgerHash() { - return ledgerHash; - } - - @Override - public long getHeight() { - return height; - } - - @Override - public HashDigest getAdminAccountHash() { - return adminAccountHash; - } - - @Override - public HashDigest getUserAccountSetHash() { - return userAccountSetHash; - } - - @Override - public HashDigest getUserPrivilegeHash() { - return userPrivilegeHash; - } - - @Override - public HashDigest getDataAccountSetHash() { - return dataAccountSetHash; - } - - @Override - public HashDigest getDataPrivilegeHash() { - return dataPrivilegeHash; - } - - @Override - public HashDigest getContractAccountSetHash() { - return contractAccountSetHash; - } - - @Override - public HashDigest getContractPrivilegeHash() { - return contractPrivilegeHash; - } - - @Override - public HashDigest getTransactionSetHash() { - return transactionSetHash; - } - - public void setHash(HashDigest blockHash) { - this.hash = blockHash; - } - -} -*/ \ No newline at end of file diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/impl/LedgerMetadataImpl.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/impl/LedgerMetadataImpl.java deleted file mode 100644 index 7267377b..00000000 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/impl/LedgerMetadataImpl.java +++ /dev/null @@ -1,56 +0,0 @@ -//package test.com.jd.blockchain.binaryproto.contract.impl; - -//import test.com.jd.blockchain.binaryproto.contract.*; -//import test.com.jd.blockchain.binaryproto.contract.LedgerMetadata; -//import test.com.jd.blockchain.binaryproto.contract.LedgerSetting; - -/** - * Created by zhangshuang3 on 2018/7/30. - */ -/* -public class LedgerMetadataImpl implements LedgerMetadata { - private byte[] seed; - - private LedgerSetting setting; - - private byte[] privilegesHash; - - private byte[] participantsHash; - - @Override - public byte[] getSeed() { - return seed; - } - - @Override - public LedgerSetting getSetting() { - return setting; - } - - @Override - public byte[] getPrivilegesHash() { - return privilegesHash; - } - - @Override - public byte[] getParticipantsHash() { - return participantsHash; - } - - public void setSeed(byte[] seed) { - this.seed = seed; - } - - public void setSetting(LedgerSetting setting) { - this.setting = setting; - } - - public void setPrivilegesHash(byte[] privilegesHash) { - this.privilegesHash = privilegesHash; - } - - public void setParticipantsHash(byte[] participantsHash) { - this.participantsHash = participantsHash; - } -} -*/ \ No newline at end of file diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/impl/LedgerSettingImpl.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/impl/LedgerSettingImpl.java deleted file mode 100644 index 1af4b7a5..00000000 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/impl/LedgerSettingImpl.java +++ /dev/null @@ -1,30 +0,0 @@ -//package test.com.jd.blockchain.binaryproto.contract.impl; - -//import test.com.jd.blockchain.binaryproto.contract.LedgerSetting; -//import test.com.jd.blockchain.binaryproto.contract.CryptoSetting; -//import test.com.jd.blockchain.binaryproto.contract.PrivilegeModelSetting; - -/** - * Created by zhangshuang3 on 2018/7/30. - */ -/* -public class LedgerSettingImpl implements LedgerSetting { - private CryptoSetting cryptoSetting; - private PrivilegeModelSetting privilegeModelSetting; - - @Override - public CryptoSetting getCryptoSetting() { - return this.cryptoSetting; - } - public void setCryptoSetting(CryptoSetting cryptoSetting) { - this.cryptoSetting = cryptoSetting; - } - @Override - public PrivilegeModelSetting getPrivilegesModelSetting() { - return this.privilegeModelSetting; - } - public void setPrivilegesModelSetting(PrivilegeModelSetting privilegeModelSetting) { - this.privilegeModelSetting = privilegeModelSetting; - } -} -*/ \ No newline at end of file diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/impl/RefContractImpl.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/impl/RefContractImpl.java deleted file mode 100644 index 700cbf66..00000000 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/impl/RefContractImpl.java +++ /dev/null @@ -1,32 +0,0 @@ -//package test.com.jd.blockchain.binaryproto.contract.impl; - -//import test.com.jd.blockchain.binaryproto.contract.Address; -//import test.com.jd.blockchain.binaryproto.contract.RefContract; - -/** - * Created by zhangshuang3 on 2018/7/11. - */ -/* -public class RefContractImpl implements RefContract { - private Address address; - private Address address1; - - @Override - public Address getAddress() { - // TODO Auto-generated method stub - return this.address; - } - public void setAddress(Address address) { - this.address = address; - } - - @Override - public Address getAddress1() { - // TODO Auto-generated method stub - return this.address1; - } - public void setAddress1(Address address) { - this.address1 = address; - } -} -*/ \ No newline at end of file diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/impl/StudentImpl.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/impl/StudentImpl.java deleted file mode 100644 index 5b8cfacd..00000000 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/impl/StudentImpl.java +++ /dev/null @@ -1,108 +0,0 @@ -//package test.com.jd.blockchain.binaryproto.contract.impl; - -//import test.com.jd.blockchain.binaryproto.contract.Address; -//import test.com.jd.blockchain.binaryproto.contract.Level; -//import test.com.jd.blockchain.binaryproto.contract.Student; -//import test.com.jd.blockchain.binaryproto.contract.StudentInvert; - -/* -public class StudentImpl implements Student,StudentInvert { - - private int id; - private short age; - private String name; - private Level level; - private Address address; - private int[] scores; - private String[] features; - private byte familyMemberNum; - private byte[] familyMemberAges; - private long[] familyMemberIds; - - - @Override - public int getId() { - return id; - } - - public void setId(int id) { - this.id = id; - } - - @Override - public String getName() { - // TODO Auto-generated method stub - return this.name; - } - public void setName(String name) { - this.name = name; - } - - @Override - public Level getLevel() { - // TODO Auto-generated method stub - return this.level; - } - public void setLevel(Level level) { - this.level = level; - } - - @Override - public Address getAddress() { - // TODO Auto-generated method stub - return this.address; - } - public void setAddress(Address address) { - this.address = address; - } - - public short getAge() { - return age; - } - - public void setAge(short age) { - this.age = age; - } - - @Override - public int[] getScores() { - // TODO Auto-generated method stub - return this.scores; - } - public void setScores(int[] scores) { - this.scores = scores; - } - - @Override - public String[] getFeatures() { - return this.features; - } - public void setFeatures(String[] features) { - this.features = features; - } - - @Override - public byte getFamilyMemberNum() { - return this.familyMemberNum; - } - public void setFamilyMemberNum(byte familyMemberNum) { - this.familyMemberNum = familyMemberNum; - } - - @Override - public byte[] getFamilyMemberAges() { - return this.familyMemberAges; - } - public void setFamilyMemberAges(byte[] familyMemberAge) { - this.familyMemberAges = familyMemberAge; - } - - @Override - public long[] getFamilyMemberIds() { - return this.familyMemberIds; - } - public void setFamilyMemberIds(long[] familyMemberId) { - this.familyMemberIds = familyMemberId; - } -} -*/ \ No newline at end of file diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/impl/UserImpl.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/impl/UserImpl.java deleted file mode 100644 index 09fb3cf1..00000000 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/contract/impl/UserImpl.java +++ /dev/null @@ -1,51 +0,0 @@ -//package test.com.jd.blockchain.binaryproto.contract.impl; - -//import com.jd.blockchain.binaryproto.DConstructor; -//import com.jd.blockchain.binaryproto.FieldSetter; -//import com.jd.blockchain.crypto.asymmetric.PubKey; -//import my.utils.io.ByteArray; -//import test.com.jd.blockchain.binaryproto.contract.User; - -/** - * Created by zhangshuang3 on 2018/7/24. - */ -/* -public class UserImpl implements User { - String address; - PubKey pubKey; - PubKey dataPubKey; - ByteArray dataHash; - ByteArray privHash; - - @DConstructor(name = "UserImpl") - public UserImpl(@FieldSetter(name = "getAddress", type = "String") String address, @FieldSetter(name = "getPubKey",type = "PubKey") PubKey pubKey, @FieldSetter(name = "getDataPubKey",type = "PubKey") PubKey dataPubKey, - @FieldSetter(name = "getDataHash", type = "byte[]") byte[] dataHash, @FieldSetter(name = "getPrivilegeHash", type = "byte[]") byte[] privHash) { - this.address = address; - this.pubKey = pubKey; - this.dataPubKey = dataPubKey; - this.dataHash = ByteArray.wrap(dataHash); - this.privHash = ByteArray.wrap(privHash); - } - - @Override - public String getAddress() { - return address; - } - @Override - public PubKey getPubKey() { - return pubKey; - } - @Override - public PubKey getDataPubKey() { - return dataPubKey; - } - @Override - public ByteArray getDataHash() { - return dataHash; - } - @Override - public ByteArray getPrivilegeHash() { - return privHash; - } -} -*/ \ No newline at end of file diff --git a/source/consensus/consensus-bftsmart/src/main/java/com/jd/blockchain/consensus/bftsmart/BftsmartClientIncomingSettings.java b/source/consensus/consensus-bftsmart/src/main/java/com/jd/blockchain/consensus/bftsmart/BftsmartClientIncomingSettings.java index 6d470f1b..2838542a 100644 --- a/source/consensus/consensus-bftsmart/src/main/java/com/jd/blockchain/consensus/bftsmart/BftsmartClientIncomingSettings.java +++ b/source/consensus/consensus-bftsmart/src/main/java/com/jd/blockchain/consensus/bftsmart/BftsmartClientIncomingSettings.java @@ -2,7 +2,7 @@ package com.jd.blockchain.consensus.bftsmart; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.consensus.ClientIncomingSettings; import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.crypto.PubKey; @@ -10,13 +10,13 @@ import com.jd.blockchain.crypto.PubKey; @DataContract(code = DataCodes.CONSENSUS_BFTSMART_CLI_INCOMING_SETTINGS) public interface BftsmartClientIncomingSettings extends ClientIncomingSettings { - @DataField(order = 1, primitiveType = DataType.BYTES) + @DataField(order = 1, primitiveType = PrimitiveType.BYTES) byte[] getTopology(); - @DataField(order = 2, primitiveType = DataType.BYTES) + @DataField(order = 2, primitiveType = PrimitiveType.BYTES) byte[] getTomConfig(); - @DataField(order = 3, primitiveType=DataType.BYTES) + @DataField(order = 3, primitiveType=PrimitiveType.BYTES) PubKey getPubKey(); } diff --git a/source/consensus/consensus-bftsmart/src/main/java/com/jd/blockchain/consensus/bftsmart/BftsmartCommitBlockSettings.java b/source/consensus/consensus-bftsmart/src/main/java/com/jd/blockchain/consensus/bftsmart/BftsmartCommitBlockSettings.java index db515fbf..675344da 100644 --- a/source/consensus/consensus-bftsmart/src/main/java/com/jd/blockchain/consensus/bftsmart/BftsmartCommitBlockSettings.java +++ b/source/consensus/consensus-bftsmart/src/main/java/com/jd/blockchain/consensus/bftsmart/BftsmartCommitBlockSettings.java @@ -2,16 +2,16 @@ package com.jd.blockchain.consensus.bftsmart; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.consts.DataCodes; @DataContract(code = DataCodes.CONSENSUS_BFTSMART_BLOCK_SETTINGS) public interface BftsmartCommitBlockSettings { - @DataField(order = 0, primitiveType = DataType.INT32) + @DataField(order = 0, primitiveType = PrimitiveType.INT32) int getTxSizePerBlock(); - @DataField(order = 1, primitiveType = DataType.INT64) + @DataField(order = 1, primitiveType = PrimitiveType.INT64) long getMaxDelayMilliSecondsPerBlock(); } diff --git a/source/consensus/consensus-bftsmart/src/main/java/com/jd/blockchain/consensus/bftsmart/BftsmartConsensusSettings.java b/source/consensus/consensus-bftsmart/src/main/java/com/jd/blockchain/consensus/bftsmart/BftsmartConsensusSettings.java index 3058b042..f4e24cf5 100644 --- a/source/consensus/consensus-bftsmart/src/main/java/com/jd/blockchain/consensus/bftsmart/BftsmartConsensusSettings.java +++ b/source/consensus/consensus-bftsmart/src/main/java/com/jd/blockchain/consensus/bftsmart/BftsmartConsensusSettings.java @@ -2,7 +2,7 @@ package com.jd.blockchain.consensus.bftsmart; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.consensus.ConsensusSettings; import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.utils.Property; @@ -11,7 +11,7 @@ import com.jd.blockchain.utils.serialize.binary.BinarySerializeUtils; @DataContract(code = DataCodes.CONSENSUS_BFTSMART_SETTINGS) public interface BftsmartConsensusSettings extends ConsensusSettings { - @DataField(order = 1, primitiveType = DataType.BYTES, list=true) + @DataField(order = 1, primitiveType = PrimitiveType.BYTES, list=true) Property[] getSystemConfigs(); @DataField(order = 2, refContract = true) diff --git a/source/consensus/consensus-bftsmart/src/main/java/com/jd/blockchain/consensus/bftsmart/BftsmartNodeSettings.java b/source/consensus/consensus-bftsmart/src/main/java/com/jd/blockchain/consensus/bftsmart/BftsmartNodeSettings.java index 9571b1f9..a7158b68 100644 --- a/source/consensus/consensus-bftsmart/src/main/java/com/jd/blockchain/consensus/bftsmart/BftsmartNodeSettings.java +++ b/source/consensus/consensus-bftsmart/src/main/java/com/jd/blockchain/consensus/bftsmart/BftsmartNodeSettings.java @@ -2,7 +2,7 @@ package com.jd.blockchain.consensus.bftsmart; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.consensus.NodeSettings; import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.crypto.PubKey; @@ -31,7 +31,7 @@ public interface BftsmartNodeSettings extends NodeSettings { * * @return */ - @DataField(order = 2, primitiveType = DataType.INT32) + @DataField(order = 2, primitiveType = PrimitiveType.INT32) int getId(); /** @@ -39,7 +39,7 @@ public interface BftsmartNodeSettings extends NodeSettings { * * @return */ - @DataField(order = 3, primitiveType = DataType.BYTES) + @DataField(order = 3, primitiveType = PrimitiveType.BYTES) NetworkAddress getNetworkAddress(); } diff --git a/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/ClientIdentification.java b/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/ClientIdentification.java index 5ea22126..99b3b9a3 100644 --- a/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/ClientIdentification.java +++ b/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/ClientIdentification.java @@ -2,7 +2,7 @@ package com.jd.blockchain.consensus; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.crypto.PubKey; import com.jd.blockchain.crypto.SignatureDigest; @@ -21,7 +21,7 @@ public interface ClientIdentification { * * @return */ - @DataField(order = 0, primitiveType = DataType.BYTES) + @DataField(order = 0, primitiveType = PrimitiveType.BYTES) byte[] getIdentityInfo(); /** @@ -29,7 +29,7 @@ public interface ClientIdentification { * * @return */ - @DataField(order = 1, primitiveType = DataType.BYTES) + @DataField(order = 1, primitiveType = PrimitiveType.BYTES) PubKey getPubKey(); /** @@ -37,7 +37,7 @@ public interface ClientIdentification { * * @return */ - @DataField(order = 2, primitiveType = DataType.BYTES) + @DataField(order = 2, primitiveType = PrimitiveType.BYTES) SignatureDigest getSignature(); /** @@ -45,6 +45,6 @@ public interface ClientIdentification { * * @return */ - @DataField(order = 3, primitiveType = DataType.TEXT) + @DataField(order = 3, primitiveType = PrimitiveType.TEXT) String getProviderName(); } diff --git a/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/ClientIncomingSettings.java b/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/ClientIncomingSettings.java index 17ae6917..a879a54a 100644 --- a/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/ClientIncomingSettings.java +++ b/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/ClientIncomingSettings.java @@ -2,7 +2,7 @@ package com.jd.blockchain.consensus; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.consts.DataCodes; /** @@ -19,7 +19,7 @@ public interface ClientIncomingSettings { * * @return */ - @DataField(order = 0, primitiveType = DataType.INT32) + @DataField(order = 0, primitiveType = PrimitiveType.INT32) int getClientId(); /** @@ -27,7 +27,7 @@ public interface ClientIncomingSettings { * * @return */ - @DataField(order = 1, primitiveType = DataType.TEXT) + @DataField(order = 1, primitiveType = PrimitiveType.TEXT) String getProviderName(); /** diff --git a/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/NodeSettings.java b/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/NodeSettings.java index 2fd015ac..1c81163f 100644 --- a/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/NodeSettings.java +++ b/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/NodeSettings.java @@ -2,7 +2,7 @@ package com.jd.blockchain.consensus; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.crypto.PubKey; @@ -22,7 +22,7 @@ public interface NodeSettings { * * @return */ - @DataField(order=0, primitiveType=DataType.TEXT) + @DataField(order=0, primitiveType=PrimitiveType.TEXT) String getAddress(); /** @@ -30,6 +30,6 @@ public interface NodeSettings { * * @return */ - @DataField(order = 1, primitiveType = DataType.BYTES) + @DataField(order = 1, primitiveType = PrimitiveType.BYTES) PubKey getPubKey(); } diff --git a/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/action/ActionRequest.java b/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/action/ActionRequest.java index 5d6fc400..731ffef7 100644 --- a/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/action/ActionRequest.java +++ b/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/action/ActionRequest.java @@ -2,27 +2,27 @@ package com.jd.blockchain.consensus.action; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.consts.DataCodes; @DataContract(code= DataCodes.CONSENSUS_ACTION_REQUEST) public interface ActionRequest { - @DataField(order=1, list=true, primitiveType= DataType.INT8) + @DataField(order=1, list=true, primitiveType= PrimitiveType.INT8) byte[] getGroupId(); - @DataField(order=2, primitiveType=DataType.TEXT) + @DataField(order=2, primitiveType=PrimitiveType.TEXT) String getHandleType(); - @DataField(order=3, primitiveType=DataType.TEXT) + @DataField(order=3, primitiveType=PrimitiveType.TEXT) String getHandleMethod(); // String getMessageType(); - @DataField(order=4, list=true, primitiveType= DataType.INT8) + @DataField(order=4, list=true, primitiveType= PrimitiveType.INT8) byte[] getMessageBody(); - @DataField(order=5, primitiveType= DataType.TEXT) + @DataField(order=5, primitiveType= PrimitiveType.TEXT) String getTransactionType(); // String getReponseType(); diff --git a/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/action/ActionResponse.java b/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/action/ActionResponse.java index 069189ef..5e35e911 100644 --- a/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/action/ActionResponse.java +++ b/source/consensus/consensus-framework/src/main/java/com/jd/blockchain/consensus/action/ActionResponse.java @@ -2,22 +2,22 @@ package com.jd.blockchain.consensus.action; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.consts.DataCodes; @DataContract(code= DataCodes.CONSENSUS_ACTION_RESPONSE) public interface ActionResponse { - @DataField(order=1, list=true, primitiveType= DataType.INT8) + @DataField(order=1, list=true, primitiveType= PrimitiveType.INT8) byte[] getMessage(); - @DataField(order=2, primitiveType=DataType.BOOLEAN) + @DataField(order=2, primitiveType=PrimitiveType.BOOLEAN) boolean getError(); - @DataField(order=3, primitiveType=DataType.TEXT) + @DataField(order=3, primitiveType=PrimitiveType.TEXT) String getErrorMessage(); - @DataField(order=4, primitiveType=DataType.TEXT) + @DataField(order=4, primitiveType=PrimitiveType.TEXT) String getErrorType(); } \ No newline at end of file diff --git a/source/consensus/consensus-mq/src/main/java/com/jd/blockchain/consensus/mq/settings/MsgQueueBlockSettings.java b/source/consensus/consensus-mq/src/main/java/com/jd/blockchain/consensus/mq/settings/MsgQueueBlockSettings.java index c2ed1749..80832ca7 100644 --- a/source/consensus/consensus-mq/src/main/java/com/jd/blockchain/consensus/mq/settings/MsgQueueBlockSettings.java +++ b/source/consensus/consensus-mq/src/main/java/com/jd/blockchain/consensus/mq/settings/MsgQueueBlockSettings.java @@ -10,7 +10,7 @@ package com.jd.blockchain.consensus.mq.settings; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.consts.DataCodes; /** @@ -22,9 +22,9 @@ import com.jd.blockchain.consts.DataCodes; @DataContract(code = DataCodes.CONSENSUS_MSGQUEUE_BLOCK_SETTINGS) public interface MsgQueueBlockSettings { - @DataField(order = 0, primitiveType = DataType.INT32) + @DataField(order = 0, primitiveType = PrimitiveType.INT32) int getTxSizePerBlock(); - @DataField(order = 1, primitiveType = DataType.INT64) + @DataField(order = 1, primitiveType = PrimitiveType.INT64) long getMaxDelayMilliSecondsPerBlock(); } \ No newline at end of file diff --git a/source/consensus/consensus-mq/src/main/java/com/jd/blockchain/consensus/mq/settings/MsgQueueClientIncomingSettings.java b/source/consensus/consensus-mq/src/main/java/com/jd/blockchain/consensus/mq/settings/MsgQueueClientIncomingSettings.java index 12a30820..09d2c882 100644 --- a/source/consensus/consensus-mq/src/main/java/com/jd/blockchain/consensus/mq/settings/MsgQueueClientIncomingSettings.java +++ b/source/consensus/consensus-mq/src/main/java/com/jd/blockchain/consensus/mq/settings/MsgQueueClientIncomingSettings.java @@ -10,7 +10,7 @@ package com.jd.blockchain.consensus.mq.settings; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.consensus.ClientIncomingSettings; import com.jd.blockchain.consensus.ConsensusSettings; import com.jd.blockchain.consts.DataCodes; @@ -25,6 +25,6 @@ import com.jd.blockchain.crypto.PubKey; @DataContract(code = DataCodes.CONSENSUS_MSGQUEUE_CLI_INCOMING_SETTINGS) public interface MsgQueueClientIncomingSettings extends ClientIncomingSettings { - @DataField(order = 1, primitiveType=DataType.BYTES) + @DataField(order = 1, primitiveType=PrimitiveType.BYTES) PubKey getPubKey(); } \ No newline at end of file diff --git a/source/consensus/consensus-mq/src/main/java/com/jd/blockchain/consensus/mq/settings/MsgQueueConsensusSettings.java b/source/consensus/consensus-mq/src/main/java/com/jd/blockchain/consensus/mq/settings/MsgQueueConsensusSettings.java index a3359084..80cadcd7 100644 --- a/source/consensus/consensus-mq/src/main/java/com/jd/blockchain/consensus/mq/settings/MsgQueueConsensusSettings.java +++ b/source/consensus/consensus-mq/src/main/java/com/jd/blockchain/consensus/mq/settings/MsgQueueConsensusSettings.java @@ -10,7 +10,7 @@ package com.jd.blockchain.consensus.mq.settings; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.consensus.ConsensusSettings; import com.jd.blockchain.consensus.mq.config.MsgQueueBlockConfig; import com.jd.blockchain.consts.DataCodes; diff --git a/source/consensus/consensus-mq/src/main/java/com/jd/blockchain/consensus/mq/settings/MsgQueueNetworkSettings.java b/source/consensus/consensus-mq/src/main/java/com/jd/blockchain/consensus/mq/settings/MsgQueueNetworkSettings.java index fce789cf..0bfd5061 100644 --- a/source/consensus/consensus-mq/src/main/java/com/jd/blockchain/consensus/mq/settings/MsgQueueNetworkSettings.java +++ b/source/consensus/consensus-mq/src/main/java/com/jd/blockchain/consensus/mq/settings/MsgQueueNetworkSettings.java @@ -10,7 +10,7 @@ package com.jd.blockchain.consensus.mq.settings; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.consts.DataCodes; /** @@ -22,15 +22,15 @@ import com.jd.blockchain.consts.DataCodes; @DataContract(code = DataCodes.CONSENSUS_MSGQUEUE_NETWORK_SETTINGS) public interface MsgQueueNetworkSettings { - @DataField(order = 0, primitiveType = DataType.TEXT) + @DataField(order = 0, primitiveType = PrimitiveType.TEXT) String getServer(); - @DataField(order = 1, primitiveType = DataType.TEXT) + @DataField(order = 1, primitiveType = PrimitiveType.TEXT) String getTxTopic(); - @DataField(order = 2, primitiveType = DataType.TEXT) + @DataField(order = 2, primitiveType = PrimitiveType.TEXT) String getBlTopic(); - @DataField(order = 3, primitiveType = DataType.TEXT) + @DataField(order = 3, primitiveType = PrimitiveType.TEXT) String getMsgTopic(); } \ No newline at end of file diff --git a/source/crypto/crypto-framework/src/main/java/com/jd/blockchain/crypto/CryptoAlgorithm.java b/source/crypto/crypto-framework/src/main/java/com/jd/blockchain/crypto/CryptoAlgorithm.java index 5f9922bd..ec8ed272 100644 --- a/source/crypto/crypto-framework/src/main/java/com/jd/blockchain/crypto/CryptoAlgorithm.java +++ b/source/crypto/crypto-framework/src/main/java/com/jd/blockchain/crypto/CryptoAlgorithm.java @@ -5,7 +5,7 @@ import java.io.OutputStream; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.utils.io.BytesUtils; @@ -63,7 +63,7 @@ public interface CryptoAlgorithm { * {@link #EXT_ALGORITHM}) 5 种); 接下来4位标识密钥类型(包括:{@link #SYMMETRIC_KEY}, * {@link #ASYMMETRIC_KEY}); 最后8位是算法唯一ID; */ - @DataField(primitiveType = DataType.INT16, order = 0) + @DataField(primitiveType = PrimitiveType.INT16, order = 0) short code(); /** diff --git a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/DataAccount.java b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/DataAccount.java index 234d5fef..08cb2639 100644 --- a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/DataAccount.java +++ b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/DataAccount.java @@ -1,7 +1,7 @@ package com.jd.blockchain.ledger.core; import com.jd.blockchain.binaryproto.BinaryEncodingUtils; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.crypto.HashDigest; import com.jd.blockchain.crypto.PubKey; import com.jd.blockchain.ledger.AccountHeader; @@ -142,7 +142,7 @@ public class DataAccount implements AccountHeader, MerkleProvable { key = baseAccount.dataset.getKeyAtIndex(fromIndex); ver = baseAccount.dataset.getVersion(key); BytesValue decodeData = BinaryEncodingUtils.decode(value); - kvDataEntries[i] = new KVDataObject(key, ver, DataType.valueOf(decodeData.getType().CODE), decodeData.getValue().toBytes()); + kvDataEntries[i] = new KVDataObject(key, ver, PrimitiveType.valueOf(decodeData.getType().CODE), decodeData.getValue().toBytes()); fromIndex++; } diff --git a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/LedgerInitDecision.java b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/LedgerInitDecision.java index 48fdef1e..4810d601 100644 --- a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/LedgerInitDecision.java +++ b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/LedgerInitDecision.java @@ -2,7 +2,7 @@ package com.jd.blockchain.ledger.core; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.crypto.HashDigest; import com.jd.blockchain.crypto.SignatureDigest; @@ -21,14 +21,14 @@ public interface LedgerInitDecision { * * @return */ - @DataField(order=1, primitiveType=DataType.INT32) + @DataField(order=1, primitiveType=PrimitiveType.INT32) int getParticipantId(); /** * 新建账本的哈希; * @return */ - @DataField(order=2, primitiveType = DataType.BYTES) + @DataField(order=2, primitiveType = PrimitiveType.BYTES) HashDigest getLedgerHash(); /** @@ -40,7 +40,7 @@ public interface LedgerInitDecision { * * @return */ - @DataField(order=3, primitiveType = DataType.BYTES) + @DataField(order=3, primitiveType = PrimitiveType.BYTES) SignatureDigest getSignature(); } diff --git a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/LedgerInitPermission.java b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/LedgerInitPermission.java index 690c763a..7ca9e15c 100644 --- a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/LedgerInitPermission.java +++ b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/LedgerInitPermission.java @@ -2,7 +2,7 @@ package com.jd.blockchain.ledger.core; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.crypto.SignatureDigest; import com.jd.blockchain.ledger.LedgerInitOperation; @@ -21,7 +21,7 @@ public interface LedgerInitPermission { * * @return */ - @DataField(order = 1, primitiveType = DataType.INT32) + @DataField(order = 1, primitiveType = PrimitiveType.INT32) int getParticipantId(); /** @@ -39,7 +39,7 @@ public interface LedgerInitPermission { * * @return */ - @DataField(order = 2, primitiveType = DataType.BYTES) + @DataField(order = 2, primitiveType = PrimitiveType.BYTES) SignatureDigest getTransactionSignature(); } diff --git a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/LedgerMetadata.java b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/LedgerMetadata.java index 5324ad5b..4e8f05e5 100644 --- a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/LedgerMetadata.java +++ b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/LedgerMetadata.java @@ -2,7 +2,7 @@ package com.jd.blockchain.ledger.core; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.crypto.HashDigest; @@ -14,7 +14,7 @@ public interface LedgerMetadata { * * @return */ - @DataField(order = 1, primitiveType = DataType.BYTES) + @DataField(order = 1, primitiveType = PrimitiveType.BYTES) byte[] getSeed(); /** @@ -22,7 +22,7 @@ public interface LedgerMetadata { * * @return */ - @DataField(order = 2, primitiveType = DataType.BYTES) + @DataField(order = 2, primitiveType = PrimitiveType.BYTES) HashDigest getParticipantsHash(); /** diff --git a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/LedgerSetting.java b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/LedgerSetting.java index 914c6cf3..21ce0565 100644 --- a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/LedgerSetting.java +++ b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/LedgerSetting.java @@ -2,7 +2,7 @@ package com.jd.blockchain.ledger.core; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.ledger.CryptoSetting; import com.jd.blockchain.utils.Bytes; @@ -10,10 +10,10 @@ import com.jd.blockchain.utils.Bytes; @DataContract(code = DataCodes.METADATA_LEDGER_SETTING) public interface LedgerSetting { - @DataField(order=0, primitiveType=DataType.TEXT) + @DataField(order=0, primitiveType=PrimitiveType.TEXT) String getConsensusProvider(); - @DataField(order=1, primitiveType=DataType.BYTES) + @DataField(order=1, primitiveType=PrimitiveType.BYTES) Bytes getConsensusSetting(); @DataField(order=2, refContract=true) diff --git a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/LedgerQueryService.java b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/LedgerQueryService.java index d01f5089..02ff00a1 100644 --- a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/LedgerQueryService.java +++ b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/LedgerQueryService.java @@ -1,7 +1,7 @@ package com.jd.blockchain.ledger.core.impl; import com.jd.blockchain.binaryproto.BinaryEncodingUtils; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.crypto.HashDigest; import com.jd.blockchain.ledger.AccountHeader; import com.jd.blockchain.ledger.BytesValue; @@ -271,11 +271,11 @@ public class LedgerQueryService implements BlockchainQueryService { for (int i = 0; i < entries.length; i++) { ver = dataAccount.getDataVersion(Bytes.fromString(keys[i])); if (ver < 0) { - entries[i] = new KVDataObject(keys[i], -1, DataType.NIL, null); + entries[i] = new KVDataObject(keys[i], -1, PrimitiveType.NIL, null); }else { byte[] value = dataAccount.getBytes(Bytes.fromString(keys[i]), ver); BytesValue decodeData = BinaryEncodingUtils.decode(value); - entries[i] = new KVDataObject(keys[i], ver, DataType.valueOf(decodeData.getType().CODE), decodeData.getValue().toBytes()); + entries[i] = new KVDataObject(keys[i], ver, PrimitiveType.valueOf(decodeData.getType().CODE), decodeData.getValue().toBytes()); } } diff --git a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/handles/ContractLedgerContext.java b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/handles/ContractLedgerContext.java index f8615e16..75d81904 100644 --- a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/handles/ContractLedgerContext.java +++ b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/handles/ContractLedgerContext.java @@ -9,7 +9,7 @@ import com.jd.blockchain.crypto.HashDigest; import com.jd.blockchain.ledger.AccountHeader; import com.jd.blockchain.ledger.BlockchainIdentity; import com.jd.blockchain.ledger.BytesValue; -import com.jd.blockchain.ledger.BytesValueImpl; +import com.jd.blockchain.ledger.BytesValueEntry; import com.jd.blockchain.ledger.DataAccountKVSetOperation; import com.jd.blockchain.ledger.DataAccountRegisterOperation; import com.jd.blockchain.ledger.BytesValueType; @@ -273,7 +273,7 @@ public class ContractLedgerContext implements LedgerContext { @Override public DataAccountKVSetOperationBuilder set(String key, byte[] value, long expVersion) { - BytesValue bytesValue = new BytesValueImpl(BytesValueType.BYTES, value); + BytesValue bytesValue = new BytesValueEntry(BytesValueType.BYTES, value); this.op = new SingleKVSetOpTemplate(key, bytesValue, expVersion); generatedOpList.add(op); opHandleContext.handle(op); @@ -283,10 +283,10 @@ public class ContractLedgerContext implements LedgerContext { public DataAccountKVSetOperationBuilder set(String key, String value, long expVersion) { BytesValue bytesValue; if (isJson(value)) { - bytesValue = new BytesValueImpl(BytesValueType.JSON, value.getBytes()); + bytesValue = new BytesValueEntry(BytesValueType.JSON, value.getBytes()); } else { - bytesValue = new BytesValueImpl(BytesValueType.TEXT, value.getBytes()); + bytesValue = new BytesValueEntry(BytesValueType.TEXT, value.getBytes()); } this.op = new SingleKVSetOpTemplate(key, bytesValue, expVersion); generatedOpList.add(op); @@ -295,7 +295,7 @@ public class ContractLedgerContext implements LedgerContext { } @Override public DataAccountKVSetOperationBuilder set(String key, Bytes value, long expVersion) { - BytesValue bytesValue = new BytesValueImpl(BytesValueType.BYTES, value.toBytes()); + BytesValue bytesValue = new BytesValueEntry(BytesValueType.BYTES, value.toBytes()); this.op = new SingleKVSetOpTemplate(key, bytesValue, expVersion); generatedOpList.add(op); opHandleContext.handle(op); @@ -303,7 +303,7 @@ public class ContractLedgerContext implements LedgerContext { } @Override public DataAccountKVSetOperationBuilder set(String key, long value, long expVersion) { - BytesValue bytesValue = new BytesValueImpl(BytesValueType.INT64, BytesUtils.toBytes(value)); + BytesValue bytesValue = new BytesValueEntry(BytesValueType.INT64, BytesUtils.toBytes(value)); this.op = new SingleKVSetOpTemplate(key, bytesValue, expVersion); generatedOpList.add(op); opHandleContext.handle(op); diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/AccountHeader.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/AccountHeader.java index 15dbcb1b..42dc25a0 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/AccountHeader.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/AccountHeader.java @@ -2,7 +2,7 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.crypto.HashDigest; import com.jd.blockchain.crypto.PubKey; @@ -11,13 +11,13 @@ import com.jd.blockchain.utils.Bytes; @DataContract(code= DataCodes.ACCOUNT_HEADER) public interface AccountHeader { - @DataField(order=1, primitiveType = DataType.BYTES) + @DataField(order=1, primitiveType = PrimitiveType.BYTES) Bytes getAddress(); - @DataField(order=2, primitiveType = DataType.BYTES) + @DataField(order=2, primitiveType = PrimitiveType.BYTES) PubKey getPubKey(); - @DataField(order=3, primitiveType = DataType.BYTES) + @DataField(order=3, primitiveType = PrimitiveType.BYTES) HashDigest getRootHash(); } diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/AccountImpl.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/AccountImpl.java deleted file mode 100644 index 64e3c97e..00000000 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/AccountImpl.java +++ /dev/null @@ -1,406 +0,0 @@ -//package com.jd.blockchain.ledger; -// -//import java.io.ByteArrayOutputStream; -//import java.io.IOException; -//import java.io.InputStream; -//import java.io.OutputStream; -// -//import com.jd.blockchain.ledger.data.HashEncoding; -// -//import my.utils.io.ByteArray; -//import my.utils.io.BytesEncoding; -//import my.utils.io.BytesReader; -//import my.utils.io.BytesUtils; -//import my.utils.io.BytesWriter; -//import my.utils.io.NumberMask; -// -//public class AccountImpl implements BlockchainAccount, BytesWriter, BytesReader { -// public static final long INIT_TX_SEQUENCE_NUMBER = 0; // 初始交易流水号 -// public static final long INIT_MODEL_VERSION = 0; // 初始模型版本号 -// public static final long INIT_VERSION = 0; // 初始版本号 -// public static final long INIT_PRIVILLEGE_VERSION = 0; // 初始权限版本号 -// public static final long INIT_STATE_VERSION = 0; // 初始状态版本号 -// public static final long INIT_CODE_VERSION = 0; // 初始合约版本号 -// -// private BlockchainIdentity identity; -// private ByteArray ledgerHash; // 账本hash -// private long blockHeight; // 账户注册的区块高度 -// private long txSequenceNumber; // 交易流水号 -// private long modelVersion; // 账户模型版本 -// private long version; // 账户版本 -// private ByteArray privilegeHash; // 权限树根hash -// private long privilegeVersion; // 权限版本 -// private AccountStateType stateType; // 状态类型 -// private ByteArray stateHash; // 状态数根hash -// private long stateVersion; // 状态版本 -// private ByteArray code; // 合约代码 -// private long codeVersion; // 合约版本 -// private HashAlgorithm codeHashAlgorithm = HashAlgorithm.SHA256; -// private ByteArray codeHash; -// -// public AccountImpl() { -// } -// -// public AccountImpl(BlockchainIdentity identity, ByteArray ledgerHash, long blockHeight, long txSequenceNumber, -// long modelVersion, long version, ByteArray privilegeHash, long privilegeVersion, AccountStateType stateType, -// ByteArray stateHash, long stateVersion, ByteArray code, long codeVersion) { -// this.identity = identity; -// this.ledgerHash = ledgerHash; -// this.blockHeight = blockHeight; -// this.txSequenceNumber = txSequenceNumber; -// this.modelVersion = modelVersion; -// this.version = version; -// this.privilegeHash = privilegeHash; -// this.privilegeVersion = privilegeVersion; -// this.stateType = stateType; -// this.stateHash = stateHash; -// this.stateVersion = stateVersion; -// this.code = code; -// this.codeVersion = codeVersion; -// } -// -// public AccountImpl(BlockchainIdentity identity, ByteArray ledgerHash, long blockHeight, ByteArray privilegeHash, -// AccountStateType stateType, ByteArray stateHash, ByteArray code) { -// this.identity = identity; -// this.ledgerHash = ledgerHash; -// this.blockHeight = blockHeight; -// this.txSequenceNumber = INIT_TX_SEQUENCE_NUMBER; -// this.modelVersion = INIT_MODEL_VERSION; -// this.version = INIT_VERSION; -// this.privilegeHash = privilegeHash; -// this.privilegeVersion = INIT_PRIVILLEGE_VERSION; -// this.stateType = stateType; -// this.stateHash = stateHash; -// this.stateVersion = INIT_STATE_VERSION; -// this.code = code; -// this.codeVersion = INIT_CODE_VERSION; -// } -// -// @Override -// public void resolvFrom(InputStream in) throws IOException { -// BlockchainIdentity identity = new BlockchainIdentity(); -// identity.resolvFrom(in); -// ByteArray ledgerHash = HashEncoding.read(in); -// long blockHeight = BytesUtils.readLong(in); -// long txSeqNum = BytesUtils.readLong(in); -// long modelVersion = BytesUtils.readLong(in); -// long version = BytesUtils.readLong(in); -// ByteArray privilegeHash = HashEncoding.read(in); -// long privilegeVersion = BytesUtils.readLong(in); -// AccountStateType stateType = AccountStateType.valueOf(BytesUtils.readByte(in)); -// ByteArray stateHash = HashEncoding.read(in); -// long stateVersion = BytesUtils.readLong(in); -// -// ByteArray code = BytesEncoding.readAsByteArray(NumberMask.NORMAL, in); -// long codeVersion = BytesUtils.readLong(in); -// HashAlgorithm codeHashAlgorithm = HashAlgorithm.valueOf(BytesUtils.readByte(in)); -// ByteArray codeHash = HashEncoding.read(in); -// -// this.identity = identity; -// this.ledgerHash = ledgerHash; -// this.blockHeight = blockHeight; -// this.txSequenceNumber = txSeqNum; -// this.modelVersion = modelVersion; -// this.version = version; -// this.privilegeHash = privilegeHash; -// this.privilegeVersion = privilegeVersion; -// this.stateType = stateType; -// this.stateHash = stateHash; -// this.stateVersion = stateVersion; -// this.code = code; -// this.codeVersion = codeVersion; -// this.codeHashAlgorithm = codeHashAlgorithm; -// this.codeHash = codeHash; -// } -// -// @Override -// public void writeTo(OutputStream out) throws IOException { -// identity.writeTo(out); -// HashEncoding.write(ledgerHash, out); -// BytesUtils.writeLong(blockHeight, out); -// BytesUtils.writeLong(txSequenceNumber, out); -// BytesUtils.writeLong(modelVersion, out); -// BytesUtils.writeLong(version, out); -// HashEncoding.write(privilegeHash, out); -// BytesUtils.writeLong(privilegeVersion, out); -// BytesUtils.writeByte(stateType.getCODE(), out); -// HashEncoding.write(stateHash, out); -// BytesUtils.writeLong(stateVersion, out); -// -// BytesEncoding.write(code, NumberMask.NORMAL, out); -// BytesUtils.writeLong(codeVersion, out); -// BytesUtils.writeByte(codeHashAlgorithm.getAlgorithm(), out); -// HashEncoding.write(getCodeHash(), out); -// } -// -// /** -// * 地址; -// * -// * @return -// */ -// @Override -// public BlockchainIdentity getAddress() { -// return identity; -// } -// -// /** -// * 账户所属的账本的 hash;
-// *

-// * 注:账本的hash 等同于该账本的创世区块的 hash; -// * -// * @return -// */ -// @Override -// public ByteArray getLedgerHash() { -// return ledgerHash; -// } -// -// /** -// * 注册账户的区块高度;
-// *

-// * 注册此账户的区块高度; -// * -// * @return -// */ -// @Override -// public long getRegisteredHeight() { -// return blockHeight; -// } -// -// /** -// * 交易流水号;
-// *

-// * 账户的交易流水号初始为 0,当账户作为交易的科目账户(SubjectAccount )发起一个交易并被成功执行之后,账户的交易流水号增加1; -// * -// * @return -// */ -// @Override -// public long getTxSquenceNumber() { -// return txSequenceNumber; -// } -// -// /** -// * 账户模型版本;
-// *

-// * 表示构成一个账户结构的属性模型的程序版本号; -// * -// * @return -// */ -// @Override -// public long getModelVersion() { -// return modelVersion; -// } -// -// /** -// * 账户版本;
-// *

-// * 初始为 0,对账户的每一次变更(包括对权限设置、状态和合约代码的变更)都会使账户状态版本增加 1 ;注:交易序号的改变不会导致账户版本的增加; -// * -// * @return -// */ -// @Override -// public long getVersion() { -// return version; -// } -// -// /** -// * 权限 hash;
-// *

-// * 权限树的根hash; -// * -// * @return -// */ -// @Override -// public ByteArray getPrivilegeHash() { -// return privilegeHash; -// } -// -// /** -// * 权限版本;
-// *

-// * 初始为 0, 每次对权限的变更都导致版本号加 1; -// * -// * @return -// */ -// @Override -// public long getPrivilegeVersion() { -// return privilegeVersion; -// } -// -// /** -// * 状态类型;
-// *

-// * 账户的状态类型有3种:空类型(NIL);键值类型;对象类型;参考 {@link AccountStateType} -// * -// * @return -// */ -// @Override -// public AccountStateType getStateType() { -// return stateType; -// } -// -// /** -// * 状态版本;
-// *

-// * 初始为 0,每次对状态的更改都使得状态版本增加1; -// * -// * @return -// */ -// @Override -// public long getStateVersion() { -// return stateVersion; -// } -// -// /** -// * 状态哈希;
-// *

-// * 数据状态的 merkle tree 的根hash; -// * -// * @return -// */ -// @Override -// public ByteArray getStateHash() { -// return stateHash; -// } -// -// /** -// * 合约代码哈希;
-// *

-// * 由“账户地址+合约代码版本号+合约代码内容”生成的哈希; -// * -// * @return -// */ -// @Override -// public ByteArray getCodeHash() { -// if (codeHash == null || codeHash == ByteArray.EMPTY) { -// ByteArrayOutputStream out = new ByteArrayOutputStream(); -// BytesEncoding.write(getAddress().getAddress().getBytes(), NumberMask.SHORT, out); -// BytesUtils.writeLong(codeVersion, out); -// BytesEncoding.write(code, NumberMask.NORMAL, out); -// -// codeHash = HashEncoding.computeHash(out.toByteArray(), codeHashAlgorithm); -// } -// -// return codeHash; -// } -// -// public ByteArray getCode() { -// return code; -// } -// -// /** -// * 代码版本;
-// *

-// * 初始为 0,每次对代码的变更都使版本加 1 ; -// * -// * @return -// */ -// @Override -// public long getCodeVersion() { -// return codeVersion; -// } -// -// public BlockchainIdentity getIdentity() { -// return identity; -// } -// -// public void setIdentity(BlockchainIdentity identity) { -// this.identity = identity; -// } -// -// public void setLedgerHash(ByteArray ledgerHash) { -// this.ledgerHash = ledgerHash; -// } -// -// public long getBlockHeight() { -// return blockHeight; -// } -// -// public void setBlockHeight(long blockHeight) { -// this.blockHeight = blockHeight; -// } -// -// public long getTxSequenceNumber() { -// return txSequenceNumber; -// } -// -// public void setTxSequenceNumber(long txSequenceNumber) { -// this.txSequenceNumber = txSequenceNumber; -// } -// -// public void setModelVersion(long modelVersion) { -// this.modelVersion = modelVersion; -// } -// -// public void setVersion(long version) { -// this.version = version; -// } -// -// public void setPrivilegeHash(ByteArray privilegeHash) { -// this.privilegeHash = privilegeHash; -// } -// -// public void setPrivilegeVersion(long privilegeVersion) { -// this.privilegeVersion = privilegeVersion; -// } -// -// public void setStateType(AccountStateType stateType) { -// this.stateType = stateType; -// } -// -// public void setStateHash(ByteArray stateHash) { -// this.stateHash = stateHash; -// } -// -// public void setStateVersion(long stateVersion) { -// this.stateVersion = stateVersion; -// } -// -// public void setCodeHash(ByteArray codeHash) { -// this.codeHash = codeHash; -// } -// -// public void setCodeVersion(long codeVersion) { -// this.codeVersion = codeVersion; -// } -// -// @Override -// public boolean equals(Object o) { -// if (this == o) -// return true; -// if (!(o instanceof AccountImpl)) -// return false; -// -// AccountImpl account = (AccountImpl) o; -// -// if (getBlockHeight() != account.getBlockHeight()) -// return false; -// if (getTxSequenceNumber() != account.getTxSequenceNumber()) -// return false; -// if (getModelVersion() != account.getModelVersion()) -// return false; -// if (getVersion() != account.getVersion()) -// return false; -// if (getPrivilegeVersion() != account.getPrivilegeVersion()) -// return false; -// if (getStateVersion() != account.getStateVersion()) -// return false; -// if (getCodeVersion() != account.getCodeVersion()) -// return false; -// if (!getIdentity().equals(account.getIdentity())) -// return false; -// if (!getLedgerHash().equals(account.getLedgerHash())) -// return false; -// if (!getPrivilegeHash().equals(account.getPrivilegeHash())) -// return false; -// if (getStateType() != account.getStateType()) -// return false; -// if (!getStateHash().equals(account.getStateHash())) -// return false; -// if (!code.equals(account.code)) -// return false; -// if (codeHashAlgorithm != account.codeHashAlgorithm) -// return false; -// return getCodeHash().equals(account.getCodeHash()); -// } -//} diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/AccountRegisterOperation.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/AccountRegisterOperation.java deleted file mode 100644 index 1983349a..00000000 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/AccountRegisterOperation.java +++ /dev/null @@ -1,38 +0,0 @@ -//package com.jd.blockchain.ledger; -// -//import my.utils.io.ByteArray; -// -///** -// * @author huanghaiquan -// * -// */ -//public interface AccountRegisterOperation extends BlockchainOperation { -// -// /** -// * 要注册的身份;
-// * -// * 必选; -// * -// * @return -// */ -// BlockchainIdentity getId(); -// -// /** -// * 数据状态的存储类型;
-// * -// * 必选; -// * -// * @return -// */ -// AccountStateType getStateType(); -// -//// /** -//// * 账户的合约代码;
-//// * -//// * 可选; -//// * -//// * @return -//// */ -//// ByteArray getContractCode(); -// -//} diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BlockBody.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BlockBody.java index baca7f6f..ff8f3705 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BlockBody.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BlockBody.java @@ -2,22 +2,22 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.crypto.HashDigest; @DataContract(code= DataCodes.BLOCK_BODY) public interface BlockBody extends LedgerDataSnapshot{ - @DataField(order=2, primitiveType = DataType.BYTES) + @DataField(order=2, primitiveType = PrimitiveType.BYTES) HashDigest getPreviousHash(); - @DataField(order=3, primitiveType = DataType.BYTES) + @DataField(order=3, primitiveType = PrimitiveType.BYTES) HashDigest getLedgerHash(); - @DataField(order=4, primitiveType= DataType.INT64) + @DataField(order=4, primitiveType= PrimitiveType.INT64) long getHeight(); - @DataField(order=5, primitiveType = DataType.BYTES) + @DataField(order=5, primitiveType = PrimitiveType.BYTES) HashDigest getTransactionSetHash(); } diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BlockchainAccount.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BlockchainAccount.java deleted file mode 100644 index cd9f40c5..00000000 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BlockchainAccount.java +++ /dev/null @@ -1,146 +0,0 @@ -//package com.jd.blockchain.ledger; -// -//import my.utils.io.ByteArray; -// -//import java.io.Serializable; -// -///** -// * 区块链账户; -// * -// * @author huanghaiquan -// * -// */ -//public interface BlockchainAccount extends Serializable { -// -// /** -// * 地址; -// * -// * @return -// */ -// BlockchainIdentity getAddress(); -// -// /** -// * 账户所属的账本的 hash;
-// * -// * 注:账本的hash 等同于该账本的创世区块的 hash; -// * -// * @return -// */ -// ByteArray getLedgerHash(); -// -// /** -// * 注册账户的区块高度;
-// * -// * 注册此账户的区块高度; -// * -// * @return -// */ -// long getRegisteredHeight(); -// -// /** -// * 交易流水号;
-// * -// * 账户的交易流水号初始为 0,当账户作为交易的科目账户(SubjectAccount )发起一个交易并被成功执行之后,账户的交易流水号增加1; -// * -// * @return -// */ -// long getTxSquenceNumber(); -// -// /** -// * 账户模型版本;
-// * -// * 表示构成一个账户结构的属性模型的程序版本号; -// * -// * @return -// */ -// long getModelVersion(); -// -// /** -// * 账户版本;
-// * -// * 初始为 0,对账户的每一次变更(包括对权限设置、状态和合约代码的变更)都会使账户状态版本增加 1 ;注:交易序号的改变不会导致账户版本的增加; -// * -// * @return -// */ -// long getVersion(); -// -// // /** -// // * 权限设置; -// // * -// // * @return -// // */ -// // PrivilegeSetting getPrivilegeSetting(); -// -// /** -// * 权限 hash;
-// * -// * 权限树的根hash; -// * -// * @return -// */ -// ByteArray getPrivilegeHash(); -// -// /** -// * 权限版本;
-// * -// * 初始为 0, 每次对权限的变更都导致版本号加 1; -// * -// * @return -// */ -// long getPrivilegeVersion(); -// -//// /** -//// * 状态类型;
-//// * -//// * 账户的状态类型有3种:空类型(NIL);键值类型;对象类型;参考 {@link AccountStateType} -//// * -//// * @return -//// */ -//// AccountStateType getStateType(); -// -// /** -// * 状态版本;
-// * -// * 初始为 0,每次对状态的更改都使得状态版本增加1; -// * -// * @return -// */ -// long getStateVersion(); -// -// /** -// * 状态哈希;
-// * -// * 数据状态的 merkle tree 的根hash; -// * -// * @return -// */ -// ByteArray getStateHash(); -// -// // /** -// // * 合约代码;
-// // * -// // * 合约代码是一段代码片段; -// // * -// // * @return -// // */ -// // String getCode(); -// -// /** -// * 合约代码哈希;
-// * -// * 由“账户地址+合约代码版本号+合约代码内容”生成的哈希; -// * -// * @return -// */ -// ByteArray getCodeHash(); -// -// /** -// * 代码版本;
-// * -// * 初始为 0,每次对代码的变更都使版本加 1 ; -// * -// * @return -// */ -// long getCodeVersion(); -// -//} diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BlockchainIdentity.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BlockchainIdentity.java index cab5b4f5..6dce8004 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BlockchainIdentity.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BlockchainIdentity.java @@ -2,7 +2,7 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.crypto.PubKey; import com.jd.blockchain.utils.Bytes; @@ -10,10 +10,10 @@ import com.jd.blockchain.utils.Bytes; @DataContract(code= DataCodes.BLOCK_CHAIN_IDENTITY) public interface BlockchainIdentity { - @DataField(order = 1, primitiveType = DataType.BYTES) + @DataField(order = 1, primitiveType = PrimitiveType.BYTES) Bytes getAddress(); - @DataField(order = 2, primitiveType=DataType.BYTES) + @DataField(order = 2, primitiveType=PrimitiveType.BYTES) PubKey getPubKey(); } \ No newline at end of file diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BlockchainOperation.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BlockchainOperation.java deleted file mode 100644 index e17f9b0a..00000000 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BlockchainOperation.java +++ /dev/null @@ -1,11 +0,0 @@ -//package com.jd.blockchain.ledger; -// -//import java.io.Serializable; -// -//public interface BlockchainOperation extends Serializable { -// -// OperationType getOperationType(); -// -//// Operation getOperation(); -// -//} diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BytesValue.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BytesValue.java index f9a18ea9..864484f3 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BytesValue.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BytesValue.java @@ -2,10 +2,16 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.utils.io.BytesSlice; +/** + * BytesValue is the base structure of Value in Blockchain Account; + * + * @author huanghaiquan + * + */ @DataContract(code = DataCodes.BYTES_VALUE) public interface BytesValue { @@ -22,7 +28,7 @@ public interface BytesValue { * * @return */ - @DataField(order = 1, primitiveType = DataType.BYTES) + @DataField(order = 1, primitiveType = PrimitiveType.BYTES) BytesSlice getValue(); } diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BytesValueImpl.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BytesValueEntry.java similarity index 81% rename from source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BytesValueImpl.java rename to source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BytesValueEntry.java index 80f2e8bc..753f5f3d 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BytesValueImpl.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BytesValueEntry.java @@ -5,11 +5,11 @@ import com.jd.blockchain.utils.io.BytesSlice; /** * Created by zhangshuang3 on 2018/12/3. */ -public class BytesValueImpl implements BytesValue{ +public class BytesValueEntry implements BytesValue{ BytesValueType type; BytesSlice slice; - public BytesValueImpl(BytesValueType type, byte[] bytes) { + public BytesValueEntry(BytesValueType type, byte[] bytes) { this.type = type; this.slice = new BytesSlice(bytes); } diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BytesValueType.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BytesValueType.java index 02ecdf55..306b2b89 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BytesValueType.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/BytesValueType.java @@ -1,6 +1,6 @@ package com.jd.blockchain.ledger; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.binaryproto.EnumContract; import com.jd.blockchain.binaryproto.EnumField; import com.jd.blockchain.consts.DataCodes; @@ -11,90 +11,78 @@ import com.jd.blockchain.consts.DataCodes; * @author huanghaiquan * */ -@EnumContract(code = DataCodes.ENUM_TYPE_DATA_TYPE, name = "DataType", decription = "") +@EnumContract(code = DataCodes.ENUM_TYPE_BYTES_VALUE_TYPE, name = "BytesValueType", decription = "") public enum BytesValueType { /** * 空; */ - NIL(DataType.NIL.CODE), + NIL(PrimitiveType.NIL.CODE), /** * 布尔型; */ - BOOLEAN((byte) 0x10), + BOOLEAN(PrimitiveType.BOOLEAN.CODE), /** * 数值型: */ - INT8((byte) 0x11), + INT8(PrimitiveType.INT8.CODE), - INT16((byte) 0x12), + INT16(PrimitiveType.INT16.CODE), - INT32((byte) 0x13), + INT32(PrimitiveType.INT32.CODE), - INT64((byte) 0x14), + INT64(PrimitiveType.INT64.CODE), /** * 日期时间; */ - DATETIME((byte) 0x15), + DATETIME(PrimitiveType.DATETIME.CODE), /** * 文本数据; */ - TEXT((byte) 0x20), + TEXT(PrimitiveType.TEXT.CODE), /** * 文本数据; */ - JSON((byte) 0x21), + JSON(PrimitiveType.JSON.CODE), /** * 文本数据; */ - XML((byte) 0x22), + XML(PrimitiveType.XML.CODE), /** * 二进制数据; */ - BYTES((byte) 0x40), + BYTES(PrimitiveType.BYTES.CODE), /** * 大整数; */ - BIG_INT((byte) 0x41), + BIG_INT(PrimitiveType.BIG_INT.CODE), /** * 图片; */ - IMG((byte) 0x42), + IMG(PrimitiveType.IMG.CODE), /** * 视频; */ - VIDEO((byte) 0x43), + VIDEO(PrimitiveType.VIDEO.CODE), /** * 位置; */ - LOCATION((byte) 0x44); - - // /** - // * 引用;
- // * - // * 表示引用区块链系统中的某一个特定的对象,用以下形式的 URI 表示; - // * - // * state://ledger/account/key/version
- // * 或
- // * proof:state://account_merkle_path/key_merkle_path - // * - // * proof:tx:// - // * - // */ - // REFERENCE((byte) 0x80); - @EnumField(type = DataType.INT8) + LOCATION(PrimitiveType.LOCATION.CODE); + + + @EnumField(type = PrimitiveType.INT8) public final byte CODE; private BytesValueType(byte code) { @@ -107,7 +95,7 @@ public enum BytesValueType { return dataType; } } - throw new IllegalArgumentException("Unsupported code[" + code + "] of DataType!"); + throw new IllegalArgumentException("Code [" + code + "] not supported by BytesValueType enum!"); } } diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/ContractCodeDeployOperation.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/ContractCodeDeployOperation.java index 1e8d8ec9..48190979 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/ContractCodeDeployOperation.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/ContractCodeDeployOperation.java @@ -2,7 +2,7 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.consts.DataCodes; @DataContract(code= DataCodes.TX_OP_CONTRACT_DEPLOY) @@ -11,7 +11,7 @@ public interface ContractCodeDeployOperation extends Operation { @DataField(order=2, refContract = true) BlockchainIdentity getContractID(); - @DataField(order=3, primitiveType=DataType.BYTES) + @DataField(order=3, primitiveType=PrimitiveType.BYTES) byte[] getChainCode(); diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/ContractEventSendOperation.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/ContractEventSendOperation.java index 04c1ca80..a9bd77e8 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/ContractEventSendOperation.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/ContractEventSendOperation.java @@ -2,7 +2,7 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.utils.Bytes; @@ -13,14 +13,14 @@ import com.jd.blockchain.utils.Bytes; @DataContract(code= DataCodes.TX_OP_CONTRACT_EVENT_SEND) public interface ContractEventSendOperation extends Operation { - @DataField(order=2, primitiveType=DataType.BYTES) + @DataField(order=2, primitiveType=PrimitiveType.BYTES) Bytes getContractAddress(); - @DataField(order=3, primitiveType=DataType.TEXT) + @DataField(order=3, primitiveType=PrimitiveType.TEXT) String getEvent(); - @DataField(order=4, primitiveType=DataType.BYTES) + @DataField(order=4, primitiveType=PrimitiveType.BYTES) byte[] getArgs(); } diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/CryptoSetting.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/CryptoSetting.java index 4b79154e..cb41c645 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/CryptoSetting.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/CryptoSetting.java @@ -2,7 +2,7 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.consts.DataCodes; /** @@ -23,7 +23,7 @@ public interface CryptoSetting { * * @return */ - @DataField(order = 1, primitiveType = DataType.INT16) + @DataField(order = 1, primitiveType = PrimitiveType.INT16) public short getHashAlgorithm(); /** @@ -35,7 +35,7 @@ public interface CryptoSetting { * * @return */ - @DataField(order = 2, primitiveType = DataType.BOOLEAN) + @DataField(order = 2, primitiveType = PrimitiveType.BOOLEAN) public boolean getAutoVerifyHash(); } diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/DataAccountKVSetOperation.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/DataAccountKVSetOperation.java index bbe3c1ad..5bedb8bc 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/DataAccountKVSetOperation.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/DataAccountKVSetOperation.java @@ -2,14 +2,14 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.utils.Bytes; @DataContract(code= DataCodes.TX_OP_DATA_ACC_SET) public interface DataAccountKVSetOperation extends Operation{ - @DataField(order=2, primitiveType=DataType.BYTES) + @DataField(order=2, primitiveType=PrimitiveType.BYTES) Bytes getAccountAddress(); @DataField(order=3, list=true, refContract=true) @@ -19,13 +19,13 @@ public interface DataAccountKVSetOperation extends Operation{ @DataContract(code=DataCodes.TX_OP_DATA_ACC_SET_KV) public static interface KVWriteEntry{ - @DataField(order=1, primitiveType=DataType.TEXT) + @DataField(order=1, primitiveType=PrimitiveType.TEXT) String getKey(); @DataField(order=2, refContract = true) BytesValue getValue(); - @DataField(order=3, primitiveType=DataType.INT64) + @DataField(order=3, primitiveType=PrimitiveType.INT64) long getExpectedVersion(); } diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/DigitalSignatureBody.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/DigitalSignatureBody.java index 3cfb8164..de54970b 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/DigitalSignatureBody.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/DigitalSignatureBody.java @@ -2,7 +2,7 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.crypto.PubKey; import com.jd.blockchain.crypto.SignatureDigest; @@ -23,7 +23,7 @@ public interface DigitalSignatureBody { * * @return */ - @DataField(order=1, primitiveType = DataType.BYTES) + @DataField(order=1, primitiveType = PrimitiveType.BYTES) PubKey getPubKey(); /** @@ -31,7 +31,7 @@ public interface DigitalSignatureBody { * * @return */ - @DataField(order=2, primitiveType = DataType.BYTES ) + @DataField(order=2, primitiveType = PrimitiveType.BYTES ) SignatureDigest getDigest(); } diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/EndpointRequest.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/EndpointRequest.java index e5c6219a..00253b85 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/EndpointRequest.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/EndpointRequest.java @@ -2,14 +2,14 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.crypto.HashDigest; @DataContract(code= DataCodes.REQUEST_ENDPOINT) public interface EndpointRequest { - @DataField(order=1, primitiveType = DataType.BYTES) + @DataField(order=1, primitiveType = PrimitiveType.BYTES) HashDigest getHash(); /** * 交易内容; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/KVDataEntry.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/KVDataEntry.java index 97f910d8..efce0703 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/KVDataEntry.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/KVDataEntry.java @@ -1,6 +1,6 @@ package com.jd.blockchain.ledger; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; public interface KVDataEntry { @@ -27,7 +27,7 @@ public interface KVDataEntry { * * @return */ - DataType getType(); + PrimitiveType getType(); /** * 值; diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/KVDataObject.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/KVDataObject.java index e575f71a..26467e85 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/KVDataObject.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/KVDataObject.java @@ -5,7 +5,7 @@ import java.io.UnsupportedEncodingException; import java.math.BigInteger; import java.util.Date; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.utils.io.ByteArray; import com.jd.blockchain.utils.io.BytesUtils; @@ -25,11 +25,11 @@ public class KVDataObject implements KVDataEntry { private long version; - private DataType type; + private PrimitiveType type; private byte[] bytesValue; - public KVDataObject(String key, long version, DataType type, byte[] bytesValue) { + public KVDataObject(String key, long version, PrimitiveType type, byte[] bytesValue) { this.key = key; this.type = type; this.version = version < 0 ? -1 : version; @@ -62,7 +62,7 @@ public class KVDataObject implements KVDataEntry { * @see com.jd.blockchain.ledger.KVDataEntry#getType() */ @Override - public DataType getType() { + public PrimitiveType getType() { return type; } @@ -97,13 +97,13 @@ public class KVDataObject implements KVDataEntry { * 是否为空值; *

* - * 仅当数据类型 {@link #getType()} 为 {@link DataType#NIL} 时返回 true,其它情况返回 false; + * 仅当数据类型 {@link #getType()} 为 {@link PrimitiveType#NIL} 时返回 true,其它情况返回 false; *

* * @return */ public boolean isNil() { - return DataType.NIL == type; + return PrimitiveType.NIL == type; } /** @@ -119,7 +119,7 @@ public class KVDataObject implements KVDataEntry { * 返回 8 位整数值; *

* - * 仅当数据类型 {@link #getType()} 为 {@link DataType#INT8} 有效; + * 仅当数据类型 {@link #getType()} 为 {@link PrimitiveType#INT8} 有效; *

* * 无效类型将引发 {@link IllegalStateException} 异常; @@ -127,17 +127,17 @@ public class KVDataObject implements KVDataEntry { * @return */ public byte tinyValue() { - if (DataType.INT8 == type) { + if (PrimitiveType.INT8 == type) { return bytesValue[0]; } - throw new IllegalStateException(String.format("Expected type [%s], but [%s]", DataType.INT8, type)); + throw new IllegalStateException(String.format("Expected type [%s], but [%s]", PrimitiveType.INT8, type)); } /** * 返回 16 位整数值; *

* - * 仅当数据类型 {@link #getType()} 为 {@link DataType#INT16} 有效; + * 仅当数据类型 {@link #getType()} 为 {@link PrimitiveType#INT16} 有效; *

* * 无效类型将引发 {@link IllegalStateException} 异常; @@ -145,17 +145,17 @@ public class KVDataObject implements KVDataEntry { * @return */ public short shortValue() { - if (DataType.INT16 == type) { + if (PrimitiveType.INT16 == type) { return BytesUtils.toShort(bytesValue, 0); } - throw new IllegalStateException(String.format("Expected type [%s], but [%s]", DataType.INT16, type)); + throw new IllegalStateException(String.format("Expected type [%s], but [%s]", PrimitiveType.INT16, type)); } /** * 返回 32 位整数值; *

* - * 仅当数据类型 {@link #getType()} 为 {@link DataType#INT32} 有效; + * 仅当数据类型 {@link #getType()} 为 {@link PrimitiveType#INT32} 有效; *

* * 无效类型将引发 {@link IllegalStateException} 异常; @@ -163,17 +163,17 @@ public class KVDataObject implements KVDataEntry { * @return */ public int intValue() { - if (DataType.INT32 == type) { + if (PrimitiveType.INT32 == type) { return BytesUtils.toInt(bytesValue, 0); } - throw new IllegalStateException(String.format("Expected type [%s], but [%s]", DataType.INT32, type)); + throw new IllegalStateException(String.format("Expected type [%s], but [%s]", PrimitiveType.INT32, type)); } /** * 返回 64 位整数值; *

* - * 仅当数据类型 {@link #getType()} 为 {@link DataType#INT64} 有效; + * 仅当数据类型 {@link #getType()} 为 {@link PrimitiveType#INT64} 有效; *

* * 无效类型将引发 {@link IllegalStateException} 异常; @@ -181,10 +181,10 @@ public class KVDataObject implements KVDataEntry { * @return */ public long longValue() { - if (DataType.INT64 == type) { + if (PrimitiveType.INT64 == type) { return BytesUtils.toLong(bytesValue, 0); } - throw new IllegalStateException(String.format("Expected type [%s], but [%s]", DataType.INT64, type)); + throw new IllegalStateException(String.format("Expected type [%s], but [%s]", PrimitiveType.INT64, type)); } @@ -192,7 +192,7 @@ public class KVDataObject implements KVDataEntry { * 返回大整数值; *

* - * 仅当数据类型 {@link #getType()} 为 {@link DataType#BIG_INT} 有效; + * 仅当数据类型 {@link #getType()} 为 {@link PrimitiveType#BIG_INT} 有效; *

* * 无效类型将引发 {@link IllegalStateException} 异常; @@ -200,17 +200,17 @@ public class KVDataObject implements KVDataEntry { * @return */ public BigInteger bigIntValue() { - if (DataType.BIG_INT == type) { + if (PrimitiveType.BIG_INT == type) { return new BigInteger(bytesValue); } - throw new IllegalStateException(String.format("Expected type [%s], but [%s]", DataType.BIG_INT, type)); + throw new IllegalStateException(String.format("Expected type [%s], but [%s]", PrimitiveType.BIG_INT, type)); } /** * 返回布尔值; *

* - * 仅当数据类型 {@link #getType()} 为 {@link DataType#BIG_INT} 有效; + * 仅当数据类型 {@link #getType()} 为 {@link PrimitiveType#BIG_INT} 有效; *

* * 无效类型将引发 {@link IllegalStateException} 异常; @@ -218,17 +218,17 @@ public class KVDataObject implements KVDataEntry { * @return */ public boolean boolValue() { - if (DataType.BOOLEAN == type) { + if (PrimitiveType.BOOLEAN == type) { return bytesValue[0] != 0; } - throw new IllegalStateException(String.format("Expected type [%s], but [%s]", DataType.BOOLEAN, type)); + throw new IllegalStateException(String.format("Expected type [%s], but [%s]", PrimitiveType.BOOLEAN, type)); } /** * 返回日期时间值; *

* - * 仅当数据类型 {@link #getType()} 为 {@link DataType#DATETIME} 有效; + * 仅当数据类型 {@link #getType()} 为 {@link PrimitiveType#DATETIME} 有效; *

* * 无效类型将引发 {@link IllegalStateException} 异常; @@ -236,19 +236,19 @@ public class KVDataObject implements KVDataEntry { * @return */ public Date datetimeValue() { - if (DataType.DATETIME == type) { + if (PrimitiveType.DATETIME == type) { long ts = BytesUtils.toLong(bytesValue); return new Date(ts); } - throw new IllegalStateException(String.format("Expected type [%s], but [%s]", DataType.DATETIME, type)); + throw new IllegalStateException(String.format("Expected type [%s], but [%s]", PrimitiveType.DATETIME, type)); } /** * 返回大整数值; *

* - * 仅当数据类型 {@link #getType()} 为 {@link DataType#TEXT} / {@link DataType#JSON} / - * {@link DataType#XML} 有效; + * 仅当数据类型 {@link #getType()} 为 {@link PrimitiveType#TEXT} / {@link PrimitiveType#JSON} / + * {@link PrimitiveType#XML} 有效; *

* * 无效类型将引发 {@link IllegalStateException} 异常; @@ -256,15 +256,15 @@ public class KVDataObject implements KVDataEntry { * @return */ public String stringValue() { - if (DataType.TEXT == type || DataType.JSON == type || DataType.XML == type) { + if (PrimitiveType.TEXT == type || PrimitiveType.JSON == type || PrimitiveType.XML == type) { try { return new String(bytesValue, "UTF-8"); } catch (UnsupportedEncodingException e) { throw new IllegalStateException(e.getMessage(), e); } } - throw new IllegalStateException(String.format("Expected type [%s] or [%s] or [%s] , but [%s]", DataType.TEXT, - DataType.JSON, DataType.XML, type)); + throw new IllegalStateException(String.format("Expected type [%s] or [%s] or [%s] , but [%s]", PrimitiveType.TEXT, + PrimitiveType.JSON, PrimitiveType.XML, type)); } // // ---------------- diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/LedgerBlock.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/LedgerBlock.java index 31b4ae16..1b58c8a7 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/LedgerBlock.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/LedgerBlock.java @@ -2,7 +2,7 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.crypto.HashDigest; @@ -19,7 +19,7 @@ public interface LedgerBlock extends BlockBody { * * @return */ - @DataField(order = 1, primitiveType = DataType.BYTES) + @DataField(order = 1, primitiveType = PrimitiveType.BYTES) HashDigest getHash(); } diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/LedgerDataSnapshot.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/LedgerDataSnapshot.java index f65b3612..d6c9ecff 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/LedgerDataSnapshot.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/LedgerDataSnapshot.java @@ -2,23 +2,23 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.crypto.HashDigest; @DataContract(code=DataCodes.DATA_SNAPSHOT) public interface LedgerDataSnapshot { - @DataField(order=1, primitiveType = DataType.BYTES) + @DataField(order=1, primitiveType = PrimitiveType.BYTES) HashDigest getAdminAccountHash(); - @DataField(order=2, primitiveType = DataType.BYTES) + @DataField(order=2, primitiveType = PrimitiveType.BYTES) HashDigest getUserAccountSetHash(); - @DataField(order=3, primitiveType = DataType.BYTES) + @DataField(order=3, primitiveType = PrimitiveType.BYTES) HashDigest getDataAccountSetHash(); - @DataField(order=4, primitiveType = DataType.BYTES) + @DataField(order=4, primitiveType = PrimitiveType.BYTES) HashDigest getContractAccountSetHash(); // HashDigest getUserPrivilegeHash(); diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/LedgerInitSetting.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/LedgerInitSetting.java index ffd33592..90e2d44d 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/LedgerInitSetting.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/LedgerInitSetting.java @@ -2,7 +2,7 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.utils.Bytes; @@ -19,7 +19,7 @@ public interface LedgerInitSetting { * 账本的种子; * @return */ - @DataField(order = 1, primitiveType = DataType.BYTES) + @DataField(order = 1, primitiveType = PrimitiveType.BYTES) byte[] getLedgerSeed(); /** @@ -39,7 +39,7 @@ public interface LedgerInitSetting { CryptoSetting getCryptoSetting(); - @DataField(order = 4, primitiveType=DataType.TEXT) + @DataField(order = 4, primitiveType=PrimitiveType.TEXT) String getConsensusProvider(); /** @@ -47,7 +47,7 @@ public interface LedgerInitSetting { * * @return */ - @DataField(order = 5, primitiveType=DataType.BYTES) + @DataField(order = 5, primitiveType=PrimitiveType.BYTES) Bytes getConsensusSettings(); } diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/ParticipantNode.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/ParticipantNode.java index dfa066a9..c8974d1c 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/ParticipantNode.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/ParticipantNode.java @@ -2,7 +2,7 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.crypto.PubKey; @@ -29,7 +29,7 @@ public interface ParticipantNode {// extends ConsensusNode, ParticipantInfo { * * @return */ - @DataField(order = 1, primitiveType = DataType.TEXT) + @DataField(order = 1, primitiveType = PrimitiveType.TEXT) String getAddress(); /** @@ -37,7 +37,7 @@ public interface ParticipantNode {// extends ConsensusNode, ParticipantInfo { * * @return */ - @DataField(order = 2, primitiveType = DataType.TEXT) + @DataField(order = 2, primitiveType = PrimitiveType.TEXT) String getName(); /** @@ -45,6 +45,6 @@ public interface ParticipantNode {// extends ConsensusNode, ParticipantInfo { * * @return */ - @DataField(order = 3, primitiveType = DataType.BYTES) + @DataField(order = 3, primitiveType = PrimitiveType.BYTES) PubKey getPubKey(); } \ No newline at end of file diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/Transaction.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/Transaction.java index 85ce1eb3..a2442521 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/Transaction.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/Transaction.java @@ -2,7 +2,7 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.crypto.HashDigest; import com.jd.blockchain.utils.io.ByteArray; @@ -23,7 +23,7 @@ public interface Transaction extends NodeRequest, HashObject { * * @return */ - @DataField(order=1, primitiveType = DataType.BYTES) + @DataField(order=1, primitiveType = PrimitiveType.BYTES) @Override HashDigest getHash(); @@ -32,7 +32,7 @@ public interface Transaction extends NodeRequest, HashObject { * * @return */ - @DataField(order=2, primitiveType=DataType.INT64) + @DataField(order=2, primitiveType=PrimitiveType.INT64) long getBlockHeight(); /** diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionContent.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionContent.java index 91e7c7a8..5203835a 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionContent.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionContent.java @@ -2,7 +2,7 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.crypto.HashDigest; @@ -15,7 +15,7 @@ import com.jd.blockchain.crypto.HashDigest; @DataContract(code= DataCodes.TX_CONTENT) public interface TransactionContent extends TransactionContentBody, HashObject { @Override - @DataField(order=1, primitiveType = DataType.BYTES) + @DataField(order=1, primitiveType = PrimitiveType.BYTES) HashDigest getHash(); } diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionContentBody.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionContentBody.java index 22ee2c3b..14ce61ac 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionContentBody.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionContentBody.java @@ -2,7 +2,7 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.crypto.HashDigest; @@ -22,7 +22,7 @@ public interface TransactionContentBody { * * @return */ - @DataField(order = 1, primitiveType = DataType.BYTES) + @DataField(order = 1, primitiveType = PrimitiveType.BYTES) HashDigest getLedgerHash(); /** diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionRequest.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionRequest.java index 03887417..c2fc42e1 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionRequest.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionRequest.java @@ -2,7 +2,7 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.crypto.HashDigest; @@ -21,6 +21,6 @@ public interface TransactionRequest extends NodeRequest, HashObject { * @return */ @Override - @DataField(order=1, primitiveType = DataType.BYTES) + @DataField(order=1, primitiveType = PrimitiveType.BYTES) HashDigest getHash(); } \ No newline at end of file diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionResponse.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionResponse.java index 7d66a7c1..f83a8961 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionResponse.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionResponse.java @@ -2,7 +2,7 @@ package com.jd.blockchain.ledger; import com.jd.blockchain.binaryproto.DataContract; import com.jd.blockchain.binaryproto.DataField; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.consts.DataCodes; import com.jd.blockchain.crypto.HashDigest; @@ -20,7 +20,7 @@ public interface TransactionResponse { * * @return */ - @DataField(order=1, primitiveType = DataType.BYTES) + @DataField(order=1, primitiveType = PrimitiveType.BYTES) HashDigest getContentHash(); /** @@ -36,7 +36,7 @@ public interface TransactionResponse { * * @return */ - @DataField(order=3, primitiveType = DataType.BYTES) + @DataField(order=3, primitiveType = PrimitiveType.BYTES) HashDigest getBlockHash(); /** @@ -47,10 +47,10 @@ public interface TransactionResponse { * * @return */ - @DataField(order=4, primitiveType=DataType.INT64) + @DataField(order=4, primitiveType=PrimitiveType.INT64) long getBlockHeight(); - @DataField(order=5, primitiveType=DataType.BOOLEAN) + @DataField(order=5, primitiveType=PrimitiveType.BOOLEAN) boolean isSuccess(); } \ No newline at end of file diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionState.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionState.java index 6c9a4644..f32f2cc1 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionState.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/TransactionState.java @@ -1,6 +1,6 @@ package com.jd.blockchain.ledger; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.binaryproto.EnumContract; import com.jd.blockchain.binaryproto.EnumField; import com.jd.blockchain.consts.DataCodes; @@ -39,7 +39,7 @@ public enum TransactionState { */ TIMEOUT((byte) 0x81); - @EnumField(type= DataType.INT8) + @EnumField(type= PrimitiveType.INT8) public final byte CODE; private TransactionState(byte code) { diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/UserRegisterOperation.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/UserRegisterOperation.java index 7cf658b7..f325085e 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/UserRegisterOperation.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/ledger/UserRegisterOperation.java @@ -7,12 +7,6 @@ import com.jd.blockchain.consts.DataCodes; @DataContract(code= DataCodes.TX_OP_USER_REG) public interface UserRegisterOperation extends Operation { -// @Override -// @DataField(order=1, refEnum = true) -// default OperationType getType() { -// return OperationType.REGISTER_DATA_ACCOUNT; -// } - @DataField(order=2, refContract = true) BlockchainIdentity getUserID(); diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/DataAccountKVSetOperationBuilderImpl.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/DataAccountKVSetOperationBuilderImpl.java index 08522f3d..c0511e55 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/DataAccountKVSetOperationBuilderImpl.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/DataAccountKVSetOperationBuilderImpl.java @@ -1,7 +1,7 @@ package com.jd.blockchain.transaction; import com.jd.blockchain.ledger.BytesValue; -import com.jd.blockchain.ledger.BytesValueImpl; +import com.jd.blockchain.ledger.BytesValueEntry; import com.jd.blockchain.ledger.DataAccountKVSetOperation; import com.jd.blockchain.ledger.BytesValueType; import com.jd.blockchain.utils.Bytes; @@ -23,7 +23,7 @@ public class DataAccountKVSetOperationBuilderImpl implements DataAccountKVSetOpe @Override public DataAccountKVSetOperationBuilder set(String key, byte[] value, long expVersion) { - BytesValue bytesValue = new BytesValueImpl(BytesValueType.BYTES, value); + BytesValue bytesValue = new BytesValueEntry(BytesValueType.BYTES, value); operation.set(key, bytesValue, expVersion); return this; } @@ -32,10 +32,10 @@ public class DataAccountKVSetOperationBuilderImpl implements DataAccountKVSetOpe public DataAccountKVSetOperationBuilder set(String key, String value, long expVersion) { BytesValue bytesValue; if (JSONSerializeUtils.isJSON(value)) { - bytesValue = new BytesValueImpl(BytesValueType.JSON, value.getBytes()); + bytesValue = new BytesValueEntry(BytesValueType.JSON, value.getBytes()); } else { - bytesValue = new BytesValueImpl(BytesValueType.TEXT, value.getBytes()); + bytesValue = new BytesValueEntry(BytesValueType.TEXT, value.getBytes()); } operation.set(key, bytesValue, expVersion); return this; @@ -43,13 +43,13 @@ public class DataAccountKVSetOperationBuilderImpl implements DataAccountKVSetOpe @Override public DataAccountKVSetOperationBuilder set(String key, Bytes value, long expVersion) { - BytesValue bytesValue = new BytesValueImpl(BytesValueType.BYTES, value.toBytes()); + BytesValue bytesValue = new BytesValueEntry(BytesValueType.BYTES, value.toBytes()); operation.set(key, bytesValue, expVersion); return this; } @Override public DataAccountKVSetOperationBuilder set(String key, long value, long expVersion) { - BytesValue bytesValue = new BytesValueImpl(BytesValueType.INT64, BytesUtils.toBytes(value)); + BytesValue bytesValue = new BytesValueEntry(BytesValueType.INT64, BytesUtils.toBytes(value)); operation.set(key, bytesValue, expVersion); return this; } diff --git a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/DataAccountKVSetOpTemplateTest.java b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/DataAccountKVSetOpTemplateTest.java index 2f877868..56a38451 100644 --- a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/DataAccountKVSetOpTemplateTest.java +++ b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/DataAccountKVSetOpTemplateTest.java @@ -10,7 +10,7 @@ package test.com.jd.blockchain.ledger.data; import com.jd.blockchain.binaryproto.BinaryEncodingUtils; import com.jd.blockchain.binaryproto.DataContractRegistry; -import com.jd.blockchain.ledger.BytesValueImpl; +import com.jd.blockchain.ledger.BytesValueEntry; import com.jd.blockchain.ledger.DataAccountKVSetOperation; import com.jd.blockchain.ledger.BytesValueType; import com.jd.blockchain.ledger.Operation; @@ -43,11 +43,11 @@ public class DataAccountKVSetOpTemplateTest { String accountAddress = "zhangsandhakhdkah"; data = new DataAccountKVSetOpTemplate(Bytes.fromString(accountAddress)); KVData kvData1 = - new KVData("test1", new BytesValueImpl(BytesValueType.TEXT, "zhangsan".getBytes()), 9999L); + new KVData("test1", new BytesValueEntry(BytesValueType.TEXT, "zhangsan".getBytes()), 9999L); KVData kvData2 = - new KVData("test2", new BytesValueImpl(BytesValueType.TEXT, "lisi".getBytes()), 9990L); + new KVData("test2", new BytesValueEntry(BytesValueType.TEXT, "lisi".getBytes()), 9990L); KVData kvData3 = - new KVData("test3", new BytesValueImpl(BytesValueType.TEXT, "wangwu".getBytes()), 1990L); + new KVData("test3", new BytesValueEntry(BytesValueType.TEXT, "wangwu".getBytes()), 1990L); data.set(kvData1); data.set(kvData2); data.set(kvData3); diff --git a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/KVDataTest.java b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/KVDataTest.java index e7786f91..8ef2373b 100644 --- a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/KVDataTest.java +++ b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/KVDataTest.java @@ -10,7 +10,7 @@ package test.com.jd.blockchain.ledger.data; import com.jd.blockchain.binaryproto.BinaryEncodingUtils; import com.jd.blockchain.binaryproto.DataContractRegistry; -import com.jd.blockchain.ledger.BytesValueImpl; +import com.jd.blockchain.ledger.BytesValueEntry; import com.jd.blockchain.ledger.DataAccountKVSetOperation; import com.jd.blockchain.ledger.BytesValueType; import com.jd.blockchain.transaction.DataAccountKVSetOpTemplate; @@ -39,7 +39,7 @@ public class KVDataTest { byte[] value = "test-value".getBytes(); long expectedVersion = 9999L; - kvData = new KVData(key, new BytesValueImpl(BytesValueType.BYTES, value), expectedVersion); + kvData = new KVData(key, new BytesValueEntry(BytesValueType.BYTES, value), expectedVersion); } @Test diff --git a/source/peer/src/main/java/com/jd/blockchain/peer/web/LedgerQueryController.java b/source/peer/src/main/java/com/jd/blockchain/peer/web/LedgerQueryController.java index 673f5e7e..3d918ba4 100644 --- a/source/peer/src/main/java/com/jd/blockchain/peer/web/LedgerQueryController.java +++ b/source/peer/src/main/java/com/jd/blockchain/peer/web/LedgerQueryController.java @@ -8,7 +8,7 @@ import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import com.jd.blockchain.binaryproto.BinaryEncodingUtils; -import com.jd.blockchain.binaryproto.DataType; +import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.crypto.HashDigest; import com.jd.blockchain.ledger.AccountHeader; import com.jd.blockchain.ledger.BytesValue; @@ -339,11 +339,11 @@ public class LedgerQueryController implements BlockchainQueryService { for (int i = 0; i < entries.length; i++) { ver = dataAccount.getDataVersion(Bytes.fromString(keys[i])); if (ver < 0) { - entries[i] = new KVDataObject(keys[i], -1, DataType.NIL, null); + entries[i] = new KVDataObject(keys[i], -1, PrimitiveType.NIL, null); }else { byte[] value = dataAccount.getBytes(Bytes.fromString(keys[i]), ver); BytesValue decodeData = BinaryEncodingUtils.decode(value); - entries[i] = new KVDataObject(keys[i], ver, DataType.valueOf(decodeData.getType().CODE), decodeData.getValue().toBytes()); + entries[i] = new KVDataObject(keys[i], ver, PrimitiveType.valueOf(decodeData.getType().CODE), decodeData.getValue().toBytes()); } } From 8e9f6948011d6b1bbc6c8e8da2dff4e7aba18fff Mon Sep 17 00:00:00 2001 From: huanghaiquan Date: Mon, 6 May 2019 11:38:52 +0800 Subject: [PATCH 10/10] Renamed; --- ...EncodingUtils.java => BinaryProtocol.java} | 2 +- .../binaryproto/DataContractRegistry.java | 3 ++ .../jd/blockchain/binaryproto/DataType.java | 25 +++++++++---- .../blockchain/binaryproto/PrimitiveType.java | 35 +++++++++--------- .../binaryproto/BinaryEncodingTest.java | 36 +++++++++---------- .../bftsmart/BftsmartSettingsFactory.java | 10 +++--- .../mq/config/MsgQueueSettingsFactory.java | 10 +++--- .../gateway/web/TxProcessingController.java | 4 +-- .../jd/blockchain/ledger/core/AccountSet.java | 8 ++--- .../blockchain/ledger/core/DataAccount.java | 4 +-- .../ledger/core/LedgerAdminAccount.java | 6 ++-- .../ledger/core/ParticipantDataSet.java | 8 ++--- .../ledger/core/TransactionSet.java | 6 ++-- .../ledger/core/impl/LedgerQueryService.java | 4 +-- .../core/impl/LedgerRepositoryImpl.java | 8 ++--- .../core/impl/LedgerTransactionalEditor.java | 6 ++-- .../DataAccountKVSetOperationHandle.java | 4 +-- .../blockchain/ledger/LedgerAccountTest.java | 6 ++-- .../ledger/LedgerBlockImplTest.java | 10 +++--- .../ledger/LedgerInitOperationTest.java | 10 +++--- .../ledger/LedgerInitSettingTest.java | 10 +++--- .../blockchain/ledger/LedgerMetaDataTest.java | 18 +++++----- .../ledger/LedgerTransactionDataTest.java | 22 ++++++------ .../ledger/TransactionStagedSnapshotTest.java | 6 ++-- .../jd/blockchain/transaction/PreparedTx.java | 4 +-- .../transaction/SignatureEncoding.java | 6 ++-- .../jd/blockchain/transaction/TxBuilder.java | 4 +-- .../transaction/TxRequestBuilder.java | 4 +-- .../ContractCodeDeployOpTemplateTest.java | 10 +++--- .../data/ContractEventSendOpTemplateTest.java | 10 +++--- .../data/DataAccountKVSetOpTemplateTest.java | 10 +++--- .../DataAccountRegisterOpTemplateTest.java | 10 +++--- .../ledger/data/DigitalSignatureBlobTest.java | 10 +++--- .../jd/blockchain/ledger/data/KVDataTest.java | 6 ++-- .../ledger/data/TxContentBlobTest.java | 10 +++--- .../ledger/data/TxRequestMessageTest.java | 14 ++++---- .../ledger/data/TxResponseMessageTest.java | 6 ++-- .../data/UserRegisterOpTemplateTest.java | 10 +++--- .../converters/BinaryMessageConverter.java | 6 ++-- .../consensus/ConsensusMessageDispatcher.java | 6 ++-- .../peer/web/LedgerQueryController.java | 4 +-- .../BinarySerializeRequestConverter.java | 6 ++-- .../BinarySerializeResponseConverter.java | 4 +-- .../HashDigestsResponseConverter.java | 2 +- .../sdk/service/NodeSigningAppender.java | 10 +++--- .../TransactionRequestMessageConverter.java | 6 ++-- .../TransactionResponseMessageConverter.java | 6 ++-- .../sdk/client/GatewayServiceFactory.java | 4 +-- .../intgr/perf/LedgerInitializeWebTest.java | 22 ++++++------ .../LedgerInitializeWeb4SingleStepsTest.java | 22 ++++++------ .../service/RemoteTransactionService.java | 10 +++--- .../web/DecisionRequestBodyConverter.java | 4 +-- .../web/DecisionResponseConverter.java | 4 +-- .../web/LedgerInitMessageConverter.java | 6 ++-- .../web/PermissionResponseConverter.java | 4 +-- 55 files changed, 258 insertions(+), 243 deletions(-) rename source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/{BinaryEncodingUtils.java => BinaryProtocol.java} (98%) diff --git a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/BinaryEncodingUtils.java b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/BinaryProtocol.java similarity index 98% rename from source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/BinaryEncodingUtils.java rename to source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/BinaryProtocol.java index 7abe013c..e0b17277 100644 --- a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/BinaryEncodingUtils.java +++ b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/BinaryProtocol.java @@ -10,7 +10,7 @@ import com.jd.blockchain.utils.io.BytesOutputBuffer; import com.jd.blockchain.utils.io.BytesSlice; import com.jd.blockchain.utils.io.BytesUtils; -public class BinaryEncodingUtils { +public class BinaryProtocol { public static void encode(Object data, Class contractType, OutputStream out) { diff --git a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/DataContractRegistry.java b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/DataContractRegistry.java index e6848575..08dcc76f 100644 --- a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/DataContractRegistry.java +++ b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/DataContractRegistry.java @@ -13,6 +13,9 @@ public class DataContractRegistry { private DataContractRegistry() { } + + //TODO: Refactor contract type registering in service provider mode; + public static DataContractEncoder register(Class contractType) { DataContractEncoder encoder = DataContractContext.resolve(contractType); return encoder; diff --git a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/DataType.java b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/DataType.java index 08c3728b..9df9f7bd 100644 --- a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/DataType.java +++ b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/DataType.java @@ -2,10 +2,23 @@ package com.jd.blockchain.binaryproto; public interface DataType { - public static final byte NUMERIC_FLAG = (byte)0x10; - - public static final byte TEXT_FLAG = (byte)0x20; - - public static final byte BINARY_FLAG = (byte)0x40; - + /** + * 空值; + */ + public static final byte NIL = (byte) 0x00; + + /** + * 布尔; + */ + public static final byte BOOLEAN = (byte) 0x01; + + /** + * 数值; + */ + public static final byte NUMERIC = (byte) 0x10; + + public static final byte TEXT = (byte) 0x20; + + public static final byte BINARY = (byte) 0x40; + } diff --git a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/PrimitiveType.java b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/PrimitiveType.java index 6fd475cd..cf791421 100644 --- a/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/PrimitiveType.java +++ b/source/binary-proto/src/main/java/com/jd/blockchain/binaryproto/PrimitiveType.java @@ -7,73 +7,72 @@ package com.jd.blockchain.binaryproto; * */ public enum PrimitiveType { - + /** * 空; */ - NIL((byte) 0x00), + NIL(DataType.NIL), /** * 布尔型; */ - BOOLEAN((byte) 0x10), + BOOLEAN(DataType.BOOLEAN), /** * 数值型: */ - INT8((byte) 0x11), + INT8((byte) (DataType.NUMERIC | 0x01)), - INT16((byte) 0x12), + INT16((byte) (DataType.NUMERIC | 0x02)), - INT32((byte) 0x13), + INT32((byte) (DataType.NUMERIC | 0x03)), - INT64((byte) 0x14), + INT64((byte) (DataType.NUMERIC | 0x04)), /** * 日期时间; */ - DATETIME((byte) 0x15), + DATETIME((byte) (DataType.NUMERIC | 0x08)), /** * 文本数据; */ - TEXT((byte) 0x20), + TEXT(DataType.TEXT), /** * 文本数据; */ - JSON((byte) 0x21), + JSON((byte) (DataType.TEXT | 0x01)), /** * 文本数据; */ - XML((byte) 0x22), + XML((byte) (DataType.TEXT | 0x02)), /** * 二进制数据; */ - BYTES((byte) 0x40), + BYTES(DataType.BINARY), /** * 大整数; */ - BIG_INT((byte) 0x41), + BIG_INT((byte) (DataType.BINARY | 0x01)), /** * 图片; */ - IMG((byte) 0x42), + IMG((byte) (DataType.BINARY | 0x02)), /** * 视频; */ - VIDEO((byte) 0x43), + VIDEO((byte) (DataType.BINARY | 0x03)), /** - * 位置; + * 位置坐标; */ - LOCATION((byte) 0x44); - + LOCATION((byte) (DataType.BINARY | 0x04)); public final byte CODE; diff --git a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/BinaryEncodingTest.java b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/BinaryEncodingTest.java index fba70646..b1395038 100644 --- a/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/BinaryEncodingTest.java +++ b/source/binary-proto/src/test/java/test/com/jd/blockchain/binaryproto/BinaryEncodingTest.java @@ -7,7 +7,7 @@ import static org.junit.Assert.assertTrue; import org.junit.Test; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.binaryproto.DataContractException; import com.jd.blockchain.binaryproto.DataContractRegistry; import com.jd.blockchain.utils.Bytes; @@ -37,7 +37,7 @@ public class BinaryEncodingTest { pd.setConfig(Bytes.fromString("Configuration of something.")); pd.setNetworkAddress(networkAddress); - byte[] bytes = BinaryEncodingUtils.encode(pd, PrimitiveDatas.class); + byte[] bytes = BinaryProtocol.encode(pd, PrimitiveDatas.class); int offset = 0; int code = BytesUtils.toInt(bytes, offset); offset += 12; @@ -109,7 +109,7 @@ public class BinaryEncodingTest { public void testEncoding_Null() { DataContractRegistry.register(PrimitiveDatas.class); - byte[] bytes = BinaryEncodingUtils.encode(null, PrimitiveDatas.class); + byte[] bytes = BinaryProtocol.encode(null, PrimitiveDatas.class); int offset = 0; int code = BytesUtils.toInt(bytes, offset); offset += 12;// 暂不校验 version; @@ -138,8 +138,8 @@ public class BinaryEncodingTest { pd.setConfig(Bytes.fromString("Configuration of something.")); pd.setNetworkAddress(networkAddress); - byte[] bytes = BinaryEncodingUtils.encode(pd, PrimitiveDatas.class); - PrimitiveDatas decodeData = BinaryEncodingUtils.decode(bytes); + byte[] bytes = BinaryProtocol.encode(pd, PrimitiveDatas.class); + PrimitiveDatas decodeData = BinaryProtocol.decode(bytes); assertEquals(pd.getId(), decodeData.getId()); assertEquals(pd.isEnable(), decodeData.isEnable()); assertEquals(pd.isBoy(), decodeData.isBoy()); @@ -163,7 +163,7 @@ public class BinaryEncodingTest { EnumDatasImpl enumDatas = new EnumDatasImpl(); enumDatas.setLevel(EnumLevel.V1); - byte[] bytes = BinaryEncodingUtils.encode(enumDatas, EnumDatas.class); + byte[] bytes = BinaryProtocol.encode(enumDatas, EnumDatas.class); int offset = 0; int code = BytesUtils.toInt(bytes, offset); offset += 12; @@ -186,8 +186,8 @@ public class BinaryEncodingTest { EnumDatasImpl enumDatas = new EnumDatasImpl(); enumDatas.setLevel(EnumLevel.V1); - byte[] bytes = BinaryEncodingUtils.encode(enumDatas, EnumDatas.class); - EnumDatas decodeData = BinaryEncodingUtils.decode(bytes); + byte[] bytes = BinaryProtocol.encode(enumDatas, EnumDatas.class); + EnumDatas decodeData = BinaryProtocol.decode(bytes); assertEquals(enumDatas.getLevel(), decodeData.getLevel()); } @@ -215,7 +215,7 @@ public class BinaryEncodingTest { refContractDatas.setPrimitiveDatas(primitiveDatas); - byte[] bytes = BinaryEncodingUtils.encode(refContractDatas, RefContractDatas.class); + byte[] bytes = BinaryProtocol.encode(refContractDatas, RefContractDatas.class); int offset = 0; int code = BytesUtils.toInt(bytes, offset); offset += 12; @@ -248,7 +248,7 @@ public class BinaryEncodingTest { RefContractDatasImpl refContractDatas = new RefContractDatasImpl(); - byte[] bytes = BinaryEncodingUtils.encode(refContractDatas, RefContractDatas.class); + byte[] bytes = BinaryProtocol.encode(refContractDatas, RefContractDatas.class); int offset = 0; int code = BytesUtils.toInt(bytes, offset); offset += 12; @@ -295,8 +295,8 @@ public class BinaryEncodingTest { refContractDatas.setPrimitiveDatas(primitiveDatas); - byte[] bytes = BinaryEncodingUtils.encode(refContractDatas, RefContractDatas.class); - RefContractDatas decodeData = BinaryEncodingUtils.decode(bytes); + byte[] bytes = BinaryProtocol.encode(refContractDatas, RefContractDatas.class); + RefContractDatas decodeData = BinaryProtocol.decode(bytes); assertEquals(refContractDatas.getPrimitive().getId(), decodeData.getPrimitive().getId()); assertEquals(refContractDatas.getPrimitive().isEnable(), decodeData.getPrimitive().isEnable()); @@ -329,7 +329,7 @@ public class BinaryEncodingTest { operations[0] = subOperation; genericRefContractDatas.setOperations(operations); - byte[] bytes = BinaryEncodingUtils.encode(genericRefContractDatas, GenericRefContractDatas.class); + byte[] bytes = BinaryProtocol.encode(genericRefContractDatas, GenericRefContractDatas.class); int offset = 0; int code = BytesUtils.toInt(bytes, offset); offset += 12; @@ -391,9 +391,9 @@ public class BinaryEncodingTest { operations[0] = subOperation; genericRefContractDatas.setOperations(operations); - byte[] bytes = BinaryEncodingUtils.encode(genericRefContractDatas, GenericRefContractDatas.class); + byte[] bytes = BinaryProtocol.encode(genericRefContractDatas, GenericRefContractDatas.class); - GenericRefContractDatas decodeData = BinaryEncodingUtils.decode(bytes); + GenericRefContractDatas decodeData = BinaryProtocol.decode(bytes); assertEquals("Jerry", ((SubOperation) (decodeData.getOperations()[0])).getUserName()); } @@ -432,7 +432,7 @@ public class BinaryEncodingTest { operations[0] = subOperation; compositeDatas.setOperations(operations); - byte[] bytes = BinaryEncodingUtils.encode(compositeDatas, CompositeDatas.class); + byte[] bytes = BinaryProtocol.encode(compositeDatas, CompositeDatas.class); int offset = 0; int code = BytesUtils.toInt(bytes, offset); @@ -508,8 +508,8 @@ public class BinaryEncodingTest { operations[0] = subOperation; compositeDatas.setOperations(operations); - byte[] bytes = BinaryEncodingUtils.encode(compositeDatas, CompositeDatas.class); - CompositeDatas decodeData = BinaryEncodingUtils.decode(bytes); + byte[] bytes = BinaryProtocol.encode(compositeDatas, CompositeDatas.class); + CompositeDatas decodeData = BinaryProtocol.decode(bytes); assertEquals(compositeDatas.isEnable(), decodeData.isEnable()); assertEquals(compositeDatas.getAge(), decodeData.getAge()); diff --git a/source/consensus/consensus-bftsmart/src/main/java/com/jd/blockchain/consensus/bftsmart/BftsmartSettingsFactory.java b/source/consensus/consensus-bftsmart/src/main/java/com/jd/blockchain/consensus/bftsmart/BftsmartSettingsFactory.java index 45be9423..a3e345ec 100644 --- a/source/consensus/consensus-bftsmart/src/main/java/com/jd/blockchain/consensus/bftsmart/BftsmartSettingsFactory.java +++ b/source/consensus/consensus-bftsmart/src/main/java/com/jd/blockchain/consensus/bftsmart/BftsmartSettingsFactory.java @@ -1,6 +1,6 @@ package com.jd.blockchain.consensus.bftsmart; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.binaryproto.DataContractRegistry; import com.jd.blockchain.consensus.*; import com.jd.blockchain.utils.io.BytesEncoder; @@ -40,14 +40,14 @@ public class BftsmartSettingsFactory implements SettingsFactory { @Override public byte[] encode(ConsensusSettings data) { if (data instanceof BftsmartConsensusSettings) { - return BinaryEncodingUtils.encode(data, BftsmartConsensusSettings.class); + return BinaryProtocol.encode(data, BftsmartConsensusSettings.class); } throw new IllegalArgumentException("Settings data isn't supported! Accept BftsmartConsensusSettings only!"); } @Override public ConsensusSettings decode(byte[] bytes) { - return BinaryEncodingUtils.decodeAs(bytes, BftsmartConsensusSettings.class); + return BinaryProtocol.decodeAs(bytes, BftsmartConsensusSettings.class); } } @@ -57,14 +57,14 @@ public class BftsmartSettingsFactory implements SettingsFactory { @Override public byte[] encode(ClientIncomingSettings data) { if (data instanceof BftsmartClientIncomingSettings) { - return BinaryEncodingUtils.encode(data, BftsmartClientIncomingSettings.class); + return BinaryProtocol.encode(data, BftsmartClientIncomingSettings.class); } throw new IllegalArgumentException("Settings data isn't supported! Accept BftsmartClientIncomingSettings only!"); } @Override public ClientIncomingSettings decode(byte[] bytes) { - return BinaryEncodingUtils.decodeAs(bytes, BftsmartClientIncomingSettings.class); + return BinaryProtocol.decodeAs(bytes, BftsmartClientIncomingSettings.class); } } diff --git a/source/consensus/consensus-mq/src/main/java/com/jd/blockchain/consensus/mq/config/MsgQueueSettingsFactory.java b/source/consensus/consensus-mq/src/main/java/com/jd/blockchain/consensus/mq/config/MsgQueueSettingsFactory.java index e87adb9e..61449436 100644 --- a/source/consensus/consensus-mq/src/main/java/com/jd/blockchain/consensus/mq/config/MsgQueueSettingsFactory.java +++ b/source/consensus/consensus-mq/src/main/java/com/jd/blockchain/consensus/mq/config/MsgQueueSettingsFactory.java @@ -8,7 +8,7 @@ */ package com.jd.blockchain.consensus.mq.config; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.binaryproto.DataContractRegistry; import com.jd.blockchain.consensus.ClientIncomingSettings; import com.jd.blockchain.consensus.ConsensusSettings; @@ -75,14 +75,14 @@ public class MsgQueueSettingsFactory implements SettingsFactory { @Override public byte[] encode(ConsensusSettings data) { if (data instanceof MsgQueueConsensusSettings) { - return BinaryEncodingUtils.encode(data, MsgQueueConsensusSettings.class); + return BinaryProtocol.encode(data, MsgQueueConsensusSettings.class); } throw new IllegalArgumentException("Settings data isn't supported! Accept MsgQueueConsensusSettings only!"); } @Override public MsgQueueConsensusSettings decode(byte[] bytes) { - return BinaryEncodingUtils.decodeAs(bytes, MsgQueueConsensusSettings.class); + return BinaryProtocol.decodeAs(bytes, MsgQueueConsensusSettings.class); } } @@ -91,14 +91,14 @@ public class MsgQueueSettingsFactory implements SettingsFactory { @Override public byte[] encode(ClientIncomingSettings data) { if (data instanceof MsgQueueClientIncomingSettings) { - return BinaryEncodingUtils.encode(data, MsgQueueClientIncomingSettings.class); + return BinaryProtocol.encode(data, MsgQueueClientIncomingSettings.class); } throw new IllegalArgumentException("Settings data isn't supported! Accept MsgQueueClientIncomingSettings only!"); } @Override public MsgQueueClientIncomingSettings decode(byte[] bytes) { - return BinaryEncodingUtils.decodeAs(bytes, MsgQueueClientIncomingSettings.class); + return BinaryProtocol.decodeAs(bytes, MsgQueueClientIncomingSettings.class); } } diff --git a/source/gateway/src/main/java/com/jd/blockchain/gateway/web/TxProcessingController.java b/source/gateway/src/main/java/com/jd/blockchain/gateway/web/TxProcessingController.java index 7209f589..3ee571d9 100644 --- a/source/gateway/src/main/java/com/jd/blockchain/gateway/web/TxProcessingController.java +++ b/source/gateway/src/main/java/com/jd/blockchain/gateway/web/TxProcessingController.java @@ -7,7 +7,7 @@ import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.bind.annotation.RestController; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.crypto.Crypto; import com.jd.blockchain.crypto.HashDigest; import com.jd.blockchain.crypto.SignatureFunction; @@ -53,7 +53,7 @@ public class TxProcessingController implements TransactionService { throw new IllegalStateException("Not implemented!"); } else { // 验证签名; - byte[] content = BinaryEncodingUtils.encode(txRequest.getTransactionContent(), TransactionContent.class); + byte[] content = BinaryProtocol.encode(txRequest.getTransactionContent(), TransactionContent.class); for (DigitalSignature sign : partiSigns) { SignatureFunction signFunc = Crypto .getSignatureFunction(sign.getPubKey().getAlgorithm()); diff --git a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/AccountSet.java b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/AccountSet.java index 42904f14..19b195f1 100644 --- a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/AccountSet.java +++ b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/AccountSet.java @@ -3,7 +3,7 @@ package com.jd.blockchain.ledger.core; import java.util.HashMap; import java.util.Map; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.binaryproto.DataContractRegistry; import com.jd.blockchain.crypto.AddressEncoding; import com.jd.blockchain.crypto.HashDigest; @@ -99,7 +99,7 @@ public class AccountSet implements Transactional, MerkleProvable { // } private AccountHeader deserialize(byte[] txBytes) { - return BinaryEncodingUtils.decode(txBytes); + return BinaryProtocol.decode(txBytes); } /** @@ -289,13 +289,13 @@ public class AccountSet implements Transactional, MerkleProvable { private VersioningAccount deserialize(byte[] bytes, CryptoSetting cryptoSetting, String keyPrefix, ExPolicyKVStorage exStorage, VersioningKVStorage verStorage, boolean readonly, long version) { - AccountHeader accInfo = BinaryEncodingUtils.decode(bytes); + AccountHeader accInfo = BinaryProtocol.decode(bytes); return new VersioningAccount(accInfo.getAddress(), accInfo.getPubKey(), accInfo.getRootHash(), cryptoSetting, keyPrefix, exStorage, verStorage, readonly, accessPolicy, version); } private byte[] serialize(AccountHeader account) { - return BinaryEncodingUtils.encode(account, AccountHeader.class); + return BinaryProtocol.encode(account, AccountHeader.class); } @Override diff --git a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/DataAccount.java b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/DataAccount.java index 08cb2639..aa51901a 100644 --- a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/DataAccount.java +++ b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/DataAccount.java @@ -1,6 +1,6 @@ package com.jd.blockchain.ledger.core; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.crypto.HashDigest; import com.jd.blockchain.crypto.PubKey; @@ -141,7 +141,7 @@ public class DataAccount implements AccountHeader, MerkleProvable { value = baseAccount.dataset.getValuesAtIndex(fromIndex); key = baseAccount.dataset.getKeyAtIndex(fromIndex); ver = baseAccount.dataset.getVersion(key); - BytesValue decodeData = BinaryEncodingUtils.decode(value); + BytesValue decodeData = BinaryProtocol.decode(value); kvDataEntries[i] = new KVDataObject(key, ver, PrimitiveType.valueOf(decodeData.getType().CODE), decodeData.getValue().toBytes()); fromIndex++; } diff --git a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/LedgerAdminAccount.java b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/LedgerAdminAccount.java index 32ba3090..68f77f29 100644 --- a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/LedgerAdminAccount.java +++ b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/LedgerAdminAccount.java @@ -3,7 +3,7 @@ package com.jd.blockchain.ledger.core; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.binaryproto.DataContractRegistry; import com.jd.blockchain.crypto.Crypto; import com.jd.blockchain.crypto.HashDigest; @@ -288,11 +288,11 @@ public class LedgerAdminAccount implements Transactional, LedgerAdministration { } private LedgerMetadata deserializeMetadata(byte[] bytes) { - return BinaryEncodingUtils.decode(bytes); + return BinaryProtocol.decode(bytes); } private byte[] serializeMetadata(LedgerMetadataImpl config) { - return BinaryEncodingUtils.encode(config, LedgerMetadata.class); + return BinaryProtocol.encode(config, LedgerMetadata.class); } @Override diff --git a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/ParticipantDataSet.java b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/ParticipantDataSet.java index feb51295..77e94d77 100644 --- a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/ParticipantDataSet.java +++ b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/ParticipantDataSet.java @@ -1,6 +1,6 @@ package com.jd.blockchain.ledger.core; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.binaryproto.DataContractRegistry; import com.jd.blockchain.crypto.HashDigest; import com.jd.blockchain.ledger.ParticipantNode; @@ -65,7 +65,7 @@ public class ParticipantDataSet implements Transactional, MerkleProvable { */ public void addConsensusParticipant(ParticipantNode participant) { Bytes key = encodeKey(participant.getAddress()); - byte[] participantBytes = BinaryEncodingUtils.encode(participant, ParticipantNode.class); + byte[] participantBytes = BinaryProtocol.encode(participant, ParticipantNode.class); long nv = dataset.setValue(key, participantBytes, -1); if (nv < 0) { throw new LedgerException("Participant already exist! --[id=" + key + "]"); @@ -92,7 +92,7 @@ public class ParticipantDataSet implements Transactional, MerkleProvable { if (bytes == null) { return null; } - return BinaryEncodingUtils.decode(bytes); + return BinaryProtocol.decode(bytes); } public ParticipantNode[] getParticipants() { @@ -100,7 +100,7 @@ public class ParticipantDataSet implements Transactional, MerkleProvable { ParticipantNode[] pns = new ParticipantNode[bytes.length]; for (int i = 0; i < pns.length; i++) { - pns[i] = BinaryEncodingUtils.decode(bytes[i]); + pns[i] = BinaryProtocol.decode(bytes[i]); } return pns; } diff --git a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/TransactionSet.java b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/TransactionSet.java index f698e361..09b941d1 100644 --- a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/TransactionSet.java +++ b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/TransactionSet.java @@ -1,6 +1,6 @@ package com.jd.blockchain.ledger.core; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.binaryproto.DataContractRegistry; import com.jd.blockchain.crypto.HashDigest; import com.jd.blockchain.ledger.CryptoSetting; @@ -142,11 +142,11 @@ public class TransactionSet implements Transactional, MerkleProvable { } private LedgerTransaction deserialize(byte[] txBytes) { - return BinaryEncodingUtils.decode(txBytes); + return BinaryProtocol.decode(txBytes); } private byte[] serialize(LedgerTransaction txRequest) { - return BinaryEncodingUtils.encode(txRequest, LedgerTransaction.class); + return BinaryProtocol.encode(txRequest, LedgerTransaction.class); } public boolean isReadonly() { diff --git a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/LedgerQueryService.java b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/LedgerQueryService.java index 02ff00a1..e7131c5a 100644 --- a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/LedgerQueryService.java +++ b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/LedgerQueryService.java @@ -1,6 +1,6 @@ package com.jd.blockchain.ledger.core.impl; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.crypto.HashDigest; import com.jd.blockchain.ledger.AccountHeader; @@ -274,7 +274,7 @@ public class LedgerQueryService implements BlockchainQueryService { entries[i] = new KVDataObject(keys[i], -1, PrimitiveType.NIL, null); }else { byte[] value = dataAccount.getBytes(Bytes.fromString(keys[i]), ver); - BytesValue decodeData = BinaryEncodingUtils.decode(value); + BytesValue decodeData = BinaryProtocol.decode(value); entries[i] = new KVDataObject(keys[i], ver, PrimitiveType.valueOf(decodeData.getType().CODE), decodeData.getValue().toBytes()); } } diff --git a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/LedgerRepositoryImpl.java b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/LedgerRepositoryImpl.java index 4f6fe856..865f18d0 100644 --- a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/LedgerRepositoryImpl.java +++ b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/LedgerRepositoryImpl.java @@ -1,6 +1,6 @@ package com.jd.blockchain.ledger.core.impl; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.crypto.Crypto; import com.jd.blockchain.crypto.HashDigest; import com.jd.blockchain.crypto.HashFunction; @@ -225,11 +225,11 @@ public class LedgerRepositoryImpl implements LedgerRepository { if (block.getHeight() == 0) { // 计算创世区块的 hash 时,不包括 ledgerHash 字段; block.setLedgerHash(null); - blockBodyBytes = BinaryEncodingUtils.encode(block, BlockBody.class); + blockBodyBytes = BinaryProtocol.encode(block, BlockBody.class); // 恢复; block.setLedgerHash(block.getHash()); } else { - blockBodyBytes = BinaryEncodingUtils.encode(block, BlockBody.class); + blockBodyBytes = BinaryProtocol.encode(block, BlockBody.class); } HashFunction hashFunc = Crypto.getHashFunction(blockHash.getAlgorithm()); boolean pass = hashFunc.verify(blockHash, blockBodyBytes); @@ -256,7 +256,7 @@ public class LedgerRepositoryImpl implements LedgerRepository { } private LedgerBlock deserialize(byte[] blockBytes) { - return BinaryEncodingUtils.decode(blockBytes); + return BinaryProtocol.decode(blockBytes); } @Override diff --git a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/LedgerTransactionalEditor.java b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/LedgerTransactionalEditor.java index 7fe5dd51..4277434d 100644 --- a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/LedgerTransactionalEditor.java +++ b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/LedgerTransactionalEditor.java @@ -2,7 +2,7 @@ package com.jd.blockchain.ledger.core.impl; import java.util.Stack; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.crypto.Crypto; import com.jd.blockchain.crypto.HashDigest; import com.jd.blockchain.ledger.BlockBody; @@ -188,7 +188,7 @@ public class LedgerTransactionalEditor implements LedgerEditor { newlyBlock.setTransactionSetHash(lastTxCtx.txset.getRootHash()); // compute block hash; - byte[] blockBodyBytes = BinaryEncodingUtils.encode(newlyBlock, BlockBody.class); + byte[] blockBodyBytes = BinaryProtocol.encode(newlyBlock, BlockBody.class); HashDigest blockHash = Crypto.getHashFunction(cryptoSetting.getHashAlgorithm()) .hash(blockBodyBytes); newlyBlock.setHash(blockHash); @@ -199,7 +199,7 @@ public class LedgerTransactionalEditor implements LedgerEditor { // persist block bytes; // only one version per block; - byte[] blockBytes = BinaryEncodingUtils.encode(newlyBlock, LedgerBlock.class); + byte[] blockBytes = BinaryProtocol.encode(newlyBlock, LedgerBlock.class); Bytes blockStorageKey = LedgerRepositoryImpl.encodeBlockStorageKey(newlyBlock.getHash()); long v = bufferedStorage.set(blockStorageKey, blockBytes, -1); if (v < 0) { diff --git a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/handles/DataAccountKVSetOperationHandle.java b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/handles/DataAccountKVSetOperationHandle.java index 6e45999c..2d7735d4 100644 --- a/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/handles/DataAccountKVSetOperationHandle.java +++ b/source/ledger/ledger-core/src/main/java/com/jd/blockchain/ledger/core/impl/handles/DataAccountKVSetOperationHandle.java @@ -1,6 +1,6 @@ package com.jd.blockchain.ledger.core.impl.handles; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.binaryproto.DataContractRegistry; import com.jd.blockchain.ledger.BytesValue; import com.jd.blockchain.ledger.DataAccountKVSetOperation; @@ -24,7 +24,7 @@ public class DataAccountKVSetOperationHandle implements OperationHandle{ DataAccount account = dataset.getDataAccountSet().getDataAccount(kvWriteOp.getAccountAddress()); KVWriteEntry[] writeset = kvWriteOp.getWriteSet(); for (KVWriteEntry kvw : writeset) { - byte[] value = BinaryEncodingUtils.encode(kvw.getValue(), BytesValue.class); + byte[] value = BinaryProtocol.encode(kvw.getValue(), BytesValue.class); account.setBytes(Bytes.fromString(kvw.getKey()), value, kvw.getExpectedVersion()); } } diff --git a/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerAccountTest.java b/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerAccountTest.java index 6b17b903..18566ca6 100644 --- a/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerAccountTest.java +++ b/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerAccountTest.java @@ -7,7 +7,7 @@ import java.util.Random; import org.junit.Before; import org.junit.Test; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.binaryproto.DataContractRegistry; import com.jd.blockchain.crypto.HashDigest; import com.jd.blockchain.crypto.PubKey; @@ -48,8 +48,8 @@ public class LedgerAccountTest { pubKey, hashDigest); // encode and decode - byte[] encodeBytes = BinaryEncodingUtils.encode(accountHeaderData, AccountHeader.class); - AccountHeader deAccountHeaderData = BinaryEncodingUtils.decode(encodeBytes); + byte[] encodeBytes = BinaryProtocol.encode(accountHeaderData, AccountHeader.class); + AccountHeader deAccountHeaderData = BinaryProtocol.decode(encodeBytes); // verify start assertEquals(accountHeaderData.getAddress(), deAccountHeaderData.getAddress()); diff --git a/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerBlockImplTest.java b/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerBlockImplTest.java index 623c89eb..ce29e1a5 100644 --- a/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerBlockImplTest.java +++ b/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerBlockImplTest.java @@ -13,7 +13,7 @@ import static org.junit.Assert.assertEquals; import org.junit.Before; import org.junit.Test; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.binaryproto.DataContractRegistry; import com.jd.blockchain.crypto.HashDigest; import com.jd.blockchain.crypto.service.classic.ClassicAlgorithm; @@ -54,8 +54,8 @@ public class LedgerBlockImplTest { @Test public void testSerialize_LedgerBlock() throws Exception { - byte[] serialBytes = BinaryEncodingUtils.encode(data, LedgerBlock.class); - LedgerBlock resolvedData = BinaryEncodingUtils.decode(serialBytes); + byte[] serialBytes = BinaryProtocol.encode(data, LedgerBlock.class); + LedgerBlock resolvedData = BinaryProtocol.decode(serialBytes); System.out.println("------Assert start ------"); assertEquals(resolvedData.getHash(), data.getHash()); assertEquals(resolvedData.getHeight(), data.getHeight()); @@ -105,8 +105,8 @@ public class LedgerBlockImplTest { transactionStagedSnapshot.setDataAccountSetHash(data); transactionStagedSnapshot.setUserAccountSetHash(user); - byte[] serialBytes = BinaryEncodingUtils.encode(transactionStagedSnapshot, LedgerDataSnapshot.class); - LedgerDataSnapshot resolvedData = BinaryEncodingUtils.decode(serialBytes); + byte[] serialBytes = BinaryProtocol.encode(transactionStagedSnapshot, LedgerDataSnapshot.class); + LedgerDataSnapshot resolvedData = BinaryProtocol.decode(serialBytes); // verify start assertEquals(resolvedData.getAdminAccountHash(), transactionStagedSnapshot.getAdminAccountHash()); diff --git a/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerInitOperationTest.java b/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerInitOperationTest.java index 81b8e728..e9ae7693 100644 --- a/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerInitOperationTest.java +++ b/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerInitOperationTest.java @@ -9,7 +9,7 @@ import java.util.Random; import org.junit.Before; import org.junit.Test; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.binaryproto.DataContractRegistry; import com.jd.blockchain.crypto.AddressEncoding; import com.jd.blockchain.crypto.service.classic.ClassicAlgorithm; @@ -75,8 +75,8 @@ public class LedgerInitOperationTest { LedgerInitOpTemplate template = new LedgerInitOpTemplate(ledgerInitSettingData); - byte[] encode = BinaryEncodingUtils.encode(template, LedgerInitOperation.class); - LedgerInitOperation decode = BinaryEncodingUtils.decode(encode); + byte[] encode = BinaryProtocol.encode(template, LedgerInitOperation.class); + LedgerInitOperation decode = BinaryProtocol.decode(encode); for (int i = 0; i < template.getInitSetting().getConsensusParticipants().length; i++) { assertEquals(template.getInitSetting().getConsensusParticipants()[i].getAddress(), @@ -115,8 +115,8 @@ public class LedgerInitOperationTest { LedgerInitOpTemplate template = new LedgerInitOpTemplate(ledgerInitSettingData); - byte[] encode = BinaryEncodingUtils.encode(template, LedgerInitOperation.class); - LedgerInitOperation decode = BinaryEncodingUtils.decode(encode); + byte[] encode = BinaryProtocol.encode(template, LedgerInitOperation.class); + LedgerInitOperation decode = BinaryProtocol.decode(encode); for (int i = 0; i < template.getInitSetting().getConsensusParticipants().length; i++) { assertEquals(template.getInitSetting().getConsensusParticipants()[i].getAddress(), diff --git a/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerInitSettingTest.java b/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerInitSettingTest.java index c4e6e5ce..7f9a4e7c 100644 --- a/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerInitSettingTest.java +++ b/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerInitSettingTest.java @@ -9,7 +9,7 @@ import java.util.Random; import org.junit.Before; import org.junit.Test; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.binaryproto.DataContractRegistry; import com.jd.blockchain.crypto.AddressEncoding; import com.jd.blockchain.crypto.service.classic.ClassicAlgorithm; @@ -72,9 +72,9 @@ public class LedgerInitSettingTest { ledgerInitSettingData.setConsensusParticipants(parties1); - byte[] encode = BinaryEncodingUtils.encode(ledgerInitSettingData, LedgerInitSetting.class); + byte[] encode = BinaryProtocol.encode(ledgerInitSettingData, LedgerInitSetting.class); - LedgerInitSetting decode = BinaryEncodingUtils.decode(encode); + LedgerInitSetting decode = BinaryProtocol.decode(encode); for (int i = 0; i < ledgerInitSettingData.getConsensusParticipants().length; i++) { assertEquals(ledgerInitSettingData.getConsensusParticipants()[i].getAddress(), @@ -116,9 +116,9 @@ public class LedgerInitSettingTest { ledgerInitSettingData.setConsensusParticipants(parties1); - byte[] encode = BinaryEncodingUtils.encode(ledgerInitSettingData, LedgerInitSetting.class); + byte[] encode = BinaryProtocol.encode(ledgerInitSettingData, LedgerInitSetting.class); - LedgerInitSetting decode = BinaryEncodingUtils.decode(encode); + LedgerInitSetting decode = BinaryProtocol.decode(encode); for (int i = 0; i < ledgerInitSettingData.getConsensusParticipants().length; i++) { assertEquals(ledgerInitSettingData.getConsensusParticipants()[i].getAddress(), diff --git a/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerMetaDataTest.java b/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerMetaDataTest.java index 4d29c908..19886d4b 100644 --- a/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerMetaDataTest.java +++ b/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerMetaDataTest.java @@ -10,7 +10,7 @@ import java.util.Random; import org.junit.Before; import org.junit.Test; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.binaryproto.DataContractRegistry; import com.jd.blockchain.crypto.AddressEncoding; import com.jd.blockchain.crypto.HashDigest; @@ -71,8 +71,8 @@ public class LedgerMetaDataTest { ledgerMetadata.setParticipantsHash(hashDigest); // encode and decode - byte[] encodeBytes = BinaryEncodingUtils.encode(ledgerMetadata, LedgerMetadata.class); - LedgerMetadata deLedgerMetaData = BinaryEncodingUtils.decode(encodeBytes); + byte[] encodeBytes = BinaryProtocol.encode(ledgerMetadata, LedgerMetadata.class); + LedgerMetadata deLedgerMetaData = BinaryProtocol.decode(encodeBytes); // verify start assertArrayEquals(ledgerMetadata.getSeed(), deLedgerMetaData.getSeed()); @@ -99,8 +99,8 @@ public class LedgerMetaDataTest { LedgerConfiguration ledgerConfiguration = new LedgerConfiguration(consensusProvider, new Bytes(csSettingsBytes), cryptoConfig); - byte[] encodeBytes = BinaryEncodingUtils.encode(ledgerConfiguration, LedgerSetting.class); - LedgerSetting deLedgerConfiguration = BinaryEncodingUtils.decode(encodeBytes); + byte[] encodeBytes = BinaryProtocol.encode(ledgerConfiguration, LedgerSetting.class); + LedgerSetting deLedgerConfiguration = BinaryProtocol.decode(encodeBytes); // verify start assertTrue(ledgerConfiguration.getConsensusSetting().equals(deLedgerConfiguration.getConsensusSetting())); assertEquals(ledgerConfiguration.getCryptoSetting().getAutoVerifyHash(), @@ -136,8 +136,8 @@ public class LedgerMetaDataTest { CryptoConfig cryptoConfig = new CryptoConfig(); cryptoConfig.setAutoVerifyHash(true); cryptoConfig.setHashAlgorithm(ClassicAlgorithm.SHA256); - byte[] encodeBytes = BinaryEncodingUtils.encode(cryptoConfig, CryptoSetting.class); - CryptoSetting deCryptoConfig = BinaryEncodingUtils.decode(encodeBytes); + byte[] encodeBytes = BinaryProtocol.encode(cryptoConfig, CryptoSetting.class); + CryptoSetting deCryptoConfig = BinaryProtocol.decode(encodeBytes); // verify start assertEquals(cryptoConfig.getHashAlgorithm(), deCryptoConfig.getHashAlgorithm()); @@ -162,8 +162,8 @@ public class LedgerMetaDataTest { ParticipantCertData participantCertData = new ParticipantCertData(address, name, pubKey); // encode and decode - byte[] encodeBytes = BinaryEncodingUtils.encode(participantCertData, ParticipantNode.class); - ParticipantNode deParticipantInfoData = BinaryEncodingUtils.decode(encodeBytes); + byte[] encodeBytes = BinaryProtocol.encode(participantCertData, ParticipantNode.class); + ParticipantNode deParticipantInfoData = BinaryProtocol.decode(encodeBytes); // verify start assertEquals(participantCertData.getAddress(), deParticipantInfoData.getAddress()); diff --git a/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerTransactionDataTest.java b/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerTransactionDataTest.java index 55e13930..ba533a4a 100644 --- a/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerTransactionDataTest.java +++ b/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/LedgerTransactionDataTest.java @@ -15,7 +15,7 @@ import java.util.UUID; import org.junit.Before; import org.junit.Test; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.binaryproto.DataContractRegistry; import com.jd.blockchain.crypto.Crypto; import com.jd.blockchain.crypto.HashDigest; @@ -86,8 +86,8 @@ public class LedgerTransactionDataTest { @Test public void testSerialize_LedgerTransaction() throws Exception { - byte[] serialBytes = BinaryEncodingUtils.encode(data, LedgerTransaction.class); - LedgerTransaction resolvedData = BinaryEncodingUtils.decode(serialBytes); + byte[] serialBytes = BinaryProtocol.encode(data, LedgerTransaction.class); + LedgerTransaction resolvedData = BinaryProtocol.decode(serialBytes); System.out.println("------Assert start ------"); assertEquals(resolvedData.getAdminAccountHash(), data.getAdminAccountHash()); @@ -120,8 +120,8 @@ public class LedgerTransactionDataTest { @Test public void testSerialize_Transaction() throws Exception { - byte[] serialBytes = BinaryEncodingUtils.encode(data, Transaction.class); - Transaction resolvedData = BinaryEncodingUtils.decode(serialBytes); + byte[] serialBytes = BinaryProtocol.encode(data, Transaction.class); + Transaction resolvedData = BinaryProtocol.decode(serialBytes); System.out.println("------Assert start ------"); assertEquals(resolvedData.getExecutionState(), data.getExecutionState()); @@ -150,8 +150,8 @@ public class LedgerTransactionDataTest { @Test public void testSerialize_LedgerDataSnapshot() throws Exception { - byte[] serialBytes = BinaryEncodingUtils.encode(data, LedgerDataSnapshot.class); - LedgerDataSnapshot resolvedData = BinaryEncodingUtils.decode(serialBytes); + byte[] serialBytes = BinaryProtocol.encode(data, LedgerDataSnapshot.class); + LedgerDataSnapshot resolvedData = BinaryProtocol.decode(serialBytes); System.out.println("------Assert start ------"); assertEquals(resolvedData.getAdminAccountHash(), data.getAdminAccountHash()); @@ -163,8 +163,8 @@ public class LedgerTransactionDataTest { @Test public void testSerialize_NodeRequest() throws Exception { - byte[] serialBytes = BinaryEncodingUtils.encode(data, NodeRequest.class); - NodeRequest resolvedData = BinaryEncodingUtils.decode(serialBytes); + byte[] serialBytes = BinaryProtocol.encode(data, NodeRequest.class); + NodeRequest resolvedData = BinaryProtocol.decode(serialBytes); System.out.println("------Assert start ------"); // EndpointSignatures 验证 @@ -189,8 +189,8 @@ public class LedgerTransactionDataTest { @Test public void testSerialize_EndpointRequest() throws Exception { - byte[] serialBytes = BinaryEncodingUtils.encode(data, EndpointRequest.class); - EndpointRequest resolvedData = BinaryEncodingUtils.decode(serialBytes); + byte[] serialBytes = BinaryProtocol.encode(data, EndpointRequest.class); + EndpointRequest resolvedData = BinaryProtocol.decode(serialBytes); System.out.println("------Assert start ------"); // EndpointSignatures 验证 diff --git a/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/TransactionStagedSnapshotTest.java b/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/TransactionStagedSnapshotTest.java index b49767f0..3693f60d 100644 --- a/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/TransactionStagedSnapshotTest.java +++ b/source/ledger/ledger-core/src/test/java/test/com/jd/blockchain/ledger/TransactionStagedSnapshotTest.java @@ -13,7 +13,7 @@ import static org.junit.Assert.assertEquals; import org.junit.Before; import org.junit.Test; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.binaryproto.DataContractRegistry; import com.jd.blockchain.crypto.HashDigest; import com.jd.blockchain.crypto.service.classic.ClassicAlgorithm; @@ -43,8 +43,8 @@ public class TransactionStagedSnapshotTest { @Test public void testSerialize_LedgerDataSnapshot() throws Exception { - byte[] serialBytes = BinaryEncodingUtils.encode(data, LedgerDataSnapshot.class); - LedgerDataSnapshot resolvedData = BinaryEncodingUtils.decode(serialBytes); + byte[] serialBytes = BinaryProtocol.encode(data, LedgerDataSnapshot.class); + LedgerDataSnapshot resolvedData = BinaryProtocol.decode(serialBytes); System.out.println("------Assert start ------"); assertEquals(resolvedData.getAdminAccountHash(), data.getAdminAccountHash()); assertEquals(resolvedData.getContractAccountSetHash(), data.getContractAccountSetHash()); diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/PreparedTx.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/PreparedTx.java index ce5f9920..2b0422c0 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/PreparedTx.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/PreparedTx.java @@ -1,6 +1,6 @@ package com.jd.blockchain.transaction; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.crypto.AsymmetricKeypair; import com.jd.blockchain.crypto.Crypto; import com.jd.blockchain.crypto.HashDigest; @@ -39,7 +39,7 @@ public class PreparedTx implements PreparedTransaction { public DigitalSignature sign(AsymmetricKeypair keyPair) { SignatureFunction signatureFunction = Crypto.getSignatureFunction(keyPair.getAlgorithm()); PrivKey privKey = keyPair.getPrivKey(); - byte[] content = BinaryEncodingUtils.encode(getTransactionContent(), TransactionContent.class); + byte[] content = BinaryProtocol.encode(getTransactionContent(), TransactionContent.class); SignatureDigest signatureDigest = signatureFunction.sign(privKey, content); DigitalSignature signature = new DigitalSignatureBlob(keyPair.getPubKey(), signatureDigest); addSignature(signature); diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/SignatureEncoding.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/SignatureEncoding.java index d92c9eb8..d28c829e 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/SignatureEncoding.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/SignatureEncoding.java @@ -2,17 +2,17 @@ package com.jd.blockchain.transaction; import org.springframework.util.Base64Utils; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.ledger.DigitalSignature; public class SignatureEncoding { public static byte[] encode(DigitalSignature signature) { - return BinaryEncodingUtils.encode(signature, DigitalSignature.class); + return BinaryProtocol.encode(signature, DigitalSignature.class); } public static DigitalSignature decode(byte[] bytesSignature) { - return BinaryEncodingUtils.decode(bytesSignature); + return BinaryProtocol.decode(bytesSignature); } public static DigitalSignature decodeFromBase64(String base64Signature) { diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/TxBuilder.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/TxBuilder.java index bab7dd0f..1f315482 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/TxBuilder.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/TxBuilder.java @@ -1,6 +1,6 @@ package com.jd.blockchain.transaction; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.binaryproto.DataContractRegistry; import com.jd.blockchain.crypto.Crypto; import com.jd.blockchain.crypto.HashDigest; @@ -42,7 +42,7 @@ public class TxBuilder implements TransactionBuilder { TxContentBlob txContent = new TxContentBlob(ledgerHash); txContent.addOperations(opFactory.getOperations()); - byte[] contentBodyBytes = BinaryEncodingUtils.encode(txContent, TransactionContentBody.class); + byte[] contentBodyBytes = BinaryProtocol.encode(txContent, TransactionContentBody.class); HashDigest contentHash = Crypto.getHashFunction(DEFAULT_HASH_ALGORITHM).hash(contentBodyBytes); txContent.setHash(contentHash); diff --git a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/TxRequestBuilder.java b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/TxRequestBuilder.java index a26a9a4d..5265b4be 100644 --- a/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/TxRequestBuilder.java +++ b/source/ledger/ledger-model/src/main/java/com/jd/blockchain/transaction/TxRequestBuilder.java @@ -3,7 +3,7 @@ package com.jd.blockchain.transaction; import java.util.ArrayList; import java.util.List; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.crypto.AsymmetricKeypair; import com.jd.blockchain.crypto.Crypto; import com.jd.blockchain.crypto.HashDigest; @@ -86,7 +86,7 @@ public class TxRequestBuilder implements TransactionRequestBuilder { txMessage.addEndpointSignatures(endpointSignatures); txMessage.addNodeSignatures(nodeSignatures); - byte[] reqBytes = BinaryEncodingUtils.encode(txMessage, NodeRequest.class); + byte[] reqBytes = BinaryProtocol.encode(txMessage, NodeRequest.class); HashDigest reqHash = Crypto.getHashFunction(DEFAULT_HASH_ALGORITHM).hash(reqBytes); txMessage.setHash(reqHash); diff --git a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/ContractCodeDeployOpTemplateTest.java b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/ContractCodeDeployOpTemplateTest.java index bc534897..a54ce94f 100644 --- a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/ContractCodeDeployOpTemplateTest.java +++ b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/ContractCodeDeployOpTemplateTest.java @@ -15,7 +15,7 @@ import static org.junit.Assert.assertTrue; import org.junit.Before; import org.junit.Test; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.binaryproto.DataContractRegistry; import com.jd.blockchain.crypto.Crypto; import com.jd.blockchain.crypto.PubKey; @@ -51,8 +51,8 @@ public class ContractCodeDeployOpTemplateTest { @Test public void testSerialize_ContractCodeDeployOperation() throws Exception { - byte[] serialBytes = BinaryEncodingUtils.encode(data, ContractCodeDeployOperation.class); - ContractCodeDeployOperation resolvedData = BinaryEncodingUtils.decode(serialBytes); + byte[] serialBytes = BinaryProtocol.encode(data, ContractCodeDeployOperation.class); + ContractCodeDeployOperation resolvedData = BinaryProtocol.decode(serialBytes); System.out.println("------Assert start ------"); assertArrayEquals(resolvedData.getChainCode(), data.getChainCode()); assertEquals(resolvedData.getContractID().getAddress(), data.getContractID().getAddress()); @@ -62,8 +62,8 @@ public class ContractCodeDeployOpTemplateTest { @Test public void testSerialize_Operation() throws Exception { - byte[] serialBytes = BinaryEncodingUtils.encode(data, ContractCodeDeployOperation.class); - ContractCodeDeployOperation resolvedData = BinaryEncodingUtils.decode(serialBytes); + byte[] serialBytes = BinaryProtocol.encode(data, ContractCodeDeployOperation.class); + ContractCodeDeployOperation resolvedData = BinaryProtocol.decode(serialBytes); BlockchainIdentity expCodeId = data.getContractID(); BlockchainIdentity actualCodeId = resolvedData.getContractID(); diff --git a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/ContractEventSendOpTemplateTest.java b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/ContractEventSendOpTemplateTest.java index 3f70b8ca..fb197953 100644 --- a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/ContractEventSendOpTemplateTest.java +++ b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/ContractEventSendOpTemplateTest.java @@ -8,7 +8,7 @@ */ package test.com.jd.blockchain.ledger.data; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.binaryproto.DataContractRegistry; import com.jd.blockchain.ledger.ContractEventSendOperation; import com.jd.blockchain.ledger.DataAccountKVSetOperation; @@ -45,8 +45,8 @@ public class ContractEventSendOpTemplateTest { @Test public void testSerialize_ContractEventSendOperation() throws Exception { - byte[] serialBytes = BinaryEncodingUtils.encode(data, ContractEventSendOperation.class); - ContractEventSendOperation resolvedData = BinaryEncodingUtils.decode(serialBytes); + byte[] serialBytes = BinaryProtocol.encode(data, ContractEventSendOperation.class); + ContractEventSendOperation resolvedData = BinaryProtocol.decode(serialBytes); System.out.println("------Assert start ------"); assertEquals(resolvedData.getContractAddress(), data.getContractAddress()); assertEquals(resolvedData.getEvent(), data.getEvent()); @@ -56,8 +56,8 @@ public class ContractEventSendOpTemplateTest { @Test public void testSerialize_Operation() throws Exception { - byte[] serialBytes = BinaryEncodingUtils.encode(data, Operation.class); - Operation resolvedData = BinaryEncodingUtils.decode(serialBytes); + byte[] serialBytes = BinaryProtocol.encode(data, Operation.class); + Operation resolvedData = BinaryProtocol.decode(serialBytes); System.out.println("------Assert start ------"); System.out.println(resolvedData); System.out.println("------Assert OK ------"); diff --git a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/DataAccountKVSetOpTemplateTest.java b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/DataAccountKVSetOpTemplateTest.java index 56a38451..c5ccd7f6 100644 --- a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/DataAccountKVSetOpTemplateTest.java +++ b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/DataAccountKVSetOpTemplateTest.java @@ -8,7 +8,7 @@ */ package test.com.jd.blockchain.ledger.data; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.binaryproto.DataContractRegistry; import com.jd.blockchain.ledger.BytesValueEntry; import com.jd.blockchain.ledger.DataAccountKVSetOperation; @@ -56,8 +56,8 @@ public class DataAccountKVSetOpTemplateTest { @Test public void testSerialize_DataAccountKVSetOperation() throws Exception { - byte[] serialBytes = BinaryEncodingUtils.encode(data, DataAccountKVSetOperation.class); - DataAccountKVSetOperation resolvedData = BinaryEncodingUtils.decode(serialBytes); + byte[] serialBytes = BinaryProtocol.encode(data, DataAccountKVSetOperation.class); + DataAccountKVSetOperation resolvedData = BinaryProtocol.decode(serialBytes); System.out.println("------Assert start ------"); assertEquals(resolvedData.getAccountAddress(), data.getAccountAddress()); DataAccountKVSetOperation.KVWriteEntry[] resolvedKv = resolvedData.getWriteSet(); @@ -75,8 +75,8 @@ public class DataAccountKVSetOpTemplateTest { @Test public void testSerialize_Operation() throws Exception { - byte[] serialBytes = BinaryEncodingUtils.encode(data, Operation.class); - Operation resolvedData = BinaryEncodingUtils.decode(serialBytes); + byte[] serialBytes = BinaryProtocol.encode(data, Operation.class); + Operation resolvedData = BinaryProtocol.decode(serialBytes); System.out.println("------Assert start ------"); System.out.println(resolvedData); System.out.println("serialBytesLength=" + serialBytes.length); diff --git a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/DataAccountRegisterOpTemplateTest.java b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/DataAccountRegisterOpTemplateTest.java index 861db193..fcca954f 100644 --- a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/DataAccountRegisterOpTemplateTest.java +++ b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/DataAccountRegisterOpTemplateTest.java @@ -13,7 +13,7 @@ import static org.junit.Assert.assertEquals; import org.junit.Before; import org.junit.Test; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.binaryproto.DataContractRegistry; import com.jd.blockchain.crypto.Crypto; import com.jd.blockchain.crypto.PubKey; @@ -48,8 +48,8 @@ public class DataAccountRegisterOpTemplateTest { @Test public void testSerialize_DataAccountRegisterOperation() throws Exception { - byte[] serialBytes = BinaryEncodingUtils.encode(data, DataAccountRegisterOperation.class); - DataAccountRegisterOperation resolvedData = BinaryEncodingUtils.decode(serialBytes); + byte[] serialBytes = BinaryProtocol.encode(data, DataAccountRegisterOperation.class); + DataAccountRegisterOperation resolvedData = BinaryProtocol.decode(serialBytes); System.out.println("------Assert start ------"); assertEquals(resolvedData.getAccountID().getAddress(), data.getAccountID().getAddress()); assertEquals(resolvedData.getAccountID().getPubKey(), data.getAccountID().getPubKey()); @@ -59,8 +59,8 @@ public class DataAccountRegisterOpTemplateTest { @Test public void testSerialize_Operation() throws Exception { - byte[] serialBytes = BinaryEncodingUtils.encode(data, Operation.class); - Operation resolvedData = BinaryEncodingUtils.decode(serialBytes); + byte[] serialBytes = BinaryProtocol.encode(data, Operation.class); + Operation resolvedData = BinaryProtocol.decode(serialBytes); System.out.println("------Assert start ------"); System.out.println("serialBytesLength=" + serialBytes.length); System.out.println(resolvedData); diff --git a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/DigitalSignatureBlobTest.java b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/DigitalSignatureBlobTest.java index e7a66d8b..b3e73a0a 100644 --- a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/DigitalSignatureBlobTest.java +++ b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/DigitalSignatureBlobTest.java @@ -13,7 +13,7 @@ import static org.junit.Assert.assertEquals; import org.junit.Before; import org.junit.Test; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.binaryproto.DataContractRegistry; import com.jd.blockchain.crypto.CryptoAlgorithm; import com.jd.blockchain.crypto.AsymmetricKeypair; @@ -50,8 +50,8 @@ public class DigitalSignatureBlobTest { @Test public void testSerialize_DigitalSignature() throws Exception { - byte[] serialBytes = BinaryEncodingUtils.encode(data, DigitalSignature.class); - DigitalSignature resolvedData = BinaryEncodingUtils.decode(serialBytes); + byte[] serialBytes = BinaryProtocol.encode(data, DigitalSignature.class); + DigitalSignature resolvedData = BinaryProtocol.decode(serialBytes); System.out.println("------Assert start ------"); assertEquals(resolvedData.getDigest(), data.getDigest()); assertEquals(resolvedData.getPubKey(), data.getPubKey()); @@ -60,8 +60,8 @@ public class DigitalSignatureBlobTest { @Test public void testSerialize_DigitalSignatureBody() throws Exception { - byte[] serialBytes = BinaryEncodingUtils.encode(data, DigitalSignatureBody.class); - DigitalSignatureBody resolvedData = BinaryEncodingUtils.decode(serialBytes); + byte[] serialBytes = BinaryProtocol.encode(data, DigitalSignatureBody.class); + DigitalSignatureBody resolvedData = BinaryProtocol.decode(serialBytes); System.out.println("------Assert start ------"); assertEquals(resolvedData.getDigest(), data.getDigest()); assertEquals(resolvedData.getPubKey(), data.getPubKey()); diff --git a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/KVDataTest.java b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/KVDataTest.java index 8ef2373b..86314a6f 100644 --- a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/KVDataTest.java +++ b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/KVDataTest.java @@ -8,7 +8,7 @@ */ package test.com.jd.blockchain.ledger.data; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.binaryproto.DataContractRegistry; import com.jd.blockchain.ledger.BytesValueEntry; import com.jd.blockchain.ledger.DataAccountKVSetOperation; @@ -44,8 +44,8 @@ public class KVDataTest { @Test public void testSerialize_KVEntry() throws Exception { - byte[] serialBytes = BinaryEncodingUtils.encode(kvData, DataAccountKVSetOperation.KVWriteEntry.class); - DataAccountKVSetOpTemplate.KVWriteEntry resolvedKvData = BinaryEncodingUtils.decode(serialBytes); + byte[] serialBytes = BinaryProtocol.encode(kvData, DataAccountKVSetOperation.KVWriteEntry.class); + DataAccountKVSetOpTemplate.KVWriteEntry resolvedKvData = BinaryProtocol.decode(serialBytes); System.out.println("------Assert start ------"); assertEquals(resolvedKvData.getKey(), kvData.getKey()); assertEquals(resolvedKvData.getExpectedVersion(), kvData.getExpectedVersion()); diff --git a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/TxContentBlobTest.java b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/TxContentBlobTest.java index 6587db91..a76e4e93 100644 --- a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/TxContentBlobTest.java +++ b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/TxContentBlobTest.java @@ -9,7 +9,7 @@ import java.util.UUID; import org.junit.Before; import org.junit.Test; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.binaryproto.DataContractRegistry; import com.jd.blockchain.crypto.Crypto; import com.jd.blockchain.crypto.HashDigest; @@ -56,8 +56,8 @@ public class TxContentBlobTest { public void testSerialize_TransactionContentBody() throws IOException, InstantiationException, IllegalAccessException { - byte[] bytesContent = BinaryEncodingUtils.encode(contentBlob, TransactionContentBody.class); - TransactionContentBody resolvedContentBlob = BinaryEncodingUtils.decode(bytesContent); + byte[] bytesContent = BinaryProtocol.encode(contentBlob, TransactionContentBody.class); + TransactionContentBody resolvedContentBlob = BinaryProtocol.decode(bytesContent); assertEquals(contentBlob.getLedgerHash(), resolvedContentBlob.getLedgerHash()); // assertEquals(contentBlob.getSubjectAccount(), @@ -87,8 +87,8 @@ public class TxContentBlobTest { @Test public void testSerialize_TransactionContent() throws IOException, InstantiationException, IllegalAccessException { - byte[] bytesContent = BinaryEncodingUtils.encode(contentBlob, TransactionContent.class); - TransactionContentBody resolvedContentBlob = BinaryEncodingUtils.decode(bytesContent); + byte[] bytesContent = BinaryProtocol.encode(contentBlob, TransactionContent.class); + TransactionContentBody resolvedContentBlob = BinaryProtocol.decode(bytesContent); assertEquals(contentBlob.getLedgerHash(), resolvedContentBlob.getLedgerHash()); // assertEquals(contentBlob.getSubjectAccount(), diff --git a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/TxRequestMessageTest.java b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/TxRequestMessageTest.java index 3c653d0e..dd7366f9 100644 --- a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/TxRequestMessageTest.java +++ b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/TxRequestMessageTest.java @@ -15,7 +15,7 @@ import java.util.UUID; import org.junit.Before; import org.junit.Test; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.binaryproto.DataContractRegistry; import com.jd.blockchain.crypto.AsymmetricKeypair; import com.jd.blockchain.crypto.Crypto; @@ -85,8 +85,8 @@ public class TxRequestMessageTest { @Test public void testSerialize_TransactionRequest() { - byte[] serialBytes = BinaryEncodingUtils.encode(data, TransactionRequest.class); - TransactionRequest resolvedData = BinaryEncodingUtils.decode(serialBytes); + byte[] serialBytes = BinaryProtocol.encode(data, TransactionRequest.class); + TransactionRequest resolvedData = BinaryProtocol.decode(serialBytes); System.out.println("------Assert start ------"); assertEquals(resolvedData.getEndpointSignatures().length, data.getEndpointSignatures().length); assertEquals(resolvedData.getNodeSignatures().length, data.getNodeSignatures().length); @@ -124,8 +124,8 @@ public class TxRequestMessageTest { @Test public void testSerialize_NodeRequest() { - byte[] serialBytes = BinaryEncodingUtils.encode(data, NodeRequest.class); - NodeRequest resolvedData = BinaryEncodingUtils.decode(serialBytes); + byte[] serialBytes = BinaryProtocol.encode(data, NodeRequest.class); + NodeRequest resolvedData = BinaryProtocol.decode(serialBytes); System.out.println("------Assert start ------"); assertEquals(resolvedData.getEndpointSignatures().length, data.getEndpointSignatures().length); assertEquals(resolvedData.getNodeSignatures().length, data.getNodeSignatures().length); @@ -161,8 +161,8 @@ public class TxRequestMessageTest { @Test public void testSerialize_EndpointRequest() { - byte[] serialBytes = BinaryEncodingUtils.encode(data, EndpointRequest.class); - EndpointRequest resolvedData = BinaryEncodingUtils.decode(serialBytes); + byte[] serialBytes = BinaryProtocol.encode(data, EndpointRequest.class); + EndpointRequest resolvedData = BinaryProtocol.decode(serialBytes); System.out.println("------Assert start ------"); assertEquals(resolvedData.getEndpointSignatures().length, data.getEndpointSignatures().length); DigitalSignature[] dataEndpointSignatures = data.getEndpointSignatures(); diff --git a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/TxResponseMessageTest.java b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/TxResponseMessageTest.java index f34b8eb3..c0a944de 100644 --- a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/TxResponseMessageTest.java +++ b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/TxResponseMessageTest.java @@ -13,7 +13,7 @@ import static org.junit.Assert.assertEquals; import org.junit.Before; import org.junit.Test; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.binaryproto.DataContractRegistry; import com.jd.blockchain.crypto.Crypto; import com.jd.blockchain.crypto.HashDigest; @@ -50,8 +50,8 @@ public class TxResponseMessageTest { @Test public void testSerialize_TransactionResponse() { - byte[] serialBytes = BinaryEncodingUtils.encode(data, TransactionResponse.class); - TransactionResponse resolvedData = BinaryEncodingUtils.decode(serialBytes); + byte[] serialBytes = BinaryProtocol.encode(data, TransactionResponse.class); + TransactionResponse resolvedData = BinaryProtocol.decode(serialBytes); System.out.println("------Assert start ------"); assertEquals(resolvedData.getBlockHash(), data.getBlockHash()); assertEquals(resolvedData.getBlockHeight(), data.getBlockHeight()); diff --git a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/UserRegisterOpTemplateTest.java b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/UserRegisterOpTemplateTest.java index 36fea9a6..27b455f3 100644 --- a/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/UserRegisterOpTemplateTest.java +++ b/source/ledger/ledger-model/src/test/java/test/com/jd/blockchain/ledger/data/UserRegisterOpTemplateTest.java @@ -13,7 +13,7 @@ import static org.junit.Assert.assertEquals; import org.junit.Before; import org.junit.Test; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.binaryproto.DataContractRegistry; import com.jd.blockchain.crypto.AsymmetricKeypair; import com.jd.blockchain.crypto.Crypto; @@ -47,8 +47,8 @@ public class UserRegisterOpTemplateTest { @Test public void testSerialize_UserRegisterOperation() throws Exception { - byte[] serialBytes = BinaryEncodingUtils.encode(data, UserRegisterOperation.class); - UserRegisterOperation resolvedData = BinaryEncodingUtils.decode(serialBytes); + byte[] serialBytes = BinaryProtocol.encode(data, UserRegisterOperation.class); + UserRegisterOperation resolvedData = BinaryProtocol.decode(serialBytes); System.out.println("------Assert start ------"); assertEquals(data.getUserID().getAddress(), resolvedData.getUserID().getAddress()); assertEquals(data.getUserID().getPubKey(), resolvedData.getUserID().getPubKey()); @@ -57,8 +57,8 @@ public class UserRegisterOpTemplateTest { @Test public void testSerialize_Operation() throws Exception { - byte[] serialBytes = BinaryEncodingUtils.encode(data, Operation.class); - Operation resolvedData = BinaryEncodingUtils.decode(serialBytes); + byte[] serialBytes = BinaryProtocol.encode(data, Operation.class); + Operation resolvedData = BinaryProtocol.decode(serialBytes); System.out.println("------Assert start ------"); System.out.println("serialBytesLength=" + serialBytes.length); System.out.println(resolvedData); diff --git a/source/ledger/ledger-rpc/src/main/java/com/jd/blockchain/web/converters/BinaryMessageConverter.java b/source/ledger/ledger-rpc/src/main/java/com/jd/blockchain/web/converters/BinaryMessageConverter.java index affc2dde..124b85cd 100644 --- a/source/ledger/ledger-rpc/src/main/java/com/jd/blockchain/web/converters/BinaryMessageConverter.java +++ b/source/ledger/ledger-rpc/src/main/java/com/jd/blockchain/web/converters/BinaryMessageConverter.java @@ -19,7 +19,7 @@ import org.springframework.http.converter.AbstractHttpMessageConverter; import org.springframework.http.converter.HttpMessageNotReadableException; import org.springframework.http.converter.HttpMessageNotWritableException; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; /** * 针对二进制对象的序列化和反序列化的 HTTP 消息转换器; @@ -95,7 +95,7 @@ public class BinaryMessageConverter extends AbstractHttpMessageConverter throws IOException, HttpMessageNotReadableException { InputStream in = inputMessage.getBody(); byte[] serializeBytes = BytesUtils.readBytes(in); - Object resolvedObj = BinaryEncodingUtils.decode(serializeBytes); + Object resolvedObj = BinaryProtocol.decode(serializeBytes); return resolvedObj; } @@ -104,7 +104,7 @@ public class BinaryMessageConverter extends AbstractHttpMessageConverter throws IOException, HttpMessageNotWritableException { OutputStream out = outputMessage.getBody(); if (t instanceof TransactionResponse) { - byte[] serializeBytes = BinaryEncodingUtils.encode(t, TransactionResponse.class); + byte[] serializeBytes = BinaryProtocol.encode(t, TransactionResponse.class); out.write(serializeBytes); out.flush(); } diff --git a/source/peer/src/main/java/com/jd/blockchain/peer/consensus/ConsensusMessageDispatcher.java b/source/peer/src/main/java/com/jd/blockchain/peer/consensus/ConsensusMessageDispatcher.java index 17d862b1..41cf14c6 100644 --- a/source/peer/src/main/java/com/jd/blockchain/peer/consensus/ConsensusMessageDispatcher.java +++ b/source/peer/src/main/java/com/jd/blockchain/peer/consensus/ConsensusMessageDispatcher.java @@ -1,6 +1,6 @@ package com.jd.blockchain.peer.consensus; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.ledger.LedgerBlock; import com.jd.blockchain.ledger.TransactionRequest; import com.jd.blockchain.ledger.TransactionResponse; @@ -70,7 +70,7 @@ public class ConsensusMessageDispatcher implements MessageHandle { if (!realmProcessor.getCurrBatchId().equalsIgnoreCase(batchId)) { throw new IllegalArgumentException("BatchId is not begin!"); } - TransactionRequest txRequest = BinaryEncodingUtils.decode(message); + TransactionRequest txRequest = BinaryProtocol.decode(message); return realmProcessor.schedule(txRequest); } @@ -258,7 +258,7 @@ public class ConsensusMessageDispatcher implements MessageHandle { TxResponse txResponse = new TxResponse(entry.getKey()); txResponse.setBlockHeight(blockHeight); txResponse.setBlockHash(blockHash); - asyncResult.complete(BinaryEncodingUtils.encode(txResponse, TransactionResponse.class)); + asyncResult.complete(BinaryProtocol.encode(txResponse, TransactionResponse.class)); } }); } diff --git a/source/peer/src/main/java/com/jd/blockchain/peer/web/LedgerQueryController.java b/source/peer/src/main/java/com/jd/blockchain/peer/web/LedgerQueryController.java index 3d918ba4..e221ba98 100644 --- a/source/peer/src/main/java/com/jd/blockchain/peer/web/LedgerQueryController.java +++ b/source/peer/src/main/java/com/jd/blockchain/peer/web/LedgerQueryController.java @@ -7,7 +7,7 @@ import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.binaryproto.PrimitiveType; import com.jd.blockchain.crypto.HashDigest; import com.jd.blockchain.ledger.AccountHeader; @@ -342,7 +342,7 @@ public class LedgerQueryController implements BlockchainQueryService { entries[i] = new KVDataObject(keys[i], -1, PrimitiveType.NIL, null); }else { byte[] value = dataAccount.getBytes(Bytes.fromString(keys[i]), ver); - BytesValue decodeData = BinaryEncodingUtils.decode(value); + BytesValue decodeData = BinaryProtocol.decode(value); entries[i] = new KVDataObject(keys[i], ver, PrimitiveType.valueOf(decodeData.getType().CODE), decodeData.getValue().toBytes()); } } diff --git a/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/converters/BinarySerializeRequestConverter.java b/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/converters/BinarySerializeRequestConverter.java index 2c89a42f..317bd6e6 100644 --- a/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/converters/BinarySerializeRequestConverter.java +++ b/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/converters/BinarySerializeRequestConverter.java @@ -8,7 +8,7 @@ */ package com.jd.blockchain.sdk.converters; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.consensus.ClientIdentifications; import com.jd.blockchain.ledger.TransactionRequest; import com.jd.blockchain.transaction.TxRequestMessage; @@ -32,11 +32,11 @@ public class BinarySerializeRequestConverter implements RequestBodyConverter { public void write(Object param, OutputStream out) throws IOException { // 使用自定义的序列化方式 if (param instanceof TransactionRequest) { - byte[] serializeBytes = BinaryEncodingUtils.encode(param, TransactionRequest.class); + byte[] serializeBytes = BinaryProtocol.encode(param, TransactionRequest.class); out.write(serializeBytes); out.flush(); } else if (param instanceof ClientIdentifications) { - byte[] serializeBytes = BinaryEncodingUtils.encode(param, ClientIdentifications.class); + byte[] serializeBytes = BinaryProtocol.encode(param, ClientIdentifications.class); out.write(serializeBytes); out.flush(); } diff --git a/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/converters/BinarySerializeResponseConverter.java b/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/converters/BinarySerializeResponseConverter.java index 271c3315..32664abc 100644 --- a/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/converters/BinarySerializeResponseConverter.java +++ b/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/converters/BinarySerializeResponseConverter.java @@ -8,7 +8,7 @@ */ package com.jd.blockchain.sdk.converters; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.transaction.TxResponseMessage; import com.jd.blockchain.utils.http.HttpServiceContext; import com.jd.blockchain.utils.http.ResponseConverter; @@ -30,7 +30,7 @@ public class BinarySerializeResponseConverter implements ResponseConverter { public Object getResponse(ServiceRequest request, InputStream responseStream, HttpServiceContext serviceContext) throws Exception { byte[] serializeBytes = BytesUtils.readBytes(responseStream); - Object resolvedObj = BinaryEncodingUtils.decode(serializeBytes); + Object resolvedObj = BinaryProtocol.decode(serializeBytes); return resolvedObj; } diff --git a/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/converters/HashDigestsResponseConverter.java b/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/converters/HashDigestsResponseConverter.java index f647deb3..c19e3bbb 100644 --- a/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/converters/HashDigestsResponseConverter.java +++ b/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/converters/HashDigestsResponseConverter.java @@ -3,7 +3,7 @@ package com.jd.blockchain.sdk.converters; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.crypto.HashDigest; import com.jd.blockchain.crypto.PubKey; import com.jd.blockchain.crypto.SignatureDigest; diff --git a/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/service/NodeSigningAppender.java b/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/service/NodeSigningAppender.java index ff667de4..52f289a8 100644 --- a/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/service/NodeSigningAppender.java +++ b/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/service/NodeSigningAppender.java @@ -1,6 +1,6 @@ package com.jd.blockchain.sdk.service; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.binaryproto.DataContractRegistry; import com.jd.blockchain.consensus.MessageService; import com.jd.blockchain.consensus.client.ConsensusClient; @@ -63,7 +63,7 @@ public class NodeSigningAppender implements TransactionService { TxRequestMessage txMessage = new TxRequestMessage(txRequest); // 生成网关签名; - byte[] endpointRequestBytes = BinaryEncodingUtils.encode(txMessage, TransactionRequest.class); + byte[] endpointRequestBytes = BinaryProtocol.encode(txMessage, TransactionRequest.class); short signAlgorithm = nodeKeyPair.getAlgorithm(); SignatureFunction signFunc = Crypto.getSignatureFunction(signAlgorithm); @@ -71,13 +71,13 @@ public class NodeSigningAppender implements TransactionService { txMessage.addNodeSignatures(new DigitalSignatureBlob(nodeKeyPair.getPubKey(), signDigest)); // 计算交易哈希; - byte[] nodeRequestBytes = BinaryEncodingUtils.encode(txMessage, TransactionRequest.class); + byte[] nodeRequestBytes = BinaryProtocol.encode(txMessage, TransactionRequest.class); HashFunction hashFunc = Crypto.getHashFunction(signAlgorithm); HashDigest txHash = hashFunc.hash(nodeRequestBytes); txMessage.setHash(txHash); - AsyncFuture result = messageService.sendOrdered(BinaryEncodingUtils.encode(txMessage, TransactionRequest.class)); + AsyncFuture result = messageService.sendOrdered(BinaryProtocol.encode(txMessage, TransactionRequest.class)); - return BinaryEncodingUtils.decode(result.get()); + return BinaryProtocol.decode(result.get()); } } diff --git a/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/service/TransactionRequestMessageConverter.java b/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/service/TransactionRequestMessageConverter.java index f150cf91..9a192577 100644 --- a/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/service/TransactionRequestMessageConverter.java +++ b/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/service/TransactionRequestMessageConverter.java @@ -1,6 +1,6 @@ package com.jd.blockchain.sdk.service; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.consensus.BinaryMessageConverter; import com.jd.blockchain.ledger.TransactionRequest; @@ -8,12 +8,12 @@ public class TransactionRequestMessageConverter implements BinaryMessageConverte @Override public byte[] encode(Object message) { - return BinaryEncodingUtils.encode(message, TransactionRequest.class); + return BinaryProtocol.encode(message, TransactionRequest.class); } @Override public Object decode(byte[] messageBytes) { - return BinaryEncodingUtils.decode(messageBytes); + return BinaryProtocol.decode(messageBytes); } } diff --git a/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/service/TransactionResponseMessageConverter.java b/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/service/TransactionResponseMessageConverter.java index 3748c865..01a36973 100644 --- a/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/service/TransactionResponseMessageConverter.java +++ b/source/sdk/sdk-base/src/main/java/com/jd/blockchain/sdk/service/TransactionResponseMessageConverter.java @@ -1,6 +1,6 @@ package com.jd.blockchain.sdk.service; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.consensus.BinaryMessageConverter; import com.jd.blockchain.ledger.TransactionResponse; @@ -8,12 +8,12 @@ public class TransactionResponseMessageConverter implements BinaryMessageConvert @Override public byte[] encode(Object message) { - return BinaryEncodingUtils.encode(message, TransactionResponse.class); + return BinaryProtocol.encode(message, TransactionResponse.class); } @Override public Object decode(byte[] messageBytes) { - return BinaryEncodingUtils.decode(messageBytes); + return BinaryProtocol.decode(messageBytes); } } diff --git a/source/sdk/sdk-client/src/main/java/com/jd/blockchain/sdk/client/GatewayServiceFactory.java b/source/sdk/sdk-client/src/main/java/com/jd/blockchain/sdk/client/GatewayServiceFactory.java index 0dd20872..49348b90 100644 --- a/source/sdk/sdk-client/src/main/java/com/jd/blockchain/sdk/client/GatewayServiceFactory.java +++ b/source/sdk/sdk-client/src/main/java/com/jd/blockchain/sdk/client/GatewayServiceFactory.java @@ -2,7 +2,7 @@ package com.jd.blockchain.sdk.client; import java.io.Closeable; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.crypto.Crypto; import com.jd.blockchain.crypto.PrivKey; import com.jd.blockchain.crypto.SignatureDigest; @@ -135,7 +135,7 @@ public class GatewayServiceFactory implements BlockchainServiceFactory, Closeabl //TODO: 未实现按不同的账本的密码参数配置,采用不同的哈希算法和签名算法; if (!reqMsg.containsEndpointSignature(userKey.getAddress())) { // TODO: 优化上下文对此 TransactionContent 的多次序列化带来的额外性能开销; - byte[] txContentBytes = BinaryEncodingUtils.encode(txRequest.getTransactionContent(), + byte[] txContentBytes = BinaryProtocol.encode(txRequest.getTransactionContent(), TransactionContent.class); PrivKey userPrivKey = userKey.getPrivKey(); SignatureFunction signatureFunction = Crypto.getSignatureFunction(userKey.getAlgorithm()); diff --git a/source/test/test-integration/src/main/java/test/com/jd/blockchain/intgr/perf/LedgerInitializeWebTest.java b/source/test/test-integration/src/main/java/test/com/jd/blockchain/intgr/perf/LedgerInitializeWebTest.java index c131930e..2a72c515 100644 --- a/source/test/test-integration/src/main/java/test/com/jd/blockchain/intgr/perf/LedgerInitializeWebTest.java +++ b/source/test/test-integration/src/main/java/test/com/jd/blockchain/intgr/perf/LedgerInitializeWebTest.java @@ -9,7 +9,7 @@ import org.springframework.boot.SpringApplication; import org.springframework.context.ConfigurableApplicationContext; import org.springframework.core.io.ClassPathResource; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.consensus.ConsensusProvider; import com.jd.blockchain.consensus.ConsensusProviders; import com.jd.blockchain.consensus.ConsensusSettings; @@ -127,28 +127,28 @@ public class LedgerInitializeWebTest { LedgerInitOperation initOp0 = (LedgerInitOperation) oplist0[0]; LedgerInitOperation initOp1 = (LedgerInitOperation) oplist1[0]; - byte[] initOpBytes0 = BinaryEncodingUtils.encode(initOp0, LedgerInitOperation.class); - byte[] initOpBytes1 = BinaryEncodingUtils.encode(initOp1, LedgerInitOperation.class); + byte[] initOpBytes0 = BinaryProtocol.encode(initOp0, LedgerInitOperation.class); + byte[] initOpBytes1 = BinaryProtocol.encode(initOp1, LedgerInitOperation.class); UserRegisterOperation regOp00 = (UserRegisterOperation) oplist0[1]; UserRegisterOperation regOp10 = (UserRegisterOperation) oplist1[1]; - byte[] regOpBytes00 = BinaryEncodingUtils.encode(regOp00, UserRegisterOperation.class); - byte[] regOpBytes10 = BinaryEncodingUtils.encode(regOp10, UserRegisterOperation.class); + byte[] regOpBytes00 = BinaryProtocol.encode(regOp00, UserRegisterOperation.class); + byte[] regOpBytes10 = BinaryProtocol.encode(regOp10, UserRegisterOperation.class); UserRegisterOperation regOp01 = (UserRegisterOperation) oplist0[2]; UserRegisterOperation regOp11 = (UserRegisterOperation) oplist1[2]; - byte[] regOpBytes01 = BinaryEncodingUtils.encode(regOp01, UserRegisterOperation.class); - byte[] regOpBytes11 = BinaryEncodingUtils.encode(regOp11, UserRegisterOperation.class); + byte[] regOpBytes01 = BinaryProtocol.encode(regOp01, UserRegisterOperation.class); + byte[] regOpBytes11 = BinaryProtocol.encode(regOp11, UserRegisterOperation.class); UserRegisterOperation regOp02 = (UserRegisterOperation) oplist0[3]; UserRegisterOperation regOp12 = (UserRegisterOperation) oplist1[3]; - byte[] regOpBytes02 = BinaryEncodingUtils.encode(regOp02, UserRegisterOperation.class); - byte[] regOpBytes12 = BinaryEncodingUtils.encode(regOp12, UserRegisterOperation.class); + byte[] regOpBytes02 = BinaryProtocol.encode(regOp02, UserRegisterOperation.class); + byte[] regOpBytes12 = BinaryProtocol.encode(regOp12, UserRegisterOperation.class); UserRegisterOperation regOp03 = (UserRegisterOperation) oplist0[4]; UserRegisterOperation regOp13 = (UserRegisterOperation) oplist1[4]; - byte[] regOpBytes03 = BinaryEncodingUtils.encode(regOp03, UserRegisterOperation.class); - byte[] regOpBytes13 = BinaryEncodingUtils.encode(regOp13, UserRegisterOperation.class); + byte[] regOpBytes03 = BinaryProtocol.encode(regOp03, UserRegisterOperation.class); + byte[] regOpBytes13 = BinaryProtocol.encode(regOp13, UserRegisterOperation.class); } diff --git a/source/test/test-integration/src/test/java/test/com/jd/blockchain/intgr/initializer/LedgerInitializeWeb4SingleStepsTest.java b/source/test/test-integration/src/test/java/test/com/jd/blockchain/intgr/initializer/LedgerInitializeWeb4SingleStepsTest.java index adac6a1a..bdc80ae4 100644 --- a/source/test/test-integration/src/test/java/test/com/jd/blockchain/intgr/initializer/LedgerInitializeWeb4SingleStepsTest.java +++ b/source/test/test-integration/src/test/java/test/com/jd/blockchain/intgr/initializer/LedgerInitializeWeb4SingleStepsTest.java @@ -14,7 +14,7 @@ import org.springframework.boot.SpringApplication; import org.springframework.context.ConfigurableApplicationContext; import org.springframework.core.io.ClassPathResource; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.consensus.ConsensusProvider; import com.jd.blockchain.consensus.ConsensusSettings; import com.jd.blockchain.crypto.HashDigest; @@ -138,32 +138,32 @@ public class LedgerInitializeWeb4SingleStepsTest { LedgerInitOperation initOp0 = (LedgerInitOperation) oplist0[0]; LedgerInitOperation initOp1 = (LedgerInitOperation) oplist1[0]; - byte[] initOpBytes0 = BinaryEncodingUtils.encode(initOp0, LedgerInitOperation.class); - byte[] initOpBytes1 = BinaryEncodingUtils.encode(initOp1, LedgerInitOperation.class); + byte[] initOpBytes0 = BinaryProtocol.encode(initOp0, LedgerInitOperation.class); + byte[] initOpBytes1 = BinaryProtocol.encode(initOp1, LedgerInitOperation.class); assertTrue(BytesUtils.equals(initOpBytes0, initOpBytes1)); UserRegisterOperation regOp00 = (UserRegisterOperation) oplist0[1]; UserRegisterOperation regOp10 = (UserRegisterOperation) oplist1[1]; - byte[] regOpBytes00 = BinaryEncodingUtils.encode(regOp00, UserRegisterOperation.class); - byte[] regOpBytes10 = BinaryEncodingUtils.encode(regOp10, UserRegisterOperation.class); + byte[] regOpBytes00 = BinaryProtocol.encode(regOp00, UserRegisterOperation.class); + byte[] regOpBytes10 = BinaryProtocol.encode(regOp10, UserRegisterOperation.class); assertTrue(BytesUtils.equals(regOpBytes00, regOpBytes10)); UserRegisterOperation regOp01 = (UserRegisterOperation) oplist0[2]; UserRegisterOperation regOp11 = (UserRegisterOperation) oplist1[2]; - byte[] regOpBytes01 = BinaryEncodingUtils.encode(regOp01, UserRegisterOperation.class); - byte[] regOpBytes11 = BinaryEncodingUtils.encode(regOp11, UserRegisterOperation.class); + byte[] regOpBytes01 = BinaryProtocol.encode(regOp01, UserRegisterOperation.class); + byte[] regOpBytes11 = BinaryProtocol.encode(regOp11, UserRegisterOperation.class); assertTrue(BytesUtils.equals(regOpBytes01, regOpBytes11)); UserRegisterOperation regOp02 = (UserRegisterOperation) oplist0[3]; UserRegisterOperation regOp12 = (UserRegisterOperation) oplist1[3]; - byte[] regOpBytes02 = BinaryEncodingUtils.encode(regOp02, UserRegisterOperation.class); - byte[] regOpBytes12 = BinaryEncodingUtils.encode(regOp12, UserRegisterOperation.class); + byte[] regOpBytes02 = BinaryProtocol.encode(regOp02, UserRegisterOperation.class); + byte[] regOpBytes12 = BinaryProtocol.encode(regOp12, UserRegisterOperation.class); assertTrue(BytesUtils.equals(regOpBytes02, regOpBytes12)); UserRegisterOperation regOp03 = (UserRegisterOperation) oplist0[4]; UserRegisterOperation regOp13 = (UserRegisterOperation) oplist1[4]; - byte[] regOpBytes03 = BinaryEncodingUtils.encode(regOp03, UserRegisterOperation.class); - byte[] regOpBytes13 = BinaryEncodingUtils.encode(regOp13, UserRegisterOperation.class); + byte[] regOpBytes03 = BinaryProtocol.encode(regOp03, UserRegisterOperation.class); + byte[] regOpBytes13 = BinaryProtocol.encode(regOp13, UserRegisterOperation.class); assertTrue(BytesUtils.equals(regOpBytes03, regOpBytes13)); } diff --git a/source/tools/tools-capability/src/main/java/com/jd/blockchain/capability/service/RemoteTransactionService.java b/source/tools/tools-capability/src/main/java/com/jd/blockchain/capability/service/RemoteTransactionService.java index b9364e9c..f45ca863 100644 --- a/source/tools/tools-capability/src/main/java/com/jd/blockchain/capability/service/RemoteTransactionService.java +++ b/source/tools/tools-capability/src/main/java/com/jd/blockchain/capability/service/RemoteTransactionService.java @@ -17,7 +17,7 @@ import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.atomic.AtomicLong; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.capability.settings.CapabilitySettings; import com.jd.blockchain.consensus.mq.factory.MsgQueueFactory; import com.jd.blockchain.consensus.mq.producer.MsgQueueProducer; @@ -240,7 +240,7 @@ public class RemoteTransactionService { instanceFactory.execute(() -> { List currentBytes = new ArrayList<>(); TransactionRequest txRequest = dataAccountRegisterRequest(CapabilitySettings.ledgerHash, CapabilitySettings.adminKey); - byte[] serializeBytes = BinaryEncodingUtils.encode(txRequest, TransactionRequest.class); + byte[] serializeBytes = BinaryProtocol.encode(txRequest, TransactionRequest.class); currentBytes.add(serializeBytes); try { txBlockingQueue.put(currentBytes); @@ -285,7 +285,7 @@ public class RemoteTransactionService { LinkedList txSerializeBytes = new LinkedList<>(); for (int i = 0; i < CapabilitySettings.TX_SIZE_PER_SEND; i++) { TransactionRequest txRequest = userRegisterRequest(CapabilitySettings.ledgerHash, CapabilitySettings.adminKey); - byte[] serializeBytes = BinaryEncodingUtils.encode(txRequest, TransactionRequest.class); + byte[] serializeBytes = BinaryProtocol.encode(txRequest, TransactionRequest.class); txSerializeBytes.addFirst(serializeBytes); } return txSerializeBytes; @@ -300,7 +300,7 @@ public class RemoteTransactionService { LinkedList txSerializeBytes = new LinkedList<>(); for (int i = 0; i < CapabilitySettings.TX_SIZE_PER_SEND; i++) { TransactionRequest txRequest = dataAccountRegisterRequest(CapabilitySettings.ledgerHash, CapabilitySettings.adminKey, isSave); - byte[] serializeBytes = BinaryEncodingUtils.encode(txRequest, TransactionRequest.class); + byte[] serializeBytes = BinaryProtocol.encode(txRequest, TransactionRequest.class); txSerializeBytes.addFirst(serializeBytes); } return txSerializeBytes; @@ -311,7 +311,7 @@ public class RemoteTransactionService { LinkedList txSerializeBytes = new LinkedList<>(); for (int i = 0; i < CapabilitySettings.TX_SIZE_PER_SEND; i++) { TransactionRequest txRequest = kvStorageRequest(address, CapabilitySettings.ledgerHash, CapabilitySettings.adminKey); - byte[] serializeBytes = BinaryEncodingUtils.encode(txRequest, TransactionRequest.class); + byte[] serializeBytes = BinaryProtocol.encode(txRequest, TransactionRequest.class); txSerializeBytes.addFirst(serializeBytes); } return txSerializeBytes; diff --git a/source/tools/tools-initializer/src/main/java/com/jd/blockchain/tools/initializer/web/DecisionRequestBodyConverter.java b/source/tools/tools-initializer/src/main/java/com/jd/blockchain/tools/initializer/web/DecisionRequestBodyConverter.java index 4b096f48..5c7c72e2 100644 --- a/source/tools/tools-initializer/src/main/java/com/jd/blockchain/tools/initializer/web/DecisionRequestBodyConverter.java +++ b/source/tools/tools-initializer/src/main/java/com/jd/blockchain/tools/initializer/web/DecisionRequestBodyConverter.java @@ -3,7 +3,7 @@ package com.jd.blockchain.tools.initializer.web; import java.io.IOException; import java.io.OutputStream; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.ledger.core.LedgerInitDecision; import com.jd.blockchain.utils.http.RequestBodyConverter; @@ -12,7 +12,7 @@ public class DecisionRequestBodyConverter implements RequestBodyConverter { @Override public void write(Object param, OutputStream out) throws IOException { if (param instanceof LedgerInitDecision) { - BinaryEncodingUtils.encode(param, LedgerInitDecision.class, out); + BinaryProtocol.encode(param, LedgerInitDecision.class, out); return; } } diff --git a/source/tools/tools-initializer/src/main/java/com/jd/blockchain/tools/initializer/web/DecisionResponseConverter.java b/source/tools/tools-initializer/src/main/java/com/jd/blockchain/tools/initializer/web/DecisionResponseConverter.java index 6dcbb3d3..ba60ec8c 100644 --- a/source/tools/tools-initializer/src/main/java/com/jd/blockchain/tools/initializer/web/DecisionResponseConverter.java +++ b/source/tools/tools-initializer/src/main/java/com/jd/blockchain/tools/initializer/web/DecisionResponseConverter.java @@ -2,7 +2,7 @@ package com.jd.blockchain.tools.initializer.web; import java.io.InputStream; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.tools.initializer.LedgerInitException; import com.jd.blockchain.utils.http.HttpServiceContext; import com.jd.blockchain.utils.http.ResponseConverter; @@ -17,7 +17,7 @@ public class DecisionResponseConverter implements ResponseConverter { if (resp.isError()) { throw new LedgerInitException("Error occurred at remote participant! --" + resp.getErrorMessage()); } - return BinaryEncodingUtils.decode(resp.getData()); + return BinaryProtocol.decode(resp.getData()); } } diff --git a/source/tools/tools-initializer/src/main/java/com/jd/blockchain/tools/initializer/web/LedgerInitMessageConverter.java b/source/tools/tools-initializer/src/main/java/com/jd/blockchain/tools/initializer/web/LedgerInitMessageConverter.java index d7af9115..5658f9f6 100644 --- a/source/tools/tools-initializer/src/main/java/com/jd/blockchain/tools/initializer/web/LedgerInitMessageConverter.java +++ b/source/tools/tools-initializer/src/main/java/com/jd/blockchain/tools/initializer/web/LedgerInitMessageConverter.java @@ -13,7 +13,7 @@ import org.springframework.http.converter.HttpMessageConverter; import org.springframework.http.converter.HttpMessageNotReadableException; import org.springframework.http.converter.HttpMessageNotWritableException; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.binaryproto.DataContractRegistry; import com.jd.blockchain.crypto.SignatureDigest; import com.jd.blockchain.ledger.core.LedgerInitDecision; @@ -87,7 +87,7 @@ public class LedgerInitMessageConverter implements HttpMessageConverter Class contractType = getContractType(clazz); Class implType = SUPPORTED_CONTRACT_TYPES.get(contractType); - return BinaryEncodingUtils.decode(inputMessage.getBody()); + return BinaryProtocol.decode(inputMessage.getBody()); } @Override @@ -104,7 +104,7 @@ public class LedgerInitMessageConverter implements HttpMessageConverter if (contractType == null) { throw new IllegalStateException("Unsupported type[" + t.getClass().getName() + "]!"); } - byte[] data = BinaryEncodingUtils.encode(t, contractType); + byte[] data = BinaryProtocol.encode(t, contractType); resp = LedgerInitResponse.success(data); outputMessage.getBody().write(resp.toBytes()); } diff --git a/source/tools/tools-initializer/src/main/java/com/jd/blockchain/tools/initializer/web/PermissionResponseConverter.java b/source/tools/tools-initializer/src/main/java/com/jd/blockchain/tools/initializer/web/PermissionResponseConverter.java index a0f40417..ab5b0308 100644 --- a/source/tools/tools-initializer/src/main/java/com/jd/blockchain/tools/initializer/web/PermissionResponseConverter.java +++ b/source/tools/tools-initializer/src/main/java/com/jd/blockchain/tools/initializer/web/PermissionResponseConverter.java @@ -2,7 +2,7 @@ package com.jd.blockchain.tools.initializer.web; import java.io.InputStream; -import com.jd.blockchain.binaryproto.BinaryEncodingUtils; +import com.jd.blockchain.binaryproto.BinaryProtocol; import com.jd.blockchain.ledger.core.LedgerInitPermissionData; import com.jd.blockchain.tools.initializer.LedgerInitException; import com.jd.blockchain.utils.http.HttpServiceContext; @@ -18,7 +18,7 @@ public class PermissionResponseConverter implements ResponseConverter { if (resp.isError()) { throw new LedgerInitException("Error occurred at remote participant! --" + resp.getErrorMessage()); } - return BinaryEncodingUtils.decode(resp.getData()); + return BinaryProtocol.decode(resp.getData()); } }