Change events args
This commit is contained in:
@ -5,14 +5,18 @@ namespace Hcs.WebApp.BackgroundServices
|
||||
{
|
||||
public class OperationExecutionState
|
||||
{
|
||||
public delegate void OperationStarted(int operationId, int campaignId, DateTime startedAt);
|
||||
public delegate void OperationExecuted(int operationId, int campaignId, string messageGuid);
|
||||
public delegate void OperationEnded(int operationId, int campaignId, DateTime endedAt, string failureReason);
|
||||
|
||||
private readonly ConcurrentQueue<Operation> operationsInQueue = new();
|
||||
private readonly HashSet<Operation> operationsInProcess = [];
|
||||
|
||||
public bool Ready { get; set; }
|
||||
|
||||
public event Action<Operation> OnOperationStarted;
|
||||
public event Action<Operation> OnOperationExecuted;
|
||||
public event Action<Operation> OnOperationEnded;
|
||||
public event OperationStarted OnOperationStarted;
|
||||
public event OperationExecuted OnOperationExecuted;
|
||||
public event OperationEnded OnOperationEnded;
|
||||
|
||||
public void EnqueueOperation(Operation operation)
|
||||
{
|
||||
@ -39,29 +43,29 @@ namespace Hcs.WebApp.BackgroundServices
|
||||
return operationsInQueue.Any(x => x.CampaignId == campaignId) || operationsInProcess.Any(x => x.CampaignId == campaignId);
|
||||
}
|
||||
|
||||
public void InvokeOnOperationStarted(Operation operation)
|
||||
public void InvokeOnOperationStarted(int operationId, int campaignId, DateTime startedAt)
|
||||
{
|
||||
try
|
||||
{
|
||||
OnOperationStarted?.Invoke(operation);
|
||||
OnOperationStarted?.Invoke(operationId, campaignId, startedAt);
|
||||
}
|
||||
catch { }
|
||||
}
|
||||
|
||||
public void InvokeOnOperationExecuted(Operation operation)
|
||||
public void InvokeOnOperationExecuted(int operationId, int campaignId, string messageGuid)
|
||||
{
|
||||
try
|
||||
{
|
||||
OnOperationExecuted?.Invoke(operation);
|
||||
OnOperationExecuted?.Invoke(operationId, campaignId, messageGuid);
|
||||
}
|
||||
catch { }
|
||||
}
|
||||
|
||||
public void InvokeOnOperationEnded(Operation operation)
|
||||
public void InvokeOnOperationEnded(int operationId, int campaignId, DateTime endedAt, string failureReason)
|
||||
{
|
||||
try
|
||||
{
|
||||
OnOperationEnded?.Invoke(operation);
|
||||
OnOperationEnded?.Invoke(operationId, campaignId, endedAt, failureReason);
|
||||
}
|
||||
catch { }
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user