toOperationBody method Null safety

  1. @override
XdrOperationBody toOperationBody()
override

Generates OperationBody XDR object.

Implementation

@override
XdrOperationBody toOperationBody() {
  XdrHostFunction xdrHostFunction =
      XdrHostFunction(XdrHostFunctionType.HOST_FUNCTION_TYPE_CREATE_CONTRACT);
  XdrContractID contractId =
      XdrContractID(XdrContractIDType.CONTRACT_ID_FROM_ASSET);
  contractId.asset = this._asset.toXdr();

  XdrSCContractCode code =
      XdrSCContractCode(XdrSCContractCodeType.SCCONTRACT_CODE_TOKEN);

  xdrHostFunction.createContractArgs =
      XdrCreateContractArgs(contractId, code);

  XdrOperationBody body =
      XdrOperationBody(XdrOperationType.INVOKE_HOST_FUNCTION);
  body.invokeHostFunctionOp = XdrInvokeHostFunctionOp(
      xdrHostFunction, getXdrFootprint(), contractAuth);
  return body;
}