c
org.coursera.naptime.ari.graphql.controllers.middleware
SlowLogMiddleware
Companion object SlowLogMiddleware
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". 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
Linear Supertypes
Ordering
- Alphabetic
- By Inheritance
Inherited
- SlowLogMiddleware
- MiddlewareErrorField
- MiddlewareAfterField
- MiddlewareBeforeField
- MiddlewareExtension
- Middleware
- AnyRef
- Any
- Hide All
- Show All
Visibility
- Public
- All
Instance Constructors
- new SlowLogMiddleware(logger: Logger, isDebugMode: Boolean)
Type Members
-
type
FieldVal = Long
- Definition Classes
- SlowLogMiddleware → MiddlewareBeforeField
-
type
QueryVal = QueryMetrics
- Definition Classes
- SlowLogMiddleware → Middleware
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
afterField(queryVal: QueryMetrics, fieldVal: Long, value: Any, mctx: MiddlewareQueryContext[SangriaGraphQlContext, _, _], ctx: Context[SangriaGraphQlContext, _]): Option[Any]
- Definition Classes
- SlowLogMiddleware → MiddlewareAfterField
-
def
afterQuery(queryVal: QueryMetrics, context: MiddlewareQueryContext[SangriaGraphQlContext, _, _]): Unit
- Definition Classes
- SlowLogMiddleware → Middleware
-
def
afterQueryExtensions(queryVal: QueryMetrics, context: MiddlewareQueryContext[SangriaGraphQlContext, _, _]): Vector[Extension[_]]
- Definition Classes
- SlowLogMiddleware → MiddlewareExtension
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
beforeField(queryVal: QueryMetrics, mctx: MiddlewareQueryContext[SangriaGraphQlContext, _, _], ctx: Context[SangriaGraphQlContext, _]): BeforeFieldResult[SangriaGraphQlContext, Long]
- Definition Classes
- SlowLogMiddleware → MiddlewareBeforeField
-
def
beforeQuery(context: MiddlewareQueryContext[SangriaGraphQlContext, _, _]): QueryMetrics
- Definition Classes
- SlowLogMiddleware → Middleware
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
def
continue(fieldVal: FieldVal): BeforeFieldResult[SangriaGraphQlContext, FieldVal]
- Definition Classes
- MiddlewareBeforeField
-
lazy val
continue: BeforeFieldResult[SangriaGraphQlContext, Unit]
- Definition Classes
- MiddlewareBeforeField
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
fieldError(queryVal: QueryMetrics, fieldVal: Long, error: Throwable, mctx: MiddlewareQueryContext[SangriaGraphQlContext, _, _], ctx: Context[SangriaGraphQlContext, _]): Unit
- Definition Classes
- SlowLogMiddleware → MiddlewareErrorField
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
def
overrideAction(actionOverride: Action[SangriaGraphQlContext, _]): BeforeFieldResult[SangriaGraphQlContext, Unit]
- Definition Classes
- MiddlewareBeforeField
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()