Class RecordingSchemaSnapshotBuilder

Namespace
Kuestenlogik.Bowire.Mocking
Assembly
Kuestenlogik.Bowire.dll

Phase-5 helper that captures the effective annotation set into a BowireRecordingSchemaSnapshot sidecar at the top of a recording file. The sidecar is what the workbench uses to mount widgets when a recording is opened — so a recording made against one user's annotations renders identically for another user whose local annotations differ.

public static class RecordingSchemaSnapshotBuilder
Inheritance
RecordingSchemaSnapshotBuilder
Inherited Members

Remarks

Pure transformation against an in-memory IAnnotationStore: no disk I/O, no logging, no exceptions thrown for unusual shapes (every annotation flows through as-is, since the snapshot's role is to reproduce the workbench's resolver output byte-for-byte). Filtering by (service, method) is optional — callers that want the whole catalogue pass an empty filter.

Methods

Build(IAnnotationStore, IReadOnlyCollection<(string ServiceId, string MethodId)>)

Snapshot every effective annotation visible in store that matches at least one of the supplied (serviceId, methodId) pairs. Pass an empty serviceMethodPairs set to capture every effective annotation in the store regardless of service / method (rare — recordings usually pin themselves to a known set of methods).

public static BowireRecordingSchemaSnapshot Build(IAnnotationStore store, IReadOnlyCollection<(string ServiceId, string MethodId)> serviceMethodPairs)

Parameters

store IAnnotationStore
serviceMethodPairs IReadOnlyCollection<(string ServiceId, string MethodId)>

Returns

BowireRecordingSchemaSnapshot