Re: [protobuf] new protoc keywords?

2017-04-28 Thread 'Josh Haberman' via Protocol Buffers
I agree with Josh. It is very unlikely that we would introduce new keywords 
for defining a different kind of service.

On Wednesday, April 26, 2017 at 12:45:29 PM UTC-7, Josh Humphries wrote:
>
> I think the right approach to something like this would be to use the 
> existing service definition support and write a protoc plugin that does the 
> code gen. To layer on extra things -- for concepts/features that OSGI 
> supports but that can't be modeled just with proto service definitions -- 
>  you could probably use custom options for services and methods. More 
> complicated things may require clever modeling with the request/response 
> types (and maybe custom message and field options, too). These primitives 
> can likely take you pretty far, without introducing any special syntax or 
> keywords in protos.
>
>
> 
> *Josh Humphries*
> jh...@bluegosling.com
>
> On Tue, Apr 25, 2017 at 6:53 PM, Scott Lewis  
> wrote:
>
>> 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.
>>
>
>

-- 
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.


Re: [protobuf] new protoc keywords?

2017-04-26 Thread Josh Humphries
I think the right approach to something like this would be to use the
existing service definition support and write a protoc plugin that does the
code gen. To layer on extra things -- for concepts/features that OSGI
supports but that can't be modeled just with proto service definitions --
 you could probably use custom options for services and methods. More
complicated things may require clever modeling with the request/response
types (and maybe custom message and field options, too). These primitives
can likely take you pretty far, without introducing any special syntax or
keywords in protos.



*Josh Humphries*
jh...@bluegosling.com

On Tue, Apr 25, 2017 at 6:53 PM, Scott Lewis  wrote:

> 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.
>

-- 
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.


[protobuf] new protoc keywords?

2017-04-26 Thread Scott Lewis
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.