Skip to content

Commit f9dc25a

Browse files
committed
fix: set up second phase on data extension surface
1 parent 1b27a9f commit f9dc25a

36 files changed

Lines changed: 6907 additions & 404 deletions

File tree

docs/reference/src/core/Flowthru.Core/Flowthru.Core.Data.Storage.Format.JsonFormatSerializer-1.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -255,8 +255,8 @@ to explicitly declare how it handles property name mapping.
255255
<strong>Implementation Strategies:</strong>
256256
</p>
257257
<ul><li>
258-
<strong>SerializedLabel:</strong> Use <xref href="Flowthru.Core.Data.Storage.Format.PropertyMappingHelper" data-throw-if-not-resolved="false"></xref>
259-
to respect <code>[SerializedLabel]</code> attributes. Return
258+
<strong>SerializedLabel:</strong> Consume <xref href="Flowthru.Core.Data.Serialization.PropertyMappingPlanner" data-throw-if-not-resolved="false"></xref>
259+
to walk properties and resolve <code>[SerializedLabel]</code>-driven field names. Return
260260
<xref href="Flowthru.Core.Data.Storage.PropertyMappingConfiguration.FromSerializedLabel%60%601" data-throw-if-not-resolved="false"></xref>.
261261
</li><li>
262262
<strong>LibraryControlled:</strong> The underlying library handles mapping with no

docs/reference/src/core/Flowthru.Core/Flowthru.Core.Data.Storage.Format.md

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,3 @@
66

77
Format serializer for JSON (JavaScript Object Notation) files.
88

9-
[PropertyMappingHelper](Flowthru.Core.Data.Storage.Format.PropertyMappingHelper.md)
10-
11-
Helper for mapping external field names to C# property names using SerializedLabel attribute.
12-

docs/reference/src/core/Flowthru.Core/Flowthru.Core.Data.Storage.IFormatSerializer-1.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -184,8 +184,8 @@ to explicitly declare how it handles property name mapping.
184184
<strong>Implementation Strategies:</strong>
185185
</p>
186186
<ul><li>
187-
<strong>SerializedLabel:</strong> Use <xref href="Flowthru.Core.Data.Storage.Format.PropertyMappingHelper" data-throw-if-not-resolved="false"></xref>
188-
to respect <code>[SerializedLabel]</code> attributes. Return
187+
<strong>SerializedLabel:</strong> Consume <xref href="Flowthru.Core.Data.Serialization.PropertyMappingPlanner" data-throw-if-not-resolved="false"></xref>
188+
to walk properties and resolve <code>[SerializedLabel]</code>-driven field names. Return
189189
<xref href="Flowthru.Core.Data.Storage.PropertyMappingConfiguration.FromSerializedLabel%60%601" data-throw-if-not-resolved="false"></xref>.
190190
</li><li>
191191
<strong>LibraryControlled:</strong> The underlying library handles mapping with no

docs/reference/src/core/Flowthru.Core/Flowthru.Core.Data.Storage.PropertyMappingConfiguration.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ public bool SupportsSerializedLabel { get; }
8484

8585
### <a id="Flowthru_Core_Data_Storage_PropertyMappingConfiguration_FromSerializedLabel__1"></a> FromSerializedLabel<TRow\>\(\)
8686

87-
Serializer uses SerializedLabel attributes via PropertyMappingHelper.
87+
Serializer uses SerializedLabel attributes via PropertyMappingPlanner.
8888

