Class EthereumTransactionBody

java.lang.Object
com.google.protobuf.AbstractMessageLite<EthereumTransactionBody,EthereumTransactionBody.Builder>
com.google.protobuf.GeneratedMessageLite<EthereumTransactionBody,EthereumTransactionBody.Builder>
com.hedera.hashgraph.sdk.proto.EthereumTransactionBody
All Implemented Interfaces:
com.google.protobuf.MessageLite, com.google.protobuf.MessageLiteOrBuilder, EthereumTransactionBodyOrBuilder

@Generated public final class EthereumTransactionBody extends com.google.protobuf.GeneratedMessageLite<EthereumTransactionBody,EthereumTransactionBody.Builder> implements EthereumTransactionBodyOrBuilder
 *
 A transaction in Ethereum format.<br/>
 Make an Ethereum transaction "call" with all data in Ethereum formats,
 including the contract alias. Call data may be in the transaction, or
 stored within an Hedera File.

 The caller MAY offer additional gas above what is offered in the call data,
 but MAY be charged up to 80% of that value if the amount required is less
 than this "floor" amount.

 ### Block Stream Effects
 An `EthereumOutput` message SHALL be emitted for each transaction.
 
Protobuf type proto.EthereumTransactionBody
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static final class 
    * A transaction in Ethereum format.<br/> Make an Ethereum transaction "call" with all data in Ethereum formats, including the contract alias.

    Nested classes/interfaces inherited from class com.google.protobuf.GeneratedMessageLite

    com.google.protobuf.GeneratedMessageLite.DefaultInstanceBasedParser<T extends com.google.protobuf.GeneratedMessageLite<T,?>>, com.google.protobuf.GeneratedMessageLite.ExtendableBuilder<MessageType extends com.google.protobuf.GeneratedMessageLite.ExtendableMessage<MessageType,BuilderType>,BuilderType extends com.google.protobuf.GeneratedMessageLite.ExtendableBuilder<MessageType,BuilderType>>, com.google.protobuf.GeneratedMessageLite.ExtendableMessage<MessageType extends com.google.protobuf.GeneratedMessageLite.ExtendableMessage<MessageType,BuilderType>,BuilderType extends com.google.protobuf.GeneratedMessageLite.ExtendableBuilder<MessageType,BuilderType>>, com.google.protobuf.GeneratedMessageLite.ExtendableMessageOrBuilder<MessageType extends com.google.protobuf.GeneratedMessageLite.ExtendableMessage<MessageType,BuilderType>,BuilderType extends com.google.protobuf.GeneratedMessageLite.ExtendableBuilder<MessageType,BuilderType>>, com.google.protobuf.GeneratedMessageLite.GeneratedExtension<ContainingType extends com.google.protobuf.MessageLite,Type>, com.google.protobuf.GeneratedMessageLite.MethodToInvoke, com.google.protobuf.GeneratedMessageLite.SerializedForm

    Nested classes/interfaces inherited from class com.google.protobuf.AbstractMessageLite

    com.google.protobuf.AbstractMessageLite.InternalOneOfEnum
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final int
     
    static final int
     
    static final int
     

    Fields inherited from class com.google.protobuf.GeneratedMessageLite

    unknownFields

    Fields inherited from class com.google.protobuf.AbstractMessageLite

    memoizedHashCode
  • Method Summary

    Modifier and Type
    Method
    Description
    protected final Object
    dynamicMethod(com.google.protobuf.GeneratedMessageLite.MethodToInvoke method, Object arg0, Object arg1)
     
    * The `callData` for the Ethereum transaction.
     
    com.google.protobuf.ByteString
    * The raw Ethereum transaction data.
    long
    * A maximum amount of "gas" offered to pay the Ethereum transaction costs.
    boolean
    * The `callData` for the Ethereum transaction.
     
     
     
    parseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     
    parseFrom(byte[] data)
     
    parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     
    parseFrom(com.google.protobuf.ByteString data)
     
    parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     
    parseFrom(com.google.protobuf.CodedInputStream input)
     
    parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     
     
    parseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     
     
    parseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     
    static com.google.protobuf.Parser<EthereumTransactionBody>
     

    Methods inherited from class com.google.protobuf.GeneratedMessageLite

    createBuilder, createBuilder, emptyBooleanList, emptyDoubleList, emptyFloatList, emptyIntList, emptyLongList, emptyProtobufList, equals, getDefaultInstanceForType, getParserForType, getSerializedSize, hashCode, isInitialized, makeImmutable, mergeLengthDelimitedField, mergeUnknownFields, mergeVarintField, mutableCopy, mutableCopy, mutableCopy, mutableCopy, mutableCopy, mutableCopy, newBuilderForType, newMessageInfo, newRepeatedGeneratedExtension, newSingularGeneratedExtension, parseDelimitedFrom, parseDelimitedFrom, parseFrom, parseFrom, parseFrom, parseFrom, parseFrom, parseFrom, parseFrom, parseFrom, parseFrom, parseFrom, parsePartialFrom, parseUnknownField, registerDefaultInstance, toBuilder, toString, writeTo

    Methods inherited from class com.google.protobuf.AbstractMessageLite

    addAll, checkByteStringIsUtf8, toByteArray, toByteString, writeDelimitedTo, writeTo

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait

    Methods inherited from interface com.google.protobuf.MessageLiteOrBuilder

    getDefaultInstanceForType, isInitialized
  • Field Details

    • ETHEREUM_DATA_FIELD_NUMBER

      public static final int ETHEREUM_DATA_FIELD_NUMBER
      See Also:
    • CALL_DATA_FIELD_NUMBER

      public static final int CALL_DATA_FIELD_NUMBER
      See Also:
    • MAX_GAS_ALLOWANCE_FIELD_NUMBER

      public static final int MAX_GAS_ALLOWANCE_FIELD_NUMBER
      See Also:
  • Method Details

    • getEthereumData

      public com.google.protobuf.ByteString getEthereumData()
       *
       The raw Ethereum transaction data.
       <p>
       This transaction MUST be RLP encoded.<br/>
       This SHALL be the complete transaction data unless the `call_data`
       field is set.<br/>
       If `call_data` is set, this field SHALL be modified to replace the
       `callData` element with the content of the referenced file.<br/>
       The transaction signature SHALL be validated after `callData` is
       complete, if necessary.
       
      bytes ethereum_data = 1;
      Specified by:
      getEthereumData in interface EthereumTransactionBodyOrBuilder
      Returns:
      The ethereumData.
    • hasCallData

      public boolean hasCallData()
       *
       The `callData` for the Ethereum transaction.
       <p>
       If this field is set, the data in the `ethereum_data` field SHALL be
       re-written to replace the `callData` element with the contents of this
       file at time of execution.<br/>
       The Ethereum transaction MUST be "rehydrated" with this modified
       `callData` before signature validation MAY be performed.
       
      .proto.FileID call_data = 2;
      Specified by:
      hasCallData in interface EthereumTransactionBodyOrBuilder
      Returns:
      Whether the callData field is set.
    • getCallData

      public FileID getCallData()
       *
       The `callData` for the Ethereum transaction.
       <p>
       If this field is set, the data in the `ethereum_data` field SHALL be
       re-written to replace the `callData` element with the contents of this
       file at time of execution.<br/>
       The Ethereum transaction MUST be "rehydrated" with this modified
       `callData` before signature validation MAY be performed.
       
      .proto.FileID call_data = 2;
      Specified by:
      getCallData in interface EthereumTransactionBodyOrBuilder
      Returns:
      The callData.
    • getMaxGasAllowance

      public long getMaxGasAllowance()
       *
       A maximum amount of "gas" offered to pay the Ethereum transaction costs.
       <p>
       This gas offered is in addition to any gas supplied with the Ethereum
       transaction as declared in the `ethereum_data`.<br/>
       In most circumstances the account with an alias matching the public
       key available from the Ethereum transaction signature offers sufficient
       gas to power the transaction, but in some cases it MAY be desirable
       for the account submitting this transaction to either supplement
       or entirely fund the transaction cost.<br/>
       The amount of gas offered here SHALL be used to pay for
       transaction costs _in excess_ of any gas offered within
       the Ethereum transaction.<br/>
       If the gas offered within the Ethereum transaction is sufficient
       for all costs, the gas offered in this field SHALL NOT be expended.<br/>
       Regardless of actual transaction cost, the payer for this transaction
       SHALL NOT be charged more gas than the amount offered here.<br/>
       If the sum of both gas amounts is not sufficient to pay for the
       transaction, the entire total amount of gas offered SHALL be expended,
       the transaction SHALL fail, and the response code `INSUFFICIENT_GAS`
       SHALL be set.<br/>
       If any amount of gas is charged to the payer of this transaction,
       at least 80% of the value offered in this field SHALL be charged
       as a minimum fee.<br/>
       If the amount of gas authorized in the Ethereum transaction data is `0`,
       then the payer of this transaction SHALL be charged the entire cost of
       the Ethereum transaction, subject to the limit set in this field.
       
      int64 max_gas_allowance = 3;
      Specified by:
      getMaxGasAllowance in interface EthereumTransactionBodyOrBuilder
      Returns:
      The maxGasAllowance.
    • parseFrom

      public static EthereumTransactionBody parseFrom(ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static EthereumTransactionBody parseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static EthereumTransactionBody parseFrom(com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static EthereumTransactionBody parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static EthereumTransactionBody parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static EthereumTransactionBody parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static EthereumTransactionBody parseFrom(InputStream input) throws IOException
      Throws:
      IOException
    • parseFrom

      public static EthereumTransactionBody parseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • parseDelimitedFrom

      public static EthereumTransactionBody parseDelimitedFrom(InputStream input) throws IOException
      Throws:
      IOException
    • parseDelimitedFrom

      public static EthereumTransactionBody parseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • parseFrom

      public static EthereumTransactionBody parseFrom(com.google.protobuf.CodedInputStream input) throws IOException
      Throws:
      IOException
    • parseFrom

      public static EthereumTransactionBody parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • newBuilder

      public static EthereumTransactionBody.Builder newBuilder()
    • newBuilder

      public static EthereumTransactionBody.Builder newBuilder(EthereumTransactionBody prototype)
    • dynamicMethod

      protected final Object dynamicMethod(com.google.protobuf.GeneratedMessageLite.MethodToInvoke method, Object arg0, Object arg1)
      Specified by:
      dynamicMethod in class com.google.protobuf.GeneratedMessageLite<EthereumTransactionBody,EthereumTransactionBody.Builder>
    • getDefaultInstance

      public static EthereumTransactionBody getDefaultInstance()
    • parser

      public static com.google.protobuf.Parser<EthereumTransactionBody> parser()