diff --git a/TransactionProcessor.BusinessLogic/Common/PolicyFactory.cs b/TransactionProcessor.BusinessLogic/Common/PolicyFactory.cs index a986c87a..4dfd0e87 100644 --- a/TransactionProcessor.BusinessLogic/Common/PolicyFactory.cs +++ b/TransactionProcessor.BusinessLogic/Common/PolicyFactory.cs @@ -137,6 +137,9 @@ private static void LogResult(string policyTag, ResultBase result, int retryCoun string retryMessage = retryCount > 0 ? $" after {retryCount} retries." : ""; Logger.LogWarning($"{policyTag} - {message}{retryMessage}"); break; + default: + throw new ArgumentOutOfRangeException(nameof(type), type, null); + break; } } } diff --git a/TransactionProcessor.BusinessLogic/EventHandling/VoucherDomainEventHandler.cs b/TransactionProcessor.BusinessLogic/EventHandling/VoucherDomainEventHandler.cs index 080a6518..f7987acb 100644 --- a/TransactionProcessor.BusinessLogic/EventHandling/VoucherDomainEventHandler.cs +++ b/TransactionProcessor.BusinessLogic/EventHandling/VoucherDomainEventHandler.cs @@ -1,4 +1,5 @@ -using Shared.Results; +using Shared.Exceptions; +using Shared.Results; using SimpleResults; using TransactionProcessor.Aggregates; using TransactionProcessor.BusinessLogic.Services; @@ -127,7 +128,7 @@ private async Task GetVoucherOperator(Models.Voucher voucherModel, Database.Entities.Transaction transaction = await context.Transactions.SingleOrDefaultAsync(t => t.TransactionId == voucherModel.TransactionId, cancellationToken); if (transaction == null) { - throw new Exception($"Transaction not found Transaction Id {voucherModel.TransactionId}"); + throw new NotFoundException($"Transaction not found Transaction Id {voucherModel.TransactionId}"); } Contract contract = await context.Contracts.SingleOrDefaultAsync(c => c.ContractId == transaction.ContractId, cancellationToken); diff --git a/TransactionProcessor.BusinessLogic/Manager/ITransactionProcessorManager.cs b/TransactionProcessor.BusinessLogic/Manager/ITransactionProcessorManager.cs index f3557d44..8943f816 100644 --- a/TransactionProcessor.BusinessLogic/Manager/ITransactionProcessorManager.cs +++ b/TransactionProcessor.BusinessLogic/Manager/ITransactionProcessorManager.cs @@ -41,11 +41,8 @@ Task>> GetTransactionFeesForProduct(G Guid contractId, Guid productId, CancellationToken cancellationToken); - - //Task> GetFileDetails(Guid estateId, Guid fileId, CancellationToken cancellationToken); - Task> GetOperator(Guid estateId, Guid operatorId, - CancellationToken cancellationToken); + CancellationToken cancellationToken); Task>> GetOperators(Guid estateId, CancellationToken cancellationToken); diff --git a/TransactionProcessor.BusinessLogic/Services/MerchantStatementDomainService.cs b/TransactionProcessor.BusinessLogic/Services/MerchantStatementDomainService.cs index 704565e1..a2b330ff 100644 --- a/TransactionProcessor.BusinessLogic/Services/MerchantStatementDomainService.cs +++ b/TransactionProcessor.BusinessLogic/Services/MerchantStatementDomainService.cs @@ -222,9 +222,6 @@ public async Task EmailStatement(MerchantStatementCommands.EmailMerchant this.TokenResponse = getTokenResult.Data; Result sendEmailResponseResult = await this.MessagingServiceClient.SendEmail(this.TokenResponse.AccessToken, sendEmailRequest, cancellationToken); - //if (sendEmailResponseResult.IsFailed) { - // // TODO: record a failed event?? - //} Result stateResult = merchantStatementAggregate.EmailStatement(DateTime.Now, messageId); if (stateResult.IsFailed) diff --git a/TransactionProcessor.BusinessLogic/Services/TransactionDomainService.cs b/TransactionProcessor.BusinessLogic/Services/TransactionDomainService.cs index 486258e8..b119e89c 100644 --- a/TransactionProcessor.BusinessLogic/Services/TransactionDomainService.cs +++ b/TransactionProcessor.BusinessLogic/Services/TransactionDomainService.cs @@ -706,9 +706,6 @@ private async Task ResendEmailMessage(String accessToken, private async Task>> GetTransactionFeesForProduct(Guid contractId, Guid productId, CancellationToken cancellationToken) { - //Result contractAggregateResult = await this.AggregateService.Get(contractId, CancellationToken.None); - //if (contractAggregateResult.IsFailed) - // return ResultHelpers.CreateFailure(contractAggregateResult); Result contractAggregateResult = await DomainServiceHelper.GetAggregateOrFailure(ct => this.AggregateService.Get(contractId, ct), contractId, cancellationToken, false); if (contractAggregateResult.IsFailed) return ResultHelpers.CreateFailure(contractAggregateResult); diff --git a/TransactionProcessor.ProjectionEngine/ProjectionHandler/ProjectionHandler.cs b/TransactionProcessor.ProjectionEngine/ProjectionHandler/ProjectionHandler.cs index a3fd6af5..ebc43f6b 100644 --- a/TransactionProcessor.ProjectionEngine/ProjectionHandler/ProjectionHandler.cs +++ b/TransactionProcessor.ProjectionEngine/ProjectionHandler/ProjectionHandler.cs @@ -89,11 +89,9 @@ public async Task Handle(IDomainEvent @event, CancellationToken cancella builder.Insert(0, $"Total time: {stopwatch.ElapsedMilliseconds}ms|"); - //Int32 projectionTraceThresholdInSeconds = Int32.Parse(ConfigurationReader.GetValue("AppSettings", "ProjectionTraceThresholdInSeconds")); - //if (stopwatch.Elapsed.Seconds > projectionTraceThresholdInSeconds){ - Logger.LogWarning(builder.ToString()); - Logger.LogInformation($"{@event.EventId}|Event Type {@event.EventType} Id [{@event.EventId}] for state {state.GetType().Name} took {stopwatch.ElapsedMilliseconds}ms to process"); - //} + Logger.LogWarning(builder.ToString()); + Logger.LogInformation($"{@event.EventId}|Event Type {@event.EventType} Id [{@event.EventId}] for state {state.GetType().Name} took {stopwatch.ElapsedMilliseconds}ms to process"); + return Result.Success(); } } \ No newline at end of file diff --git a/TransactionProcessor.ProjectionEngine/State/State.cs b/TransactionProcessor.ProjectionEngine/State/State.cs deleted file mode 100644 index 1f0a8024..00000000 --- a/TransactionProcessor.ProjectionEngine/State/State.cs +++ /dev/null @@ -1,11 +0,0 @@ -namespace TransactionProcessor.ProjectionEngine.State; - -//[ExcludeFromCodeCoverage] -//public record State() -//{ -// public byte[] Version { get; init; } -// public bool IsInitialised => this.Version != null; -// public bool IsNotInitialised => this.Version == null; - -// public bool ChangesApplied { get; init; } -//} \ No newline at end of file diff --git a/TransactionProcessor.Repository/ITransactionProcessorReadModelRepository.cs b/TransactionProcessor.Repository/ITransactionProcessorReadModelRepository.cs index ddb960a4..b21c158f 100644 --- a/TransactionProcessor.Repository/ITransactionProcessorReadModelRepository.cs +++ b/TransactionProcessor.Repository/ITransactionProcessorReadModelRepository.cs @@ -76,9 +76,6 @@ Task AddFileLineToFile(FileLineAddedEvent domainEvent, Task AddFileToImportLog(FileAddedToImportLogEvent domainEvent, CancellationToken cancellationToken); - //Task AddGeneratedVoucher(VoucherDomainEvents.VoucherGeneratedEvent domainEvent, - // CancellationToken cancellationToken); - Task AddMerchant(MerchantDomainEvents.MerchantCreatedEvent domainEvent, CancellationToken cancellationToken); @@ -109,20 +106,12 @@ Task AddPendingMerchantFeeToSettlement(SettlementDomainEvents.MerchantFe Task AddProductDetailsToTransaction(TransactionDomainEvents.ProductDetailsAddedToTransactionEvent domainEvent, CancellationToken cancellationToken); - // TODO@ Add this back in - //Task AddSettledFeeToStatement(SettledFeeAddedToStatementEvent domainEvent, - // CancellationToken cancellationToken); - Task AddSettledMerchantFeeToSettlement(TransactionDomainEvents.SettledMerchantFeeAddedToTransactionEvent domainEvent, CancellationToken cancellationToken); Task AddSourceDetailsToTransaction(TransactionDomainEvents.TransactionSourceAddedToTransactionEvent domainEvent, CancellationToken cancellationToken); - // TODO@ Add this back in - //Task AddTransactionToStatement(TransactionAddedToStatementEvent domainEvent, - // CancellationToken cancellationToken); - Task CompleteReconciliation(ReconciliationDomainEvents.ReconciliationHasCompletedEvent domainEvent, CancellationToken cancellationToken); diff --git a/TransactionProcessor/Bootstrapper/DomainEventHandlerRegistry.cs b/TransactionProcessor/Bootstrapper/DomainEventHandlerRegistry.cs index 0994964d..a8cec978 100644 --- a/TransactionProcessor/Bootstrapper/DomainEventHandlerRegistry.cs +++ b/TransactionProcessor/Bootstrapper/DomainEventHandlerRegistry.cs @@ -44,7 +44,6 @@ public DomainEventHandlerRegistry() Startup.Configuration.GetSection("AppSettings:EventHandlerConfiguration").Bind(eventHandlersConfiguration); } - //this.AddSingleton(eventHandlersConfiguration); this.Use(eventHandlersConfiguration).Named("EventHandlerConfiguration"); section = Startup.Configuration.GetSection("AppSettings:EventHandlerConfigurationDomain"); diff --git a/TransactionProcessor/Bootstrapper/OperatorRegistry.cs b/TransactionProcessor/Bootstrapper/OperatorRegistry.cs index b630720f..9249caa6 100644 --- a/TransactionProcessor/Bootstrapper/OperatorRegistry.cs +++ b/TransactionProcessor/Bootstrapper/OperatorRegistry.cs @@ -14,7 +14,6 @@ namespace TransactionProcessor.Bootstrapper using Lamar; using Microsoft.Extensions.Configuration; using Microsoft.Extensions.DependencyInjection; - //using Org.BouncyCastle.Security; using PataPawaPostPay; /// diff --git a/TransactionProcessor/Controllers/DomainEventController.cs b/TransactionProcessor/Controllers/DomainEventController.cs index 5ad777c9..deed3c9d 100644 --- a/TransactionProcessor/Controllers/DomainEventController.cs +++ b/TransactionProcessor/Controllers/DomainEventController.cs @@ -3,6 +3,7 @@ using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; +using Shared.Exceptions; namespace TransactionProcessor.Controllers { @@ -135,7 +136,7 @@ private async Task GetDomainEvent(Object domainEvent) Type type = TypeMap.GetType(eventType); if (type == null) - throw new Exception($"Failed to find a domain event with type {eventType}"); + throw new NotFoundException($"Failed to find a domain event with type {eventType}"); JsonIgnoreAttributeIgnorerContractResolver jsonIgnoreAttributeIgnorerContractResolver = new JsonIgnoreAttributeIgnorerContractResolver(); JsonSerializerSettings jsonSerialiserSettings = new JsonSerializerSettings diff --git a/TransactionProcessor/Controllers/MerchantController.cs b/TransactionProcessor/Controllers/MerchantController.cs index 6c58cf46..12332e3f 100644 --- a/TransactionProcessor/Controllers/MerchantController.cs +++ b/TransactionProcessor/Controllers/MerchantController.cs @@ -253,7 +253,7 @@ private bool PerformStandardChecks(Guid estateId) return true; } - //private TokenResponse TokenResponse; + [HttpPost] [Route("")] public async Task CreateMerchant([FromRoute] Guid estateId, diff --git a/TransactionProcessor/Extensions.cs b/TransactionProcessor/Extensions.cs index 10456271..2f084e6b 100644 --- a/TransactionProcessor/Extensions.cs +++ b/TransactionProcessor/Extensions.cs @@ -51,6 +51,9 @@ public static class Extensions { case TraceEventType.Verbose: Logger.LogDebug(logMessage); break; + default: + Logger.LogDebug(logMessage); + break; } };