Search in sources :

Example 6 with DynamicArray

use of org.fisco.bcos.web3j.abi.datatypes.DynamicArray in project web3sdk by FISCO-BCOS.

the class TypeDecoder method decodeDynamicArray.

@SuppressWarnings("unchecked")
public static <T extends Type> T decodeDynamicArray(String input, int offset, java.lang.reflect.Type type) {
    int length = decodeUintAsInt(input, offset);
    BiFunction<List<T>, String, T> function = (elements, typeName) -> {
        if (elements.isEmpty()) {
            return (T) DynamicArray.empty(typeName);
        } else {
            return (T) new DynamicArray<>(elements);
        }
    };
    int valueOffset = offset + MAX_BYTE_LENGTH_FOR_HEX_STRING;
    return decodeArrayElements(input, valueOffset, type, length, function);
}
Also used : Uint160(org.fisco.bcos.web3j.abi.datatypes.generated.Uint160) DynamicBytes(org.fisco.bcos.web3j.abi.datatypes.DynamicBytes) Fixed(org.fisco.bcos.web3j.abi.datatypes.Fixed) BiFunction(java.util.function.BiFunction) Bool(org.fisco.bcos.web3j.abi.datatypes.Bool) StaticArray(org.fisco.bcos.web3j.abi.datatypes.StaticArray) Ufixed(org.fisco.bcos.web3j.abi.datatypes.Ufixed) ArrayList(java.util.ArrayList) FixedPointType(org.fisco.bcos.web3j.abi.datatypes.FixedPointType) Array(org.fisco.bcos.web3j.abi.datatypes.Array) Uint(org.fisco.bcos.web3j.abi.datatypes.Uint) Utf8String(org.fisco.bcos.web3j.abi.datatypes.Utf8String) BigInteger(java.math.BigInteger) Address(org.fisco.bcos.web3j.abi.datatypes.Address) DynamicArray(org.fisco.bcos.web3j.abi.datatypes.DynamicArray) Numeric(org.fisco.bcos.web3j.utils.Numeric) NumericType(org.fisco.bcos.web3j.abi.datatypes.NumericType) IntType(org.fisco.bcos.web3j.abi.datatypes.IntType) StandardCharsets(java.nio.charset.StandardCharsets) InvocationTargetException(java.lang.reflect.InvocationTargetException) List(java.util.List) Type(org.fisco.bcos.web3j.abi.datatypes.Type) ParameterizedType(java.lang.reflect.ParameterizedType) Int(org.fisco.bcos.web3j.abi.datatypes.Int) Bytes(org.fisco.bcos.web3j.abi.datatypes.Bytes) DynamicArray(org.fisco.bcos.web3j.abi.datatypes.DynamicArray) ArrayList(java.util.ArrayList) List(java.util.List) Utf8String(org.fisco.bcos.web3j.abi.datatypes.Utf8String) Uint(org.fisco.bcos.web3j.abi.datatypes.Uint)

Example 7 with DynamicArray

use of org.fisco.bcos.web3j.abi.datatypes.DynamicArray in project web3sdk by FISCO-BCOS.

the class TransactionDecoderTest method testTableTest.

