Table of Contents

Class EventDeclaration

Namespace
Typhon.Engine
Assembly
Typhon.Engine.dll

What an EventBuilder<T> declared.

public sealed class EventDeclaration
Inheritance
EventDeclaration
Inherited Members

Properties

EventType

The event's CLR type.

public Type EventType { get; }

Property Value

Type

Fields

Every field that travels: the ones the declaration gave a codec, in declaration order, then the rest of the record's public instance fields under the codec their CLR type defaults to, ordinally by name.

public IReadOnlyList<ProjectedField> Fields { get; }

Property Value

IReadOnlyList<ProjectedField>

Remarks

Order here is declaration order, not wire order. Wire order is W11's layout key, assigned once by Canonicalize(Catalog) for every record kind, so nothing sorts twice.

Exceptions

InvalidOperationException

A field's CLR type has no default codec and the declaration neither gave it one nor ignored it.

IgnoredFields

The record fields the declaration deliberately kept off the wire, in no particular order.

public IReadOnlyCollection<string> IgnoredFields { get; }

Property Value

IReadOnlyCollection<string>

Index

The order this event was declared in. Not the wire index, which is assigned when the catalog is built.

public int Index { get; }

Property Value

int

Name

The name it travels under.

public string Name { get; }

Property Value

string

QueueName

The event queue this declaration consumes.

public string QueueName { get; }

Property Value

string

Routing

How the event finds its sessions.

public EventRouting Routing { get; }

Property Value

EventRouting

RoutingEntityFields

The entity fields routing tests, in declaration order.

public IReadOnlyList<string> RoutingEntityFields { get; }

Property Value

IReadOnlyList<string>

RoutingRadiusM

The routing radius in metres; 0 when the routing declared none.

public double RoutingRadiusM { get; }

Property Value

double

Methods

ToString()

public override string ToString()

Returns

string