feat(commons): OpcUaEndpointConfig POCOs + ConnectionConfig ValidationCategory
This commit is contained in:
@@ -0,0 +1,24 @@
|
|||||||
|
namespace ScadaLink.Commons.Types.DataConnections;
|
||||||
|
|
||||||
|
public sealed class OpcUaEndpointConfig
|
||||||
|
{
|
||||||
|
// Connection
|
||||||
|
public string EndpointUrl { get; set; } = "";
|
||||||
|
public OpcUaSecurityMode SecurityMode { get; set; } = OpcUaSecurityMode.None;
|
||||||
|
public bool AutoAcceptUntrustedCerts { get; set; } = true;
|
||||||
|
|
||||||
|
// Timing
|
||||||
|
public int SessionTimeoutMs { get; set; } = 60000;
|
||||||
|
public int OperationTimeoutMs { get; set; } = 15000;
|
||||||
|
|
||||||
|
// Subscription
|
||||||
|
public int PublishingIntervalMs { get; set; } = 1000;
|
||||||
|
public int SamplingIntervalMs { get; set; } = 1000;
|
||||||
|
public int QueueSize { get; set; } = 10;
|
||||||
|
public int KeepAliveCount { get; set; } = 10;
|
||||||
|
public int LifetimeCount { get; set; } = 30;
|
||||||
|
public int MaxNotificationsPerPublish { get; set; } = 100;
|
||||||
|
|
||||||
|
// Heartbeat (optional)
|
||||||
|
public OpcUaHeartbeatConfig? Heartbeat { get; set; }
|
||||||
|
}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
namespace ScadaLink.Commons.Types.DataConnections;
|
||||||
|
|
||||||
|
public sealed class OpcUaHeartbeatConfig
|
||||||
|
{
|
||||||
|
public string TagPath { get; set; } = "";
|
||||||
|
public int MaxSilenceSeconds { get; set; } = 30;
|
||||||
|
}
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
namespace ScadaLink.Commons.Types.DataConnections;
|
||||||
|
|
||||||
|
public enum OpcUaSecurityMode
|
||||||
|
{
|
||||||
|
None,
|
||||||
|
Sign,
|
||||||
|
SignAndEncrypt
|
||||||
|
}
|
||||||
@@ -61,5 +61,6 @@ public enum ValidationCategory
|
|||||||
TriggerOperandType,
|
TriggerOperandType,
|
||||||
OnTriggerScriptNotFound,
|
OnTriggerScriptNotFound,
|
||||||
CrossCallViolation,
|
CrossCallViolation,
|
||||||
MissingMetadata
|
MissingMetadata,
|
||||||
|
ConnectionConfig
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user