using ZB.MOM.WW.ScadaBridge.Commons.Messages.InboundApi; namespace ZB.MOM.WW.ScadaBridge.InboundAPI; /// /// Seam over the cross-site routing transport used by . /// The production implementation () /// delegates to ZB.MOM.WW.ScadaBridge.Communication.CommunicationService; the interface /// exists so / can be unit tested /// without a live actor system (InboundAPI-017). /// public interface IInstanceRouter { /// Routes a script call request to the specified site. /// Target site identifier. /// The call request to route. /// Cancellation token for the routed call. Task RouteToCallAsync( string siteId, RouteToCallRequest request, CancellationToken cancellationToken); /// Routes a batch attribute read request to the specified site. /// Target site identifier. /// The get-attributes request to route. /// Cancellation token for the routed call. Task RouteToGetAttributesAsync( string siteId, RouteToGetAttributesRequest request, CancellationToken cancellationToken); /// Routes a batch attribute write request to the specified site. /// Target site identifier. /// The set-attributes request to route. /// Cancellation token for the routed call. Task RouteToSetAttributesAsync( string siteId, RouteToSetAttributesRequest request, CancellationToken cancellationToken); }