Files
DP44/docs/ai/Common/DTS.Common.Import/Parsers.md
2026-04-17 14:55:32 -04:00

52 lines
2.5 KiB
Markdown

---
source_files:
- Common/DTS.Common.Import/Parsers/ParseVariantBase.cs
- Common/DTS.Common.Import/Parsers/DefaultParseImport.cs
- Common/DTS.Common.Import/Parsers/DTSXMLParseImport.cs
generated_at: "2026-04-17T16:35:09.352474+00:00"
model: "zai-org/GLM-5-FP8"
schema_version: 1
sha256: "98d94de856736199"
---
# Documentation: DTS.Common.Import Parsers
## 1. Purpose
This module provides parsing infrastructure for importing data files into the DTS system. It defines an abstract base class `ParseVariantBase` for creating file-specific parsers, and two concrete implementations of `IParseImport` (`DefaultParseImport` and `DTSXMLParseImport`) that orchestrate the parsing process using processor classes. The module supports extensibility through injected parse variants and handles specialized XML import scenarios including hardware relationship linking.
---
## 2. Public Interface
### ParseVariantBase (Abstract Class)
**Namespace:** `DTS.Common.Import.Parsers`
**Implements:** `IParseVariant`
| Member | Signature | Description |
|--------|-----------|-------------|
| `FileName` | `string { get; set; }` | Property to store the name of the file being parsed. |
| `Parse` | `abstract void Parse(ref ImportObject importObject)` | Abstract method that derived classes must implement to perform parsing logic. Receives `ImportObject` by reference. |
---
### DefaultParseImport (Class)
**Namespace:** `DTS.Common.Import.Parsers`
**Implements:** `IParseImport`
| Member | Signature | Description |
|--------|-----------|-------------|
| Constructor | `DefaultParseImport(ImportObject importObject, IEnumerable<IParseVariant> parseVariants)` | Initializes the parser with an import object and a collection of parse variants. |
| `Parse` | `ImportObject Parse(IEnumerable<string> importFiles)` | Orchestrates parsing by creating a `ParseProcessor` with the configured variants and files. Returns the processed `ImportObject`. |
---
### DTSXMLParseImport (Class)
**Namespace:** `DTS.Common.Import`
**Implements:** `IParseImport`
| Member | Signature | Description |
|--------|-----------|-------------|
| Constructor | `DTSXMLParseImport(ImportObject importObject, IImportNotification importNotification, Func<bool> isCancelled = null, bool skipNormalizing = false)` | Initializes the XML parser with notification support, optional cancellation callback, and optional normalization skip. |
| `UIItems` | `List<IUIItems> { get; set; }` | Property for UI items, assigned to the internal `XMLParseProcessor` during parsing. |
| `Parse`