Class IntrospectionService

Namespace
Cratis.Arc.Introspection
Assembly
Cratis.Arc.Core.dll

Represents an implementation of IIntrospectionService that discovers command and query endpoints using the same route-building logic as the endpoint mappers, and extracts XML documentation summaries.

[Singleton]
public class IntrospectionService : IIntrospectionService
Inheritance
IntrospectionService
Implements
Inherited Members
Extension Methods

Constructors

IntrospectionService(ICommandHandlerProviders, IQueryPerformerProviders, IOptions<ApiEndpointOptions>, IOptions<ArcOptions>)

Initializes a new instance of the IntrospectionService class.

public IntrospectionService(ICommandHandlerProviders commandHandlerProviders, IQueryPerformerProviders queryPerformerProviders, IOptions<ApiEndpointOptions> options, IOptions<ArcOptions> arcOptions)

Parameters

commandHandlerProviders ICommandHandlerProviders

The provider of all discovered command handlers.

queryPerformerProviders IQueryPerformerProviders

The provider of all discovered query performers.

options IOptions<ApiEndpointOptions>

Configuration options for routing.

arcOptions IOptions<ArcOptions>

General Arc options, including JSON serialization settings.

Properties

Commands

Gets all discovered command endpoint metadata.

public IReadOnlyList<CommandIntrospectionMetadata> Commands { get; }

Property Value

IReadOnlyList<CommandIntrospectionMetadata>

Queries

Gets all discovered query endpoint metadata.

public IReadOnlyList<QueryIntrospectionMetadata> Queries { get; }

Property Value

IReadOnlyList<QueryIntrospectionMetadata>