diff options
author | Robert Jaros <rjaros@finn.pl> | 2019-11-01 17:44:31 +0100 |
---|---|---|
committer | Robert Jaros <rjaros@finn.pl> | 2019-11-01 17:44:31 +0100 |
commit | 5763aa3b0004b678d7791b32e1a92b6facb9b17e (patch) | |
tree | 3bd6ca99f2f2dbec9e196ca63215c7ba4bce6603 /kvision-modules/kvision-server-ktor/src/main/kotlin | |
parent | c4a43b9c8ce6db65784e9bcb7073dcf6c4a6cd41 (diff) | |
download | kvision-5763aa3b0004b678d7791b32e1a92b6facb9b17e.tar.gz kvision-5763aa3b0004b678d7791b32e1a92b6facb9b17e.tar.bz2 kvision-5763aa3b0004b678d7791b32e1a92b6facb9b17e.zip |
Better exception handling in server-side interfaces.
Diffstat (limited to 'kvision-modules/kvision-server-ktor/src/main/kotlin')
-rw-r--r-- | kvision-modules/kvision-server-ktor/src/main/kotlin/pl/treksoft/kvision/remote/KVServiceManager.kt | 40 |
1 files changed, 24 insertions, 16 deletions
diff --git a/kvision-modules/kvision-server-ktor/src/main/kotlin/pl/treksoft/kvision/remote/KVServiceManager.kt b/kvision-modules/kvision-server-ktor/src/main/kotlin/pl/treksoft/kvision/remote/KVServiceManager.kt index e4a48bc3..62ce4f0c 100644 --- a/kvision-modules/kvision-server-ktor/src/main/kotlin/pl/treksoft/kvision/remote/KVServiceManager.kt +++ b/kvision-modules/kvision-server-ktor/src/main/kotlin/pl/treksoft/kvision/remote/KVServiceManager.kt @@ -124,11 +124,12 @@ actual open class KVServiceManager<T : Any> actual constructor(val serviceClass: ) ) } catch (e: Exception) { - LOG.error(e.message, e) + if (!(e is ServiceException)) LOG.error(e.message, e) call.respond( JsonRpcResponse( id = jsonRpcRequest.id, - error = e.message ?: "Error" + error = e.message ?: "Error", + exceptionType = e.javaClass.canonicalName ) ) } @@ -163,11 +164,12 @@ actual open class KVServiceManager<T : Any> actual constructor(val serviceClass: ) ) } catch (e: Exception) { - LOG.error(e.message, e) + if (!(e is ServiceException)) LOG.error(e.message, e) call.respond( JsonRpcResponse( id = jsonRpcRequest.id, - error = e.message ?: "Error" + error = e.message ?: "Error", + exceptionType = e.javaClass.canonicalName ) ) } @@ -211,11 +213,12 @@ actual open class KVServiceManager<T : Any> actual constructor(val serviceClass: ) ) } catch (e: Exception) { - LOG.error(e.message, e) + if (!(e is ServiceException)) LOG.error(e.message, e) call.respond( JsonRpcResponse( id = jsonRpcRequest.id, - error = e.message ?: "Error" + error = e.message ?: "Error", + exceptionType = e.javaClass.canonicalName ) ) } @@ -261,11 +264,12 @@ actual open class KVServiceManager<T : Any> actual constructor(val serviceClass: ) ) } catch (e: Exception) { - LOG.error(e.message, e) + if (!(e is ServiceException)) LOG.error(e.message, e) call.respond( JsonRpcResponse( id = jsonRpcRequest.id, - error = e.message ?: "Error" + error = e.message ?: "Error", + exceptionType = e.javaClass.canonicalName ) ) } @@ -312,11 +316,12 @@ actual open class KVServiceManager<T : Any> actual constructor(val serviceClass: ) ) } catch (e: Exception) { - LOG.error(e.message, e) + if (!(e is ServiceException)) LOG.error(e.message, e) call.respond( JsonRpcResponse( id = jsonRpcRequest.id, - error = e.message ?: "Error" + error = e.message ?: "Error", + exceptionType = e.javaClass.canonicalName ) ) } @@ -365,11 +370,12 @@ actual open class KVServiceManager<T : Any> actual constructor(val serviceClass: ) ) } catch (e: Exception) { - LOG.error(e.message, e) + if (!(e is ServiceException)) LOG.error(e.message, e) call.respond( JsonRpcResponse( id = jsonRpcRequest.id, - error = e.message ?: "Error" + error = e.message ?: "Error", + exceptionType = e.javaClass.canonicalName ) ) } @@ -464,11 +470,12 @@ actual open class KVServiceManager<T : Any> actual constructor(val serviceClass: ) ) } catch (e: Exception) { - LOG.error(e.message, e) + if (!(e is ServiceException)) LOG.error(e.message, e) call.respond( JsonRpcResponse( id = jsonRpcRequest.id, - error = e.message ?: "Error" + error = e.message ?: "Error", + exceptionType = e.javaClass.canonicalName ) ) } @@ -511,11 +518,12 @@ actual open class KVServiceManager<T : Any> actual constructor(val serviceClass: ) ) } catch (e: Exception) { - LOG.error(e.message, e) + if (!(e is ServiceException)) LOG.error(e.message, e) call.respond( JsonRpcResponse( id = jsonRpcRequest.id, - error = e.message ?: "Error" + error = e.message ?: "Error", + exceptionType = e.javaClass.canonicalName ) ) } |