Skip to content

Class RestEndpointOverrideOptions

Namespace: Cephalon.AspNetCore.Hosting
Assembly: Cephalon.AspNetCore.dll

Describes one host-level override rule for descriptor-backed REST shorthand candidates.

public sealed class RestEndpointOverrideOptions

objectRestEndpointOverrideOptions

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

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

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

Initializes a new instance of the class.

public RestEndpointOverrideOptions(string id, IReadOnlyList<string>? candidateIds = null, IReadOnlyList<string>? behaviorIds = null, IReadOnlyList<string>? sourceModuleIds = null, IReadOnlyList<string>? authoringStyles = null, IReadOnlyList<int>? apiVersionMajors = null, IReadOnlyList<string>? methods = null, IReadOnlyList<string>? relativePatterns = null, IReadOnlyList<string>? routeGroupPrefixes = null, int? apiVersionMajor = null, string? method = null, string? pattern = null, string? routeGroupPrefix = null, string? openApiDocumentName = null, string? tagName = null, string? endpointName = null, string? summary = null, string? description = null, string? requiredCapabilityKey = null, bool clearRequiredCapability = false, IReadOnlyList<string>? requiredFeatureFlagIds = null, bool clearRequiredFeatureFlags = false, IReadOnlyList<RestEndpointBindingDescriptor>? bindings = null, IReadOnlyList<string>? removedBindingProperties = null, bool clearBindings = false, RestEndpointOverrideBindingMode bindingMode = RestEndpointOverrideBindingMode.Unspecified, bool clearEndpointName = false, bool clearSummary = false, bool clearDescription = false, IReadOnlyList<string>? openApiDocumentNames = null, IReadOnlyList<string>? tagNames = null, IReadOnlyList<string>? endpointNames = null, IReadOnlyList<RestEndpointBindingFallbackMode>? bindingFallbackModes = null, IReadOnlyList<RestEndpointBindingDescriptor>? targetBindings = null, IReadOnlyList<string>? hostGovernanceScopes = null, IReadOnlyList<string>? behaviorIdPrefixes = null, bool preserveImplicitQueryFallback = false)

id string

The stable override identifier.

candidateIds IReadOnlyList<string>?

The original shorthand candidate identifiers targeted by the override rule.

behaviorIds IReadOnlyList<string>?

The behavior identifiers targeted by the override rule.

sourceModuleIds IReadOnlyList<string>?

The source-module identifiers targeted by the override rule.

authoringStyles IReadOnlyList<string>?

The module-owned REST authoring styles targeted by the override rule. When omitted, the rule targets only shorthand styles behavior-module-profile and behavior-module-generated. Explicit behavior-module-dsl routes participate only when the owning route group opted into host governance.

apiVersionMajors IReadOnlyList<int>?

The effective API major versions targeted by the override rule before any override actions are applied.

methods IReadOnlyList<string>?

The effective HTTP methods targeted by the override rule before any override actions are applied.

relativePatterns IReadOnlyList<string>?

The shorthand relative route patterns targeted by the override rule before any override actions are applied.

routeGroupPrefixes IReadOnlyList<string>?

The published route-group prefixes targeted by the override rule before any override actions are applied.

apiVersionMajor int?

The effective API major version applied when the rule matches a shorthand candidate.

method string?

The effective HTTP method applied when the rule matches a shorthand candidate.

pattern string?

The effective relative route pattern applied when the rule matches a shorthand candidate.

routeGroupPrefix string?

The effective published route-group prefix applied when the rule matches a shorthand candidate.

openApiDocumentName string?

The effective OpenAPI document name applied when the rule matches a shorthand candidate.

tagName string?

The effective primary OpenAPI tag name applied when the rule matches a shorthand candidate.

endpointName string?

The effective endpoint name applied when the rule matches a shorthand candidate.

summary string?

The effective OpenAPI summary applied when the rule matches a shorthand candidate.

description string?

The effective OpenAPI description applied when the rule matches a shorthand candidate.

requiredCapabilityKey string?

The required Cephalon capability key enforced at the REST boundary when the rule matches a shorthand candidate.

clearRequiredCapability bool

true when the rule removes any previously declared Cephalon capability boundary from the matched shorthand candidate.

requiredFeatureFlagIds IReadOnlyList<string>?

