deprecate(lmxproxy): move all LmxProxy code, tests, and docs to deprecated/
LmxProxy is no longer needed. Moved the entire lmxproxy/ workspace, DCL adapter files, and related docs to deprecated/. Removed LmxProxy registration from DataConnectionFactory, project reference from DCL, protocol option from UI, and cleaned up all requirement docs.
This commit is contained in:
43
deprecated/ILmxProxyClient.cs
Normal file
43
deprecated/ILmxProxyClient.cs
Normal file
@@ -0,0 +1,43 @@
|
||||
using ZB.MOM.WW.LmxProxy.Client.Domain;
|
||||
|
||||
namespace ScadaLink.DataConnectionLayer.Adapters;
|
||||
|
||||
/// <summary>
|
||||
/// Subscription handle returned by <see cref="ILmxProxyClient.SubscribeAsync"/>.
|
||||
/// Disposing the subscription stops receiving updates.
|
||||
/// </summary>
|
||||
public interface ILmxSubscription : IAsyncDisposable { }
|
||||
|
||||
/// <summary>
|
||||
/// Abstraction over the LmxProxy SDK client for testability.
|
||||
/// The production implementation delegates to the real
|
||||
/// <see cref="ZB.MOM.WW.LmxProxy.Client.LmxProxyClient"/> library.
|
||||
/// </summary>
|
||||
public interface ILmxProxyClient : IAsyncDisposable
|
||||
{
|
||||
bool IsConnected { get; }
|
||||
|
||||
Task ConnectAsync(CancellationToken cancellationToken = default);
|
||||
Task DisconnectAsync();
|
||||
|
||||
Task<Vtq> ReadAsync(string address, CancellationToken cancellationToken = default);
|
||||
Task<IDictionary<string, Vtq>> ReadBatchAsync(IEnumerable<string> addresses, CancellationToken cancellationToken = default);
|
||||
|
||||
Task WriteAsync(string address, TypedValue value, CancellationToken cancellationToken = default);
|
||||
Task WriteBatchAsync(IDictionary<string, TypedValue> values, CancellationToken cancellationToken = default);
|
||||
|
||||
Task<ILmxSubscription> SubscribeAsync(
|
||||
IEnumerable<string> addresses,
|
||||
Action<string, Vtq> onUpdate,
|
||||
Action<Exception>? onStreamError = null,
|
||||
CancellationToken cancellationToken = default);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Factory for creating <see cref="ILmxProxyClient"/> instances configured
|
||||
/// with host, port, and optional API key.
|
||||
/// </summary>
|
||||
public interface ILmxProxyClientFactory
|
||||
{
|
||||
ILmxProxyClient Create(string host, int port, string? apiKey, bool useTls = false);
|
||||
}
|
||||
Reference in New Issue
Block a user