Class QuerySubscriber

Namespace
Cratis.Arc.Queries
Assembly
Cratis.Arc.Core.dll

Represents a single active subscriber for a query, combining connection and subscription data.

public sealed record QuerySubscriber : IEquatable<QuerySubscriber>
Inheritance
QuerySubscriber
Implements
Inherited Members
Extension Methods

Constructors

QuerySubscriber()

public QuerySubscriber()

Properties

ClientInfo

Gets client identity and transport information for this subscriber.

public required QuerySubscriptionClientInfo ClientInfo { get; init; }

Property Value

QuerySubscriptionClientInfo

ConnectedAt

Gets when this subscription was first established.

public required DateTimeOffset ConnectedAt { get; init; }

Property Value

DateTimeOffset

ConnectionId

Gets the connection identifier (e.g. ws-1 for WebSocket, a GUID for SSE).

public required string ConnectionId { get; init; }

Property Value

string

LastDataServedAt

Gets the last time data was served to this subscriber.

public DateTimeOffset? LastDataServedAt { get; init; }

Property Value

DateTimeOffset?

LastPingSentAt

Gets the last time a ping was sent to this subscriber.

public DateTimeOffset? LastPingSentAt { get; init; }

Property Value

DateTimeOffset?

LastPongReceivedAt

Gets the last time a pong was received from this subscriber.

public DateTimeOffset? LastPongReceivedAt { get; init; }

Property Value

DateTimeOffset?

Protocol

Gets the transport protocol (WebSocket or SSE).

public required string Protocol { get; init; }

Property Value

string

SubscriptionId

Gets the subscription identifier — the client-generated query ID.

public required string SubscriptionId { get; init; }

Property Value

string

Methods

Equals(QuerySubscriber?)

public bool Equals(QuerySubscriber? other)

Parameters

other QuerySubscriber

Returns

bool

Equals(object?)

public override bool Equals(object? obj)

Parameters

obj object

Returns

bool

GetHashCode()

public override int GetHashCode()

Returns

int

ToString()

public override string ToString()

Returns

string

Operators

operator ==(QuerySubscriber?, QuerySubscriber?)

public static bool operator ==(QuerySubscriber? left, QuerySubscriber? right)

Parameters

left QuerySubscriber
right QuerySubscriber

Returns

bool

operator !=(QuerySubscriber?, QuerySubscriber?)

public static bool operator !=(QuerySubscriber? left, QuerySubscriber? right)

Parameters

left QuerySubscriber
right QuerySubscriber

Returns

bool