The required Cephalon feature-flag identifiers enforced at the REST boundary when the rule matches a shorthand candidate.

clearRequiredFeatureFlags bool

true when the rule removes any previously declared Cephalon feature-flag requirements from the matched shorthand candidate.

bindings IReadOnlyList<RestEndpointBindingDescriptor>?

The effective explicit request-binding plan applied when the rule matches a shorthand candidate.

removedBindingProperties IReadOnlyList<string>?

The explicit shorthand binding properties removed from the source binding plan when the rule matches.

clearBindings bool

true when the rule removes the matched shorthand candidate’s entire explicit binding plan and returns publication to the implicit request-binding baseline.

bindingMode RestEndpointOverrideBindingMode

The mode used to apply bindings and removedBindingProperties to the shorthand candidate’s explicit binding plan.

clearEndpointName bool

true when the rule removes any previously declared shorthand endpoint name from the matched candidate.

clearSummary bool

true when the rule removes any previously declared shorthand endpoint summary from the matched candidate.

clearDescription bool

true when the rule removes any previously declared shorthand endpoint description from the matched candidate.

openApiDocumentNames IReadOnlyList<string>?

The original shorthand OpenAPI document names targeted by the override rule before any override actions are applied.

tagNames IReadOnlyList<string>?

The original shorthand primary OpenAPI tag names targeted by the override rule before any override actions are applied.

endpointNames IReadOnlyList<string>?

The original shorthand endpoint names targeted by the override rule before any override actions are applied.

bindingFallbackModes IReadOnlyList<RestEndpointBindingFallbackMode>?

The original shorthand request-binding fallback modes targeted by the override rule before any override actions are applied.

targetBindings IReadOnlyList<RestEndpointBindingDescriptor>?

The original shorthand explicit binding descriptors targeted by the override rule before any override actions are applied.

hostGovernanceScopes IReadOnlyList<string>?

The original shorthand host-governance scopes targeted by the override rule before any override actions are applied. This selector can also serve as the rule’s primary target when candidate, behavior, and source-module identifiers are intentionally omitted.

behaviorIdPrefixes IReadOnlyList<string>?

The behavior-id prefixes targeted by the override rule. Prefix matches use the stable dot-separated behavior-id hierarchy, so a prefix targets the exact behavior id and any descendant behavior ids beneath that prefix.

preserveImplicitQueryFallback bool

true when the rule opts the matched explicit-binding shorthand candidate into preserved implicit-query fallback for any remaining unbound query properties.

Gets the normalized action dimensions declared by this override rule.

public IReadOnlyList<RestEndpointOverrideActionKind> ActionKinds { get; }

IReadOnlyList<RestEndpointOverrideActionKind>

Gets the effective API major version applied when this override rule matches.

public int? ApiVersionMajor { get; }

int?

Gets the effective API major versions targeted by this override rule before override actions are applied.

public IReadOnlyList<int> ApiVersionMajors { get; }

IReadOnlyList<int>

Gets the normalized shorthand authoring styles targeted by this override rule.

public IReadOnlyList<string> AuthoringStyles { get; }

IReadOnlyList<string>

Gets the behavior-id prefixes targeted by this override rule.

public IReadOnlyList<string> BehaviorIdPrefixes { get; }

IReadOnlyList<string>

Gets the behavior identifiers targeted by this override rule.

public IReadOnlyList<string> BehaviorIds { get; }

IReadOnlyList<string>

Gets the original shorthand request-binding fallback modes targeted by this override rule before any override actions are applied.

public IReadOnlyList<RestEndpointBindingFallbackMode> BindingFallbackModes { get; }

IReadOnlyList<RestEndpointBindingFallbackMode>

Gets how and apply to the shorthand candidate’s explicit binding plan.

public RestEndpointOverrideBindingMode BindingMode { get; }

RestEndpointOverrideBindingMode

Gets the effective explicit request-binding plan applied when this override rule matches.

public IReadOnlyList<RestEndpointBindingDescriptor> Bindings { get; }

IReadOnlyList<RestEndpointBindingDescriptor>

Gets the original shorthand candidate identifiers targeted by this override rule.

public IReadOnlyList<string> CandidateIds { get; }

IReadOnlyList<string>

