servicecall_add_java - catyguan/sad GitHub Wiki

用例场景(加法)Java实现范例

服务端

public class SMAdd implements ServiceMethod {

	@Override
	public void execute(ServicePeer peer, Request req, Context ctx) {
		int pa = req.getInt("a");
		int pb = req.getInt("b");
		int pc = pa + pb;

		Answer a = new Answer();
		a.sureResult().put("Data", pc);
		peer.writeAnswer(a, null);
	}
}

客户端

Client cl = ...
Address addr = ...

Request req = new Request();
req.put("a", a);
req.put("b", b);
Context ctx = new Context();

Answer answer = cl.invoke(addr, req, ctx);
answer.checkError();
if (answer.isDone()) {
	ValueMap rs = answer.sureResult();
	int z = rs.getInt("Data");
} else {
	...
}