in runtime/src/main/scala/org/apache/pekko/grpc/scaladsl/GrpcExceptionHandler.scala [34:49]
def defaultMapper(system: ActorSystem): PartialFunction[Throwable, Trailers] = {
case e: ExecutionException =>
if (e.getCause == null) INTERNAL
else defaultMapper(system)(e.getCause)
case grpcException: GrpcServiceException => Trailers(grpcException.status, grpcException.metadata)
case e: NotImplementedError => Trailers(Status.UNIMPLEMENTED.withDescription(e.getMessage))
case e: UnsupportedOperationException => Trailers(Status.UNIMPLEMENTED.withDescription(e.getMessage))
case _: MissingParameterException => INVALID_ARGUMENT
case e: StatusRuntimeException =>
val meta = Option(e.getTrailers).getOrElse(new io.grpc.Metadata())
Trailers(e.getStatus, new GrpcMetadataImpl(meta))
case other =>
val log = Logging(system, "org.apache.pekko.grpc.scaladsl.GrpcExceptionHandler")
log.error(other, "Unhandled error: [{}]", other.getMessage)
INTERNAL
}