All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.wavesplatform.protobuf.transaction.Transaction.scala Maven / Gradle / Ivy

The newest version!
// Generated by the Scala Plugin for the Protocol Buffer Compiler.
// Do not edit!
//
// Protofile syntax: PROTO3

package com.wavesplatform.protobuf.transaction

@SerialVersionUID(0L)
final case class Transaction(
    chainId: _root_.scala.Int = 0,
    senderPublicKey: _root_.com.google.protobuf.ByteString = _root_.com.google.protobuf.ByteString.EMPTY,
    fee: _root_.scala.Option[com.wavesplatform.protobuf.Amount] = _root_.scala.None,
    timestamp: _root_.scala.Long = 0L,
    version: _root_.scala.Int = 0,
    data: com.wavesplatform.protobuf.transaction.Transaction.Data = com.wavesplatform.protobuf.transaction.Transaction.Data.Empty,
    unknownFields: _root_.scalapb.UnknownFieldSet = _root_.scalapb.UnknownFieldSet.empty
    ) extends scalapb.GeneratedMessage with scalapb.lenses.Updatable[Transaction] {
    @transient
    private[this] var __serializedSizeMemoized: _root_.scala.Int = 0
    private[this] def __computeSerializedSize(): _root_.scala.Int = {
      var __size = 0
      
      {
        val __value = chainId
        if (__value != 0) {
          __size += _root_.com.google.protobuf.CodedOutputStream.computeInt32Size(1, __value)
        }
      };
      
      {
        val __value = senderPublicKey
        if (!__value.isEmpty) {
          __size += _root_.com.google.protobuf.CodedOutputStream.computeBytesSize(2, __value)
        }
      };
      if (fee.isDefined) {
        val __value = fee.get
        __size += 1 + _root_.com.google.protobuf.CodedOutputStream.computeUInt32SizeNoTag(__value.serializedSize) + __value.serializedSize
      };
      
      {
        val __value = timestamp
        if (__value != 0L) {
          __size += _root_.com.google.protobuf.CodedOutputStream.computeInt64Size(4, __value)
        }
      };
      
      {
        val __value = version
        if (__value != 0) {
          __size += _root_.com.google.protobuf.CodedOutputStream.computeInt32Size(5, __value)
        }
      };
      if (data.genesis.isDefined) {
        val __value = data.genesis.get
        __size += 2 + _root_.com.google.protobuf.CodedOutputStream.computeUInt32SizeNoTag(__value.serializedSize) + __value.serializedSize
      };
      if (data.payment.isDefined) {
        val __value = data.payment.get
        __size += 2 + _root_.com.google.protobuf.CodedOutputStream.computeUInt32SizeNoTag(__value.serializedSize) + __value.serializedSize
      };
      if (data.issue.isDefined) {
        val __value = data.issue.get
        __size += 2 + _root_.com.google.protobuf.CodedOutputStream.computeUInt32SizeNoTag(__value.serializedSize) + __value.serializedSize
      };
      if (data.transfer.isDefined) {
        val __value = data.transfer.get
        __size += 2 + _root_.com.google.protobuf.CodedOutputStream.computeUInt32SizeNoTag(__value.serializedSize) + __value.serializedSize
      };
      if (data.reissue.isDefined) {
        val __value = data.reissue.get
        __size += 2 + _root_.com.google.protobuf.CodedOutputStream.computeUInt32SizeNoTag(__value.serializedSize) + __value.serializedSize
      };
      if (data.burn.isDefined) {
        val __value = data.burn.get
        __size += 2 + _root_.com.google.protobuf.CodedOutputStream.computeUInt32SizeNoTag(__value.serializedSize) + __value.serializedSize
      };
      if (data.exchange.isDefined) {
        val __value = data.exchange.get
        __size += 2 + _root_.com.google.protobuf.CodedOutputStream.computeUInt32SizeNoTag(__value.serializedSize) + __value.serializedSize
      };
      if (data.lease.isDefined) {
        val __value = data.lease.get
        __size += 2 + _root_.com.google.protobuf.CodedOutputStream.computeUInt32SizeNoTag(__value.serializedSize) + __value.serializedSize
      };
      if (data.leaseCancel.isDefined) {
        val __value = data.leaseCancel.get
        __size += 2 + _root_.com.google.protobuf.CodedOutputStream.computeUInt32SizeNoTag(__value.serializedSize) + __value.serializedSize
      };
      if (data.createAlias.isDefined) {
        val __value = data.createAlias.get
        __size += 2 + _root_.com.google.protobuf.CodedOutputStream.computeUInt32SizeNoTag(__value.serializedSize) + __value.serializedSize
      };
      if (data.massTransfer.isDefined) {
        val __value = data.massTransfer.get
        __size += 2 + _root_.com.google.protobuf.CodedOutputStream.computeUInt32SizeNoTag(__value.serializedSize) + __value.serializedSize
      };
      if (data.dataTransaction.isDefined) {
        val __value = data.dataTransaction.get
        __size += 2 + _root_.com.google.protobuf.CodedOutputStream.computeUInt32SizeNoTag(__value.serializedSize) + __value.serializedSize
      };
      if (data.setScript.isDefined) {
        val __value = data.setScript.get
        __size += 2 + _root_.com.google.protobuf.CodedOutputStream.computeUInt32SizeNoTag(__value.serializedSize) + __value.serializedSize
      };
      if (data.sponsorFee.isDefined) {
        val __value = data.sponsorFee.get
        __size += 2 + _root_.com.google.protobuf.CodedOutputStream.computeUInt32SizeNoTag(__value.serializedSize) + __value.serializedSize
      };
      if (data.setAssetScript.isDefined) {
        val __value = data.setAssetScript.get
        __size += 2 + _root_.com.google.protobuf.CodedOutputStream.computeUInt32SizeNoTag(__value.serializedSize) + __value.serializedSize
      };
      if (data.invokeScript.isDefined) {
        val __value = data.invokeScript.get
        __size += 2 + _root_.com.google.protobuf.CodedOutputStream.computeUInt32SizeNoTag(__value.serializedSize) + __value.serializedSize
      };
      if (data.updateAssetInfo.isDefined) {
        val __value = data.updateAssetInfo.get
        __size += 2 + _root_.com.google.protobuf.CodedOutputStream.computeUInt32SizeNoTag(__value.serializedSize) + __value.serializedSize
      };
      if (data.invokeExpression.isDefined) {
        val __value = data.invokeExpression.get
        __size += 2 + _root_.com.google.protobuf.CodedOutputStream.computeUInt32SizeNoTag(__value.serializedSize) + __value.serializedSize
      };
      __size += unknownFields.serializedSize
      __size
    }
    override def serializedSize: _root_.scala.Int = {
      var __size = __serializedSizeMemoized
      if (__size == 0) {
        __size = __computeSerializedSize() + 1
        __serializedSizeMemoized = __size
      }
      __size - 1
      
    }
    def writeTo(`_output__`: _root_.com.google.protobuf.CodedOutputStream): _root_.scala.Unit = {
      {
        val __v = chainId
        if (__v != 0) {
          _output__.writeInt32(1, __v)
        }
      };
      {
        val __v = senderPublicKey
        if (!__v.isEmpty) {
          _output__.writeBytes(2, __v)
        }
      };
      fee.foreach { __v =>
        val __m = __v
        _output__.writeTag(3, 2)
        _output__.writeUInt32NoTag(__m.serializedSize)
        __m.writeTo(_output__)
      };
      {
        val __v = timestamp
        if (__v != 0L) {
          _output__.writeInt64(4, __v)
        }
      };
      {
        val __v = version
        if (__v != 0) {
          _output__.writeInt32(5, __v)
        }
      };
      data.genesis.foreach { __v =>
        val __m = __v
        _output__.writeTag(101, 2)
        _output__.writeUInt32NoTag(__m.serializedSize)
        __m.writeTo(_output__)
      };
      data.payment.foreach { __v =>
        val __m = __v
        _output__.writeTag(102, 2)
        _output__.writeUInt32NoTag(__m.serializedSize)
        __m.writeTo(_output__)
      };
      data.issue.foreach { __v =>
        val __m = __v
        _output__.writeTag(103, 2)
        _output__.writeUInt32NoTag(__m.serializedSize)
        __m.writeTo(_output__)
      };
      data.transfer.foreach { __v =>
        val __m = __v
        _output__.writeTag(104, 2)
        _output__.writeUInt32NoTag(__m.serializedSize)
        __m.writeTo(_output__)
      };
      data.reissue.foreach { __v =>
        val __m = __v
        _output__.writeTag(105, 2)
        _output__.writeUInt32NoTag(__m.serializedSize)
        __m.writeTo(_output__)
      };
      data.burn.foreach { __v =>
        val __m = __v
        _output__.writeTag(106, 2)
        _output__.writeUInt32NoTag(__m.serializedSize)
        __m.writeTo(_output__)
      };
      data.exchange.foreach { __v =>
        val __m = __v
        _output__.writeTag(107, 2)
        _output__.writeUInt32NoTag(__m.serializedSize)
        __m.writeTo(_output__)
      };
      data.lease.foreach { __v =>
        val __m = __v
        _output__.writeTag(108, 2)
        _output__.writeUInt32NoTag(__m.serializedSize)
        __m.writeTo(_output__)
      };
      data.leaseCancel.foreach { __v =>
        val __m = __v
        _output__.writeTag(109, 2)
        _output__.writeUInt32NoTag(__m.serializedSize)
        __m.writeTo(_output__)
      };
      data.createAlias.foreach { __v =>
        val __m = __v
        _output__.writeTag(110, 2)
        _output__.writeUInt32NoTag(__m.serializedSize)
        __m.writeTo(_output__)
      };
      data.massTransfer.foreach { __v =>
        val __m = __v
        _output__.writeTag(111, 2)
        _output__.writeUInt32NoTag(__m.serializedSize)
        __m.writeTo(_output__)
      };
      data.dataTransaction.foreach { __v =>
        val __m = __v
        _output__.writeTag(112, 2)
        _output__.writeUInt32NoTag(__m.serializedSize)
        __m.writeTo(_output__)
      };
      data.setScript.foreach { __v =>
        val __m = __v
        _output__.writeTag(113, 2)
        _output__.writeUInt32NoTag(__m.serializedSize)
        __m.writeTo(_output__)
      };
      data.sponsorFee.foreach { __v =>
        val __m = __v
        _output__.writeTag(114, 2)
        _output__.writeUInt32NoTag(__m.serializedSize)
        __m.writeTo(_output__)
      };
      data.setAssetScript.foreach { __v =>
        val __m = __v
        _output__.writeTag(115, 2)
        _output__.writeUInt32NoTag(__m.serializedSize)
        __m.writeTo(_output__)
      };
      data.invokeScript.foreach { __v =>
        val __m = __v
        _output__.writeTag(116, 2)
        _output__.writeUInt32NoTag(__m.serializedSize)
        __m.writeTo(_output__)
      };
      data.updateAssetInfo.foreach { __v =>
        val __m = __v
        _output__.writeTag(117, 2)
        _output__.writeUInt32NoTag(__m.serializedSize)
        __m.writeTo(_output__)
      };
      data.invokeExpression.foreach { __v =>
        val __m = __v
        _output__.writeTag(119, 2)
        _output__.writeUInt32NoTag(__m.serializedSize)
        __m.writeTo(_output__)
      };
      unknownFields.writeTo(_output__)
    }
    def withChainId(__v: _root_.scala.Int): Transaction = copy(chainId = __v)
    def withSenderPublicKey(__v: _root_.com.google.protobuf.ByteString): Transaction = copy(senderPublicKey = __v)
    def getFee: com.wavesplatform.protobuf.Amount = fee.getOrElse(com.wavesplatform.protobuf.Amount.defaultInstance)
    def clearFee: Transaction = copy(fee = _root_.scala.None)
    def withFee(__v: com.wavesplatform.protobuf.Amount): Transaction = copy(fee = Option(__v))
    def withTimestamp(__v: _root_.scala.Long): Transaction = copy(timestamp = __v)
    def withVersion(__v: _root_.scala.Int): Transaction = copy(version = __v)
    def getGenesis: com.wavesplatform.protobuf.transaction.GenesisTransactionData = data.genesis.getOrElse(com.wavesplatform.protobuf.transaction.GenesisTransactionData.defaultInstance)
    def withGenesis(__v: com.wavesplatform.protobuf.transaction.GenesisTransactionData): Transaction = copy(data = com.wavesplatform.protobuf.transaction.Transaction.Data.Genesis(__v))
    def getPayment: com.wavesplatform.protobuf.transaction.PaymentTransactionData = data.payment.getOrElse(com.wavesplatform.protobuf.transaction.PaymentTransactionData.defaultInstance)
    def withPayment(__v: com.wavesplatform.protobuf.transaction.PaymentTransactionData): Transaction = copy(data = com.wavesplatform.protobuf.transaction.Transaction.Data.Payment(__v))
    def getIssue: com.wavesplatform.protobuf.transaction.IssueTransactionData = data.issue.getOrElse(com.wavesplatform.protobuf.transaction.IssueTransactionData.defaultInstance)
    def withIssue(__v: com.wavesplatform.protobuf.transaction.IssueTransactionData): Transaction = copy(data = com.wavesplatform.protobuf.transaction.Transaction.Data.Issue(__v))
    def getTransfer: com.wavesplatform.protobuf.transaction.TransferTransactionData = data.transfer.getOrElse(com.wavesplatform.protobuf.transaction.TransferTransactionData.defaultInstance)
    def withTransfer(__v: com.wavesplatform.protobuf.transaction.TransferTransactionData): Transaction = copy(data = com.wavesplatform.protobuf.transaction.Transaction.Data.Transfer(__v))
    def getReissue: com.wavesplatform.protobuf.transaction.ReissueTransactionData = data.reissue.getOrElse(com.wavesplatform.protobuf.transaction.ReissueTransactionData.defaultInstance)
    def withReissue(__v: com.wavesplatform.protobuf.transaction.ReissueTransactionData): Transaction = copy(data = com.wavesplatform.protobuf.transaction.Transaction.Data.Reissue(__v))
    def getBurn: com.wavesplatform.protobuf.transaction.BurnTransactionData = data.burn.getOrElse(com.wavesplatform.protobuf.transaction.BurnTransactionData.defaultInstance)
    def withBurn(__v: com.wavesplatform.protobuf.transaction.BurnTransactionData): Transaction = copy(data = com.wavesplatform.protobuf.transaction.Transaction.Data.Burn(__v))
    def getExchange: com.wavesplatform.protobuf.transaction.ExchangeTransactionData = data.exchange.getOrElse(com.wavesplatform.protobuf.transaction.ExchangeTransactionData.defaultInstance)
    def withExchange(__v: com.wavesplatform.protobuf.transaction.ExchangeTransactionData): Transaction = copy(data = com.wavesplatform.protobuf.transaction.Transaction.Data.Exchange(__v))
    def getLease: com.wavesplatform.protobuf.transaction.LeaseTransactionData = data.lease.getOrElse(com.wavesplatform.protobuf.transaction.LeaseTransactionData.defaultInstance)
    def withLease(__v: com.wavesplatform.protobuf.transaction.LeaseTransactionData): Transaction = copy(data = com.wavesplatform.protobuf.transaction.Transaction.Data.Lease(__v))
    def getLeaseCancel: com.wavesplatform.protobuf.transaction.LeaseCancelTransactionData = data.leaseCancel.getOrElse(com.wavesplatform.protobuf.transaction.LeaseCancelTransactionData.defaultInstance)
    def withLeaseCancel(__v: com.wavesplatform.protobuf.transaction.LeaseCancelTransactionData): Transaction = copy(data = com.wavesplatform.protobuf.transaction.Transaction.Data.LeaseCancel(__v))
    def getCreateAlias: com.wavesplatform.protobuf.transaction.CreateAliasTransactionData = data.createAlias.getOrElse(com.wavesplatform.protobuf.transaction.CreateAliasTransactionData.defaultInstance)
    def withCreateAlias(__v: com.wavesplatform.protobuf.transaction.CreateAliasTransactionData): Transaction = copy(data = com.wavesplatform.protobuf.transaction.Transaction.Data.CreateAlias(__v))
    def getMassTransfer: com.wavesplatform.protobuf.transaction.MassTransferTransactionData = data.massTransfer.getOrElse(com.wavesplatform.protobuf.transaction.MassTransferTransactionData.defaultInstance)
    def withMassTransfer(__v: com.wavesplatform.protobuf.transaction.MassTransferTransactionData): Transaction = copy(data = com.wavesplatform.protobuf.transaction.Transaction.Data.MassTransfer(__v))
    def getDataTransaction: com.wavesplatform.protobuf.transaction.DataTransactionData = data.dataTransaction.getOrElse(com.wavesplatform.protobuf.transaction.DataTransactionData.defaultInstance)
    def withDataTransaction(__v: com.wavesplatform.protobuf.transaction.DataTransactionData): Transaction = copy(data = com.wavesplatform.protobuf.transaction.Transaction.Data.DataTransaction(__v))
    def getSetScript: com.wavesplatform.protobuf.transaction.SetScriptTransactionData = data.setScript.getOrElse(com.wavesplatform.protobuf.transaction.SetScriptTransactionData.defaultInstance)
    def withSetScript(__v: com.wavesplatform.protobuf.transaction.SetScriptTransactionData): Transaction = copy(data = com.wavesplatform.protobuf.transaction.Transaction.Data.SetScript(__v))
    def getSponsorFee: com.wavesplatform.protobuf.transaction.SponsorFeeTransactionData = data.sponsorFee.getOrElse(com.wavesplatform.protobuf.transaction.SponsorFeeTransactionData.defaultInstance)
    def withSponsorFee(__v: com.wavesplatform.protobuf.transaction.SponsorFeeTransactionData): Transaction = copy(data = com.wavesplatform.protobuf.transaction.Transaction.Data.SponsorFee(__v))
    def getSetAssetScript: com.wavesplatform.protobuf.transaction.SetAssetScriptTransactionData = data.setAssetScript.getOrElse(com.wavesplatform.protobuf.transaction.SetAssetScriptTransactionData.defaultInstance)
    def withSetAssetScript(__v: com.wavesplatform.protobuf.transaction.SetAssetScriptTransactionData): Transaction = copy(data = com.wavesplatform.protobuf.transaction.Transaction.Data.SetAssetScript(__v))
    def getInvokeScript: com.wavesplatform.protobuf.transaction.InvokeScriptTransactionData = data.invokeScript.getOrElse(com.wavesplatform.protobuf.transaction.InvokeScriptTransactionData.defaultInstance)
    def withInvokeScript(__v: com.wavesplatform.protobuf.transaction.InvokeScriptTransactionData): Transaction = copy(data = com.wavesplatform.protobuf.transaction.Transaction.Data.InvokeScript(__v))
    def getUpdateAssetInfo: com.wavesplatform.protobuf.transaction.UpdateAssetInfoTransactionData = data.updateAssetInfo.getOrElse(com.wavesplatform.protobuf.transaction.UpdateAssetInfoTransactionData.defaultInstance)
    def withUpdateAssetInfo(__v: com.wavesplatform.protobuf.transaction.UpdateAssetInfoTransactionData): Transaction = copy(data = com.wavesplatform.protobuf.transaction.Transaction.Data.UpdateAssetInfo(__v))
    def getInvokeExpression: com.wavesplatform.protobuf.transaction.InvokeExpressionTransactionData = data.invokeExpression.getOrElse(com.wavesplatform.protobuf.transaction.InvokeExpressionTransactionData.defaultInstance)
    def withInvokeExpression(__v: com.wavesplatform.protobuf.transaction.InvokeExpressionTransactionData): Transaction = copy(data = com.wavesplatform.protobuf.transaction.Transaction.Data.InvokeExpression(__v))
    def clearData: Transaction = copy(data = com.wavesplatform.protobuf.transaction.Transaction.Data.Empty)
    def withData(__v: com.wavesplatform.protobuf.transaction.Transaction.Data): Transaction = copy(data = __v)
    def withUnknownFields(__v: _root_.scalapb.UnknownFieldSet) = copy(unknownFields = __v)
    def discardUnknownFields = copy(unknownFields = _root_.scalapb.UnknownFieldSet.empty)
    def getFieldByNumber(__fieldNumber: _root_.scala.Int): _root_.scala.Any = {
      (__fieldNumber: @_root_.scala.unchecked) match {
        case 1 => {
          val __t = chainId
          if (__t != 0) __t else null
        }
        case 2 => {
          val __t = senderPublicKey
          if (__t != _root_.com.google.protobuf.ByteString.EMPTY) __t else null
        }
        case 3 => fee.orNull
        case 4 => {
          val __t = timestamp
          if (__t != 0L) __t else null
        }
        case 5 => {
          val __t = version
          if (__t != 0) __t else null
        }
        case 101 => data.genesis.orNull
        case 102 => data.payment.orNull
        case 103 => data.issue.orNull
        case 104 => data.transfer.orNull
        case 105 => data.reissue.orNull
        case 106 => data.burn.orNull
        case 107 => data.exchange.orNull
        case 108 => data.lease.orNull
        case 109 => data.leaseCancel.orNull
        case 110 => data.createAlias.orNull
        case 111 => data.massTransfer.orNull
        case 112 => data.dataTransaction.orNull
        case 113 => data.setScript.orNull
        case 114 => data.sponsorFee.orNull
        case 115 => data.setAssetScript.orNull
        case 116 => data.invokeScript.orNull
        case 117 => data.updateAssetInfo.orNull
        case 119 => data.invokeExpression.orNull
      }
    }
    def getField(__field: _root_.scalapb.descriptors.FieldDescriptor): _root_.scalapb.descriptors.PValue = {
      _root_.scala.Predef.require(__field.containingMessage eq companion.scalaDescriptor)
      (__field.number: @_root_.scala.unchecked) match {
        case 1 => _root_.scalapb.descriptors.PInt(chainId)
        case 2 => _root_.scalapb.descriptors.PByteString(senderPublicKey)
        case 3 => fee.map(_.toPMessage).getOrElse(_root_.scalapb.descriptors.PEmpty)
        case 4 => _root_.scalapb.descriptors.PLong(timestamp)
        case 5 => _root_.scalapb.descriptors.PInt(version)
        case 101 => data.genesis.map(_.toPMessage).getOrElse(_root_.scalapb.descriptors.PEmpty)
        case 102 => data.payment.map(_.toPMessage).getOrElse(_root_.scalapb.descriptors.PEmpty)
        case 103 => data.issue.map(_.toPMessage).getOrElse(_root_.scalapb.descriptors.PEmpty)
        case 104 => data.transfer.map(_.toPMessage).getOrElse(_root_.scalapb.descriptors.PEmpty)
        case 105 => data.reissue.map(_.toPMessage).getOrElse(_root_.scalapb.descriptors.PEmpty)
        case 106 => data.burn.map(_.toPMessage).getOrElse(_root_.scalapb.descriptors.PEmpty)
        case 107 => data.exchange.map(_.toPMessage).getOrElse(_root_.scalapb.descriptors.PEmpty)
        case 108 => data.lease.map(_.toPMessage).getOrElse(_root_.scalapb.descriptors.PEmpty)
        case 109 => data.leaseCancel.map(_.toPMessage).getOrElse(_root_.scalapb.descriptors.PEmpty)
        case 110 => data.createAlias.map(_.toPMessage).getOrElse(_root_.scalapb.descriptors.PEmpty)
        case 111 => data.massTransfer.map(_.toPMessage).getOrElse(_root_.scalapb.descriptors.PEmpty)
        case 112 => data.dataTransaction.map(_.toPMessage).getOrElse(_root_.scalapb.descriptors.PEmpty)
        case 113 => data.setScript.map(_.toPMessage).getOrElse(_root_.scalapb.descriptors.PEmpty)
        case 114 => data.sponsorFee.map(_.toPMessage).getOrElse(_root_.scalapb.descriptors.PEmpty)
        case 115 => data.setAssetScript.map(_.toPMessage).getOrElse(_root_.scalapb.descriptors.PEmpty)
        case 116 => data.invokeScript.map(_.toPMessage).getOrElse(_root_.scalapb.descriptors.PEmpty)
        case 117 => data.updateAssetInfo.map(_.toPMessage).getOrElse(_root_.scalapb.descriptors.PEmpty)
        case 119 => data.invokeExpression.map(_.toPMessage).getOrElse(_root_.scalapb.descriptors.PEmpty)
      }
    }
    def toProtoString: _root_.scala.Predef.String = _root_.scalapb.TextFormat.printToUnicodeString(this)
    def companion: com.wavesplatform.protobuf.transaction.Transaction.type = com.wavesplatform.protobuf.transaction.Transaction
    // @@protoc_insertion_point(GeneratedMessage[waves.Transaction])
}

