Skip to content

Commit 646737b

Browse files
authored
<feat>(precompiled): adapt 3.3 dynamic auth check feature. (#724)
1 parent c419ef0 commit 646737b

File tree

4 files changed

+17
-2
lines changed

4 files changed

+17
-2
lines changed

build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ ext {
3535
// integrationTest.mustRunAfter test
3636
allprojects {
3737
group = 'org.fisco-bcos.java-sdk'
38-
version = '3.2.0'
38+
version = '3.3.0-SNAPSHOT'
3939

4040
apply plugin: 'maven-publish'
4141
apply plugin: 'idea'

src/main/java/org/fisco/bcos/sdk/v3/client/ClientImpl.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@
5555
import org.fisco.bcos.sdk.v3.config.ConfigOption;
5656
import org.fisco.bcos.sdk.v3.crypto.CryptoSuite;
5757
import org.fisco.bcos.sdk.v3.model.CryptoType;
58+
import org.fisco.bcos.sdk.v3.model.EnumNodeVersion;
5859
import org.fisco.bcos.sdk.v3.model.JsonRpcResponse;
5960
import org.fisco.bcos.sdk.v3.model.Response;
6061
import org.fisco.bcos.sdk.v3.model.callback.ResponseCallback;
@@ -111,12 +112,20 @@ protected void initGroupInfo() {
111112

112113
BcosGroupNodeInfo.GroupNodeInfo groupNodeInfo = groupInfo.getNodeList().get(0);
113114
GroupNodeIniInfo nodeIniConfig = groupNodeInfo.getIniConfig();
115+
long compatibilityVersion = groupNodeInfo.getProtocol().getCompatibilityVersion();
114116

115117
this.groupNodeIniConfig = GroupNodeIniConfig.newIniConfig(nodeIniConfig);
116118
this.chainID = groupNodeIniConfig.getChain().getChainID();
117119
this.wasm = groupNodeIniConfig.getExecutor().isWasm();
118120
this.serialExecute = groupNodeIniConfig.getExecutor().isSerialExecute();
121+
119122
this.authCheck = groupNodeIniConfig.getExecutor().isAuthCheck();
123+
if (EnumNodeVersion.valueOf((int) compatibilityVersion)
124+
.toVersionObj()
125+
.compareTo(EnumNodeVersion.BCOS_3_3_0.toVersionObj())
126+
>= 0) {
127+
this.authCheck = true;
128+
}
120129
this.smCrypto = groupNodeIniConfig.getChain().isSmCrypto();
121130
this.blockNumber = this.getBlockNumber().getBlockNumber().longValue();
122131

src/main/java/org/fisco/bcos/sdk/v3/contract/precompiled/sysconfig/SystemConfigService.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,12 +31,14 @@ public class SystemConfigService {
3131
public static final String TX_COUNT_LIMIT = "tx_count_limit";
3232
public static final String TX_GAS_LIMIT = "tx_gas_limit";
3333
public static final String CONSENSUS_PERIOD = "consensus_leader_period";
34+
public static final String AUTH_STATUS = "auth_status";
3435
public static final int TX_GAS_LIMIT_MIN = 100000;
3536
private static final Map<String, Predicate<BigInteger>> predicateMap = new HashMap<>();
3637

3738
static {
3839
predicateMap.put(TX_COUNT_LIMIT, value -> value.compareTo(BigInteger.ONE) >= 0);
3940
predicateMap.put(CONSENSUS_PERIOD, value -> value.compareTo(BigInteger.ONE) >= 0);
41+
predicateMap.put(AUTH_STATUS, value -> value.compareTo(BigInteger.ONE) >= 0);
4042
predicateMap.put(
4143
TX_GAS_LIMIT, value -> value.compareTo(BigInteger.valueOf(TX_GAS_LIMIT_MIN)) >= 0);
4244
}

src/main/java/org/fisco/bcos/sdk/v3/model/EnumNodeVersion.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,8 @@ public enum EnumNodeVersion {
88
BCOS_3_0_0_RC4(4),
99
BCOS_3_0_0(0x03000000),
1010
BCOS_3_1_0(0x03010000),
11-
BCOS_3_2_0(0x03020000);
11+
BCOS_3_2_0(0x03020000),
12+
BCOS_3_3_0(0x03030000);
1213

1314
private final Integer version;
1415
private static final Map<Integer, EnumNodeVersion> versionLookupMap = new HashMap<>();
@@ -18,6 +19,7 @@ public enum EnumNodeVersion {
1819
versionLookupMap.put(0x03000000, BCOS_3_0_0);
1920
versionLookupMap.put(0x03010000, BCOS_3_1_0);
2021
versionLookupMap.put(0x03020000, BCOS_3_2_0);
22+
versionLookupMap.put(0x03030000, BCOS_3_3_0);
2123
}
2224

2325
EnumNodeVersion(Integer version) {
@@ -38,6 +40,8 @@ public String getVersionString() {
3840
return "3.1.0";
3941
case BCOS_3_2_0:
4042
return "3.2.0";
43+
case BCOS_3_3_0:
44+
return "3.3.0";
4145
case UNKNOWN:
4246
default:
4347
return "0.0.0";

0 commit comments

Comments
 (0)