Fixes golang/go#12403 Change-Id: I9b8e6d69beb1ceb27e991348212acb5054497e47 Reviewed-on: https://go-review.googlesource.com/14077 Reviewed-by: David Crawshaw <crawshaw@golang.org>
99 lines
3.3 KiB
Plaintext
99 lines
3.3 KiB
Plaintext
// Java class go.issue12403.Issue12403 is a proxy for talking to a Go program.
|
|
// gobind -lang=java issue12403
|
|
//
|
|
// File is generated by gobind. Do not edit.
|
|
package go.issue12403;
|
|
|
|
import go.Seq;
|
|
|
|
public abstract class Issue12403 {
|
|
private Issue12403() {} // uninstantiable
|
|
|
|
public interface Parsable extends go.Seq.Object {
|
|
public String FromJSON(String jstr);
|
|
|
|
public String ToJSON() throws Exception;
|
|
|
|
public static abstract class Stub implements Parsable {
|
|
static final String DESCRIPTOR = "go.issue12403.Parsable";
|
|
|
|
private final go.Seq.Ref ref;
|
|
public Stub() {
|
|
ref = go.Seq.createRef(this);
|
|
}
|
|
|
|
public go.Seq.Ref ref() { return ref; }
|
|
|
|
public void call(int code, go.Seq in, go.Seq out) {
|
|
switch (code) {
|
|
case Proxy.CALL_FromJSON: {
|
|
String param_jstr;
|
|
param_jstr = in.readString();
|
|
String result = this.FromJSON(param_jstr);
|
|
out.writeString(result);
|
|
return;
|
|
}
|
|
case Proxy.CALL_ToJSON: {
|
|
try {
|
|
String result = this.ToJSON();
|
|
out.writeString(result);
|
|
out.writeString(null);
|
|
} catch (Exception e) {
|
|
String result = null;
|
|
out.writeString(result);
|
|
out.writeString(e.getMessage());
|
|
}
|
|
return;
|
|
}
|
|
default:
|
|
throw new RuntimeException("unknown code: "+ code);
|
|
}
|
|
}
|
|
}
|
|
|
|
static final class Proxy implements Parsable {
|
|
static final String DESCRIPTOR = Stub.DESCRIPTOR;
|
|
|
|
private go.Seq.Ref ref;
|
|
|
|
Proxy(go.Seq.Ref ref) { this.ref = ref; }
|
|
|
|
public go.Seq.Ref ref() { return ref; }
|
|
|
|
public void call(int code, go.Seq in, go.Seq out) {
|
|
throw new RuntimeException("cycle: cannot call proxy");
|
|
}
|
|
|
|
public String FromJSON(String jstr) {
|
|
go.Seq _in = new go.Seq();
|
|
go.Seq _out = new go.Seq();
|
|
String _result;
|
|
_in.writeRef(ref);
|
|
_in.writeString(jstr);
|
|
Seq.send(DESCRIPTOR, CALL_FromJSON, _in, _out);
|
|
_result = _out.readString();
|
|
return _result;
|
|
}
|
|
|
|
public String ToJSON() throws Exception {
|
|
go.Seq _in = new go.Seq();
|
|
go.Seq _out = new go.Seq();
|
|
String _result;
|
|
_in.writeRef(ref);
|
|
Seq.send(DESCRIPTOR, CALL_ToJSON, _in, _out);
|
|
_result = _out.readString();
|
|
String _err = _out.readString();
|
|
if (_err != null) {
|
|
throw new Exception(_err);
|
|
}
|
|
return _result;
|
|
}
|
|
|
|
static final int CALL_FromJSON = 0x10a;
|
|
static final int CALL_ToJSON = 0x20a;
|
|
}
|
|
}
|
|
|
|
private static final String DESCRIPTOR = "issue12403";
|
|
}
|