Implements Client.Shared (IOpcUaClientService with connection lifecycle, failover, browse, read/write, subscriptions, alarms, history, redundancy), Client.CLI (8 CliFx commands mirroring tools/opcuacli-dotnet), and Client.UI (Avalonia desktop app with tree browser, read/write, subscriptions, alarms, and history tabs). All three target .NET 10 and are covered by 249 unit tests. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
31 lines
740 B
C#
31 lines
740 B
C#
using CommunityToolkit.Mvvm.ComponentModel;
|
|
|
|
namespace ZB.MOM.WW.LmxOpcUa.Client.UI.ViewModels;
|
|
|
|
/// <summary>
|
|
/// Represents a single active subscription row.
|
|
/// </summary>
|
|
public partial class SubscriptionItemViewModel : ObservableObject
|
|
{
|
|
/// <summary>The monitored NodeId.</summary>
|
|
public string NodeId { get; }
|
|
|
|
/// <summary>The subscription interval in milliseconds.</summary>
|
|
public int IntervalMs { get; }
|
|
|
|
[ObservableProperty]
|
|
private string? _value;
|
|
|
|
[ObservableProperty]
|
|
private string? _status;
|
|
|
|
[ObservableProperty]
|
|
private string? _timestamp;
|
|
|
|
public SubscriptionItemViewModel(string nodeId, int intervalMs)
|
|
{
|
|
NodeId = nodeId;
|
|
IntervalMs = intervalMs;
|
|
}
|
|
}
|