class ExceptionManager extends AnyRef

A class to register com.twitter.finatra.http.exceptions.ExceptionMappers and handle exceptions.

Given an exception, the ExceptionManager will find an com.twitter.finatra.http.exceptions.ExceptionMapper to handle that particular class of exceptions. If the mapper for that exception isn't registered, the ExceptionManager will try the exception's parent class, and so on, until it reaches the Throwable class. The framework registers a "root" exception mapper over Throwable which will eventually be invoked. Users are free to register their own ExceptionMapper[Throwable] which overrides the "root" exception mapper.

Annotations
@Singleton()
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ExceptionManager
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new ExceptionManager(injector: Injector, statsReceiver: StatsReceiver)

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def add[T <: ExceptionMapper[_]](implicit arg0: Manifest[T]): Unit

    Add a com.twitter.finatra.http.exceptions.ExceptionMapper by type T

  5. def add(collection: ExceptionMapperCollection): Unit

    Add a collection of com.twitter.finatra.http.exceptions.ExceptionMapper as defined by a com.twitter.finatra.http.exceptions.ExceptionMapperCollection.

    Add a collection of com.twitter.finatra.http.exceptions.ExceptionMapper as defined by a com.twitter.finatra.http.exceptions.ExceptionMapperCollection. The collection is iterated over and each mapper contained therein is added. If a mapper has already been added for the given type T in ExceptionMapper[T], it will be replaced.

    collection

    - com.twitter.finatra.http.exceptions.ExceptionMapperCollection to add.

  6. def add[T <: Throwable](mapper: ExceptionMapper[T])(implicit arg0: Manifest[T]): Unit

    Add a com.twitter.finatra.http.exceptions.ExceptionMapper over type T to the manager.

    Add a com.twitter.finatra.http.exceptions.ExceptionMapper over type T to the manager. If a mapper has already been added for the given T, it will be replaced.

    T

    - exception class type which should subclass java.lang.Throwable

    mapper

    - com.twitter.finatra.http.exceptions.ExceptionMapper to add

  7. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  8. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  9. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  10. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  11. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  12. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  13. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  14. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  15. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  16. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  17. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  18. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  19. def toResponse(request: Request, throwable: Throwable): Response

    Returns a com.twitter.finagle.http.Response as computed by the matching com.twitter.finatra.http.exceptions.ExceptionMapper to the given throwable.

    Returns a com.twitter.finagle.http.Response as computed by the matching com.twitter.finatra.http.exceptions.ExceptionMapper to the given throwable.

    request

    - a com.twitter.finagle.http.Request

    throwable

    - java.lang.Throwable to match against registered ExceptionMappers.

    returns

    a com.twitter.finagle.http.Response

  20. def toString(): String
    Definition Classes
    AnyRef → Any
  21. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  22. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  23. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()

Inherited from AnyRef

Inherited from Any

Ungrouped