AuthPluginConformanceSuite<TContext>.fromRuntime constructor

AuthPluginConformanceSuite<TContext>.fromRuntime(
  1. AuthRuntime<TContext> runtime, {
  2. Map<String, String> publicEndpointClientExceptions = const <String, String>{},
  3. Iterable<AuthInstalledClientOperationContract> installedClientOperations = const <AuthInstalledClientOperationContract>[],
})

Creates a suite for the plugins composed into runtime.

Every public endpoint must have a matching client operation. Use publicEndpointClientExceptions only for deliberate protocol or discovery endpoints, with a non-empty explanation for each omission.

Implementation

AuthPluginConformanceSuite.fromRuntime(
  AuthRuntime<TContext> runtime, {
  Map<String, String> publicEndpointClientExceptions =
      const <String, String>{},
  Iterable<AuthInstalledClientOperationContract> installedClientOperations =
      const <AuthInstalledClientOperationContract>[],
}) : _plugins = List<AuthServerPlugin<TContext>>.unmodifiable(
       runtime.plugins,
     ),
     _endpoints = List<AuthEndpointDescriptor<TContext>>.unmodifiable(
       runtime.registry.endpoints,
     ),
     _publicEndpoints = List<AuthEndpointDescriptor<TContext>>.unmodifiable(
       runtime.registry.publicEndpoints,
     ),
     _persistenceSchemas = List<AuthPersistenceSchema>.unmodifiable(
       runtime.registry.persistenceSchemas,
     ),
     _clientOperations = List<AuthClientOperationDescriptor>.unmodifiable(
       runtime.registry.clientOperations,
     ),
     _rateLimitOperations = List<AuthRateLimitOperation>.unmodifiable(
       runtime.registry.rateLimitOperations,
     ),
     _publicEndpointClientExceptions = Map<String, String>.unmodifiable(
       publicEndpointClientExceptions,
     ),
     _installedClientOperations =
         List<AuthInstalledClientOperationContract>.unmodifiable(
           installedClientOperations,
         );