|
|
(6 intermediate revisions by the same user not shown) |
Line 1: |
Line 1: |
− | Project Lead: Holger Staudacher (IRC: staudi)
| + | #REDIRECT [[ECF/REST abstraction]] |
− | | + | |
− | 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. [http://apiwiki.twitter.com/ Twitter], [http://developers.facebook.com/?ref=pf Facebook] and so on. The result of this is that some third parties provide Java based libraries, which covers this API's. The [[Eclipse_Communication_Framework_Project|ECF]] team played a little bit with the Twitter API and use therefore a library called [http://yusuke.homeip.net/twitter4j/en/index.html Twitter4J]. <br>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 [http://socghop.appspot.com/ 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
| + | |
− | | + | |
− | <div style="clear: right; border: solid #aaa 1px; margin: 0 0 1em 1em; font-size: 90%; background: #f9f9f9; width: 250px; padding: 4px; text-align: left; float: right;">
| + | |
− | '''Legend'''
| + | |
− | | + | |
− | [[Image:Glass.gif]] Needs some investigation/research | + | |
− | | + | |
− | [[Image:Progress.gif]] Work in progress
| + | |
− | | + | |
− | [[Image:Ok_green.gif]] Bug fixed / Feature added
| + | |
− | </div>
| + | |
− | | + | |
− | == Timeline ==
| + | |
− | Here is a complete list of the milestones and release candidates planned for this plugin.
| + | |
− | | + | |
− | {| class="wikitable" style="text-align:center"
| + | |
− | |- style="background:#efefef;"
| + | |
− | ! Milestone !! Date !! Planned items !! status
| + | |
− | |- style="background:lightgrey;"
| + | |
− | ! M1
| + | |
− | | June 16
| + | |
− | |align="left"| Implementation of the ECF Remote Services API for REST
| + | |
− | | [[Image:Ok_green.gif]] see [https://bugs.eclipse.org/bugs/show_bug.cgi?id=275723 bug 275723]
| + | |
− | |- style="background:lightgrey;"
| + | |
− | ! M2
| + | |
− | | June 28
| + | |
− | |align="left"| Architecture for REST webservices (POST, GET, UPDATE, DELETE)
| + | |
− | | [[Image:Ok_green.gif]] see [https://bugs.eclipse.org/bugs/show_bug.cgi?id=281101 bug 281101]
| + | |
− | |- style="background:lightgrey;"
| + | |
− | ! M3
| + | |
− | | July 15
| + | |
− | |align="left"| Couple the abstraction layer with the remote service API implementation
| + | |
− | | [[Image:Ok_green.gif]]
| + | |
− | |- style="background:lightgrey;"
| + | |
− | ! M4
| + | |
− | | July 26
| + | |
− | |align="left"| The resource representation concept
| + | |
− | | [[Image:Ok_green.gif]] see [https://bugs.eclipse.org/bugs/show_bug.cgi?id=281097 bug 281097]
| + | |
− | |- style="background:lightgrey;"
| + | |
− | ! M5
| + | |
− | | July 31
| + | |
− | |align="left"| Implementation of some resource representations (XML, JSON and so on)
| + | |
− | | [[Image:Ok_green.gif]] see [https://bugs.eclipse.org/bugs/show_bug.cgi?id=281102 bug 281102], [https://bugs.eclipse.org/bugs/show_bug.cgi?id=282433 bug 282433] and [https://bugs.eclipse.org/bugs/show_bug.cgi?id=281104 bug 281104]
| + | |
− | |- style="background:lightgrey;"
| + | |
− | ! RC1
| + | |
− | | August 4
| + | |
− | |align="left"| Round up the API and writing documentation
| + | |
− | | [[Image:Ok_green.gif]] see [https://bugs.eclipse.org/bugs/show_bug.cgi?id=281106 bug 281106], [https://bugs.eclipse.org/bugs/show_bug.cgi?id=284761 bug 284761], [https://bugs.eclipse.org/bugs/show_bug.cgi?id=283053 bug 283053]
| + | |
− | |- style="background:lightgrey;"
| + | |
− | ! RC2
| + | |
− | | August 8
| + | |
− | |align="left"| Fix some bugs
| + | |
− | | [[Image:Ok_green.gif]] see [https://bugs.eclipse.org/bugs/buglist.cgi?short_desc_type=allwordssubstr&short_desc=%5Brest%5D&product=ECF&long_desc_type=allwordssubstr&long_desc=&order=Importance query]
| + | |
− | |- style="background:lightgrey;"
| + | |
− | ! Pencils down
| + | |
− | | August 16
| + | |
− | |align="left"| Make the contribution ready for ECF
| + | |
− | | [[Image:Ok_green.gif]]
| + | |
− | |}
| + | |
− | | + | |
− | == Community Involvement ==
| + | |
− | | + | |
− | === Getting the source ===
| + | |
− | See the appropriate project set below.
| + | |
− | | + | |
− | Project set file for ECF committers:
| + | |
− | <pre>
| + | |
− | <?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"/>
| + | |
− | <project reference="1.0,:extssh:ecf1.osuosl.org:/home/cvs/ecf,rest/bundles/org.eclipse.ecf.tests.remoteservice.rest.resources,org.eclipse.ecf.tests.remoteservice.rest.resources"/>
| + | |
− | <project reference="1.0,:extssh:ecf1.osuosl.org:/home/cvs/ecf,rest/bundles/org.eclipse.ecf.remoteservice.rest.resource.json.jackson,org.eclipse.ecf.remoteservice.rest.resource.json.jackson"/>
| + | |
− | <project reference="1.0,:extssh:ecf1.osuosl.org:/home/cvs/ecf,rest/bundles/org.eclipse.ecf.remoteservice.rest.resource.json.org,org.eclipse.ecf.remoteservice.rest.resource.json.org"/>
| + | |
− | <project reference="1.0,:extssh:ecf1.osuosl.org:/home/cvs/ecf,rest/bundles/org.eclipse.ecf.remoteservice.rest.resource.rss,org.eclipse.ecf.remoteservice.rest.resource.rss"/>
| + | |
− | <project reference="1.0,:extssh:ecf1.osuosl.org:/home/cvs/ecf,rest/bundles/org.json,org.json"/>
| + | |
− | <project reference="1.0,:extssh:ecf1.osuosl.org:/home/cvs/ecf,rest/bundles/org.codehaus.jackson, org.codehaus.jackson"/>
| + | |
− | </provider>
| + | |
− | </psf>
| + | |
− | </pre>
| + | |
− | | + | |
− | Project set file for anonymous CVS access:
| + | |
− | <pre>
| + | |
− | <?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"/>
| + | |
− | <project reference="1.0,:pserver:ecf1.osuosl.org:/ecf,rest/bundles/org.eclipse.ecf.tests.remoteservice.rest.resources,org.eclipse.ecf.tests.remoteservice.rest.resources"/>
| + | |
− | <project reference="1.0,:pserver:ecf1.osuosl.org:/ecf,rest/bundles/org.eclipse.ecf.remoteservice.rest.resource.json.jackson,org.eclipse.ecf.remoteservice.rest.resource.json.jackson"/>
| + | |
− | <project reference="1.0,:pserver:ecf1.osuosl.org:/ecf,rest/bundles/org.eclipse.ecf.remoteservice.rest.resource.json.org,org.eclipse.ecf.remoteservice.rest.resource.json.org"/>
| + | |
− | <project reference="1.0,:pserver:ecf1.osuosl.org:/ecf,rest/bundles/org.eclipse.ecf.remoteservice.rest.resource.rss,org.eclipse.ecf.remoteservice.rest.resource.rss"/>
| + | |
− | <project reference="1.0,:pserver:ecf1.osuosl.org:/ecf,rest/bundles/org.json,org.json"/>
| + | |
− | <project reference="1.0,:pserver:ecf1.osuosl.org:/ecf,rest/bundles/org.codehaus.jackson, org.codehaus.jackson"/>
| + | |
− | </provider>
| + | |
− | </psf>
| + | |
− | </pre>
| + | |
− | | + | |
− | When the project's finished the code will be published on the appropriate [http://code.google.com/p/restecf/ Google Code Site].
| + | |
− | | + | |
− | === Open issues ===
| + | |
− | DS for ResourceRepresentations (see bug [https://bugs.eclipse.org/bugs/show_bug.cgi?id=285294 285294])
| + | |
− | | + | |
− | === New ideas ===
| + | |
− | Do you have a great idea for the REST abstraction? Just open a [https://bugs.eclipse.org/bugs/enter_bug.cgi?product=ECF new feature request].
| + | |
− | | + | |
− | === Links ===
| + | |
− | *[http://wiki.eclipse.org/ECF/REST_abstraction Proposal]
| + | |
− | *[https://bugs.eclipse.org/bugs/show_bug.cgi?id=275722 REST abstraction for ECF Bug]
| + | |
− | | + | |
− | [[Category:SOC]]
| + | |
− | [[Category:Draft Documentation]]
| + | |