Skip to main content

[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



Back to the top