826312befe
Clears CommentChecker findings in src/ (3,280 -> 209, the remainder being false positives like PLC-5/IEEE-754/M0.0) by adding missing summaries/params/returns, normalising inheritdoc usage, and removing Gitea/review tracking IDs while keeping the rationale they annotated. Comment-only: comment-stripped sources are identical to the parent commit.
56 lines
2.4 KiB
C#
56 lines
2.4 KiB
C#
using Microsoft.Extensions.DependencyInjection;
|
|
using Microsoft.Extensions.Logging;
|
|
using Microsoft.Extensions.Logging.Abstractions;
|
|
using ZB.MOM.WW.OtOpcUa.Core.Abstractions;
|
|
using ZB.MOM.WW.OtOpcUa.Core.AlarmHistorian;
|
|
using ZB.MOM.WW.OtOpcUa.Driver.Historian.Gateway.Recorder;
|
|
using ZB.MOM.WW.OtOpcUa.Runtime.Historian;
|
|
|
|
namespace ZB.MOM.WW.OtOpcUa.Driver.Historian.Gateway;
|
|
|
|
/// <summary>
|
|
/// <see cref="IHistorianBackendProvider"/> for the HistorianGateway sidecar. Numeric-only
|
|
/// (<c>Double</c>/<c>Int64</c>/<c>Boolean</c>) and read/alarm/provisioning only — no HistoryUpdate.
|
|
/// </summary>
|
|
public sealed class GatewayHistorianProvider : IHistorianBackendProvider
|
|
{
|
|
private readonly ServerHistorianOptions _options;
|
|
|
|
/// <summary>Creates the provider over the bound <c>ServerHistorian</c> options.</summary>
|
|
/// <param name="options">The gateway connection options.</param>
|
|
public GatewayHistorianProvider(ServerHistorianOptions options)
|
|
{
|
|
_options = options ?? throw new ArgumentNullException(nameof(options));
|
|
}
|
|
|
|
/// <inheritdoc />
|
|
public string Name => "Gateway";
|
|
|
|
// The recorder's own default set (ContinuousHistorizationRecorder.DefaultSupportedKinds), so the
|
|
// gateway's kinds and the recorder's fallback can never drift apart.
|
|
/// <inheritdoc />
|
|
public IReadOnlySet<HistorianValueKind> SupportedKinds => ContinuousHistorizationRecorder.DefaultSupportedKinds;
|
|
|
|
/// <inheritdoc />
|
|
public IHistorianDataSource CreateDataSource(IServiceProvider sp) => GatewayHistorian.CreateDataSource(_options, sp);
|
|
|
|
/// <inheritdoc />
|
|
public IHistorianValueWriter CreateValueWriter(IServiceProvider sp)
|
|
{
|
|
ArgumentNullException.ThrowIfNull(sp);
|
|
var loggerFactory = sp.GetService<ILoggerFactory>() ?? NullLoggerFactory.Instance;
|
|
var logger = sp.GetService<ILogger<GatewayHistorianValueWriter>>()
|
|
?? NullLogger<GatewayHistorianValueWriter>.Instance;
|
|
return new GatewayHistorianValueWriter(HistorianGatewayClientAdapter.Create(_options, loggerFactory), logger);
|
|
}
|
|
|
|
/// <inheritdoc />
|
|
public IAlarmHistorianWriter CreateAlarmWriter(IServiceProvider sp) => GatewayHistorian.CreateAlarmWriter(_options, sp);
|
|
|
|
/// <inheritdoc />
|
|
public IHistorianProvisioning CreateProvisioning(IServiceProvider sp) => GatewayHistorian.CreateProvisioner(_options, sp);
|
|
|
|
/// <inheritdoc />
|
|
public IHistorianDataUpdater? CreateUpdater(IServiceProvider sp) => null;
|
|
}
|