Class FunctionReturnDecoder

    • Constructor Detail

      • FunctionReturnDecoder

        public FunctionReturnDecoder()
    • Method Detail

      • decode

        public static java.util.List<Type> decode​(java.lang.String rawInput,
                                                  java.util.List<TypeReference<Type>> outputParameters)
        Decode ABI encoded return values from smart contract function call.
        Parameters:
        rawInput - ABI encoded input
        outputParameters - list of return types as TypeReference
        Returns:
        List of values returned by function, Collections.emptyList() if invalid response
      • decodeIndexedValue

        public static <T extends TypeType decodeIndexedValue​(java.lang.String rawInput,
                                                               TypeReference<T> typeReference)
        Decodes an indexed parameter associated with an event. Indexed parameters are individually encoded, unlike non-indexed parameters which are encoded as per ABI-encoded function parameters and return values.

        If any of the following types are indexed, the Keccak-256 hashes of the values are returned instead. These are returned as a bytes32 value.

        • Arrays
        • Strings
        • Bytes

        See the Solidity documentation for further information.

        Type Parameters:
        T - type of TypeReference
        Parameters:
        rawInput - ABI encoded input
        typeReference - of expected result type
        Returns:
        the decode value
      • decodeFunctionResult

        protected abstract java.util.List<Type> decodeFunctionResult​(java.lang.String rawInput,
                                                                     java.util.List<TypeReference<Type>> outputParameters)
      • decodeEventParameter

        protected abstract <T extends TypeType decodeEventParameter​(java.lang.String rawInput,
                                                                      TypeReference<T> typeReference)