From d18dca6a6b4553b79c6b487a1b3a1faec1b425a2 Mon Sep 17 00:00:00 2001 From: Kirbyrawr Date: Sun, 13 Dec 2020 14:11:24 +0100 Subject: [PATCH 1/3] Added missing BeginSponsoringFutureReservesResult and tests --- ...BeginSponsoringFutureReservesResultTest.cs | 63 +++++++++++++++++++ ...ponsoringFutureReservesAlreadySponsored.cs | 10 +++ .../BeginSponsoringFutureReservesMalformed.cs | 10 +++ .../BeginSponsoringFutureReservesRecursive.cs | 10 +++ .../BeginSponsoringFutureReservesResult.cs | 24 +++++++ .../BeginSponsoringFutureReservesSuccess.cs | 10 +++ .../responses/results/OperationResult.cs | 2 + 7 files changed, 129 insertions(+) create mode 100644 stellar-dotnet-sdk-test/responses/results/BeginSponsoringFutureReservesResultTest.cs create mode 100644 stellar-dotnet-sdk/responses/results/BeginSponsoringFutureReservesAlreadySponsored.cs create mode 100644 stellar-dotnet-sdk/responses/results/BeginSponsoringFutureReservesMalformed.cs create mode 100644 stellar-dotnet-sdk/responses/results/BeginSponsoringFutureReservesRecursive.cs create mode 100644 stellar-dotnet-sdk/responses/results/BeginSponsoringFutureReservesResult.cs create mode 100644 stellar-dotnet-sdk/responses/results/BeginSponsoringFutureReservesSuccess.cs diff --git a/stellar-dotnet-sdk-test/responses/results/BeginSponsoringFutureReservesResultTest.cs b/stellar-dotnet-sdk-test/responses/results/BeginSponsoringFutureReservesResultTest.cs new file mode 100644 index 000000000..22d0ba5d6 --- /dev/null +++ b/stellar-dotnet-sdk-test/responses/results/BeginSponsoringFutureReservesResultTest.cs @@ -0,0 +1,63 @@ +using Microsoft.VisualStudio.TestTools.UnitTesting; +using stellar_dotnet_sdk.responses.results; +using XDR = stellar_dotnet_sdk.xdr; + +namespace stellar_dotnet_sdk_test.responses.results +{ + [TestClass] + public class BeginSponsoringFutureReservesResultTest + { + [TestMethod] + public void TestAlreadySponsored() + { + var operationResultTr = new XDR.OperationResult.OperationResultTr(); + operationResultTr.Discriminant.InnerValue = XDR.OperationType.OperationTypeEnum.BEGIN_SPONSORING_FUTURE_RESERVES; + + var result = new XDR.BeginSponsoringFutureReservesResult(); + result.Discriminant.InnerValue = XDR.BeginSponsoringFutureReservesResultCode.BeginSponsoringFutureReservesResultCodeEnum.BEGIN_SPONSORING_FUTURE_RESERVES_ALREADY_SPONSORED; + operationResultTr.BeginSponsoringFutureReservesResult = result; + + Util.AssertResultOfType(Util.CreateTransactionResultXDR(operationResultTr), typeof(BeginSponsoringFutureReservesAlreadySponsored), false); + } + + [TestMethod] + public void TestMalformed() + { + var operationResultTr = new XDR.OperationResult.OperationResultTr(); + operationResultTr.Discriminant.InnerValue = XDR.OperationType.OperationTypeEnum.BEGIN_SPONSORING_FUTURE_RESERVES; + + var result = new XDR.BeginSponsoringFutureReservesResult(); + result.Discriminant.InnerValue = XDR.BeginSponsoringFutureReservesResultCode.BeginSponsoringFutureReservesResultCodeEnum.BEGIN_SPONSORING_FUTURE_RESERVES_MALFORMED; + operationResultTr.BeginSponsoringFutureReservesResult = result; + + Util.AssertResultOfType(Util.CreateTransactionResultXDR(operationResultTr), typeof(BeginSponsoringFutureReservesMalformed), false); + } + + [TestMethod] + public void TestRecursive() + { + var operationResultTr = new XDR.OperationResult.OperationResultTr(); + operationResultTr.Discriminant.InnerValue = XDR.OperationType.OperationTypeEnum.BEGIN_SPONSORING_FUTURE_RESERVES; + + var result = new XDR.BeginSponsoringFutureReservesResult(); + result.Discriminant.InnerValue = XDR.BeginSponsoringFutureReservesResultCode.BeginSponsoringFutureReservesResultCodeEnum.BEGIN_SPONSORING_FUTURE_RESERVES_RECURSIVE; + operationResultTr.BeginSponsoringFutureReservesResult = result; + + Util.AssertResultOfType(Util.CreateTransactionResultXDR(operationResultTr), typeof(BeginSponsoringFutureReservesRecursive), false); + } + + [TestMethod] + public void TestSuccess() + { + var operationResultTr = new XDR.OperationResult.OperationResultTr(); + operationResultTr.Discriminant.InnerValue = XDR.OperationType.OperationTypeEnum.BEGIN_SPONSORING_FUTURE_RESERVES; + + var result = new XDR.BeginSponsoringFutureReservesResult(); + result.Discriminant.InnerValue = XDR.BeginSponsoringFutureReservesResultCode.BeginSponsoringFutureReservesResultCodeEnum.BEGIN_SPONSORING_FUTURE_RESERVES_SUCCESS; + operationResultTr.BeginSponsoringFutureReservesResult = result; + + Util.AssertResultOfType(Util.CreateTransactionResultXDR(operationResultTr), typeof(BeginSponsoringFutureReservesSuccess), true); + + } + } +} diff --git a/stellar-dotnet-sdk/responses/results/BeginSponsoringFutureReservesAlreadySponsored.cs b/stellar-dotnet-sdk/responses/results/BeginSponsoringFutureReservesAlreadySponsored.cs new file mode 100644 index 000000000..9a3e88cdd --- /dev/null +++ b/stellar-dotnet-sdk/responses/results/BeginSponsoringFutureReservesAlreadySponsored.cs @@ -0,0 +1,10 @@ +namespace stellar_dotnet_sdk.responses.results +{ + /// + /// Already sponsored + /// + public class BeginSponsoringFutureReservesAlreadySponsored : BeginSponsoringFutureReservesResult + { + + } +} diff --git a/stellar-dotnet-sdk/responses/results/BeginSponsoringFutureReservesMalformed.cs b/stellar-dotnet-sdk/responses/results/BeginSponsoringFutureReservesMalformed.cs new file mode 100644 index 000000000..97fa4d37f --- /dev/null +++ b/stellar-dotnet-sdk/responses/results/BeginSponsoringFutureReservesMalformed.cs @@ -0,0 +1,10 @@ +namespace stellar_dotnet_sdk.responses.results +{ + /// + /// The operation is malformed. + /// + public class BeginSponsoringFutureReservesMalformed : BeginSponsoringFutureReservesResult + { + + } +} diff --git a/stellar-dotnet-sdk/responses/results/BeginSponsoringFutureReservesRecursive.cs b/stellar-dotnet-sdk/responses/results/BeginSponsoringFutureReservesRecursive.cs new file mode 100644 index 000000000..01043d7e2 --- /dev/null +++ b/stellar-dotnet-sdk/responses/results/BeginSponsoringFutureReservesRecursive.cs @@ -0,0 +1,10 @@ +namespace stellar_dotnet_sdk.responses.results +{ + /// + /// The operation is recursive. + /// + public class BeginSponsoringFutureReservesRecursive : BeginSponsoringFutureReservesResult + { + + } +} diff --git a/stellar-dotnet-sdk/responses/results/BeginSponsoringFutureReservesResult.cs b/stellar-dotnet-sdk/responses/results/BeginSponsoringFutureReservesResult.cs new file mode 100644 index 000000000..c1dc1add9 --- /dev/null +++ b/stellar-dotnet-sdk/responses/results/BeginSponsoringFutureReservesResult.cs @@ -0,0 +1,24 @@ +using System; + +namespace stellar_dotnet_sdk.responses.results +{ + public class BeginSponsoringFutureReservesResult : OperationResult + { + public static BeginSponsoringFutureReservesResult FromXdr(xdr.BeginSponsoringFutureReservesResult result) + { + switch (result.Discriminant.InnerValue) + { + case xdr.BeginSponsoringFutureReservesResultCode.BeginSponsoringFutureReservesResultCodeEnum.BEGIN_SPONSORING_FUTURE_RESERVES_ALREADY_SPONSORED: + return new BeginSponsoringFutureReservesAlreadySponsored(); + case xdr.BeginSponsoringFutureReservesResultCode.BeginSponsoringFutureReservesResultCodeEnum.BEGIN_SPONSORING_FUTURE_RESERVES_MALFORMED: + return new BeginSponsoringFutureReservesMalformed(); + case xdr.BeginSponsoringFutureReservesResultCode.BeginSponsoringFutureReservesResultCodeEnum.BEGIN_SPONSORING_FUTURE_RESERVES_RECURSIVE: + return new BeginSponsoringFutureReservesRecursive(); + case xdr.BeginSponsoringFutureReservesResultCode.BeginSponsoringFutureReservesResultCodeEnum.BEGIN_SPONSORING_FUTURE_RESERVES_SUCCESS: + return new BeginSponsoringFutureReservesSuccess(); + default: + throw new SystemException("Unknown BeginSponsoringFutureReserves type"); + } + } + } +} diff --git a/stellar-dotnet-sdk/responses/results/BeginSponsoringFutureReservesSuccess.cs b/stellar-dotnet-sdk/responses/results/BeginSponsoringFutureReservesSuccess.cs new file mode 100644 index 000000000..b7b337f52 --- /dev/null +++ b/stellar-dotnet-sdk/responses/results/BeginSponsoringFutureReservesSuccess.cs @@ -0,0 +1,10 @@ +namespace stellar_dotnet_sdk.responses.results +{ + /// + /// The operation is successful. + /// + public class BeginSponsoringFutureReservesSuccess : BeginSponsoringFutureReservesResult + { + public override bool IsSuccess => true; + } +} diff --git a/stellar-dotnet-sdk/responses/results/OperationResult.cs b/stellar-dotnet-sdk/responses/results/OperationResult.cs index 179da125b..b949cbc51 100644 --- a/stellar-dotnet-sdk/responses/results/OperationResult.cs +++ b/stellar-dotnet-sdk/responses/results/OperationResult.cs @@ -62,6 +62,8 @@ private static OperationResult InnerOperationResultFromXdr(xdr.OperationResult.O return CreateClaimableBalanceResult.FromXdr(result.CreateClaimableBalanceResult); case xdr.OperationType.OperationTypeEnum.CLAIM_CLAIMABLE_BALANCE: return ClaimClaimableBalanceResult.FromXdr(result.ClaimClaimableBalanceResult); + case xdr.OperationType.OperationTypeEnum.BEGIN_SPONSORING_FUTURE_RESERVES: + return BeginSponsoringFutureReservesResult.FromXdr(result.BeginSponsoringFutureReservesResult); default: throw new SystemException("Unknown OperationType"); } From 807d1602e1861537b42a973c4933c3a61ddf7180 Mon Sep 17 00:00:00 2001 From: Kirbyrawr Date: Sun, 13 Dec 2020 14:28:01 +0100 Subject: [PATCH 2/3] Added missing EndSponsoringFutureReservesResult and tests --- .../EndSponsoringFutureReservesResultTest.cs | 36 +++++++++++++++++++ ...EndSponsoringFutureReservesNotSponsored.cs | 10 ++++++ .../EndSponsoringFutureReservesResult.cs | 20 +++++++++++ .../EndSponsoringFutureReservesSuccess.cs | 10 ++++++ .../responses/results/OperationResult.cs | 2 ++ 5 files changed, 78 insertions(+) create mode 100644 stellar-dotnet-sdk-test/responses/results/EndSponsoringFutureReservesResultTest.cs create mode 100644 stellar-dotnet-sdk/responses/results/EndSponsoringFutureReservesNotSponsored.cs create mode 100644 stellar-dotnet-sdk/responses/results/EndSponsoringFutureReservesResult.cs create mode 100644 stellar-dotnet-sdk/responses/results/EndSponsoringFutureReservesSuccess.cs diff --git a/stellar-dotnet-sdk-test/responses/results/EndSponsoringFutureReservesResultTest.cs b/stellar-dotnet-sdk-test/responses/results/EndSponsoringFutureReservesResultTest.cs new file mode 100644 index 000000000..d8431b96d --- /dev/null +++ b/stellar-dotnet-sdk-test/responses/results/EndSponsoringFutureReservesResultTest.cs @@ -0,0 +1,36 @@ +using Microsoft.VisualStudio.TestTools.UnitTesting; +using stellar_dotnet_sdk.responses.results; +using XDR = stellar_dotnet_sdk.xdr; + +namespace stellar_dotnet_sdk_test.responses.results +{ + [TestClass] + public class EndSponsoringFutureReservesResultTest + { + [TestMethod] + public void TestNotSponsored() + { + var operationResultTr = new XDR.OperationResult.OperationResultTr(); + operationResultTr.Discriminant.InnerValue = XDR.OperationType.OperationTypeEnum.END_SPONSORING_FUTURE_RESERVES; + + var result = new XDR.EndSponsoringFutureReservesResult(); + result.Discriminant.InnerValue = XDR.EndSponsoringFutureReservesResultCode.EndSponsoringFutureReservesResultCodeEnum.END_SPONSORING_FUTURE_RESERVES_NOT_SPONSORED; + operationResultTr.EndSponsoringFutureReservesResult = result; + + Util.AssertResultOfType(Util.CreateTransactionResultXDR(operationResultTr), typeof(EndSponsoringFutureReservesNotSponsored), false); + } + + [TestMethod] + public void TestSuccess() + { + var operationResultTr = new XDR.OperationResult.OperationResultTr(); + operationResultTr.Discriminant.InnerValue = XDR.OperationType.OperationTypeEnum.END_SPONSORING_FUTURE_RESERVES; + + var result = new XDR.EndSponsoringFutureReservesResult(); + result.Discriminant.InnerValue = XDR.EndSponsoringFutureReservesResultCode.EndSponsoringFutureReservesResultCodeEnum.END_SPONSORING_FUTURE_RESERVES_SUCCESS; + operationResultTr.EndSponsoringFutureReservesResult = result; + + Util.AssertResultOfType(Util.CreateTransactionResultXDR(operationResultTr), typeof(EndSponsoringFutureReservesSuccess), true); + } + } +} diff --git a/stellar-dotnet-sdk/responses/results/EndSponsoringFutureReservesNotSponsored.cs b/stellar-dotnet-sdk/responses/results/EndSponsoringFutureReservesNotSponsored.cs new file mode 100644 index 000000000..8a5c1c2d4 --- /dev/null +++ b/stellar-dotnet-sdk/responses/results/EndSponsoringFutureReservesNotSponsored.cs @@ -0,0 +1,10 @@ +namespace stellar_dotnet_sdk.responses.results +{ + /// + /// Not sponsored + /// + public class EndSponsoringFutureReservesNotSponsored : EndSponsoringFutureReservesResult + { + + } +} diff --git a/stellar-dotnet-sdk/responses/results/EndSponsoringFutureReservesResult.cs b/stellar-dotnet-sdk/responses/results/EndSponsoringFutureReservesResult.cs new file mode 100644 index 000000000..043af5287 --- /dev/null +++ b/stellar-dotnet-sdk/responses/results/EndSponsoringFutureReservesResult.cs @@ -0,0 +1,20 @@ +using System; + +namespace stellar_dotnet_sdk.responses.results +{ + public class EndSponsoringFutureReservesResult : OperationResult + { + public static EndSponsoringFutureReservesResult FromXdr(xdr.EndSponsoringFutureReservesResult result) + { + switch (result.Discriminant.InnerValue) + { + case xdr.EndSponsoringFutureReservesResultCode.EndSponsoringFutureReservesResultCodeEnum.END_SPONSORING_FUTURE_RESERVES_NOT_SPONSORED: + return new EndSponsoringFutureReservesNotSponsored(); + case xdr.EndSponsoringFutureReservesResultCode.EndSponsoringFutureReservesResultCodeEnum.END_SPONSORING_FUTURE_RESERVES_SUCCESS: + return new EndSponsoringFutureReservesSuccess(); + default: + throw new SystemException("Unknown EndSponsoringFutureReserves type"); + } + } + } +} diff --git a/stellar-dotnet-sdk/responses/results/EndSponsoringFutureReservesSuccess.cs b/stellar-dotnet-sdk/responses/results/EndSponsoringFutureReservesSuccess.cs new file mode 100644 index 000000000..7bf981978 --- /dev/null +++ b/stellar-dotnet-sdk/responses/results/EndSponsoringFutureReservesSuccess.cs @@ -0,0 +1,10 @@ +namespace stellar_dotnet_sdk.responses.results +{ + /// + /// Success + /// + public class EndSponsoringFutureReservesSuccess : EndSponsoringFutureReservesResult + { + public override bool IsSuccess => true; + } +} diff --git a/stellar-dotnet-sdk/responses/results/OperationResult.cs b/stellar-dotnet-sdk/responses/results/OperationResult.cs index b949cbc51..43496220f 100644 --- a/stellar-dotnet-sdk/responses/results/OperationResult.cs +++ b/stellar-dotnet-sdk/responses/results/OperationResult.cs @@ -64,6 +64,8 @@ private static OperationResult InnerOperationResultFromXdr(xdr.OperationResult.O return ClaimClaimableBalanceResult.FromXdr(result.ClaimClaimableBalanceResult); case xdr.OperationType.OperationTypeEnum.BEGIN_SPONSORING_FUTURE_RESERVES: return BeginSponsoringFutureReservesResult.FromXdr(result.BeginSponsoringFutureReservesResult); + case xdr.OperationType.OperationTypeEnum.END_SPONSORING_FUTURE_RESERVES: + return EndSponsoringFutureReservesResult.FromXdr(result.EndSponsoringFutureReservesResult); default: throw new SystemException("Unknown OperationType"); } From 4f0c710f713063c9aca1fcaa943202dd2dccee6a Mon Sep 17 00:00:00 2001 From: Kirbyrawr Date: Sun, 13 Dec 2020 14:47:23 +0100 Subject: [PATCH 3/3] Added missing RevokeSponsorshipResult and tests --- .../results/RevokeSponsorshipResultTest.cs | 75 +++++++++++++++++++ .../responses/results/OperationResult.cs | 2 + .../results/RevokeSponsorshipDoesNotExist.cs | 10 +++ .../results/RevokeSponsorshipLowReserve.cs | 10 +++ .../results/RevokeSponsorshipNotSponsor.cs | 10 +++ .../RevokeSponsorshipOnlyTransferable.cs | 10 +++ .../results/RevokeSponsorshipResult.cs | 26 +++++++ .../results/RevokeSponsorshipSuccess.cs | 10 +++ 8 files changed, 153 insertions(+) create mode 100644 stellar-dotnet-sdk-test/responses/results/RevokeSponsorshipResultTest.cs create mode 100644 stellar-dotnet-sdk/responses/results/RevokeSponsorshipDoesNotExist.cs create mode 100644 stellar-dotnet-sdk/responses/results/RevokeSponsorshipLowReserve.cs create mode 100644 stellar-dotnet-sdk/responses/results/RevokeSponsorshipNotSponsor.cs create mode 100644 stellar-dotnet-sdk/responses/results/RevokeSponsorshipOnlyTransferable.cs create mode 100644 stellar-dotnet-sdk/responses/results/RevokeSponsorshipResult.cs create mode 100644 stellar-dotnet-sdk/responses/results/RevokeSponsorshipSuccess.cs diff --git a/stellar-dotnet-sdk-test/responses/results/RevokeSponsorshipResultTest.cs b/stellar-dotnet-sdk-test/responses/results/RevokeSponsorshipResultTest.cs new file mode 100644 index 000000000..7a663de11 --- /dev/null +++ b/stellar-dotnet-sdk-test/responses/results/RevokeSponsorshipResultTest.cs @@ -0,0 +1,75 @@ +using Microsoft.VisualStudio.TestTools.UnitTesting; +using stellar_dotnet_sdk.responses.results; +using XDR = stellar_dotnet_sdk.xdr; + +namespace stellar_dotnet_sdk_test.responses.results +{ + [TestClass] + public class RevokeSponsorshipResultTest + { + [TestMethod] + public void TestDoesNotExist() + { + var operationResultTr = new XDR.OperationResult.OperationResultTr(); + operationResultTr.Discriminant.InnerValue = XDR.OperationType.OperationTypeEnum.REVOKE_SPONSORSHIP; + + var result = new XDR.RevokeSponsorshipResult(); + result.Discriminant.InnerValue = XDR.RevokeSponsorshipResultCode.RevokeSponsorshipResultCodeEnum.REVOKE_SPONSORSHIP_DOES_NOT_EXIST; + operationResultTr.RevokeSponsorshipResult = result; + + Util.AssertResultOfType(Util.CreateTransactionResultXDR(operationResultTr), typeof(RevokeSponsorshipDoesNotExist), false); + } + + [TestMethod] + public void TestLowReserve() + { + var operationResultTr = new XDR.OperationResult.OperationResultTr(); + operationResultTr.Discriminant.InnerValue = XDR.OperationType.OperationTypeEnum.REVOKE_SPONSORSHIP; + + var result = new XDR.RevokeSponsorshipResult(); + result.Discriminant.InnerValue = XDR.RevokeSponsorshipResultCode.RevokeSponsorshipResultCodeEnum.REVOKE_SPONSORSHIP_LOW_RESERVE; + operationResultTr.RevokeSponsorshipResult = result; + + Util.AssertResultOfType(Util.CreateTransactionResultXDR(operationResultTr), typeof(RevokeSponsorshipLowReserve), false); + } + + [TestMethod] + public void TestNotSponsor() + { + var operationResultTr = new XDR.OperationResult.OperationResultTr(); + operationResultTr.Discriminant.InnerValue = XDR.OperationType.OperationTypeEnum.REVOKE_SPONSORSHIP; + + var result = new XDR.RevokeSponsorshipResult(); + result.Discriminant.InnerValue = XDR.RevokeSponsorshipResultCode.RevokeSponsorshipResultCodeEnum.REVOKE_SPONSORSHIP_NOT_SPONSOR; + operationResultTr.RevokeSponsorshipResult = result; + + Util.AssertResultOfType(Util.CreateTransactionResultXDR(operationResultTr), typeof(RevokeSponsorshipNotSponsor), false); + } + + [TestMethod] + public void TestOnlyTransferable() + { + var operationResultTr = new XDR.OperationResult.OperationResultTr(); + operationResultTr.Discriminant.InnerValue = XDR.OperationType.OperationTypeEnum.REVOKE_SPONSORSHIP; + + var result = new XDR.RevokeSponsorshipResult(); + result.Discriminant.InnerValue = XDR.RevokeSponsorshipResultCode.RevokeSponsorshipResultCodeEnum.REVOKE_SPONSORSHIP_ONLY_TRANSFERABLE; + operationResultTr.RevokeSponsorshipResult = result; + + Util.AssertResultOfType(Util.CreateTransactionResultXDR(operationResultTr), typeof(RevokeSponsorshipOnlyTransferable), false); + } + + [TestMethod] + public void TestSuccesss() + { + var operationResultTr = new XDR.OperationResult.OperationResultTr(); + operationResultTr.Discriminant.InnerValue = XDR.OperationType.OperationTypeEnum.REVOKE_SPONSORSHIP; + + var result = new XDR.RevokeSponsorshipResult(); + result.Discriminant.InnerValue = XDR.RevokeSponsorshipResultCode.RevokeSponsorshipResultCodeEnum.REVOKE_SPONSORSHIP_SUCCESS; + operationResultTr.RevokeSponsorshipResult = result; + + Util.AssertResultOfType(Util.CreateTransactionResultXDR(operationResultTr), typeof(RevokeSponsorshipSuccess), true); + } + } +} diff --git a/stellar-dotnet-sdk/responses/results/OperationResult.cs b/stellar-dotnet-sdk/responses/results/OperationResult.cs index 43496220f..1bb1f4c58 100644 --- a/stellar-dotnet-sdk/responses/results/OperationResult.cs +++ b/stellar-dotnet-sdk/responses/results/OperationResult.cs @@ -66,6 +66,8 @@ private static OperationResult InnerOperationResultFromXdr(xdr.OperationResult.O return BeginSponsoringFutureReservesResult.FromXdr(result.BeginSponsoringFutureReservesResult); case xdr.OperationType.OperationTypeEnum.END_SPONSORING_FUTURE_RESERVES: return EndSponsoringFutureReservesResult.FromXdr(result.EndSponsoringFutureReservesResult); + case xdr.OperationType.OperationTypeEnum.REVOKE_SPONSORSHIP: + return RevokeSponsorshipResult.FromXdr(result.RevokeSponsorshipResult); default: throw new SystemException("Unknown OperationType"); } diff --git a/stellar-dotnet-sdk/responses/results/RevokeSponsorshipDoesNotExist.cs b/stellar-dotnet-sdk/responses/results/RevokeSponsorshipDoesNotExist.cs new file mode 100644 index 000000000..dac1f7155 --- /dev/null +++ b/stellar-dotnet-sdk/responses/results/RevokeSponsorshipDoesNotExist.cs @@ -0,0 +1,10 @@ +namespace stellar_dotnet_sdk.responses.results +{ + /// + /// Sponsorship doesn't exist. + /// + public class RevokeSponsorshipDoesNotExist : RevokeSponsorshipResult + { + + } +} diff --git a/stellar-dotnet-sdk/responses/results/RevokeSponsorshipLowReserve.cs b/stellar-dotnet-sdk/responses/results/RevokeSponsorshipLowReserve.cs new file mode 100644 index 000000000..28904ab63 --- /dev/null +++ b/stellar-dotnet-sdk/responses/results/RevokeSponsorshipLowReserve.cs @@ -0,0 +1,10 @@ +namespace stellar_dotnet_sdk.responses.results +{ + /// + /// Low reserve + /// + public class RevokeSponsorshipLowReserve : RevokeSponsorshipResult + { + + } +} diff --git a/stellar-dotnet-sdk/responses/results/RevokeSponsorshipNotSponsor.cs b/stellar-dotnet-sdk/responses/results/RevokeSponsorshipNotSponsor.cs new file mode 100644 index 000000000..c066982e7 --- /dev/null +++ b/stellar-dotnet-sdk/responses/results/RevokeSponsorshipNotSponsor.cs @@ -0,0 +1,10 @@ +namespace stellar_dotnet_sdk.responses.results +{ + /// + /// Not sponsor + /// + public class RevokeSponsorshipNotSponsor : RevokeSponsorshipResult + { + + } +} diff --git a/stellar-dotnet-sdk/responses/results/RevokeSponsorshipOnlyTransferable.cs b/stellar-dotnet-sdk/responses/results/RevokeSponsorshipOnlyTransferable.cs new file mode 100644 index 000000000..097840547 --- /dev/null +++ b/stellar-dotnet-sdk/responses/results/RevokeSponsorshipOnlyTransferable.cs @@ -0,0 +1,10 @@ +namespace stellar_dotnet_sdk.responses.results +{ + /// + /// Sponsorship is only transferable + /// + public class RevokeSponsorshipOnlyTransferable : RevokeSponsorshipResult + { + + } +} diff --git a/stellar-dotnet-sdk/responses/results/RevokeSponsorshipResult.cs b/stellar-dotnet-sdk/responses/results/RevokeSponsorshipResult.cs new file mode 100644 index 000000000..f228d75aa --- /dev/null +++ b/stellar-dotnet-sdk/responses/results/RevokeSponsorshipResult.cs @@ -0,0 +1,26 @@ +using System; + +namespace stellar_dotnet_sdk.responses.results +{ + public class RevokeSponsorshipResult : OperationResult + { + public static RevokeSponsorshipResult FromXdr(xdr.RevokeSponsorshipResult result) + { + switch (result.Discriminant.InnerValue) + { + case xdr.RevokeSponsorshipResultCode.RevokeSponsorshipResultCodeEnum.REVOKE_SPONSORSHIP_DOES_NOT_EXIST: + return new RevokeSponsorshipDoesNotExist(); + case xdr.RevokeSponsorshipResultCode.RevokeSponsorshipResultCodeEnum.REVOKE_SPONSORSHIP_LOW_RESERVE: + return new RevokeSponsorshipLowReserve(); + case xdr.RevokeSponsorshipResultCode.RevokeSponsorshipResultCodeEnum.REVOKE_SPONSORSHIP_NOT_SPONSOR: + return new RevokeSponsorshipNotSponsor(); + case xdr.RevokeSponsorshipResultCode.RevokeSponsorshipResultCodeEnum.REVOKE_SPONSORSHIP_ONLY_TRANSFERABLE: + return new RevokeSponsorshipOnlyTransferable(); + case xdr.RevokeSponsorshipResultCode.RevokeSponsorshipResultCodeEnum.REVOKE_SPONSORSHIP_SUCCESS: + return new RevokeSponsorshipSuccess(); + default: + throw new SystemException("Unknown RevokeSponsorship type"); + } + } + } +} diff --git a/stellar-dotnet-sdk/responses/results/RevokeSponsorshipSuccess.cs b/stellar-dotnet-sdk/responses/results/RevokeSponsorshipSuccess.cs new file mode 100644 index 000000000..ed23f260c --- /dev/null +++ b/stellar-dotnet-sdk/responses/results/RevokeSponsorshipSuccess.cs @@ -0,0 +1,10 @@ +namespace stellar_dotnet_sdk.responses.results +{ + /// + /// Success + /// + public class RevokeSponsorshipSuccess : RevokeSponsorshipResult + { + public override bool IsSuccess => true; + } +}