Table of Contents

Class InvoiceOrchestrationService

Namespace
arolariu.Backend.Domain.Invoices.Services.Orchestration.InvoiceService
Assembly
arolariu.Backend.Domain.Invoices.dll

The invoice orchestration service interface represents the orchestration service for the invoice domain.

public class InvoiceOrchestrationService : IInvoiceOrchestrationService
Inheritance
InvoiceOrchestrationService
Implements
Inherited Members

Constructors

InvoiceOrchestrationService(IInvoiceAnalysisFoundationService, IInvoiceStorageFoundationService, ILoggerFactory)

Constructor.

public InvoiceOrchestrationService(IInvoiceAnalysisFoundationService invoiceAnalysisFoundationService, IInvoiceStorageFoundationService invoiceStorageFoundationService, ILoggerFactory loggerFactory)

Parameters

invoiceAnalysisFoundationService IInvoiceAnalysisFoundationService
invoiceStorageFoundationService IInvoiceStorageFoundationService
loggerFactory ILoggerFactory

Fields

invoiceAnalysisFoundationService

private readonly IInvoiceAnalysisFoundationService invoiceAnalysisFoundationService

Field Value

IInvoiceAnalysisFoundationService

invoiceStorageFoundationService

private readonly IInvoiceStorageFoundationService invoiceStorageFoundationService

Field Value

IInvoiceStorageFoundationService

logger

private readonly ILogger<IInvoiceOrchestrationService> logger

Field Value

ILogger<IInvoiceOrchestrationService>

Methods

AnalyzeInvoiceWithOptions(Invoice, AnalysisOptions)

Analyze an invoice.

public Task AnalyzeInvoiceWithOptions(Invoice invoice, AnalysisOptions options)

Parameters

invoice Invoice
options AnalysisOptions

Returns

Task

CreateAndLogDependencyException(Exception)

private InvoiceOrchestrationDependencyException CreateAndLogDependencyException(Exception exception)

Parameters

exception Exception

Returns

InvoiceOrchestrationDependencyException

CreateAndLogDependencyValidationException(Exception)

private InvoiceOrchestrationDependencyValidationException CreateAndLogDependencyValidationException(Exception exception)

Parameters

exception Exception

Returns

InvoiceOrchestrationDependencyValidationException

CreateAndLogServiceException(Exception)

private InvoiceOrchestrationServiceException CreateAndLogServiceException(Exception exception)

Parameters

exception Exception

Returns

InvoiceOrchestrationServiceException

CreateAndLogValidationException(Exception)

private InvoiceOrchestrationValidationException CreateAndLogValidationException(Exception exception)

Parameters

exception Exception

Returns

InvoiceOrchestrationValidationException

CreateInvoiceObject(Invoice)

Creates an invoice object.

public Task<Invoice> CreateInvoiceObject(Invoice invoice)

Parameters

invoice Invoice

Returns

Task<Invoice>

DeleteInvoiceObject(Guid)

Deletes an invoice object.

public Task DeleteInvoiceObject(Guid identifier)

Parameters

identifier Guid

Returns

Task

DeleteInvoiceObject(Guid, Guid)

Deletes an invoice object.

public Task DeleteInvoiceObject(Guid identifier, Guid userIdentifier)

Parameters

identifier Guid
userIdentifier Guid

Returns

Task

ReadAllInvoiceObjects()

Reads all invoice objects.

public Task<IEnumerable<Invoice>> ReadAllInvoiceObjects()

Returns

Task<IEnumerable<Invoice>>

ReadAllInvoiceObjects(Guid)

Reads all invoice objects.

public Task<IEnumerable<Invoice>> ReadAllInvoiceObjects(Guid userIdentifier)

Parameters

userIdentifier Guid

Returns

Task<IEnumerable<Invoice>>

ReadInvoiceObject(Guid)

Reads an invoice object.

public Task<Invoice> ReadInvoiceObject(Guid identifier)

Parameters

identifier Guid

Returns

Task<Invoice>

ReadInvoiceObject(Guid, Guid)

Reads an invoice object.

public Task<Invoice> ReadInvoiceObject(Guid identifier, Guid userIdentifier)

Parameters

identifier Guid
userIdentifier Guid

Returns

Task<Invoice>

TryCatchAsync(ReturningAnalysisFunction)

private Task TryCatchAsync(InvoiceOrchestrationService.ReturningAnalysisFunction returningAnalysisFunction)

Parameters

returningAnalysisFunction InvoiceOrchestrationService.ReturningAnalysisFunction

Returns

Task

TryCatchAsync(ReturningInvoiceFunction)

private Task<Invoice> TryCatchAsync(InvoiceOrchestrationService.ReturningInvoiceFunction returningInvoiceFunction)

Parameters

returningInvoiceFunction InvoiceOrchestrationService.ReturningInvoiceFunction

Returns

Task<Invoice>

TryCatchAsync(ReturningInvoicesFunction)

private Task<IEnumerable<Invoice>> TryCatchAsync(InvoiceOrchestrationService.ReturningInvoicesFunction returningInvoicesFunction)

Parameters

returningInvoicesFunction InvoiceOrchestrationService.ReturningInvoicesFunction

Returns

Task<IEnumerable<Invoice>>

UpdateInvoiceObject(Guid, Invoice)

Updates an invoice object.

public Task<Invoice> UpdateInvoiceObject(Guid invoiceIdentifier, Invoice updatedInvoice)

Parameters

invoiceIdentifier Guid
updatedInvoice Invoice

Returns

Task<Invoice>

UpdateInvoiceObject(Invoice, Invoice)

Updates an invoice object.

public Task<Invoice> UpdateInvoiceObject(Invoice currentInvoice, Invoice updatedInvoice)

Parameters

currentInvoice Invoice
updatedInvoice Invoice

Returns

Task<Invoice>