in src/main/java/com/jetbrains/jdi/JDWPException.java [68:102]
RuntimeException toJDIException() {
switch (errorCode) {
case JDWP.Error.INVALID_OBJECT:
return new ObjectCollectedException();
case JDWP.Error.INVALID_MODULE:
return new InvalidModuleException();
case JDWP.Error.VM_DEAD:
return new VMDisconnectedException();
case JDWP.Error.OUT_OF_MEMORY:
return new VMOutOfMemoryException();
case JDWP.Error.CLASS_NOT_PREPARED:
return new ClassNotPreparedException();
case JDWP.Error.INVALID_FRAMEID:
case JDWP.Error.NOT_CURRENT_FRAME:
return new InvalidStackFrameException();
case JDWP.Error.NOT_IMPLEMENTED:
return new UnsupportedOperationException();
case JDWP.Error.INVALID_INDEX:
case JDWP.Error.INVALID_LENGTH:
return new IndexOutOfBoundsException();
case JDWP.Error.TYPE_MISMATCH:
return new InconsistentDebugInfoException();
case JDWP.Error.INVALID_THREAD:
return new IllegalThreadStateException();
case JDWP.Error.OPAQUE_FRAME:
return new InvalidStackFrameException("Opaque frame");
// return new OpaqueFrameException();
default:
InternalException internalException = new InternalException("Unexpected JDWP Error: " + errorCode, errorCode);
if (errorCode == JDWP.Error.INTERNAL) {
internalException.initCause(getCause());
}
return internalException;
}
}