init
This commit is contained in:
28
docs/ai/Common/DTS.CommonCore/XMLUtils/TestSetupExportXML.md
Normal file
28
docs/ai/Common/DTS.CommonCore/XMLUtils/TestSetupExportXML.md
Normal file
@@ -0,0 +1,28 @@
|
||||
---
|
||||
source_files:
|
||||
- Common/DTS.CommonCore/XMLUtils/TestSetupExportXML/ExportFileXMLClass.cs
|
||||
generated_at: "2026-04-17T16:39:01.536983+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "a9bb33c67f993a16"
|
||||
---
|
||||
|
||||
# Documentation: ExportFileXMLClass
|
||||
|
||||
## 1. Purpose
|
||||
This module serves as the root XML serialization container for exporting test setup data. It exists to map the root XML element `"ExportFile"` to a C# object structure, enabling the serialization and deserialization of test setup collections via the `System.Xml.Serialization` infrastructure. It acts as the top-level entry point in the object graph for XML data transfer regarding test configurations.
|
||||
|
||||
## 2. Public Interface
|
||||
|
||||
### Class: `ExportFileXMLClass`
|
||||
**Namespace:** `DTS.Common.XMLUtils`
|
||||
**Attribute:** `[XmlRootAttribute("ExportFile")]`
|
||||
|
||||
This is a public class decorated with `XmlRootAttribute` to specify that its XML representation uses "ExportFile" as the root document element.
|
||||
|
||||
#### Properties
|
||||
|
||||
* **`TestSetupsOuter`**
|
||||
* **Signature:** `public TestSetupsXMLClass[] TestSetupsOuter { get; set; }`
|
||||
* **Attribute:** `[XmlElement("TestSetups")]`
|
||||
* **Description
|
||||
@@ -0,0 +1,33 @@
|
||||
---
|
||||
source_files:
|
||||
- Common/DTS.CommonCore/XMLUtils/TestSetupExportXML/TestSetups/TestSetupsXMLClass.cs
|
||||
generated_at: "2026-04-17T16:08:32.238053+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "8e6d6a47d8c7b583"
|
||||
---
|
||||
|
||||
# TestSetups
|
||||
|
||||
### Purpose
|
||||
This module provides the root XML container class for serializing and deserializing collections of test setup configurations. It serves as the top-level entry point in the XML hierarchy for test setup export functionality, wrapping multiple `TestSetupXMLClass` instances under a single `TestSetups` root element.
|
||||
|
||||
### Public Interface
|
||||
|
||||
**`TestSetupsXMLClass`**
|
||||
- `TestSetupXMLClass[] TestSetups { get; set; }` - An array of test setup objects, serialized as individual `<TestSetup>` elements within the root `<TestSetups>` element. Marked with `[XmlElement("TestSetup")]`.
|
||||
|
||||
### Invariants
|
||||
- The class is decorated with `[XmlRootAttribute("TestSetups")]`, ensuring the XML root element is always named "TestSetups" regardless of the class name.
|
||||
- `TestSetups` property is an array (not a list), which is a fixed-size collection type choice for XML serialization.
|
||||
|
||||
### Dependencies
|
||||
- **Depends on:** `System.Xml.Serialization` for XML serialization attributes.
|
||||
- **Depends on:** `TestSetupXMLClass` (defined in sibling module).
|
||||
- **Depended on by:** Unclear from source alone - likely used by XML serialization/deserialization logic elsewhere in the codebase.
|
||||
|
||||
### Gotchas
|
||||
- The `TestSetups` property may be `null` if not initialized; the source shows no constructor or default initialization.
|
||||
- Using an array rather than `List<T>` means consumers cannot add/remove items without reassigning the entire array.
|
||||
|
||||
---
|
||||
@@ -0,0 +1,23 @@
|
||||
---
|
||||
source_files:
|
||||
- Common/DTS.CommonCore/XMLUtils/TestSetupExportXML/TestSetups/TestSetup/TestSetupXMLClass.cs
|
||||
generated_at: "2026-04-17T16:08:32.239793+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "361ee259a704b5ed"
|
||||
---
|
||||
|
||||
# TestSetup
|
||||
|
||||
### Purpose
|
||||
This module defines the core data structure for a single test setup configuration, containing references to DAS (Data Acquisition System) lists, field definitions, hardware includes, level triggers, and metadata. It represents the primary entity being exported/imported via XML.
|
||||
|
||||
### Public Interface
|
||||
|
||||
**`TestSetupXMLClass`**
|
||||
- `string Id { get; set; }` - Identifier for this test setup. No XML attribute specified, uses default element name.
|
||||
- `List<DASListXMLClass> DASList { get; set; }` - Collection of DAS list configurations. Serialized as `<DASList>` elements.
|
||||
- `List<GroupsXMLClass> Groups { get; set; }` - Collection of group configurations. Serialized as `<Groups>` elements.
|
||||
- `FieldsXMLClass Fields { get; set; }` - Field definitions for this test setup. Serialized as `<Fields>` element.
|
||||
- `string HardwareIncludes { get; set; }` - Hardware include configuration string. No XML attribute specified.
|
||||
- `LevelTriggersXMLClass LevelTriggers { get; set; }` - Level trigger configurations. Serialized
|
||||
@@ -0,0 +1,47 @@
|
||||
---
|
||||
source_files:
|
||||
- Common/DTS.CommonCore/XMLUtils/TestSetupExportXML/TestSetups/TestSetup/DASList/DASListXMLClass.cs
|
||||
generated_at: "2026-04-17T16:38:58.379619+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "b706a2f87a93f6d7"
|
||||
---
|
||||
|
||||
# Documentation: DASListXMLClass
|
||||
|
||||
## 1. Purpose
|
||||
|
||||
`DASListXMLClass` is an XML serialization container class designed to represent a collection of DAS (Data Acquisition System) hardware items for test setup export functionality. It serves as a wrapper object that enables XML serialization and deserialization of DAS hardware lists within the test setup export pipeline.
|
||||
|
||||
## 2. Public Interface
|
||||
|
||||
### Class: `DASListXMLClass`
|
||||
|
||||
**Namespace:** `DTS.Common.XMLUtils`
|
||||
|
||||
#### Properties
|
||||
|
||||
| Property | Type | Access | Description |
|
||||
|----------|------|--------|-------------|
|
||||
| `DASList` | `List<DASHardwareXMLClass>` | get; set; | A collection of DAS hardware items. Decorated with `[XmlElement("DASList")]` to control XML serialization output. |
|
||||
|
||||
## 3. Invariants
|
||||
|
||||
- The XML element name for the `DASList` property is explicitly defined as `"DASList"` via the `XmlElement` attribute.
|
||||
- The class contains no constructor logic or property initialization; `DASList` will be `null` unless explicitly assigned or populated by the serializer during deserialization.
|
||||
- The type `DASHardwareXMLClass` is referenced but not defined in this source file; its structure is external to this class.
|
||||
|
||||
## 4. Dependencies
|
||||
|
||||
### This module depends on:
|
||||
- `System.Xml.Serialization` - For the `XmlElement` attribute used to configure XML mapping.
|
||||
- `DASHardwareXMLClass` - A class referenced as the generic type parameter for the list (source not provided).
|
||||
|
||||
### Inferred dependents:
|
||||
- This class resides in a path suggesting it is part of a test setup export XML utility system (`XMLUtils/TestSetupExportXML/TestSetups/TestSetup/DASList/`). It is likely consumed by higher-level test setup serialization logic.
|
||||
|
||||
## 5. Gotchas
|
||||
|
||||
- **Property not initialized:** The `DASList` property is not initialized in a constructor or inline. Code consuming instances of this class (especially before deserialization) should handle potential `null` values to avoid `NullReferenceException`.
|
||||
- **Naming collision:** The class name `DASListXMLClass` and the property name `DASList` share the same base identifier, which may cause confusion when reading or debugging code.
|
||||
- **No validation:** The class contains no validation logic for the contents of `DASList` (e.g., duplicate checking, null item prevention).
|
||||
@@ -0,0 +1,33 @@
|
||||
---
|
||||
source_files:
|
||||
- Common/DTS.CommonCore/XMLUtils/TestSetupExportXML/TestSetups/TestSetup/DASList/DASHardware/DASHardwareXMLClass.cs
|
||||
generated_at: "2026-04-17T16:26:39.641113+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "5b5171d53a18e18f"
|
||||
---
|
||||
|
||||
# DASHardware
|
||||
|
||||
### Purpose
|
||||
This module provides a data transfer object (DTO) for serializing DAS (Data Acquisition System) hardware configuration to XML. It represents a single hardware device entry within a test setup export hierarchy, capturing device identification and timing configuration properties.
|
||||
|
||||
### Public Interface
|
||||
|
||||
**`DASHardwareXMLClass`**
|
||||
- `string SerialNumber { get; set; }` - Gets or sets the hardware device serial number.
|
||||
- `string SamplesPerSecond { get; set; }` - Gets or sets the sampling rate configuration.
|
||||
- `string IsClockMaster { get; set; }` - Gets or sets a flag indicating whether this hardware is the clock master.
|
||||
|
||||
### Invariants
|
||||
- All properties are stored as strings, regardless of their logical data type (numeric values like `SamplesPerSecond` and boolean values like `IsClockMaster` are string-encoded).
|
||||
|
||||
### Dependencies
|
||||
- **Depends on**: `System.Xml.Serialization` (imported but no attributes currently applied to the class or its members).
|
||||
- **Depended on by**: Unclear from source alone - likely used by parent `DASList` XML serialization structures.
|
||||
|
||||
### Gotchas
|
||||
- The `System.Xml.Serialization` namespace is imported but no serialization attributes are applied. If XML element names differ from property names, this class may not serialize as expected without additional configuration.
|
||||
- All properties are strings, including `SamplesPerSecond` (logically numeric) and `IsClockMaster` (logically boolean). Callers must handle parsing/validation.
|
||||
|
||||
---
|
||||
@@ -0,0 +1,25 @@
|
||||
---
|
||||
source_files:
|
||||
- Common/DTS.CommonCore/XMLUtils/TestSetupExportXML/TestSetups/TestSetup/Fields/FieldsXMLClass.cs
|
||||
generated_at: "2026-04-17T16:08:46.806736+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "54a81f5104e95929"
|
||||
---
|
||||
|
||||
# Fields
|
||||
|
||||
### Purpose
|
||||
This module defines the core configuration model for a test setup, containing approximately 80 string properties that represent all configurable aspects of a test including trigger settings, recording parameters, channel verification, export options, diagnostic settings, and metadata fields. It serves as the primary data transfer object for test setup serialization.
|
||||
|
||||
### Public Interface
|
||||
|
||||
- **`FieldsXMLClass`** - Contains all test setup configuration fields. All properties are `string` type.
|
||||
|
||||
**Trigger & Start Configuration:**
|
||||
- `string InvertTrigger { get; set; }` - Trigger inversion setting.
|
||||
- `string InvertStart { get; set; }` - Start signal inversion setting.
|
||||
- `string IgnoreShortedStart { get; set; }` - Whether to ignore shorted start signals.
|
||||
- `string IgnoreShortedTrigger { get; set; }` - Whether to ignore shorted trigger signals.
|
||||
- `string WakeUpMotionTimeout { get; set; }` - Timeout for wake-up motion detection.
|
||||
- `string WakeUpWithMotion { get; set;
|
||||
@@ -0,0 +1,31 @@
|
||||
---
|
||||
source_files:
|
||||
- Common/DTS.CommonCore/XMLUtils/TestSetupExportXML/TestSetups/TestSetup/Groups/GroupsXMLClass.cs
|
||||
generated_at: "2026-04-17T16:08:46.804323+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "29f3169c39cf911c"
|
||||
---
|
||||
|
||||
# Groups
|
||||
|
||||
### Purpose
|
||||
This module provides a container class for serializing collections of `GroupXMLClass` objects to XML as part of the test setup export hierarchy. It serves as an intermediate node in the XML object graph, wrapping a list of groups that belong to a test setup.
|
||||
|
||||
### Public Interface
|
||||
|
||||
- **`GroupsXMLClass`** - Container class for group definitions.
|
||||
- `List<GroupXMLClass> Group { get; set; }` - Gets or sets the collection of groups. Serialized as individual `<Group>` XML elements via `[XmlElement("Group")]` attribute.
|
||||
|
||||
### Invariants
|
||||
- The `Group` property may be null if no groups are defined (not initialized in constructor).
|
||||
- The XML serialization will produce elements named "Group" (singular) for each item in the list, regardless of the property name.
|
||||
|
||||
### Dependencies
|
||||
- **Depends on:** `System.Xml.Serialization` for `XmlElementAttribute`, `System.Collections.Generic` for `List<T>`, and `GroupXMLClass` (referenced but not shown in source).
|
||||
- **Depended on by:** Presumably `TestSetupXMLClass` or similar parent container in the XML hierarchy (inferred from namespace path).
|
||||
|
||||
### Gotchas
|
||||
- The property name `Group` is singular while it represents a collection, which may cause confusion. The `[XmlElement("Group")]` attribute ensures each item serializes as `<Group>`, not `<GroupXMLClass>`.
|
||||
|
||||
---
|
||||
@@ -0,0 +1,35 @@
|
||||
---
|
||||
source_files:
|
||||
- Common/DTS.CommonCore/XMLUtils/TestSetupExportXML/TestSetups/TestSetup/Groups/Group/GroupXMLClass.cs
|
||||
generated_at: "2026-04-17T16:09:21.236449+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "6cb0246031d505a4"
|
||||
---
|
||||
|
||||
# Group
|
||||
|
||||
### Purpose
|
||||
This module defines `GroupXMLClass`, a DTO representing a test group within a test setup. It aggregates hardware references and channel configurations, providing hierarchical organization for test setup exports. This class acts as a container node in the XML structure.
|
||||
|
||||
### Public Interface
|
||||
|
||||
**`GroupXMLClass`** - Public class for XML serialization.
|
||||
|
||||
**Constructor:**
|
||||
- `GroupXMLClass()` - Initializes `HardwareList` as a new `HardwareListXMLClass` instance and `Channel` as a new empty `List<ChannelXMLClass>`.
|
||||
|
||||
**Properties (XML Elements, unless noted):**
|
||||
|
||||
| Member | Type | Description |
|
||||
|--------|------|-------------|
|
||||
| `Name` | `string` | Internal name identifier for the group. |
|
||||
| `DisplayName` | `string` | Human-readable display name. |
|
||||
| `Description` | `string` | Group description text. |
|
||||
| `TestSetupName` | `string` | Reference to parent test setup name. |
|
||||
| `DisplayOrder` | `string` | Ordering index for UI display. |
|
||||
| `Position` | `string` | Position information (format unclear from source). |
|
||||
| `TestObjectType` | `string` | Type classification of the test object. |
|
||||
| `Id` | `string` | Unique identifier for this group. |
|
||||
| `StaticGroupId` | `string` | Reference to a static group definition. |
|
||||
| `HardwareList` | `HardwareList
|
||||
@@ -0,0 +1,13 @@
|
||||
---
|
||||
source_files:
|
||||
- Common/DTS.CommonCore/XMLUtils/TestSetupExportXML/TestSetups/TestSetup/Groups/Group/Channel/ChannelXMLClass.cs
|
||||
generated_at: "2026-04-17T16:26:39.645399+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "02f4a0f4775f2953"
|
||||
---
|
||||
|
||||
# Channel
|
||||
|
||||
### Purpose
|
||||
This module provides a data transfer object for serializing channel configuration to XML. It
|
||||
@@ -0,0 +1,44 @@
|
||||
---
|
||||
source_files:
|
||||
- Common/DTS.CommonCore/XMLUtils/TestSetupExportXML/TestSetups/TestSetup/Groups/Group/Channel/Settings/SettingsXMLClass.cs
|
||||
generated_at: "2026-04-17T16:09:27.481212+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "515508a0d70936ff"
|
||||
---
|
||||
|
||||
# Settings
|
||||
|
||||
### Purpose
|
||||
This module provides a data transfer object (DTO) for XML serialization representing channel settings configuration within a test setup export. It captures various measurement and calibration parameters including filter settings, polarity, range, zero methods, and user-defined values.
|
||||
|
||||
### Public Interface
|
||||
|
||||
**`SettingsXMLClass`** - Public class representing channel settings.
|
||||
|
||||
| Member | Signature | Description |
|
||||
|--------|-----------|-------------|
|
||||
| `FilterClass` | `public string FilterClass { get; set; }` | Gets or sets the filter class setting. |
|
||||
| `Polarity` | `public string Polarity { get; set; }` | Gets or sets the polarity configuration. |
|
||||
| `Range` | `public string Range { get; set; }` | Gets or sets the measurement range. |
|
||||
| `ZeroMethod` | `public string ZeroMethod { get; set; }` | Gets or sets the zero method identifier. |
|
||||
| `ZeroMethodStart` | `public string ZeroMethodStart { get; set; }` | Gets or sets the zero method start value. |
|
||||
| `ZeroMethodEnd` | `public string ZeroMethodEnd { get; set; }` | Gets or sets the zero method end value. |
|
||||
| `InitialOffset` | `public string InitialOffset { get; set; }` | Gets or sets the initial offset value. |
|
||||
| `UserValue1` | `public string UserValue1 { get; set; }` | Gets or sets the first user-defined value. |
|
||||
| `UserValue2` | `public string UserValue2 { get; set; }` | Gets or sets the second user-defined value. |
|
||||
| `UserValue3` | `public string UserValue3 { get; set; }` | Gets or sets the third user-defined value. |
|
||||
|
||||
### Invariants
|
||||
- All properties are typed as `string`; numeric or enumerated values are stored as string representations.
|
||||
- No validation is performed by the class itself.
|
||||
|
||||
### Dependencies
|
||||
- **Depends on**: `System`, `System.Collections.Generic`, `System.Linq`, `System.Text`, `System.Threading.Tasks` (standard .NET libraries; some appear unused).
|
||||
- **Depended on by**: Not determinable from source alone; likely used by parent `Channel` XML serialization classes.
|
||||
|
||||
### Gotchas
|
||||
- All properties are strings despite likely representing numeric values (e.g., `Range`, `InitialOffset`). Consumers must handle parsing.
|
||||
- Contains unused `using` directives suggesting incomplete cleanup.
|
||||
|
||||
---
|
||||
@@ -0,0 +1,32 @@
|
||||
---
|
||||
source_files:
|
||||
- Common/DTS.CommonCore/XMLUtils/TestSetupExportXML/TestSetups/TestSetup/Groups/Group/HardwareList/HardwareListXMLClass.cs
|
||||
generated_at: "2026-04-17T16:26:39.643870+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "f895278217a4f51f"
|
||||
---
|
||||
|
||||
# HardwareList
|
||||
|
||||
### Purpose
|
||||
This module provides a container class for serializing a list of hardware identifiers to XML. It represents the collection of hardware references associated with a group within the test setup export hierarchy.
|
||||
|
||||
### Public Interface
|
||||
|
||||
**`HardwareListXMLClass`**
|
||||
- `HardwareListXMLClass()` - Constructor that initializes the `Hardware` property as an empty `List<string>`.
|
||||
- `List<string> Hardware { get; set; }` - Gets or sets the collection of hardware identifiers. Marked with `[XmlElement("Hardware")]` for XML serialization.
|
||||
|
||||
### Invariants
|
||||
- The `Hardware` list is never null after construction (initialized in constructor).
|
||||
- Each element in `Hardware` is a string identifier (content validation is caller's responsibility).
|
||||
|
||||
### Dependencies
|
||||
- **Depends on**: `System.Xml.Serialization`.
|
||||
- **Depended on by**: Unclear from source alone - likely used by parent `Group` XML serialization structures.
|
||||
|
||||
### Gotchas
|
||||
- The `[XmlElement("Hardware")]` attribute on the `Hardware` property means each string in the list will be serialized as an individual `<Hardware>` element, not wrapped in a parent container element. The list itself does not produce a wrapping element.
|
||||
|
||||
---
|
||||
@@ -0,0 +1,33 @@
|
||||
---
|
||||
source_files:
|
||||
- Common/DTS.CommonCore/XMLUtils/TestSetupExportXML/TestSetups/TestSetup/Groups/Group/HardwareList/Hardware/HardwareXMLClass.cs
|
||||
generated_at: "2026-04-17T16:09:27.479436+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "902701e2048f9deb"
|
||||
---
|
||||
|
||||
# Hardware
|
||||
|
||||
### Purpose
|
||||
This module provides a simple data transfer object (DTO) for XML serialization representing hardware information within a test setup export hierarchy. It serves as a container for hardware identification data during XML import/export operations.
|
||||
|
||||
### Public Interface
|
||||
|
||||
**`HardwareXMLClass`** - Public class representing hardware configuration.
|
||||
|
||||
| Member | Signature | Description |
|
||||
|--------|-----------|-------------|
|
||||
| `Hardware` | `public string Hardware { get; set; }` | Gets or sets the hardware identifier string. |
|
||||
|
||||
### Invariants
|
||||
- No validation constraints are enforced by the class itself; it is a plain data container.
|
||||
|
||||
### Dependencies
|
||||
- **Depends on**: `System`, `System.Collections.Generic`, `System.Linq`, `System.Text`, `System.Threading.Tasks` (all standard .NET libraries; some may be unused remnants).
|
||||
- **Depended on by**: Not determinable from source alone; likely used by parent `HardwareList` XML serialization classes.
|
||||
|
||||
### Gotchas
|
||||
- The class contains unused `using` directives (`System.Collections.Generic`, `System.Linq`, `System.Threading.Tasks`) suggesting possible copy-paste from a template or incomplete cleanup.
|
||||
|
||||
---
|
||||
@@ -0,0 +1,31 @@
|
||||
---
|
||||
source_files:
|
||||
- Common/DTS.CommonCore/XMLUtils/TestSetupExportXML/TestSetups/TestSetup/LevelTriggers/LevelTriggersXMLClass.cs
|
||||
generated_at: "2026-04-17T16:08:46.805928+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "d134592126b9a021"
|
||||
---
|
||||
|
||||
# LevelTriggers
|
||||
|
||||
### Purpose
|
||||
This module provides a container class for serializing collections of `LevelTriggerXMLClass` objects to XML as part of the test setup export hierarchy. It represents the level-based trigger configurations associated with a test setup.
|
||||
|
||||
### Public Interface
|
||||
|
||||
- **`LevelTriggersXMLClass`** - Container class for level trigger definitions.
|
||||
- `List<LevelTriggerXMLClass> LevelTriggers { get; set; }` - Gets or sets the collection of level triggers. Serialized as individual `<LevelTrigger>` XML elements via `[XmlElement("LevelTrigger")]` attribute.
|
||||
|
||||
### Invariants
|
||||
- The `LevelTriggers` property may be null if no level triggers are defined (not initialized in constructor).
|
||||
- The XML serialization will produce elements named "LevelTrigger" for each item in the list.
|
||||
|
||||
### Dependencies
|
||||
- **Depends on:** `System.Xml.Serialization` for `XmlElementAttribute`, `System.Collections.Generic` for `List<T>`, and `LevelTriggerXMLClass` (referenced but not shown in source).
|
||||
- **Depended on by:** Presumably `TestSetupXMLClass` or similar parent container in the XML hierarchy.
|
||||
|
||||
### Gotchas
|
||||
- The property name `LevelTriggers` (plural) differs from the XML element name `LevelTrigger` (singular) specified in the attribute, which is a common pattern but worth noting for XML parsing/consumption.
|
||||
|
||||
---
|
||||
@@ -0,0 +1,17 @@
|
||||
---
|
||||
source_files:
|
||||
- Common/DTS.CommonCore/XMLUtils/TestSetupExportXML/TestSetups/TestSetup/LevelTriggers/LevelTrigger/LevelTriggerXMLClass.cs
|
||||
generated_at: "2026-04-17T16:09:27.482200+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "5cf3cbbbf7794997"
|
||||
---
|
||||
|
||||
# LevelTrigger
|
||||
|
||||
### Purpose
|
||||
This module provides a data transfer object (DTO) for XML serialization representing level trigger configuration within a test setup export. It defines threshold-based trigger conditions for channels, including greater-than/less-than comparisons and inside/outside boundary triggers with engineering unit values.
|
||||
|
||||
### Public Interface
|
||||
|
||||
**`LevelTriggerXMLClass`** - Public class representing a level trigger configuration
|
||||
@@ -0,0 +1,50 @@
|
||||
---
|
||||
source_files:
|
||||
- Common/DTS.CommonCore/XMLUtils/TestSetupExportXML/TestSetups/TestSetup/MetaDatas/MetaDatasXMLClass.cs
|
||||
generated_at: "2026-04-17T16:39:38.948634+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "299f593f7e198e8a"
|
||||
---
|
||||
|
||||
# Documentation: MetaDatasXMLClass
|
||||
|
||||
## 1. Purpose
|
||||
|
||||
`MetaDatasXMLClass` is a simple container class designed for XML serialization within the test setup export system. It serves as a collection wrapper for `MetaDataXMLClass` objects, enabling the representation of multiple metadata entries as a single XML element structure. This class exists to facilitate the export and import of test setup metadata through .NET's XML serialization infrastructure.
|
||||
|
||||
## 2. Public Interface
|
||||
|
||||
### Class: `MetaDatasXMLClass`
|
||||
**Namespace:** `DTS.Common.XMLUtils`
|
||||
|
||||
| Member | Signature | Description |
|
||||
|--------|-----------|-------------|
|
||||
| `MetaDatas` | `List<MetaDataXMLClass> MetaDatas { get; set; }` | A collection of metadata entries. Decorated with `[XmlElement("MetaData")]`, meaning each item in the list will be serialized as an individual `<MetaData>` XML element. |
|
||||
|
||||
## 3. Invariants
|
||||
|
||||
- **XML Element Naming**: Each item in the `MetaDatas` collection will be serialized with the XML element name `"MetaData"` (singular), regardless of the property name being plural.
|
||||
- **Nullable Collection**: The `MetaDatas` property has no default initialization in a constructor; it may be `null` if not explicitly assigned before use.
|
||||
|
||||
## 4. Dependencies
|
||||
|
||||
### This module depends on:
|
||||
- `System.Xml.Serialization` - For the `XmlElementAttribute` used to control XML serialization behavior.
|
||||
- `MetaDataXMLClass` - Referenced type for list items (source not provided; expected to be defined elsewhere in the `DTS.Common.XMLUtils` namespace).
|
||||
|
||||
### Standard library dependencies:
|
||||
- `System`
|
||||
- `System.Collections.Generic`
|
||||
- `System.Linq` (imported but not used in source)
|
||||
- `System.Text` (imported but not used in source)
|
||||
- `System.Threading.Tasks` (imported but not used in source)
|
||||
|
||||
### What depends on this module:
|
||||
- Cannot be determined from source alone. Based on the file path structure (`TestSetupExportXML/TestSetups/TestSetup/MetaDatas/`), this class is likely used as a child element within a `TestSetup` XML structure.
|
||||
|
||||
## 5. Gotchas
|
||||
|
||||
- **Unused imports**: The file imports `System.Linq`, `System.Text`, and `System.Threading.Tasks` but does not use them. This is likely leftover code from a template or previous refactoring.
|
||||
- **Null reference risk**: The `MetaDatas` property is not initialized (no constructor or field initializer), so consumers should check for `null` before accessing the collection to avoid `NullReferenceException`.
|
||||
- **Naming inconsistency**: The property is named `MetaDatas` (plural) but serial
|
||||
@@ -0,0 +1,40 @@
|
||||
---
|
||||
source_files:
|
||||
- Common/DTS.CommonCore/XMLUtils/TestSetupExportXML/TestSetups/TestSetup/MetaDatas/MetaData/MetaDataXMLClass.cs
|
||||
generated_at: "2026-04-17T16:09:21.235661+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "914e95b8b19ba954"
|
||||
---
|
||||
|
||||
# MetaData
|
||||
|
||||
### Purpose
|
||||
This module defines `MetaDataXMLClass`, a data transfer object (DTO) used for XML serialization of test setup metadata. It represents individual metadata entries with attributes describing test objects, their properties, and associated values. This class serves as a leaf node in the test setup export XML hierarchy.
|
||||
|
||||
### Public Interface
|
||||
|
||||
**`MetaDataXMLClass`** - Public class for XML serialization.
|
||||
|
||||
| Member | Type | XML Mapping | Description |
|
||||
|--------|------|-------------|-------------|
|
||||
| `TestObject` | `string` | XML Attribute | Identifier for the test object. |
|
||||
| `SetupName` | `string` | XML Attribute | Name of the test setup. |
|
||||
| `PropName` | `string` | XML Attribute | Property name being described. |
|
||||
| `PropValue` | `string` | XML Attribute | Value of the property. |
|
||||
| `Optional` | `string` | XML Attribute | Flag or indicator for optionality (format unclear from source). |
|
||||
| `Version` | `string` | XML Attribute | Version information for this metadata entry. |
|
||||
|
||||
### Invariants
|
||||
- All properties are serialized as XML attributes (not elements).
|
||||
- All properties are nullable `string` types; no null checks or validation is enforced by the class itself.
|
||||
|
||||
### Dependencies
|
||||
- **Depends on**: `System.Xml.Serialization` (for `XmlAttribute` attribute).
|
||||
- **Dependents**: Likely consumed by a parent `MetaDatas` collection class (not provided in source).
|
||||
|
||||
### Gotchas
|
||||
- All properties use `string` type regardless of semantic meaning (e.g., `Optional` and `Version` may be expected to be boolean or numeric in downstream processing, but this class stores them as strings).
|
||||
- No constructor is defined; default parameterless constructor is required for XML serialization.
|
||||
|
||||
---
|
||||
Reference in New Issue
Block a user