@@ -203,11 +203,11 @@ abstract class InvokeHostFunctionOperation extends Operation {
203
203
op.function.createContractArgs! .contractID.discriminant ==
204
204
XdrContractIDType .CONTRACT_ID_FROM_SOURCE_ACCOUNT ) {
205
205
if (op.function.createContractArgs! .source.discriminant ==
206
- XdrSCContractCodeType . SCCONTRACT_CODE_WASM_REF ) {
206
+ XdrSCContractExecutableType . SCCONTRACT_EXECUTABLE_WASM_REF ) {
207
207
// use builder of create contract op
208
208
return CreateContractOp .builder (op);
209
209
} else if (op.function.createContractArgs! .source.discriminant ==
210
- XdrSCContractCodeType . SCCONTRACT_CODE_TOKEN ) {
210
+ XdrSCContractExecutableType . SCCONTRACT_EXECUTABLE_TOKEN ) {
211
211
// use builder of deploy stellar asset contract with account op
212
212
return DeploySACWithSourceAccountOp .builder (op);
213
213
}
@@ -254,10 +254,7 @@ class InvokeContractOp extends InvokeHostFunctionOperation {
254
254
List <XdrSCVal > invokeArgsList = List <XdrSCVal >.empty (growable: true );
255
255
256
256
// contract id
257
- XdrSCVal contractIDScVal = XdrSCVal (XdrSCValType .SCV_OBJECT );
258
- XdrSCObject contractIDSCObject = XdrSCObject (XdrSCObjectType .SCO_BYTES );
259
- contractIDSCObject.bin = XdrDataValue (Util .hexToBytes (this ._contractID));
260
- contractIDScVal.obj = contractIDSCObject;
257
+ XdrSCVal contractIDScVal = XdrSCVal .forBytes (Util .hexToBytes (this ._contractID));
261
258
invokeArgsList.add (contractIDScVal);
262
259
263
260
// function name
@@ -292,19 +289,14 @@ class InvokeContractOp extends InvokeHostFunctionOperation {
292
289
293
290
List <XdrSCVal > invokeArgsList = xdrHostFunction.invokeArgs! ;
294
291
if (invokeArgsList.length < 2 ||
295
- invokeArgsList.elementAt (0 ).discriminant != XdrSCValType .SCV_OBJECT ||
296
- invokeArgsList.elementAt (0 ).obj == null ||
292
+ invokeArgsList.elementAt (0 ).discriminant != XdrSCValType .SCV_BYTES ||
293
+ invokeArgsList.elementAt (0 ).bytes == null ||
297
294
invokeArgsList.elementAt (1 ).discriminant != XdrSCValType .SCV_SYMBOL ||
298
295
invokeArgsList.elementAt (1 ).sym == null ) {
299
296
throw new Exception ("invalid argument" );
300
297
}
301
298
302
- XdrSCObject contractIDSCObject = invokeArgsList.elementAt (0 ).obj! ;
303
- if (contractIDSCObject.discriminant != XdrSCObjectType .SCO_BYTES ||
304
- contractIDSCObject.bin == null ) {
305
- throw new Exception ("invalid argument" );
306
- }
307
- String contractID = Util .bytesToHex (contractIDSCObject.bin! .dataValue);
299
+ String contractID = Util .bytesToHex (invokeArgsList.elementAt (0 ).bytes! .dataValue);
308
300
String functionName = invokeArgsList.elementAt (1 ).sym! ;
309
301
310
302
List <XdrSCVal >? funcArgs;
@@ -387,8 +379,8 @@ class CreateContractOp extends InvokeHostFunctionOperation {
387
379
XdrContractID (XdrContractIDType .CONTRACT_ID_FROM_SOURCE_ACCOUNT );
388
380
contractId.salt = this ._salt;
389
381
390
- XdrSCContractCode code =
391
- XdrSCContractCode ( XdrSCContractCodeType . SCCONTRACT_CODE_WASM_REF );
382
+ XdrSCContractExecutable code =
383
+ XdrSCContractExecutable ( XdrSCContractExecutableType . SCCONTRACT_EXECUTABLE_WASM_REF );
392
384
code.wasmId = XdrHash (Util .hexToBytes (wasmId));
393
385
394
386
xdrHostFunction.createContractArgs =
@@ -409,7 +401,7 @@ class CreateContractOp extends InvokeHostFunctionOperation {
409
401
xdrHostFunction.createContractArgs! .contractID.discriminant !=
410
402
XdrContractIDType .CONTRACT_ID_FROM_SOURCE_ACCOUNT ||
411
403
xdrHostFunction.createContractArgs! .source.discriminant !=
412
- XdrSCContractCodeType . SCCONTRACT_CODE_WASM_REF ||
404
+ XdrSCContractExecutableType . SCCONTRACT_EXECUTABLE_WASM_REF ||
413
405
xdrHostFunction.createContractArgs! .source.wasmId == null ) {
414
406
throw new Exception ("invalid argument" );
415
407
}
@@ -450,8 +442,8 @@ class DeploySACWithSourceAccountOp extends InvokeHostFunctionOperation {
450
442
XdrContractID (XdrContractIDType .CONTRACT_ID_FROM_SOURCE_ACCOUNT );
451
443
contractId.salt = this ._salt;
452
444
453
- XdrSCContractCode code =
454
- XdrSCContractCode ( XdrSCContractCodeType . SCCONTRACT_CODE_TOKEN );
445
+ XdrSCContractExecutable code =
446
+ XdrSCContractExecutable ( XdrSCContractExecutableType . SCCONTRACT_EXECUTABLE_TOKEN );
455
447
456
448
xdrHostFunction.createContractArgs =
457
449
XdrCreateContractArgs (contractId, code);
@@ -471,7 +463,7 @@ class DeploySACWithSourceAccountOp extends InvokeHostFunctionOperation {
471
463
xdrHostFunction.createContractArgs! .contractID.discriminant !=
472
464
XdrContractIDType .CONTRACT_ID_FROM_SOURCE_ACCOUNT ||
473
465
xdrHostFunction.createContractArgs! .source.discriminant !=
474
- XdrSCContractCodeType . SCCONTRACT_CODE_TOKEN ) {
466
+ XdrSCContractExecutableType . SCCONTRACT_EXECUTABLE_TOKEN ) {
475
467
throw new Exception ("invalid argument" );
476
468
}
477
469
@@ -498,8 +490,8 @@ class DeploySACWithAssetOp extends InvokeHostFunctionOperation {
498
490
XdrContractID (XdrContractIDType .CONTRACT_ID_FROM_ASSET );
499
491
contractId.asset = this ._asset.toXdr ();
500
492
501
- XdrSCContractCode code =
502
- XdrSCContractCode ( XdrSCContractCodeType . SCCONTRACT_CODE_TOKEN );
493
+ XdrSCContractExecutable code =
494
+ XdrSCContractExecutable ( XdrSCContractExecutableType . SCCONTRACT_EXECUTABLE_TOKEN );
503
495
504
496
xdrHostFunction.createContractArgs =
505
497
XdrCreateContractArgs (contractId, code);
@@ -520,7 +512,7 @@ class DeploySACWithAssetOp extends InvokeHostFunctionOperation {
520
512
XdrContractIDType .CONTRACT_ID_FROM_ASSET ||
521
513
xdrHostFunction.createContractArgs! .contractID.asset == null ||
522
514
xdrHostFunction.createContractArgs! .source.discriminant !=
523
- XdrSCContractCodeType . SCCONTRACT_CODE_TOKEN ) {
515
+ XdrSCContractExecutableType . SCCONTRACT_EXECUTABLE_TOKEN ) {
524
516
throw new Exception ("invalid argument" );
525
517
}
526
518
0 commit comments