From b9a06bf352e5b6dd0ca3a67b2066156b2b4d89ff Mon Sep 17 00:00:00 2001 From: Stuart Ferguson Date: Mon, 13 Jan 2025 15:31:16 +0000 Subject: [PATCH] Use Shared Response handling --- .../TransactionProcessor.BusinessLogic.csproj | 6 ++-- .../TransactionProcessor.Client.csproj | 2 +- .../TransactionProcessorClient.cs | 32 ++++++------------- ...rocessor.IntegrationTesting.Helpers.csproj | 4 +-- ...ansactionProcessor.IntegrationTests.csproj | 6 ++-- ...ansactionProcessor.ProjectionEngine.csproj | 8 ++--- 6 files changed, 23 insertions(+), 35 deletions(-) diff --git a/TransactionProcessor.BusinessLogic/TransactionProcessor.BusinessLogic.csproj b/TransactionProcessor.BusinessLogic/TransactionProcessor.BusinessLogic.csproj index fa6d794c..908cff20 100644 --- a/TransactionProcessor.BusinessLogic/TransactionProcessor.BusinessLogic.csproj +++ b/TransactionProcessor.BusinessLogic/TransactionProcessor.BusinessLogic.csproj @@ -6,10 +6,10 @@ - - + + - + diff --git a/TransactionProcessor.Client/TransactionProcessor.Client.csproj b/TransactionProcessor.Client/TransactionProcessor.Client.csproj index 37074341..7c29b116 100644 --- a/TransactionProcessor.Client/TransactionProcessor.Client.csproj +++ b/TransactionProcessor.Client/TransactionProcessor.Client.csproj @@ -7,7 +7,7 @@ - + diff --git a/TransactionProcessor.Client/TransactionProcessorClient.cs b/TransactionProcessor.Client/TransactionProcessorClient.cs index 59717756..4e79ecf6 100644 --- a/TransactionProcessor.Client/TransactionProcessorClient.cs +++ b/TransactionProcessor.Client/TransactionProcessorClient.cs @@ -89,9 +89,8 @@ public async Task> GetMerchantBalance(String acc if (result.IsFailed) return ResultHelpers.CreateFailure(result); - ResponseData responseData = - JsonConvert.DeserializeObject>(result.Data); - + ResponseData responseData = HandleResponseContent(result.Data); + return Result.Success(responseData.Data); } catch (Exception ex) @@ -125,8 +124,7 @@ public async Task>> GetMerchant if (result.IsFailed) return ResultHelpers.CreateFailure(result); - ResponseData> responseData = - JsonConvert.DeserializeObject>>(result.Data); + ResponseData> responseData = HandleResponseContent>(result.Data); return Result.Success(responseData.Data); } @@ -159,9 +157,8 @@ public async Task> GetSettlementByDate(String accessT if (result.IsFailed) return ResultHelpers.CreateFailure(result); - ResponseData responseData = - JsonConvert.DeserializeObject>(result.Data); - + ResponseData responseData = HandleResponseContent(result.Data); + return Result.Success(responseData.Data); } catch (Exception ex) { @@ -195,9 +192,8 @@ public async Task> GetVoucherByCode(String accessToke if (result.IsFailed) return ResultHelpers.CreateFailure(result); - ResponseData responseData = - JsonConvert.DeserializeObject>(result.Data); - + ResponseData responseData = HandleResponseContent(result.Data); + return Result.Success(responseData.Data); } catch (Exception ex) @@ -232,8 +228,7 @@ public async Task> GetVoucherByTransactionId(String a if (result.IsFailed) return ResultHelpers.CreateFailure(result); - ResponseData responseData = - JsonConvert.DeserializeObject>(result.Data); + ResponseData responseData = HandleResponseContent(result.Data); return Result.Success(responseData.Data); } @@ -268,8 +263,7 @@ public async Task> PerformTransaction(String accessTok if (result.IsFailed) return ResultHelpers.CreateFailure(result); - ResponseData responseData = - JsonConvert.DeserializeObject>(result.Data); + ResponseData responseData = HandleResponseContent(result.Data); return Result.Success(responseData.Data); } @@ -372,8 +366,7 @@ public async Task> RedeemVoucher(String accessToke if (result.IsFailed) return ResultHelpers.CreateFailure(result); - ResponseData responseData = - JsonConvert.DeserializeObject>(result.Data); + ResponseData responseData = HandleResponseContent(result.Data); return Result.Success(responseData.Data); } @@ -419,9 +412,4 @@ public async Task ResendEmailReceipt(String accessToken, } } } - - internal class ResponseData - { - public T Data { get; set; } - } } \ No newline at end of file diff --git a/TransactionProcessor.IntegrationTesting.Helpers/TransactionProcessor.IntegrationTesting.Helpers.csproj b/TransactionProcessor.IntegrationTesting.Helpers/TransactionProcessor.IntegrationTesting.Helpers.csproj index 382d8ad1..d81a1a9e 100644 --- a/TransactionProcessor.IntegrationTesting.Helpers/TransactionProcessor.IntegrationTesting.Helpers.csproj +++ b/TransactionProcessor.IntegrationTesting.Helpers/TransactionProcessor.IntegrationTesting.Helpers.csproj @@ -8,8 +8,8 @@ - - + + diff --git a/TransactionProcessor.IntegrationTests/TransactionProcessor.IntegrationTests.csproj b/TransactionProcessor.IntegrationTests/TransactionProcessor.IntegrationTests.csproj index f7017bc3..a2ddd3a9 100644 --- a/TransactionProcessor.IntegrationTests/TransactionProcessor.IntegrationTests.csproj +++ b/TransactionProcessor.IntegrationTests/TransactionProcessor.IntegrationTests.csproj @@ -9,8 +9,8 @@ - - + + @@ -28,7 +28,7 @@ all runtime; build; native; contentfiles; analyzers; buildtransitive - + diff --git a/TransactionProcessor.ProjectionEngine/TransactionProcessor.ProjectionEngine.csproj b/TransactionProcessor.ProjectionEngine/TransactionProcessor.ProjectionEngine.csproj index 08c1bdde..a3e33552 100644 --- a/TransactionProcessor.ProjectionEngine/TransactionProcessor.ProjectionEngine.csproj +++ b/TransactionProcessor.ProjectionEngine/TransactionProcessor.ProjectionEngine.csproj @@ -7,10 +7,10 @@ - - - - + + + +