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

Difference between revisions of "ECF/REST ECF"

< ECF
(Project Summary)
(Project Summary)
Line 23: Line 23:
  
 
Advantages of using Extension Point mechanism will help in separating REST Layer and ECF. This loose coupling will make the REST Layer independent and usable for any other Eclipse Project or Plugin without need of ECF.
 
Advantages of using Extension Point mechanism will help in separating REST Layer and ECF. This loose coupling will make the REST Layer independent and usable for any other Eclipse Project or Plugin without need of ECF.
 +
 +
 +
 +
 +
== Requirements and Challenges ==
 +
 +
Requirements:

Revision as of 08:05, 25 March 2009

REST Abstraction APIs for ECF

This document gives complete description of GSoC 2009 Idea created by [Sreyansh Gandhi]

The idea was picked from [GSoC Ideas list].

Project Abstract

Many Service Providers of Social Networking, Web2.0 sites expose REST APIs to let developers leverage their features and build on top of it. These REST APIs are not directly consumed. Some third party vendor provides an REST abstraction layer for those APIs in Java, PHP, etc and developers use these to provide their own features. The disadvantage is that using these third party APIs we create a dependency on these APIs. The task of this project is to create such a generic REST Abstraction Layer for ECF and remove the dependency on thrid party vendor.


Project Summary

Representational state transfer (REST) as per Wikipedia is an architectural style for Distributed hypermedia like WWW. REST has been widely adopted for implementing systems over HTTP infrastructure. Many Service Providers of Social Networking, Web2.0 sites expose REST APIs to let developers leverage their features and build on top of it. Complete definition of REST is available at [[1]]

Eclipse is a platform that has been designed from the ground up for building integrated web and application development tooling. Eclipse Communication Framework lets users get more interactive with help of Instant Messaging (IM), Chat, File Sharing, Voice-Over-IP (VOIP), Real-Time Group Collaboration, etc.

REST along with ECF can open a whole gateway of opportunities. For instance, having a REST abstraction layer above ECF will let the developers not rely on any third party service providers to supply Java based REST APIs. This REST layer will also give chance to developers to write plug-ins for any kind of site that exposes REST APIs.

ECF REST.JPG

The above image shows what exactly the project will try to accomplish. Eclipse provides developers with powerful concept of Plugins. A REST Abstraction Layer can also be one such Plugin leveraging Eclipse functionalities of exposing Extension Points for others to use. Extension Points will allow users to plug in any http client for using the REST APIs. Most of the service providers expose APIs that will do one of these HTTP operations: GET, POST, PUT, DELETE. Extension point can be provided for these operations that will allow the developers to enter the service provider Links and fetch the data either in XML or JSON format.

Advantages of using Extension Point mechanism will help in separating REST Layer and ECF. This loose coupling will make the REST Layer independent and usable for any other Eclipse Project or Plugin without need of ECF.



Requirements and Challenges

Requirements:

Back to the top