fromEnvelopeXdr method Null safety

AbstractTransaction fromEnvelopeXdr(
  1. XdrTransactionEnvelope envelope
)

Implementation

static AbstractTransaction fromEnvelopeXdr(XdrTransactionEnvelope envelope) {
  switch (envelope.discriminant) {
    case XdrEnvelopeType.ENVELOPE_TYPE_TX:
      return Transaction.fromV1EnvelopeXdr(envelope.v1!);
    case XdrEnvelopeType.ENVELOPE_TYPE_TX_V0:
      return Transaction.fromV0EnvelopeXdr(envelope.v0!);
    case XdrEnvelopeType.ENVELOPE_TYPE_TX_FEE_BUMP:
      return FeeBumpTransaction.fromFeeBumpTransactionEnvelope(
          envelope.feeBump!);
    default:
      throw Exception("transaction type is not supported: " +
          envelope.discriminant.value);
  }
}