Skip to content

Class RestEndpointCandidateProjectionDescriptor

Namespace: Cephalon.Abstractions.Transports
Assembly: Cephalon.Abstractions.dll

Describes one module-owned REST candidate projection shape before publication precedence or host-level overrides are applied.

public sealed class RestEndpointCandidateProjectionDescriptor

objectRestEndpointCandidateProjectionDescriptor

object.Equals(object?), object.Equals(object?, object?), object.GetHashCode(), object.GetType(), object.ReferenceEquals(object?, object?), object.ToString()

RestEndpointCandidateProjectionDescriptor(string, string, string, string, int?, string?, IReadOnlyList<RestEndpointBindingDescriptor>?, RestEndpointBindingFallbackMode?, string?, bool, string?)

Section titled “ RestEndpointCandidateProjectionDescriptor(string, string, string, string, int?, string?, IReadOnlyList<RestEndpointBindingDescriptor>?, RestEndpointBindingFallbackMode?, string?, bool, string?)”

Creates a REST endpoint candidate projection descriptor.

public RestEndpointCandidateProjectionDescriptor(string method, string routePattern, string routeGroupPrefix, string relativePattern, int? apiVersionMajor = null, string? openApiDocumentName = null, IReadOnlyList<RestEndpointBindingDescriptor>? bindingDescriptors = null, RestEndpointBindingFallbackMode? bindingFallbackMode = null, string? tagName = null, bool allowsHostGovernance = true, string? hostGovernanceScope = null)

method string

The projected HTTP method.

routePattern string

The projected route pattern including the host REST prefix.

routeGroupPrefix string

The projected route-group prefix including the host REST prefix.

relativePattern string

The projected route pattern relative to the owning route group.

apiVersionMajor int?

The projected public API major version when one is available.

openApiDocumentName string?

The projected OpenAPI document name when one is available.

bindingDescriptors IReadOnlyList<RestEndpointBindingDescriptor>?

The projected request-binding descriptors when the projection exposes an explicit binding plan.

bindingFallbackMode RestEndpointBindingFallbackMode?

The projected request-binding fallback mode when the projection preserves deterministic request-binding behavior beyond the explicit binding plan, such as preserved source implicit-query fallback or preserved remaining request-body fallback.

tagName string?

The projected primary OpenAPI tag name when one is available.

allowsHostGovernance bool

true when host-level REST suppression and override rules are allowed to govern this projection candidate; otherwise, false. Shorthand candidates typically enable this automatically, while explicit module-DSL candidates stay authoritative unless the owning route group opts into host governance.

hostGovernanceScope string?

The stable host-governance scope carried by the original authored route group when one is available.

Gets a value indicating whether host-level REST suppression and override rules are allowed to govern this projection candidate. Shorthand candidates typically enable this automatically, while explicit module-DSL candidates stay authoritative unless the owning route group opts into host governance.

public bool AllowsHostGovernance { get; }

bool

Gets the projected public API major version when one is available.

public int? ApiVersionMajor { get; }

int?

Gets the projected request-binding descriptors when the projection exposes an explicit binding plan.

public IReadOnlyList<RestEndpointBindingDescriptor> BindingDescriptors { get; }

IReadOnlyList<RestEndpointBindingDescriptor>

Gets the projected request-binding fallback mode when the projection preserves deterministic request-binding behavior beyond the explicit binding plan, such as preserved source implicit-query fallback or preserved remaining request-body fallback.

[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
public RestEndpointBindingFallbackMode? BindingFallbackMode { get; }

RestEndpointBindingFallbackMode?

Gets the stable host-governance scope carried by the original authored route group when one is available.

[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
public string? HostGovernanceScope { get; }

string?

Gets the projected HTTP method.

public string Method { get; }

string

Gets the projected OpenAPI document name when one is available.

public string? OpenApiDocumentName { get; }

string?

Gets the projected route pattern relative to the owning route group.

public string RelativePattern { get; }

string

Gets the projected route-group prefix including the host REST prefix.

public string RouteGroupPrefix { get; }

string

Gets the projected route pattern including the host REST prefix.

public string RoutePattern { get; }

string

Gets the projected primary OpenAPI tag name when one is available.

[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
public string? TagName { get; }

string?