Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

REST abstraction for ECF

Revision as of 12:02, 22 June 2009 by Holger.staudacher.tasktop.com (Talk | contribs) (Timeline)

Project Lead: Holger Staudacher (IRC: staudi)

Mentor: Scott Lewis, Marcelo Mayworm

This project is part of the Google Summer of Code 2009

Abstract

Many service providers using a REST based API to offer developers access to their services, i.e. Twitter, Facebook and so on. The result of this is that some third parties provide Java based libraries, which covers this API's. The ECF team played a little bit with the Twitter API and use therefore a library called Twitter4J.
The disadvantage of this technique is a dependency to the third parties library. This means an ECF container based on such a library is dependent on the diversity of this. To decouple these dependencies an own ECF based REST abstraction should be created within this GSoC project.

Primary goals

  • A full working API for the REST client side to communicate to any RESTful web service.

Additional goals

  • Upgrading the Twitter Provider to use this REST API

Legend

Glass.gif Needs some investigation/research

Progress.gif Work in progress

Ok green.gif Bug fixed / Feature added

Timeline

Here is a complete list of the milestones and release candidates planned for this plugin.

Milestone Date Planned items status
M1 June 16 Implementation of the ECF Remote Services API for REST Ok green.gif see bug 275723
M2 June 28 Architecture for REST webservices (POST, GET, UPDATE, DELETE) Ok green.gif see bug 281101
M3 July 15 Couple the abstraction layer with the remote service API implementation Ok green.gif
M4 July 26 The resource representation concept Progress.gif see bug 281097
M5 July 31 Implementation of some resource representations (XML, JSON and so on) Glass.gif see bug 281102 and bug 281104
RC1 August 4 Round up the API and writing documentation Glass.gif see bug 281106
RC2 August 8 Fix some bugs Glass.gif
Pencils down August 11 - Glass.gif

Community Involvement

Getting the source

See the appropriate project set below.

Project set file for ECF committers:

<?xml version="1.0" encoding="UTF-8"?>
<psf version="2.0">
  <provider id="org.eclipse.team.cvs.core.cvsnature">
    <project reference="1.0,:extssh:ecf1.osuosl.org:/home/cvs/ecf,rest/bundles/org.eclipse.ecf.remoteservice.rest,org.eclipse.ecf.remoteservice.rest"/>
    <project reference="1.0,:extssh:ecf1.osuosl.org:/home/cvs/ecf,rest/bundles/org.eclipse.ecf.tests.remoteservice.rest,org.eclipse.ecf.tests.remoteservice.rest"/>
  </provider>
</psf>

Project set file for anonymous CVS access:

<?xml version="1.0" encoding="UTF-8"?>
<psf version="2.0">
  <provider id="org.eclipse.team.cvs.core.cvsnature">
    <project reference="1.0,:pserver:ecf1.osuosl.org:/ecf,rest/bundles/org.eclipse.ecf.remoteservice.rest,org.eclipse.ecf.remoteservice.rest"/>
    <project reference="1.0,:pserver:ecf1.osuosl.org:/ecf,rest/bundles/org.eclipse.ecf.tests.remoteservice.rest,org.eclipse.ecf.tests.remoteservice.rest"/>
  </provider>
</psf>

When the project's finished the code will be published on the appropriate Google Code Site.

Open issues

TBD

New ideas

Do you have a great idea for the REST abstraction? Just open a new feature request.

Links

Copyright © Eclipse Foundation, Inc. All Rights Reserved.