Skip to content

GroupContainer

GroupContainer extends SegmentGroup with an explicit header/trailer segment pair and a member-only Segments collection that excludes the group's own control (header/trailer) segments (BR-033). It is the common base for FunctionalGroup, TransactionSet, HierarchialTransaction, and HierarchialLevel, each of which adds its own typed header/trailer segment properties on top of this shared shape.

Purpose

  • Provides HeaderSegment/TrailerSegment, the raw control segments (e.g. GS/GE, ST/SE) that delimit this group, populated by EdiGroupParser when constructing the concrete group type.
  • Provides Segments, the member segments belonging to this group with control segments filtered out (BR-033), distinct from the raw List<IEdiSegment> membership inherited from SegmentGroup which includes the control segments.

Context

  • Namespace: SAIF.Common.Files.Edi
  • Assembly/package: SAIF.Framework.Common.Files
  • Base class: SegmentGroup
  • Also derives (transitively) from List<IEdiSegment> (framework-standard collection base)

Public members

Member Signature Purpose
HeaderSegment public IEdiSegment HeaderSegment { get; internal set; } The raw control segment that opens this group (e.g. the GS segment for a FunctionalGroup, the ST segment for a TransactionSet).
TrailerSegment public IEdiSegment TrailerSegment { get; internal set; } The raw control segment that closes this group (e.g. the GE segment for a FunctionalGroup, the SE segment for a TransactionSet).
Segments public IEnumerable<IEdiSegment> Segments { get; internal set; } The group's member segments with header/trailer control segments excluded (BR-033); initialized to an empty list by the constructor and populated by EdiGroupParser.

Inherited public members

Members in this section are inherited from SegmentGroup in SAIF.Framework.Common.Files. They are available on this type through inheritance.

Member Signature Purpose Origin
SegmentGroupId public string SegmentGroupId { get; set; } The segment tag that this group was delimited by during parsing. SAIF.Framework.Common.Files — SegmentGroup
Index public int Index { get; set; } The sequential ordinal assigned to this group instance among its sibling groups. SAIF.Framework.Common.Files — SegmentGroup
Key public string Key { get; set; } The control-number value that uniquely identifies this group occurrence (BR-034). SAIF.Framework.Common.Files — SegmentGroup
Level public int Level { get; set; } The nesting depth of this group, defaulted to 0. SAIF.Framework.Common.Files — SegmentGroup

Constraints and usage notes

  • SegmentGroup itself derives from the framework-standard List<IEdiSegment>; that raw-list membership includes control segments, whereas this type's own Segments property deliberately excludes them (BR-033).

Sources

  • Common\SAIF.Common.Files\Edi\GroupContainer.cs