Class BowireRecordingFrame

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

One frame inside a streaming or duplex recording step — carries the frame payload plus the timestamp offset from the stream start, so streaming replay can pace emission at the original cadence.

public sealed class BowireRecordingFrame
Inheritance
BowireRecordingFrame
Inherited Members

Constructors

BowireRecordingFrame()

public BowireRecordingFrame()

Properties

Body

For sent frames: the message body the client transmitted.

[JsonPropertyName("body")]
public string? Body { get; set; }

Property Value

string

Data

[JsonPropertyName("data")]
public object? Data { get; set; }

Property Value

object

Discriminator

Phase-5 discriminator value for this frame — "*" for single-type methods, a concrete type name for multi-type channels. Optional: pre-Phase-5 captures omit the field and the framework treats the frame as wildcard.

[JsonPropertyName("discriminator")]
public string? Discriminator { get; set; }

Property Value

string

Index

[JsonPropertyName("index")]
public int Index { get; set; }

Property Value

int

Interpretations

Phase-5 interpretations captured for this frame. Replay re-emits these verbatim instead of re-running detection — see RecordingReplayInterpretationResolver. Optional; pre-Phase-5 frames omit the field.

[JsonPropertyName("interpretations")]
public IList<RecordedInterpretation>? Interpretations { get; init; }

Property Value

IList<RecordedInterpretation>

ResponseBinary

gRPC server-streaming only: base64-encoded raw wire bytes of this frame's protobuf payload. Consumed by streaming mock replay so each streamed frame emits 1:1 on the wire without re-encoding.

[JsonPropertyName("responseBinary")]
public string? ResponseBinary { get; set; }

Property Value

string

TimestampMs

[JsonPropertyName("timestampMs")]
public long? TimestampMs { get; set; }

Property Value

long?