@Test
public void testTableTest() throws JsonProcessingException, TransactionException, BaseException {
    /*
         * contract TableTest {
         *
         * // function select(string name) public constant returns(bytes32[], int[], bytes32[])
         * // function insert(string name, int item_id, string item_name)
         * // function update(string name, int item_id, string item_name)
         * // function remove(string name, int item_id) public returns(int)
         * }
         * */
    String abi = "[{\"constant\":false,\"inputs\":[{\"name\":\"name\",\"type\":\"string\"},{\"name\":\"item_id\",\"type\":\"int256\"},{\"name\":\"item_name\",\"type\":\"string\"}],\"name\":\"update\",\"outputs\":[{\"name\":\"\",\"type\":\"int256\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"name\",\"type\":\"string\"},{\"name\":\"item_id\",\"type\":\"int256\"}],\"name\":\"remove\",\"outputs\":[{\"name\":\"\",\"type\":\"int256\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"name\",\"type\":\"string\"},{\"name\":\"item_id\",\"type\":\"int256\"},{\"name\":\"item_name\",\"type\":\"string\"}],\"name\":\"insert\",\"outputs\":[{\"name\":\"result\",\"type\":\"int256\"},{\"name\":\"result_name\",\"type\":\"string\"},{\"name\":\"\",\"type\":\"bytes32\"},{\"name\":\"addr\",\"type\":\"address\"},{\"name\":\"\",\"type\":\"bytes32[]\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"create\",\"outputs\":[{\"name\":\"\",\"type\":\"int256\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"name\",\"type\":\"string\"}],\"name\":\"select\",\"outputs\":[{\"name\":\"\",\"type\":\"bytes32[]\"},{\"name\":\"\",\"type\":\"int256[]\"},{\"name\":\"\",\"type\":\"bytes32[]\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"count\",\"type\":\"int256\"}],\"name\":\"CreateResult\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"count\",\"type\":\"int256\"},{\"indexed\":false,\"name\":\"name\",\"type\":\"string\"},{\"indexed\":false,\"name\":\"item_name\",\"type\":\"bytes8\"},{\"indexed\":false,\"name\":\"item_id\",\"type\":\"bytes32[]\"}],\"name\":\"InsertResult\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"count\",\"type\":\"int256\"},{\"indexed\":false,\"name\":\"name\",\"type\":\"string\"}],\"name\":\"UpdateResult\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"count\",\"type\":\"int256\"}],\"name\":\"RemoveResult\",\"type\":\"event\"}]";
    TransactionDecoder decode = TransactionDecoderFactory.buildTransactionDecoder(abi, "");
    // function select(string name) returns(bytes32[], int[], bytes32[])
    Function select = new Function("select", Arrays.asList(new Utf8String("HelloWorld!")), Arrays.asList(new TypeReference<DynamicArray<Bytes32>>() {
    }, new TypeReference<DynamicArray<Int256>>() {
    }, new TypeReference<DynamicArray<Bytes32>>() {
    }));
    String selectSR = decode.decodeInputReturnJson(FunctionEncoder.encode(select));
    assertThat(selectSR, is("{\"function\":\"select(string)\",\"methodID\":\"0xfcd7e3c1\",\"result\":[{\"name\":\"name\",\"type\":\"string\",\"data\":\"HelloWorld!\"}]}"));
    InputAndOutputResult inputAndOutputResult1 = decode.decodeInputReturnObject(FunctionEncoder.encode(select));
    List<ResultEntity> selectOR = inputAndOutputResult1.getResult();
    assertThat(transEntitytoType(selectOR), is(Arrays.asList(new Utf8String("HelloWorld!"))));
    String output = FunctionEncoder.encodeConstructor(Arrays.asList(new DynamicArray<Bytes32>(new Bytes32("01234567890123456789012345678912".getBytes()), new Bytes32("a123456789012345f7890f2345678d12".getBytes()), new Bytes32("abcdefghijklmnopqrstuvwxyzadfljk".getBytes())), new DynamicArray<Int256>(new Int256(1234567), new Int256(-1234567), new Int256(98877)), new DynamicArray<Bytes32>(new Bytes32("01234567890123456789012345678912".getBytes()), new Bytes32("a123456789012345f7890f2345678d12".getBytes()), new Bytes32("abcdefghijklmnopqrstuvwxyzadfljk".getBytes()))));
    String selectSOR = decode.decodeOutputReturnJson(FunctionEncoder.encode(select), output);
    InputAndOutputResult inputAndOutputResult = decode.decodeOutputReturnObject(FunctionEncoder.encode(select), output);
    List<ResultEntity> selectOutOR = inputAndOutputResult.getResult();
    assertThat(selectSOR, is("{\"function\":\"select(string)\",\"methodID\":\"0xfcd7e3c1\",\"result\":[{\"name\":\"\",\"type\":\"bytes32[]\",\"data\":[\"01234567890123456789012345678912\",\"a123456789012345f7890f2345678d12\",\"abcdefghijklmnopqrstuvwxyzadfljk\"]},{\"name\":\"\",\"type\":\"int256[]\",\"data\":[1234567,-1234567,98877]},{\"name\":\"\",\"type\":\"bytes32[]\",\"data\":[\"01234567890123456789012345678912\",\"a123456789012345f7890f2345678d12\",\"abcdefghijklmnopqrstuvwxyzadfljk\"]}]}"));
    assertThat(transEntitytoType(selectOutOR), is(Arrays.asList(new DynamicArray<Bytes32>(new Bytes32("01234567890123456789012345678912".getBytes()), new Bytes32("a123456789012345f7890f2345678d12".getBytes()), new Bytes32("abcdefghijklmnopqrstuvwxyzadfljk".getBytes())), new DynamicArray<Int256>(new Int256(1234567), new Int256(-1234567), new Int256(98877)), new DynamicArray<Bytes32>(new Bytes32("01234567890123456789012345678912".getBytes()), new Bytes32("a123456789012345f7890f2345678d12".getBytes()), new Bytes32("abcdefghijklmnopqrstuvwxyzadfljk".getBytes())))));
    // function update(string name, int item_id, string item_name)
    Function update = new Function("update", Arrays.asList(new Utf8String("HelloWorld! My First Hello."), new Int256(5555), new Utf8String("Good afternoon")), Collections.<TypeReference<?>>emptyList());
    String updateSR = decode.decodeInputReturnJson(FunctionEncoder.encode(update));
    assertThat(updateSR, is("{\"function\":\"update(string,int256,string)\",\"methodID\":\"0x487a5a10\",\"result\":[{\"name\":\"name\",\"type\":\"string\",\"data\":\"HelloWorld! My First Hello.\"},{\"name\":\"item_id\",\"type\":\"int256\",\"data\":5555},{\"name\":\"item_name\",\"type\":\"string\",\"data\":\"Good afternoon\"}]}"));
    InputAndOutputResult inputAndOutputResult2 = decode.decodeInputReturnObject(FunctionEncoder.encode(update));
    List<ResultEntity> updateOR = inputAndOutputResult2.getResult();
    assertThat(transEntitytoType(updateOR), is(Arrays.asList(new Utf8String("HelloWorld! My First Hello."), new Int256(5555), new Utf8String("Good afternoon"))));
    // function remove(string name, int item_id) public returns(int)
    Function remove = new Function("remove", Arrays.asList(new Utf8String("HelloWorld! My First Hello."), new Int256(-1111111)), Collections.<TypeReference<?>>emptyList());
    String removeSR = decode.decodeInputReturnJson(FunctionEncoder.encode(remove));
    InputAndOutputResult inputAndOutputResult3 = decode.decodeInputReturnObject(FunctionEncoder.encode(remove));
    List<ResultEntity> removeOR = inputAndOutputResult3.getResult();
    assertThat(removeSR, is("{\"function\":\"remove(string,int256)\",\"methodID\":\"0xc4f41ab3\",\"result\":[{\"name\":\"name\",\"type\":\"string\",\"data\":\"HelloWorld! My First Hello.\"},{\"name\":\"item_id\",\"type\":\"int256\",\"data\":-1111111}]}"));
    assertThat(transEntitytoType(removeOR), is(Arrays.asList(new Utf8String("HelloWorld! My First Hello."), new Int256(-1111111))));
}
Also used : Utf8String(org.fisco.bcos.web3j.abi.datatypes.Utf8String) Bytes32(org.fisco.bcos.web3j.abi.datatypes.generated.Bytes32) Function(org.fisco.bcos.web3j.abi.datatypes.Function) Utf8String(org.fisco.bcos.web3j.abi.datatypes.Utf8String) Int256(org.fisco.bcos.web3j.abi.datatypes.generated.Int256) DynamicArray(org.fisco.bcos.web3j.abi.datatypes.DynamicArray) TypeReference(org.fisco.bcos.web3j.abi.TypeReference) Test(org.junit.Test)

Example 8 with DynamicArray

use of org.fisco.bcos.web3j.abi.datatypes.DynamicArray in project web3sdk by FISCO-BCOS.

the class TransactionDecoderTest method testEventDArray.

