Packages

package middleware

Type Members

  1. trait GraphQLMetricsCollector extends AnyRef
  2. class LoggingMetricsCollector extends GraphQLMetricsCollector with StrictLogging
  3. class MetricsCollectionMiddleware extends MiddlewareErrorField[SangriaGraphQlContext]
  4. class NoopMetricsCollector extends GraphQLMetricsCollector with StrictLogging
  5. class ResponseMetadataMiddleware extends MiddlewareExtension[SangriaGraphQlContext] with MiddlewareAfterField[SangriaGraphQlContext] with MiddlewareErrorField[SangriaGraphQlContext]
  6. class SlowLogMiddleware extends Middleware[SangriaGraphQlContext] with MiddlewareExtension[SangriaGraphQlContext] with MiddlewareAfterField[SangriaGraphQlContext] with MiddlewareErrorField[SangriaGraphQlContext]

    Why is this wrapper on sangria.slowlog.SlowLog necessary? It's type signature is Middleware[Any] with MiddlewareAfterField[Any] with MiddlewareErrorField[Any] with MiddlewareExtension[Any] where Any refers to the "userContext".

    Why is this wrapper on sangria.slowlog.SlowLog necessary? It's type signature is Middleware[Any] with MiddlewareAfterField[Any] with MiddlewareErrorField[Any] with MiddlewareExtension[Any] where Any refers to the "userContext". This prevents more specific userContext types such as SangriaGraphQlContext from directly working.

    Once the library is updated to support parametric types, we should get rid of this delegate and instantiate the SlowLog directly to pass into Executor.execute

Ungrouped