Skip to content

Commit 25cbfee

Browse files
Improve packageCC.sh robustness with build verification and finalize ledger-queries Java/TS support
1 parent 08621e7 commit 25cbfee

2 files changed

Lines changed: 5 additions & 1 deletion

File tree

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ transfer an asset in a more realistic transfer scenario.
3737
| **Smart Contract** | **Description** | **Tutorial** | **Smart contract languages** | **Application languages** |
3838
| -----------|------------------------------|----------|---------|---------|
3939
| [Basic](asset-transfer-basic) | The Basic sample smart contract that allows you to create and transfer an asset by putting data on the ledger and retrieving it. This sample is recommended for new Fabric users. | [Writing your first application](https://hyperledger-fabric.readthedocs.io/en/latest/write_first_app.html) | Go, JavaScript, TypeScript, Java | Go, TypeScript, Java |
40-
| [Ledger queries](asset-transfer-ledger-queries) | The ledger queries sample demonstrates range queries and transaction updates using range queries (applicable for both LevelDB and CouchDB state databases), and how to deploy an index with your chaincode to support JSON queries (applicable for CouchDB state database only). | [Using CouchDB](https://hyperledger-fabric.readthedocs.io/en/latest/couchdb_tutorial.html) | Go, JavaScript, Java, TypeScript | Go, TypeScript, Java, JavaScript |
40+
| [Ledger queries](asset-transfer-ledger-queries) | The ledger queries sample demonstrates range queries and transaction updates using range queries (applicable for both LevelDB and CouchDB state databases), and how to deploy an index with your chaincode to support JSON queries (applicable for CouchDB state database only). | [Using CouchDB](https://hyperledger-fabric.readthedocs.io/en/latest/couchdb_tutorial.html) | Go, JavaScript, Java, TypeScript | Java, JavaScript |
4141
| [Private data](asset-transfer-private-data) | This sample demonstrates the use of private data collections, how to manage private data collections with the chaincode lifecycle, and how the private data hash can be used to verify private data on the ledger. It also demonstrates how to control asset updates and transfers using client-based ownership and access control. | [Using Private Data](https://hyperledger-fabric.readthedocs.io/en/latest/private_data_tutorial.html) | Go, TypeScript, Java | TypeScript |
4242
| [State-Based Endorsement](asset-transfer-sbe) | This sample demonstrates how to override the chaincode-level endorsement policy to set endorsement policies at the key-level (data/asset level). | [Using State-based endorsement](https://github.com/hyperledger/fabric-samples/tree/main/asset-transfer-sbe) | Java, TypeScript | JavaScript |
4343
| [Secured agreement](asset-transfer-secured-agreement) | Smart contract that uses implicit private data collections, state-based endorsement, and organization-based ownership and access control to keep data private and securely transfer an asset with the consent of both the current owner and buyer. | [Secured asset transfer](https://hyperledger-fabric.readthedocs.io/en/latest/secured_asset_transfer/secured_private_asset_transfer_tutorial.html) | Go | TypeScript |

test-network/scripts/packageCC.sh

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,9 @@ elif [ "$CC_SRC_LANGUAGE" = "java" ]; then
5151
infoln "Compiling Java code..."
5252
pushd $CC_SRC_PATH
5353
./gradlew installDist
54+
res=$?
5455
popd
56+
verifyResult $res "Java compilation failed"
5557
successln "Finished compiling Java code"
5658

5759
# Copy META-INF to the distribution directory if it exists
@@ -73,7 +75,9 @@ elif [ "$CC_SRC_LANGUAGE" = "typescript" ]; then
7375
pushd $CC_SRC_PATH
7476
npm install
7577
npm run build
78+
res=$?
7679
popd
80+
verifyResult $res "TypeScript compilation failed"
7781
successln "Finished compiling TypeScript code into JavaScript"
7882

7983
else

0 commit comments

Comments
 (0)