Search in sources :

Example 1 with StaticArray

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

the class Ok method eventOrderLogEventObservable.

public Observable<EventOrderLogEventResponse> eventOrderLogEventObservable(DefaultBlockParameter startBlock, DefaultBlockParameter endBlock) {
    final Event event = new Event("eventOrderLog", Arrays.<TypeReference<?>>asList(), Arrays.<TypeReference<?>>asList(new TypeReference<StaticArray<Bytes32>>() {
    }, new TypeReference<StaticArray<Int256>>() {
    }, new TypeReference<Int256>() {
    }));
    EthFilter filter = new EthFilter(startBlock, endBlock, getContractAddress());
    filter.addSingleTopic(EventEncoder.encode(event));
    return web3j.ethLogObservable(filter).map(new Func1<Log, EventOrderLogEventResponse>() {

        @Override
        public EventOrderLogEventResponse call(Log log) {
            EventValues eventValues = extractEventParameters(event, log);
            EventOrderLogEventResponse typedResponse = new EventOrderLogEventResponse();
            typedResponse.msg = (StaticArray<Bytes32>) eventValues.getNonIndexedValues().get(0);
            typedResponse.msg2 = (StaticArray<Int256>) eventValues.getNonIndexedValues().get(1);
            typedResponse.hello = (Int256) eventValues.getNonIndexedValues().get(2);
            return typedResponse;
        }
    });
}
Also used : EventValues(org.bcos.web3j.abi.EventValues) StaticArray(org.bcos.web3j.abi.datatypes.StaticArray) Int256(org.bcos.web3j.abi.datatypes.generated.Int256) EthFilter(org.bcos.web3j.protocol.core.methods.request.EthFilter) Log(org.bcos.web3j.protocol.core.methods.response.Log) Event(org.bcos.web3j.abi.datatypes.Event) TypeReference(org.bcos.web3j.abi.TypeReference) Bytes32(org.bcos.web3j.abi.datatypes.generated.Bytes32)

Aggregations

EventValues (org.bcos.web3j.abi.EventValues)1 TypeReference (org.bcos.web3j.abi.TypeReference)1 Event (org.bcos.web3j.abi.datatypes.Event)1 StaticArray (org.bcos.web3j.abi.datatypes.StaticArray)1 Bytes32 (org.bcos.web3j.abi.datatypes.generated.Bytes32)1 Int256 (org.bcos.web3j.abi.datatypes.generated.Int256)1 EthFilter (org.bcos.web3j.protocol.core.methods.request.EthFilter)1 Log (org.bcos.web3j.protocol.core.methods.response.Log)1