Add LabJackT7 configuration and helper for Modbus communication

This commit is contained in:
2025-10-10 18:00:21 -07:00
parent a5b224cee1
commit 5045133cf8
5 changed files with 730 additions and 1 deletions

View File

@ -15,6 +15,7 @@ public record AppSettings(CamstarOracleConfiguration CamstarOracleConfiguration,
InfinityQSConfiguration InfinityQSConfiguration,
InfinityQSProjectConfiguration InfinityQSProjectConfiguration,
IsoConfiguration IsoConfiguration,
LabJackT7Configuration LabJackT7Configuration,
MetadataSettings MetadataSettings,
MetrologyConfiguration MetrologyConfiguration,
NationalInstrumentsConfiguration NationalInstrumentsConfiguration,
@ -34,8 +35,8 @@ public record AppSettings(CamstarOracleConfiguration CamstarOracleConfiguration,
#pragma warning disable IL3050, IL2026
CamstarOracleConfiguration? camstarOracleConfiguration = configurationRoot.GetSection(nameof(CamstarOracleConfiguration)).Get<CamstarOracleConfiguration>();
CompassConfiguration? compassConfiguration = configurationRoot.GetSection(nameof(CompassConfiguration)).Get<CompassConfiguration>();
DiskInfoConfiguration? diskInfoConfiguration = configurationRoot.GetSection(nameof(DiskInfoConfiguration)).Get<DiskInfoConfiguration>();
DeterministicHashCodeConfiguration? deterministicHashCodeConfiguration = configurationRoot.GetSection(nameof(DeterministicHashCodeConfiguration)).Get<DeterministicHashCodeConfiguration>();
DiskInfoConfiguration? diskInfoConfiguration = configurationRoot.GetSection(nameof(DiskInfoConfiguration)).Get<DiskInfoConfiguration>();
DriveConfiguration? driveConfiguration = configurationRoot.GetSection(nameof(DriveConfiguration)).Get<DriveConfiguration>();
EAFLogConfiguration? eafLogConfiguration = configurationRoot.GetSection(nameof(EAFLogConfiguration)).Get<EAFLogConfiguration>();
EDADatabaseConfiguration? edaDatabaseConfiguration = configurationRoot.GetSection(nameof(EDADatabaseConfiguration)).Get<EDADatabaseConfiguration>();
@ -43,6 +44,7 @@ public record AppSettings(CamstarOracleConfiguration CamstarOracleConfiguration,
InfinityQSConfiguration? infinityQSConfiguration = configurationRoot.GetSection(nameof(InfinityQSConfiguration)).Get<InfinityQSConfiguration>();
InfinityQSProjectConfiguration? infinityQSProjectConfiguration = configurationRoot.GetSection(nameof(InfinityQSProjectConfiguration)).Get<InfinityQSProjectConfiguration>();
IsoConfiguration? isoConfiguration = configurationRoot.GetSection(nameof(IsoConfiguration)).Get<IsoConfiguration>();
LabJackT7Configuration? labJackT7Configuration = configurationRoot.GetSection(nameof(LabJackT7Configuration)).Get<LabJackT7Configuration>();
MetadataSettings? metadataSettings = configurationRoot.GetSection(nameof(MetadataSettings)).Get<MetadataSettings>();
MetrologyConfiguration? metrologyConfiguration = configurationRoot.GetSection(nameof(MetrologyConfiguration)).Get<MetrologyConfiguration>();
NationalInstrumentsConfiguration? nationalInstrumentsConfiguration = configurationRoot.GetSection(nameof(NationalInstrumentsConfiguration)).Get<NationalInstrumentsConfiguration>();
@ -66,6 +68,7 @@ public record AppSettings(CamstarOracleConfiguration CamstarOracleConfiguration,
|| infinityQSConfiguration is null
|| infinityQSProjectConfiguration is null
|| isoConfiguration is null
|| labJackT7Configuration is null
|| metadataSettings is null
|| metrologyConfiguration is null
|| nationalInstrumentsConfiguration is null
@ -101,6 +104,7 @@ public record AppSettings(CamstarOracleConfiguration CamstarOracleConfiguration,
infinityQSConfiguration,
infinityQSProjectConfiguration,
isoConfiguration,
labJackT7Configuration,
metadataSettings,
metrologyConfiguration,
nationalInstrumentsConfiguration,

View File

@ -0,0 +1,23 @@
using System.Text.Json;
using System.Text.Json.Serialization;
namespace File_Watcher.Models;
public record LabJackT7Configuration(string InternetProtocolAddress,
int Port,
string To)
{
public override string ToString()
{
string result = JsonSerializer.Serialize(this, LabJackT7ConfigurationSourceGenerationContext.Default.LabJackT7Configuration);
return result;
}
}
[JsonSourceGenerationOptions(WriteIndented = true)]
[JsonSerializable(typeof(LabJackT7Configuration))]
internal partial class LabJackT7ConfigurationSourceGenerationContext : JsonSerializerContext
{
}