8989
```csharp
9090
public static PropertyMappingConfiguration FromSerializedLabel<TRow>()

docs/reference/src/core/Flowthru.Core/Flowthru.Core.Data.Storage.PropertyMappingStrategy.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ Underlying library controls mapping with no programmatic access.
1919

2020
`SerializedLabel = 0`
2121

22-
Serializer respects [SerializedLabel] attributes using PropertyMappingHelper.
22+
Serializer respects [SerializedLabel] attributes using PropertyMappingPlanner.
2323

2424

2525

docs/reference/src/core/Flowthru.Core/Flowthru.Core.Data.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@
44

55
[Flowthru.Core.Data.Capabilities](Flowthru.Core.Data.Capabilities.md)
66

7+
[Flowthru.Core.Data.Serialization](Flowthru.Core.Data.Serialization.md)
8+
79
[Flowthru.Core.Data.Storage](Flowthru.Core.Data.Storage.md)
810

911
[Flowthru.Core.Data.Validation](Flowthru.Core.Data.Validation.md)

docs/reference/src/core/Flowthru.Core/Flowthru.Core.Graph.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -23,14 +23,14 @@ Base capability metadata for all DAG node types.
2323

2424
### Interfaces
2525

26+
[INode<T\>](Flowthru.Core.Graph.INode\-1.md)
27+
28+
Typed DAG node contract. Adds strongly-typed <xref href="Flowthru.Core.Graph.INode%601.Produce" data-throw-if-not-resolved="false"></xref> and
29+
<xref href="Flowthru.Core.Graph.INode%601.Consume(%600)" data-throw-if-not-resolved="false"></xref> operations alongside the untyped engine dispatch surface.
30+
2631
[INode](Flowthru.Core.Graph.INode.md)
2732

2833
Engine-level contract for all DAG nodes. The execution engine dispatches
2934
<xref href="Flowthru.Core.Graph.INode.ProduceUntyped" data-throw-if-not-resolved="false"></xref>, <xref href="Flowthru.Core.Graph.INode.ConsumeUntyped(System.Object)" data-throw-if-not-resolved="false"></xref>, and <xref href="Flowthru.Core.Graph.INode.Validate" data-throw-if-not-resolved="false"></xref>
3035
without knowing the node's specific archetype.
3136

32-
[INode<T\>](Flowthru.Core.Graph.INode\-1.md)
33-
34-
Typed DAG node contract. Adds strongly-typed <xref href="Flowthru.Core.Graph.INode%601.Produce" data-throw-if-not-resolved="false"></xref> and
35-
<xref href="Flowthru.Core.Graph.INode%601.Consume(%600)" data-throw-if-not-resolved="false"></xref> operations alongside the untyped engine dispatch surface.
36-

docs/reference/src/core/Flowthru.Core/toc.yml

Lines changed: 21 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,27 @@
6565
- name: Classes
6666
- name: StorageTraits
6767
href: Flowthru.Core.Data.Capabilities.StorageTraits.md
68+
- name: Flowthru.Core.Data.Serialization
69+
href: Flowthru.Core.Data.Serialization.md
70+
items:
71+
- name: Classes
72+
- name: EnumBindingInfo
73+
href: Flowthru.Core.Data.Serialization.EnumBindingInfo.md
74+
- name: IScalarBindingInfo
75+
href: Flowthru.Core.Data.Serialization.IScalarBindingInfo.md
76+
- name: OptOutOfPropertyPlannerAttribute
77+
href: Flowthru.Core.Data.Serialization.OptOutOfPropertyPlannerAttribute.md
78+
- name: PropertyBinding
79+
href: Flowthru.Core.Data.Serialization.PropertyBinding.md
80+
- name: PropertyMappingPlan<TRow>
81+
href: Flowthru.Core.Data.Serialization.PropertyMappingPlan-1.md
82+
- name: PropertyMappingPlanner
83+
href: Flowthru.Core.Data.Serialization.PropertyMappingPlanner.md
84+
- name: PropertyMappingPlannerOptions
85+
href: Flowthru.Core.Data.Serialization.PropertyMappingPlannerOptions.md
86+
- name: Enums
87+
- name: PropertyKind
88+
href: Flowthru.Core.Data.Serialization.PropertyKind.md
6889
- name: Flowthru.Core.Data.Storage
6990
href: Flowthru.Core.Data.Storage.md
7091
items:
@@ -121,8 +142,6 @@
121142
- name: Classes
122143
- name: JsonFormatSerializer<TRow>
123144
href: Flowthru.Core.Data.Storage.Format.JsonFormatSerializer-1.md
124-
- name: PropertyMappingHelper
125-
href: Flowthru.Core.Data.Storage.Format.PropertyMappingHelper.md
126145
- name: Flowthru.Core.Data.Storage.Medium
127146
href: Flowthru.Core.Data.Storage.Medium.md
128147
items:

docs/reference/src/extensions/Flowthru.Extensions.Csv/Flowthru.Core.Data.Storage.Format.CsvFormatSerializer-1.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -316,8 +316,8 @@ to explicitly declare how it handles property name mapping.
316316
<strong>Implementation Strategies:</strong>
317317
</p>
318318
<ul><li>
319-
<strong>SerializedLabel:</strong> Use <xref href="Flowthru.Core.Data.Storage.Format.PropertyMappingHelper" data-throw-if-not-resolved="false"></xref>
320-
to respect <code>[SerializedLabel]</code> attributes. Return
319+
<strong>SerializedLabel:</strong> Consume <xref href="Flowthru.Core.Data.Serialization.PropertyMappingPlanner" data-throw-if-not-resolved="false"></xref>
320+
to walk properties and resolve <code>[SerializedLabel]</code>-driven field names. Return
321321
<xref href="Flowthru.Core.Data.Storage.PropertyMappingConfiguration.FromSerializedLabel%60%601" data-throw-if-not-resolved="false"></xref>.
322322
</li><li>
323323
<strong>LibraryControlled:</strong> The underlying library handles mapping with no

docs/reference/src/extensions/Flowthru.Extensions.Excel/Flowthru.Core.Data.Storage.Format.ExcelFormatSerializer-1.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -217,8 +217,8 @@ to explicitly declare how it handles property name mapping.
217217
<strong>Implementation Strategies:</strong>
218218
</p>
219219
<ul><li>
220-
<strong>SerializedLabel:</strong> Use <xref href="Flowthru.Core.Data.Storage.Format.PropertyMappingHelper" data-throw-if-not-resolved="false"></xref>
221-
to respect <code>[SerializedLabel]</code> attributes. Return
220+
<strong>SerializedLabel:</strong> Consume <xref href="Flowthru.Core.Data.Serialization.PropertyMappingPlanner" data-throw-if-not-resolved="false"></xref>
221+
to walk properties and resolve <code>[SerializedLabel]</code>-driven field names. Return
222222
<xref href="Flowthru.Core.Data.Storage.PropertyMappingConfiguration.FromSerializedLabel%60%601" data-throw-if-not-resolved="false"></xref>.
223223
</li><li>
224224
<strong>LibraryControlled:</strong> The underlying library handles mapping with no

0 commit comments

Comments
 (0)