object Transaction extends scalapb.GeneratedMessageCompanion[com.wavesplatform.protobuf.transaction.Transaction] {
  implicit def messageCompanion: scalapb.GeneratedMessageCompanion[com.wavesplatform.protobuf.transaction.Transaction] = this
  def parseFrom(`_input__`: _root_.com.google.protobuf.CodedInputStream): com.wavesplatform.protobuf.transaction.Transaction = {
    var __chainId: _root_.scala.Int = 0
    var __senderPublicKey: _root_.com.google.protobuf.ByteString = _root_.com.google.protobuf.ByteString.EMPTY
    var __fee: _root_.scala.Option[com.wavesplatform.protobuf.Amount] = _root_.scala.None
    var __timestamp: _root_.scala.Long = 0L
    var __version: _root_.scala.Int = 0
    var __data: com.wavesplatform.protobuf.transaction.Transaction.Data = com.wavesplatform.protobuf.transaction.Transaction.Data.Empty
    var `_unknownFields__`: _root_.scalapb.UnknownFieldSet.Builder = null
    var _done__ = false
    while (!_done__) {
      val _tag__ = _input__.readTag()
      _tag__ match {
        case 0 => _done__ = true
        case 8 =>
          __chainId = _input__.readInt32()
        case 18 =>
          __senderPublicKey = _input__.readBytes()
        case 26 =>
          __fee = _root_.scala.Option(__fee.fold(_root_.scalapb.LiteParser.readMessage[com.wavesplatform.protobuf.Amount](_input__))(_root_.scalapb.LiteParser.readMessage(_input__, _)))
        case 32 =>
          __timestamp = _input__.readInt64()
        case 40 =>
          __version = _input__.readInt32()
        case 810 =>
          __data = com.wavesplatform.protobuf.transaction.Transaction.Data.Genesis(__data.genesis.fold(_root_.scalapb.LiteParser.readMessage[com.wavesplatform.protobuf.transaction.GenesisTransactionData](_input__))(_root_.scalapb.LiteParser.readMessage(_input__, _)))
        case 818 =>
          __data = com.wavesplatform.protobuf.transaction.Transaction.Data.Payment(__data.payment.fold(_root_.scalapb.LiteParser.readMessage[com.wavesplatform.protobuf.transaction.PaymentTransactionData](_input__))(_root_.scalapb.LiteParser.readMessage(_input__, _)))
        case 826 =>
          __data = com.wavesplatform.protobuf.transaction.Transaction.Data.Issue(__data.issue.fold(_root_.scalapb.LiteParser.readMessage[com.wavesplatform.protobuf.transaction.IssueTransactionData](_input__))(_root_.scalapb.LiteParser.readMessage(_input__, _)))
        case 834 =>
          __data = com.wavesplatform.protobuf.transaction.Transaction.Data.Transfer(__data.transfer.fold(_root_.scalapb.LiteParser.readMessage[com.wavesplatform.protobuf.transaction.TransferTransactionData](_input__))(_root_.scalapb.LiteParser.readMessage(_input__, _)))
        case 842 =>
          __data = com.wavesplatform.protobuf.transaction.Transaction.Data.Reissue(__data.reissue.fold(_root_.scalapb.LiteParser.readMessage[com.wavesplatform.protobuf.transaction.ReissueTransactionData](_input__))(_root_.scalapb.LiteParser.readMessage(_input__, _)))
        case 850 =>
          __data = com.wavesplatform.protobuf.transaction.Transaction.Data.Burn(__data.burn.fold(_root_.scalapb.LiteParser.readMessage[com.wavesplatform.protobuf.transaction.BurnTransactionData](_input__))(_root_.scalapb.LiteParser.readMessage(_input__, _)))
        case 858 =>
          __data = com.wavesplatform.protobuf.transaction.Transaction.Data.Exchange(__data.exchange.fold(_root_.scalapb.LiteParser.readMessage[com.wavesplatform.protobuf.transaction.ExchangeTransactionData](_input__))(_root_.scalapb.LiteParser.readMessage(_input__, _)))
        case 866 =>
          __data = com.wavesplatform.protobuf.transaction.Transaction.Data.Lease(__data.lease.fold(_root_.scalapb.LiteParser.readMessage[com.wavesplatform.protobuf.transaction.LeaseTransactionData](_input__))(_root_.scalapb.LiteParser.readMessage(_input__, _)))
        case 874 =>
          __data = com.wavesplatform.protobuf.transaction.Transaction.Data.LeaseCancel(__data.leaseCancel.fold(_root_.scalapb.LiteParser.readMessage[com.wavesplatform.protobuf.transaction.LeaseCancelTransactionData](_input__))(_root_.scalapb.LiteParser.readMessage(_input__, _)))
        case 882 =>
          __data = com.wavesplatform.protobuf.transaction.Transaction.Data.CreateAlias(__data.createAlias.fold(_root_.scalapb.LiteParser.readMessage[com.wavesplatform.protobuf.transaction.CreateAliasTransactionData](_input__))(_root_.scalapb.LiteParser.readMessage(_input__, _)))
        case 890 =>
          __data = com.wavesplatform.protobuf.transaction.Transaction.Data.MassTransfer(__data.massTransfer.fold(_root_.scalapb.LiteParser.readMessage[com.wavesplatform.protobuf.transaction.MassTransferTransactionData](_input__))(_root_.scalapb.LiteParser.readMessage(_input__, _)))
        case 898 =>
          __data = com.wavesplatform.protobuf.transaction.Transaction.Data.DataTransaction(__data.dataTransaction.fold(_root_.scalapb.LiteParser.readMessage[com.wavesplatform.protobuf.transaction.DataTransactionData](_input__))(_root_.scalapb.LiteParser.readMessage(_input__, _)))
        case 906 =>
          __data = com.wavesplatform.protobuf.transaction.Transaction.Data.SetScript(__data.setScript.fold(_root_.scalapb.LiteParser.readMessage[com.wavesplatform.protobuf.transaction.SetScriptTransactionData](_input__))(_root_.scalapb.LiteParser.readMessage(_input__, _)))
        case 914 =>
          __data = com.wavesplatform.protobuf.transaction.Transaction.Data.SponsorFee(__data.sponsorFee.fold(_root_.scalapb.LiteParser.readMessage[com.wavesplatform.protobuf.transaction.SponsorFeeTransactionData](_input__))(_root_.scalapb.LiteParser.readMessage(_input__, _)))
        case 922 =>
          __data = com.wavesplatform.protobuf.transaction.Transaction.Data.SetAssetScript(__data.setAssetScript.fold(_root_.scalapb.LiteParser.readMessage[com.wavesplatform.protobuf.transaction.SetAssetScriptTransactionData](_input__))(_root_.scalapb.LiteParser.readMessage(_input__, _)))
        case 930 =>
          __data = com.wavesplatform.protobuf.transaction.Transaction.Data.InvokeScript(__data.invokeScript.fold(_root_.scalapb.LiteParser.readMessage[com.wavesplatform.protobuf.transaction.InvokeScriptTransactionData](_input__))(_root_.scalapb.LiteParser.readMessage(_input__, _)))
        case 938 =>
          __data = com.wavesplatform.protobuf.transaction.Transaction.Data.UpdateAssetInfo(__data.updateAssetInfo.fold(_root_.scalapb.LiteParser.readMessage[com.wavesplatform.protobuf.transaction.UpdateAssetInfoTransactionData](_input__))(_root_.scalapb.LiteParser.readMessage(_input__, _)))
        case 954 =>
          __data = com.wavesplatform.protobuf.transaction.Transaction.Data.InvokeExpression(__data.invokeExpression.fold(_root_.scalapb.LiteParser.readMessage[com.wavesplatform.protobuf.transaction.InvokeExpressionTransactionData](_input__))(_root_.scalapb.LiteParser.readMessage(_input__, _)))
        case tag =>
          if (_unknownFields__ == null) {
            _unknownFields__ = new _root_.scalapb.UnknownFieldSet.Builder()
          }
          _unknownFields__.parseField(tag, _input__)
      }
    }
    com.wavesplatform.protobuf.transaction.Transaction(
        chainId = __chainId,
        senderPublicKey = __senderPublicKey,
        fee = __fee,
        timestamp = __timestamp,
        version = __version,
        data = __data,
        unknownFields = if (_unknownFields__ == null) _root_.scalapb.UnknownFieldSet.empty else _unknownFields__.result()
    )
  }
  implicit def messageReads: _root_.scalapb.descriptors.Reads[com.wavesplatform.protobuf.transaction.Transaction] = _root_.scalapb.descriptors.Reads{
    case _root_.scalapb.descriptors.PMessage(__fieldsMap) =>
      _root_.scala.Predef.require(__fieldsMap.keys.forall(_.containingMessage eq scalaDescriptor), "FieldDescriptor does not match message type.")
      com.wavesplatform.protobuf.transaction.Transaction(
        chainId = __fieldsMap.get(scalaDescriptor.findFieldByNumber(1).get).map(_.as[_root_.scala.Int]).getOrElse(0),
        senderPublicKey = __fieldsMap.get(scalaDescriptor.findFieldByNumber(2).get).map(_.as[_root_.com.google.protobuf.ByteString]).getOrElse(_root_.com.google.protobuf.ByteString.EMPTY),
        fee = __fieldsMap.get(scalaDescriptor.findFieldByNumber(3).get).flatMap(_.as[_root_.scala.Option[com.wavesplatform.protobuf.Amount]]),
        timestamp = __fieldsMap.get(scalaDescriptor.findFieldByNumber(4).get).map(_.as[_root_.scala.Long]).getOrElse(0L),
        version = __fieldsMap.get(scalaDescriptor.findFieldByNumber(5).get).map(_.as[_root_.scala.Int]).getOrElse(0),
        data = __fieldsMap.get(scalaDescriptor.findFieldByNumber(101).get).flatMap(_.as[_root_.scala.Option[com.wavesplatform.protobuf.transaction.GenesisTransactionData]]).map(com.wavesplatform.protobuf.transaction.Transaction.Data.Genesis(_))
            .orElse[com.wavesplatform.protobuf.transaction.Transaction.Data](__fieldsMap.get(scalaDescriptor.findFieldByNumber(102).get).flatMap(_.as[_root_.scala.Option[com.wavesplatform.protobuf.transaction.PaymentTransactionData]]).map(com.wavesplatform.protobuf.transaction.Transaction.Data.Payment(_)))
            .orElse[com.wavesplatform.protobuf.transaction.Transaction.Data](__fieldsMap.get(scalaDescriptor.findFieldByNumber(103).get).flatMap(_.as[_root_.scala.Option[com.wavesplatform.protobuf.transaction.IssueTransactionData]]).map(com.wavesplatform.protobuf.transaction.Transaction.Data.Issue(_)))
            .orElse[com.wavesplatform.protobuf.transaction.Transaction.Data](__fieldsMap.get(scalaDescriptor.findFieldByNumber(104).get).flatMap(_.as[_root_.scala.Option[com.wavesplatform.protobuf.transaction.TransferTransactionData]]).map(com.wavesplatform.protobuf.transaction.Transaction.Data.Transfer(_)))
            .orElse[com.wavesplatform.protobuf.transaction.Transaction.Data](__fieldsMap.get(scalaDescriptor.findFieldByNumber(105).get).flatMap(_.as[_root_.scala.Option[com.wavesplatform.protobuf.transaction.ReissueTransactionData]]).map(com.wavesplatform.protobuf.transaction.Transaction.Data.Reissue(_)))
            .orElse[com.wavesplatform.protobuf.transaction.Transaction.Data](__fieldsMap.get(scalaDescriptor.findFieldByNumber(106).get).flatMap(_.as[_root_.scala.Option[com.wavesplatform.protobuf.transaction.BurnTransactionData]]).map(com.wavesplatform.protobuf.transaction.Transaction.Data.Burn(_)))
            .orElse[com.wavesplatform.protobuf.transaction.Transaction.Data](__fieldsMap.get(scalaDescriptor.findFieldByNumber(107).get).flatMap(_.as[_root_.scala.Option[com.wavesplatform.protobuf.transaction.ExchangeTransactionData]]).map(com.wavesplatform.protobuf.transaction.Transaction.Data.Exchange(_)))
            .orElse[com.wavesplatform.protobuf.transaction.Transaction.Data](__fieldsMap.get(scalaDescriptor.findFieldByNumber(108).get).flatMap(_.as[_root_.scala.Option[com.wavesplatform.protobuf.transaction.LeaseTransactionData]]).map(com.wavesplatform.protobuf.transaction.Transaction.Data.Lease(_)))
            .orElse[com.wavesplatform.protobuf.transaction.Transaction.Data](__fieldsMap.get(scalaDescriptor.findFieldByNumber(109).get).flatMap(_.as[_root_.scala.Option[com.wavesplatform.protobuf.transaction.LeaseCancelTransactionData]]).map(com.wavesplatform.protobuf.transaction.Transaction.Data.LeaseCancel(_)))
            .orElse[com.wavesplatform.protobuf.transaction.Transaction.Data](__fieldsMap.get(scalaDescriptor.findFieldByNumber(110).get).flatMap(_.as[_root_.scala.Option[com.wavesplatform.protobuf.transaction.CreateAliasTransactionData]]).map(com.wavesplatform.protobuf.transaction.Transaction.Data.CreateAlias(_)))
            .orElse[com.wavesplatform.protobuf.transaction.Transaction.Data](__fieldsMap.get(scalaDescriptor.findFieldByNumber(111).get).flatMap(_.as[_root_.scala.Option[com.wavesplatform.protobuf.transaction.MassTransferTransactionData]]).map(com.wavesplatform.protobuf.transaction.Transaction.Data.MassTransfer(_)))
            .orElse[com.wavesplatform.protobuf.transaction.Transaction.Data](__fieldsMap.get(scalaDescriptor.findFieldByNumber(112).get).flatMap(_.as[_root_.scala.Option[com.wavesplatform.protobuf.transaction.DataTransactionData]]).map(com.wavesplatform.protobuf.transaction.Transaction.Data.DataTransaction(_)))
            .orElse[com.wavesplatform.protobuf.transaction.Transaction.Data](__fieldsMap.get(scalaDescriptor.findFieldByNumber(113).get).flatMap(_.as[_root_.scala.Option[com.wavesplatform.protobuf.transaction.SetScriptTransactionData]]).map(com.wavesplatform.protobuf.transaction.Transaction.Data.SetScript(_)))
            .orElse[com.wavesplatform.protobuf.transaction.Transaction.Data](__fieldsMap.get(scalaDescriptor.findFieldByNumber(114).get).flatMap(_.as[_root_.scala.Option[com.wavesplatform.protobuf.transaction.SponsorFeeTransactionData]]).map(com.wavesplatform.protobuf.transaction.Transaction.Data.SponsorFee(_)))
            .orElse[com.wavesplatform.protobuf.transaction.Transaction.Data](__fieldsMap.get(scalaDescriptor.findFieldByNumber(115).get).flatMap(_.as[_root_.scala.Option[com.wavesplatform.protobuf.transaction.SetAssetScriptTransactionData]]).map(com.wavesplatform.protobuf.transaction.Transaction.Data.SetAssetScript(_)))
            .orElse[com.wavesplatform.protobuf.transaction.Transaction.Data](__fieldsMap.get(scalaDescriptor.findFieldByNumber(116).get).flatMap(_.as[_root_.scala.Option[com.wavesplatform.protobuf.transaction.InvokeScriptTransactionData]]).map(com.wavesplatform.protobuf.transaction.Transaction.Data.InvokeScript(_)))
            .orElse[com.wavesplatform.protobuf.transaction.Transaction.Data](__fieldsMap.get(scalaDescriptor.findFieldByNumber(117).get).flatMap(_.as[_root_.scala.Option[com.wavesplatform.protobuf.transaction.UpdateAssetInfoTransactionData]]).map(com.wavesplatform.protobuf.transaction.Transaction.Data.UpdateAssetInfo(_)))
            .orElse[com.wavesplatform.protobuf.transaction.Transaction.Data](__fieldsMap.get(scalaDescriptor.findFieldByNumber(119).get).flatMap(_.as[_root_.scala.Option[com.wavesplatform.protobuf.transaction.InvokeExpressionTransactionData]]).map(com.wavesplatform.protobuf.transaction.Transaction.Data.InvokeExpression(_)))
            .getOrElse(com.wavesplatform.protobuf.transaction.Transaction.Data.Empty)
      )
    case _ => throw new RuntimeException("Expected PMessage")
  }
  def javaDescriptor: _root_.com.google.protobuf.Descriptors.Descriptor = TransactionProto.javaDescriptor.getMessageTypes().get(1)
  def scalaDescriptor: _root_.scalapb.descriptors.Descriptor = TransactionProto.scalaDescriptor.messages(1)
  def messageCompanionForFieldNumber(__number: _root_.scala.Int): _root_.scalapb.GeneratedMessageCompanion[_] = {
    var __out: _root_.scalapb.GeneratedMessageCompanion[_] = null
    (__number: @_root_.scala.unchecked) match {
      case 3 => __out = com.wavesplatform.protobuf.Amount
      case 101 => __out = com.wavesplatform.protobuf.transaction.GenesisTransactionData
      case 102 => __out = com.wavesplatform.protobuf.transaction.PaymentTransactionData
      case 103 => __out = com.wavesplatform.protobuf.transaction.IssueTransactionData
      case 104 => __out = com.wavesplatform.protobuf.transaction.TransferTransactionData
      case 105 => __out = com.wavesplatform.protobuf.transaction.ReissueTransactionData
      case 106 => __out = com.wavesplatform.protobuf.transaction.BurnTransactionData
      case 107 => __out = com.wavesplatform.protobuf.transaction.ExchangeTransactionData
      case 108 => __out = com.wavesplatform.protobuf.transaction.LeaseTransactionData
      case 109 => __out = com.wavesplatform.protobuf.transaction.LeaseCancelTransactionData
      case 110 => __out = com.wavesplatform.protobuf.transaction.CreateAliasTransactionData
      case 111 => __out = com.wavesplatform.protobuf.transaction.MassTransferTransactionData
      case 112 => __out = com.wavesplatform.protobuf.transaction.DataTransactionData
      case 113 => __out = com.wavesplatform.protobuf.transaction.SetScriptTransactionData
      case 114 => __out = com.wavesplatform.protobuf.transaction.SponsorFeeTransactionData
      case 115 => __out = com.wavesplatform.protobuf.transaction.SetAssetScriptTransactionData
      case 116 => __out = com.wavesplatform.protobuf.transaction.InvokeScriptTransactionData
      case 117 => __out = com.wavesplatform.protobuf.transaction.UpdateAssetInfoTransactionData
      case 119 => __out = com.wavesplatform.protobuf.transaction.InvokeExpressionTransactionData
    }
    __out
  }
  lazy val nestedMessagesCompanions: Seq[_root_.scalapb.GeneratedMessageCompanion[_ <: _root_.scalapb.GeneratedMessage]] = Seq.empty
  def enumCompanionForFieldNumber(__fieldNumber: _root_.scala.Int): _root_.scalapb.GeneratedEnumCompanion[_] = throw new MatchError(__fieldNumber)
  lazy val defaultInstance = com.wavesplatform.protobuf.transaction.Transaction(
    chainId = 0,
    senderPublicKey = _root_.com.google.protobuf.ByteString.EMPTY,
    fee = _root_.scala.None,
    timestamp = 0L,
    version = 0,
    data = com.wavesplatform.protobuf.transaction.Transaction.Data.Empty
  )
  sealed trait Data extends _root_.scalapb.GeneratedOneof {
    def isEmpty: _root_.scala.Boolean = false
    def isDefined: _root_.scala.Boolean = true
    def isGenesis: _root_.scala.Boolean = false
    def isPayment: _root_.scala.Boolean = false
    def isIssue: _root_.scala.Boolean = false
    def isTransfer: _root_.scala.Boolean = false
    def isReissue: _root_.scala.Boolean = false
    def isBurn: _root_.scala.Boolean = false
    def isExchange: _root_.scala.Boolean = false
    def isLease: _root_.scala.Boolean = false
    def isLeaseCancel: _root_.scala.Boolean = false
    def isCreateAlias: _root_.scala.Boolean = false
    def isMassTransfer: _root_.scala.Boolean = false
    def isDataTransaction: _root_.scala.Boolean = false
    def isSetScript: _root_.scala.Boolean = false
    def isSponsorFee: _root_.scala.Boolean = false
    def isSetAssetScript: _root_.scala.Boolean = false
    def isInvokeScript: _root_.scala.Boolean = false
    def isUpdateAssetInfo: _root_.scala.Boolean = false
    def isInvokeExpression: _root_.scala.Boolean = false
    def genesis: _root_.scala.Option[com.wavesplatform.protobuf.transaction.GenesisTransactionData] = _root_.scala.None
    def payment: _root_.scala.Option[com.wavesplatform.protobuf.transaction.PaymentTransactionData] = _root_.scala.None
    def issue: _root_.scala.Option[com.wavesplatform.protobuf.transaction.IssueTransactionData] = _root_.scala.None
    def transfer: _root_.scala.Option[com.wavesplatform.protobuf.transaction.TransferTransactionData] = _root_.scala.None
    def reissue: _root_.scala.Option[com.wavesplatform.protobuf.transaction.ReissueTransactionData] = _root_.scala.None
    def burn: _root_.scala.Option[com.wavesplatform.protobuf.transaction.BurnTransactionData] = _root_.scala.None
    def exchange: _root_.scala.Option[com.wavesplatform.protobuf.transaction.ExchangeTransactionData] = _root_.scala.None
    def lease: _root_.scala.Option[com.wavesplatform.protobuf.transaction.LeaseTransactionData] = _root_.scala.None
    def leaseCancel: _root_.scala.Option[com.wavesplatform.protobuf.transaction.LeaseCancelTransactionData] = _root_.scala.None
    def createAlias: _root_.scala.Option[com.wavesplatform.protobuf.transaction.CreateAliasTransactionData] = _root_.scala.None
    def massTransfer: _root_.scala.Option[com.wavesplatform.protobuf.transaction.MassTransferTransactionData] = _root_.scala.None
    def dataTransaction: _root_.scala.Option[com.wavesplatform.protobuf.transaction.DataTransactionData] = _root_.scala.None
    def setScript: _root_.scala.Option[com.wavesplatform.protobuf.transaction.SetScriptTransactionData] = _root_.scala.None
    def sponsorFee: _root_.scala.Option[com.wavesplatform.protobuf.transaction.SponsorFeeTransactionData] = _root_.scala.None
    def setAssetScript: _root_.scala.Option[com.wavesplatform.protobuf.transaction.SetAssetScriptTransactionData] = _root_.scala.None
    def invokeScript: _root_.scala.Option[com.wavesplatform.protobuf.transaction.InvokeScriptTransactionData] = _root_.scala.None
    def updateAssetInfo: _root_.scala.Option[com.wavesplatform.protobuf.transaction.UpdateAssetInfoTransactionData] = _root_.scala.None
    def invokeExpression: _root_.scala.Option[com.wavesplatform.protobuf.transaction.InvokeExpressionTransactionData] = _root_.scala.None
  }
  object Data {
    @SerialVersionUID(0L)
    case object Empty extends com.wavesplatform.protobuf.transaction.Transaction.Data {
      type ValueType = _root_.scala.Nothing
      override def isEmpty: _root_.scala.Boolean = true
      override def isDefined: _root_.scala.Boolean = false
      override def number: _root_.scala.Int = 0
      override def value: _root_.scala.Nothing = throw new java.util.NoSuchElementException("Empty.value")
    }
  
