diff --git a/compiler/src/main/cpp/capnpc-java.c++ b/compiler/src/main/cpp/capnpc-java.c++ index c8e6bdd..4aba126 100644 --- a/compiler/src/main/cpp/capnpc-java.c++ +++ b/compiler/src/main/cpp/capnpc-java.c++ @@ -338,18 +338,22 @@ private: if (liteMode) { return kj::strTree("org.capnproto.Capability.", suffix); } + auto interfaceSuffix = kj::str(suffix); + if(suffix == kj::str("Builder") || suffix == kj::str("Reader")) { + interfaceSuffix = kj::str("Client"); + } auto interfaceSchema = type.asInterface(); if (interfaceSchema.getProto().getIsGeneric()) { auto typeArgs = getTypeArguments(interfaceSchema, interfaceSchema, kj::str(suffix)); return kj::strTree( - javaFullName(interfaceSchema), ".", suffix, "<", + javaFullName(interfaceSchema), ".", interfaceSuffix, "<", kj::StringTree(KJ_MAP(arg, typeArgs){ return kj::strTree(arg); }, ", "), ">" ); } else { - return kj::strTree(javaFullName(type.asInterface()), ".", suffix); + return kj::strTree(javaFullName(type.asInterface()), ".", interfaceSuffix); } } case schema::Type::LIST: diff --git a/runtime/src/main/java/org/capnproto/Capability.java b/runtime/src/main/java/org/capnproto/Capability.java index 4521c54..30eb6cf 100644 --- a/runtime/src/main/java/org/capnproto/Capability.java +++ b/runtime/src/main/java/org/capnproto/Capability.java @@ -11,8 +11,7 @@ import static org.capnproto.ClientHook.NULL_CAPABILITY_BRAND; public final class Capability { public static abstract class Factory - implements FromPointerReader, - FromPointerBuilder, + implements PointerFactory, SetPointerBuilder { public abstract T newClient(ClientHook hook);