Gets a value indicating whether this override rule clears the matched shorthand candidate’s entire explicit binding plan.

public bool ClearBindings { get; }

bool

Gets a value indicating whether this override rule clears any previously declared endpoint description from the matched shorthand candidate.

public bool ClearDescription { get; }

bool

Gets a value indicating whether this override rule clears any previously declared endpoint name from the matched shorthand candidate.

public bool ClearEndpointName { get; }

bool

Gets a value indicating whether this override rule clears any previously declared Cephalon capability boundary from the matched shorthand candidate.

public bool ClearRequiredCapability { get; }

bool

Gets a value indicating whether this override rule clears any previously declared Cephalon feature-flag requirements from the matched shorthand candidate.

public bool ClearRequiredFeatureFlags { get; }

bool

Gets a value indicating whether this override rule clears any previously declared endpoint summary from the matched shorthand candidate.

public bool ClearSummary { get; }

bool

Gets the effective OpenAPI description applied when this override rule matches.

public string? Description { get; }

string?

Gets the effective endpoint name applied when this override rule matches.

public string? EndpointName { get; }

string?

Gets the original shorthand endpoint names targeted by this override rule before any override actions are applied.

public IReadOnlyList<string> EndpointNames { get; }

IReadOnlyList<string>

Gets a value indicating whether any targeting values or override actions were explicitly supplied.

public bool HasValues { get; }

bool

Gets the original shorthand host-governance scopes targeted by this override rule before any override actions are applied. These scopes can also act as the rule’s primary target.

public IReadOnlyList<string> HostGovernanceScopes { get; }

IReadOnlyList<string>

Gets the stable override identifier.

public string Id { get; }

string

Gets the effective HTTP method applied when this override rule matches.

public string? Method { get; }

string?

Gets the effective HTTP methods targeted by this override rule before override actions are applied.

public IReadOnlyList<string> Methods { get; }

IReadOnlyList<string>

Gets the effective OpenAPI document name applied when this override rule matches.

public string? OpenApiDocumentName { get; }

string?

Gets the original shorthand OpenAPI document names targeted by this override rule before any override actions are applied.

public IReadOnlyList<string> OpenApiDocumentNames { get; }

IReadOnlyList<string>

Gets the effective relative route pattern applied when this override rule matches.

public string? Pattern { get; }

string?

Gets a value indicating whether this override rule opts the matched explicit-binding shorthand candidate into preserved implicit-query fallback for remaining unbound query properties.

public bool PreserveImplicitQueryFallback { get; }

bool

Gets the shorthand relative route patterns targeted by this override rule before override actions are applied.

public IReadOnlyList<string> RelativePatterns { get; }

IReadOnlyList<string>

Gets the explicit shorthand binding properties removed from the source binding plan when this override rule matches.

public IReadOnlyList<string> RemovedBindingProperties { get; }

IReadOnlyList<string>

Gets the required Cephalon capability key enforced at the REST boundary when this override rule matches.

public string? RequiredCapabilityKey { get; }

string?

Gets the required Cephalon feature-flag identifiers enforced at the REST boundary when this override rule matches.

public IReadOnlyList<string> RequiredFeatureFlagIds { get; }

IReadOnlyList<string>

Gets the effective published route-group prefix applied when this override rule matches.

public string? RouteGroupPrefix { get; }

string?

Gets the published route-group prefixes targeted by this override rule before override actions are applied.

public IReadOnlyList<string> RouteGroupPrefixes { get; }

IReadOnlyList<string>

Gets the source-module identifiers targeted by this override rule.

public IReadOnlyList<string> SourceModuleIds { get; }

IReadOnlyList<string>

Gets the effective OpenAPI summary applied when this override rule matches.

public string? Summary { get; }

string?

Gets the effective primary OpenAPI tag name applied when this override rule matches.

public string? TagName { get; }

string?

Gets the original shorthand primary OpenAPI tag names targeted by this override rule before any override actions are applied.

public IReadOnlyList<string> TagNames { get; }

IReadOnlyList<string>

Gets the original shorthand explicit binding descriptors targeted by this override rule before any override actions are applied.

public IReadOnlyList<RestEndpointBindingDescriptor> TargetBindings { get; }

IReadOnlyList<RestEndpointBindingDescriptor>