@Test
public void testEventDArray() throws BaseException, IOException {
    /*
         	event TestEventDArrayParams(uint256[] _u,int256[] _i,bool[] _b,address[] _addr,bytes32[] _bs32, string[] _s,bytes[] _bs);
        */
    TransactionDecoder decode = TransactionDecoderFactory.buildTransactionDecoder("[{\"constant\":true,\"inputs\":[{\"name\":\"_u\",\"type\":\"uint256[4]\"},{\"name\":\"_i\",\"type\":\"int256[4]\"},{\"name\":\"_b\",\"type\":\"bool[4]\"},{\"name\":\"_addr\",\"type\":\"address[4]\"},{\"name\":\"_bs32\",\"type\":\"bytes32[4]\"},{\"name\":\"_s\",\"type\":\"string[4]\"},{\"name\":\"_bs\",\"type\":\"bytes[4]\"}],\"name\":\"test\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256[2]\"},{\"name\":\"\",\"type\":\"int256[2]\"},{\"name\":\"\",\"type\":\"bool[2]\"},{\"name\":\"\",\"type\":\"address[2]\"},{\"name\":\"\",\"type\":\"bytes32[2]\"},{\"name\":\"\",\"type\":\"string[2]\"},{\"name\":\"\",\"type\":\"bytes[2]\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"_u\",\"type\":\"uint256\"},{\"name\":\"_i\",\"type\":\"int256\"},{\"name\":\"_b\",\"type\":\"bool\"},{\"name\":\"_addr\",\"type\":\"address\"},{\"name\":\"_bs32\",\"type\":\"bytes32\"},{\"name\":\"_s\",\"type\":\"string\"},{\"name\":\"_bs\",\"type\":\"bytes\"}],\"name\":\"test\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"},{\"name\":\"\",\"type\":\"int256\"},{\"name\":\"\",\"type\":\"bool\"},{\"name\":\"\",\"type\":\"address\"},{\"name\":\"\",\"type\":\"bytes32\"},{\"name\":\"\",\"type\":\"string\"},{\"name\":\"\",\"type\":\"bytes\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"_u\",\"type\":\"uint256[]\"},{\"name\":\"_i\",\"type\":\"int256[]\"},{\"name\":\"_b\",\"type\":\"bool[]\"},{\"name\":\"_addr\",\"type\":\"address[]\"},{\"name\":\"_bs32\",\"type\":\"bytes32[]\"},{\"name\":\"_s\",\"type\":\"string[]\"},{\"name\":\"_bs\",\"type\":\"bytes[]\"}],\"name\":\"test\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256[]\"},{\"name\":\"\",\"type\":\"int256[]\"},{\"name\":\"\",\"type\":\"bool[]\"},{\"name\":\"\",\"type\":\"address[]\"},{\"name\":\"\",\"type\":\"bytes32[]\"},{\"name\":\"\",\"type\":\"string[]\"},{\"name\":\"\",\"type\":\"bytes[]\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"_u\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"_i\",\"type\":\"int256\"},{\"indexed\":false,\"name\":\"_b\",\"type\":\"bool\"},{\"indexed\":false,\"name\":\"_addr\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"_bs32\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"_s\",\"type\":\"string\"},{\"indexed\":false,\"name\":\"_bs\",\"type\":\"bytes\"}],\"name\":\"TestEventSimpleParams\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"_u\",\"type\":\"uint256[]\"},{\"indexed\":false,\"name\":\"_i\",\"type\":\"int256[]\"},{\"indexed\":false,\"name\":\"_b\",\"type\":\"bool[]\"},{\"indexed\":false,\"name\":\"_addr\",\"type\":\"address[]\"},{\"indexed\":false,\"name\":\"_bs32\",\"type\":\"bytes32[]\"},{\"indexed\":false,\"name\":\"_s\",\"type\":\"string[]\"},{\"indexed\":false,\"name\":\"_bs\",\"type\":\"bytes[]\"}],\"name\":\"TestEventDArrayParams\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"_u\",\"type\":\"uint256[4]\"},{\"indexed\":false,\"name\":\"_i\",\"type\":\"int256[4]\"},{\"indexed\":false,\"name\":\"_b\",\"type\":\"bool[4]\"},{\"indexed\":false,\"name\":\"_addr\",\"type\":\"address[4]\"},{\"indexed\":false,\"name\":\"_bs32\",\"type\":\"bytes32[4]\"},{\"indexed\":false,\"name\":\"_s\",\"type\":\"string[4]\"},{\"indexed\":false,\"name\":\"_bs\",\"type\":\"bytes[4]\"}],\"name\":\"TestEventSArrayParams\",\"type\":\"event\"}]", "");
    List<TypeReference<?>> eventTypeList = Arrays.asList(new TypeReference<DynamicArray<Uint256>>() {
    }, new TypeReference<DynamicArray<Int256>>() {
    }, new TypeReference<DynamicArray<Bool>>() {
    }, new TypeReference<DynamicArray<Address>>() {
    }, new TypeReference<DynamicArray<Bytes32>>() {
    }, new TypeReference<DynamicArray<Utf8String>>() {
    }, new TypeReference<DynamicArray<DynamicBytes>>() {
    });
    Event event = new Event("TestEventDArrayParams", eventTypeList);
    List<Type> eventDataParams1 = Arrays.asList(new DynamicArray<Uint256>(new Uint256(11111), new Uint256(22222), new Uint256(33333)), new DynamicArray<Int256>(new Int256(-1111111), new Int256(-3333333), new Int256(-2222222)), new DynamicArray<Bool>(new Bool(false), new Bool(true), new Bool(false)), new DynamicArray<Address>(new Address("0x692a70d2e424a56d2c6c27aa97d1a86395877b3a"), new Address("0x692a70d2e424a56d2c6c27aa97d1a86395877b3a")), new DynamicArray<Bytes32>(new Bytes32("abcdefghiabcdefghiabcdefghiabhji".getBytes()), new Bytes32("abcdefghiabcdefghiabcdefghiabhji".getBytes())), new DynamicArray<Utf8String>(new Utf8String(""), new Utf8String("章鱼小丸子ljjkl;adjsfkljlkjl"), new Utf8String("章鱼小丸子ljjkl;adjsfkljlkjl")), new DynamicArray<DynamicBytes>(new DynamicBytes("".getBytes()), new DynamicBytes("sadfljkjkljkl".getBytes()), new DynamicBytes("章鱼小丸子ljjkl;adjsfkljlkjl".getBytes())));
    List<Type> eventDataParams2 = Arrays.asList(new DynamicArray<Uint256>(new Uint256(0), new Uint256(0), new Uint256(0)), new DynamicArray<Int256>(new Int256(0), new Int256(0), new Int256(0)), new DynamicArray<Bool>(new Bool(false), new Bool(true), new Bool(false)), new DynamicArray<Address>(new Address("0x0"), new Address("0x0")), new DynamicArray<Bytes32>(new Bytes32("                                ".getBytes()), new Bytes32("                                ".getBytes())), new DynamicArray<Utf8String>(new Utf8String(""), new Utf8String(""), new Utf8String("")), new DynamicArray<DynamicBytes>(new DynamicBytes("".getBytes()), new DynamicBytes("".getBytes()), new DynamicBytes("".getBytes())));
    List<Type> eventDataParams3 = Arrays.asList(new DynamicArray<Uint256>(new Uint256(0), new Uint256(0), new Uint256(0), new Uint256(11111), new Uint256(22222), new Uint256(33333)), new DynamicArray<Int256>(new Int256(0), new Int256(0), new Int256(0), new Int256(-1111111), new Int256(-3333333), new Int256(-2222222)), new DynamicArray<Bool>(new Bool(false), new Bool(true), new Bool(false), new Bool(false)), new DynamicArray<Address>(new Address("0x0"), new Address("0x0"), new Address("0x692a70d2e424a56d2c6c27aa97d1a86395877b3a"), new Address("0x692a70d2e424a56d2c6c27aa97d1a86395877b3a")), new DynamicArray<Bytes32>(new Bytes32("abcdefghiabcdefghiabcdefghiabhji".getBytes()), new Bytes32("abcdefghiabcdefghiabcdefghiabhji".getBytes()), new Bytes32("                                ".getBytes()), new Bytes32("                                ".getBytes())), new DynamicArray<Utf8String>(new Utf8String(""), new Utf8String("章鱼小丸子ljjkl;adjsfkljlkjl"), new Utf8String("章鱼小丸子ljjkl;adjsfkljlkjl"), new Utf8String(""), new Utf8String(""), new Utf8String("")), new DynamicArray<DynamicBytes>(new DynamicBytes("".getBytes()), new DynamicBytes("sadfljkjkljkl".getBytes()), new DynamicBytes("章鱼小丸子ljjkl;adjsfkljlkjl".getBytes()), new DynamicBytes("".getBytes()), new DynamicBytes("".getBytes()), new DynamicBytes("".getBytes())));
    List<String> topics = new ArrayList<String>();
    topics.add(EventEncoder.encode(event));
    Log log1 = new Log();
    log1.setData(FunctionEncoder.encodeConstructor(eventDataParams1));
    log1.setTopics(topics);
    Log log2 = new Log();
    log2.setData(FunctionEncoder.encodeConstructor(eventDataParams2));
    log2.setTopics(topics);
    Log log3 = new Log();
    log3.setData(FunctionEncoder.encodeConstructor(eventDataParams3));
    log3.setTopics(topics);
    AbiDefinition abiDefinition = null;
    Tuple2<AbiDefinition, List<EventResultEntity>> tupleResult1 = decode.decodeEventReturnObject(log1);
    assertThat(transEntitytoType0(tupleResult1.getValue2()), is(eventDataParams1));
    abiDefinition = tupleResult1.getValue1();
    Tuple2<AbiDefinition, List<EventResultEntity>> tupleResult2 = decode.decodeEventReturnObject(log2);
    assertThat(transEntitytoType0(tupleResult2.getValue2()), is(eventDataParams2));
    Tuple2<AbiDefinition, List<EventResultEntity>> tupleResult3 = decode.decodeEventReturnObject(log3);
    assertThat(transEntitytoType0(tupleResult3.getValue2()), is(eventDataParams3));
    List<Log> logList1 = new ArrayList<Log>();
    logList1.add(log1);
    Map<String, List<List<EventResultEntity>>> mapResult1 = decode.decodeEventReturnObject(logList1);
    assertThat(transEntitytoType0(mapResult1.get(decodeMethodSign(abiDefinition)).get(0)), is(eventDataParams1));
    // System.out.println("111 => " + decode.decodeEventReturnJson(logList1));
    assertThat(decode.decodeEventReturnJson(logList1), is("{\"TestEventDArrayParams(uint256[],int256[],bool[],address[],bytes32[],string[],bytes[])\":[[{\"name\":\"_u\",\"type\":\"uint256[]\",\"data\":[11111,22222,33333],\"indexed\":false},{\"name\":\"_i\",\"type\":\"int256[]\",\"data\":[-1111111,-3333333,-2222222],\"indexed\":false},{\"name\":\"_b\",\"type\":\"bool[]\",\"data\":[false,true,false],\"indexed\":false},{\"name\":\"_addr\",\"type\":\"address[]\",\"data\":[\"0x692a70d2e424a56d2c6c27aa97d1a86395877b3a\",\"0x692a70d2e424a56d2c6c27aa97d1a86395877b3a\"],\"indexed\":false},{\"name\":\"_bs32\",\"type\":\"bytes32[]\",\"data\":[\"abcdefghiabcdefghiabcdefghiabhji\",\"abcdefghiabcdefghiabcdefghiabhji\"],\"indexed\":false},{\"name\":\"_s\",\"type\":\"string[]\",\"data\":[\"\",\"章鱼小丸子ljjkl;adjsfkljlkjl\",\"章鱼小丸子ljjkl;adjsfkljlkjl\"],\"indexed\":false},{\"name\":\"_bs\",\"type\":\"bytes[]\",\"data\":[\"\",\"sadfljkjkljkl\",\"章鱼小丸子ljjkl;adjsfkljlkjl\"],\"indexed\":false}]]}"));
    List<Log> logList2 = new ArrayList<Log>();
    logList2.add(log1);
    logList2.add(log2);
    Map<String, List<List<EventResultEntity>>> mapResult2 = decode.decodeEventReturnObject(logList2);
    assertThat(transEntitytoType0(mapResult2.get(decodeMethodSign(abiDefinition)).get(0)), is(eventDataParams1));
    assertThat(transEntitytoType0(mapResult2.get(decodeMethodSign(abiDefinition)).get(1)), is(eventDataParams2));
    // System.out.println("222 => " + decode.decodeEventReturnJson(logList2));
    assertThat(decode.decodeEventReturnJson(logList2), is("{\"TestEventDArrayParams(uint256[],int256[],bool[],address[],bytes32[],string[],bytes[])\":[[{\"name\":\"_u\",\"type\":\"uint256[]\",\"data\":[11111,22222,33333],\"indexed\":false},{\"name\":\"_i\",\"type\":\"int256[]\",\"data\":[-1111111,-3333333,-2222222],\"indexed\":false},{\"name\":\"_b\",\"type\":\"bool[]\",\"data\":[false,true,false],\"indexed\":false},{\"name\":\"_addr\",\"type\":\"address[]\",\"data\":[\"0x692a70d2e424a56d2c6c27aa97d1a86395877b3a\",\"0x692a70d2e424a56d2c6c27aa97d1a86395877b3a\"],\"indexed\":false},{\"name\":\"_bs32\",\"type\":\"bytes32[]\",\"data\":[\"abcdefghiabcdefghiabcdefghiabhji\",\"abcdefghiabcdefghiabcdefghiabhji\"],\"indexed\":false},{\"name\":\"_s\",\"type\":\"string[]\",\"data\":[\"\",\"章鱼小丸子ljjkl;adjsfkljlkjl\",\"章鱼小丸子ljjkl;adjsfkljlkjl\"],\"indexed\":false},{\"name\":\"_bs\",\"type\":\"bytes[]\",\"data\":[\"\",\"sadfljkjkljkl\",\"章鱼小丸子ljjkl;adjsfkljlkjl\"],\"indexed\":false}],[{\"name\":\"_u\",\"type\":\"uint256[]\",\"data\":[0,0,0],\"indexed\":false},{\"name\":\"_i\",\"type\":\"int256[]\",\"data\":[0,0,0],\"indexed\":false},{\"name\":\"_b\",\"type\":\"bool[]\",\"data\":[false,true,false],\"indexed\":false},{\"name\":\"_addr\",\"type\":\"address[]\",\"data\":[\"0x0000000000000000000000000000000000000000\",\"0x0000000000000000000000000000000000000000\"],\"indexed\":false},{\"name\":\"_bs32\",\"type\":\"bytes32[]\",\"data\":[\"\",\"\"],\"indexed\":false},{\"name\":\"_s\",\"type\":\"string[]\",\"data\":[\"\",\"\",\"\"],\"indexed\":false},{\"name\":\"_bs\",\"type\":\"bytes[]\",\"data\":[\"\",\"\",\"\"],\"indexed\":false}]]}"));
    List<Log> logList3 = new ArrayList<Log>();
    logList3.add(log1);
    logList3.add(log2);
    logList3.add(log3);
    Map<String, List<List<EventResultEntity>>> mapResult3 = decode.decodeEventReturnObject(logList3);
    assertThat(transEntitytoType0(mapResult3.get(decodeMethodSign(abiDefinition)).get(0)), is(eventDataParams1));
    assertThat(transEntitytoType0(mapResult3.get(decodeMethodSign(abiDefinition)).get(1)), is(eventDataParams2));
    assertThat(transEntitytoType0(mapResult3.get(decodeMethodSign(abiDefinition)).get(2)), is(eventDataParams3));
    // System.out.println("333 => " + decode.decodeEventReturnJson(logList3));
    assertThat(decode.decodeEventReturnJson(logList3), is("{\"TestEventDArrayParams(uint256[],int256[],bool[],address[],bytes32[],string[],bytes[])\":[[{\"name\":\"_u\",\"type\":\"uint256[]\",\"data\":[11111,22222,33333],\"indexed\":false},{\"name\":\"_i\",\"type\":\"int256[]\",\"data\":[-1111111,-3333333,-2222222],\"indexed\":false},{\"name\":\"_b\",\"type\":\"bool[]\",\"data\":[false,true,false],\"indexed\":false},{\"name\":\"_addr\",\"type\":\"address[]\",\"data\":[\"0x692a70d2e424a56d2c6c27aa97d1a86395877b3a\",\"0x692a70d2e424a56d2c6c27aa97d1a86395877b3a\"],\"indexed\":false},{\"name\":\"_bs32\",\"type\":\"bytes32[]\",\"data\":[\"abcdefghiabcdefghiabcdefghiabhji\",\"abcdefghiabcdefghiabcdefghiabhji\"],\"indexed\":false},{\"name\":\"_s\",\"type\":\"string[]\",\"data\":[\"\",\"章鱼小丸子ljjkl;adjsfkljlkjl\",\"章鱼小丸子ljjkl;adjsfkljlkjl\"],\"indexed\":false},{\"name\":\"_bs\",\"type\":\"bytes[]\",\"data\":[\"\",\"sadfljkjkljkl\",\"章鱼小丸子ljjkl;adjsfkljlkjl\"],\"indexed\":false}],[{\"name\":\"_u\",\"type\":\"uint256[]\",\"data\":[0,0,0],\"indexed\":false},{\"name\":\"_i\",\"type\":\"int256[]\",\"data\":[0,0,0],\"indexed\":false},{\"name\":\"_b\",\"type\":\"bool[]\",\"data\":[false,true,false],\"indexed\":false},{\"name\":\"_addr\",\"type\":\"address[]\",\"data\":[\"0x0000000000000000000000000000000000000000\",\"0x0000000000000000000000000000000000000000\"],\"indexed\":false},{\"name\":\"_bs32\",\"type\":\"bytes32[]\",\"data\":[\"\",\"\"],\"indexed\":false},{\"name\":\"_s\",\"type\":\"string[]\",\"data\":[\"\",\"\",\"\"],\"indexed\":false},{\"name\":\"_bs\",\"type\":\"bytes[]\",\"data\":[\"\",\"\",\"\"],\"indexed\":false}],[{\"name\":\"_u\",\"type\":\"uint256[]\",\"data\":[0,0,0,11111,22222,33333],\"indexed\":false},{\"name\":\"_i\",\"type\":\"int256[]\",\"data\":[0,0,0,-1111111,-3333333,-2222222],\"indexed\":false},{\"name\":\"_b\",\"type\":\"bool[]\",\"data\":[false,true,false,false],\"indexed\":false},{\"name\":\"_addr\",\"type\":\"address[]\",\"data\":[\"0x0000000000000000000000000000000000000000\",\"0x0000000000000000000000000000000000000000\",\"0x692a70d2e424a56d2c6c27aa97d1a86395877b3a\",\"0x692a70d2e424a56d2c6c27aa97d1a86395877b3a\"],\"indexed\":false},{\"name\":\"_bs32\",\"type\":\"bytes32[]\",\"data\":[\"abcdefghiabcdefghiabcdefghiabhji\",\"abcdefghiabcdefghiabcdefghiabhji\",\"\",\"\"],\"indexed\":false},{\"name\":\"_s\",\"type\":\"string[]\",\"data\":[\"\",\"章鱼小丸子ljjkl;adjsfkljlkjl\",\"章鱼小丸子ljjkl;adjsfkljlkjl\",\"\",\"\",\"\"],\"indexed\":false},{\"name\":\"_bs\",\"type\":\"bytes[]\",\"data\":[\"\",\"sadfljkjkljkl\",\"章鱼小丸子ljjkl;adjsfkljlkjl\",\"\",\"\",\"\"],\"indexed\":false}]]}"));
}
Also used : Address(org.fisco.bcos.web3j.abi.datatypes.Address) ArrayList(java.util.ArrayList) Utf8String(org.fisco.bcos.web3j.abi.datatypes.Utf8String) Bytes32(org.fisco.bcos.web3j.abi.datatypes.generated.Bytes32) DynamicBytes(org.fisco.bcos.web3j.abi.datatypes.DynamicBytes) Bool(org.fisco.bcos.web3j.abi.datatypes.Bool) AbiDefinition(org.fisco.bcos.web3j.protocol.core.methods.response.AbiDefinition) ArrayList(java.util.ArrayList) List(java.util.List) TypeReference(org.fisco.bcos.web3j.abi.TypeReference) Log(org.fisco.bcos.web3j.protocol.core.methods.response.Log) Int256(org.fisco.bcos.web3j.abi.datatypes.generated.Int256) Utf8String(org.fisco.bcos.web3j.abi.datatypes.Utf8String) Type(org.fisco.bcos.web3j.abi.datatypes.Type) NamedType(org.fisco.bcos.web3j.protocol.core.methods.response.AbiDefinition.NamedType) DynamicArray(org.fisco.bcos.web3j.abi.datatypes.DynamicArray) Event(org.fisco.bcos.web3j.abi.datatypes.Event) Uint256(org.fisco.bcos.web3j.abi.datatypes.generated.Uint256) Test(org.junit.Test)

