Browse Source

Adding SDK usage examples

tags/1.1.0
shaozhuguang 6 years ago
parent
commit
922fe54490
3 changed files with 89 additions and 19 deletions
  1. +19
    -19
      source/sdk/sdk-samples/src/main/java/com/jd/blockchain/sdk/samples/SDKDemo_Constant.java
  2. +26
    -0
      source/sdk/sdk-samples/src/main/java/com/jd/blockchain/sdk/samples/SDK_RoleConfig_Demo.java
  3. +44
    -0
      source/sdk/sdk-samples/src/main/java/com/jd/blockchain/sdk/samples/SDK_User2Role_Demo.java

+ 19
- 19
source/sdk/sdk-samples/src/main/java/com/jd/blockchain/sdk/samples/SDKDemo_Constant.java View File

@@ -7,37 +7,37 @@ import java.io.File;

public class SDKDemo_Constant {

// public static final String GW_IPADDR = "127.0.0.1";
public static final String GW_IPADDR = "192.168.151.41";

// public static final int GW_PORT = 11000;
public static final int GW_PORT = 18081;

// public static final String[] PUB_KEYS = {
// "3snPdw7i7PjVKiTH2VnXZu5H8QmNaSXpnk4ei533jFpuifyjS5zzH9",
// "3snPdw7i7PajLB35tEau1kmixc6ZrjLXgxwKbkv5bHhP7nT5dhD9eX",
// "3snPdw7i7PZi6TStiyc6mzjprnNhgs2atSGNS8wPYzhbKaUWGFJt7x",
// "3snPdw7i7PifPuRX7fu3jBjsb3rJRfDe9GtbDfvFJaJ4V4hHXQfhwk"};
//
// public static final String[] PRIV_KEYS = {
// "177gjzHTznYdPgWqZrH43W3yp37onm74wYXT4v9FukpCHBrhRysBBZh7Pzdo5AMRyQGJD7x",
// "177gju9p5zrNdHJVEQnEEKF4ZjDDYmAXyfG84V5RPGVc5xFfmtwnHA7j51nyNLUFffzz5UT",
// "177gjtwLgmSx5v1hFb46ijh7L9kdbKUpJYqdKVf9afiEmAuLgo8Rck9yu5UuUcHknWJuWaF",
// "177gk1pudweTq5zgJTh8y3ENCTwtSFsKyX7YnpuKPo7rKgCkCBXVXh5z2syaTCPEMbuWRns"};
public static final String GW_IPADDR = "127.0.0.1";
// public static final String GW_IPADDR = "192.168.151.41";

public static final int GW_PORT = 11000;
// public static final int GW_PORT = 18081;

public static final String[] PUB_KEYS = {
"3snPdw7i7PXvEDgq96QyzcKhfWL4mgYspzKwvgXiuAidWb2rkRMgDY",
"3snPdw7i7PjVKiTH2VnXZu5H8QmNaSXpnk4ei533jFpuifyjS5zzH9",
"3snPdw7i7PajLB35tEau1kmixc6ZrjLXgxwKbkv5bHhP7nT5dhD9eX",
"3snPdw7i7PZi6TStiyc6mzjprnNhgs2atSGNS8wPYzhbKaUWGFJt7x",
"3snPdw7i7PifPuRX7fu3jBjsb3rJRfDe9GtbDfvFJaJ4V4hHXQfhwk"};

public static final String[] PRIV_KEYS = {
"177gjsxj2ezADGthZ4tGqWeCAqRAwtNvesPjRnyKqCb1huU8LKZmJ3HGZNMPKWQJK3DP1B2",
"177gjzHTznYdPgWqZrH43W3yp37onm74wYXT4v9FukpCHBrhRysBBZh7Pzdo5AMRyQGJD7x",
"177gju9p5zrNdHJVEQnEEKF4ZjDDYmAXyfG84V5RPGVc5xFfmtwnHA7j51nyNLUFffzz5UT",
"177gjtwLgmSx5v1hFb46ijh7L9kdbKUpJYqdKVf9afiEmAuLgo8Rck9yu5UuUcHknWJuWaF",
"177gk1pudweTq5zgJTh8y3ENCTwtSFsKyX7YnpuKPo7rKgCkCBXVXh5z2syaTCPEMbuWRns"};


// public static final String[] PUB_KEYS = {
// "3snPdw7i7PXvEDgq96QyzcKhfWL4mgYspzKwvgXiuAidWb2rkRMgDY",
// "3snPdw7i7PajLB35tEau1kmixc6ZrjLXgxwKbkv5bHhP7nT5dhD9eX",
// "3snPdw7i7PZi6TStiyc6mzjprnNhgs2atSGNS8wPYzhbKaUWGFJt7x",
// "3snPdw7i7PifPuRX7fu3jBjsb3rJRfDe9GtbDfvFJaJ4V4hHXQfhwk"};
//
// public static final String[] PRIV_KEYS = {
// "177gjsxj2ezADGthZ4tGqWeCAqRAwtNvesPjRnyKqCb1huU8LKZmJ3HGZNMPKWQJK3DP1B2",
// "177gju9p5zrNdHJVEQnEEKF4ZjDDYmAXyfG84V5RPGVc5xFfmtwnHA7j51nyNLUFffzz5UT",
// "177gjtwLgmSx5v1hFb46ijh7L9kdbKUpJYqdKVf9afiEmAuLgo8Rck9yu5UuUcHknWJuWaF",
// "177gk1pudweTq5zgJTh8y3ENCTwtSFsKyX7YnpuKPo7rKgCkCBXVXh5z2syaTCPEMbuWRns"};

public static final String PASSWORD = "abc";

public static final byte[] readChainCodes(String contractZip) {


+ 26
- 0
source/sdk/sdk-samples/src/main/java/com/jd/blockchain/sdk/samples/SDK_RoleConfig_Demo.java View File

@@ -0,0 +1,26 @@
package com.jd.blockchain.sdk.samples;

import com.jd.blockchain.ledger.*;

public class SDK_RoleConfig_Demo extends SDK_Base_Demo {

public static void main(String[] args) {
new SDK_RoleConfig_Demo().executeRoleConfig();
}

public void executeRoleConfig() {

// 定义交易模板
TransactionTemplate txTpl = blockchainService.newTransaction(ledgerHash);

// 新增加一个角色

txTpl.security().roles().configure("MyRole")
.enable(LedgerPermission.APPROVE_TX, LedgerPermission.CONSENSUS_TX)
.disable(TransactionPermission.CONTRACT_OPERATION);
TransactionResponse txResp = commit(txTpl);

System.out.println(txResp.isSuccess());

}
}

+ 44
- 0
source/sdk/sdk-samples/src/main/java/com/jd/blockchain/sdk/samples/SDK_User2Role_Demo.java View File

@@ -0,0 +1,44 @@
package com.jd.blockchain.sdk.samples;

import com.jd.blockchain.ledger.*;
import com.jd.blockchain.utils.Bytes;

public class SDK_User2Role_Demo extends SDK_Base_Demo {

public static void main(String[] args) {
new SDK_User2Role_Demo().executeUser2Role();
}

public void executeUser2Role() {

// 定义交易模板
TransactionTemplate txTpl = blockchainService.newTransaction(ledgerHash);

// 注册一个用户
BlockchainKeypair user = createUser();

Bytes userAddress = user.getAddress();
// 获取数据账户地址
System.out.printf("UserAddress = %s \r\n", userAddress.toBase58());


txTpl.security().authorziations().forUser(user.getIdentity())
.authorize("MYROLE")
.setPolicy(RolesPolicy.UNION)
.unauthorize("MYROLE");
TransactionResponse txResp = commit(txTpl);

System.out.println(txResp.isSuccess());

}

private BlockchainKeypair createUser() {
// 首先注册一个数据账户
BlockchainKeypair newUser = BlockchainKeyGenerator.getInstance().generate();

TransactionTemplate txTpl = blockchainService.newTransaction(ledgerHash);
txTpl.users().register(newUser.getIdentity());
commit(txTpl);
return newUser;
}
}

Loading…
Cancel
Save