private InterruptedException findInterrupt(System.Exception throwable) { InterruptedException exception = ExceptionTools.findDeepException <InterruptedException>(throwable, typeof(InterruptedException)); if (exception == null) { InterruptedIOException ioException = ExceptionTools.findDeepException <InterruptedIOException>(throwable, typeof(InterruptedIOException)); if (ioException != null && (ioException.Message == null || !ioException.Message.Contains("timed out"))) { exception = new InterruptedException(ioException.Message); } } if (exception == null && java.lang.Thread.interrupted()) { return(new InterruptedException()); } return(exception); }