incubator-photark-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Umashanthi Pavalanathan <umashant...@gmail.com>
Subject Re: REST integration for back-end functionality in photark-rest branch
Date Mon, 11 Jul 2011 04:26:44 GMT
Hi Devs,

I have come up with the REST URI scheme for the Person and relationship
related Social concepts.
I used the PhotArk REST API [0] and the OpenSocial REST API [1] as
references for this purpose.

The following are my initial thoughts. You feedback & suggestions are
welcomed.

(1) Get a Person

REST-HTTP-Method       = "GET"

REST-URI-Fragment      = /people/{userId}/@self


(2) Get a Person's friends

REST-HTTP-Method       = "GET"
REST-URI-Fragment      = /people/{userId}/@friends


(3) Get all Persons

REST-HTTP-Method       = "GET"
REST-URI-Fragment      = /people


(4) Update a Person

REST-HTTP-Method       = "POST"
REST-URI-Fragment      = /people/{userId}


(5) Delete a person

REST-HTTP-Method       = "DELETE"
REST-URI-Fragment      = /people/{userId}


(6) Create a Relationship request

REST-HTTP-Method       = "POST"
REST-URI-Fragment      = "/people/realtionship/{ownerId}/{viewerId}


(7) Create a Relationship

REST-HTTP-Method       = "POST"
REST-URI-Fragment      = "/people/relationship/{ownerId}/{viewerId}


(8) Get Relationship between two users

REST-HTTP-Method       = "GET"
REST-URI-Fragment      = "/people/relationship/{ownerId}/{viewerId}


(9) Remove Relationship between two users

REST-HTTP-Method       = "DELETE"
REST-URI-Fragment      = "/people/realtionship/{ownerId}/{viewerId}



[0] https://cwiki.apache.org/PHOTARKxWIKI/photark-rest-api.html
[1]
http://opensocial-resources.googlecode.com/svn/spec/1.1/Social-API-Server.xml#People-Service


Thanks,
~Umashanthi


On Sat, Jul 9, 2011 at 9:47 PM, Umashanthi Pavalanathan <
umashanthip@gmail.com> wrote:

>
>
> On Sat, Jul 9, 2011 at 9:42 PM, Luciano Resende <luckbr1975@gmail.com>wrote:
>
>> On Fri, Jul 8, 2011 at 3:58 AM, Umashanthi Pavalanathan
>> <umashanthip@gmail.com> wrote:
>> > Hi Devs,
>> >
>> > As you know I am working on adding social features to PhotArk in the
>> rest
>> > branch.
>> > To proceed further with the implementation, I have to add the social
>> > features in the UI. When working on this, I came across the requirement
>> of
>> > exposing the back-end functionalities as REST services. As you know,
>> > implementation in the trunk uses Apache Tuscany to integrate and expose
>> the
>> > functionality as JSON-RPC. Similarly in the rest branch we have the
>> > requirement of exposing the back-end functionality as REST services. For
>> > this purpose, I looked into three options:
>> > (1) Apache Shindig [0]
>> > (2) Apache Tuscany [1]
>> > (3) Apache Wookie [2]
>> >
>> > As we have discussed earlier in the mailing list [3], Apache Shindig
>> > provides a reference implementation for the OpenSocial specification and
>> > provide JSON-RPC & REST APIs. But these APIs are only limited to the
>> > concepts/services in the OpenSocial specification and currently there
>> seems
>> > to be no plans for extending further. So, using Apache Shindig, we can
>> > integrate the back-end social features as REST services; but it is only
>> > limited to this purpose. Since in the context of PhotArk, there are
>> several
>> > other functionalities/concepts like Albums, etc, using Shindig will not
>> > cater for all the requirements.
>> >
>> > On the other hand, Apache Tuscany, can be used to expose the
>> functionalities
>> > as REST services without any limitations and it's usage in the PhotArk
>> trunk
>> > assures that it can satisfy all the requirements in PhotArk.
>> >
>> > Apaceh Wookie also provides REST API. But it is particularly designed to
>> > facilitate building widgets. Similar to Shindig, Wookie also has limited
>> > support for converting all the functionalities in PhotArk into REST
>> > services. Even though Wookie has the support for UI widgets, I do not
>> see
>> > any plans to make PhotArk as a widget based application in the near
>> future.
>> > So the REST integration facility provided by Wookie is limited in the
>> > context of PhotArk.
>> >
>> > After analyzing these three options, Apache Tuscany seems to be
>> promising
>> > for me, to support all the requirements of PhotArk, related to exposing
>> REST
>> > services.
>> >
>> > I kindly invite you all to proceed further with this discussion. Your
>> > valuable input to this discussion is highly appreciated.
>> >
>> > Looking forward to hear from you all.
>> >
>> >
>> > [0] http://shindig.apache.org/
>> > [1] http://tuscany.apache.org/
>> > [2] http://incubator.apache.org/wookie/
>> > [3]
>> >
>> http://www.mail-archive.com/photark-dev@incubator.apache.org/msg01141.html
>> >
>> > Thanks,
>> > ~Umashanthi
>> >
>>
>> I had the impression that the integration with Apache Shindig would
>> provide us much more benefits, but after some investigation I don't
>> believe that is true anymore. A REST interface based on Tuscany should
>> give us enough to build a solid social ui. Having said that, we might
>> look at the URI defined by Shindig/OpenSocial to see if we can follow
>> the same standard which would be beneficial for any future
>> integration.
>>
>
> +1.
> Since Tuscany has the flexibility in defining the URI (please correct me if
> I am wrong), I think we can incorporate the OpenSocial URI standards for our
> services.
>
>
> Thanks,
> ~Umashanthi
>
>
>
>>
>>
>> --
>>
>> Luciano Resende
>> http://people.apache.org/~lresende
>> http://twitter.com/lresende1975
>> http://lresende.blogspot.com/
>>
>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message