case class RPCException(status: RPCStatus = RPCStatus.INTERNAL_ERROR_I0, message: String = "", cause: Option[Throwable] = None, appErrorCode: Option[Int] = None, metadata: Map[String, Any] = Map.empty) extends Exception with LogSupport with Product with Serializable
RPCException provides a backend-independent (e.g., Finagle or gRPC) RPC error reporting mechanism. Create this exception with (RPCStatus code).toException(...) method.
If necessary, we can add more standard error_details parameter like https://github.com/googleapis/googleapis/blob/master/google/rpc/error_details.proto
Linear Supertypes
Ordering
- Alphabetic
- By Inheritance
Inherited
- RPCException
- Product
- Equals
- LogSupport
- LazyLogger
- LoggingMethods
- Serializable
- Exception
- Throwable
- Serializable
- AnyRef
- Any
- Hide All
- Show All
Visibility
- Public
- All
Instance Constructors
- new RPCException(status: RPCStatus = RPCStatus.INTERNAL_ERROR_I0, message: String = "", cause: Option[Throwable] = None, appErrorCode: Option[Int] = None, metadata: Map[String, Any] = Map.empty)
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
-
final
def
addSuppressed(arg0: Throwable): Unit
- Definition Classes
- Throwable
- val appErrorCode: Option[Int]
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
- val cause: Option[Throwable]
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native() @HotSpotIntrinsicCandidate()
-
macro
def
debug(message: Any, cause: Throwable): Unit
- Attributes
- protected
- Definition Classes
- LoggingMethods
-
macro
def
debug(message: Any): Unit
- Attributes
- protected
- Definition Classes
- LoggingMethods
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
macro
def
error(message: Any, cause: Throwable): Unit
- Attributes
- protected
- Definition Classes
- LoggingMethods
-
macro
def
error(message: Any): Unit
- Attributes
- protected
- Definition Classes
- LoggingMethods
-
def
fillInStackTrace(): Throwable
- Definition Classes
- Throwable
-
def
getCause(): Throwable
- Definition Classes
- Throwable
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
def
getLocalizedMessage(): String
- Definition Classes
- Throwable
-
def
getMessage(): String
- Definition Classes
- Throwable
-
def
getStackTrace(): Array[StackTraceElement]
- Definition Classes
- Throwable
-
final
def
getSuppressed(): Array[Throwable]
- Definition Classes
- Throwable
-
macro
def
info(message: Any, cause: Throwable): Unit
- Attributes
- protected
- Definition Classes
- LoggingMethods
-
macro
def
info(message: Any): Unit
- Attributes
- protected
- Definition Classes
- LoggingMethods
-
def
initCause(arg0: Throwable): Throwable
- Definition Classes
- Throwable
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
macro
def
logAt(logLevel: LogLevel, message: Any): Unit
- Attributes
- protected
- Definition Classes
- LoggingMethods
-
lazy val
logger: Logger
- Attributes
- protected[this]
- Definition Classes
- LazyLogger
- val message: String
- val metadata: Map[String, Any]
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
noStackTrace: RPCException
Do not embed stacktrace and the cause objects in the RPC exception error response
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
def
printStackTrace(arg0: PrintWriter): Unit
- Definition Classes
- Throwable
-
def
printStackTrace(arg0: PrintStream): Unit
- Definition Classes
- Throwable
-
def
printStackTrace(): Unit
- Definition Classes
- Throwable
-
def
setStackTrace(arg0: Array[StackTraceElement]): Unit
- Definition Classes
- Throwable
- def shouldReportStackTrace: Boolean
- val status: RPCStatus
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
- def toJson: Json
- def toMessage: RPCErrorMessage
- def toMsgPack: MsgPack
-
def
toResponse: Response
Convert this exception to an HTTP response
-
def
toString(): String
- Definition Classes
- Throwable → AnyRef → Any
-
macro
def
trace(message: Any, cause: Throwable): Unit
- Attributes
- protected
- Definition Classes
- LoggingMethods
-
macro
def
trace(message: Any): Unit
- Attributes
- protected
- Definition Classes
- LoggingMethods
-
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()
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
macro
def
warn(message: Any, cause: Throwable): Unit
- Attributes
- protected
- Definition Classes
- LoggingMethods
-
macro
def
warn(message: Any): Unit
- Attributes
- protected
- Definition Classes
- LoggingMethods
Deprecated Value Members
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] ) @Deprecated
- Deprecated