in connector/src/main/scala/com/datastax/spark/connector/cql/SessionProxy.scala [48:74]
override def invoke(proxy: Any, method: Method, args: Array[AnyRef]) = {
try {
(method.getName, method.getParameterTypes) match {
case ("close", Array()) =>
onClose()
null
case ("closeUnderlying", Array()) =>
session.close()
null
case ("isClosed", Array()) =>
closed.asInstanceOf[AnyRef]
case _ =>
try {
method.invoke(session, args: _*)
}
catch {
case e: InvocationTargetException =>
throw e.getCause
}
}
}
finally {
if (method.getName == "close") {
onClose()
}
}
}