/
TransactionBuilderJniObj.java
142 lines (128 loc) · 3.87 KB
/
TransactionBuilderJniObj.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
package org.fisco.bcos.sdk.jni.utilities.tx;
import org.fisco.bcos.sdk.jni.common.JniException;
import org.fisco.bcos.sdk.jni.common.JniLibLoader;
public class TransactionBuilderJniObj {
static {
JniLibLoader.loadJniLibrary();
}
/**
* @param groupID group id
* @param chainID chain id
* @param to contract address, which calling to
* @param data tx input data
* @param abi ABI json string, should add it when deploy
* @param blockLimit block limit
* @return Transaction Data pointer
*/
public static native long createTransactionData(
String groupID, String chainID, String to, String data, String abi, long blockLimit)
throws JniException;
/**
* Create a Transaction Data object with json
*
* @param json version:number groupID:string chainID:string to:string data:hex string abi:string
* blockLimit:number nonce:string
* @return Transaction Data pointer
*/
public static native long createTransactionDataWithJson(String json) throws JniException;
/** @param transactionData Transaction Data pointer */
public static native void destroyTransactionData(long transactionData) throws JniException;
/**
* @param transactionData Transaction Data pointer
* @return encoded string
*/
public static native String encodeTransactionData(long transactionData) throws JniException;
/**
* @param transactionDataHex transactionData hex string
* @return transactionData json string
* @throws JniException throw when cpp sdk exception
*/
public static native String decodeTransactionDataToJsonObj(String transactionDataHex)
throws JniException;
/**
* @param cryptoType crypto type
* @param transactionData Transaction Data pointer
* @return Hash hex string
*/
public static native String calcTransactionDataHash(int cryptoType, long transactionData)
throws JniException;
/**
* @param keyPair KeyPair pointer
* @param transactionDataHash transaction data hash hex string
* @return signed tx string
*/
public static native String signTransactionDataHash(long keyPair, String transactionDataHash)
throws JniException;
/**
* @param transactionData Transaction Data pointer
* @param transactionDataHashSignedData signed tx data string
* @param transactionDataHash transaction data hash hex string
* @param attribute TransactionAttribute
* @return signed tx string
*/
public static native String createSignedTransaction(
long transactionData,
String transactionDataHashSignedData,
String transactionDataHash,
int attribute)
throws JniException;
/**
* @param transactionData
* @param transactionDataHashSignedData
* @param transactionDataHash
* @param attribute
* @param extraData
* @return
*/
public static native String createSignedTransaction(
long transactionData,
String transactionDataHashSignedData,
String transactionDataHash,
int attribute,
String extraData)
throws JniException;
/**
* @param keyPair
* @param groupID
* @param chainID
* @param to
* @param data
* @param blockLimit
* @param attribute
* @return
* @throws JniException
*/
public static native TxPair createSignedTransaction(
long keyPair,
String groupID,
String chainID,
String to,
String data,
String abi,
long blockLimit,
int attribute)
throws JniException;
/**
* @param keyPair
* @param groupID
* @param chainID
* @param to
* @param data
* @param blockLimit
* @param attribute
* @param extraData
* @return
* @throws JniException
*/
public static native TxPair createSignedTransaction(
long keyPair,
String groupID,
String chainID,
String to,
String data,
String abi,
long blockLimit,
int attribute,
String extraData)
throws JniException;
}