[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[ecf-dev] R7 Remote Services

Hi Folks,

FYI, I've pretty much finished with the enhancements to ECF Remote Services to support OSGI R7 spec [1] for ECF Photon (3.14.0). The short summary is that R7 made no changes at all to Remote Service Admin (chap 122), and added the definition of a few distribution provider intents (chap 100). Intents allow a distribution provider and an exporter to negotiate their capabilities/requirements at export time. For example, a new intent is 'osgi.basic', which specifies certain serialization capabilities (e.g. OSGI types such as Version and DTO) of the distribution provider. Another is 'osgi.async' for using Future/CompletableFuture/Promise in remote service return types.

I've added support for these R7-specified intents to the generic provider, rosgi-provider, xmlrpc provider, websockets, jgroups, jms, mqtt, hazelcast, and other distribution providers.ÂÂ I'll soon be updating the jax-rs providers (jersey and cxf).

Since these providers are distributed via github [2], they will not be formally included in the ECF Photon release, but new versions will be made available via github releases in parallel with ECF Photon.

Since R7 support depends upon DTO's in framework (which were first introduced in R5), remote services now requires Mars.0+ of equinox or Felix version supporting OSGI R5 or higher.ÂÂ Also, use of CompletableFuture requires Java8.ÂÂ ECF's remote services impl can function fine with Java7, but can't support CompletableFuture if not using Java8 (can support Future, however).

The current snapshot has everything to this point [3].ÂÂ Please test and open bugs if you can.

Scott

[1] https://bugs.eclipse.org/bugs/show_bug.cgi?id=532205

[2] https://github.com/ECF

[3] http://download.eclipse.org/rt/ecf/snapshot/