Example 9 with DynamicArray

use of org.fisco.bcos.web3j.abi.datatypes.DynamicArray in project web3sdk by FISCO-BCOS.

the class EventEncoderTest method testEventbuildMethodSignature0.

@Test
public void testEventbuildMethodSignature0() {
    Event event = new Event("g", Arrays.<TypeReference<?>>asList(new TypeReference<DynamicArray<DynamicArray<Uint256>>>() {
    }, new TypeReference<DynamicArray<Utf8String>>() {
    }));
    assertThat(EventEncoder.buildMethodSignature(event.getName(), event.getParameters()), is("g(uint256[][],string[])"));
    assertThat(EventEncoder.encode(event), is("0x2289b18cd8c6e198648b35d3bcf2ff8668984543f01927711c161bcf7b5e1bba"));
    assertThat(EventEncoder.buildEventSignature("g(uint256[][],string[])"), is("0x2289b18cd8c6e198648b35d3bcf2ff8668984543f01927711c161bcf7b5e1bba"));
}
Also used : Utf8String(org.fisco.bcos.web3j.abi.datatypes.Utf8String) DynamicArray(org.fisco.bcos.web3j.abi.datatypes.DynamicArray) Event(org.fisco.bcos.web3j.abi.datatypes.Event) Test(org.junit.Test)

