Hi,

libgdata is a glib-based library for accessing Google online services.

I'm sponsoring this case for Jerry Tan from the Solaris Desktop group.
The timeout is set to March 24.

Thanks.

Jeff
-------------- next part --------------
Template Version: @(#)onepager.txt 1.35 07/11/07 SMI
Copyright 2007 Sun Microsystems


1. Introduction
   1.1. Project/Component Working Name:

        libgdata

   1.2. Name of Document Author/Supplier:

        Jerry Tan

   1.3. Date of This Document:

        02/11/2010

           1.3.1. Date this project was conceived:

                  02/11/2010

   1.4. Name of Major Document Customer(s)/Consumer(s):

      1.4.1. The PAC or CPT you expect to review your project:

             System PAC

      1.4.2. The ARC(s) you expect to review your project:

             PSARC

      1.4.3. The Director/VP who is "Sponsoring" this project:

             robert.odea at sun.com

      1.4.4. The name of your business unit:

             Solaris Platform Engineering

   1.5. Email Aliases:

      1.5.1. Responsible Manager:

             harry.lu at sun.com

      1.5.2. Responsible Engineer:

             jerry.tan at sun.com

      1.5.3. Marketing Manager:

             glynn.foster at sun.com

      1.5.4. Interest List:

             desktop-discuss at opensolaris.org

2. Project Summary
   
    2.1 Project Description:
    
    Libgdata is a GLib-based library for accessing Google online services
    using GData protocol which is provided by Google. 

4. Technical Description:

    4.1. Details:

       Google provides GData as a simple standard protocol for reading and
       writing data to access the services provided by Google, including
       blogger, calender, contacts, documents, youtube, etc.

       The GData protocol provides the following features for interacting
       with the Google server: issuing HTTP requests, parsing XML-based
       responses to queries, inserting a new entry, searching for a string,
       update on a query, etc. 

       Examples: 

       To retrieve all public calendars for a given user, send "get" command
       to port 80 of www.google.com server like this :
       "GET /calendar/feeds/<calendar address>/public/full"
       it will return a reply like 
       "<?xml version='1.0' encoding='UTF-8'?>
        <feed xmlns='http://www.w3.org/2005/Atom'....>
            <id>....</id>
            <title>...</title>
            ....
            <entry>
                <id>...</id>
                ...
            </entry>
        </feed>"

       To insert a new entry, send a Post request, and supply the XML 
       representation of the new entry, like this :
       "POST /calendar/feeds/defaults/<calendar address>/public/full"
       <?xml version='1.0' encoding='utf-8'?>
       <feed xmlns='http://www.w3.org/2005/Atom'
            <entry ...>
                 <title>...</title>
                 <summary>...</summary>
                 ....
            </entry>
       </feed>"
       Upon success, the server will respond with an HTTP 201 message
       that contains the calendar entry submitted.

       Client applications will act on behalf of a user of a Google service. 
       The user provides his username and password to the Google Service, 
       then the service returns an authentication token. The user can then use
       this token along with every subsequent request on behalf of that user.

       The Google Data APIs support multiple authentication methods depending
       on what kind of client you're writing. If your client is a standalone 
       single-user "installed" application (such as a desktop application), 
       then you should use the "ClientLogin"; if your client is a multi-user 
       web application client, then you should choose between "AuthSub" and 
       "OAuth".Please refer section 5[4] for more details.

       There are several Google Data client libraries provided by Google, 
       including Java, JavaScript, .Net, PHP, Python, Object-C.

       Libgdata is provided by the GNOME community as a glib-based C library 
       to access Google's service using GData protocol.

       It is already used by the totem YouTube plugin, and evolution plans to 
       use libgdata to replace its own GData library.


    4.2. Bug/RFE Number(s):

         6923222

    4.3. In Scope:

         See above.

    4.4. Out of Scope:

         See above.

    4.5. Interfaces:
       
                                   Exported  Interface 

    Interface                         Classification  Comments
    -----------------------------     --------------  ----------------------
    SUNWlibgdata                      Uncommitted     Package name
    SUNWlibgdata-devel                Uncommitted     Package name
    /usr/lib/libgdata.so.6            Volatile        library
    /usr/include/libgdata/*           Volatile        Header file      
    /usr/lib/pkgconfig/libgdata.pc    Uncommitted     package config file



                                Imported  Interface 

    Interface                Classification  ARC case       Comment
    --------                 --------------- ----------     ----------------
   
    GLib2                    Uncommitted     LSARC/2001/384 
    libsoup                  Violatile       LSARC/2003/398
    libxml2                  Committed       PSARC/2006/290
   
              
    4.6. Doc Impact:

         Help docs and man page

    4.7. Admin/Config Impact:

         None.

    4.8. HA Impact:

         None.

    4.9. I18N/L10N Impact:

         The JDS team and the G11N are working together to evaluate and
         provide I18N/L10N support.

    4.10. Packaging & Delivery:

          Adds two new packages:
          Package                Comment
          ------------------     ----------
          SUNWlibgdata           packags for libgdata
          SUNWlibgdata-devel     dev packags for libgdata
          IPS schema:            library/desktop/libgdata


    4.11. Security Impact:

          Applications that use libgdata will act as a http client,
          open Google's server port 80 or port 443  to read/write data, 
          just like lynx.  
    
          For authentication issues, please refer to section 5.4. 

    4.12. Dependencies:
      
          The following versions of the imported interfaces are required:

          GLib2 2.12 or above
          libsoup 2.26.1 or above

            

5. Reference Documents:

      [1] Homepage: 
          http://live.gnome.org/libgdata

      [2] Related ARC Cases:
          LSARC/2001/384 Gtk+2.0 / glib 2.0, libglade, pango
    
      [3] Google Data Protocol document
          http://code.google.com/apis/gdata

      [4] Document for authentication in Google Gdata
          http://code.google.com/apis/gdata/docs/auth/overview.html

Reply via email to