[
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/