I've been happily using protocol buffers to implement Java <-> Python interaction using OSGi Remote Services [1,2].
Remote Services is a spec that extends OSGi services to out-of-process access. A nice thing about the Remote Services spec is that it is transport-independent...allowing arbitrary wire protocols and serialization formats via a distribution provider. For example, I've created distribution providers based upon Py4j [1], and grcp/protocol buffers [2]. The distribution provider(s) can be selected at runtime for individual remote services. One thought I've had would be to allow remote services to be declared in .proto files, and generate the osgi remote service a) metadata; b) impl code; c) client code. I think one way to do this would be to implement protoc language additions for handling the service keyword, as grcp does. Another way would be to add something like osgiremoteservice keyword to protoc for handling declaring and generating osgi remote services across multiple languages. Question: Is there a way to add a new keyword to protoc? I would prefer not to just provide an impl of the existing proto3 'service' keyword, because an osgi remote service has other/additional behavior (e.g. dynamics, async access, etc) based upon the OSGi service registry. Thanks, Scott [1] https://github.com/ECF/Py4j-RemoteServicesProvider [2] https://github.com/ECF/grpc-RemoteServicesProvider -- You received this message because you are subscribed to the Google Groups "Protocol Buffers" group. To unsubscribe from this group and stop receiving emails from it, send an email to protobuf+unsubscr...@googlegroups.com. To post to this group, send email to protobuf@googlegroups.com. Visit this group at https://groups.google.com/group/protobuf. For more options, visit https://groups.google.com/d/optout.