langtools/src/jdk.jshell/share/classes/jdk/internal/jshell/remote/RemoteAgent.java
--- a/langtools/src/jdk.jshell/share/classes/jdk/internal/jshell/remote/RemoteAgent.java Fri May 20 17:00:03 2016 -0700
+++ b/langtools/src/jdk.jshell/share/classes/jdk/internal/jshell/remote/RemoteAgent.java Sat May 21 22:32:08 2016 -0700
@@ -24,6 +24,7 @@
*/
package jdk.internal.jshell.remote;
+import jdk.jshell.spi.SPIResolutionException;
import java.io.File;
import java.io.IOException;
import java.io.ObjectInputStream;
@@ -111,10 +112,11 @@
out.flush();
break;
}
+ String methodName = in.readUTF();
Method doitMethod;
try {
- this.getClass().getModule().addExports(RemoteResolutionException.class.getPackage().getName(), klass.getModule());
- doitMethod = klass.getDeclaredMethod(DOIT_METHOD_NAME, new Class<?>[0]);
+ this.getClass().getModule().addExports(SPIResolutionException.class.getPackage().getName(), klass.getModule());
+ doitMethod = klass.getDeclaredMethod(methodName, new Class<?>[0]);
doitMethod.setAccessible(true);
Object res;
try {
@@ -138,9 +140,9 @@
} catch (InvocationTargetException ex) {
Throwable cause = ex.getCause();
StackTraceElement[] elems = cause.getStackTrace();
- if (cause instanceof RemoteResolutionException) {
+ if (cause instanceof SPIResolutionException) {
out.writeInt(RESULT_CORRALLED);
- out.writeInt(((RemoteResolutionException) cause).id);
+ out.writeInt(((SPIResolutionException) cause).id());
} else {
out.writeInt(RESULT_EXCEPTION);
out.writeUTF(cause.getClass().getName());
@@ -254,27 +256,14 @@
if (value == null) {
return "null";
} else if (value instanceof String) {
- return "\"" + expunge((String)value) + "\"";
+ return "\"" + (String)value + "\"";
} else if (value instanceof Character) {
return "'" + value + "'";
} else {
- return expunge(value.toString());
+ return value.toString();
}
}
- /**
- * Expunge internal info from string
- * @param s string to process
- * @return string the display, JShell package and wrapper class names removed
- */
- static String expunge(String s) {
- StringBuilder sb = new StringBuilder();
- for (String comp : PREFIX_PATTERN.split(s)) {
- sb.append(comp);
- }
- return sb.toString();
- }
-
private static final class MultiplexingOutputStream extends OutputStream {
private static final int PACKET_SIZE = 127;