[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[ecf-dev] R7 Remote Services
- From: Scott Lewis <slewis@xxxxxxxxxxxxx>
- Date: Wed, 4 Apr 2018 09:56:34 -0700
- Delivered-to: firstname.lastname@example.org
- User-agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.6.0
FYI, I've pretty much finished with the enhancements to ECF Remote
Services to support OSGI R7 spec  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 , 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 .ÂÂ Please test and
open bugs if you can.