microsoft / vs-servicehub

The service broker libraries used by Visual Studio to exchange intra- and inter-process services
MIT License
21 stars 8 forks source link

Add `ServiceJsonRpcDescriptor.AdditionalClientInterfaces` property #231

Closed AArnott closed 3 months ago

AArnott commented 3 months ago

This allows service broker clients to obtain a proxy that implements several RPC interfaces instead of just one.

Provided a brokered service is requested with a descriptor that has an appropriately populated array of additional interfaces, this makes testing for and casting to a proxy of the various interfaces as natural as using the C# casting operators.

Toward an overall fix for #225. The remaining problem is how to help the client know what interfaces are available on the brokered service, which will be solved in a subsequent PR.