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
storeIAnnotationStoreserviceMethodPairsIReadOnlyCollection<(string ServiceId, string MethodId)>