[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
Re: [ecf-dev] tutorial idea: OSGi remote services for existing services
|
I've created a new github repo for the Geonames Timezone example I've
been working on. The bundles so far are (in bundles directory):
1. org.geonames.timezone - declares the Geonames timezone API as an
OSGi service interface called ITimezoneService
2. org.eclipse.ecf.provider.geonames.timezone.client - An ECF Remote
Services provider using the ECF Rest API and JSON parser to make the
REST call and process the server's JSON response.
I've also begun the creation of two consumer bundles to test the above
provider
3. org.eclipse.ecf.geonames.timezone.consumer - A very simple consumer
which finds (via ServiceTracker) ITimezoneService proxies and then
calls the ITimezoneService.getTimezone/2 method on the added proxy.
4. org.eclipse.ecf.geonames.timezone.consumer.edef = A very simple EDEF
bundle, containing the EDEF to discover the Geonames timezone service,
with RSA then creating the ITimezoneService proxy.
Over the next week, I'm going to write a short tutorial that shows
particularly the code in org.geonames.timezone (remote service API) and
org.eclipse.ecf.provider.geonames.timezone.client (REST Client Remote
Services ECF provider)
In testing this code unfortunately I discovered an oversight bug in the
RestClientService class from the changeover from httpclient 3.3 to 4.X.
See [2] for details. To get this new example to work, this fix has to
be in place in the runtime, meaning that we will need to produce 3.9.2
release for people to be able to successfully run the timezone example
themselves. We can discuss the timing of 3.9.2 creation and release
relative to other things that committers and contributors are currently
working on.
If people have comments about any of this, would like to help/contribute
on this example, or would like to suggest specific things to focus on
for the wiki tutorial, please say so here, produce a pull request, or
contact me directly to coordinate on the tutorial.
Thanks,
Scott
[1] https://github.com/ECF/Geonames
[2] https://bugs.eclipse.org/bugs/show_bug.cgi?id=453484