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