feat: add WorkProcessor interfaces and options
- ISearchNotificationService: SignalR notification abstraction in Core - WorkProcessorOptions: configuration for work processor behavior - ISearchRepository: Search table operations contract - ISearchExecutionService: search pipeline orchestration contract
This commit is contained in:
@@ -0,0 +1,24 @@
|
||||
using JdeScoping.Core.Models.Search;
|
||||
|
||||
namespace JdeScoping.Core.Interfaces;
|
||||
|
||||
/// <summary>
|
||||
/// Interface for SignalR notifications - lives in Core to avoid dependency issues.
|
||||
/// Implementation lives in Host/Api layer.
|
||||
/// </summary>
|
||||
public interface ISearchNotificationService
|
||||
{
|
||||
/// <summary>
|
||||
/// Notifies clients of search status update.
|
||||
/// </summary>
|
||||
/// <param name="search">The search with updated status.</param>
|
||||
/// <param name="ct">Cancellation token.</param>
|
||||
Task NotifySearchUpdateAsync(Search search, CancellationToken ct = default);
|
||||
|
||||
/// <summary>
|
||||
/// Notifies clients of work processor status change.
|
||||
/// </summary>
|
||||
/// <param name="status">Status message.</param>
|
||||
/// <param name="ct">Cancellation token.</param>
|
||||
Task NotifyStatusAsync(string status, CancellationToken ct = default);
|
||||
}
|
||||
Reference in New Issue
Block a user