Example 10 with DynamicArray

use of org.fisco.bcos.web3j.abi.datatypes.DynamicArray in project web3sdk by FISCO-BCOS.

the class TypeTest method dynamicOffsetTest.

@Test
public void dynamicOffsetTest() {
    // bool
    assertThat(new Bool(true).offset(), is(1));
    // bool
    assertThat(new Bool(false).offset(), is(1));
    assertThat(new Address("0xb87213121fb89cbd8b877cb1bb3ff84dd2869cfa").offset(), // address
    is(1));
    // string
    assertThat(new Utf8String("").offset(), is(1));
    // string
    assertThat(new Utf8String("abcdef").offset(), is(1));
    // bytes10
    assertThat(new Bytes10("0123456789".getBytes()).offset(), is(1));
    // bytes3
    assertThat(new Bytes3("abc".getBytes()).offset(), is(1));
    // bytes1
    assertThat(new Bytes1("a".getBytes()).offset(), is(1));
    // uint256
    assertThat(new Uint256(1).offset(), is(1));
    // int256
    assertThat(new Int256(1).offset(), is(1));
    // bytes
    assertThat(new DynamicBytes("".getBytes()).offset(), is(1));
    // bytes
    assertThat(new DynamicBytes("abc".getBytes()).offset(), is(1));
    // bool[1]
    assertThat(new StaticArray1<Bool>(new Bool(true)).offset(), is(1));
    assertThat(new StaticArray3<Bool>(new Bool(true), new Bool(true), new Bool(true)).offset(), // bool[3]
    is(3));
    assertThat(new DynamicArray<Bool>(new Bool(true), new Bool(true), new Bool(true), new Bool(true)).offset(), // bool[]
    is(1));
    assertThat(new DynamicArray<DynamicArray<Bool>>(new DynamicArray<Bool>(new Bool(true), new Bool(true), new Bool(true))).offset(), // bool[][]
    is(1));
    assertThat(new StaticArray2<DynamicArray<Bool>>(new DynamicArray<Bool>(new Bool(true)), new DynamicArray<Bool>(new Bool(true))).offset(), // bool[][2]
    is(1));
    assertThat(new DynamicArray<StaticArray2<Bool>>(new StaticArray2<Bool>(new Bool(true), new Bool(true)), new StaticArray2<Bool>(new Bool(true), new Bool(true))).offset(), // bool[1][]
    is(1));
    assertThat(new StaticArray2<StaticArray2<Bool>>(new StaticArray2<Bool>(new Bool(true), new Bool(true)), new StaticArray2<Bool>(new Bool(true), new Bool(true))).offset(), // bool[2][2]
    is(4));
    // uint256[1]
    assertThat(new StaticArray1<Uint256>(new Uint256(1)).offset(), is(1));
    assertThat(new DynamicArray<Uint256>(new Uint256(1), new Uint256(1)).offset(), // uint256[]
    is(1));
    assertThat(new DynamicArray<DynamicArray<Uint256>>(new DynamicArray<Uint256>(new Uint256(1), new Uint256(1)), new DynamicArray<Uint256>(new Uint256(1), new Uint256(1))).offset(), // uint256[][]
    is(1));
    assertThat(new StaticArray2<DynamicArray<Uint256>>(new DynamicArray<Uint256>(new Uint256(1)), new DynamicArray<Uint256>(new Uint256(1))).offset(), // uint256[][2]
    is(1));
    assertThat(new DynamicArray<StaticArray2<Uint256>>(new StaticArray2<Uint256>(new Uint256(1), new Uint256(1))).offset(), // uint256[2][]
    is(1));
    assertThat(new StaticArray2<StaticArray2<Uint256>>(new StaticArray2<Uint256>(new Uint256(1), new Uint256(1)), new StaticArray2<Uint256>(new Uint256(1), new Uint256(1))).offset(), // uint256[2][2]
    is(4));
    // int256[1]
    assertThat(new StaticArray1<Int256>(new Int256(1)).offset(), is(1));
    // int256[]
    assertThat(new DynamicArray<Int256>(new Int256(1)).offset(), is(1));
    assertThat(new DynamicArray<DynamicArray<Int256>>(new DynamicArray<Int256>(new Int256(1), new Int256(1)), new DynamicArray<Int256>(new Int256(1), new Int256(1))).offset(), // int256[][]
    is(1));
    assertThat(new StaticArray2<DynamicArray<Int256>>(new DynamicArray<Int256>(new Int256(1)), new DynamicArray<Int256>(new Int256(1))).offset(), // int256[][2]
    is(1));
    assertThat(new DynamicArray<StaticArray2<Int256>>(new StaticArray2<Int256>(new Int256(1), new Int256(1))).offset(), // int256[2][]
    is(1));
    assertThat(new StaticArray2<StaticArray2<Int256>>(new StaticArray2<Int256>(new Int256(1), new Int256(1)), new StaticArray2<Int256>(new Int256(1), new Int256(1))).offset(), // int256[2][2]
    is(4));
    assertThat(new StaticArray1<Address>(new Address("0xb87213121fb89cbd8b877cb1bb3ff84dd2869cfa")).offset(), // address[1]
    is(1));
    assertThat(new DynamicArray<Address>(new Address("0xb87213121fb89cbd8b877cb1bb3ff84dd2869cfa")).offset(), // address[]
    is(1));
    assertThat(new DynamicArray<DynamicArray<Address>>(new DynamicArray<Address>(new Address("0xb87213121fb89cbd8b877cb1bb3ff84dd2869cfa"), new Address("0xb87213121fb89cbd8b877cb1bb3ff84dd2869cfa")), new DynamicArray<Address>(new Address("0xb87213121fb89cbd8b877cb1bb3ff84dd2869cfa"), new Address("0xb87213121fb89cbd8b877cb1bb3ff84dd2869cfa"))).offset(), // address[][]
    is(1));
    assertThat(new StaticArray2<DynamicArray<Address>>(new DynamicArray<Address>(new Address("0xb87213121fb89cbd8b877cb1bb3ff84dd2869cfa")), new DynamicArray<Address>(new Address("0xb87213121fb89cbd8b877cb1bb3ff84dd2869cfa"))).offset(), // address[][2]
    is(1));
    assertThat(new DynamicArray<StaticArray2<Address>>(new StaticArray2<Address>(new Address("0xb87213121fb89cbd8b877cb1bb3ff84dd2869cfa"), new Address("0xb87213121fb89cbd8b877cb1bb3ff84dd2869cfa"))).offset(), // address[2][]
    is(1));
    assertThat(new StaticArray2<StaticArray2<Address>>(new StaticArray2<Address>(new Address("0xb87213121fb89cbd8b877cb1bb3ff84dd2869cfa"), new Address("0xb87213121fb89cbd8b877cb1bb3ff84dd2869cfa")), new StaticArray2<Address>(new Address("0xb87213121fb89cbd8b877cb1bb3ff84dd2869cfa"), new Address("0xb87213121fb89cbd8b877cb1bb3ff84dd2869cfa"))).offset(), // address[2][2]
    is(4));
    // string[1]
    assertThat(new StaticArray1<Utf8String>(new Utf8String("")).offset(), is(1));
    // string[]
    assertThat(new DynamicArray<Utf8String>(new Utf8String("")).offset(), is(1));
    assertThat(new DynamicArray<DynamicArray<Utf8String>>(new DynamicArray<Utf8String>(new Utf8String("0xb87213121fb89cbd8b877cb1bb3ff84dd2869cfa"))).offset(), // string[][]
    is(1));
    assertThat(new StaticArray2<DynamicArray<Utf8String>>(new DynamicArray<Utf8String>(new Utf8String("0xb87213121fb89cbd8b877cb1bb3ff84dd2869cfa")), new DynamicArray<Utf8String>(new Utf8String("0xb87213121fb89cbd8b877cb1bb3ff84dd2869cfa"))).offset(), // string[][2]
    is(1));
    assertThat(new DynamicArray<StaticArray2<Utf8String>>(new StaticArray2<Utf8String>(new Utf8String("0xb87213121fb89cbd8b877cb1bb3ff84dd2869cfa"), new Utf8String("0xb87213121fb89cbd8b877cb1bb3ff84dd2869cfa"))).offset(), // string[2][]
    is(1));
    assertThat(new StaticArray2<StaticArray2<Utf8String>>(new StaticArray2<Utf8String>(new Utf8String("0xb87213121fb89cbd8b877cb1bb3ff84dd2869cfa"), new Utf8String("0xb87213121fb89cbd8b877cb1bb3ff84dd2869cfa")), new StaticArray2<Utf8String>(new Utf8String("0xb87213121fb89cbd8b877cb1bb3ff84dd2869cfa"), new Utf8String("0xb87213121fb89cbd8b877cb1bb3ff84dd2869cfa"))).offset(), // string[2][2]
    is(1));
    assertThat(new StaticArray1<DynamicBytes>(new DynamicBytes("aa".getBytes())).offset(), // bytes[1]
    is(1));
    assertThat(new DynamicArray<DynamicBytes>(new DynamicBytes("".getBytes())).offset(), // bytes[]
    is(1));
    assertThat(new DynamicArray<DynamicArray<DynamicBytes>>(new DynamicArray<DynamicBytes>(new DynamicBytes("0xb87213121fb89cbd8b877cb1bb3ff84dd2869cfa".getBytes()))).offset(), // bytes[][]
    is(1));
    assertThat(new StaticArray2<DynamicArray<DynamicBytes>>(new DynamicArray<DynamicBytes>(new DynamicBytes("0xb87213121fb89cbd8b877cb1bb3ff84dd2869cfa".getBytes()), new DynamicBytes("0xb87213121fb89cbd8b877cb1bb3ff84dd2869cfa".getBytes())), new DynamicArray<DynamicBytes>(new DynamicBytes("0xb87213121fb89cbd8b877cb1bb3ff84dd2869cfa".getBytes()), new DynamicBytes("0xb87213121fb89cbd8b877cb1bb3ff84dd2869cfa".getBytes()))).offset(), // bytes[][2]
    is(1));
    assertThat(new DynamicArray<StaticArray2<DynamicBytes>>(new StaticArray2<DynamicBytes>(new DynamicBytes("0xb87213121fb89cbd8b877cb1bb3ff84dd2869cfa".getBytes()), new DynamicBytes("0xb87213121fb89cbd8b877cb1bb3ff84dd2869cfa".getBytes())), new StaticArray2<DynamicBytes>(new DynamicBytes("0xb87213121fb89cbd8b877cb1bb3ff84dd2869cfa".getBytes()), new DynamicBytes("0xb87213121fb89cbd8b877cb1bb3ff84dd2869cfa".getBytes()))).offset(), // bytes21][]
    is(1));
    assertThat(new StaticArray2<StaticArray2<DynamicBytes>>(new StaticArray2<DynamicBytes>(new DynamicBytes("0xb87213121fb89cbd8b877cb1bb3ff84dd2869cfa".getBytes()), new DynamicBytes("0xb87213121fb89cbd8b877cb1bb3ff84dd2869cfa".getBytes())), new StaticArray2<DynamicBytes>(new DynamicBytes("0xb87213121fb89cbd8b877cb1bb3ff84dd2869cfa".getBytes()), new DynamicBytes("0xb87213121fb89cbd8b877cb1bb3ff84dd2869cfa".getBytes()))).offset(), // bytes[2][2]
    is(1));
}
Also used : Address(org.fisco.bcos.web3j.abi.datatypes.Address) Bytes10(org.fisco.bcos.web3j.abi.datatypes.generated.Bytes10) DynamicBytes(org.fisco.bcos.web3j.abi.datatypes.DynamicBytes) Bool(org.fisco.bcos.web3j.abi.datatypes.Bool) Utf8String(org.fisco.bcos.web3j.abi.datatypes.Utf8String) Int256(org.fisco.bcos.web3j.abi.datatypes.generated.Int256) StaticArray3(org.fisco.bcos.web3j.abi.datatypes.generated.StaticArray3) DynamicArray(org.fisco.bcos.web3j.abi.datatypes.DynamicArray) Bytes3(org.fisco.bcos.web3j.abi.datatypes.generated.Bytes3) Bytes1(org.fisco.bcos.web3j.abi.datatypes.generated.Bytes1) Uint256(org.fisco.bcos.web3j.abi.datatypes.generated.Uint256) StaticArray1(org.fisco.bcos.web3j.abi.datatypes.generated.StaticArray1) StaticArray2(org.fisco.bcos.web3j.abi.datatypes.generated.StaticArray2) Test(org.junit.Test)

