23 lines
998 B
C#
23 lines
998 B
C#
using ScadaLink.Commons.Messages.InboundApi;
|
|
|
|
namespace ScadaLink.InboundAPI;
|
|
|
|
/// <summary>
|
|
/// Seam over the cross-site routing transport used by <see cref="RouteHelper"/>.
|
|
/// The production implementation (<see cref="CommunicationServiceInstanceRouter"/>)
|
|
/// delegates to <c>ScadaLink.Communication.CommunicationService</c>; the interface
|
|
/// exists so <see cref="RouteHelper"/>/<see cref="RouteTarget"/> can be unit tested
|
|
/// without a live actor system (InboundAPI-017).
|
|
/// </summary>
|
|
public interface IInstanceRouter
|
|
{
|
|
Task<RouteToCallResponse> RouteToCallAsync(
|
|
string siteId, RouteToCallRequest request, CancellationToken cancellationToken);
|
|
|
|
Task<RouteToGetAttributesResponse> RouteToGetAttributesAsync(
|
|
string siteId, RouteToGetAttributesRequest request, CancellationToken cancellationToken);
|
|
|
|
Task<RouteToSetAttributesResponse> RouteToSetAttributesAsync(
|
|
string siteId, RouteToSetAttributesRequest request, CancellationToken cancellationToken);
|
|
}
|