    @SerialVersionUID(0L)
    final case class Genesis(value: com.wavesplatform.protobuf.transaction.GenesisTransactionData) extends com.wavesplatform.protobuf.transaction.Transaction.Data {
      type ValueType = com.wavesplatform.protobuf.transaction.GenesisTransactionData
      override def isGenesis: _root_.scala.Boolean = true
      override def genesis: _root_.scala.Option[com.wavesplatform.protobuf.transaction.GenesisTransactionData] = Some(value)
      override def number: _root_.scala.Int = 101
    }
    @SerialVersionUID(0L)
    final case class Payment(value: com.wavesplatform.protobuf.transaction.PaymentTransactionData) extends com.wavesplatform.protobuf.transaction.Transaction.Data {
      type ValueType = com.wavesplatform.protobuf.transaction.PaymentTransactionData
      override def isPayment: _root_.scala.Boolean = true
      override def payment: _root_.scala.Option[com.wavesplatform.protobuf.transaction.PaymentTransactionData] = Some(value)
      override def number: _root_.scala.Int = 102
    }
    @SerialVersionUID(0L)
    final case class Issue(value: com.wavesplatform.protobuf.transaction.IssueTransactionData) extends com.wavesplatform.protobuf.transaction.Transaction.Data {
      type ValueType = com.wavesplatform.protobuf.transaction.IssueTransactionData
      override def isIssue: _root_.scala.Boolean = true
      override def issue: _root_.scala.Option[com.wavesplatform.protobuf.transaction.IssueTransactionData] = Some(value)
      override def number: _root_.scala.Int = 103
    }
    @SerialVersionUID(0L)
    final case class Transfer(value: com.wavesplatform.protobuf.transaction.TransferTransactionData) extends com.wavesplatform.protobuf.transaction.Transaction.Data {
      type ValueType = com.wavesplatform.protobuf.transaction.TransferTransactionData
      override def isTransfer: _root_.scala.Boolean = true
      override def transfer: _root_.scala.Option[com.wavesplatform.protobuf.transaction.TransferTransactionData] = Some(value)
      override def number: _root_.scala.Int = 104
    }
    @SerialVersionUID(0L)
    final case class Reissue(value: com.wavesplatform.protobuf.transaction.ReissueTransactionData) extends com.wavesplatform.protobuf.transaction.Transaction.Data {
      type ValueType = com.wavesplatform.protobuf.transaction.ReissueTransactionData
      override def isReissue: _root_.scala.Boolean = true
      override def reissue: _root_.scala.Option[com.wavesplatform.protobuf.transaction.ReissueTransactionData] = Some(value)
      override def number: _root_.scala.Int = 105
    }
    @SerialVersionUID(0L)
    final case class Burn(value: com.wavesplatform.protobuf.transaction.BurnTransactionData) extends com.wavesplatform.protobuf.transaction.Transaction.Data {
      type ValueType = com.wavesplatform.protobuf.transaction.BurnTransactionData
      override def isBurn: _root_.scala.Boolean = true
      override def burn: _root_.scala.Option[com.wavesplatform.protobuf.transaction.BurnTransactionData] = Some(value)
      override def number: _root_.scala.Int = 106
    }
    @SerialVersionUID(0L)
    final case class Exchange(value: com.wavesplatform.protobuf.transaction.ExchangeTransactionData) extends com.wavesplatform.protobuf.transaction.Transaction.Data {
      type ValueType = com.wavesplatform.protobuf.transaction.ExchangeTransactionData
      override def isExchange: _root_.scala.Boolean = true
      override def exchange: _root_.scala.Option[com.wavesplatform.protobuf.transaction.ExchangeTransactionData] = Some(value)
      override def number: _root_.scala.Int = 107
    }
    @SerialVersionUID(0L)
    final case class Lease(value: com.wavesplatform.protobuf.transaction.LeaseTransactionData) extends com.wavesplatform.protobuf.transaction.Transaction.Data {
      type ValueType = com.wavesplatform.protobuf.transaction.LeaseTransactionData
      override def isLease: _root_.scala.Boolean = true
      override def lease: _root_.scala.Option[com.wavesplatform.protobuf.transaction.LeaseTransactionData] = Some(value)
      override def number: _root_.scala.Int = 108
    }
    @SerialVersionUID(0L)
    final case class LeaseCancel(value: com.wavesplatform.protobuf.transaction.LeaseCancelTransactionData) extends com.wavesplatform.protobuf.transaction.Transaction.Data {
      type ValueType = com.wavesplatform.protobuf.transaction.LeaseCancelTransactionData
      override def isLeaseCancel: _root_.scala.Boolean = true
      override def leaseCancel: _root_.scala.Option[com.wavesplatform.protobuf.transaction.LeaseCancelTransactionData] = Some(value)
      override def number: _root_.scala.Int = 109
    }
    @SerialVersionUID(0L)
    final case class CreateAlias(value: com.wavesplatform.protobuf.transaction.CreateAliasTransactionData) extends com.wavesplatform.protobuf.transaction.Transaction.Data {
      type ValueType = com.wavesplatform.protobuf.transaction.CreateAliasTransactionData
      override def isCreateAlias: _root_.scala.Boolean = true
      override def createAlias: _root_.scala.Option[com.wavesplatform.protobuf.transaction.CreateAliasTransactionData] = Some(value)
      override def number: _root_.scala.Int = 110
    }
    @SerialVersionUID(0L)
    final case class MassTransfer(value: com.wavesplatform.protobuf.transaction.MassTransferTransactionData) extends com.wavesplatform.protobuf.transaction.Transaction.Data {
      type ValueType = com.wavesplatform.protobuf.transaction.MassTransferTransactionData
      override def isMassTransfer: _root_.scala.Boolean = true
      override def massTransfer: _root_.scala.Option[com.wavesplatform.protobuf.transaction.MassTransferTransactionData] = Some(value)
      override def number: _root_.scala.Int = 111
    }
    @SerialVersionUID(0L)
    final case class DataTransaction(value: com.wavesplatform.protobuf.transaction.DataTransactionData) extends com.wavesplatform.protobuf.transaction.Transaction.Data {
      type ValueType = com.wavesplatform.protobuf.transaction.DataTransactionData
      override def isDataTransaction: _root_.scala.Boolean = true
      override def dataTransaction: _root_.scala.Option[com.wavesplatform.protobuf.transaction.DataTransactionData] = Some(value)
      override def number: _root_.scala.Int = 112
    }
    @SerialVersionUID(0L)
    final case class SetScript(value: com.wavesplatform.protobuf.transaction.SetScriptTransactionData) extends com.wavesplatform.protobuf.transaction.Transaction.Data {
      type ValueType = com.wavesplatform.protobuf.transaction.SetScriptTransactionData
      override def isSetScript: _root_.scala.Boolean = true
      override def setScript: _root_.scala.Option[com.wavesplatform.protobuf.transaction.SetScriptTransactionData] = Some(value)
      override def number: _root_.scala.Int = 113
    }
    @SerialVersionUID(0L)
    final case class SponsorFee(value: com.wavesplatform.protobuf.transaction.SponsorFeeTransactionData) extends com.wavesplatform.protobuf.transaction.Transaction.Data {
      type ValueType = com.wavesplatform.protobuf.transaction.SponsorFeeTransactionData
      override def isSponsorFee: _root_.scala.Boolean = true
      override def sponsorFee: _root_.scala.Option[com.wavesplatform.protobuf.transaction.SponsorFeeTransactionData] = Some(value)
      override def number: _root_.scala.Int = 114
    }
    @SerialVersionUID(0L)
    final case class SetAssetScript(value: com.wavesplatform.protobuf.transaction.SetAssetScriptTransactionData) extends com.wavesplatform.protobuf.transaction.Transaction.Data {
      type ValueType = com.wavesplatform.protobuf.transaction.SetAssetScriptTransactionData
      override def isSetAssetScript: _root_.scala.Boolean = true
      override def setAssetScript: _root_.scala.Option[com.wavesplatform.protobuf.transaction.SetAssetScriptTransactionData] = Some(value)
      override def number: _root_.scala.Int = 115
    }
    @SerialVersionUID(0L)
    final case class InvokeScript(value: com.wavesplatform.protobuf.transaction.InvokeScriptTransactionData) extends com.wavesplatform.protobuf.transaction.Transaction.Data {
      type ValueType = com.wavesplatform.protobuf.transaction.InvokeScriptTransactionData
      override def isInvokeScript: _root_.scala.Boolean = true
      override def invokeScript: _root_.scala.Option[com.wavesplatform.protobuf.transaction.InvokeScriptTransactionData] = Some(value)
      override def number: _root_.scala.Int = 116
    }
    @SerialVersionUID(0L)
    final case class UpdateAssetInfo(value: com.wavesplatform.protobuf.transaction.UpdateAssetInfoTransactionData) extends com.wavesplatform.protobuf.transaction.Transaction.Data {
      type ValueType = com.wavesplatform.protobuf.transaction.UpdateAssetInfoTransactionData
      override def isUpdateAssetInfo: _root_.scala.Boolean = true
      override def updateAssetInfo: _root_.scala.Option[com.wavesplatform.protobuf.transaction.UpdateAssetInfoTransactionData] = Some(value)
      override def number: _root_.scala.Int = 117
    }
    @SerialVersionUID(0L)
    final case class InvokeExpression(value: com.wavesplatform.protobuf.transaction.InvokeExpressionTransactionData) extends com.wavesplatform.protobuf.transaction.Transaction.Data {
      type ValueType = com.wavesplatform.protobuf.transaction.InvokeExpressionTransactionData
      override def isInvokeExpression: _root_.scala.Boolean = true
      override def invokeExpression: _root_.scala.Option[com.wavesplatform.protobuf.transaction.InvokeExpressionTransactionData] = Some(value)
      override def number: _root_.scala.Int = 119
    }
  }
  implicit class TransactionLens[UpperPB](_l: _root_.scalapb.lenses.Lens[UpperPB, com.wavesplatform.protobuf.transaction.Transaction]) extends _root_.scalapb.lenses.ObjectLens[UpperPB, com.wavesplatform.protobuf.transaction.Transaction](_l) {
    def chainId: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Int] = field(_.chainId)((c_, f_) => c_.copy(chainId = f_))
    def senderPublicKey: _root_.scalapb.lenses.Lens[UpperPB, _root_.com.google.protobuf.ByteString] = field(_.senderPublicKey)((c_, f_) => c_.copy(senderPublicKey = f_))
    def fee: _root_.scalapb.lenses.Lens[UpperPB, com.wavesplatform.protobuf.Amount] = field(_.getFee)((c_, f_) => c_.copy(fee = _root_.scala.Option(f_)))
    def optionalFee: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Option[com.wavesplatform.protobuf.Amount]] = field(_.fee)((c_, f_) => c_.copy(fee = f_))
    def timestamp: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Long] = field(_.timestamp)((c_, f_) => c_.copy(timestamp = f_))
    def version: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Int] = field(_.version)((c_, f_) => c_.copy(version = f_))
    def genesis: _root_.scalapb.lenses.Lens[UpperPB, com.wavesplatform.protobuf.transaction.GenesisTransactionData] = field(_.getGenesis)((c_, f_) => c_.copy(data = com.wavesplatform.protobuf.transaction.Transaction.Data.Genesis(f_)))
    def payment: _root_.scalapb.lenses.Lens[UpperPB, com.wavesplatform.protobuf.transaction.PaymentTransactionData] = field(_.getPayment)((c_, f_) => c_.copy(data = com.wavesplatform.protobuf.transaction.Transaction.Data.Payment(f_)))
    def issue: _root_.scalapb.lenses.Lens[UpperPB, com.wavesplatform.protobuf.transaction.IssueTransactionData] = field(_.getIssue)((c_, f_) => c_.copy(data = com.wavesplatform.protobuf.transaction.Transaction.Data.Issue(f_)))
    def transfer: _root_.scalapb.lenses.Lens[UpperPB, com.wavesplatform.protobuf.transaction.TransferTransactionData] = field(_.getTransfer)((c_, f_) => c_.copy(data = com.wavesplatform.protobuf.transaction.Transaction.Data.Transfer(f_)))
    def reissue: _root_.scalapb.lenses.Lens[UpperPB, com.wavesplatform.protobuf.transaction.ReissueTransactionData] = field(_.getReissue)((c_, f_) => c_.copy(data = com.wavesplatform.protobuf.transaction.Transaction.Data.Reissue(f_)))
    def burn: _root_.scalapb.lenses.Lens[UpperPB, com.wavesplatform.protobuf.transaction.BurnTransactionData] = field(_.getBurn)((c_, f_) => c_.copy(data = com.wavesplatform.protobuf.transaction.Transaction.Data.Burn(f_)))
    def exchange: _root_.scalapb.lenses.Lens[UpperPB, com.wavesplatform.protobuf.transaction.ExchangeTransactionData] = field(_.getExchange)((c_, f_) => c_.copy(data = com.wavesplatform.protobuf.transaction.Transaction.Data.Exchange(f_)))
    def lease: _root_.scalapb.lenses.Lens[UpperPB, com.wavesplatform.protobuf.transaction.LeaseTransactionData] = field(_.getLease)((c_, f_) => c_.copy(data = com.wavesplatform.protobuf.transaction.Transaction.Data.Lease(f_)))
    def leaseCancel: _root_.scalapb.lenses.Lens[UpperPB, com.wavesplatform.protobuf.transaction.LeaseCancelTransactionData] = field(_.getLeaseCancel)((c_, f_) => c_.copy(data = com.wavesplatform.protobuf.transaction.Transaction.Data.LeaseCancel(f_)))
    def createAlias: _root_.scalapb.lenses.Lens[UpperPB, com.wavesplatform.protobuf.transaction.CreateAliasTransactionData] = field(_.getCreateAlias)((c_, f_) => c_.copy(data = com.wavesplatform.protobuf.transaction.Transaction.Data.CreateAlias(f_)))
    def massTransfer: _root_.scalapb.lenses.Lens[UpperPB, com.wavesplatform.protobuf.transaction.MassTransferTransactionData] = field(_.getMassTransfer)((c_, f_) => c_.copy(data = com.wavesplatform.protobuf.transaction.Transaction.Data.MassTransfer(f_)))
    def dataTransaction: _root_.scalapb.lenses.Lens[UpperPB, com.wavesplatform.protobuf.transaction.DataTransactionData] = field(_.getDataTransaction)((c_, f_) => c_.copy(data = com.wavesplatform.protobuf.transaction.Transaction.Data.DataTransaction(f_)))
    def setScript: _root_.scalapb.lenses.Lens[UpperPB, com.wavesplatform.protobuf.transaction.SetScriptTransactionData] = field(_.getSetScript)((c_, f_) => c_.copy(data = com.wavesplatform.protobuf.transaction.Transaction.Data.SetScript(f_)))
    def sponsorFee: _root_.scalapb.lenses.Lens[UpperPB, com.wavesplatform.protobuf.transaction.SponsorFeeTransactionData] = field(_.getSponsorFee)((c_, f_) => c_.copy(data = com.wavesplatform.protobuf.transaction.Transaction.Data.SponsorFee(f_)))
    def setAssetScript: _root_.scalapb.lenses.Lens[UpperPB, com.wavesplatform.protobuf.transaction.SetAssetScriptTransactionData] = field(_.getSetAssetScript)((c_, f_) => c_.copy(data = com.wavesplatform.protobuf.transaction.Transaction.Data.SetAssetScript(f_)))
    def invokeScript: _root_.scalapb.lenses.Lens[UpperPB, com.wavesplatform.protobuf.transaction.InvokeScriptTransactionData] = field(_.getInvokeScript)((c_, f_) => c_.copy(data = com.wavesplatform.protobuf.transaction.Transaction.Data.InvokeScript(f_)))
    def updateAssetInfo: _root_.scalapb.lenses.Lens[UpperPB, com.wavesplatform.protobuf.transaction.UpdateAssetInfoTransactionData] = field(_.getUpdateAssetInfo)((c_, f_) => c_.copy(data = com.wavesplatform.protobuf.transaction.Transaction.Data.UpdateAssetInfo(f_)))
    def invokeExpression: _root_.scalapb.lenses.Lens[UpperPB, com.wavesplatform.protobuf.transaction.InvokeExpressionTransactionData] = field(_.getInvokeExpression)((c_, f_) => c_.copy(data = com.wavesplatform.protobuf.transaction.Transaction.Data.InvokeExpression(f_)))
    def data: _root_.scalapb.lenses.Lens[UpperPB, com.wavesplatform.protobuf.transaction.Transaction.Data] = field(_.data)((c_, f_) => c_.copy(data = f_))
  }
  final val CHAIN_ID_FIELD_NUMBER = 1
  final val SENDER_PUBLIC_KEY_FIELD_NUMBER = 2
  final val FEE_FIELD_NUMBER = 3
  final val TIMESTAMP_FIELD_NUMBER = 4
  final val VERSION_FIELD_NUMBER = 5
  final val GENESIS_FIELD_NUMBER = 101
  final val PAYMENT_FIELD_NUMBER = 102
  final val ISSUE_FIELD_NUMBER = 103
  final val TRANSFER_FIELD_NUMBER = 104
  final val REISSUE_FIELD_NUMBER = 105
  final val BURN_FIELD_NUMBER = 106
  final val EXCHANGE_FIELD_NUMBER = 107
  final val LEASE_FIELD_NUMBER = 108
  final val LEASE_CANCEL_FIELD_NUMBER = 109
  final val CREATE_ALIAS_FIELD_NUMBER = 110
  final val MASS_TRANSFER_FIELD_NUMBER = 111
  final val DATA_TRANSACTION_FIELD_NUMBER = 112
  final val SET_SCRIPT_FIELD_NUMBER = 113
  final val SPONSOR_FEE_FIELD_NUMBER = 114
  final val SET_ASSET_SCRIPT_FIELD_NUMBER = 115
  final val INVOKE_SCRIPT_FIELD_NUMBER = 116
  final val UPDATE_ASSET_INFO_FIELD_NUMBER = 117
  final val INVOKE_EXPRESSION_FIELD_NUMBER = 119
  def of(
    chainId: _root_.scala.Int,
    senderPublicKey: _root_.com.google.protobuf.ByteString,
    fee: _root_.scala.Option[com.wavesplatform.protobuf.Amount],
    timestamp: _root_.scala.Long,
    version: _root_.scala.Int,
    data: com.wavesplatform.protobuf.transaction.Transaction.Data
  ): _root_.com.wavesplatform.protobuf.transaction.Transaction = _root_.com.wavesplatform.protobuf.transaction.Transaction(
    chainId,
    senderPublicKey,
    fee,
    timestamp,
    version,
    data
  )
  // @@protoc_insertion_point(GeneratedMessageCompanion[waves.Transaction])
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy