Class BehaviorTopologyDescriptor
Namespace: Cephalon.Abstractions.Behaviors
Assembly: Cephalon.Abstractions.dll
Describes the resolved topology for a single behavior, including its pattern, transports, feature flags, and shared logical API surface.
public sealed class BehaviorTopologyDescriptorInheritance
Section titled “Inheritance”object ← BehaviorTopologyDescriptor
Inherited Members
Section titled “Inherited Members”object.Equals(object?), object.Equals(object?, object?), object.GetHashCode(), object.GetType(), object.ReferenceEquals(object?, object?), object.ToString()
Constructors
Section titled “Constructors”BehaviorTopologyDescriptor(string, string, IReadOnlyList<string>, bool, bool, bool, BehaviorApiSurfaceDescriptor?, string?, string?, IReadOnlyList<string>?, string?, IReadOnlyDictionary<string, string>?)
Section titled “ BehaviorTopologyDescriptor(string, string, IReadOnlyList<string>, bool, bool, bool, BehaviorApiSurfaceDescriptor?, string?, string?, IReadOnlyList<string>?, string?, IReadOnlyDictionary<string, string>?)”Initializes a new instance of
public BehaviorTopologyDescriptor(string id, string pattern, IReadOnlyList<string> transportIds, bool inboxEnabled = false, bool outboxEnabled = false, bool eventSourcingEnabled = false, BehaviorApiSurfaceDescriptor? apiSurface = null, string? displayName = null, string? description = null, IReadOnlyList<string>? requiredFeatureFlagIds = null, string? sourceModuleId = null, IReadOnlyDictionary<string, string>? metadata = null)Parameters
Section titled “Parameters”id string
pattern string
transportIds IReadOnlyList<string>
inboxEnabled bool
outboxEnabled bool
eventSourcingEnabled bool
apiSurface BehaviorApiSurfaceDescriptor?
displayName string?
description string?
requiredFeatureFlagIds IReadOnlyList<string>?
sourceModuleId string?
metadata IReadOnlyDictionary<string, string>?
Properties
Section titled “Properties”ApiSurface
Section titled “ ApiSurface”Gets the logical public API surface projected by route-shaped transport adapters.
public BehaviorApiSurfaceDescriptor ApiSurface { get; }Property Value
Section titled “Property Value”Remarks
Section titled “Remarks”When no explicit API surface is supplied, the descriptor derives one from the behavior identifier so route-shaped transports can project canonical paths without hard-coding the behavior id into every transport binding.
Description
Section titled “ Description”Gets the optional description.
public string? Description { get; }Property Value
Section titled “Property Value”DisplayName
Section titled “ DisplayName”Gets the optional display name.
public string? DisplayName { get; }Property Value
Section titled “Property Value”EventSourcingEnabled
Section titled “ EventSourcingEnabled”Gets a value indicating whether event sourcing is wired into the behavior context.
public bool EventSourcingEnabled { get; }Property Value
Section titled “Property Value”Gets the behavior identifier.
public string Id { get; }Property Value
Section titled “Property Value”InboxEnabled
Section titled “ InboxEnabled”Gets a value indicating whether inbox deduplication is enabled.
public bool InboxEnabled { get; }Property Value
Section titled “Property Value”Metadata
Section titled “ Metadata”Gets additional metadata.
public IReadOnlyDictionary<string, string> Metadata { get; }Property Value
Section titled “Property Value”IReadOnlyDictionary<string, string>
OutboxEnabled
Section titled “ OutboxEnabled”Gets a value indicating whether outbox staging is enabled.
public bool OutboxEnabled { get; }Property Value
Section titled “Property Value”Pattern
Section titled “ Pattern”Gets the pattern identifier (e.g. “cqrs”, “event-driven”, “saga-step”, “saga-choreography”, “process-manager”, “durable-execution”, “direct”).
public string Pattern { get; }Property Value
Section titled “Property Value”RequiredFeatureFlagIds
Section titled “ RequiredFeatureFlagIds”Gets the ordered feature-flag identifiers that must resolve to enabled before the behavior can execute.
public IReadOnlyList<string> RequiredFeatureFlagIds { get; }Property Value
Section titled “Property Value”SourceModuleId
Section titled “ SourceModuleId”Gets the module identifier that owns this behavior when ownership is known at runtime.
public string? SourceModuleId { get; }Property Value
Section titled “Property Value”TransportIds
Section titled “ TransportIds”Gets the transport identifiers configured for this behavior.
public IReadOnlyList<string> TransportIds { get; }