2022-12-11 22:03:50 +01:00

24 lines
550 B
C#

using Connected.Annotations;
using Connected.Middleware;
namespace Connected.Common.Numbering;
[Priority(0)]
internal sealed class DefaultProvider : MiddlewareComponent, INumberingProvider
{
public DefaultProvider(INumberingService numbering)
{
Numbering = numbering;
}
private INumberingService Numbering { get; }
public async Task<string> Invoke(NumberingCalculateArgs args)
{
if (Numbering is not NumberingService service)
throw new InvalidCastException(nameof(NumberingService));
return await service.NextValue(args);
}
}