Aggregations

DynamicArray (org.fisco.bcos.web3j.abi.datatypes.DynamicArray)11 Utf8String (org.fisco.bcos.web3j.abi.datatypes.Utf8String)10 Test (org.junit.Test)8 Bool (org.fisco.bcos.web3j.abi.datatypes.Bool)7 DynamicBytes (org.fisco.bcos.web3j.abi.datatypes.DynamicBytes)7 Int256 (org.fisco.bcos.web3j.abi.datatypes.generated.Int256)7 Address (org.fisco.bcos.web3j.abi.datatypes.Address)6 Event (org.fisco.bcos.web3j.abi.datatypes.Event)6 Uint256 (org.fisco.bcos.web3j.abi.datatypes.generated.Uint256)6 ArrayList (java.util.ArrayList)5 TypeReference (org.fisco.bcos.web3j.abi.TypeReference)5 Type (org.fisco.bcos.web3j.abi.datatypes.Type)5 List (java.util.List)4 Bytes32 (org.fisco.bcos.web3j.abi.datatypes.generated.Bytes32)4 NamedType (org.fisco.bcos.web3j.protocol.core.methods.response.AbiDefinition.NamedType)3 Log (org.fisco.bcos.web3j.protocol.core.methods.response.Log)3 BigInteger (java.math.BigInteger)2 StaticArray (org.fisco.bcos.web3j.abi.datatypes.StaticArray)2 Bytes1 (org.fisco.bcos.web3j.abi.datatypes.generated.Bytes1)2 Bytes10 (org.fisco.bcos.web3j.abi.datatypes.generated.Bytes10)2