diff -Nru python-gdata-1.2.4/debian/changelog python-gdata-2.0.8/debian/changelog --- python-gdata-1.2.4/debian/changelog 2010-06-19 19:24:19.000000000 +0100 +++ python-gdata-2.0.8/debian/changelog 2010-06-19 19:24:20.000000000 +0100 @@ -1,17 +1,41 @@ -python-gdata (1.2.4-0ubuntu2) karmic; urgency=low +python-gdata (2.0.8-2.1) lucid; urgency=medium - * debian/patches - - added 01_deprecated_sha.patch to fix deprecation-warning with - python 2.6 (LP: #336706) Thanks to Peter Bui for the patch. + * Backport to Lucid - -- Andreas Moog Tue, 19 May 2009 00:47:27 +0200 + -- Emanuele Tartaglia Sat, 19 Jun 2010 18:34:42 +0200 -python-gdata (1.2.4-0ubuntu1) jaunty; urgency=low +python-gdata (2.0.8-1.1) unstable; urgency=medium - * New upstream release (LP: #319182). - * Import errors fixed upstream (LP: #229360). + * Non-maintainer upload. + * Remove leftover python2.4 shebangs, triggering a python2.4 dependency + (Closes: #571817). - -- Jonathan Davies Mon, 09 Feb 2009 19:35:42 +0000 + -- Obey Arthur Liu Fri, 02 Apr 2010 22:34:42 +0200 + +python-gdata (2.0.8-1) unstable; urgency=low + + * New upstream release. + * Drop python2.4 dependency, thanks Stefano and Luca (Closes: #571817). + + -- Gustavo Franco Tue, 02 Mar 2010 17:41:25 -0300 + +python-gdata (2.0.7-1) unstable; urgency=low + + [ Gustavo Franco ] + * New upstream release (Closes: #521351). + * Remove Brandon Philips from Uploaders field (Closes: #522817), thanks + Sandro. + * Ship pydocs HTML API reference and register it with doc-base, thanks + Stefano (Closes: #565972) + + [ Sandro Tosi ] + * debian/control + - switch Vcs-Browser field to viewsvn + + [ Jakub Wilk ] + * Fix watch file. + + -- Gustavo Franco Thu, 25 Feb 2010 13:32:20 -0300 python-gdata (1.1.1-1) unstable; urgency=low diff -Nru python-gdata-1.2.4/debian/control python-gdata-2.0.8/debian/control --- python-gdata-1.2.4/debian/control 2010-06-19 19:24:19.000000000 +0100 +++ python-gdata-2.0.8/debian/control 2010-06-19 19:24:20.000000000 +0100 @@ -1,13 +1,11 @@ Source: python-gdata Section: python Priority: extra -Maintainer: Ubuntu Core Developers -XSBC-Original-Maintainer: Gustavo Franco -Uploaders: Debian Python Modules Team , - Brandon Philips +Maintainer: Gustavo Franco +Uploaders: Debian Python Modules Team Build-Depends: cdbs (>= 0.4.43), debhelper (>= 5), python, python-support (>= 0.5.3) Vcs-Svn: svn://svn.debian.org/python-modules/packages/python-gdata/trunk/ -Vcs-Browser: http://svn.debian.org/wsvn/python-modules/packages/python-gdata/trunk/?op=log +Vcs-Browser: http://svn.debian.org/viewsvn/python-modules/packages/python-gdata/trunk/ Homepage: http://code.google.com/p/gdata-python-client Standards-Version: 3.8.0 diff -Nru python-gdata-1.2.4/debian/docs python-gdata-2.0.8/debian/docs --- python-gdata-1.2.4/debian/docs 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/debian/docs 2010-06-19 19:24:20.000000000 +0100 @@ -0,0 +1 @@ +pydocs/ diff -Nru python-gdata-1.2.4/debian/patches/01_deprecated_sha.patch python-gdata-2.0.8/debian/patches/01_deprecated_sha.patch --- python-gdata-1.2.4/debian/patches/01_deprecated_sha.patch 2010-06-19 19:24:19.000000000 +0100 +++ python-gdata-2.0.8/debian/patches/01_deprecated_sha.patch 1970-01-01 01:00:00.000000000 +0100 @@ -1,27 +0,0 @@ -# -# Ubuntu: https://bugs.launchpad.net/bugs/336706 -# Upstream: http://code.google.com/p/gdata-python-client/issues/detail?id=236 -# Patch: http://gdata-python-client.googlecode.com/issues/attachment?aid=7561271055489411765&name=gdata-cryptomath_sha_deprecation.diff -# Description: don't use deprecated sha module anymore, switch to hashlib instead -# -diff -Nur -x '*.orig' -x '*~' python-gdata-1.2.4/src/gdata/tlslite/utils/cryptomath.py python-gdata-1.2.4.new/src/gdata/tlslite/utils/cryptomath.py ---- python-gdata-1.2.4/src/gdata/tlslite/utils/cryptomath.py 2008-12-02 03:35:26.000000000 +0100 -+++ python-gdata-1.2.4.new/src/gdata/tlslite/utils/cryptomath.py 2009-05-19 00:44:00.000000000 +0200 -@@ -6,7 +6,7 @@ - import math - import base64 - import binascii --import sha -+import hashlib - - from compat import * - -@@ -195,7 +195,7 @@ - return int(math.ceil(bits / 8.0)) - - def hashAndBase64(s): -- return stringToBase64(sha.sha(s).digest()) -+ return stringToBase64(hashlib.sha1(s).digest()) - - def getBase64Nonce(numChars=22): #defaults to an 132 bit nonce - bytes = getRandomBytes(numChars) diff -Nru python-gdata-1.2.4/debian/patches/python2.4_shebangs.patch python-gdata-2.0.8/debian/patches/python2.4_shebangs.patch --- python-gdata-1.2.4/debian/patches/python2.4_shebangs.patch 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/debian/patches/python2.4_shebangs.patch 2010-06-19 19:24:20.000000000 +0100 @@ -0,0 +1,24 @@ +--- a/samples/contacts/profiles_example.py ++++ b/samples/contacts/profiles_example.py +@@ -1,4 +1,4 @@ +-#!/usr/bin/python2.4 ++#!/usr/bin/python + # + # Copyright 2009 Google Inc. All Rights Reserved. + # +--- a/src/gdata/contacts/__init__.py ++++ b/src/gdata/contacts/__init__.py +@@ -1,4 +1,4 @@ +-#!/usr/bin/python2.4 ++#!/usr/bin/python + # + # Copyright 2009 Google Inc. All Rights Reserved. + # +--- a/src/gdata/contacts/service.py ++++ b/src/gdata/contacts/service.py +@@ -1,4 +1,4 @@ +-#!/usr/bin/python2.4 ++#!/usr/bin/python + # + # Copyright 2009 Google Inc. All Rights Reserved. + # diff -Nru python-gdata-1.2.4/debian/python-gdata.doc-base python-gdata-2.0.8/debian/python-gdata.doc-base --- python-gdata-1.2.4/debian/python-gdata.doc-base 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/debian/python-gdata.doc-base 2010-06-19 19:24:20.000000000 +0100 @@ -0,0 +1,9 @@ +Document: python-gdata +Title: Google Data Python client library +Author: Google Inc. +Abstract: API reference for the Python Google Data client library +Section: Programming/Python + +Format: HTML +Index: /usr/share/doc/python-gdata/pydocs/gdata.html +Files: /usr/share/doc/python-gdata/pydocs/*.html diff -Nru python-gdata-1.2.4/debian/watch python-gdata-2.0.8/debian/watch --- python-gdata-1.2.4/debian/watch 2010-06-19 19:24:19.000000000 +0100 +++ python-gdata-2.0.8/debian/watch 2010-06-19 19:24:20.000000000 +0100 @@ -1,4 +1,4 @@ # Compulsory line, this is a version 3 file version=3 -http://code.google.com/p/gdata-python-client/ http://gdata-python-client.googlecode.com/files/gdata\.py-(.*)\.tar\.gz +http://code.google.com/p/gdata-python-client/ http://gdata-python-client.googlecode.com/files/gdata-(.*)\.tar\.gz diff -Nru python-gdata-1.2.4/MANIFEST python-gdata-2.0.8/MANIFEST --- python-gdata-1.2.4/MANIFEST 2009-01-22 19:55:43.000000000 +0000 +++ python-gdata-2.0.8/MANIFEST 2010-02-26 23:19:57.000000000 +0000 @@ -1,12 +1,13 @@ -README.txt -RELEASE_NOTES.txt INSTALL.txt MANIFEST +README.txt +RELEASE_NOTES.txt setup.py src/atom/__init__.py src/atom/auth.py src/atom/client.py src/atom/core.py +src/atom/data.py src/atom/http.py src/atom/http_core.py src/atom/http_interface.py @@ -19,21 +20,36 @@ src/gdata/__init__.py src/gdata/auth.py src/gdata/client.py +src/gdata/core.py +src/gdata/data.py +src/gdata/gauth.py +src/gdata/sample_util.py src/gdata/service.py +src/gdata/test_config.py +src/gdata/test_config_template.py src/gdata/test_data.py src/gdata/urlfetch.py src/gdata/alt/__init__.py src/gdata/alt/appengine.py +src/gdata/alt/app_engine.py +src/gdata/analytics/__init__.py +src/gdata/analytics/service.py src/gdata/apps/__init__.py src/gdata/apps/service.py src/gdata/apps/emailsettings/__init__.py src/gdata/apps/emailsettings/service.py +src/gdata/apps/groups/__init__.py +src/gdata/apps/groups/service.py src/gdata/apps/migration/__init__.py src/gdata/apps/migration/service.py src/gdata/base/__init__.py src/gdata/base/service.py src/gdata/blogger/__init__.py +src/gdata/blogger/client.py +src/gdata/blogger/data.py src/gdata/blogger/service.py +src/gdata/books/__init__.py +src/gdata/books/service.py src/gdata/calendar/__init__.py src/gdata/calendar/service.py src/gdata/codesearch/__init__.py @@ -43,13 +59,22 @@ src/gdata/docs/__init__.py src/gdata/docs/service.py src/gdata/exif/__init__.py +src/gdata/finance/__init__.py +src/gdata/finance/service.py src/gdata/geo/__init__.py +src/gdata/health/__init__.py +src/gdata/health/service.py src/gdata/media/__init__.py +src/gdata/maps/__init__.py +src/gdata/maps/client.py +src/gdata/maps/data.py src/gdata/photos/__init__.py src/gdata/photos/service.py src/gdata/spreadsheet/__init__.py src/gdata/spreadsheet/service.py src/gdata/spreadsheet/text_db.py +src/gdata/spreadsheets/__init__.py +src/gdata/spreadsheets/data.py src/gdata/webmastertools/__init__.py src/gdata/webmastertools/service.py src/gdata/youtube/__init__.py @@ -155,24 +180,69 @@ src/gdata/tlslite/Session.py src/gdata/tlslite/SharedKeyDB.py src/gdata/tlslite/X509CertChain.py +samples/base/baseItemTypesQueryExample.py +samples/base/baseAttributesQueryExample.py samples/base/baseQueryExample.py samples/base/dryRunInsert.py samples/blogger/BloggerExample.py +samples/blogger/BloggerExampleV1.py +samples/blogger/app/app.yaml +samples/blogger/app/auth_required.html +samples/blogger/app/list_blogs.html +samples/blogger/app/post_editor.html +samples/blogger/app/blogapp.py +samples/blogger/app/welcome.html samples/calendar/calendarExample.py +samples/codesearch/CodesearchExample.py samples/contacts/contacts_example.py samples/docs/docs_example.py +samples/finance/test_finance.py samples/mashups/birthdaySample.py +samples/maps/MapsExample.py samples/spreadsheets/spreadsheetExample.py samples/webmastertools/AddDeleteExampleDotCom.py samples/webmastertools/SitemapsFeedSummary.py samples/webmastertools/SitesFeedSummary.py +samples/oauth/2_legged_oauth.py samples/oauth/oauth_example.py samples/authsub/secure_authsub.py +samples/oauth/oauth_on_appengine +samples/oauth/oauth_on_appengine/main_rsa.py +samples/oauth/oauth_on_appengine/appengine_utilities +samples/oauth/oauth_on_appengine/appengine_utilities/flash.py +samples/oauth/oauth_on_appengine/appengine_utilities/__init__.py +samples/oauth/oauth_on_appengine/appengine_utilities/cron.py +samples/oauth/oauth_on_appengine/appengine_utilities/event.py +samples/oauth/oauth_on_appengine/appengine_utilities/cache.py +samples/oauth/oauth_on_appengine/appengine_utilities/paginator.py +samples/oauth/oauth_on_appengine/appengine_utilities/rotmodel.py +samples/oauth/oauth_on_appengine/appengine_utilities/sessions.py +samples/oauth/oauth_on_appengine/app.yaml +samples/oauth/oauth_on_appengine/main_hmac.py +samples/oauth/oauth_on_appengine/images +samples/oauth/oauth_on_appengine/images/icon_starred.png +samples/oauth/oauth_on_appengine/images/icon_spreadsheet.gif +samples/oauth/oauth_on_appengine/images/icon_pdf.gif +samples/oauth/oauth_on_appengine/images/icon_trashed.png +samples/oauth/oauth_on_appengine/images/icon_presentation.gif +samples/oauth/oauth_on_appengine/images/icon_folder.gif +samples/oauth/oauth_on_appengine/images/icon_document.gif +samples/oauth/oauth_on_appengine/css +samples/oauth/oauth_on_appengine/css/index.css +samples/oauth/oauth_on_appengine/index.yaml +samples/oauth/oauth_on_appengine/index.html +samples/oauth/oauth_on_appengine/js +samples/oauth/oauth_on_appengine/js/jquery.corners.min.js +samples/oauth/oauth_on_appengine/README.txt tests/__init__.py tests/all_tests.py +tests/all_tests_cached.py +tests/all_tests_clear_cache.py tests/all_tests_coverage.py +tests/all_tests_local.py tests/atom_test.py tests/coverage.py +tests/files/testimage.jpg tests/gdata_test.py tests/module_test_runner.py tests/run_all_tests.py @@ -183,6 +253,7 @@ tests/atom_tests/auth_test.py tests/atom_tests/client_test.py tests/atom_tests/core_test.py +tests/atom_tests/data_test.py tests/atom_tests/http_core_test.py tests/atom_tests/http_interface_test.py tests/atom_tests/mock_client_test.py @@ -192,19 +263,23 @@ tests/atom_tests/service_test.py tests/atom_tests/token_store_test.py tests/atom_tests/url_test.py -tests/atom_tests/mock_client_test.py -tests/atom_tests/core_test.py tests/gdata_tests/__init__.py tests/gdata_tests/apps_test.py tests/gdata_tests/auth_test.py tests/gdata_tests/base_test.py tests/gdata_tests/blogger_test.py +tests/gdata_tests/books_test.py tests/gdata_tests/calendar_test.py tests/gdata_tests/client_online_test.py tests/gdata_tests/client_test.py +tests/gdata_tests/core_test.py tests/gdata_tests/codesearch_test.py tests/gdata_tests/contacts_test.py +tests/gdata_tests/data_test.py tests/gdata_tests/docs_test.py +tests/gdata_tests/gauth_test.py +tests/gdata_tests/health_test.py +tests/gdata_tests/live_client_test.py tests/gdata_tests/photos_test.py tests/gdata_tests/service_test.py tests/gdata_tests/spreadsheet_test.py @@ -214,12 +289,18 @@ tests/gdata_tests/apps/service_test.py tests/gdata_tests/apps/emailsettings/__init__.py tests/gdata_tests/apps/emailsettings/service_test.py +tests/gdata_tests/apps/groups/__init__.py +tests/gdata_tests/apps/groups/service_test.py tests/gdata_tests/apps/migration/__init__.py tests/gdata_tests/apps/migration/service_test.py tests/gdata_tests/base/__init__.py tests/gdata_tests/base/service_test.py tests/gdata_tests/blogger/__init__.py +tests/gdata_tests/blogger/data_test.py +tests/gdata_tests/blogger/live_client_test.py tests/gdata_tests/blogger/service_test.py +tests/gdata_tests/books/__init__.py +tests/gdata_tests/books/service_test.py tests/gdata_tests/calendar/__init__.py tests/gdata_tests/calendar/calendar_acl_test.py tests/gdata_tests/calendar/service_test.py @@ -227,16 +308,28 @@ tests/gdata_tests/contacts/service_test.py tests/gdata_tests/docs/__init__.py tests/gdata_tests/docs/service_test.py +tests/gdata_tests/docs/test.ppt +tests/gdata_tests/docs/test.doc +tests/gdata_tests/docs/test.csv +tests/gdata_tests/health/__init__.py +tests/gdata_tests/health/service_test.py +tests/gdata_tests/maps/__init__.py +tests/gdata_tests/maps/data_test.py +tests/gdata_tests/maps/live_client_test.py tests/gdata_tests/photos/__init__.py tests/gdata_tests/photos/service_test.py +tests/gdata_tests/sample_util_test.py tests/gdata_tests/spreadsheet/__init__.py tests/gdata_tests/spreadsheet/service_test.py tests/gdata_tests/spreadsheet/text_db_test.py +tests/gdata_tests/spreadsheets/__init__.py +tests/gdata_tests/spreadsheets/data_test.py tests/gdata_tests/youtube/__init__.py tests/gdata_tests/youtube/service_test.py pydocs/atom.auth.html pydocs/atom.client.html pydocs/atom.core.html +pydocs/atom.data.html pydocs/atom.html pydocs/atom.http.html pydocs/atom.http_core.html @@ -248,8 +341,12 @@ pydocs/atom.token_store.html pydocs/atom.url.html pydocs/gdata.alt.appengine.html +pydocs/gdata.analytics.html +pydocs/gdata.analytics.service.html pydocs/gdata.apps.emailsettings.html pydocs/gdata.apps.emailsettings.service.html +pydocs/gdata.apps.groups.html +pydocs/gdata.apps.groups.service.html pydocs/gdata.apps.html pydocs/gdata.apps.migration.html pydocs/gdata.apps.migration.service.html @@ -258,7 +355,11 @@ pydocs/gdata.base.html pydocs/gdata.base.service.html pydocs/gdata.blogger.html +pydocs/gdata.blogger.client.html +pydocs/gdata.blogger.data.html pydocs/gdata.blogger.service.html +pydocs/gdata.books.html +pydocs/gdata.books.service.html pydocs/gdata.calendar.html pydocs/gdata.calendar.service.html pydocs/gdata.client.html @@ -266,10 +367,16 @@ pydocs/gdata.codesearch.service.html pydocs/gdata.contacts.html pydocs/gdata.contacts.service.html +pydocs/gdata.data.html pydocs/gdata.docs.html pydocs/gdata.docs.service.html pydocs/gdata.exif.html +pydocs/gdata.finance.html +pydocs/gdata.finance.service.html +pydocs/gdata.gauth.html pydocs/gdata.geo.html +pydocs/gdata.health.service.html +pydocs/gdata.health.html pydocs/gdata.html pydocs/gdata.media.html pydocs/gdata.photos.html @@ -278,9 +385,114 @@ pydocs/gdata.spreadsheet.html pydocs/gdata.spreadsheet.service.html pydocs/gdata.spreadsheet.text_db.html +pydocs/gdata.test_config.html +pydocs/gdata.test_config_template.html pydocs/gdata.urlfetch.html pydocs/gdata.webmastertools.html pydocs/gdata.webmastertools.service.html pydocs/gdata.youtube.html pydocs/gdata.youtube.service.html pydocs/generate_docs +pydocs/gdata.maps.client.html +pydocs/gdata.maps.data.html +pydocs/gdata.spreadsheets.data.html +samples/blogger/oauth-appengine/app.yaml +samples/blogger/oauth-appengine/css/index.css +samples/blogger/oauth-appengine/index.html +samples/blogger/oauth-appengine/index.yaml +samples/blogger/oauth-appengine/main.py +samples/blogger/oauth-appengine/oauth.py +samples/contacts/profiles_example.py +samples/sites/sites_example.py +src/gdata/sites/__init__.py +src/gdata/sites/client.py +src/gdata/sites/data.py +src/gdata/spreadsheets/client.py +tests/gdata_tests/apps/TestDataForGeneratorTest.p +tests/gdata_tests/apps/service_test_using_mock.py +tests/gdata_tests/contacts/profiles/__init__.py +tests/gdata_tests/contacts/profiles/service_test.py +tests/gdata_tests/sites/__init__.py +tests/gdata_tests/sites/data_test.py +tests/gdata_tests/sites/live_client_test.py +tests/gdata_tests/spreadsheets/live_client_test.py +samples/apps/adminsettings_example.py +src/gdata/apps/adminsettings/__init__.py +src/gdata/apps/adminsettings/service.py +pydocs/gdata.apps.adminsettings.html +pydocs/gdata.apps.adminsettings.service.html +pydocs/gdata.sites.client.html +pydocs/gdata.sites.data.html +pydocs/gdata.spreadsheets.client.html +src/gdata/projecthosting/__init__.py +src/gdata/projecthosting/client.py +src/gdata/projecthosting/data.py +tests/gdata_tests/apps/AppsServiceTestForGetGeneratorForAllEmailLists.pickle +tests/gdata_tests/apps/AppsServiceTestForGetGeneratorForAllNicknames.pickle +tests/gdata_tests/apps/AppsServiceTestForGetGeneratorForAllRecipients.pickle +tests/gdata_tests/apps/AppsServiceTestForGetGeneratorForAllUsers.pickle +tests/gdata_tests/projecthosting/__init__.py +tests/gdata_tests/projecthosting/data_test.py +tests/gdata_tests/projecthosting/live_client_test.py +pydocs/gdata.projecthosting.client.html +pydocs/gdata.projecthosting.data.html +tests/gdata_tests/analytics/data_test.py +tests/gdata_tests/analytics/live_client_test.py +tests/gdata_tests/docs/data_test.py +tests/gdata_tests/docs/live_client_test.py +tests/gdata_tests/docs/test.pdf +samples/analytics/account_feed_demo.py +samples/analytics/data_feed_demo.py +src/gdata/analytics/client.py +src/gdata/analytics/data.py +src/gdata/docs/client.py +src/gdata/docs/data.py +src/gdata/acl/__init__.py +src/gdata/acl/data.py +src/gdata/books/data.py +src/gdata/dublincore/__init__.py +src/gdata/dublincore/data.py +tests/gdata_tests/data_smoke_test.py +tests/gdata_tests/client_smoke_test.py +src/gdata/calendar/data.py +src/gdata/contacts/client.py +src/gdata/contacts/data.py +src/gdata/finance/data.py +src/gdata/geo/data.py +src/gdata/media/data.py +src/gdata/notebook/__init__.py +src/gdata/notebook/data.py +src/gdata/webmastertools/data.py +src/gdata/youtube/data.py +tests/gdata_tests/contacts/live_client_test.py +pydocs/gdata.analytics.client.html +pydocs/gdata.analytics.data.html +pydocs/gdata.contacts.client.html +pydocs/gdata.contacts.data.html +pydocs/gdata.docs.client.html +pydocs/gdata.docs.data.html +pydocs/gdata.dublincore.data.html +pydocs/gdata.geo.data.html +pydocs/gdata.media.data.html +src/gdata/opensearch/__init__.py +src/gdata/opensearch/data.py +pydocs/gdata.acl.data.html +pydocs/gdata.books.data.html +pydocs/gdata.calendar.data.html +pydocs/gdata.finance.data.html +pydocs/gdata.notebook.data.html +pydocs/gdata.opensearch.data.html +pydocs/gdata.webmastertools.data.html +pydocs/gdata.youtube.data.html +tests/gdata_tests/analytics/__init__.py +samples/oauth/TwoLeggedOAuthExample.py +src/gdata/calendar_resource/__init__.py +src/gdata/calendar_resource/client.py +src/gdata/calendar_resource/data.py +tests/gdata_tests/calendar_resource/__init__.py +tests/gdata_tests/calendar_resource/data_test.py +tests/gdata_tests/calendar_resource/live_client_test.py +pydocs/gdata.calendar_resource.client.html +pydocs/gdata.calendar_resource.data.html +samples/docs/resumable_upload_sample.py +tests/gdata_tests/resumable_upload_test.py diff -Nru python-gdata-1.2.4/PKG-INFO python-gdata-2.0.8/PKG-INFO --- python-gdata-1.2.4/PKG-INFO 2009-01-22 19:55:52.000000000 +0000 +++ python-gdata-2.0.8/PKG-INFO 2010-02-26 23:31:13.000000000 +0000 @@ -1,10 +1,10 @@ Metadata-Version: 1.0 -Name: gdata.py -Version: 1.2.4 +Name: gdata +Version: 2.0.8 Summary: Python client library for Google data APIs Home-page: http://code.google.com/p/gdata-python-client/ Author: Jeffrey Scudder -Author-email: api.jscudder@gmail.com +Author-email: j.s@google.com License: Apache 2.0 Description: The Google data Python client library makes it easy to interact with Google services through the Google Data APIs. This library provides data @@ -22,11 +22,16 @@ - YouTube Data API - Google Webmaster Tools Data API - Blogger Data API + - Google Health API + - Google Book Search API + - Google Analytics API + - Google Finance API + - Google Maps Data API + - Google Sites Data API - core Google data API functionality The core Google data code provides sufficient functionality to use this library with any Google data API (even if a module hasn't been written for - it yet). For example, this client can be used with the Notebook API and the - Google Health API. This library may also be used with any Atom Publishing - Protocol service. + it yet). For example, this client can be used with the Notebook API. This + library may also be used with any Atom Publishing Protocol service (AtomPub). Platform: UNKNOWN diff -Nru python-gdata-1.2.4/pydocs/atom.auth.html python-gdata-2.0.8/pydocs/atom.auth.html --- python-gdata-1.2.4/pydocs/atom.auth.html 2009-01-22 19:55:43.000000000 +0000 +++ python-gdata-2.0.8/pydocs/atom.auth.html 2009-07-24 02:47:28.000000000 +0100 @@ -26,7 +26,7 @@ +Modules
 
-Modules
       
base64
@@ -42,6 +42,7 @@
BasicAuth +
NoAuth
@@ -69,6 +70,24 @@
__weakref__
list of weak references to the object (if defined)
+

+ + + + + +
 
+class NoAuth(__builtin__.object)
    Methods defined here:
+
modify_request(self, http_request)
+ +
+Data descriptors defined here:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+

diff -Nru python-gdata-1.2.4/pydocs/atom.client.html python-gdata-2.0.8/pydocs/atom.client.html --- python-gdata-1.2.4/pydocs/atom.client.html 2009-01-22 19:55:42.000000000 +0000 +++ python-gdata-2.0.8/pydocs/atom.client.html 2009-12-17 20:58:53.000000000 +0000 @@ -14,7 +14,7 @@
+Modules
 
-Modules
       
atom
@@ -32,6 +32,17 @@
AtomPubClient
+
exceptions.Exception(exceptions.BaseException) +
+
+
Error +
+
+
MissingHost +
+
+
+

@@ -45,21 +56,52 @@
Get = get(self, uri=None, auth_token=None, http_request=None, **kwargs)
+
ModifyRequest = modify_request(self, http_request)
+
Post = post(self, uri=None, data=None, auth_token=None, http_request=None, **kwargs)
Put = put(self, uri=None, data=None, auth_token=None, http_request=None, **kwargs)
Request = request(self, method=None, uri=None, auth_token=None, http_request=None, **kwargs)
-
__init__(self, http_client=None, host=None, auth_token=None, **kwargs)
+
__init__(self, http_client=None, host=None, auth_token=None, source=None, **kwargs)
Creates a new AtomPubClient instance.

+Args:
+  source: The name of your application.
+  http_client: An object capable of performing HTTP requests through a
+               request method. This object is used to perform the request
+               when the AtomPubClient's request method is called. Used to
+               allow HTTP requests to be directed to a mock server, or use
+               an alternate library instead of the default of httplib to
+               make HTTP requests.
+  host: str The default host name to use if a host is not specified in the
+        requested URI.
+  auth_token: An object which sets the HTTP Authorization header when its
+              modify_request method is called.
-
delete(self, uri=None, auth_token=None, http_request=None, **kwargs)
+
delete(self, uri=None, auth_token=None, http_request=None, **kwargs)
Performs a request using the DELETE method, returns an HTTP response.
-
get(self, uri=None, auth_token=None, http_request=None, **kwargs)
+
get(self, uri=None, auth_token=None, http_request=None, **kwargs)
Performs a request using the GET method, returns an HTTP response.
-
post(self, uri=None, data=None, auth_token=None, http_request=None, **kwargs)
+
modify_request(self, http_request)
Changes the HTTP request before sending it to the server.

+Sets the User-Agent HTTP header and fills in the HTTP host portion
+of the URL if one was not included in the request (for this it uses
+the self.host member if one is set). This method is called in
+self.request.

+Args:
+  http_request: An atom.http_core.HttpRequest() (optional) If one is
+                not provided, a new HttpRequest is instantiated.

+Returns:
+  An atom.http_core.HttpRequest() with the User-Agent header set and
+  if this client has a value in its host member, the host in the request
+  URL is set.
+ +
post(self, uri=None, data=None, auth_token=None, http_request=None, **kwargs)
Sends data using the POST method, returns an HTTP response.
-
put(self, uri=None, data=None, auth_token=None, http_request=None, **kwargs)
+
put(self, uri=None, data=None, auth_token=None, http_request=None, **kwargs)
Sends data using the PUT method, returns an HTTP response.
request(self, method=None, uri=None, auth_token=None, http_request=None, **kwargs)
Performs an HTTP request to the server indicated.
 
@@ -68,10 +110,14 @@ Args:
  method: The HTTP method as a string, usually one of 'GET', 'POST',
          'PUT', or 'DELETE'
-  uri: The URI desired as a string or atom.http_core.Uri. 
-  http_request: 
+  uri: The URI desired as a string or atom.http_core.Uri.
+  http_request:
  auth_token: An authorization token object whose modify_request method
-              sets the HTTP Authorization header.
+              sets the HTTP Authorization header.

+Returns:
+  The results of calling self.http_client.request. With the default
+  http_client, this is an HTTP response object.
Data descriptors defined here:
@@ -87,6 +133,125 @@
host = None
+
ssl = False
+ +

+ + + + + +
 
+class Error(exceptions.Exception)
    
Method resolution order:
+
Error
+
exceptions.Exception
+
exceptions.BaseException
+
__builtin__.object
+
+
+Data descriptors defined here:
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from exceptions.Exception:
+
__init__(...)
x.__init__(...) initializes x; see x.__class__.__doc__ for signature
+ +
+Data and other attributes inherited from exceptions.Exception:
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+ +
+Methods inherited from exceptions.BaseException:
+
__delattr__(...)
x.__delattr__('name') <==> del x.name
+ +
__getattribute__(...)
x.__getattribute__('name') <==> x.name
+ +
__getitem__(...)
x.__getitem__(y) <==> x[y]
+ +
__getslice__(...)
x.__getslice__(i, j) <==> x[i:j]

+Use of negative indices is not supported.
+ +
__reduce__(...)
+ +
__repr__(...)
x.__repr__() <==> repr(x)
+ +
__setattr__(...)
x.__setattr__('name', value) <==> x.name = value
+ +
__setstate__(...)
+ +
__str__(...)
x.__str__() <==> str(x)
+ +
__unicode__(...)
+ +
+Data descriptors inherited from exceptions.BaseException:
+
__dict__
+
+
args
+
+
message
+
+

+ + + + + +
 
+class MissingHost(Error)
    
Method resolution order:
+
MissingHost
+
Error
+
exceptions.Exception
+
exceptions.BaseException
+
__builtin__.object
+
+
+Data descriptors inherited from Error:
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from exceptions.Exception:
+
__init__(...)
x.__init__(...) initializes x; see x.__class__.__doc__ for signature
+ +
+Data and other attributes inherited from exceptions.Exception:
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+ +
+Methods inherited from exceptions.BaseException:
+
__delattr__(...)
x.__delattr__('name') <==> del x.name
+ +
__getattribute__(...)
x.__getattribute__('name') <==> x.name
+ +
__getitem__(...)
x.__getitem__(y) <==> x[y]
+ +
__getslice__(...)
x.__getslice__(i, j) <==> x[i:j]

+Use of negative indices is not supported.
+ +
__reduce__(...)
+ +
__repr__(...)
x.__repr__() <==> repr(x)
+ +
__setattr__(...)
x.__setattr__('name', value) <==> x.name = value
+ +
__setstate__(...)
+ +
__str__(...)
x.__str__() <==> str(x)
+ +
__unicode__(...)
+ +
+Data descriptors inherited from exceptions.BaseException:
+
__dict__
+
+
args
+
+
message
+

diff -Nru python-gdata-1.2.4/pydocs/atom.core.html python-gdata-2.0.8/pydocs/atom.core.html --- python-gdata-1.2.4/pydocs/atom.core.html 2009-01-22 19:55:42.000000000 +0000 +++ python-gdata-2.0.8/pydocs/atom.core.html 2009-11-25 01:04:13.000000000 +0000 @@ -26,7 +26,7 @@
+Modules
 
-Modules
        - + + + -
xml.etree.cElementTree
@@ -71,28 +71,38 @@
 
class XmlElement(__builtin__.object)
    
   Represents an element node in an XML document.

+The text member is a UTF-8 encoded str or unicode.
 
  Methods defined here:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
+
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
GetElements = get_elements(self, tag=None, namespace=None, version=1)
-
ToString = to_string(self, version=1)
+
ToString = to_string(self, version=1, encoding=None)
__init__(self, text=None, *args, **kwargs)
+
__str__(self)
+
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.
 
To find all attributes in this object, call get_attributes with the tag
-and namespace both set to None (the default). This method searches 
-through the object's members and the attributes stored in 
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
_other_attributes which did not fit any of the XML parsing rules for this
class.
 
Args:
  tag: str
  namespace: str
-  version: int Specifies the version of the XML rules to be used when 
+  version: int Specifies the version of the XML rules to be used when
           searching for matching attributes.
 
Returns:
@@ -108,13 +118,13 @@ Args:
  tag: str
  namespace: str
-  version: int Specifies the version of the XML rules to be used when 
+  version: int Specifies the version of the XML rules to be used when
           searching for matching elements.
 
Returns:
  A list of the matching XmlElements.
-
to_string(self, version=1)
Converts this object to XML.
+
to_string(self, version=1, encoding=None)
Converts this object to XML.

Data descriptors defined here:
@@ -124,6 +134,18 @@
__weakref__
list of weak references to the object (if defined)
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+

Data and other attributes defined here:
text = None
@@ -135,20 +157,46 @@ Functions
       
XmlElementFromString = xml_element_from_string(xml_string, target_class, version=1, encoding='UTF-8')
Parses the XML string according to the rules for the target_class.
+
Parse = parse(xml_string, target_class=None, version=1, encoding=None)
Parses the XML string according to the rules for the target_class.

+Args:
+  xml_string: str or unicode
+  target_class: XmlElement or a subclass. If None is specified, the
+      XmlElement class is used.
+  version: int (optional) The version of the schema which should be used when
+      converting the XML into an object. The default is 1.
+  encoding: str (optional) The character encoding of the bytes in the
+      xml_string. Default is 'UTF-8'.
+
XmlElementFromString = parse(xml_string, target_class=None, version=1, encoding=None)
Parses the XML string according to the rules for the target_class.

+Args:
+  xml_string: str or unicode
+  target_class: XmlElement or a subclass. If None is specified, the
+      XmlElement class is used.
+  version: int (optional) The version of the schema which should be used when
+      converting the XML into an object. The default is 1.
+  encoding: str (optional) The character encoding of the bytes in the
+      xml_string. Default is 'UTF-8'.
+
parse(xml_string, target_class=None, version=1, encoding=None)
Parses the XML string according to the rules for the target_class.
 
Args:
  xml_string: str or unicode
-  target_class: XmlElement or a subclass.
+  target_class: XmlElement or a subclass. If None is specified, the
+      XmlElement class is used.
  version: int (optional) The version of the schema which should be used when
-           converting the XML into an object. The default is 1.
-
xml_element_from_string(xml_string, target_class, version=1, encoding='UTF-8')
Parses the XML string according to the rules for the target_class.
+      converting the XML into an object. The default is 1.
+  encoding: str (optional) The character encoding of the bytes in the
+      xml_string. Default is 'UTF-8'.
+
xml_element_from_string = parse(xml_string, target_class=None, version=1, encoding=None)
Parses the XML string according to the rules for the target_class.
 
Args:
  xml_string: str or unicode
-  target_class: XmlElement or a subclass.
+  target_class: XmlElement or a subclass. If None is specified, the
+      XmlElement class is used.
  version: int (optional) The version of the schema which should be used when
-           converting the XML into an object. The default is 1.
+      converting the XML into an object. The default is 1.
+  encoding: str (optional) The character encoding of the bytes in the
+      xml_string. Default is 'UTF-8'.

@@ -156,7 +204,8 @@ Data -
       __author__ = 'j.s@google.com (Jeff Scudder)'

+

STRING_ENCODING = 'utf-8'
+__author__ = 'j.s@google.com (Jeff Scudder)'

 
diff -Nru python-gdata-1.2.4/pydocs/atom.data.html python-gdata-2.0.8/pydocs/atom.data.html --- python-gdata-1.2.4/pydocs/atom.data.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/atom.data.html 2009-11-25 01:04:14.000000000 +0000 @@ -0,0 +1,4831 @@ + + +Python: module atom.data + + + + +
 
+ 
atom.data
index
/usr/local/svn/gdata-python-client/src/atom/data.py
+

# Copyright (C) 2009 Google Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.

+

+ + + + + +
 
+Modules
       
atom
+

+ + + + + +
 
+Classes
       
+
__builtin__.object +
+
+
LinkFinder +
+
+
FeedEntryParent(atom.core.XmlElement, LinkFinder) +
+
+
Entry +
Source +
+
+
Feed +
+
+
+
+
+
+
+
+
atom.core.XmlElement(__builtin__.object) +
+
+
Category +
Control +
Date +
+
+
Published +
Updated +
+
+
Draft +
Email +
ExtensionElement +
FeedEntryParent(atom.core.XmlElement, LinkFinder) +
+
+
Entry +
Source +
+
+
Feed +
+
+
+
+
Generator +
Icon +
Id +
Link +
Logo +
Name +
Person +
+
+
Author +
Contributor +
+
+
Text +
+
+
Content +
Rights +
Subtitle +
Summary +
Title +
+
+
Uri +
+
+
+

+ + + + + + + +
 
+class Author(Person)
   The atom:author element.

+An author is a required element in Feed unless each Entry contains an Author.
 
 
Method resolution order:
+
Author
+
Person
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes inherited from Person:
+
email = <class 'atom.data.Email'>
The atom:email element.
+ +
name = <class 'atom.data.Name'>
The atom:name element.
+ +
uri = <class 'atom.data.Uri'>
The atom:uri element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Category(atom.core.XmlElement)
   The atom:category element.
 
 
Method resolution order:
+
Category
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
label = 'label'
+ +
scheme = 'scheme'
+ +
term = 'term'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Content(Text)
   The atom:content element.
 
 
Method resolution order:
+
Content
+
Text
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
src = 'src'
+ +
+Data and other attributes inherited from Text:
+
type = 'type'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Contributor(Person)
   The atom:contributor element.
 
 
Method resolution order:
+
Contributor
+
Person
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes inherited from Person:
+
email = <class 'atom.data.Email'>
The atom:email element.
+ +
name = <class 'atom.data.Name'>
The atom:name element.
+ +
uri = <class 'atom.data.Uri'>
The atom:uri element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Control(atom.core.XmlElement)
   The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
 
 
Method resolution order:
+
Control
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
draft = <class 'atom.data.Draft'>
The app:draft element which indicates if this entry should be public.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Date(atom.core.XmlElement)
   A parent class for atom:updated, published, etc.
 
 
Method resolution order:
+
Date
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Draft(atom.core.XmlElement)
   The app:draft element which indicates if this entry should be public.
 
 
Method resolution order:
+
Draft
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Email(atom.core.XmlElement)
   The atom:email element.
 
 
Method resolution order:
+
Email
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Entry(FeedEntryParent)
   The atom:entry element.
 
 
Method resolution order:
+
Entry
+
FeedEntryParent
+
atom.core.XmlElement
+
LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class ExtensionElement(atom.core.XmlElement)
   Provided for backwards compatibility to the v1 atom.ExtensionElement.
 
 
Method resolution order:
+
ExtensionElement
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, tag=None, namespace=None, attributes=None, children=None, text=None, *args, **kwargs)
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Feed(Source)
   The atom:feed element which contains entries.
 
 
Method resolution order:
+
Feed
+
Source
+
FeedEntryParent
+
atom.core.XmlElement
+
LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'atom.data.Entry'>]
+ +
+Data and other attributes inherited from Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class FeedEntryParent(atom.core.XmlElement, LinkFinder)
   A super class for atom:feed and entry, contains shared attributes
 
 
Method resolution order:
+
FeedEntryParent
+
atom.core.XmlElement
+
LinkFinder
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes defined here:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class Generator(atom.core.XmlElement)
   The atom:generator element.
 
 
Method resolution order:
+
Generator
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
uri = 'uri'
+ +
version = 'version'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Icon(atom.core.XmlElement)
   The atom:icon element.
 
 
Method resolution order:
+
Icon
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Id(atom.core.XmlElement)
   The atom:id element.
 
 
Method resolution order:
+
Id
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Link(atom.core.XmlElement)
   The atom:link element.
 
 
Method resolution order:
+
Link
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
href = 'href'
+ +
hreflang = 'hreflang'
+ +
length = 'length'
+ +
rel = 'rel'
+ +
title = 'title'
+ +
type = 'type'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class LinkFinder(__builtin__.object)
   An "interface" providing methods to find link elements

+Entry elements often contain multiple links which differ in the rel
+attribute or content type. Often, developers are interested in a specific
+type of link so this class provides methods to find specific classes of
+links.

+This class is used as a mixin in Atom entries and feeds.
 
 Methods defined here:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
+ +
FindUrl = find_url(self, rel)
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +
+Data descriptors defined here:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class Logo(atom.core.XmlElement)
   The atom:logo element.
 
 
Method resolution order:
+
Logo
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Name(atom.core.XmlElement)
   The atom:name element.
 
 
Method resolution order:
+
Name
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Person(atom.core.XmlElement)
   A foundation class which atom:author and atom:contributor extend.

+A person contains information like name, email address, and web page URI for
+an author or contributor to an Atom feed.
 
 
Method resolution order:
+
Person
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
email = <class 'atom.data.Email'>
The atom:email element.
+ +
name = <class 'atom.data.Name'>
The atom:name element.
+ +
uri = <class 'atom.data.Uri'>
The atom:uri element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Published(Date)
   The atom:published element.
 
 
Method resolution order:
+
Published
+
Date
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Rights(Text)
   The atom:rights element.
 
 
Method resolution order:
+
Rights
+
Text
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes inherited from Text:
+
type = 'type'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Source(FeedEntryParent)
   The atom:source element.
 
 
Method resolution order:
+
Source
+
FeedEntryParent
+
atom.core.XmlElement
+
LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class Subtitle(Text)
   The atom:subtitle element.
 
 
Method resolution order:
+
Subtitle
+
Text
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes inherited from Text:
+
type = 'type'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Summary(Text)
   The atom:summary element.
 
 
Method resolution order:
+
Summary
+
Text
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes inherited from Text:
+
type = 'type'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Text(atom.core.XmlElement)
   A foundation class from which atom:title, summary, etc. extend.

+This class should never be instantiated.
 
 
Method resolution order:
+
Text
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
type = 'type'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Title(Text)
   The atom:title element.
 
 
Method resolution order:
+
Title
+
Text
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes inherited from Text:
+
type = 'type'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Updated(Date)
   The atom:updated element.
 
 
Method resolution order:
+
Updated
+
Date
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Uri(atom.core.XmlElement)
   The atom:uri element.
 
 
Method resolution order:
+
Uri
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + +
 
+Data
       APP_TEMPLATE_V1 = '{http://purl.org/atom/app#}%s'
+APP_TEMPLATE_V2 = '{http://www.w3.org/2007/app}%s'
+ATOM_TEMPLATE = '{http://www.w3.org/2005/Atom}%s'
+__author__ = 'j.s@google.com (Jeff Scudder)'

+ + + + + +
 
+Author
       j.s@google.com (Jeff Scudder)
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/atom.html python-gdata-2.0.8/pydocs/atom.html --- python-gdata-1.2.4/pydocs/atom.html 2009-01-22 19:55:42.000000000 +0000 +++ python-gdata-2.0.8/pydocs/atom.html 2009-11-25 01:04:13.000000000 +0000 @@ -12,23 +12,23 @@

Contains classes representing Atom elements.
 
Module objective: provide data classes for Atom constructs. These classes hide
-the XML-ness of Atom and provide a set of native Python classes to interact 
+the XML-ness of Atom and provide a set of native Python classes to interact
with.
 
Conversions to and from XML should only be necessary when the Atom classes
-"touch the wire" and are sent over HTTP. For this reason this module 
+"touch the wire" and are sent over HTTP. For this reason this module
provides  methods and functions to convert Atom classes to and from strings.
 
-For more information on the Atom data model, see RFC 4287 
+For more information on the Atom data model, see RFC 4287
(http://www.ietf.org/rfc/rfc4287.txt)
 
-AtomBase: A foundation class on which Atom classes are built. It 
+AtomBase: A foundation class on which Atom classes are built. It
    handles the parsing of attributes and children which are common to all
-    Atom classes. By default, the AtomBase class translates all XML child 
+    Atom classes. By default, the AtomBase class translates all XML child
    nodes into ExtensionElements.
 
-ExtensionElement: Atom allows Atom objects to contain XML which is not part 
-    of the Atom specification, these are called extension elements. If a 
+ExtensionElement: Atom allows Atom objects to contain XML which is not part
+    of the Atom specification, these are called extension elements. If a
    classes parser encounters an unexpected XML construct, it is translated
    into an ExtensionElement instance. ExtensionElement is designed to fully
    capture the information in the XML. Child nodes in an XML extension are
@@ -43,15 +43,16 @@

auth
client
core
+data
http
http_core
http_interface
-
mock_http
-mock_http_core
+mock_http
+
mock_http_core
mock_service
-
service
+service
token_store
-url
+
url

@@ -141,7 +142,7 @@ Methods defined here:
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__init__(self, extension_elements=None, extension_attributes=None, text=None)
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
__str__(self)
@@ -647,29 +648,7 @@
Methods defined here:
-
__init__(self, author=None, category=None, content=None, contributor=None, atom_id=None, link=None, published=None, rights=None, source=None, summary=None, control=None, title=None, updated=None, extension_elements=None, extension_attributes=None, text=None)
Constructor for atom:entry

-Args:
-  author: list A list of Author instances which belong to this class.
-  category: list A list of Category instances
-  content: Content The entry's Content
-  contributor: list A list on Contributor instances
-  id: Id The entry's Id element
-  link: list A list of Link instances
-  published: Published The entry's Published element
-  rights: Rights The entry's Rights element
-  source: Source the entry's source element
-  summary: Summary the entry's summary element
-  title: Title the entry's title element
-  updated: Updated the entry's updated element
-  control: The entry's app:control element which can be used to mark an 
-      entry as a draft which should not be publicly viewable.
-  text: String The text contents of the element. This is the contents
-      of the Entry's XML text node. (Example: <foo>This is the text</foo>)
-  extension_elements: list A list of ExtensionElement instances which are
-      children of this element.
-  extension_attributes: dict A dictionary of strings which are the values
-      for additional XML attributes of this element.
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.

Methods inherited from AtomBase:
@@ -709,6 +688,8 @@
GetEditLink(self)
+
GetEditMediaLink(self)
+
GetLicenseLink(self)
GetNextLink(self)
@@ -742,7 +723,7 @@   A list of elements whose tag and/or namespace match the parameters
  values -
__init__(self, extension_elements=None, extension_attributes=None, text=None)
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.

Data descriptors defined here:
@@ -787,9 +768,9 @@   tag: string (optional) The tag (without the namespace qualifier) for
      this element. To reconstruct the full qualified name of the element,
      combine this tag with the namespace.
-  attributes: dict (optinal) The attribute value string pairs for the XML 
+  attributes: dict (optinal) The attribute value string pairs for the XML
      attributes of this element.
-  children: list (optional) A list of ExtensionElements which represent 
+  children: list (optional) A list of ExtensionElements which represent
      the XML child nodes of this element.
@@ -820,31 +801,7 @@
Methods defined here:
-
__init__(self, author=None, category=None, contributor=None, generator=None, icon=None, atom_id=None, link=None, logo=None, rights=None, subtitle=None, title=None, updated=None, entry=None, text=None, extension_elements=None, extension_attributes=None)
Constructor for Source

-Args:
-  author: list (optional) A list of Author instances which belong to this
-      class.
-  category: list (optional) A list of Category instances
-  contributor: list (optional) A list on Contributor instances
-  generator: Generator (optional) 
-  icon: Icon (optional) 
-  id: Id (optional) The entry's Id element
-  link: list (optional) A list of Link instances
-  logo: Logo (optional) 
-  rights: Rights (optional) The entry's Rights element
-  subtitle: Subtitle (optional) The entry's subtitle element
-  title: Title (optional) the entry's title element
-  updated: Updated (optional) the entry's updated element
-  entry: list (optional) A list of the Entry instances contained in the 
-      feed.
-  text: String (optional) The text contents of the element. This is the 
-      contents of the Entry's XML text node. 
-      (Example: <foo>This is the text</foo>)
-  extension_elements: list (optional) A list of ExtensionElement instances
-      which are children of this element.
-  extension_attributes: dict (optional) A dictionary of strings which are 
-      the values for additional XML attributes of this element.
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.

Methods inherited from AtomBase:
@@ -884,6 +841,8 @@
GetEditLink(self)
+
GetEditMediaLink(self)
+
GetLicenseLink(self)
GetNextLink(self)
@@ -951,6 +910,8 @@
GetEditLink(self)
+
GetEditMediaLink(self)
+
GetLicenseLink(self)
GetNextLink(self)
@@ -1213,6 +1174,8 @@
GetEditLink(self)
+
GetEditMediaLink(self)
+
GetLicenseLink(self)
GetNextLink(self)
@@ -1606,6 +1569,8 @@
GetEditLink(self)
+
GetEditMediaLink(self)
+
GetLicenseLink(self)
GetNextLink(self)
@@ -1973,24 +1938,7 @@
ContentFromString(xml_string)
ContributorFromString(xml_string)
ControlFromString(xml_string)
-
CreateClassFromXMLString(target_class, xml_string, string_encoding=None)
Creates an instance of the target class from the string contents.

-Args:
-  target_class: class The class which will be instantiated and populated
-      with the contents of the XML. This class must have a _tag and a
-      _namespace class variable.
-  xml_string: str A string which contains valid XML. The root element
-      of the XML string should match the tag and namespace of the desired
-      class.
-  string_encoding: str The character encoding which the xml_string should
-      be converted to before it is interpreted and translated into 
-      objects. The default is None in which case the string encoding
-      is not changed.

-Returns:
-  An instance of the target class with members assigned according to the
-  contents of the XML - or None if the root XML tag and namespace did not
-  match those of the target class.
+
CreateClassFromXMLString(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
DraftFromString(xml_string)
EmailFromString(xml_string)
EntryFromString(xml_string)
@@ -2010,6 +1958,14 @@
TitleFromString(xml_string)
UpdatedFromString(xml_string)
UriFromString(xml_string)
+
deprecated(warning=None)
Decorator to raise warning each time the function is called.

+Args:
+  warning: The warning message to be displayed as a string (optinoal).
+
v1_deprecated(warning=None)
Shows a warning if ENABLE_V1_WARNINGS is True.

+Function decorator used to mark methods used in v1 classes which
+may be removed in future versions of the library.

@@ -2021,6 +1977,7 @@ APP_TEMPLATE = '{http://purl.org/atom/app#}%s'
ATOM_NAMESPACE = 'http://www.w3.org/2005/Atom'
ELEMENT_TEMPLATE = '{http://www.w3.org/2005/Atom}%s'
+ENABLE_V1_WARNINGS = False
MEMBER_STRING_ENCODING = 'utf-8'
XML_STRING_ENCODING = 'utf-8'
__author__ = 'api.jscudder (Jeffrey Scudder)'

diff -Nru python-gdata-1.2.4/pydocs/atom.http_core.html python-gdata-2.0.8/pydocs/atom.http_core.html --- python-gdata-1.2.4/pydocs/atom.http_core.html 2009-01-22 19:55:42.000000000 +0000 +++ python-gdata-2.0.8/pydocs/atom.http_core.html 2010-02-26 23:16:48.000000000 +0000 @@ -26,14 +26,16 @@ +Modules
 
-Modules
       
StringIO
-
httplib
+httplib
+
os
+ssl
urllib
-
urlparse
-

+urlparse
+

 
@@ -45,7 +47,12 @@
HttpClient -
HttpRequest +
+
+
ProxiedHttpClient +
+
+
HttpRequest
HttpResponse
Uri
@@ -56,7 +63,8 @@
Error
-
UnknownSize +
ProxyError +
UnknownSize
@@ -86,7 +94,7 @@
Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
@@ -110,6 +118,8 @@
__str__(...)
x.__str__() <==> str(x)
+
__unicode__(...)
+
Data descriptors inherited from exceptions.BaseException:
__dict__
@@ -117,7 +127,6 @@
args
message
-
exception message

@@ -163,15 +172,12 @@
AddFormInputs = add_form_inputs(self, form_data, mime_type='application/x-www-form-urlencoded')
-
__init__(self, scheme=None, host=None, port=None, method=None, uri=None, headers=None)
Construct an HTTP request.
+
__init__(self, uri=None, method=None, headers=None)
Construct an HTTP request.
 
Args:
-  scheme: str The protocol to be used, usually this is 'http' or 'https'
-  host: str The name or IP address string of the server.
-  port: int The port number to connect to on the server.
+  uri: The full path or partial path as a Uri object or a string.
  method: The HTTP method for the request, examples include 'GET', 'POST',
          etc.
-  uri: str The relative path inclusing escaped query parameters.
  headers: dict of strings The HTTP headers to include in the request.
add_body_part(self, data, mime_type, size=None)
Adds data to the HTTP request body.
@@ -186,7 +192,13 @@   size: int Required if the data is a file like object. If the data is a
        string, the size is calculated so this parameter is ignored.
-
add_form_inputs(self, form_data, mime_type='application/x-www-form-urlencoded')
+
add_form_inputs(self, form_data, mime_type='application/x-www-form-urlencoded')
Form-encodes and adds data to the request body.

+Args:
+  form_data: dict or sequnce or two member tuples which contains the
+             form keys and values.
+  mime_type: str The MIME type of the form data being sent. Defaults
+             to 'application/x-www-form-urlencoded'.

Data descriptors defined here:
@@ -198,14 +210,8 @@

Data and other attributes defined here:
-
host = None
-
method = None
-
port = None
- -
scheme = None
-
uri = None

@@ -220,6 +226,8 @@

getheader(self, name, default=None)
+
getheaders(self)
+
read(self, amt=None)

@@ -240,6 +248,95 @@ + + +
 
+class ProxiedHttpClient(HttpClient)
    
Method resolution order:
+
ProxiedHttpClient
+
HttpClient
+
__builtin__.object
+
+
+Methods inherited from HttpClient:
+
Request = request(self, http_request)
+ +
request(self, http_request)
+ +
+Data descriptors inherited from HttpClient:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Data and other attributes inherited from HttpClient:
+
debug = None
+ +

+ + + + + +
 
+class ProxyError(Error)
    
Method resolution order:
+
ProxyError
+
Error
+
exceptions.Exception
+
exceptions.BaseException
+
__builtin__.object
+
+
+Data descriptors inherited from Error:
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from exceptions.Exception:
+
__init__(...)
x.__init__(...) initializes x; see x.__class__.__doc__ for signature
+ +
+Data and other attributes inherited from exceptions.Exception:
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+ +
+Methods inherited from exceptions.BaseException:
+
__delattr__(...)
x.__delattr__('name') <==> del x.name
+ +
__getattribute__(...)
x.__getattribute__('name') <==> x.name
+ +
__getitem__(...)
x.__getitem__(y) <==> x[y]
+ +
__getslice__(...)
x.__getslice__(i, j) <==> x[i:j]

+Use of negative indices is not supported.
+ +
__reduce__(...)
+ +
__repr__(...)
x.__repr__() <==> repr(x)
+ +
__setattr__(...)
x.__setattr__('name', value) <==> x.name = value
+ +
__setstate__(...)
+ +
__str__(...)
x.__str__() <==> str(x)
+ +
__unicode__(...)
+ +
+Data descriptors inherited from exceptions.BaseException:
+
__dict__
+
+
args
+
+
message
+
+

+ + + @@ -261,7 +358,7 @@
Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
@@ -285,6 +382,8 @@
__str__(...)
x.__str__() <==> str(x)
+
__unicode__(...)
+
Data descriptors inherited from exceptions.BaseException:
__dict__
@@ -292,7 +391,6 @@
args
message
-
exception message
 
class UnknownSize(Error)
    

@@ -310,13 +408,32 @@  
Args:
  scheme: str This is usually 'http' or 'https'.
-  ... TODO
+  host: str The host name or IP address of the desired server.
+  post: int The server's port number.
+  path: str The path of the resource following the host. This begins with
+        a /, example: '/calendar/feeds/default/allcalendars/full'
  query: dict of strings The URL query parameters. The keys and values are
-         both escaped so this dict should contain the unescaped values. +         both escaped so this dict should contain the unescaped values.
+         For example {'my key': 'val', 'second': '!!!'} will become
+         '?my+key=val&second=%21%21%21' which is appended to the path. + +
__str__(self)
modify_request(self, http_request=None)
Sets HTTP request components based on the URI.

+Static methods defined here:
+
ParseUri = parse_uri(uri_string)
Creates a Uri object which corresponds to the URI string.

+This method can accept partial URIs, but it will leave missing
+members of the Uri unset.
+ +
parse_uri(uri_string)
Creates a Uri object which corresponds to the URI string.

+This method can accept partial URIs, but it will leave missing
+members of the Uri unset.
+ +
Data descriptors defined here:
__dict__
dictionary for instance variables (if defined)
@@ -345,6 +462,12 @@  
This method can accept partial URIs, but it will leave missing
members of the Uri unset.
+
get_headers(http_response)
Retrieves all HTTP headers from an HTTP response from the server.

+This method is provided for backwards compatibility for Python2.2 and 2.3.
+The httplib.HTTPResponse object in 2.2 and 2.3 does not have a getheaders
+method so this function will use getheaders if available, but if not it
+will retrieve a few using getheader.
parse_uri(uri_string)
Creates a Uri object which corresponds to the URI string.
 
This method can accept partial URIs, but it will leave missing
diff -Nru python-gdata-1.2.4/pydocs/atom.http.html python-gdata-2.0.8/pydocs/atom.http.html --- python-gdata-1.2.4/pydocs/atom.http.html 2009-01-22 19:55:42.000000000 +0000 +++ python-gdata-2.0.8/pydocs/atom.http.html 2009-10-09 23:48:43.000000000 +0100 @@ -27,7 +27,7 @@
+Modules
 
-Modules
       
atom
@@ -35,8 +35,9 @@
httplib
os
socket
-types
-

+ssl
+types
+

 
@@ -61,6 +62,12 @@ +
exceptions.Exception(exceptions.BaseException) +
+
+
TestConfigurationError +
+

@@ -101,6 +108,10 @@       in the request.
+Data and other attributes defined here:
+
v2_http_client = None
+ +
Methods inherited from atom.http_interface.GenericHttpClient:
delete(self, url, headers=None)
@@ -174,6 +185,10 @@       in the request.
+Data and other attributes inherited from HttpClient:
+
v2_http_client = None
+ +
Methods inherited from atom.http_interface.GenericHttpClient:
delete(self, url, headers=None)
@@ -220,7 +235,7 @@
Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
@@ -244,6 +259,66 @@
__str__(...)
x.__str__() <==> str(x)
+
__unicode__(...)
+ +
+Data descriptors inherited from exceptions.BaseException:
+
__dict__
+
+
args
+
+
message
+
+

+ + + + + +
 
+class TestConfigurationError(exceptions.Exception)
    
Method resolution order:
+
TestConfigurationError
+
exceptions.Exception
+
exceptions.BaseException
+
__builtin__.object
+
+
+Data descriptors defined here:
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from exceptions.Exception:
+
__init__(...)
x.__init__(...) initializes x; see x.__class__.__doc__ for signature
+ +
+Data and other attributes inherited from exceptions.Exception:
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+ +
+Methods inherited from exceptions.BaseException:
+
__delattr__(...)
x.__delattr__('name') <==> del x.name
+ +
__getattribute__(...)
x.__getattribute__('name') <==> x.name
+ +
__getitem__(...)
x.__getitem__(y) <==> x[y]
+ +
__getslice__(...)
x.__getslice__(i, j) <==> x[i:j]

+Use of negative indices is not supported.
+ +
__reduce__(...)
+ +
__repr__(...)
x.__repr__() <==> repr(x)
+ +
__setattr__(...)
x.__setattr__('name', value) <==> x.name = value
+ +
__setstate__(...)
+ +
__str__(...)
x.__str__() <==> str(x)
+ +
__unicode__(...)
+
Data descriptors inherited from exceptions.BaseException:
__dict__
@@ -251,7 +326,6 @@
args
message
-
exception message

@@ -261,7 +335,8 @@
        DEFAULT_CONTENT_TYPE = 'application/atom+xml'
-__author__ = 'api.jscudder (Jeff Scudder)'

+__author__ = 'api.jscudder (Jeff Scudder)'
+ssl_imported = True

 
diff -Nru python-gdata-1.2.4/pydocs/atom.http_interface.html python-gdata-2.0.8/pydocs/atom.http_interface.html --- python-gdata-1.2.4/pydocs/atom.http_interface.html 2008-12-04 00:16:01.000000000 +0000 +++ python-gdata-2.0.8/pydocs/atom.http_interface.html 2009-08-21 02:50:37.000000000 +0100 @@ -26,7 +26,7 @@ +Modules
 
-Modules
       
StringIO
@@ -84,7 +84,7 @@
Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
@@ -108,6 +108,8 @@
__str__(...)
x.__str__() <==> str(x)
+
__unicode__(...)
+
Data descriptors inherited from exceptions.BaseException:
__dict__
@@ -115,7 +117,6 @@
args
message
-
exception message

@@ -141,7 +142,7 @@
Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
@@ -165,6 +166,8 @@
__str__(...)
x.__str__() <==> str(x)
+
__unicode__(...)
+
Data descriptors inherited from exceptions.BaseException:
__dict__
@@ -172,7 +175,6 @@
args
message
-
exception message

@@ -304,7 +306,7 @@
Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
@@ -328,6 +330,8 @@
__str__(...)
x.__str__() <==> str(x)
+
__unicode__(...)
+
Data descriptors inherited from exceptions.BaseException:
__dict__
@@ -335,7 +339,6 @@
args
message
-
exception message

@@ -344,7 +347,7 @@ Data -
       USER_AGENT = '%s GData-Python/1.2.2'
+
USER_AGENT = '%s GData-Python/2.0.2'
__author__ = 'api.jscudder (Jeff Scudder)'

diff -Nru python-gdata-1.2.4/pydocs/atom.mock_http_core.html python-gdata-2.0.8/pydocs/atom.mock_http_core.html --- python-gdata-1.2.4/pydocs/atom.mock_http_core.html 2009-01-22 19:55:42.000000000 +0000 +++ python-gdata-2.0.8/pydocs/atom.mock_http_core.html 2009-12-17 20:58:53.000000000 +0000 @@ -26,7 +26,7 @@
+Modules
 
-Modules
       
StringIO
@@ -47,8 +47,26 @@
EchoHttpClient
MockHttpClient +
SettableHttpClient
+
atom.http_core.HttpResponse(__builtin__.object) +
+
+
MockHttpResponse +
+
+
exceptions.Exception(exceptions.BaseException) +
+
+
Error +
+
+
NoRecordingFound +
+
+
+

@@ -85,14 +103,82 @@
+ + +
 
+class Error(exceptions.Exception)
    
Method resolution order:
+
Error
+
exceptions.Exception
+
exceptions.BaseException
+
__builtin__.object
+
+
+Data descriptors defined here:
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from exceptions.Exception:
+
__init__(...)
x.__init__(...) initializes x; see x.__class__.__doc__ for signature
+ +
+Data and other attributes inherited from exceptions.Exception:
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+ +
+Methods inherited from exceptions.BaseException:
+
__delattr__(...)
x.__delattr__('name') <==> del x.name
+ +
__getattribute__(...)
x.__getattribute__('name') <==> x.name
+ +
__getitem__(...)
x.__getitem__(y) <==> x[y]
+ +
__getslice__(...)
x.__getslice__(i, j) <==> x[i:j]

+Use of negative indices is not supported.
+ +
__reduce__(...)
+ +
__repr__(...)
x.__repr__() <==> repr(x)
+ +
__setattr__(...)
x.__setattr__('name', value) <==> x.name = value
+ +
__setstate__(...)
+ +
__str__(...)
x.__str__() <==> str(x)
+ +
__unicode__(...)
+ +
+Data descriptors inherited from exceptions.BaseException:
+
__dict__
+
+
args
+
+
message
+
+

+ + +
 
class MockHttpClient(__builtin__.object)
     Methods defined here:
+
AddResponse = add_response(self, http_request, status, reason, headers=None, body=None)
+ +
Request = request(self, http_request)
+
__init__(self, recordings=None, real_client=None)
add_response(self, http_request, status, reason, headers=None, body=None)
+
close_session(self)
Saves recordings in the temporary file named in use_cached_session.
+ +
delete_session(self, name=None)
Removes recordings from a previous live request.
+ +
get_cache_file_name(self)
+
request(self, http_request)
Provide a recorded response, or record a response for replay.
 
If the real_client is set, the request will be made using the
@@ -100,6 +186,25 @@ If the real_client is None (the default), this method will examine
the recordings and find the first which matches.
+
use_cached_session(self, name=None, real_http_client=None)
Attempts to load recordings from a previous live request.

+If a temp file with the recordings exists, then it is used to fulfill
+requests. If the file does not exist, then a real client is used to
+actually make the desired HTTP requests. Requests and responses are
+recorded and will be written to the desired temprary cache file when
+close_session is called.

+Args:
+  name: str (optional) The file name of session file to be used. The file
+        is loaded from the temporary directory of this machine. If no name
+        is passed in, a default name will be constructed using the
+        cache_name_prefix, cache_case_name, and cache_test_name of this
+        object.
+  real_http_client: atom.http_core.HttpClient the real client to be used
+                    if the cached recordings are not found. If the default
+                    value is used, this will be an
+                    atom.http_core.HttpClient.
+
Data descriptors defined here:
__dict__
@@ -110,8 +215,148 @@

Data and other attributes defined here:
+
cache_case_name = ''
+ +
cache_name_prefix = 'gdata_live_test'
+ +
cache_test_name = ''
+ +
debug = None
+ +
last_request_was_live = False
+
real_client = None
+

+ + + + + +
 
+class MockHttpResponse(atom.http_core.HttpResponse)
    
Method resolution order:
+
MockHttpResponse
+
atom.http_core.HttpResponse
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, status=None, reason=None, headers=None, body=None)
+ +
read(self)
+ +
+Methods inherited from atom.http_core.HttpResponse:
+
getheader(self, name, default=None)
+ +
getheaders(self)
+ +
+Data descriptors inherited from atom.http_core.HttpResponse:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Data and other attributes inherited from atom.http_core.HttpResponse:
+
reason = None
+ +
status = None
+ +

+ + + + + +
 
+class NoRecordingFound(Error)
    
Method resolution order:
+
NoRecordingFound
+
Error
+
exceptions.Exception
+
exceptions.BaseException
+
__builtin__.object
+
+
+Data descriptors inherited from Error:
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from exceptions.Exception:
+
__init__(...)
x.__init__(...) initializes x; see x.__class__.__doc__ for signature
+ +
+Data and other attributes inherited from exceptions.Exception:
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+ +
+Methods inherited from exceptions.BaseException:
+
__delattr__(...)
x.__delattr__('name') <==> del x.name
+ +
__getattribute__(...)
x.__getattribute__('name') <==> x.name
+ +
__getitem__(...)
x.__getitem__(y) <==> x[y]
+ +
__getslice__(...)
x.__getslice__(i, j) <==> x[i:j]

+Use of negative indices is not supported.
+ +
__reduce__(...)
+ +
__repr__(...)
x.__repr__() <==> repr(x)
+ +
__setattr__(...)
x.__setattr__('name', value) <==> x.name = value
+ +
__setstate__(...)
+ +
__str__(...)
x.__str__() <==> str(x)
+ +
__unicode__(...)
+ +
+Data descriptors inherited from exceptions.BaseException:
+
__dict__
+
+
args
+
+
message
+
+

+ + + + + + + +
 
+class SettableHttpClient(__builtin__.object)
   An HTTP Client which responds with the data given in set_response.
 
 Methods defined here:
+
__init__(self, status, reason, body, headers)
Configures the response for the server.

+See set_response for details on the arguments to the constructor.
+ +
request(self, http_request)
+ +
set_response(self, status, reason, body, headers)
Determines the response which will be sent for each request.

+Args:
+  status: An int for the HTTP status code, example: 200, 404, etc.
+  reason: String for the HTTP reason, example: OK, NOT FOUND, etc.
+  body: The body of the HTTP response as a string or a file-like
+        object (something with a read method).
+  headers: dict of strings containing the HTTP headers in the response.
+ +
+Data descriptors defined here:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+

diff -Nru python-gdata-1.2.4/pydocs/atom.mock_http.html python-gdata-2.0.8/pydocs/atom.mock_http.html --- python-gdata-1.2.4/pydocs/atom.mock_http.html 2008-10-16 00:01:57.000000000 +0100 +++ python-gdata-2.0.8/pydocs/atom.mock_http.html 2009-07-24 02:47:27.000000000 +0100 @@ -26,7 +26,7 @@
+Modules
 
-Modules
       
atom
@@ -92,7 +92,7 @@
Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
@@ -116,6 +116,8 @@
__str__(...)
x.__str__() <==> str(x)
+
__unicode__(...)
+
Data descriptors inherited from exceptions.BaseException:
__dict__
@@ -123,7 +125,6 @@
args
message
-
exception message

@@ -278,7 +279,7 @@
Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
@@ -302,6 +303,8 @@
__str__(...)
x.__str__() <==> str(x)
+
__unicode__(...)
+
Data descriptors inherited from exceptions.BaseException:
__dict__
@@ -309,7 +312,6 @@
args
message
-
exception message

diff -Nru python-gdata-1.2.4/pydocs/atom.mock_service.html python-gdata-2.0.8/pydocs/atom.mock_service.html --- python-gdata-1.2.4/pydocs/atom.mock_service.html 2009-01-22 19:55:43.000000000 +0000 +++ python-gdata-2.0.8/pydocs/atom.mock_service.html 2010-02-26 23:16:48.000000000 +0000 @@ -17,7 +17,7 @@
+Modules
 
-Modules
       
atom
@@ -140,7 +140,7 @@
       
ConcealValueWithSha(source)
-
DumpRecordings(conceal_func=<function ConcealValueWithSha at 0x8e6500>)
+
DumpRecordings(conceal_func=<function ConcealValueWithSha at 0x7faf3dee4c08>)
HttpRequest(service, operation, data, uri, extra_headers=None, url_params=None, escape_params=True, content_type='application/atom+xml')
Simulates an HTTP call to the server, makes an actual HTTP request if 
real_request_handler is set.
 
diff -Nru python-gdata-1.2.4/pydocs/atom.service.html python-gdata-2.0.8/pydocs/atom.service.html --- python-gdata-1.2.4/pydocs/atom.service.html 2008-10-16 00:01:57.000000000 +0100 +++ python-gdata-2.0.8/pydocs/atom.service.html 2009-07-24 02:47:27.000000000 +0100 @@ -23,7 +23,7 @@ +Modules
 
-Modules
       
xml.etree.cElementTree
@@ -179,23 +179,9 @@   username: str
  password: str -
__init__(self, server=None, additional_headers=None, application_name='', http_client=None, token_store=None)
Creates a new AtomService client.

-Args:
-  server: string (optional) The start of a URL for the server
-          to which all operations should be directed. Example: 
-          'www.google.com'
-  additional_headers: dict (optional) Any additional HTTP headers which
-                      should be included with CRUD operations.
-  http_client: An object responsible for making HTTP requests using a
-               request method. If none is provided, a new instance of
-               atom.http.ProxiedHttpClient will be used.
-  token_store: Keeps a collection of authorization tokens which can be
-               applied to requests for a specific URLs. Critical methods are
-               find_token based on a URL (atom.url.Url or a string), add_token,
-               and remove_token.
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
-
request(self, operation, url, data=None, headers=None, url_params=None)
+
request(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
use_basic_auth(self, username, password, scopes=None)
diff -Nru python-gdata-1.2.4/pydocs/atom.token_store.html python-gdata-2.0.8/pydocs/atom.token_store.html --- python-gdata-1.2.4/pydocs/atom.token_store.html 2008-10-16 00:01:57.000000000 +0100 +++ python-gdata-2.0.8/pydocs/atom.token_store.html 2009-07-24 02:47:28.000000000 +0100 @@ -21,7 +21,7 @@ +Modules
 
-Modules
       
atom
diff -Nru python-gdata-1.2.4/pydocs/atom.url.html python-gdata-2.0.8/pydocs/atom.url.html --- python-gdata-1.2.4/pydocs/atom.url.html 2008-10-16 00:01:57.000000000 +0100 +++ python-gdata-2.0.8/pydocs/atom.url.html 2009-07-24 02:47:28.000000000 +0100 @@ -26,7 +26,7 @@ +Modules
 
-Modules
       
urllib
diff -Nru python-gdata-1.2.4/pydocs/gdata.acl.data.html python-gdata-2.0.8/pydocs/gdata.acl.data.html --- python-gdata-1.2.4/pydocs/gdata.acl.data.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.acl.data.html 2010-02-26 23:16:48.000000000 +0000 @@ -0,0 +1,1032 @@ + + +Python: module gdata.acl.data + + + + +
 
+ 
gdata.acl.data
index
/usr/local/svn/gdata-python-client/src/gdata/acl/data.py
+

Contains the data classes of the Google Access Control List (ACL) Extension

+

+ + + + + +
 
+Modules
       
atom
+
gdata
+

+ + + + + +
 
+Classes
       
+
atom.core.XmlElement(__builtin__.object) +
+
+
AclRole +
AclScope +
+
+
gdata.data.GDEntry(atom.data.Entry, gdata.data.LinkFinder) +
+
+
AclEntry +
+
+
gdata.data.GDFeed(atom.data.Feed, gdata.data.LinkFinder) +
+
+
AclFeed +
+
+
+

+ + + + + + + +
 
+class AclEntry(gdata.data.GDEntry)
   Describes an entry in a feed of an access control list (ACL).
 
 
Method resolution order:
+
AclEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
role = <class 'gdata.acl.data.AclRole'>
Describes the role of an entry in an access control list.
+ +
scope = <class 'gdata.acl.data.AclScope'>
Describes the scope of an entry in an access control list.
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class AclFeed(gdata.data.GDFeed)
   Describes a feed of an access control list (ACL).
 
 
Method resolution order:
+
AclFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.acl.data.AclEntry'>]
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class AclRole(atom.core.XmlElement)
   Describes the role of an entry in an access control list.
 
 
Method resolution order:
+
AclRole
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class AclScope(atom.core.XmlElement)
   Describes the scope of an entry in an access control list.
 
 
Method resolution order:
+
AclScope
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
type = 'type'
+ +
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + +
 
+Data
       GACL_TEMPLATE = '{http://schemas.google.com/acl/2007}%s'
+__author__ = 'j.s@google.com (Jeff Scudder)'

+ + + + + +
 
+Author
       j.s@google.com (Jeff Scudder)
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.alt.appengine.html python-gdata-2.0.8/pydocs/gdata.alt.appengine.html --- python-gdata-1.2.4/pydocs/gdata.alt.appengine.html 2008-09-15 19:11:17.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.alt.appengine.html 2009-03-20 21:52:21.000000000 +0000 @@ -8,7 +8,7 @@

 
 
gdata.alt.appengine
index
/usr/local/svn/gdata-python-client-release/src/gdata/alt/appengine.py
+>index
/usr/local/svn/gdata-python-client/src/gdata/alt/appengine.py

Provides HTTP functions for gdata.service to use on Google App Engine
 
AppEngineHttpClient: Provides an HTTP request method which uses App Engine's
@@ -116,11 +116,15 @@

put(self, url, data, headers=None)

+Data descriptors inherited from atom.http_interface.GenericHttpClient:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
Data and other attributes inherited from atom.http_interface.GenericHttpClient:
-
__dict__ = <dictproxy object>
dictionary for instance variables (if defined)
- -
__weakref__ = <attribute '__weakref__' of 'GenericHttpClient' objects>
list of weak references to the object (if defined)
-
debug = False

@@ -168,11 +172,13 @@   not in the datastore, or because there is no current user.


-Data and other attributes inherited from atom.token_store.TokenStore:
-
__dict__ = <dictproxy object>
dictionary for instance variables (if defined)
- -
__weakref__ = <attribute '__weakref__' of 'TokenStore' objects>
list of weak references to the object (if defined)
- +Data descriptors inherited from atom.token_store.TokenStore:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+

@@ -193,11 +199,13 @@
read(self, length=None)

-Data and other attributes defined here:
-
__dict__ = <dictproxy object>
dictionary for instance variables (if defined)
- -
__weakref__ = <attribute '__weakref__' of 'HttpResponse' objects>
list of weak references to the object (if defined)
- +Data descriptors defined here:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+

@@ -213,14 +221,16 @@
__builtin__.object

-Data and other attributes defined here:
-
pickled_tokens = <google.appengine.ext.db.BlobProperty object>
A string that can be longer than 500 bytes.
+Data descriptors defined here:
+
pickled_tokens
+
A string that can be longer than 500 bytes.
 
This type should be used for large binary values to make sure the datastore
-has good performance for queries.
- -
user = <google.appengine.ext.db.UserProperty object>
A user property.
- +has good performance for queries.
+
+
user
+
A user property.
+

Methods inherited from google.appengine.ext.db.Model:
__init__(self, parent=None, key_name=None, _app=None, **kwds)
Creates a new instance of this model.
@@ -454,9 +464,15 @@
properties(cls) from google.appengine.ext.db.PropertiedClass
Returns a dictionary of all the properties defined for this model.

+Data descriptors inherited from google.appengine.ext.db.Model:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
Data and other attributes inherited from google.appengine.ext.db.Model:
-
__dict__ = <dictproxy object>
dictionary for instance variables (if defined)
-
__metaclass__ = <class 'google.appengine.ext.db.PropertiedClass'>
Meta-class for initializing Model classes properties.
 
Used for initializing Properties defined in the context of a model.
@@ -468,8 +484,6 @@  
Duplicate properties are not permitted.
-
__weakref__ = <attribute '__weakref__' of 'Model' objects>
list of weak references to the object (if defined)
-

@@ -481,12 +495,30 @@  
If there is no current user (a user is not signed in to the app) or the user
does not have any tokens, an empty dictionary is returned. -
run_on_appengine(gdata_service)
Modifies a GDataService object to allow it to run on App Engine.
+
run_on_appengine(gdata_service, store_tokens=True, single_user_mode=False)
Modifies a GDataService object to allow it to run on App Engine.
 
Args:
  gdata_service: An instance of AtomService, GDataService, or any
      of their subclasses which has an http_client member and a 
-      token_store member.
+      token_store member.
+  store_tokens: Boolean, defaults to True. If True, the gdata_service
+                will attempt to add each token to it's token_store when
+                SetClientLoginToken or SetAuthSubToken is called. If False
+                the tokens will not automatically be added to the 
+                token_store.
+  single_user_mode: Boolean, defaults to False. If True, the current_token
+                    member of gdata_service will be set when 
+                    SetClientLoginToken or SetAuthTubToken is called. If set
+                    to True, the current_token is set in the gdata_service
+                    and anyone who accesses the object will use the same 
+                    token. 
+                    
+                    Note: If store_tokens is set to False and 
+                    single_user_mode is set to False, all tokens will be 
+                    ignored, since the library assumes: the tokens should not
+                    be stored in the datastore and they should not be stored
+                    in the gdata_service object. This will make it 
+                    impossible to make requests which require authorization.
save_auth_tokens(token_dict)
Associates the tokens with the current user and writes to the datastore.
 
If there us no current user, the tokens are not written and this function
diff -Nru python-gdata-1.2.4/pydocs/gdata.analytics.client.html python-gdata-2.0.8/pydocs/gdata.analytics.client.html --- python-gdata-1.2.4/pydocs/gdata.analytics.client.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.analytics.client.html 2010-02-26 23:16:48.000000000 +0000 @@ -0,0 +1,757 @@ + + +Python: module gdata.analytics.client + + +
+ +
 
+ 
gdata.analytics.client
index
/usr/local/svn/gdata-python-client/src/gdata/analytics/client.py
+

AnalyticsClient extends gdata.client.GDClient to streamline
+Google Analytics Data Export API calls.

+

+ + + + + +
 
+Modules
       
atom
+
gdata
+

+ + + + + +
 
+Classes
       
+
gdata.client.GDClient(atom.client.AtomPubClient) +
+
+
AnalyticsClient +
+
+
gdata.client.GDQuery(atom.http_core.Uri) +
+
+
AccountFeedQuery +
DataFeedQuery +
+
+
+

+ + + + + + + +
 
+class AccountFeedQuery(gdata.client.GDQuery)
   Account Feed query class to simplify constructing Account Feed Urls.

+To use this class, you can either pass a dict in the constructor that has
+all the data feed query parameters as keys.
+   queryUrl = DataFeedQuery({'max-results': '10000'})

+Alternatively you can add new parameters directly to the query object.
+   queryUrl = DataFeedQuery()
+   queryUrl.query['max-results'] = '10000'

+Args:
+  query: dict (optional) Contains all the GA Data Feed query parameters
+      as keys.
 
 
Method resolution order:
+
AccountFeedQuery
+
gdata.client.GDQuery
+
atom.http_core.Uri
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, query=None, **kwargs)
+ +
+Data and other attributes defined here:
+
host = 'www.google.com'
+ +
path = '/analytics/feeds/accounts/default'
+ +
scheme = 'https'
+ +
+Data descriptors inherited from gdata.client.GDQuery:
+
text_query
+
The q parameter for searching for an exact text match on content
+
+
+Methods inherited from atom.http_core.Uri:
+
ModifyRequest = modify_request(self, http_request=None)
Sets HTTP request components based on the URI.
+ +
__str__(self)
+ +
modify_request(self, http_request=None)
Sets HTTP request components based on the URI.
+ +
+Static methods inherited from atom.http_core.Uri:
+
ParseUri = parse_uri(uri_string)
Creates a Uri object which corresponds to the URI string.

+This method can accept partial URIs, but it will leave missing
+members of the Uri unset.
+ +
parse_uri(uri_string)
Creates a Uri object which corresponds to the URI string.

+This method can accept partial URIs, but it will leave missing
+members of the Uri unset.
+ +
+Data descriptors inherited from atom.http_core.Uri:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Data and other attributes inherited from atom.http_core.Uri:
+
port = None
+ +

+ + + + + + + +
 
+class AnalyticsClient(gdata.client.GDClient)
   Client extension for the Google Analytics API service.
 
 
Method resolution order:
+
AnalyticsClient
+
gdata.client.GDClient
+
atom.client.AtomPubClient
+
__builtin__.object
+
+
+Methods defined here:
+
GetAccountFeed = get_account_feed(self, feed_uri, auth_token=None, **kwargs)
+ +
GetDataFeed = get_data_feed(self, feed_uri, auth_token=None, **kwargs)
+ +
__init__(self, auth_token=None, **kwargs)
Constructs a new client for the Google Analytics Data Export API.

+Args:
+  auth_token: gdata.gauth.ClientLoginToken, AuthSubToken, or
+      OAuthToken (optional) Authorizes this client to edit the user's data.
+  kwargs: The other parameters to pass to gdata.client.GDClient
+      constructor.
+ +
get_account_feed(self, feed_uri, auth_token=None, **kwargs)
Makes a request to the Analytics API Account Feed.

+Args:
+  feed_uri: str or gdata.analytics.AccountFeedQuery The Analytics Account
+      Feed uri to define what data to retrieve from the API. Can also be
+      used with a gdata.analytics.AccountFeedQuery object.
+ +
get_data_feed(self, feed_uri, auth_token=None, **kwargs)
Makes a request to the Analytics API Data Feed.

+Args:
+  feed_uri: str or gdata.analytics.AccountFeedQuery The Analytics Data
+      Feed uri to define what data to retrieve from the API. Can also be
+      used with a gdata.analytics.AccountFeedQuery object.
+ +
+Data and other attributes defined here:
+
account_type = 'GOOGLE'
+ +
api_version = '2'
+ +
auth_scopes = ('https://www.google.com/analytics/feeds/',)
+ +
auth_service = 'analytics'
+ +
+Methods inherited from gdata.client.GDClient:
+
ClientLogin = client_login(self, email, password, source, service=None, account_type='HOSTED_OR_GOOGLE', auth_url=<atom.http_core.Uri object at 0xb92950>, captcha_token=None, captcha_response=None)
Performs an auth request using the user's email address and password.

+In order to modify user specific data and read user private data, your
+application must be authorized by the user. One way to demonstrage
+authorization is by including a Client Login token in the Authorization
+HTTP header of all requests. This method requests the Client Login token
+by sending the user's email address, password, the name of the
+application, and the service code for the service which will be accessed
+by the application. If the username and password are correct, the server
+will respond with the client login code and a new ClientLoginToken
+object will be set in the client's auth_token member. With the auth_token
+set, future requests from this client will include the Client Login
+token.

+For a list of service names, see 
+http://code.google.com/apis/gdata/faq.html#clientlogin
+For more information on Client Login, see:
+http://code.google.com/apis/accounts/docs/AuthForInstalledApps.html

+Args:
+  email: str The user's email address or username.
+  password: str The password for the user's account.
+  source: str The name of your application. This can be anything you
+          like but should should give some indication of which app is
+          making the request.
+  service: str The service code for the service you would like to access.
+           For example, 'cp' for contacts, 'cl' for calendar. For a full
+           list see
+           http://code.google.com/apis/gdata/faq.html#clientlogin
+           If you are using a subclass of the gdata.client.GDClient, the
+           service will usually be filled in for you so you do not need
+           to specify it. For example see BloggerClient,
+           SpreadsheetsClient, etc.
+  account_type: str (optional) The type of account which is being
+                authenticated. This can be either 'GOOGLE' for a Google
+                Account, 'HOSTED' for a Google Apps Account, or the
+                default 'HOSTED_OR_GOOGLE' which will select the Google
+                Apps Account if the same email address is used for both
+                a Google Account and a Google Apps Account.
+  auth_url: str (optional) The URL to which the login request should be
+            sent.
+  captcha_token: str (optional) If a previous login attempt was reponded
+                 to with a CAPTCHA challenge, this is the token which
+                 identifies the challenge (from the CAPTCHA's URL).
+  captcha_response: str (optional) If a previous login attempt was
+                    reponded to with a CAPTCHA challenge, this is the
+                    response text which was contained in the challenge.

+  Returns:
+    None

+  Raises:
+    A RequestError or one of its suclasses: BadAuthentication,
+    BadAuthenticationServiceURL, ClientLoginFailed,
+    ClientLoginTokenMissing, or CaptchaChallenge
+ +
Delete = delete(self, entry_or_uri, auth_token=None, force=False, **kwargs)
+ +
GetAccessToken = get_access_token(self, request_token, url='https://www.google.com/accounts/OAuthGetAccessToken')
Exchanges an authorized OAuth request token for an access token.

+Contacts the Google OAuth server to upgrade a previously authorized
+request token. Once the request token is upgraded to an access token,
+the access token may be used to access the user's data.

+For more details, see the Google Accounts OAuth documentation:
+http://code.google.com/apis/accounts/docs/OAuth.html#AccessToken

+Args:
+  request_token: An OAuth token which has been authorized by the user.
+  url: (optional) The URL to which the upgrade request should be sent.
+      Defaults to: https://www.google.com/accounts/OAuthAuthorizeToken
+ +
GetEntry = get_entry(self, uri, auth_token=None, converter=None, desired_class=<class 'gdata.data.GDEntry'>, etag=None, **kwargs)
+ +
GetFeed = get_feed(self, uri, auth_token=None, converter=None, desired_class=<class 'gdata.data.GDFeed'>, **kwargs)
+ +
GetNext = get_next(self, feed, auth_token=None, converter=None, desired_class=None, **kwargs)
Fetches the next set of results from the feed.

+When requesting a feed, the number of entries returned is capped at a
+service specific default limit (often 25 entries). You can specify your
+own entry-count cap using the max-results URL query parameter. If there
+are more results than could fit under max-results, the feed will contain
+a next link. This method performs a GET against this next results URL.

+Returns:
+  A new feed object containing the next set of entries in this feed.
+ +
GetOAuthToken = get_oauth_token(self, scopes, next, consumer_key, consumer_secret=None, rsa_private_key=None, url='https://www.google.com/accounts/OAuthGetRequestToken')
Obtains an OAuth request token to allow the user to authorize this app.

+Once this client has a request token, the user can authorize the request
+token by visiting the authorization URL in their browser. After being
+redirected back to this app at the 'next' URL, this app can then exchange
+the authorized request token for an access token.

+For more information see the documentation on Google Accounts with OAuth:
+http://code.google.com/apis/accounts/docs/OAuth.html#AuthProcess

+Args:
+  scopes: list of strings or atom.http_core.Uri objects which specify the
+      URL prefixes which this app will be accessing. For example, to access
+      the Google Calendar API, you would want to use scopes:
+      ['https://www.google.com/calendar/feeds/',
+       'http://www.google.com/calendar/feeds/']
+  next: str or atom.http_core.Uri object, The URL which the user's browser
+      should be sent to after they authorize access to their data. This
+      should be a URL in your application which will read the token
+      information from the URL and upgrade the request token to an access
+      token.
+  consumer_key: str This is the identifier for this application which you
+      should have received when you registered your application with Google
+      to use OAuth.
+  consumer_secret: str (optional) The shared secret between your app and
+      Google which provides evidence that this request is coming from you
+      application and not another app. If present, this libraries assumes
+      you want to use an HMAC signature to verify requests. Keep this data
+      a secret.
+  rsa_private_key: str (optional) The RSA private key which is used to
+      generate a digital signature which is checked by Google's server. If
+      present, this library assumes that you want to use an RSA signature
+      to verify requests. Keep this data a secret.
+  url: The URL to which a request for a token should be made. The default
+      is Google's OAuth request token provider.
+ +
ModifyRequest = modify_request(self, http_request)
Adds or changes request before making the HTTP request.

+This client will add the API version if it is specified.
+Subclasses may override this method to add their own request
+modifications before the request is made.
+ +
Post = post(self, entry, uri, auth_token=None, converter=None, desired_class=None, **kwargs)
+ +
Request = request(self, method=None, uri=None, auth_token=None, http_request=None, converter=None, desired_class=None, redirects_remaining=4, **kwargs)
Make an HTTP request to the server.

+See also documentation for atom.client.AtomPubClient.request.

+If a 302 redirect is sent from the server to the client, this client
+assumes that the redirect is in the form used by the Google Calendar API.
+The same request URI and method will be used as in the original request,
+but a gsessionid URL parameter will be added to the request URI with
+the value provided in the server's 302 redirect response. If the 302
+redirect is not in the format specified by the Google Calendar API, a
+RedirectError will be raised containing the body of the server's
+response.

+The method calls the client's modify_request method to make any changes
+required by the client before the request is made. For example, a
+version 2 client could add a GData-Version: 2 header to the request in
+its modify_request method.

+Args:
+  method: str The HTTP verb for this request, usually 'GET', 'POST',
+          'PUT', or 'DELETE'
+  uri: atom.http_core.Uri, str, or unicode The URL being requested.
+  auth_token: An object which sets the Authorization HTTP header in its
+              modify_request method. Recommended classes include
+              gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken
+              among others.
+  http_request: (optional) atom.http_core.HttpRequest
+  converter: function which takes the body of the response as it's only
+             argument and returns the desired object.
+  desired_class: class descended from atom.core.XmlElement to which a
+                 successful response should be converted. If there is no
+                 converter function specified (converter=None) then the
+                 desired_class will be used in calling the
+                 atom.core.parse function. If neither
+                 the desired_class nor the converter is specified, an
+                 HTTP reponse object will be returned.
+  redirects_remaining: (optional) int, if this number is 0 and the
+                       server sends a 302 redirect, the request method
+                       will raise an exception. This parameter is used in
+                       recursive request calls to avoid an infinite loop.

+Any additional arguments are passed through to
+atom.client.AtomPubClient.request.

+Returns:
+  An HTTP response object (see atom.http_core.HttpResponse for a
+  description of the object's interface) if no converter was
+  specified and no desired_class was specified. If a converter function
+  was provided, the results of calling the converter are returned. If no
+  converter was specified but a desired_class was provided, the response
+  body will be converted to the class using
+  atom.core.parse.
+ +
RequestClientLoginToken = request_client_login_token(self, email, password, source, service=None, account_type='HOSTED_OR_GOOGLE', auth_url=<atom.http_core.Uri object at 0xb92910>, captcha_token=None, captcha_response=None)
+ +
RevokeToken = revoke_token(self, token=None, url=<atom.http_core.Uri object at 0xb929d0>)
Requests that the token be invalidated.

+This method can be used for both AuthSub and OAuth tokens (to invalidate
+a ClientLogin token, the user must change their password).

+Returns:
+  True if the server responded with a 200.

+Raises:
+  A RequestError if the server responds with a non-200 status.
+ +
Update = update(self, entry, auth_token=None, force=False, **kwargs)
Edits the entry on the server by sending the XML for this entry.

+Performs a PUT and converts the response to a new entry object with a
+matching class to the entry passed in.

+Args:
+  entry:
+  auth_token:
+  force: boolean stating whether an update should be forced. Defaults to
+         False. Normally, if a change has been made since the passed in
+         entry was obtained, the server will not overwrite the entry since
+         the changes were based on an obsolete version of the entry.
+         Setting force to True will cause the update to silently
+         overwrite whatever version is present.

+Returns:
+  A new Entry object of a matching type to the entry which was passed in.
+ +
UpgradeToken = upgrade_token(self, token=None, url=<atom.http_core.Uri object at 0xb92990>)
Asks the Google auth server for a multi-use AuthSub token.

+For details on AuthSub, see:
+http://code.google.com/apis/accounts/docs/AuthSub.html

+Args:
+  token: gdata.gauth.AuthSubToken or gdata.gauth.SecureAuthSubToken
+      (optional) If no token is passed in, the client's auth_token member
+      is used to request the new token. The token object will be modified
+      to contain the new session token string.
+  url: str or atom.http_core.Uri (optional) The URL to which the token
+      upgrade request should be sent. Defaults to:
+      https://www.google.com/accounts/AuthSubSessionToken

+Returns:
+  The upgraded gdata.gauth.AuthSubToken object.
+ +
client_login(self, email, password, source, service=None, account_type='HOSTED_OR_GOOGLE', auth_url=<atom.http_core.Uri object at 0xb92950>, captcha_token=None, captcha_response=None)
Performs an auth request using the user's email address and password.

+In order to modify user specific data and read user private data, your
+application must be authorized by the user. One way to demonstrage
+authorization is by including a Client Login token in the Authorization
+HTTP header of all requests. This method requests the Client Login token
+by sending the user's email address, password, the name of the
+application, and the service code for the service which will be accessed
+by the application. If the username and password are correct, the server
+will respond with the client login code and a new ClientLoginToken
+object will be set in the client's auth_token member. With the auth_token
+set, future requests from this client will include the Client Login
+token.

+For a list of service names, see 
+http://code.google.com/apis/gdata/faq.html#clientlogin
+For more information on Client Login, see:
+http://code.google.com/apis/accounts/docs/AuthForInstalledApps.html

+Args:
+  email: str The user's email address or username.
+  password: str The password for the user's account.
+  source: str The name of your application. This can be anything you
+          like but should should give some indication of which app is
+          making the request.
+  service: str The service code for the service you would like to access.
+           For example, 'cp' for contacts, 'cl' for calendar. For a full
+           list see
+           http://code.google.com/apis/gdata/faq.html#clientlogin
+           If you are using a subclass of the gdata.client.GDClient, the
+           service will usually be filled in for you so you do not need
+           to specify it. For example see BloggerClient,
+           SpreadsheetsClient, etc.
+  account_type: str (optional) The type of account which is being
+                authenticated. This can be either 'GOOGLE' for a Google
+                Account, 'HOSTED' for a Google Apps Account, or the
+                default 'HOSTED_OR_GOOGLE' which will select the Google
+                Apps Account if the same email address is used for both
+                a Google Account and a Google Apps Account.
+  auth_url: str (optional) The URL to which the login request should be
+            sent.
+  captcha_token: str (optional) If a previous login attempt was reponded
+                 to with a CAPTCHA challenge, this is the token which
+                 identifies the challenge (from the CAPTCHA's URL).
+  captcha_response: str (optional) If a previous login attempt was
+                    reponded to with a CAPTCHA challenge, this is the
+                    response text which was contained in the challenge.

+  Returns:
+    None

+  Raises:
+    A RequestError or one of its suclasses: BadAuthentication,
+    BadAuthenticationServiceURL, ClientLoginFailed,
+    ClientLoginTokenMissing, or CaptchaChallenge
+ +
delete(self, entry_or_uri, auth_token=None, force=False, **kwargs)
+ +
get_access_token(self, request_token, url='https://www.google.com/accounts/OAuthGetAccessToken')
Exchanges an authorized OAuth request token for an access token.

+Contacts the Google OAuth server to upgrade a previously authorized
+request token. Once the request token is upgraded to an access token,
+the access token may be used to access the user's data.

+For more details, see the Google Accounts OAuth documentation:
+http://code.google.com/apis/accounts/docs/OAuth.html#AccessToken

+Args:
+  request_token: An OAuth token which has been authorized by the user.
+  url: (optional) The URL to which the upgrade request should be sent.
+      Defaults to: https://www.google.com/accounts/OAuthAuthorizeToken
+ +
get_entry(self, uri, auth_token=None, converter=None, desired_class=<class 'gdata.data.GDEntry'>, etag=None, **kwargs)
+ +
get_feed(self, uri, auth_token=None, converter=None, desired_class=<class 'gdata.data.GDFeed'>, **kwargs)
+ +
get_next(self, feed, auth_token=None, converter=None, desired_class=None, **kwargs)
Fetches the next set of results from the feed.

+When requesting a feed, the number of entries returned is capped at a
+service specific default limit (often 25 entries). You can specify your
+own entry-count cap using the max-results URL query parameter. If there
+are more results than could fit under max-results, the feed will contain
+a next link. This method performs a GET against this next results URL.

+Returns:
+  A new feed object containing the next set of entries in this feed.
+ +
get_oauth_token(self, scopes, next, consumer_key, consumer_secret=None, rsa_private_key=None, url='https://www.google.com/accounts/OAuthGetRequestToken')
Obtains an OAuth request token to allow the user to authorize this app.

+Once this client has a request token, the user can authorize the request
+token by visiting the authorization URL in their browser. After being
+redirected back to this app at the 'next' URL, this app can then exchange
+the authorized request token for an access token.

+For more information see the documentation on Google Accounts with OAuth:
+http://code.google.com/apis/accounts/docs/OAuth.html#AuthProcess

+Args:
+  scopes: list of strings or atom.http_core.Uri objects which specify the
+      URL prefixes which this app will be accessing. For example, to access
+      the Google Calendar API, you would want to use scopes:
+      ['https://www.google.com/calendar/feeds/',
+       'http://www.google.com/calendar/feeds/']
+  next: str or atom.http_core.Uri object, The URL which the user's browser
+      should be sent to after they authorize access to their data. This
+      should be a URL in your application which will read the token
+      information from the URL and upgrade the request token to an access
+      token.
+  consumer_key: str This is the identifier for this application which you
+      should have received when you registered your application with Google
+      to use OAuth.
+  consumer_secret: str (optional) The shared secret between your app and
+      Google which provides evidence that this request is coming from you
+      application and not another app. If present, this libraries assumes
+      you want to use an HMAC signature to verify requests. Keep this data
+      a secret.
+  rsa_private_key: str (optional) The RSA private key which is used to
+      generate a digital signature which is checked by Google's server. If
+      present, this library assumes that you want to use an RSA signature
+      to verify requests. Keep this data a secret.
+  url: The URL to which a request for a token should be made. The default
+      is Google's OAuth request token provider.
+ +
modify_request(self, http_request)
Adds or changes request before making the HTTP request.

+This client will add the API version if it is specified.
+Subclasses may override this method to add their own request
+modifications before the request is made.
+ +
post(self, entry, uri, auth_token=None, converter=None, desired_class=None, **kwargs)
+ +
request(self, method=None, uri=None, auth_token=None, http_request=None, converter=None, desired_class=None, redirects_remaining=4, **kwargs)
Make an HTTP request to the server.

+See also documentation for atom.client.AtomPubClient.request.

+If a 302 redirect is sent from the server to the client, this client
+assumes that the redirect is in the form used by the Google Calendar API.
+The same request URI and method will be used as in the original request,
+but a gsessionid URL parameter will be added to the request URI with
+the value provided in the server's 302 redirect response. If the 302
+redirect is not in the format specified by the Google Calendar API, a
+RedirectError will be raised containing the body of the server's
+response.

+The method calls the client's modify_request method to make any changes
+required by the client before the request is made. For example, a
+version 2 client could add a GData-Version: 2 header to the request in
+its modify_request method.

+Args:
+  method: str The HTTP verb for this request, usually 'GET', 'POST',
+          'PUT', or 'DELETE'
+  uri: atom.http_core.Uri, str, or unicode The URL being requested.
+  auth_token: An object which sets the Authorization HTTP header in its
+              modify_request method. Recommended classes include
+              gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken
+              among others.
+  http_request: (optional) atom.http_core.HttpRequest
+  converter: function which takes the body of the response as it's only
+             argument and returns the desired object.
+  desired_class: class descended from atom.core.XmlElement to which a
+                 successful response should be converted. If there is no
+                 converter function specified (converter=None) then the
+                 desired_class will be used in calling the
+                 atom.core.parse function. If neither
+                 the desired_class nor the converter is specified, an
+                 HTTP reponse object will be returned.
+  redirects_remaining: (optional) int, if this number is 0 and the
+                       server sends a 302 redirect, the request method
+                       will raise an exception. This parameter is used in
+                       recursive request calls to avoid an infinite loop.

+Any additional arguments are passed through to
+atom.client.AtomPubClient.request.

+Returns:
+  An HTTP response object (see atom.http_core.HttpResponse for a
+  description of the object's interface) if no converter was
+  specified and no desired_class was specified. If a converter function
+  was provided, the results of calling the converter are returned. If no
+  converter was specified but a desired_class was provided, the response
+  body will be converted to the class using
+  atom.core.parse.
+ +
request_client_login_token(self, email, password, source, service=None, account_type='HOSTED_OR_GOOGLE', auth_url=<atom.http_core.Uri object at 0xb92910>, captcha_token=None, captcha_response=None)
+ +
revoke_token(self, token=None, url=<atom.http_core.Uri object at 0xb929d0>)
Requests that the token be invalidated.

+This method can be used for both AuthSub and OAuth tokens (to invalidate
+a ClientLogin token, the user must change their password).

+Returns:
+  True if the server responded with a 200.

+Raises:
+  A RequestError if the server responds with a non-200 status.
+ +
update(self, entry, auth_token=None, force=False, **kwargs)
Edits the entry on the server by sending the XML for this entry.

+Performs a PUT and converts the response to a new entry object with a
+matching class to the entry passed in.

+Args:
+  entry:
+  auth_token:
+  force: boolean stating whether an update should be forced. Defaults to
+         False. Normally, if a change has been made since the passed in
+         entry was obtained, the server will not overwrite the entry since
+         the changes were based on an obsolete version of the entry.
+         Setting force to True will cause the update to silently
+         overwrite whatever version is present.

+Returns:
+  A new Entry object of a matching type to the entry which was passed in.
+ +
upgrade_token(self, token=None, url=<atom.http_core.Uri object at 0xb92990>)
Asks the Google auth server for a multi-use AuthSub token.

+For details on AuthSub, see:
+http://code.google.com/apis/accounts/docs/AuthSub.html

+Args:
+  token: gdata.gauth.AuthSubToken or gdata.gauth.SecureAuthSubToken
+      (optional) If no token is passed in, the client's auth_token member
+      is used to request the new token. The token object will be modified
+      to contain the new session token string.
+  url: str or atom.http_core.Uri (optional) The URL to which the token
+      upgrade request should be sent. Defaults to:
+      https://www.google.com/accounts/AuthSubSessionToken

+Returns:
+  The upgraded gdata.gauth.AuthSubToken object.
+ +
+Methods inherited from atom.client.AtomPubClient:
+
Get = get(self, uri=None, auth_token=None, http_request=None, **kwargs)
Performs a request using the GET method, returns an HTTP response.
+ +
Put = put(self, uri=None, data=None, auth_token=None, http_request=None, **kwargs)
Sends data using the PUT method, returns an HTTP response.
+ +
get(self, uri=None, auth_token=None, http_request=None, **kwargs)
Performs a request using the GET method, returns an HTTP response.
+ +
put(self, uri=None, data=None, auth_token=None, http_request=None, **kwargs)
Sends data using the PUT method, returns an HTTP response.
+ +
+Data descriptors inherited from atom.client.AtomPubClient:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Data and other attributes inherited from atom.client.AtomPubClient:
+
auth_token = None
+ +
host = None
+ +
ssl = False
+ +

+ + + + + + + +
 
+class DataFeedQuery(gdata.client.GDQuery)
   Data Feed query class to simplify constructing Data Feed Urls.

+To use this class, you can either pass a dict in the constructor that has
+all the data feed query parameters as keys.
+   queryUrl = DataFeedQuery({'start-date': '2008-10-01'})

+Alternatively you can add new parameters directly to the query object.
+   queryUrl = DataFeedQuery()
+   queryUrl.query['start-date'] = '2008-10-01'

+Args:
+  query: dict (optional) Contains all the GA Data Feed query parameters
+      as keys.
 
 
Method resolution order:
+
DataFeedQuery
+
gdata.client.GDQuery
+
atom.http_core.Uri
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, query=None, **kwargs)
+ +
+Data and other attributes defined here:
+
host = 'www.google.com'
+ +
path = '/analytics/feeds/data'
+ +
scheme = 'https'
+ +
+Data descriptors inherited from gdata.client.GDQuery:
+
text_query
+
The q parameter for searching for an exact text match on content
+
+
+Methods inherited from atom.http_core.Uri:
+
ModifyRequest = modify_request(self, http_request=None)
Sets HTTP request components based on the URI.
+ +
__str__(self)
+ +
modify_request(self, http_request=None)
Sets HTTP request components based on the URI.
+ +
+Static methods inherited from atom.http_core.Uri:
+
ParseUri = parse_uri(uri_string)
Creates a Uri object which corresponds to the URI string.

+This method can accept partial URIs, but it will leave missing
+members of the Uri unset.
+ +
parse_uri(uri_string)
Creates a Uri object which corresponds to the URI string.

+This method can accept partial URIs, but it will leave missing
+members of the Uri unset.
+ +
+Data descriptors inherited from atom.http_core.Uri:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Data and other attributes inherited from atom.http_core.Uri:
+
port = None
+ +

+ + + + + +
 
+Data
       __author__ = 'api.nickm@google.com (Nick Mihailovski)'

+ + + + + +
 
+Author
       api.nickm@google.com (Nick Mihailovski)
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.analytics.data.html python-gdata-2.0.8/pydocs/gdata.analytics.data.html --- python-gdata-1.2.4/pydocs/gdata.analytics.data.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.analytics.data.html 2010-02-26 23:16:48.000000000 +0000 @@ -0,0 +1,4083 @@ + + +Python: module gdata.analytics.data + + + + +
 
+ 
gdata.analytics.data
index
/usr/local/svn/gdata-python-client/src/gdata/analytics/data.py
+

Data model classes for parsing and generating XML for the
+Google Analytics Data Export API.

+

+ + + + + +
 
+Modules
       
atom
+
gdata
+

+ + + + + +
 
+Classes
       
+
__builtin__.object +
+
+
GetDimension +
GetMetric +
+
+
Aggregates(atom.core.XmlElement, GetMetric) +
DataEntry(gdata.data.GDEntry, GetMetric, GetDimension) +
+
+
GetProperty +
+
+
AccountEntry(gdata.data.GDEntry, GetProperty) +
DataSource(atom.core.XmlElement, GetProperty) +
+
+
+
+
atom.core.XmlElement(__builtin__.object) +
+
+
Aggregates(atom.core.XmlElement, GetMetric) +
CustomVariable +
DataSource(atom.core.XmlElement, GetProperty) +
Definition +
Destination +
Dimension +
EndDate +
Engagement +
Goal +
Metric +
Property +
Segment +
StartDate +
Step +
TableId +
TableName +
+
+
gdata.data.GDEntry(atom.data.Entry, gdata.data.LinkFinder) +
+
+
AccountEntry(gdata.data.GDEntry, GetProperty) +
DataEntry(gdata.data.GDEntry, GetMetric, GetDimension) +
+
+
gdata.data.GDFeed(atom.data.Feed, gdata.data.LinkFinder) +
+
+
AccountFeed +
DataFeed +
+
+
+

+ + + + + + + +
 
+class AccountEntry(gdata.data.GDEntry, GetProperty)
   Analytics Account Feed <entry>
 
 
Method resolution order:
+
AccountEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
GetProperty
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
custom_variable = [<class 'gdata.analytics.data.CustomVariable'>]
+ +
goal = [<class 'gdata.analytics.data.Goal'>]
+ +
property = [<class 'gdata.analytics.data.Property'>]
+ +
table_id = <class 'gdata.analytics.data.TableId'>
Analytics Feed <dxp:tableId>
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +
+Methods inherited from GetProperty:
+
GetProperty = get_property(self, name)
Helper method to return a propery object by its name attribute.

+Args:
+  name: string The name of the <dxp:property> element to retrieve.

+Returns:
+  A property object corresponding to the matching <dxp:property> element.
+      if no property is found, None is returned.
+ +
get_property(self, name)
Helper method to return a propery object by its name attribute.

+Args:
+  name: string The name of the <dxp:property> element to retrieve.

+Returns:
+  A property object corresponding to the matching <dxp:property> element.
+      if no property is found, None is returned.
+ +

+ + + + + + + +
 
+class AccountFeed(gdata.data.GDFeed)
   Analytics Account Feed <feed>
 
 
Method resolution order:
+
AccountFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.analytics.data.AccountEntry'>]
+ +
segment = [<class 'gdata.analytics.data.Segment'>]
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class Aggregates(atom.core.XmlElement, GetMetric)
   Analytics Data Feed <dxp:aggregates>
 
 
Method resolution order:
+
Aggregates
+
atom.core.XmlElement
+
GetMetric
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
metric = [<class 'gdata.analytics.data.Metric'>]
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from GetMetric:
+
GetMetric = get_metric(self, name)
Helper method to return a propery value by its name attribute

+Args:
+  name: string The name of the <dxp:metric> element to retrieve.

+Returns:
+  A property object corresponding to the matching <dxp:metric> element.
+      if no property is found, None is returned.
+ +
get_metric(self, name)
Helper method to return a propery value by its name attribute

+Args:
+  name: string The name of the <dxp:metric> element to retrieve.

+Returns:
+  A property object corresponding to the matching <dxp:metric> element.
+      if no property is found, None is returned.
+ +

+ + + + + + + +
 
+class CustomVariable(atom.core.XmlElement)
   Analytics Data Feed <dxp:customVariable>
 
 
Method resolution order:
+
CustomVariable
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
index = 'index'
+ +
name = 'name'
+ +
scope = 'scope'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class DataEntry(gdata.data.GDEntry, GetMetric, GetDimension)
   Analytics Data Feed <entry>
 
 
Method resolution order:
+
DataEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
GetMetric
+
GetDimension
+
__builtin__.object
+
+
+Methods defined here:
+
GetObject = get_object(self, name)
+ +
get_object(self, name)
Returns either a Dimension or Metric object with the same name as the
+name parameter.

+Args:
+  name: string The name of the object to retrieve.

+Returns:
+  Either a Dimension or Object that has the same as the name parameter.
+ +
+Data and other attributes defined here:
+
dimension = [<class 'gdata.analytics.data.Dimension'>]
+ +
metric = [<class 'gdata.analytics.data.Metric'>]
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +
+Methods inherited from GetMetric:
+
GetMetric = get_metric(self, name)
Helper method to return a propery value by its name attribute

+Args:
+  name: string The name of the <dxp:metric> element to retrieve.

+Returns:
+  A property object corresponding to the matching <dxp:metric> element.
+      if no property is found, None is returned.
+ +
get_metric(self, name)
Helper method to return a propery value by its name attribute

+Args:
+  name: string The name of the <dxp:metric> element to retrieve.

+Returns:
+  A property object corresponding to the matching <dxp:metric> element.
+      if no property is found, None is returned.
+ +
+Methods inherited from GetDimension:
+
GetDimension = get_dimension(self, name)
Helper method to return a dimention object by its name attribute

+Args:
+  name: string The name of the <dxp:dimension> element to retrieve.

+Returns:
+  A dimension object corresponding to the matching <dxp:dimension> element.
+      if no dimension is found, None is returned.
+ +
get_dimension(self, name)
Helper method to return a dimention object by its name attribute

+Args:
+  name: string The name of the <dxp:dimension> element to retrieve.

+Returns:
+  A dimension object corresponding to the matching <dxp:dimension> element.
+      if no dimension is found, None is returned.
+ +

+ + + + + + + +
 
+class DataFeed(gdata.data.GDFeed)
   Analytics Data Feed <feed>. Althrough there is only one datasource, it is
+stored in an array to replicate the design of the Java client library and
+ensure backwards compatibility if new data sources are added in the future.
 
 
Method resolution order:
+
DataFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
aggregates = <class 'gdata.analytics.data.Aggregates'>
Analytics Data Feed <dxp:aggregates>
+ +
data_source = [<class 'gdata.analytics.data.DataSource'>]
+ +
end_date = <class 'gdata.analytics.data.EndDate'>
Analytics Feed <dxp:endDate>
+ +
entry = [<class 'gdata.analytics.data.DataEntry'>]
+ +
segment = <class 'gdata.analytics.data.Segment'>
Analytics Feed <dxp:segment>
+ +
start_date = <class 'gdata.analytics.data.StartDate'>
Analytics Feed <dxp:startDate>
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class DataSource(atom.core.XmlElement, GetProperty)
   Analytics Data Feed <dxp:dataSource>
 
 
Method resolution order:
+
DataSource
+
atom.core.XmlElement
+
GetProperty
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
property = [<class 'gdata.analytics.data.Property'>]
+ +
table_id = <class 'gdata.analytics.data.TableId'>
Analytics Feed <dxp:tableId>
+ +
table_name = <class 'gdata.analytics.data.TableName'>
Analytics Feed <dxp:tableName>
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from GetProperty:
+
GetProperty = get_property(self, name)
Helper method to return a propery object by its name attribute.

+Args:
+  name: string The name of the <dxp:property> element to retrieve.

+Returns:
+  A property object corresponding to the matching <dxp:property> element.
+      if no property is found, None is returned.
+ +
get_property(self, name)
Helper method to return a propery object by its name attribute.

+Args:
+  name: string The name of the <dxp:property> element to retrieve.

+Returns:
+  A property object corresponding to the matching <dxp:property> element.
+      if no property is found, None is returned.
+ +

+ + + + + + + +
 
+class Definition(atom.core.XmlElement)
   Analytics Feed <dxp:definition>
 
 
Method resolution order:
+
Definition
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Destination(atom.core.XmlElement)
   Analytics Feed <dxp:destination>
 
 
Method resolution order:
+
Destination
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
case_sensitive = 'caseSensitive'
+ +
expression = 'expression'
+ +
match_type = 'matchType'
+ +
step = [<class 'gdata.analytics.data.Step'>]
+ +
step1_required = 'step1Required'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Dimension(atom.core.XmlElement)
   Analytics Feed <dxp:dimension>
 
 
Method resolution order:
+
Dimension
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
name = 'name'
+ +
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class EndDate(atom.core.XmlElement)
   Analytics Feed <dxp:endDate>
 
 
Method resolution order:
+
EndDate
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Engagement(atom.core.XmlElement)
   Analytics Feed <dxp:engagement>
 
 
Method resolution order:
+
Engagement
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
comparison = 'comparison'
+ +
threshold_value = 'thresholdValue'
+ +
type = 'type'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class GetDimension(__builtin__.object)
   Utility class to simplify retrieving Dimension objects.
 
 Methods defined here:
+
GetDimension = get_dimension(self, name)
+ +
get_dimension(self, name)
Helper method to return a dimention object by its name attribute

+Args:
+  name: string The name of the <dxp:dimension> element to retrieve.

+Returns:
+  A dimension object corresponding to the matching <dxp:dimension> element.
+      if no dimension is found, None is returned.
+ +
+Data descriptors defined here:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class GetMetric(__builtin__.object)
   Utility class to simplify retrieving Metric objects.
 
 Methods defined here:
+
GetMetric = get_metric(self, name)
+ +
get_metric(self, name)
Helper method to return a propery value by its name attribute

+Args:
+  name: string The name of the <dxp:metric> element to retrieve.

+Returns:
+  A property object corresponding to the matching <dxp:metric> element.
+      if no property is found, None is returned.
+ +
+Data descriptors defined here:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class GetProperty(__builtin__.object)
   Utility class to simplify retrieving Property objects.
 
 Methods defined here:
+
GetProperty = get_property(self, name)
+ +
get_property(self, name)
Helper method to return a propery object by its name attribute.

+Args:
+  name: string The name of the <dxp:property> element to retrieve.

+Returns:
+  A property object corresponding to the matching <dxp:property> element.
+      if no property is found, None is returned.
+ +
+Data descriptors defined here:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class Goal(atom.core.XmlElement)
   Analytics Feed <dxp:goal>
 
 
Method resolution order:
+
Goal
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
active = 'active'
+ +
destination = <class 'gdata.analytics.data.Destination'>
Analytics Feed <dxp:destination>
+ +
engagement = <class 'gdata.analytics.data.Engagement'>
Analytics Feed <dxp:engagement>
+ +
name = 'name'
+ +
number = 'number'
+ +
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Metric(atom.core.XmlElement)
   Analytics Feed <dxp:metric>
 
 
Method resolution order:
+
Metric
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
confidence_interval = 'confidenceInterval'
+ +
name = 'name'
+ +
type = 'type'
+ +
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Property(atom.core.XmlElement)
   Analytics Feed <dxp:property>
 
 
Method resolution order:
+
Property
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
name = 'name'
+ +
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Segment(atom.core.XmlElement)
   Analytics Feed <dxp:segment>
 
 
Method resolution order:
+
Segment
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
definition = <class 'gdata.analytics.data.Definition'>
Analytics Feed <dxp:definition>
+ +
id = 'id'
+ +
name = 'name'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class StartDate(atom.core.XmlElement)
   Analytics Feed <dxp:startDate>
 
 
Method resolution order:
+
StartDate
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Step(atom.core.XmlElement)
   Analytics Feed <dxp:step>
 
 
Method resolution order:
+
Step
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
name = 'name'
+ +
number = 'number'
+ +
path = 'path'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class TableId(atom.core.XmlElement)
   Analytics Feed <dxp:tableId>
 
 
Method resolution order:
+
TableId
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class TableName(atom.core.XmlElement)
   Analytics Feed <dxp:tableName>
 
 
Method resolution order:
+
TableName
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + +
 
+Data
       DXP_NS = '{http://schemas.google.com/analytics/2009}%s'
+GA_NS = '{http://schemas.google.com/ga/2009}%s'
+__author__ = 'api.nickm@google.com (Nick Mihailovski)'

+ + + + + +
 
+Author
       api.nickm@google.com (Nick Mihailovski)
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.analytics.html python-gdata-2.0.8/pydocs/gdata.analytics.html --- python-gdata-1.2.4/pydocs/gdata.analytics.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.analytics.html 2009-11-25 01:04:14.000000000 +0000 @@ -0,0 +1,978 @@ + + +Python: package gdata.analytics + + + + +
 
+ 
gdata.analytics
index
/usr/local/svn/gdata-python-client/src/gdata/analytics/__init__.py
+

Contains extensions to Atom objects used with Google Analytics.

+

+ + + + + +
 
+Package Contents
       
client
+
data
+
service
+

+ + + + + +
 
+Classes
       
+
gdata.GDataEntry(atom.Entry, gdata.LinkFinder) +
+
+
AccountListEntry +
AnalyticsDataEntry +
Dimension +
Metric +
Property +
TableId +
+
+
gdata.GDataFeed(atom.Feed, gdata.LinkFinder) +
+
+
AccountListFeed +
AnalyticsDataFeed +
+
+
+

+ + + + + + + +
 
+class AccountListEntry(gdata.GDataEntry)
   The Google Documents version of an Atom Entry
 
 
Method resolution order:
+
AccountListEntry
+
gdata.GDataEntry
+
atom.Entry
+
atom.FeedEntryParent
+
atom.AtomBase
+
atom.ExtensionContainer
+
gdata.LinkFinder
+
atom.LinkFinder
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, tableId=None, property=None, *args, **kwargs)
+ +
+Methods inherited from gdata.GDataEntry:
+
GetMediaURL(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
IsMedia(self)
Determines whether or not an entry is a GData Media entry.
+ +
+Data descriptors inherited from gdata.GDataEntry:
+
id
+
+
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from gdata.LinkFinder:
+
GetAclLink(self)
+ +
GetEditLink(self)
+ +
GetEditMediaLink(self)
The Picasa API mistakenly returns media-edit rather than edit-media, but
+this may change soon.
+ +
GetFeedLink(self)
+ +
GetHtmlLink(self)
Find the first link with rel of alternate and type of text/html

+Returns:
+  An atom.Link or None if no links matched
+ +
GetNextLink(self)
+ +
GetPostLink(self)
Get a link containing the POST target URL.

+The POST target URL is used to insert new entries.

+Returns:
+  A link object with a rel matching the POST type.
+ +
GetPrevLink(self)
+ +
GetSelfLink(self)
Find the first link with rel set to 'self'

+Returns:
+  An atom.Link or none if none of the links had rel equal to 'self'
+ +
+Methods inherited from atom.LinkFinder:
+
GetAlternateLink(self)
+ +
GetLicenseLink(self)
+ +

+ + + + + + + +
 
+class AccountListFeed(gdata.GDataFeed)
   A feed containing a list of Google Documents Items
 
 
Method resolution order:
+
AccountListFeed
+
gdata.GDataFeed
+
atom.Feed
+
atom.Source
+
atom.FeedEntryParent
+
atom.AtomBase
+
atom.ExtensionContainer
+
gdata.LinkFinder
+
atom.LinkFinder
+
__builtin__.object
+
+
+Methods inherited from gdata.GDataFeed:
+
__init__(self, author=None, category=None, contributor=None, generator=None, icon=None, atom_id=None, link=None, logo=None, rights=None, subtitle=None, title=None, updated=None, entry=None, total_results=None, start_index=None, items_per_page=None, extension_elements=None, extension_attributes=None, text=None)
Constructor for Source

+Args:
+  author: list (optional) A list of Author instances which belong to this
+      class.
+  category: list (optional) A list of Category instances
+  contributor: list (optional) A list on Contributor instances
+  generator: Generator (optional)
+  icon: Icon (optional)
+  id: Id (optional) The entry's Id element
+  link: list (optional) A list of Link instances
+  logo: Logo (optional)
+  rights: Rights (optional) The entry's Rights element
+  subtitle: Subtitle (optional) The entry's subtitle element
+  title: Title (optional) the entry's title element
+  updated: Updated (optional) the entry's updated element
+  entry: list (optional) A list of the Entry instances contained in the
+      feed.
+  text: String (optional) The text contents of the element. This is the
+      contents of the Entry's XML text node.
+      (Example: <foo>This is the text</foo>)
+  extension_elements: list (optional) A list of ExtensionElement instances
+      which are children of this element.
+  extension_attributes: dict (optional) A dictionary of strings which are
+      the values for additional XML attributes of this element.
+ +
+Data descriptors inherited from gdata.GDataFeed:
+
generator
+
+
id
+
+
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from gdata.LinkFinder:
+
GetAclLink(self)
+ +
GetEditLink(self)
+ +
GetEditMediaLink(self)
The Picasa API mistakenly returns media-edit rather than edit-media, but
+this may change soon.
+ +
GetFeedLink(self)
+ +
GetHtmlLink(self)
Find the first link with rel of alternate and type of text/html

+Returns:
+  An atom.Link or None if no links matched
+ +
GetNextLink(self)
+ +
GetPostLink(self)
Get a link containing the POST target URL.

+The POST target URL is used to insert new entries.

+Returns:
+  A link object with a rel matching the POST type.
+ +
GetPrevLink(self)
+ +
GetSelfLink(self)
Find the first link with rel set to 'self'

+Returns:
+  An atom.Link or none if none of the links had rel equal to 'self'
+ +
+Methods inherited from atom.LinkFinder:
+
GetAlternateLink(self)
+ +
GetLicenseLink(self)
+ +

+ + + + + + + +
 
+class AnalyticsDataEntry(gdata.GDataEntry)
   The Google Analytics version of an Atom Entry
 
 
Method resolution order:
+
AnalyticsDataEntry
+
gdata.GDataEntry
+
atom.Entry
+
atom.FeedEntryParent
+
atom.AtomBase
+
atom.ExtensionContainer
+
gdata.LinkFinder
+
atom.LinkFinder
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, dimension=None, metric=None, *args, **kwargs)
+ +
+Methods inherited from gdata.GDataEntry:
+
GetMediaURL(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
IsMedia(self)
Determines whether or not an entry is a GData Media entry.
+ +
+Data descriptors inherited from gdata.GDataEntry:
+
id
+
+
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from gdata.LinkFinder:
+
GetAclLink(self)
+ +
GetEditLink(self)
+ +
GetEditMediaLink(self)
The Picasa API mistakenly returns media-edit rather than edit-media, but
+this may change soon.
+ +
GetFeedLink(self)
+ +
GetHtmlLink(self)
Find the first link with rel of alternate and type of text/html

+Returns:
+  An atom.Link or None if no links matched
+ +
GetNextLink(self)
+ +
GetPostLink(self)
Get a link containing the POST target URL.

+The POST target URL is used to insert new entries.

+Returns:
+  A link object with a rel matching the POST type.
+ +
GetPrevLink(self)
+ +
GetSelfLink(self)
Find the first link with rel set to 'self'

+Returns:
+  An atom.Link or none if none of the links had rel equal to 'self'
+ +
+Methods inherited from atom.LinkFinder:
+
GetAlternateLink(self)
+ +
GetLicenseLink(self)
+ +

+ + + + + + + +
 
+class AnalyticsDataFeed(gdata.GDataFeed)
   A feed containing a list of Google Analytics Data Feed
 
 
Method resolution order:
+
AnalyticsDataFeed
+
gdata.GDataFeed
+
atom.Feed
+
atom.Source
+
atom.FeedEntryParent
+
atom.AtomBase
+
atom.ExtensionContainer
+
gdata.LinkFinder
+
atom.LinkFinder
+
__builtin__.object
+
+
+Methods inherited from gdata.GDataFeed:
+
__init__(self, author=None, category=None, contributor=None, generator=None, icon=None, atom_id=None, link=None, logo=None, rights=None, subtitle=None, title=None, updated=None, entry=None, total_results=None, start_index=None, items_per_page=None, extension_elements=None, extension_attributes=None, text=None)
Constructor for Source

+Args:
+  author: list (optional) A list of Author instances which belong to this
+      class.
+  category: list (optional) A list of Category instances
+  contributor: list (optional) A list on Contributor instances
+  generator: Generator (optional)
+  icon: Icon (optional)
+  id: Id (optional) The entry's Id element
+  link: list (optional) A list of Link instances
+  logo: Logo (optional)
+  rights: Rights (optional) The entry's Rights element
+  subtitle: Subtitle (optional) The entry's subtitle element
+  title: Title (optional) the entry's title element
+  updated: Updated (optional) the entry's updated element
+  entry: list (optional) A list of the Entry instances contained in the
+      feed.
+  text: String (optional) The text contents of the element. This is the
+      contents of the Entry's XML text node.
+      (Example: <foo>This is the text</foo>)
+  extension_elements: list (optional) A list of ExtensionElement instances
+      which are children of this element.
+  extension_attributes: dict (optional) A dictionary of strings which are
+      the values for additional XML attributes of this element.
+ +
+Data descriptors inherited from gdata.GDataFeed:
+
generator
+
+
id
+
+
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from gdata.LinkFinder:
+
GetAclLink(self)
+ +
GetEditLink(self)
+ +
GetEditMediaLink(self)
The Picasa API mistakenly returns media-edit rather than edit-media, but
+this may change soon.
+ +
GetFeedLink(self)
+ +
GetHtmlLink(self)
Find the first link with rel of alternate and type of text/html

+Returns:
+  An atom.Link or None if no links matched
+ +
GetNextLink(self)
+ +
GetPostLink(self)
Get a link containing the POST target URL.

+The POST target URL is used to insert new entries.

+Returns:
+  A link object with a rel matching the POST type.
+ +
GetPrevLink(self)
+ +
GetSelfLink(self)
Find the first link with rel set to 'self'

+Returns:
+  An atom.Link or none if none of the links had rel equal to 'self'
+ +
+Methods inherited from atom.LinkFinder:
+
GetAlternateLink(self)
+ +
GetLicenseLink(self)
+ +

+ + + + + +
 
+class Dimension(gdata.GDataEntry)
    
Method resolution order:
+
Dimension
+
gdata.GDataEntry
+
atom.Entry
+
atom.FeedEntryParent
+
atom.AtomBase
+
atom.ExtensionContainer
+
gdata.LinkFinder
+
atom.LinkFinder
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, name=None, value=None, type=None, confidence_interval=None, *args, **kwargs)
+ +
__repr__(self)
+ +
__str__(self)
+ +
+Methods inherited from gdata.GDataEntry:
+
GetMediaURL(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
IsMedia(self)
Determines whether or not an entry is a GData Media entry.
+ +
+Data descriptors inherited from gdata.GDataEntry:
+
id
+
+
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from gdata.LinkFinder:
+
GetAclLink(self)
+ +
GetEditLink(self)
+ +
GetEditMediaLink(self)
The Picasa API mistakenly returns media-edit rather than edit-media, but
+this may change soon.
+ +
GetFeedLink(self)
+ +
GetHtmlLink(self)
Find the first link with rel of alternate and type of text/html

+Returns:
+  An atom.Link or None if no links matched
+ +
GetNextLink(self)
+ +
GetPostLink(self)
Get a link containing the POST target URL.

+The POST target URL is used to insert new entries.

+Returns:
+  A link object with a rel matching the POST type.
+ +
GetPrevLink(self)
+ +
GetSelfLink(self)
Find the first link with rel set to 'self'

+Returns:
+  An atom.Link or none if none of the links had rel equal to 'self'
+ +
+Methods inherited from atom.LinkFinder:
+
GetAlternateLink(self)
+ +
GetLicenseLink(self)
+ +

+ + + + + +
 
+class Metric(gdata.GDataEntry)
    
Method resolution order:
+
Metric
+
gdata.GDataEntry
+
atom.Entry
+
atom.FeedEntryParent
+
atom.AtomBase
+
atom.ExtensionContainer
+
gdata.LinkFinder
+
atom.LinkFinder
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, name=None, value=None, type=None, confidence_interval=None, *args, **kwargs)
+ +
__repr__(self)
+ +
__str__(self)
+ +
+Methods inherited from gdata.GDataEntry:
+
GetMediaURL(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
IsMedia(self)
Determines whether or not an entry is a GData Media entry.
+ +
+Data descriptors inherited from gdata.GDataEntry:
+
id
+
+
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from gdata.LinkFinder:
+
GetAclLink(self)
+ +
GetEditLink(self)
+ +
GetEditMediaLink(self)
The Picasa API mistakenly returns media-edit rather than edit-media, but
+this may change soon.
+ +
GetFeedLink(self)
+ +
GetHtmlLink(self)
Find the first link with rel of alternate and type of text/html

+Returns:
+  An atom.Link or None if no links matched
+ +
GetNextLink(self)
+ +
GetPostLink(self)
Get a link containing the POST target URL.

+The POST target URL is used to insert new entries.

+Returns:
+  A link object with a rel matching the POST type.
+ +
GetPrevLink(self)
+ +
GetSelfLink(self)
Find the first link with rel set to 'self'

+Returns:
+  An atom.Link or none if none of the links had rel equal to 'self'
+ +
+Methods inherited from atom.LinkFinder:
+
GetAlternateLink(self)
+ +
GetLicenseLink(self)
+ +

+ + + + + +
 
+class Property(gdata.GDataEntry)
    
Method resolution order:
+
Property
+
gdata.GDataEntry
+
atom.Entry
+
atom.FeedEntryParent
+
atom.AtomBase
+
atom.ExtensionContainer
+
gdata.LinkFinder
+
atom.LinkFinder
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, name=None, value=None, *args, **kwargs)
+ +
__repr__(self)
+ +
__str__(self)
+ +
+Methods inherited from gdata.GDataEntry:
+
GetMediaURL(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
IsMedia(self)
Determines whether or not an entry is a GData Media entry.
+ +
+Data descriptors inherited from gdata.GDataEntry:
+
id
+
+
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from gdata.LinkFinder:
+
GetAclLink(self)
+ +
GetEditLink(self)
+ +
GetEditMediaLink(self)
The Picasa API mistakenly returns media-edit rather than edit-media, but
+this may change soon.
+ +
GetFeedLink(self)
+ +
GetHtmlLink(self)
Find the first link with rel of alternate and type of text/html

+Returns:
+  An atom.Link or None if no links matched
+ +
GetNextLink(self)
+ +
GetPostLink(self)
Get a link containing the POST target URL.

+The POST target URL is used to insert new entries.

+Returns:
+  A link object with a rel matching the POST type.
+ +
GetPrevLink(self)
+ +
GetSelfLink(self)
Find the first link with rel set to 'self'

+Returns:
+  An atom.Link or none if none of the links had rel equal to 'self'
+ +
+Methods inherited from atom.LinkFinder:
+
GetAlternateLink(self)
+ +
GetLicenseLink(self)
+ +

+ + + + + + + +
 
+class TableId(gdata.GDataEntry)
   tableId element.
 
 
Method resolution order:
+
TableId
+
gdata.GDataEntry
+
atom.Entry
+
atom.FeedEntryParent
+
atom.AtomBase
+
atom.ExtensionContainer
+
gdata.LinkFinder
+
atom.LinkFinder
+
__builtin__.object
+
+
+Methods inherited from gdata.GDataEntry:
+
GetMediaURL(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
IsMedia(self)
Determines whether or not an entry is a GData Media entry.
+ +
+Data descriptors inherited from gdata.GDataEntry:
+
id
+
+
+Methods inherited from atom.Entry:
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from gdata.LinkFinder:
+
GetAclLink(self)
+ +
GetEditLink(self)
+ +
GetEditMediaLink(self)
The Picasa API mistakenly returns media-edit rather than edit-media, but
+this may change soon.
+ +
GetFeedLink(self)
+ +
GetHtmlLink(self)
Find the first link with rel of alternate and type of text/html

+Returns:
+  An atom.Link or None if no links matched
+ +
GetNextLink(self)
+ +
GetPostLink(self)
Get a link containing the POST target URL.

+The POST target URL is used to insert new entries.

+Returns:
+  A link object with a rel matching the POST type.
+ +
GetPrevLink(self)
+ +
GetSelfLink(self)
Find the first link with rel set to 'self'

+Returns:
+  An atom.Link or none if none of the links had rel equal to 'self'
+ +
+Methods inherited from atom.LinkFinder:
+
GetAlternateLink(self)
+ +
GetLicenseLink(self)
+ +

+ + + + + +
 
+Functions
       
AccountListEntryFromString(xml_string)
Converts an XML string into an AccountListEntry object.

+Args:
+xml_string: string The XML describing a Document List feed entry.

+Returns:
+A AccountListEntry object corresponding to the given XML.
+
AccountListFeedFromString(xml_string)
Converts an XML string into an AccountListFeed object.

+Args:
+xml_string: string The XML describing an AccountList feed.

+Returns:
+An AccountListFeed object corresponding to the given XML.
+All properties are also linked to with a direct reference
+from each entry object for convenience. (e.g. entry.AccountName)
+
AnalyticsDataFeedFromString(xml_string)
Converts an XML string into an AccountListFeed object.

+Args:
+xml_string: string The XML describing an AccountList feed.

+Returns:
+An AccountListFeed object corresponding to the given XML.
+Each metric and dimension is also referenced directly from
+the entry for easier access. (e.g. entry.keyword.value)
+

+ + + + + +
 
+Data
       GAN_NAMESPACE = 'http://schemas.google.com/analytics/2009'
+__author__ = 'api.suryasev (Sal Uryasev)'

+ + + + + +
 
+Author
       api.suryasev (Sal Uryasev)
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.analytics.service.html python-gdata-2.0.8/pydocs/gdata.analytics.service.html --- python-gdata-1.2.4/pydocs/gdata.analytics.service.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.analytics.service.html 2010-02-26 23:16:48.000000000 +0000 @@ -0,0 +1,1657 @@ + + +Python: module gdata.analytics.service + + + + +
 
+ 
gdata.analytics.service
index
/usr/local/svn/gdata-python-client/src/gdata/analytics/service.py
+

AccountsService extends the GDataService to streamline Google Analytics
+          account information operations.

+AnalyticsDataService: Provides methods to query google analytics data feeds.
+                  Extends GDataService.

+DataQuery: Queries a Google Analytics Data list feed.

+AccountQuery: Queries a Google Analytics Account list feed.

+

+ + + + + +
 
+Modules
       
atom
+
gdata
+
urllib
+

+ + + + + +
 
+Classes
       
+
gdata.service.GDataService(atom.service.AtomService) +
+
+
AccountsService +
AnalyticsDataService +
+
+
gdata.service.Query(__builtin__.dict) +
+
+
AccountQuery +
DataQuery +
+
+
+

+ + + + + + + +
 
+class AccountQuery(gdata.service.Query)
   Object used to construct a URI to query the Google Account List feed
 
 
Method resolution order:
+
AccountQuery
+
gdata.service.Query
+
__builtin__.dict
+
__builtin__.object
+
+
+Methods defined here:
+
ToUri(self)
Generates a URI from the query parameters set in the object.

+Returns:
+  A string containing the URI used to retrieve entries from the Account
+  List feed.
+ +
__init__(self, feed='/feeds/accounts', start_index=1, max_results=1000, username='default', text_query=None, params=None, categories=None)
Constructor for Account List Query

+Args:
+  feed: string (optional) The path for the feed. (e.g. '/feeds/documents')
+  visibility: string (optional) The visibility chosen for the current 
+        feed.
+  projection: string (optional) The projection chosen for the current 
+        feed.
+  text_query: string (optional) The contents of the q query parameter. 
+        This string is URL escaped upon conversion to a URI.
+  params: dict (optional) Parameter value string pairs which become URL
+          params when translated to a URI. These parameters are added to
+          the query's items.
+  categories: list (optional) List of category strings which should be
+          included as query categories. See gdata.service.Query for
+          additional documentation.
+  username: string (deprecated) This value should now always be passed as 
+          'default'.

+Yields:
+  A DocumentQuery object used to construct a URI based on the Document
+  List feed.
+ +
+Methods inherited from gdata.service.Query:
+
__str__(self)
+ +
+Data descriptors inherited from gdata.service.Query:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
alt
+
The feed query's alt parameter
+
+
author
+
The feed query's author parameter
+
+
max_results
+
The feed query's max-results parameter
+
+
orderby
+
The feed query's orderby parameter
+
+
published_max
+
The feed query's published-max parameter
+
+
published_min
+
The feed query's published-min parameter
+
+
start_index
+
The feed query's start-index parameter
+
+
text_query
+
The feed query's q parameter
+
+
updated_max
+
The feed query's updated-max parameter
+
+
updated_min
+
The feed query's updated-min parameter
+
+
+Methods inherited from __builtin__.dict:
+
__cmp__(...)
x.__cmp__(y) <==> cmp(x,y)
+ +
__contains__(...)
D.__contains__(k) -> True if D has a key k, else False
+ +
__delitem__(...)
x.__delitem__(y) <==> del x[y]
+ +
__eq__(...)
x.__eq__(y) <==> x==y
+ +
__ge__(...)
x.__ge__(y) <==> x>=y
+ +
__getattribute__(...)
x.__getattribute__('name') <==> x.name
+ +
__getitem__(...)
x.__getitem__(y) <==> x[y]
+ +
__gt__(...)
x.__gt__(y) <==> x>y
+ +
__iter__(...)
x.__iter__() <==> iter(x)
+ +
__le__(...)
x.__le__(y) <==> x<=y
+ +
__len__(...)
x.__len__() <==> len(x)
+ +
__lt__(...)
x.__lt__(y) <==> x<y
+ +
__ne__(...)
x.__ne__(y) <==> x!=y
+ +
__repr__(...)
x.__repr__() <==> repr(x)
+ +
__setitem__(...)
x.__setitem__(i, y) <==> x[i]=y
+ +
__sizeof__(...)
D.__sizeof__() -> size of D in memory, in bytes
+ +
clear(...)
D.clear() -> None.  Remove all items from D.
+ +
copy(...)
D.copy() -> a shallow copy of D
+ +
get(...)
D.get(k[,d]) -> D[k] if k in D, else d.  d defaults to None.
+ +
has_key(...)
D.has_key(k) -> True if D has a key k, else False
+ +
items(...)
D.items() -> list of D's (key, value) pairs, as 2-tuples
+ +
iteritems(...)
D.iteritems() -> an iterator over the (key, value) items of D
+ +
iterkeys(...)
D.iterkeys() -> an iterator over the keys of D
+ +
itervalues(...)
D.itervalues() -> an iterator over the values of D
+ +
keys(...)
D.keys() -> list of D's keys
+ +
pop(...)
D.pop(k[,d]) -> v, remove specified key and return the corresponding value
+If key is not found, d is returned if given, otherwise KeyError is raised
+ +
popitem(...)
D.popitem() -> (k, v), remove and return some (key, value) pair as a
+2-tuple; but raise KeyError if D is empty
+ +
setdefault(...)
D.setdefault(k[,d]) -> D.get(k,d), also set D[k]=d if k not in D
+ +
update(...)
D.update(E, **F) -> None.  Update D from E and F: for k in E: D[k] = E[k]
+(if E has keys else: for (k, v) in E: D[k] = v) then: for k in F: D[k] = F[k]
+ +
values(...)
D.values() -> list of D's values
+ +
+Data and other attributes inherited from __builtin__.dict:
+
__hash__ = None
+ +
__new__ = <built-in method __new__ of type object at 0x7569a0>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+ +
fromkeys = <built-in method fromkeys of type object at 0xcdd510>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
+v defaults to None.
+ +

+ + + + + + + +
 
+class AccountsService(gdata.service.GDataService)
   Client extension for the Google Analytics Account List feed.
 
 
Method resolution order:
+
AccountsService
+
gdata.service.GDataService
+
atom.service.AtomService
+
__builtin__.object
+
+
+Methods defined here:
+
GetAccountList(self, max_results=1000, text_query=None, params=None, categories=None)
Retrieves a feed containing all of a user's accounts and profiles.
+ +
GetAccountListEntry(self, uri)
Retrieves a particular AccountListEntry by its unique URI.

+Args:
+  uri: string The unique URI of an entry in an Account List feed.

+Returns:
+  An AccountLisFeed object representing the retrieved entry.
+ +
QueryAccountListFeed(self, uri)
Retrieves an AccountListFeed by retrieving a URI based off the Document
+   List feed, including any query parameters. An AccountListFeed object 
+   can be used to construct these parameters.

+Args:
+  uri: string The URI of the feed being retrieved possibly with query
+       parameters.

+Returns:
+  An AccountListFeed object representing the feed returned by the server.
+ +
__init__(self, email='', password=None, source=None, server='www.google.com/analytics', additional_headers=None, **kwargs)
Creates a client for the Google Analytics service.

+Args:
+  email: string (optional) The user's email address, used for
+      authentication.
+  password: string (optional) The user's password.
+  source: string (optional) The name of the user's application.
+  server: string (optional) The name of the server to which a connection
+      will be opened.
+  **kwargs: The other parameters to pass to gdata.service.GDataService
+      constructor.
+ +
+Methods inherited from gdata.service.GDataService:
+
AuthSubTokenInfo(self)
Fetches the AuthSub token's metadata from the server.

+Raises:
+  NonAuthSubToken if the user's auth token is not an AuthSub token
+ +
ClientLogin(self, username, password, account_type=None, service=None, auth_service_url=None, source=None, captcha_token=None, captcha_response=None)
Convenience method for authenticating using ProgrammaticLogin. 

+Sets values for email, password, and other optional members.

+Args:
+  username:
+  password:
+  account_type: string (optional)
+  service: string (optional)
+  auth_service_url: string (optional)
+  captcha_token: string (optional)
+  captcha_response: string (optional)
+ +
Delete(self, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=4)
Deletes the entry at the given URI.

+Args:
+  uri: string The URI of the entry to be deleted. Example: 
+       '/base/feeds/items/ITEM-ID'
+  extra_headers: dict (optional) HTTP headers which are to be included.
+                 The client automatically sets the Content-Type and
+                 Authorization headers.
+  url_params: dict (optional) Additional URL parameters to be included
+              in the URI. These are translated into query arguments
+              in the form '&dict_key=value&...'.
+              Example: {'max-results': '250'} becomes &max-results=250
+  escape_params: boolean (optional) If false, the calling code has already
+                 ensured that the query will form a valid URL (all
+                 reserved characters have been escaped). If true, this
+                 method will escape the query and any URL parameters
+                 provided.

+Returns:
+  True if the entry was deleted.
+ +
FetchOAuthRequestToken(self, scopes=None, extra_parameters=None, request_url='https://www.google.com/accounts/OAuthGetRequestToken', oauth_callback=None)
Fetches and sets the OAuth request token and returns it.

+Args:
+  scopes: string or list of string base URL(s) of the service(s) to be
+      accessed. If None, then this method tries to determine the
+      scope(s) from the current service.
+  extra_parameters: dict (optional) key-value pairs as any additional
+      parameters to be included in the URL and signature while making a
+      request for fetching an OAuth request token. All the OAuth parameters
+      are added by default. But if provided through this argument, any
+      default parameters will be overwritten. For e.g. a default parameter
+      oauth_version 1.0 can be overwritten if
+      extra_parameters = {'oauth_version': '2.0'}
+  request_url: Request token URL. The default is
+      'https://www.google.com/accounts/OAuthGetRequestToken'.
+  oauth_callback: str (optional) If set, it is assume the client is using
+      the OAuth v1.0a protocol where the callback url is sent in the
+      request token step.  If the oauth_callback is also set in
+      extra_params, this value will override that one.

+Returns:
+  The fetched request token as a gdata.auth.OAuthToken object.

+Raises:
+  FetchingOAuthRequestTokenFailed if the server responded to the request
+  with an error.
+ +
GenerateAuthSubURL(self, next, scope, secure=False, session=True, domain='default')
Generate a URL at which the user will login and be redirected back.

+Users enter their credentials on a Google login page and a token is sent
+to the URL specified in next. See documentation for AuthSub login at:
+http://code.google.com/apis/accounts/docs/AuthSub.html

+Args:
+  next: string The URL user will be sent to after logging in.
+  scope: string or list of strings. The URLs of the services to be 
+         accessed.
+  secure: boolean (optional) Determines whether or not the issued token
+          is a secure token.
+  session: boolean (optional) Determines whether or not the issued token
+           can be upgraded to a session token.
+ +
GenerateOAuthAuthorizationURL(self, request_token=None, callback_url=None, extra_params=None, include_scopes_in_callback=False, scopes_param_prefix='oauth_token_scope', request_url='https://www.google.com/accounts/OAuthAuthorizeToken')
Generates URL at which user will login to authorize the request token.

+Args:
+  request_token: gdata.auth.OAuthToken (optional) OAuth request token.
+      If not specified, then the current token will be used if it is of
+      type <gdata.auth.OAuthToken>, else it is found by looking in the
+      token_store by looking for a token for the current scope.    
+  callback_url: string (optional) The URL user will be sent to after
+      logging in and granting access.
+  extra_params: dict (optional) Additional parameters to be sent.
+  include_scopes_in_callback: Boolean (default=False) if set to True, and
+      if 'callback_url' is present, the 'callback_url' will be modified to
+      include the scope(s) from the request token as a URL parameter. The
+      key for the 'callback' URL's scope parameter will be
+      OAUTH_SCOPE_URL_PARAM_NAME. The benefit of including the scope URL as
+      a parameter to the 'callback' URL, is that the page which receives
+      the OAuth token will be able to tell which URLs the token grants
+      access to.
+  scopes_param_prefix: string (default='oauth_token_scope') The URL
+      parameter key which maps to the list of valid scopes for the token.
+      This URL parameter will be included in the callback URL along with
+      the scopes of the token as value if include_scopes_in_callback=True.
+  request_url: Authorization URL. The default is
+      'https://www.google.com/accounts/OAuthAuthorizeToken'.
+Returns:
+  A string URL at which the user is required to login.

+Raises:
+  NonOAuthToken if the user's request token is not an OAuth token or if a
+  request token was not available.
+ +
Get(self, uri, extra_headers=None, redirects_remaining=4, encoding='UTF-8', converter=None)
Query the GData API with the given URI

+The uri is the portion of the URI after the server value 
+(ex: www.google.com).

+To perform a query against Google Base, set the server to 
+'base.google.com' and set the uri to '/base/feeds/...', where ... is 
+your query. For example, to find snippets for all digital cameras uri 
+should be set to: '/base/feeds/snippets?bq=digital+camera'

+Args:
+  uri: string The query in the form of a URI. Example:
+       '/base/feeds/snippets?bq=digital+camera'.
+  extra_headers: dictionary (optional) Extra HTTP headers to be included
+                 in the GET request. These headers are in addition to 
+                 those stored in the client's additional_headers property.
+                 The client automatically sets the Content-Type and 
+                 Authorization headers.
+  redirects_remaining: int (optional) Tracks the number of additional
+      redirects this method will allow. If the service object receives
+      a redirect and remaining is 0, it will not follow the redirect. 
+      This was added to avoid infinite redirect loops.
+  encoding: string (optional) The character encoding for the server's
+      response. Default is UTF-8
+  converter: func (optional) A function which will transform
+      the server's results before it is returned. Example: use 
+      GDataFeedFromString to parse the server response as if it
+      were a GDataFeed.

+Returns:
+  If there is no ResultsTransformer specified in the call, a GDataFeed 
+  or GDataEntry depending on which is sent from the server. If the 
+  response is niether a feed or entry and there is no ResultsTransformer,
+  return a string. If there is a ResultsTransformer, the returned value 
+  will be that of the ResultsTransformer function.
+ +
GetAuthSubToken(self)
Returns the AuthSub token as a string.

+If the token is an gdta.auth.AuthSubToken, the Authorization Label
+("AuthSub token") is removed.

+This method examines the current_token to see if it is an AuthSubToken
+or SecureAuthSubToken. If not, it searches the token_store for a token
+which matches the current scope.

+The current scope is determined by the service name string member.

+Returns:
+  If the current_token is set to an AuthSubToken/SecureAuthSubToken,
+  return the token string. If there is no current_token, a token string
+  for a token which matches the service object's default scope is returned.
+  If there are no tokens valid for the scope, returns None.
+ +
GetClientLoginToken(self)
Returns the token string for the current token or a token matching the 
+service scope.

+If the current_token is a ClientLoginToken, the token string for 
+the current token is returned. If the current_token is not set, this method
+searches for a token in the token_store which is valid for the service 
+object's current scope.

+The current scope is determined by the service name string member.
+The token string is the end of the Authorization header, it doesn not
+include the ClientLogin label.
+ +
GetEntry(self, uri, extra_headers=None)
Query the GData API with the given URI and receive an Entry.

+See also documentation for gdata.service.Get

+Args:
+  uri: string The query in the form of a URI. Example:
+       '/base/feeds/snippets?bq=digital+camera'.
+  extra_headers: dictionary (optional) Extra HTTP headers to be included
+                 in the GET request. These headers are in addition to
+                 those stored in the client's additional_headers property.
+                 The client automatically sets the Content-Type and
+                 Authorization headers.

+Returns:
+  A GDataEntry built from the XML in the server's response.
+ +
GetFeed(self, uri, extra_headers=None, converter=<function GDataFeedFromString at 0x7f81bc61ed70>)
Query the GData API with the given URI and receive a Feed.

+See also documentation for gdata.service.Get

+Args:
+  uri: string The query in the form of a URI. Example:
+       '/base/feeds/snippets?bq=digital+camera'.
+  extra_headers: dictionary (optional) Extra HTTP headers to be included
+                 in the GET request. These headers are in addition to
+                 those stored in the client's additional_headers property.
+                 The client automatically sets the Content-Type and
+                 Authorization headers.

+Returns:
+  A GDataFeed built from the XML in the server's response.
+ +
GetGeneratorFromLinkFinder(self, link_finder, func, num_retries=3, delay=1, backoff=2)
returns a generator for pagination
+ +
GetMedia(self, uri, extra_headers=None)
Returns a MediaSource containing media and its metadata from the given
+URI string.
+ +
GetNext(self, feed)
Requests the next 'page' of results in the feed.

+This method uses the feed's next link to request an additional feed
+and uses the class of the feed to convert the results of the GET request.

+Args:
+  feed: atom.Feed or a subclass. The feed should contain a next link and
+      the type of the feed will be applied to the results from the 
+      server. The new feed which is returned will be of the same class
+      as this feed which was passed in.

+Returns:
+  A new feed representing the next set of results in the server's feed.
+  The type of this feed will match that of the feed argument.
+ +
GetOAuthInputParameters(self)
+ +
GetWithRetries(self, uri, extra_headers=None, redirects_remaining=4, encoding='UTF-8', converter=None, num_retries=3, delay=1, backoff=2, logger=None)
This is a wrapper method for Get with retring capability.

+To avoid various errors while retrieving bulk entities by retring
+specified times.

+Note this method relies on the time module and so may not be usable
+by default in Python2.2.

+Args:
+  num_retries: integer The retry count.
+  delay: integer The initial delay for retring.
+  backoff: integer how much the delay should lengthen after each failure.
+  logger: an object which has a debug(str) method to receive logging
+          messages. Recommended that you pass in the logging module.
+Raises:
+  ValueError if any of the parameters has an invalid value.
+  RanOutOfTries on failure after number of retries.
+ +
Post(self, data, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=4, media_source=None, converter=None)
Insert or update  data into a GData service at the given URI.

+Args:
+  data: string, ElementTree._Element, atom.Entry, or gdata.GDataEntry The
+        XML to be sent to the uri.
+  uri: string The location (feed) to which the data should be inserted.
+       Example: '/base/feeds/items'.
+  extra_headers: dict (optional) HTTP headers which are to be included.
+                 The client automatically sets the Content-Type,
+                 Authorization, and Content-Length headers.
+  url_params: dict (optional) Additional URL parameters to be included
+              in the URI. These are translated into query arguments
+              in the form '&dict_key=value&...'.
+              Example: {'max-results': '250'} becomes &max-results=250
+  escape_params: boolean (optional) If false, the calling code has already
+                 ensured that the query will form a valid URL (all
+                 reserved characters have been escaped). If true, this
+                 method will escape the query and any URL parameters
+                 provided.
+  media_source: MediaSource (optional) Container for the media to be sent
+      along with the entry, if provided.
+  converter: func (optional) A function which will be executed on the
+      server's response. Often this is a function like
+      GDataEntryFromString which will parse the body of the server's
+      response and return a GDataEntry.

+Returns:
+  If the post succeeded, this method will return a GDataFeed, GDataEntry,
+  or the results of running converter on the server's result body (if
+  converter was specified).
+ +
PostOrPut(self, verb, data, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=4, media_source=None, converter=None)
Insert data into a GData service at the given URI.

+Args:
+  verb: string, either 'POST' or 'PUT'
+  data: string, ElementTree._Element, atom.Entry, or gdata.GDataEntry The
+        XML to be sent to the uri. 
+  uri: string The location (feed) to which the data should be inserted. 
+       Example: '/base/feeds/items'. 
+  extra_headers: dict (optional) HTTP headers which are to be included. 
+                 The client automatically sets the Content-Type,
+                 Authorization, and Content-Length headers.
+  url_params: dict (optional) Additional URL parameters to be included
+              in the URI. These are translated into query arguments
+              in the form '&dict_key=value&...'.
+              Example: {'max-results': '250'} becomes &max-results=250
+  escape_params: boolean (optional) If false, the calling code has already
+                 ensured that the query will form a valid URL (all
+                 reserved characters have been escaped). If true, this
+                 method will escape the query and any URL parameters
+                 provided.
+  media_source: MediaSource (optional) Container for the media to be sent
+      along with the entry, if provided.
+  converter: func (optional) A function which will be executed on the 
+      server's response. Often this is a function like 
+      GDataEntryFromString which will parse the body of the server's 
+      response and return a GDataEntry.

+Returns:
+  If the post succeeded, this method will return a GDataFeed, GDataEntry,
+  or the results of running converter on the server's result body (if
+  converter was specified).
+ +
ProgrammaticLogin(self, captcha_token=None, captcha_response=None)
Authenticates the user and sets the GData Auth token.

+Login retreives a temporary auth token which must be used with all
+requests to GData services. The auth token is stored in the GData client
+object.

+Login is also used to respond to a captcha challenge. If the user's login
+attempt failed with a CaptchaRequired error, the user can respond by
+calling Login with the captcha token and the answer to the challenge.

+Args:
+  captcha_token: string (optional) The identifier for the captcha challenge
+                 which was presented to the user.
+  captcha_response: string (optional) The user's answer to the captch 
+                    challenge.

+Raises:
+  CaptchaRequired if the login service will require a captcha response
+  BadAuthentication if the login service rejected the username or password
+  Error if the login service responded with a 403 different from the above
+ +
Put(self, data, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=3, media_source=None, converter=None)
Updates an entry at the given URI.

+Args:
+  data: string, ElementTree._Element, or xml_wrapper.ElementWrapper The 
+        XML containing the updated data.
+  uri: string A URI indicating entry to which the update will be applied.
+       Example: '/base/feeds/items/ITEM-ID'
+  extra_headers: dict (optional) HTTP headers which are to be included.
+                 The client automatically sets the Content-Type,
+                 Authorization, and Content-Length headers.
+  url_params: dict (optional) Additional URL parameters to be included
+              in the URI. These are translated into query arguments
+              in the form '&dict_key=value&...'.
+              Example: {'max-results': '250'} becomes &max-results=250
+  escape_params: boolean (optional) If false, the calling code has already
+                 ensured that the query will form a valid URL (all
+                 reserved characters have been escaped). If true, this
+                 method will escape the query and any URL parameters
+                 provided.
+  converter: func (optional) A function which will be executed on the 
+      server's response. Often this is a function like 
+      GDataEntryFromString which will parse the body of the server's 
+      response and return a GDataEntry.

+Returns:
+  If the put succeeded, this method will return a GDataFeed, GDataEntry,
+  or the results of running converter on the server's result body (if
+  converter was specified).
+ +
RevokeAuthSubToken(self)
Revokes an existing AuthSub token.

+Raises:
+  NonAuthSubToken if the user's auth token is not an AuthSub token
+ +
RevokeOAuthToken(self, request_url='https://www.google.com/accounts/AuthSubRevokeToken')
Revokes an existing OAuth token.

+request_url: Token revoke URL. The default is
+      'https://www.google.com/accounts/AuthSubRevokeToken'.
+Raises:
+  NonOAuthToken if the user's auth token is not an OAuth token.
+  RevokingOAuthTokenFailed if request for revoking an OAuth token failed.
+ +
SetAuthSubToken(self, token, scopes=None, rsa_key=None)
Sets the token sent in requests to an AuthSub token.

+Sets the current_token and attempts to add the token to the token_store.

+Only use this method if you have received a token from the AuthSub
+service. The auth token is set automatically when UpgradeToSessionToken()
+is used. See documentation for Google AuthSub here:
+http://code.google.com/apis/accounts/AuthForWebApps.html 

+Args:
+ token: gdata.auth.AuthSubToken or gdata.auth.SecureAuthSubToken or string
+        The token returned by the AuthSub service. If the token is an
+        AuthSubToken or SecureAuthSubToken, the scope information stored in
+        the token is used. If the token is a string, the scopes parameter is
+        used to determine the valid scopes.
+ scopes: list of URLs for which the token is valid. This is only used
+         if the token parameter is a string.
+ rsa_key: string (optional) Private key required for RSA_SHA1 signature
+          method.  This parameter is necessary if the token is a string
+          representing a secure token.
+ +
SetClientLoginToken(self, token, scopes=None)
Sets the token sent in requests to a ClientLogin token.

+This method sets the current_token to a new ClientLoginToken and it 
+also attempts to add the ClientLoginToken to the token_store.

+Only use this method if you have received a token from the ClientLogin
+service. The auth_token is set automatically when ProgrammaticLogin()
+is used. See documentation for Google ClientLogin here:
+http://code.google.com/apis/accounts/docs/AuthForInstalledApps.html

+Args:
+  token: string or instance of a ClientLoginToken.
+ +
SetOAuthInputParameters(self, signature_method, consumer_key, consumer_secret=None, rsa_key=None, two_legged_oauth=False, requestor_id=None)
Sets parameters required for using OAuth authentication mechanism.

+NOTE: Though consumer_secret and rsa_key are optional, either of the two
+is required depending on the value of the signature_method.

+Args:
+  signature_method: class which provides implementation for strategy class
+      oauth.oauth.OAuthSignatureMethod. Signature method to be used for
+      signing each request. Valid implementations are provided as the
+      constants defined by gdata.auth.OAuthSignatureMethod. Currently
+      they are gdata.auth.OAuthSignatureMethod.RSA_SHA1 and
+      gdata.auth.OAuthSignatureMethod.HMAC_SHA1
+  consumer_key: string Domain identifying third_party web application.
+  consumer_secret: string (optional) Secret generated during registration.
+      Required only for HMAC_SHA1 signature method.
+  rsa_key: string (optional) Private key required for RSA_SHA1 signature
+      method.
+  two_legged_oauth: boolean (optional) Enables two-legged OAuth process.
+  requestor_id: string (optional) User email adress to make requests on
+      their behalf.  This parameter should only be set when two_legged_oauth
+      is True.
+ +
SetOAuthToken(self, oauth_token)
Attempts to set the current token and add it to the token store.

+The oauth_token can be any OAuth token i.e. unauthorized request token,
+authorized request token or access token.
+This method also attempts to add the token to the token store.
+Use this method any time you want the current token to point to the
+oauth_token passed. For e.g. call this method with the request token
+you receive from FetchOAuthRequestToken.

+Args:
+  request_token: gdata.auth.OAuthToken OAuth request token.
+ +
UpgradeToOAuthAccessToken(self, authorized_request_token=None, request_url='https://www.google.com/accounts/OAuthGetAccessToken', oauth_version='1.0', oauth_verifier=None)
Upgrades the authorized request token to an access token and returns it

+Args:
+  authorized_request_token: gdata.auth.OAuthToken (optional) OAuth request
+      token. If not specified, then the current token will be used if it is
+      of type <gdata.auth.OAuthToken>, else it is found by looking in the
+      token_store by looking for a token for the current scope.
+  request_url: Access token URL. The default is
+      'https://www.google.com/accounts/OAuthGetAccessToken'.
+  oauth_version: str (default='1.0') oauth_version parameter. All other
+      'oauth_' parameters are added by default. This parameter too, is
+      added by default but here you can override it's value.
+  oauth_verifier: str (optional) If present, it is assumed that the client
+    will use the OAuth v1.0a protocol which includes passing the
+    oauth_verifier (as returned by the SP) in the access token step.

+Returns:
+  Access token
+      
+Raises:
+  NonOAuthToken if the user's authorized request token is not an OAuth
+  token or if an authorized request token was not available.
+  TokenUpgradeFailed if the server responded to the request with an 
+  error.
+ +
UpgradeToSessionToken(self, token=None)
Upgrades a single use AuthSub token to a session token.

+Args:
+  token: A gdata.auth.AuthSubToken or gdata.auth.SecureAuthSubToken
+         (optional) which is good for a single use but can be upgraded
+         to a session token. If no token is passed in, the token
+         is found by looking in the token_store by looking for a token
+         for the current scope.

+Raises:
+  NonAuthSubToken if the user's auth token is not an AuthSub token
+  TokenUpgradeFailed if the server responded to the request with an 
+  error.
+ +
upgrade_to_session_token(self, token)
Upgrades a single use AuthSub token to a session token.

+Args:
+  token: A gdata.auth.AuthSubToken or gdata.auth.SecureAuthSubToken
+         which is good for a single use but can be upgraded to a
+         session token.

+Returns:
+  The upgraded token as a gdata.auth.AuthSubToken object.

+Raises:
+  TokenUpgradeFailed if the server responded to the request with an 
+  error.
+ +
+Data descriptors inherited from gdata.service.GDataService:
+
captcha_token
+
Get the captcha token for a login request.
+
+
captcha_url
+
Get the captcha URL for a login request.
+
+
source
+
The source is the name of the application making the request. 
+It should be in the form company_id-app_name-app_version
+
+
+Data and other attributes inherited from gdata.service.GDataService:
+
auth_token = None
+ +
handler = None
+ +
tokens = None
+ +
+Methods inherited from atom.service.AtomService:
+
UseBasicAuth(self, username, password, for_proxy=False)
Sets an Authenticaiton: Basic HTTP header containing plaintext.

+Deprecated, use use_basic_auth instead.

+The username and password are base64 encoded and added to an HTTP header
+which will be included in each request. Note that your username and 
+password are sent in plaintext.

+Args:
+  username: str
+  password: str
+ +
request(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
+ +
use_basic_auth(self, username, password, scopes=None)
+ +
+Data descriptors inherited from atom.service.AtomService:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
debug
+
If True, HTTP debug information is printed.
+
+
override_token
+
+
+Data and other attributes inherited from atom.service.AtomService:
+
auto_set_current_token = True
+ +
auto_store_tokens = True
+ +
current_token = None
+ +
port = 80
+ +
ssl = False
+ +

+ + + + + + + +
 
+class AnalyticsDataService(gdata.service.GDataService)
   Client extension for the Google Analytics service Data List feed.
 
 
Method resolution order:
+
AnalyticsDataService
+
gdata.service.GDataService
+
atom.service.AtomService
+
__builtin__.object
+
+
+Methods defined here:
+
AnalyticsDataFeed(self, uri)
Retrieves an AnalyticsListFeed by retrieving a URI based off the 
+   Document List feed, including any query parameters. An 
+   AnalyticsListFeed object can be used to construct these parameters.

+Args:
+  uri: string The URI of the feed being retrieved possibly with query
+       parameters.

+Returns:
+  An AnalyticsListFeed object representing the feed returned by the 
+  server.
+ +
GetAccountList(self, username='default', max_results=1000, start_index=1)
Retrieves a feed containing all of a user's accounts and profiles.
+The username parameter is soon to be deprecated, with 'default' 
+becoming the only allowed parameter.
+ +
GetAccountListEntry(self, uri)
Retrieves a particular AccountListEntry by its unique URI.

+Args:
+  uri: string The unique URI of an entry in an Account List feed.

+Returns:
+  An AccountListEntry object representing the retrieved entry.
+ +
GetData(self, ids='', dimensions='', metrics='', sort='', filters='', start_date='', end_date='', start_index='', max_results='')
Retrieves a feed containing a user's data

+ids: comma-separated string of analytics accounts.
+dimensions: comma-separated string of dimensions.
+metrics: comma-separated string of metrics.
+sort: comma-separated string of dimensions and metrics for sorting.
+      This may be previxed with a minus to sort in reverse order. 
+          (e.g. '-ga:keyword')
+      If ommited, the first dimension passed in will be used.
+filters: comma-separated string of filter parameters.
+      (e.g. 'ga:keyword==google')
+start_date: start date for data pull.
+end_date: end date for data pull.
+start_index: used in combination with max_results to pull more than 1000 
+      entries. This defaults to 1.
+max_results: maximum results that the pull will return.  This defaults
+      to, and maxes out at 1000.
+ +
QueryAccountListFeed(self, uri)
Retrieves an Account ListFeed by retrieving a URI based off the Account
+   List feed, including any query parameters. A AccountQuery object can
+   be used to construct these parameters.

+Args:
+  uri: string The URI of the feed being retrieved possibly with query
+       parameters.

+Returns:
+  An AccountListFeed object representing the feed returned by the server.
+ +
__init__(self, email=None, password=None, source=None, server='www.google.com/analytics', additional_headers=None, **kwargs)
Creates a client for the Google Analytics service.

+Args:
+  email: string (optional) The user's email address, used for
+      authentication.
+  password: string (optional) The user's password.
+  source: string (optional) The name of the user's application.
+  server: string (optional) The name of the server to which a connection
+      will be opened. Default value: 'docs.google.com'.
+  **kwargs: The other parameters to pass to gdata.service.GDataService
+      constructor.
+ +
+Methods inherited from gdata.service.GDataService:
+
AuthSubTokenInfo(self)
Fetches the AuthSub token's metadata from the server.

+Raises:
+  NonAuthSubToken if the user's auth token is not an AuthSub token
+ +
ClientLogin(self, username, password, account_type=None, service=None, auth_service_url=None, source=None, captcha_token=None, captcha_response=None)
Convenience method for authenticating using ProgrammaticLogin. 

+Sets values for email, password, and other optional members.

+Args:
+  username:
+  password:
+  account_type: string (optional)
+  service: string (optional)
+  auth_service_url: string (optional)
+  captcha_token: string (optional)
+  captcha_response: string (optional)
+ +
Delete(self, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=4)
Deletes the entry at the given URI.

+Args:
+  uri: string The URI of the entry to be deleted. Example: 
+       '/base/feeds/items/ITEM-ID'
+  extra_headers: dict (optional) HTTP headers which are to be included.
+                 The client automatically sets the Content-Type and
+                 Authorization headers.
+  url_params: dict (optional) Additional URL parameters to be included
+              in the URI. These are translated into query arguments
+              in the form '&dict_key=value&...'.
+              Example: {'max-results': '250'} becomes &max-results=250
+  escape_params: boolean (optional) If false, the calling code has already
+                 ensured that the query will form a valid URL (all
+                 reserved characters have been escaped). If true, this
+                 method will escape the query and any URL parameters
+                 provided.

+Returns:
+  True if the entry was deleted.
+ +
FetchOAuthRequestToken(self, scopes=None, extra_parameters=None, request_url='https://www.google.com/accounts/OAuthGetRequestToken', oauth_callback=None)
Fetches and sets the OAuth request token and returns it.

+Args:
+  scopes: string or list of string base URL(s) of the service(s) to be
+      accessed. If None, then this method tries to determine the
+      scope(s) from the current service.
+  extra_parameters: dict (optional) key-value pairs as any additional
+      parameters to be included in the URL and signature while making a
+      request for fetching an OAuth request token. All the OAuth parameters
+      are added by default. But if provided through this argument, any
+      default parameters will be overwritten. For e.g. a default parameter
+      oauth_version 1.0 can be overwritten if
+      extra_parameters = {'oauth_version': '2.0'}
+  request_url: Request token URL. The default is
+      'https://www.google.com/accounts/OAuthGetRequestToken'.
+  oauth_callback: str (optional) If set, it is assume the client is using
+      the OAuth v1.0a protocol where the callback url is sent in the
+      request token step.  If the oauth_callback is also set in
+      extra_params, this value will override that one.

+Returns:
+  The fetched request token as a gdata.auth.OAuthToken object.

+Raises:
+  FetchingOAuthRequestTokenFailed if the server responded to the request
+  with an error.
+ +
GenerateAuthSubURL(self, next, scope, secure=False, session=True, domain='default')
Generate a URL at which the user will login and be redirected back.

+Users enter their credentials on a Google login page and a token is sent
+to the URL specified in next. See documentation for AuthSub login at:
+http://code.google.com/apis/accounts/docs/AuthSub.html

+Args:
+  next: string The URL user will be sent to after logging in.
+  scope: string or list of strings. The URLs of the services to be 
+         accessed.
+  secure: boolean (optional) Determines whether or not the issued token
+          is a secure token.
+  session: boolean (optional) Determines whether or not the issued token
+           can be upgraded to a session token.
+ +
GenerateOAuthAuthorizationURL(self, request_token=None, callback_url=None, extra_params=None, include_scopes_in_callback=False, scopes_param_prefix='oauth_token_scope', request_url='https://www.google.com/accounts/OAuthAuthorizeToken')
Generates URL at which user will login to authorize the request token.

+Args:
+  request_token: gdata.auth.OAuthToken (optional) OAuth request token.
+      If not specified, then the current token will be used if it is of
+      type <gdata.auth.OAuthToken>, else it is found by looking in the
+      token_store by looking for a token for the current scope.    
+  callback_url: string (optional) The URL user will be sent to after
+      logging in and granting access.
+  extra_params: dict (optional) Additional parameters to be sent.
+  include_scopes_in_callback: Boolean (default=False) if set to True, and
+      if 'callback_url' is present, the 'callback_url' will be modified to
+      include the scope(s) from the request token as a URL parameter. The
+      key for the 'callback' URL's scope parameter will be
+      OAUTH_SCOPE_URL_PARAM_NAME. The benefit of including the scope URL as
+      a parameter to the 'callback' URL, is that the page which receives
+      the OAuth token will be able to tell which URLs the token grants
+      access to.
+  scopes_param_prefix: string (default='oauth_token_scope') The URL
+      parameter key which maps to the list of valid scopes for the token.
+      This URL parameter will be included in the callback URL along with
+      the scopes of the token as value if include_scopes_in_callback=True.
+  request_url: Authorization URL. The default is
+      'https://www.google.com/accounts/OAuthAuthorizeToken'.
+Returns:
+  A string URL at which the user is required to login.

+Raises:
+  NonOAuthToken if the user's request token is not an OAuth token or if a
+  request token was not available.
+ +
Get(self, uri, extra_headers=None, redirects_remaining=4, encoding='UTF-8', converter=None)
Query the GData API with the given URI

+The uri is the portion of the URI after the server value 
+(ex: www.google.com).

+To perform a query against Google Base, set the server to 
+'base.google.com' and set the uri to '/base/feeds/...', where ... is 
+your query. For example, to find snippets for all digital cameras uri 
+should be set to: '/base/feeds/snippets?bq=digital+camera'

+Args:
+  uri: string The query in the form of a URI. Example:
+       '/base/feeds/snippets?bq=digital+camera'.
+  extra_headers: dictionary (optional) Extra HTTP headers to be included
+                 in the GET request. These headers are in addition to 
+                 those stored in the client's additional_headers property.
+                 The client automatically sets the Content-Type and 
+                 Authorization headers.
+  redirects_remaining: int (optional) Tracks the number of additional
+      redirects this method will allow. If the service object receives
+      a redirect and remaining is 0, it will not follow the redirect. 
+      This was added to avoid infinite redirect loops.
+  encoding: string (optional) The character encoding for the server's
+      response. Default is UTF-8
+  converter: func (optional) A function which will transform
+      the server's results before it is returned. Example: use 
+      GDataFeedFromString to parse the server response as if it
+      were a GDataFeed.

+Returns:
+  If there is no ResultsTransformer specified in the call, a GDataFeed 
+  or GDataEntry depending on which is sent from the server. If the 
+  response is niether a feed or entry and there is no ResultsTransformer,
+  return a string. If there is a ResultsTransformer, the returned value 
+  will be that of the ResultsTransformer function.
+ +
GetAuthSubToken(self)
Returns the AuthSub token as a string.

+If the token is an gdta.auth.AuthSubToken, the Authorization Label
+("AuthSub token") is removed.

+This method examines the current_token to see if it is an AuthSubToken
+or SecureAuthSubToken. If not, it searches the token_store for a token
+which matches the current scope.

+The current scope is determined by the service name string member.

+Returns:
+  If the current_token is set to an AuthSubToken/SecureAuthSubToken,
+  return the token string. If there is no current_token, a token string
+  for a token which matches the service object's default scope is returned.
+  If there are no tokens valid for the scope, returns None.
+ +
GetClientLoginToken(self)
Returns the token string for the current token or a token matching the 
+service scope.

+If the current_token is a ClientLoginToken, the token string for 
+the current token is returned. If the current_token is not set, this method
+searches for a token in the token_store which is valid for the service 
+object's current scope.

+The current scope is determined by the service name string member.
+The token string is the end of the Authorization header, it doesn not
+include the ClientLogin label.
+ +
GetEntry(self, uri, extra_headers=None)
Query the GData API with the given URI and receive an Entry.

+See also documentation for gdata.service.Get

+Args:
+  uri: string The query in the form of a URI. Example:
+       '/base/feeds/snippets?bq=digital+camera'.
+  extra_headers: dictionary (optional) Extra HTTP headers to be included
+                 in the GET request. These headers are in addition to
+                 those stored in the client's additional_headers property.
+                 The client automatically sets the Content-Type and
+                 Authorization headers.

+Returns:
+  A GDataEntry built from the XML in the server's response.
+ +
GetFeed(self, uri, extra_headers=None, converter=<function GDataFeedFromString at 0x7f81bc61ed70>)
Query the GData API with the given URI and receive a Feed.

+See also documentation for gdata.service.Get

+Args:
+  uri: string The query in the form of a URI. Example:
+       '/base/feeds/snippets?bq=digital+camera'.
+  extra_headers: dictionary (optional) Extra HTTP headers to be included
+                 in the GET request. These headers are in addition to
+                 those stored in the client's additional_headers property.
+                 The client automatically sets the Content-Type and
+                 Authorization headers.

+Returns:
+  A GDataFeed built from the XML in the server's response.
+ +
GetGeneratorFromLinkFinder(self, link_finder, func, num_retries=3, delay=1, backoff=2)
returns a generator for pagination
+ +
GetMedia(self, uri, extra_headers=None)
Returns a MediaSource containing media and its metadata from the given
+URI string.
+ +
GetNext(self, feed)
Requests the next 'page' of results in the feed.

+This method uses the feed's next link to request an additional feed
+and uses the class of the feed to convert the results of the GET request.

+Args:
+  feed: atom.Feed or a subclass. The feed should contain a next link and
+      the type of the feed will be applied to the results from the 
+      server. The new feed which is returned will be of the same class
+      as this feed which was passed in.

+Returns:
+  A new feed representing the next set of results in the server's feed.
+  The type of this feed will match that of the feed argument.
+ +
GetOAuthInputParameters(self)
+ +
GetWithRetries(self, uri, extra_headers=None, redirects_remaining=4, encoding='UTF-8', converter=None, num_retries=3, delay=1, backoff=2, logger=None)
This is a wrapper method for Get with retring capability.

+To avoid various errors while retrieving bulk entities by retring
+specified times.

+Note this method relies on the time module and so may not be usable
+by default in Python2.2.

+Args:
+  num_retries: integer The retry count.
+  delay: integer The initial delay for retring.
+  backoff: integer how much the delay should lengthen after each failure.
+  logger: an object which has a debug(str) method to receive logging
+          messages. Recommended that you pass in the logging module.
+Raises:
+  ValueError if any of the parameters has an invalid value.
+  RanOutOfTries on failure after number of retries.
+ +
Post(self, data, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=4, media_source=None, converter=None)
Insert or update  data into a GData service at the given URI.

+Args:
+  data: string, ElementTree._Element, atom.Entry, or gdata.GDataEntry The
+        XML to be sent to the uri.
+  uri: string The location (feed) to which the data should be inserted.
+       Example: '/base/feeds/items'.
+  extra_headers: dict (optional) HTTP headers which are to be included.
+                 The client automatically sets the Content-Type,
+                 Authorization, and Content-Length headers.
+  url_params: dict (optional) Additional URL parameters to be included
+              in the URI. These are translated into query arguments
+              in the form '&dict_key=value&...'.
+              Example: {'max-results': '250'} becomes &max-results=250
+  escape_params: boolean (optional) If false, the calling code has already
+                 ensured that the query will form a valid URL (all
+                 reserved characters have been escaped). If true, this
+                 method will escape the query and any URL parameters
+                 provided.
+  media_source: MediaSource (optional) Container for the media to be sent
+      along with the entry, if provided.
+  converter: func (optional) A function which will be executed on the
+      server's response. Often this is a function like
+      GDataEntryFromString which will parse the body of the server's
+      response and return a GDataEntry.

+Returns:
+  If the post succeeded, this method will return a GDataFeed, GDataEntry,
+  or the results of running converter on the server's result body (if
+  converter was specified).
+ +
PostOrPut(self, verb, data, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=4, media_source=None, converter=None)
Insert data into a GData service at the given URI.

+Args:
+  verb: string, either 'POST' or 'PUT'
+  data: string, ElementTree._Element, atom.Entry, or gdata.GDataEntry The
+        XML to be sent to the uri. 
+  uri: string The location (feed) to which the data should be inserted. 
+       Example: '/base/feeds/items'. 
+  extra_headers: dict (optional) HTTP headers which are to be included. 
+                 The client automatically sets the Content-Type,
+                 Authorization, and Content-Length headers.
+  url_params: dict (optional) Additional URL parameters to be included
+              in the URI. These are translated into query arguments
+              in the form '&dict_key=value&...'.
+              Example: {'max-results': '250'} becomes &max-results=250
+  escape_params: boolean (optional) If false, the calling code has already
+                 ensured that the query will form a valid URL (all
+                 reserved characters have been escaped). If true, this
+                 method will escape the query and any URL parameters
+                 provided.
+  media_source: MediaSource (optional) Container for the media to be sent
+      along with the entry, if provided.
+  converter: func (optional) A function which will be executed on the 
+      server's response. Often this is a function like 
+      GDataEntryFromString which will parse the body of the server's 
+      response and return a GDataEntry.

+Returns:
+  If the post succeeded, this method will return a GDataFeed, GDataEntry,
+  or the results of running converter on the server's result body (if
+  converter was specified).
+ +
ProgrammaticLogin(self, captcha_token=None, captcha_response=None)
Authenticates the user and sets the GData Auth token.

+Login retreives a temporary auth token which must be used with all
+requests to GData services. The auth token is stored in the GData client
+object.

+Login is also used to respond to a captcha challenge. If the user's login
+attempt failed with a CaptchaRequired error, the user can respond by
+calling Login with the captcha token and the answer to the challenge.

+Args:
+  captcha_token: string (optional) The identifier for the captcha challenge
+                 which was presented to the user.
+  captcha_response: string (optional) The user's answer to the captch 
+                    challenge.

+Raises:
+  CaptchaRequired if the login service will require a captcha response
+  BadAuthentication if the login service rejected the username or password
+  Error if the login service responded with a 403 different from the above
+ +
Put(self, data, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=3, media_source=None, converter=None)
Updates an entry at the given URI.

+Args:
+  data: string, ElementTree._Element, or xml_wrapper.ElementWrapper The 
+        XML containing the updated data.
+  uri: string A URI indicating entry to which the update will be applied.
+       Example: '/base/feeds/items/ITEM-ID'
+  extra_headers: dict (optional) HTTP headers which are to be included.
+                 The client automatically sets the Content-Type,
+                 Authorization, and Content-Length headers.
+  url_params: dict (optional) Additional URL parameters to be included
+              in the URI. These are translated into query arguments
+              in the form '&dict_key=value&...'.
+              Example: {'max-results': '250'} becomes &max-results=250
+  escape_params: boolean (optional) If false, the calling code has already
+                 ensured that the query will form a valid URL (all
+                 reserved characters have been escaped). If true, this
+                 method will escape the query and any URL parameters
+                 provided.
+  converter: func (optional) A function which will be executed on the 
+      server's response. Often this is a function like 
+      GDataEntryFromString which will parse the body of the server's 
+      response and return a GDataEntry.

+Returns:
+  If the put succeeded, this method will return a GDataFeed, GDataEntry,
+  or the results of running converter on the server's result body (if
+  converter was specified).
+ +
RevokeAuthSubToken(self)
Revokes an existing AuthSub token.

+Raises:
+  NonAuthSubToken if the user's auth token is not an AuthSub token
+ +
RevokeOAuthToken(self, request_url='https://www.google.com/accounts/AuthSubRevokeToken')
Revokes an existing OAuth token.

+request_url: Token revoke URL. The default is
+      'https://www.google.com/accounts/AuthSubRevokeToken'.
+Raises:
+  NonOAuthToken if the user's auth token is not an OAuth token.
+  RevokingOAuthTokenFailed if request for revoking an OAuth token failed.
+ +
SetAuthSubToken(self, token, scopes=None, rsa_key=None)
Sets the token sent in requests to an AuthSub token.

+Sets the current_token and attempts to add the token to the token_store.

+Only use this method if you have received a token from the AuthSub
+service. The auth token is set automatically when UpgradeToSessionToken()
+is used. See documentation for Google AuthSub here:
+http://code.google.com/apis/accounts/AuthForWebApps.html 

+Args:
+ token: gdata.auth.AuthSubToken or gdata.auth.SecureAuthSubToken or string
+        The token returned by the AuthSub service. If the token is an
+        AuthSubToken or SecureAuthSubToken, the scope information stored in
+        the token is used. If the token is a string, the scopes parameter is
+        used to determine the valid scopes.
+ scopes: list of URLs for which the token is valid. This is only used
+         if the token parameter is a string.
+ rsa_key: string (optional) Private key required for RSA_SHA1 signature
+          method.  This parameter is necessary if the token is a string
+          representing a secure token.
+ +
SetClientLoginToken(self, token, scopes=None)
Sets the token sent in requests to a ClientLogin token.

+This method sets the current_token to a new ClientLoginToken and it 
+also attempts to add the ClientLoginToken to the token_store.

+Only use this method if you have received a token from the ClientLogin
+service. The auth_token is set automatically when ProgrammaticLogin()
+is used. See documentation for Google ClientLogin here:
+http://code.google.com/apis/accounts/docs/AuthForInstalledApps.html

+Args:
+  token: string or instance of a ClientLoginToken.
+ +
SetOAuthInputParameters(self, signature_method, consumer_key, consumer_secret=None, rsa_key=None, two_legged_oauth=False, requestor_id=None)
Sets parameters required for using OAuth authentication mechanism.

+NOTE: Though consumer_secret and rsa_key are optional, either of the two
+is required depending on the value of the signature_method.

+Args:
+  signature_method: class which provides implementation for strategy class
+      oauth.oauth.OAuthSignatureMethod. Signature method to be used for
+      signing each request. Valid implementations are provided as the
+      constants defined by gdata.auth.OAuthSignatureMethod. Currently
+      they are gdata.auth.OAuthSignatureMethod.RSA_SHA1 and
+      gdata.auth.OAuthSignatureMethod.HMAC_SHA1
+  consumer_key: string Domain identifying third_party web application.
+  consumer_secret: string (optional) Secret generated during registration.
+      Required only for HMAC_SHA1 signature method.
+  rsa_key: string (optional) Private key required for RSA_SHA1 signature
+      method.
+  two_legged_oauth: boolean (optional) Enables two-legged OAuth process.
+  requestor_id: string (optional) User email adress to make requests on
+      their behalf.  This parameter should only be set when two_legged_oauth
+      is True.
+ +
SetOAuthToken(self, oauth_token)
Attempts to set the current token and add it to the token store.

+The oauth_token can be any OAuth token i.e. unauthorized request token,
+authorized request token or access token.
+This method also attempts to add the token to the token store.
+Use this method any time you want the current token to point to the
+oauth_token passed. For e.g. call this method with the request token
+you receive from FetchOAuthRequestToken.

+Args:
+  request_token: gdata.auth.OAuthToken OAuth request token.
+ +
UpgradeToOAuthAccessToken(self, authorized_request_token=None, request_url='https://www.google.com/accounts/OAuthGetAccessToken', oauth_version='1.0', oauth_verifier=None)
Upgrades the authorized request token to an access token and returns it

+Args:
+  authorized_request_token: gdata.auth.OAuthToken (optional) OAuth request
+      token. If not specified, then the current token will be used if it is
+      of type <gdata.auth.OAuthToken>, else it is found by looking in the
+      token_store by looking for a token for the current scope.
+  request_url: Access token URL. The default is
+      'https://www.google.com/accounts/OAuthGetAccessToken'.
+  oauth_version: str (default='1.0') oauth_version parameter. All other
+      'oauth_' parameters are added by default. This parameter too, is
+      added by default but here you can override it's value.
+  oauth_verifier: str (optional) If present, it is assumed that the client
+    will use the OAuth v1.0a protocol which includes passing the
+    oauth_verifier (as returned by the SP) in the access token step.

+Returns:
+  Access token
+      
+Raises:
+  NonOAuthToken if the user's authorized request token is not an OAuth
+  token or if an authorized request token was not available.
+  TokenUpgradeFailed if the server responded to the request with an 
+  error.
+ +
UpgradeToSessionToken(self, token=None)
Upgrades a single use AuthSub token to a session token.

+Args:
+  token: A gdata.auth.AuthSubToken or gdata.auth.SecureAuthSubToken
+         (optional) which is good for a single use but can be upgraded
+         to a session token. If no token is passed in, the token
+         is found by looking in the token_store by looking for a token
+         for the current scope.

+Raises:
+  NonAuthSubToken if the user's auth token is not an AuthSub token
+  TokenUpgradeFailed if the server responded to the request with an 
+  error.
+ +
upgrade_to_session_token(self, token)
Upgrades a single use AuthSub token to a session token.

+Args:
+  token: A gdata.auth.AuthSubToken or gdata.auth.SecureAuthSubToken
+         which is good for a single use but can be upgraded to a
+         session token.

+Returns:
+  The upgraded token as a gdata.auth.AuthSubToken object.

+Raises:
+  TokenUpgradeFailed if the server responded to the request with an 
+  error.
+ +
+Data descriptors inherited from gdata.service.GDataService:
+
captcha_token
+
Get the captcha token for a login request.
+
+
captcha_url
+
Get the captcha URL for a login request.
+
+
source
+
The source is the name of the application making the request. 
+It should be in the form company_id-app_name-app_version
+
+
+Data and other attributes inherited from gdata.service.GDataService:
+
auth_token = None
+ +
handler = None
+ +
tokens = None
+ +
+Methods inherited from atom.service.AtomService:
+
UseBasicAuth(self, username, password, for_proxy=False)
Sets an Authenticaiton: Basic HTTP header containing plaintext.

+Deprecated, use use_basic_auth instead.

+The username and password are base64 encoded and added to an HTTP header
+which will be included in each request. Note that your username and 
+password are sent in plaintext.

+Args:
+  username: str
+  password: str
+ +
request(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
+ +
use_basic_auth(self, username, password, scopes=None)
+ +
+Data descriptors inherited from atom.service.AtomService:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
debug
+
If True, HTTP debug information is printed.
+
+
override_token
+
+
+Data and other attributes inherited from atom.service.AtomService:
+
auto_set_current_token = True
+ +
auto_store_tokens = True
+ +
current_token = None
+ +
port = 80
+ +
ssl = False
+ +

+ + + + + + + +
 
+class DataQuery(gdata.service.Query)
   Object used to construct a URI to a data feed
 
 
Method resolution order:
+
DataQuery
+
gdata.service.Query
+
__builtin__.dict
+
__builtin__.object
+
+
+Methods defined here:
+
ToUri(self)
Generates a URI from the query parameters set in the object.

+Returns:
+  A string containing the URI used to retrieve entries from the Analytics
+  List feed.
+ +
__init__(self, feed='/feeds/data', text_query=None, params=None, categories=None, ids='', dimensions='', metrics='', sort='', filters='', start_date='', end_date='', start_index='', max_results='')
Constructor for Analytics List Query

+Args:
+  feed: string (optional) The path for the feed. (e.g. '/feeds/data')

+  text_query: string (optional) The contents of the q query parameter. 
+        This string is URL escaped upon conversion to a URI.
+  params: dict (optional) Parameter value string pairs which become URL
+        params when translated to a URI. These parameters are added to
+          the query's items.
+  categories: list (optional) List of category strings which should be
+        included as query categories. See gdata.service.Query for
+        additional documentation.
+  ids: comma-separated string of analytics accounts.
+  dimensions: comma-separated string of dimensions.
+  metrics: comma-separated string of metrics.
+  sort: comma-separated string of dimensions and metrics.
+        This may be previxed with a minus to sort in reverse order 
+        (e.g. '-ga:keyword').
+        If ommited, the first dimension passed in will be used.
+  filters: comma-separated string of filter parameters 
+        (e.g. 'ga:keyword==google').
+  start_date: start date for data pull.
+  end_date: end date for data pull.
+  start_index: used in combination with max_results to pull more than 1000 
+        entries. This defaults to 1.
+  max_results: maximum results that the pull will return.  This defaults 
+        to, and maxes out at 1000.

+Yields:
+  A DocumentQuery object used to construct a URI based on the Document
+  List feed.
+ +
+Methods inherited from gdata.service.Query:
+
__str__(self)
+ +
+Data descriptors inherited from gdata.service.Query:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
alt
+
The feed query's alt parameter
+
+
author
+
The feed query's author parameter
+
+
max_results
+
The feed query's max-results parameter
+
+
orderby
+
The feed query's orderby parameter
+
+
published_max
+
The feed query's published-max parameter
+
+
published_min
+
The feed query's published-min parameter
+
+
start_index
+
The feed query's start-index parameter
+
+
text_query
+
The feed query's q parameter
+
+
updated_max
+
The feed query's updated-max parameter
+
+
updated_min
+
The feed query's updated-min parameter
+
+
+Methods inherited from __builtin__.dict:
+
__cmp__(...)
x.__cmp__(y) <==> cmp(x,y)
+ +
__contains__(...)
D.__contains__(k) -> True if D has a key k, else False
+ +
__delitem__(...)
x.__delitem__(y) <==> del x[y]
+ +
__eq__(...)
x.__eq__(y) <==> x==y
+ +
__ge__(...)
x.__ge__(y) <==> x>=y
+ +
__getattribute__(...)
x.__getattribute__('name') <==> x.name
+ +
__getitem__(...)
x.__getitem__(y) <==> x[y]
+ +
__gt__(...)
x.__gt__(y) <==> x>y
+ +
__iter__(...)
x.__iter__() <==> iter(x)
+ +
__le__(...)
x.__le__(y) <==> x<=y
+ +
__len__(...)
x.__len__() <==> len(x)
+ +
__lt__(...)
x.__lt__(y) <==> x<y
+ +
__ne__(...)
x.__ne__(y) <==> x!=y
+ +
__repr__(...)
x.__repr__() <==> repr(x)
+ +
__setitem__(...)
x.__setitem__(i, y) <==> x[i]=y
+ +
__sizeof__(...)
D.__sizeof__() -> size of D in memory, in bytes
+ +
clear(...)
D.clear() -> None.  Remove all items from D.
+ +
copy(...)
D.copy() -> a shallow copy of D
+ +
get(...)
D.get(k[,d]) -> D[k] if k in D, else d.  d defaults to None.
+ +
has_key(...)
D.has_key(k) -> True if D has a key k, else False
+ +
items(...)
D.items() -> list of D's (key, value) pairs, as 2-tuples
+ +
iteritems(...)
D.iteritems() -> an iterator over the (key, value) items of D
+ +
iterkeys(...)
D.iterkeys() -> an iterator over the keys of D
+ +
itervalues(...)
D.itervalues() -> an iterator over the values of D
+ +
keys(...)
D.keys() -> list of D's keys
+ +
pop(...)
D.pop(k[,d]) -> v, remove specified key and return the corresponding value
+If key is not found, d is returned if given, otherwise KeyError is raised
+ +
popitem(...)
D.popitem() -> (k, v), remove and return some (key, value) pair as a
+2-tuple; but raise KeyError if D is empty
+ +
setdefault(...)
D.setdefault(k[,d]) -> D.get(k,d), also set D[k]=d if k not in D
+ +
update(...)
D.update(E, **F) -> None.  Update D from E and F: for k in E: D[k] = E[k]
+(if E has keys else: for (k, v) in E: D[k] = v) then: for k in F: D[k] = F[k]
+ +
values(...)
D.values() -> list of D's values
+ +
+Data and other attributes inherited from __builtin__.dict:
+
__hash__ = None
+ +
__new__ = <built-in method __new__ of type object at 0x7569a0>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+ +
fromkeys = <built-in method fromkeys of type object at 0xb49bf0>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
+v defaults to None.
+ +

+ + + + + +
 
+Data
       __author__ = 'api.suryasev (Sal Uryasev)'

+ + + + + +
 
+Author
       api.suryasev (Sal Uryasev)
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.apps.adminsettings.html python-gdata-2.0.8/pydocs/gdata.apps.adminsettings.html --- python-gdata-1.2.4/pydocs/gdata.apps.adminsettings.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.apps.adminsettings.html 2009-10-09 23:48:43.000000000 +0100 @@ -0,0 +1,34 @@ + + +Python: package gdata.apps.adminsettings + + + + +
 
+ 
gdata.apps.adminsettings
index
/usr/local/svn/gdata-python-client/src/gdata/apps/adminsettings/__init__.py
+

# Copyright (C) 2008 Google
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.

+

+ + + + + +
 
+Package Contents
       
service
+
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.apps.adminsettings.service.html python-gdata-2.0.8/pydocs/gdata.apps.adminsettings.service.html --- python-gdata-1.2.4/pydocs/gdata.apps.adminsettings.service.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.apps.adminsettings.service.html 2010-02-26 23:16:48.000000000 +0000 @@ -0,0 +1,879 @@ + + +Python: module gdata.apps.adminsettings.service + + + + +
 
+ 
gdata.apps.adminsettings.service
index
/usr/local/svn/gdata-python-client/src/gdata/apps/adminsettings/service.py
+

Allow Google Apps domain administrators to set domain admin settings.

+AdminSettingsService: Set admin settings.

+

+ + + + + +
 
+Modules
       
gdata
+

+ + + + + +
 
+Classes
       
+
gdata.apps.service.PropertyService(gdata.service.GDataService) +
+
+
AdminSettingsService +
+
+
+

+ + + + + + + +
 
+class AdminSettingsService(gdata.apps.service.PropertyService)
   Client for the Google Apps Admin Settings service.
 
 
Method resolution order:
+
AdminSettingsService
+
gdata.apps.service.PropertyService
+
gdata.service.GDataService
+
atom.service.AtomService
+
__builtin__.object
+
+
+Methods defined here:
+
AddEmailRoute(self, routeDestination, routeRewriteTo, routeEnabled, bounceNotifications, accountHandling)
Adds Domain Email Route

+Args:
+  routeDestination: string, destination ip address or hostname
+  routeRewriteTo: boolean, rewrite smtp envelop To:
+  routeEnabled: boolean, enable disable email routing
+  bounceNotifications: boolean, send bound notificiations to sender
+  accountHandling: string, which to route, "allAccounts", "provisionedAccounts", "unknownAccounts"

+Returns:
+  A dict containing the result of the update operation.
+ +
GetAdminSecondaryEmail(self)
Gets Domain Admin Secondary Email Address

+Args:
+  None

+Returns: A string, the secondary email address for domain admin
+ +
GetCNAMEVerificationStatus(self)
Gets Domain CNAME Verification Status

+Args:
+  None

+Returns: A dict {recordName, verified, verifiedMethod}
+ +
GetCountryCode(self)
Gets Domain Country Code

+Args:
+  None

+Returns: A string, the domain's country code. Possible values at:
+  http://www.iso.org/iso/country_codes/iso_3166_code_lists/english_country_names_and_code_elements.htm
+ +
GetCreationTime(self)
Gets Domain Creation Time

+Args:
+  None

+Returns: A string, the domain's creation time
+ +
GetCurrentNumberOfUsers(self)
Gets Current Number of Users

+Args:
+  None

+Returns: An integer, the current number of users
+ +
GetCustomerPIN(self)
Gets Customer PIN

+Args:
+  None

+Returns: A string, the customer PIN
+ +
GetDefaultLanguage(self)
Gets Domain Default Language

+Args:
+  None

+Returns:
+  Default Language as a string.  All possible values are listed at:
+    http://code.google.com/apis/apps/email_settings/developers_guide_protocol.html#GA_email_language_tags
+ +
GetDomainLogo(self)
Gets Domain Logo

+This function does not make use of the Google Apps Admin Settings API,
+it does an HTTP Get of a url specific to the Google Apps domain. It is
+included for completeness sake.

+Args:
+  None

+Returns: binary image file
+ +
GetEdition(self)
Gets Google Apps Domain Edition

+Args:
+  None

+Returns: A string, the domain's edition (premier, education, partner)
+ +
GetMXVerificationStatus(self)
Gets Domain MX Verification Status

+Args:
+  None

+Returns: A dict {verified, verifiedMethod}
+ +
GetMaximumNumberOfUsers(self)
Gets Maximum Number of Users Allowed

+Args:
+  None

+Returns: An integer, the maximum number of users
+ +
GetOrganizationName(self)
Gets Domain Default Language

+Args:
+  None

+Returns:
+  Organization Name as a string.
+ +
GetOutboundGatewaySettings(self)
Get Outbound Gateway Settings

+Args:
+  None

+Returns:
+  A dict {smartHost, smtpMode}
+ +
GetSSOKey(self)
Gets Domain Single Sign-On Signing Key

+Args:
+  None

+Returns: A dict {modulus, exponent, algorithm, format}
+ +
GetSSOSettings(self)
Gets Domain Single Sign-On Settings

+Args:
+  None

+Returns: A dict {samlSignonUri, samlLogoutUri, changePasswordUri, enableSSO, ssoWhitelist, useDomainSpecificIssuer}
+ +
GetSupportPIN(self)
Gets Support PIN

+Args:
+  None

+Returns: A string, the Support PIN
+ +
IsDomainVerified(self)
Is the domain verified

+Args:
+  None

+Returns: Boolean, is domain verified
+ +
IsUserMigrationEnabled(self)
Is User Migration Enabled

+Args:
+  None

+Returns:
+  boolean, is user migration enabled
+ +
UpdateAdminSecondaryEmail(self, adminSecondaryEmail)
Gets Domain Creation Time

+Args:
+  adminSecondaryEmail: string, secondary email address of admin

+Returns: A dict containing the result of the put operation
+ +
UpdateCNAMEVerificationStatus(self, verified)
Updates CNAME Verification Status

+Args:
+  verified: boolean, True will retry verification process

+Returns: A dict containing the result of the put operation
+ +
UpdateDefaultLanguage(self, defaultLanguage)
Updates Domain Default Language

+Args:
+  defaultLanguage: Domain Language to set
+    possible values are at:
+    http://code.google.com/apis/apps/email_settings/developers_guide_protocol.html#GA_email_language_tags

+Returns:
+  A dict containing the result of the put operation
+ +
UpdateDomainLogo(self, logoImage)
Update Domain's Custom Logo

+Args:
+  logoImage: binary image data

+Returns: A dict containing the result of the put operation
+ +
UpdateMXVerificationStatus(self, verified)
Updates MX Verification Status

+Args:
+  verified: boolean, True will retry verification process

+Returns: A dict containing the result of the put operation
+ +
UpdateOrganizationName(self, organizationName)
Updates Organization Name

+Args:
+  organizationName: Name of organization

+Returns:
+  A dict containing the result of the put operation
+ +
UpdateOutboundGatewaySettings(self, smartHost=None, smtpMode=None)
Update Outbound Gateway Settings

+Args:
+  smartHost: string, ip address or hostname of outbound gateway
+  smtpMode: string, SMTP or SMTP_TLS

+Returns:
+  A dict containing the result of the update operation.
+ +
UpdateSSOKey(self, signingKey)
Update SSO Settings.

+Args:
+  signingKey: string, public key to be uploaded

+Returns:
+  A dict containing the result of the update operation.
+ +
UpdateSSOSettings(self, enableSSO=None, samlSignonUri=None, samlLogoutUri=None, changePasswordUri=None, ssoWhitelist=None, useDomainSpecificIssuer=None)
Update SSO Settings.

+Args:
+  enableSSO: boolean, SSO Master on/off switch
+  samlSignonUri: string, SSO Login Page
+  samlLogoutUri: string, SSO Logout Page
+  samlPasswordUri: string, SSO Password Change Page
+  ssoWhitelist: string, Range of IP Addresses which will see SSO
+  useDomainSpecificIssuer: boolean, Include Google Apps Domain in Issuer

+Returns:
+  A dict containing the result of the update operation.
+ +
UpdateUserMigrationStatus(self, enableUserMigration)
Update User Migration Status

+Args:
+  enableUserMigration: boolean, user migration enable/disable

+Returns:
+  A dict containing the result of the update operation.
+ +
genericGet(self, location)
Generic HTTP Get Wrapper

+Args:
+  location: relative uri to Get

+Returns:
+  A dict containing the result of the get operation.
+ +
+Methods inherited from gdata.apps.service.PropertyService:
+
AddAllElementsFromAllPages(self, link_finder, func)
retrieve all pages and add all elements
+ +
__init__(self, email=None, password=None, domain=None, source=None, server='apps-apis.google.com', additional_headers=None)
+ +
+Methods inherited from gdata.service.GDataService:
+
AuthSubTokenInfo(self)
Fetches the AuthSub token's metadata from the server.

+Raises:
+  NonAuthSubToken if the user's auth token is not an AuthSub token
+ +
ClientLogin(self, username, password, account_type=None, service=None, auth_service_url=None, source=None, captcha_token=None, captcha_response=None)
Convenience method for authenticating using ProgrammaticLogin. 

+Sets values for email, password, and other optional members.

+Args:
+  username:
+  password:
+  account_type: string (optional)
+  service: string (optional)
+  auth_service_url: string (optional)
+  captcha_token: string (optional)
+  captcha_response: string (optional)
+ +
Delete(self, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=4)
Deletes the entry at the given URI.

+Args:
+  uri: string The URI of the entry to be deleted. Example: 
+       '/base/feeds/items/ITEM-ID'
+  extra_headers: dict (optional) HTTP headers which are to be included.
+                 The client automatically sets the Content-Type and
+                 Authorization headers.
+  url_params: dict (optional) Additional URL parameters to be included
+              in the URI. These are translated into query arguments
+              in the form '&dict_key=value&...'.
+              Example: {'max-results': '250'} becomes &max-results=250
+  escape_params: boolean (optional) If false, the calling code has already
+                 ensured that the query will form a valid URL (all
+                 reserved characters have been escaped). If true, this
+                 method will escape the query and any URL parameters
+                 provided.

+Returns:
+  True if the entry was deleted.
+ +
FetchOAuthRequestToken(self, scopes=None, extra_parameters=None, request_url='https://www.google.com/accounts/OAuthGetRequestToken', oauth_callback=None)
Fetches and sets the OAuth request token and returns it.

+Args:
+  scopes: string or list of string base URL(s) of the service(s) to be
+      accessed. If None, then this method tries to determine the
+      scope(s) from the current service.
+  extra_parameters: dict (optional) key-value pairs as any additional
+      parameters to be included in the URL and signature while making a
+      request for fetching an OAuth request token. All the OAuth parameters
+      are added by default. But if provided through this argument, any
+      default parameters will be overwritten. For e.g. a default parameter
+      oauth_version 1.0 can be overwritten if
+      extra_parameters = {'oauth_version': '2.0'}
+  request_url: Request token URL. The default is
+      'https://www.google.com/accounts/OAuthGetRequestToken'.
+  oauth_callback: str (optional) If set, it is assume the client is using
+      the OAuth v1.0a protocol where the callback url is sent in the
+      request token step.  If the oauth_callback is also set in
+      extra_params, this value will override that one.

+Returns:
+  The fetched request token as a gdata.auth.OAuthToken object.

+Raises:
+  FetchingOAuthRequestTokenFailed if the server responded to the request
+  with an error.
+ +
GenerateAuthSubURL(self, next, scope, secure=False, session=True, domain='default')
Generate a URL at which the user will login and be redirected back.

+Users enter their credentials on a Google login page and a token is sent
+to the URL specified in next. See documentation for AuthSub login at:
+http://code.google.com/apis/accounts/docs/AuthSub.html

+Args:
+  next: string The URL user will be sent to after logging in.
+  scope: string or list of strings. The URLs of the services to be 
+         accessed.
+  secure: boolean (optional) Determines whether or not the issued token
+          is a secure token.
+  session: boolean (optional) Determines whether or not the issued token
+           can be upgraded to a session token.
+ +
GenerateOAuthAuthorizationURL(self, request_token=None, callback_url=None, extra_params=None, include_scopes_in_callback=False, scopes_param_prefix='oauth_token_scope', request_url='https://www.google.com/accounts/OAuthAuthorizeToken')
Generates URL at which user will login to authorize the request token.

+Args:
+  request_token: gdata.auth.OAuthToken (optional) OAuth request token.
+      If not specified, then the current token will be used if it is of
+      type <gdata.auth.OAuthToken>, else it is found by looking in the
+      token_store by looking for a token for the current scope.    
+  callback_url: string (optional) The URL user will be sent to after
+      logging in and granting access.
+  extra_params: dict (optional) Additional parameters to be sent.
+  include_scopes_in_callback: Boolean (default=False) if set to True, and
+      if 'callback_url' is present, the 'callback_url' will be modified to
+      include the scope(s) from the request token as a URL parameter. The
+      key for the 'callback' URL's scope parameter will be
+      OAUTH_SCOPE_URL_PARAM_NAME. The benefit of including the scope URL as
+      a parameter to the 'callback' URL, is that the page which receives
+      the OAuth token will be able to tell which URLs the token grants
+      access to.
+  scopes_param_prefix: string (default='oauth_token_scope') The URL
+      parameter key which maps to the list of valid scopes for the token.
+      This URL parameter will be included in the callback URL along with
+      the scopes of the token as value if include_scopes_in_callback=True.
+  request_url: Authorization URL. The default is
+      'https://www.google.com/accounts/OAuthAuthorizeToken'.
+Returns:
+  A string URL at which the user is required to login.

+Raises:
+  NonOAuthToken if the user's request token is not an OAuth token or if a
+  request token was not available.
+ +
Get(self, uri, extra_headers=None, redirects_remaining=4, encoding='UTF-8', converter=None)
Query the GData API with the given URI

+The uri is the portion of the URI after the server value 
+(ex: www.google.com).

+To perform a query against Google Base, set the server to 
+'base.google.com' and set the uri to '/base/feeds/...', where ... is 
+your query. For example, to find snippets for all digital cameras uri 
+should be set to: '/base/feeds/snippets?bq=digital+camera'

+Args:
+  uri: string The query in the form of a URI. Example:
+       '/base/feeds/snippets?bq=digital+camera'.
+  extra_headers: dictionary (optional) Extra HTTP headers to be included
+                 in the GET request. These headers are in addition to 
+                 those stored in the client's additional_headers property.
+                 The client automatically sets the Content-Type and 
+                 Authorization headers.
+  redirects_remaining: int (optional) Tracks the number of additional
+      redirects this method will allow. If the service object receives
+      a redirect and remaining is 0, it will not follow the redirect. 
+      This was added to avoid infinite redirect loops.
+  encoding: string (optional) The character encoding for the server's
+      response. Default is UTF-8
+  converter: func (optional) A function which will transform
+      the server's results before it is returned. Example: use 
+      GDataFeedFromString to parse the server response as if it
+      were a GDataFeed.

+Returns:
+  If there is no ResultsTransformer specified in the call, a GDataFeed 
+  or GDataEntry depending on which is sent from the server. If the 
+  response is niether a feed or entry and there is no ResultsTransformer,
+  return a string. If there is a ResultsTransformer, the returned value 
+  will be that of the ResultsTransformer function.
+ +
GetAuthSubToken(self)
Returns the AuthSub token as a string.

+If the token is an gdta.auth.AuthSubToken, the Authorization Label
+("AuthSub token") is removed.

+This method examines the current_token to see if it is an AuthSubToken
+or SecureAuthSubToken. If not, it searches the token_store for a token
+which matches the current scope.

+The current scope is determined by the service name string member.

+Returns:
+  If the current_token is set to an AuthSubToken/SecureAuthSubToken,
+  return the token string. If there is no current_token, a token string
+  for a token which matches the service object's default scope is returned.
+  If there are no tokens valid for the scope, returns None.
+ +
GetClientLoginToken(self)
Returns the token string for the current token or a token matching the 
+service scope.

+If the current_token is a ClientLoginToken, the token string for 
+the current token is returned. If the current_token is not set, this method
+searches for a token in the token_store which is valid for the service 
+object's current scope.

+The current scope is determined by the service name string member.
+The token string is the end of the Authorization header, it doesn not
+include the ClientLogin label.
+ +
GetEntry(self, uri, extra_headers=None)
Query the GData API with the given URI and receive an Entry.

+See also documentation for gdata.service.Get

+Args:
+  uri: string The query in the form of a URI. Example:
+       '/base/feeds/snippets?bq=digital+camera'.
+  extra_headers: dictionary (optional) Extra HTTP headers to be included
+                 in the GET request. These headers are in addition to
+                 those stored in the client's additional_headers property.
+                 The client automatically sets the Content-Type and
+                 Authorization headers.

+Returns:
+  A GDataEntry built from the XML in the server's response.
+ +
GetFeed(self, uri, extra_headers=None, converter=<function GDataFeedFromString at 0x7f6041c68d70>)
Query the GData API with the given URI and receive a Feed.

+See also documentation for gdata.service.Get

+Args:
+  uri: string The query in the form of a URI. Example:
+       '/base/feeds/snippets?bq=digital+camera'.
+  extra_headers: dictionary (optional) Extra HTTP headers to be included
+                 in the GET request. These headers are in addition to
+                 those stored in the client's additional_headers property.
+                 The client automatically sets the Content-Type and
+                 Authorization headers.

+Returns:
+  A GDataFeed built from the XML in the server's response.
+ +
GetGeneratorFromLinkFinder(self, link_finder, func, num_retries=3, delay=1, backoff=2)
returns a generator for pagination
+ +
GetMedia(self, uri, extra_headers=None)
Returns a MediaSource containing media and its metadata from the given
+URI string.
+ +
GetNext(self, feed)
Requests the next 'page' of results in the feed.

+This method uses the feed's next link to request an additional feed
+and uses the class of the feed to convert the results of the GET request.

+Args:
+  feed: atom.Feed or a subclass. The feed should contain a next link and
+      the type of the feed will be applied to the results from the 
+      server. The new feed which is returned will be of the same class
+      as this feed which was passed in.

+Returns:
+  A new feed representing the next set of results in the server's feed.
+  The type of this feed will match that of the feed argument.
+ +
GetOAuthInputParameters(self)
+ +
GetWithRetries(self, uri, extra_headers=None, redirects_remaining=4, encoding='UTF-8', converter=None, num_retries=3, delay=1, backoff=2, logger=None)
This is a wrapper method for Get with retring capability.

+To avoid various errors while retrieving bulk entities by retring
+specified times.

+Note this method relies on the time module and so may not be usable
+by default in Python2.2.

+Args:
+  num_retries: integer The retry count.
+  delay: integer The initial delay for retring.
+  backoff: integer how much the delay should lengthen after each failure.
+  logger: an object which has a debug(str) method to receive logging
+          messages. Recommended that you pass in the logging module.
+Raises:
+  ValueError if any of the parameters has an invalid value.
+  RanOutOfTries on failure after number of retries.
+ +
Post(self, data, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=4, media_source=None, converter=None)
Insert or update  data into a GData service at the given URI.

+Args:
+  data: string, ElementTree._Element, atom.Entry, or gdata.GDataEntry The
+        XML to be sent to the uri.
+  uri: string The location (feed) to which the data should be inserted.
+       Example: '/base/feeds/items'.
+  extra_headers: dict (optional) HTTP headers which are to be included.
+                 The client automatically sets the Content-Type,
+                 Authorization, and Content-Length headers.
+  url_params: dict (optional) Additional URL parameters to be included
+              in the URI. These are translated into query arguments
+              in the form '&dict_key=value&...'.
+              Example: {'max-results': '250'} becomes &max-results=250
+  escape_params: boolean (optional) If false, the calling code has already
+                 ensured that the query will form a valid URL (all
+                 reserved characters have been escaped). If true, this
+                 method will escape the query and any URL parameters
+                 provided.
+  media_source: MediaSource (optional) Container for the media to be sent
+      along with the entry, if provided.
+  converter: func (optional) A function which will be executed on the
+      server's response. Often this is a function like
+      GDataEntryFromString which will parse the body of the server's
+      response and return a GDataEntry.

+Returns:
+  If the post succeeded, this method will return a GDataFeed, GDataEntry,
+  or the results of running converter on the server's result body (if
+  converter was specified).
+ +
PostOrPut(self, verb, data, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=4, media_source=None, converter=None)
Insert data into a GData service at the given URI.

+Args:
+  verb: string, either 'POST' or 'PUT'
+  data: string, ElementTree._Element, atom.Entry, or gdata.GDataEntry The
+        XML to be sent to the uri. 
+  uri: string The location (feed) to which the data should be inserted. 
+       Example: '/base/feeds/items'. 
+  extra_headers: dict (optional) HTTP headers which are to be included. 
+                 The client automatically sets the Content-Type,
+                 Authorization, and Content-Length headers.
+  url_params: dict (optional) Additional URL parameters to be included
+              in the URI. These are translated into query arguments
+              in the form '&dict_key=value&...'.
+              Example: {'max-results': '250'} becomes &max-results=250
+  escape_params: boolean (optional) If false, the calling code has already
+                 ensured that the query will form a valid URL (all
+                 reserved characters have been escaped). If true, this
+                 method will escape the query and any URL parameters
+                 provided.
+  media_source: MediaSource (optional) Container for the media to be sent
+      along with the entry, if provided.
+  converter: func (optional) A function which will be executed on the 
+      server's response. Often this is a function like 
+      GDataEntryFromString which will parse the body of the server's 
+      response and return a GDataEntry.

+Returns:
+  If the post succeeded, this method will return a GDataFeed, GDataEntry,
+  or the results of running converter on the server's result body (if
+  converter was specified).
+ +
ProgrammaticLogin(self, captcha_token=None, captcha_response=None)
Authenticates the user and sets the GData Auth token.

+Login retreives a temporary auth token which must be used with all
+requests to GData services. The auth token is stored in the GData client
+object.

+Login is also used to respond to a captcha challenge. If the user's login
+attempt failed with a CaptchaRequired error, the user can respond by
+calling Login with the captcha token and the answer to the challenge.

+Args:
+  captcha_token: string (optional) The identifier for the captcha challenge
+                 which was presented to the user.
+  captcha_response: string (optional) The user's answer to the captch 
+                    challenge.

+Raises:
+  CaptchaRequired if the login service will require a captcha response
+  BadAuthentication if the login service rejected the username or password
+  Error if the login service responded with a 403 different from the above
+ +
Put(self, data, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=3, media_source=None, converter=None)
Updates an entry at the given URI.

+Args:
+  data: string, ElementTree._Element, or xml_wrapper.ElementWrapper The 
+        XML containing the updated data.
+  uri: string A URI indicating entry to which the update will be applied.
+       Example: '/base/feeds/items/ITEM-ID'
+  extra_headers: dict (optional) HTTP headers which are to be included.
+                 The client automatically sets the Content-Type,
+                 Authorization, and Content-Length headers.
+  url_params: dict (optional) Additional URL parameters to be included
+              in the URI. These are translated into query arguments
+              in the form '&dict_key=value&...'.
+              Example: {'max-results': '250'} becomes &max-results=250
+  escape_params: boolean (optional) If false, the calling code has already
+                 ensured that the query will form a valid URL (all
+                 reserved characters have been escaped). If true, this
+                 method will escape the query and any URL parameters
+                 provided.
+  converter: func (optional) A function which will be executed on the 
+      server's response. Often this is a function like 
+      GDataEntryFromString which will parse the body of the server's 
+      response and return a GDataEntry.

+Returns:
+  If the put succeeded, this method will return a GDataFeed, GDataEntry,
+  or the results of running converter on the server's result body (if
+  converter was specified).
+ +
RevokeAuthSubToken(self)
Revokes an existing AuthSub token.

+Raises:
+  NonAuthSubToken if the user's auth token is not an AuthSub token
+ +
RevokeOAuthToken(self, request_url='https://www.google.com/accounts/AuthSubRevokeToken')
Revokes an existing OAuth token.

+request_url: Token revoke URL. The default is
+      'https://www.google.com/accounts/AuthSubRevokeToken'.
+Raises:
+  NonOAuthToken if the user's auth token is not an OAuth token.
+  RevokingOAuthTokenFailed if request for revoking an OAuth token failed.
+ +
SetAuthSubToken(self, token, scopes=None, rsa_key=None)
Sets the token sent in requests to an AuthSub token.

+Sets the current_token and attempts to add the token to the token_store.

+Only use this method if you have received a token from the AuthSub
+service. The auth token is set automatically when UpgradeToSessionToken()
+is used. See documentation for Google AuthSub here:
+http://code.google.com/apis/accounts/AuthForWebApps.html 

+Args:
+ token: gdata.auth.AuthSubToken or gdata.auth.SecureAuthSubToken or string
+        The token returned by the AuthSub service. If the token is an
+        AuthSubToken or SecureAuthSubToken, the scope information stored in
+        the token is used. If the token is a string, the scopes parameter is
+        used to determine the valid scopes.
+ scopes: list of URLs for which the token is valid. This is only used
+         if the token parameter is a string.
+ rsa_key: string (optional) Private key required for RSA_SHA1 signature
+          method.  This parameter is necessary if the token is a string
+          representing a secure token.
+ +
SetClientLoginToken(self, token, scopes=None)
Sets the token sent in requests to a ClientLogin token.

+This method sets the current_token to a new ClientLoginToken and it 
+also attempts to add the ClientLoginToken to the token_store.

+Only use this method if you have received a token from the ClientLogin
+service. The auth_token is set automatically when ProgrammaticLogin()
+is used. See documentation for Google ClientLogin here:
+http://code.google.com/apis/accounts/docs/AuthForInstalledApps.html

+Args:
+  token: string or instance of a ClientLoginToken.
+ +
SetOAuthInputParameters(self, signature_method, consumer_key, consumer_secret=None, rsa_key=None, two_legged_oauth=False, requestor_id=None)
Sets parameters required for using OAuth authentication mechanism.

+NOTE: Though consumer_secret and rsa_key are optional, either of the two
+is required depending on the value of the signature_method.

+Args:
+  signature_method: class which provides implementation for strategy class
+      oauth.oauth.OAuthSignatureMethod. Signature method to be used for
+      signing each request. Valid implementations are provided as the
+      constants defined by gdata.auth.OAuthSignatureMethod. Currently
+      they are gdata.auth.OAuthSignatureMethod.RSA_SHA1 and
+      gdata.auth.OAuthSignatureMethod.HMAC_SHA1
+  consumer_key: string Domain identifying third_party web application.
+  consumer_secret: string (optional) Secret generated during registration.
+      Required only for HMAC_SHA1 signature method.
+  rsa_key: string (optional) Private key required for RSA_SHA1 signature
+      method.
+  two_legged_oauth: boolean (optional) Enables two-legged OAuth process.
+  requestor_id: string (optional) User email adress to make requests on
+      their behalf.  This parameter should only be set when two_legged_oauth
+      is True.
+ +
SetOAuthToken(self, oauth_token)
Attempts to set the current token and add it to the token store.

+The oauth_token can be any OAuth token i.e. unauthorized request token,
+authorized request token or access token.
+This method also attempts to add the token to the token store.
+Use this method any time you want the current token to point to the
+oauth_token passed. For e.g. call this method with the request token
+you receive from FetchOAuthRequestToken.

+Args:
+  request_token: gdata.auth.OAuthToken OAuth request token.
+ +
UpgradeToOAuthAccessToken(self, authorized_request_token=None, request_url='https://www.google.com/accounts/OAuthGetAccessToken', oauth_version='1.0', oauth_verifier=None)
Upgrades the authorized request token to an access token and returns it

+Args:
+  authorized_request_token: gdata.auth.OAuthToken (optional) OAuth request
+      token. If not specified, then the current token will be used if it is
+      of type <gdata.auth.OAuthToken>, else it is found by looking in the
+      token_store by looking for a token for the current scope.
+  request_url: Access token URL. The default is
+      'https://www.google.com/accounts/OAuthGetAccessToken'.
+  oauth_version: str (default='1.0') oauth_version parameter. All other
+      'oauth_' parameters are added by default. This parameter too, is
+      added by default but here you can override it's value.
+  oauth_verifier: str (optional) If present, it is assumed that the client
+    will use the OAuth v1.0a protocol which includes passing the
+    oauth_verifier (as returned by the SP) in the access token step.

+Returns:
+  Access token
+      
+Raises:
+  NonOAuthToken if the user's authorized request token is not an OAuth
+  token or if an authorized request token was not available.
+  TokenUpgradeFailed if the server responded to the request with an 
+  error.
+ +
UpgradeToSessionToken(self, token=None)
Upgrades a single use AuthSub token to a session token.

+Args:
+  token: A gdata.auth.AuthSubToken or gdata.auth.SecureAuthSubToken
+         (optional) which is good for a single use but can be upgraded
+         to a session token. If no token is passed in, the token
+         is found by looking in the token_store by looking for a token
+         for the current scope.

+Raises:
+  NonAuthSubToken if the user's auth token is not an AuthSub token
+  TokenUpgradeFailed if the server responded to the request with an 
+  error.
+ +
upgrade_to_session_token(self, token)
Upgrades a single use AuthSub token to a session token.

+Args:
+  token: A gdata.auth.AuthSubToken or gdata.auth.SecureAuthSubToken
+         which is good for a single use but can be upgraded to a
+         session token.

+Returns:
+  The upgraded token as a gdata.auth.AuthSubToken object.

+Raises:
+  TokenUpgradeFailed if the server responded to the request with an 
+  error.
+ +
+Data descriptors inherited from gdata.service.GDataService:
+
captcha_token
+
Get the captcha token for a login request.
+
+
captcha_url
+
Get the captcha URL for a login request.
+
+
source
+
The source is the name of the application making the request. 
+It should be in the form company_id-app_name-app_version
+
+
+Data and other attributes inherited from gdata.service.GDataService:
+
auth_token = None
+ +
handler = None
+ +
tokens = None
+ +
+Methods inherited from atom.service.AtomService:
+
UseBasicAuth(self, username, password, for_proxy=False)
Sets an Authenticaiton: Basic HTTP header containing plaintext.

+Deprecated, use use_basic_auth instead.

+The username and password are base64 encoded and added to an HTTP header
+which will be included in each request. Note that your username and 
+password are sent in plaintext.

+Args:
+  username: str
+  password: str
+ +
request(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
+ +
use_basic_auth(self, username, password, scopes=None)
+ +
+Data descriptors inherited from atom.service.AtomService:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
debug
+
If True, HTTP debug information is printed.
+
+
override_token
+
+
+Data and other attributes inherited from atom.service.AtomService:
+
auto_set_current_token = True
+ +
auto_store_tokens = True
+ +
current_token = None
+ +
port = 80
+ +
ssl = False
+ +

+ + + + + +
 
+Data
       API_VER = '2.0'
+__author__ = 'jlee@pbu.edu'

+ + + + + +
 
+Author
       jlee@pbu.edu
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.apps.emailsettings.service.html python-gdata-2.0.8/pydocs/gdata.apps.emailsettings.service.html --- python-gdata-1.2.4/pydocs/gdata.apps.emailsettings.service.html 2009-01-22 19:55:42.000000000 +0000 +++ python-gdata-2.0.8/pydocs/gdata.apps.emailsettings.service.html 2010-02-26 23:16:48.000000000 +0000 @@ -16,7 +16,7 @@ +Modules
 
-Modules
        - -
gdata
@@ -165,8 +165,18 @@ Returns:
  A dict containing the result of the update operation. +
UpdateWebClipSettings(self, username, enable)
Update WebClip Settings

+Args:
+  username: User to update forwarding for.
+  enable: Boolean whether to enable Web Clip.
+Returns:
+  A dict containing the result of the update operation.
+
Methods inherited from gdata.apps.service.PropertyService:
+
AddAllElementsFromAllPages(self, link_finder, func)
retrieve all pages and add all elements
+
__init__(self, email=None, password=None, domain=None, source=None, server='apps-apis.google.com', additional_headers=None)

@@ -210,7 +220,7 @@ Returns:
  True if the entry was deleted. -
FetchOAuthRequestToken(self, scopes=None, extra_parameters=None, request_url='https://www.google.com/accounts/OAuthGetRequestToken')
Fetches OAuth request token and returns it.
+
FetchOAuthRequestToken(self, scopes=None, extra_parameters=None, request_url='https://www.google.com/accounts/OAuthGetRequestToken', oauth_callback=None)
Fetches and sets the OAuth request token and returns it.
 
Args:
  scopes: string or list of string base URL(s) of the service(s) to be
@@ -225,10 +235,14 @@       extra_parameters = {'oauth_version': '2.0'}
  request_url: Request token URL. The default is
      'https://www.google.com/accounts/OAuthGetRequestToken'.
-  
+  oauth_callback: str (optional) If set, it is assume the client is using
+      the OAuth v1.0a protocol where the callback url is sent in the
+      request token step.  If the oauth_callback is also set in
+      extra_params, this value will override that one.

Returns:
  The fetched request token as a gdata.auth.OAuthToken object.
-  

Raises:
  FetchingOAuthRequestTokenFailed if the server responded to the request
  with an error.
@@ -360,7 +374,7 @@ Returns:
  A GDataEntry built from the XML in the server's response.
-
GetFeed(self, uri, extra_headers=None, converter=<function GDataFeedFromString at 0x8ef1b8>)
Query the GData API with the given URI and receive a Feed.
+
GetFeed(self, uri, extra_headers=None, converter=<function GDataFeedFromString at 0x7f80975b9d70>)
Query the GData API with the given URI and receive a Feed.
 
See also documentation for gdata.service.Get
 
@@ -376,6 +390,8 @@ Returns:
  A GDataFeed built from the XML in the server's response.
+
GetGeneratorFromLinkFinder(self, link_finder, func, num_retries=3, delay=1, backoff=2)
returns a generator for pagination
+
GetMedia(self, uri, extra_headers=None)
Returns a MediaSource containing media and its metadata from the given
URI string.
@@ -394,6 +410,26 @@   A new feed representing the next set of results in the server's feed.
  The type of this feed will match that of the feed argument.
+
GetOAuthInputParameters(self)
+ +
GetWithRetries(self, uri, extra_headers=None, redirects_remaining=4, encoding='UTF-8', converter=None, num_retries=3, delay=1, backoff=2, logger=None)
This is a wrapper method for Get with retring capability.

+To avoid various errors while retrieving bulk entities by retring
+specified times.

+Note this method relies on the time module and so may not be usable
+by default in Python2.2.

+Args:
+  num_retries: integer The retry count.
+  delay: integer The initial delay for retring.
+  backoff: integer how much the delay should lengthen after each failure.
+  logger: an object which has a debug(str) method to receive logging
+          messages. Recommended that you pass in the logging module.
+Raises:
+  ValueError if any of the parameters has an invalid value.
+  RanOutOfTries on failure after number of retries.
+
Post(self, data, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=4, media_source=None, converter=None)
Insert or update  data into a GData service at the given URI.
 
Args:
@@ -554,7 +590,7 @@ Args:
  token: string or instance of a ClientLoginToken.
-
SetOAuthInputParameters(self, signature_method, consumer_key, consumer_secret=None, rsa_key=None, two_legged_oauth=False)
Sets parameters required for using OAuth authentication mechanism.
+
SetOAuthInputParameters(self, signature_method, consumer_key, consumer_secret=None, rsa_key=None, two_legged_oauth=False, requestor_id=None)
Sets parameters required for using OAuth authentication mechanism.
 
NOTE: Though consumer_secret and rsa_key are optional, either of the two
is required depending on the value of the signature_method.
@@ -571,7 +607,10 @@       Required only for HMAC_SHA1 signature method.
  rsa_key: string (optional) Private key required for RSA_SHA1 signature
      method.
-  two_legged_oauth: string (default=False) Enables two-legged OAuth process.
+  two_legged_oauth: boolean (optional) Enables two-legged OAuth process.
+  requestor_id: string (optional) User email adress to make requests on
+      their behalf.  This parameter should only be set when two_legged_oauth
+      is True.
SetOAuthToken(self, oauth_token)
Attempts to set the current token and add it to the token store.
 
@@ -585,18 +624,24 @@ Args:
  request_token: gdata.auth.OAuthToken OAuth request token.
-
UpgradeToOAuthAccessToken(self, authorized_request_token=None, request_url='https://www.google.com/accounts/OAuthGetAccessToken', oauth_version='1.0')
Upgrades the authorized request token to an access token.
+
UpgradeToOAuthAccessToken(self, authorized_request_token=None, request_url='https://www.google.com/accounts/OAuthGetAccessToken', oauth_version='1.0', oauth_verifier=None)
Upgrades the authorized request token to an access token and returns it
 
Args:
  authorized_request_token: gdata.auth.OAuthToken (optional) OAuth request
      token. If not specified, then the current token will be used if it is
      of type <gdata.auth.OAuthToken>, else it is found by looking in the
      token_store by looking for a token for the current scope.
+  request_url: Access token URL. The default is
+      'https://www.google.com/accounts/OAuthGetAccessToken'.
  oauth_version: str (default='1.0') oauth_version parameter. All other
      'oauth_' parameters are added by default. This parameter too, is
      added by default but here you can override it's value.
-  request_url: Access token URL. The default is
-      'https://www.google.com/accounts/OAuthGetAccessToken'.
+  oauth_verifier: str (optional) If present, it is assumed that the client
+    will use the OAuth v1.0a protocol which includes passing the
+    oauth_verifier (as returned by the SP) in the access token step.

+Returns:
+  Access token
      
Raises:
  NonOAuthToken if the user's authorized request token is not an OAuth
@@ -666,7 +711,7 @@   username: str
  password: str
-
request(self, operation, url, data=None, headers=None, url_params=None)
+
request(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
use_basic_auth(self, username, password, scopes=None)
diff -Nru python-gdata-1.2.4/pydocs/gdata.apps.groups.html python-gdata-2.0.8/pydocs/gdata.apps.groups.html --- python-gdata-1.2.4/pydocs/gdata.apps.groups.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.apps.groups.html 2009-03-20 21:52:21.000000000 +0000 @@ -0,0 +1,22 @@ + + +Python: package gdata.apps.groups + + + + +
 
+ 
gdata.apps.groups
index
/usr/local/svn/gdata-python-client/src/gdata/apps/groups/__init__.py
+

+

+ + + + + +
 
+Package Contents
       
service
+
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.apps.groups.service.html python-gdata-2.0.8/pydocs/gdata.apps.groups.service.html --- python-gdata-1.2.4/pydocs/gdata.apps.groups.service.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.apps.groups.service.html 2010-02-26 23:16:48.000000000 +0000 @@ -0,0 +1,801 @@ + + +Python: module gdata.apps.groups.service + + + + +
 
+ 
gdata.apps.groups.service
index
/usr/local/svn/gdata-python-client/src/gdata/apps/groups/service.py
+

Allow Google Apps domain administrators to manage groups, group members and group owners.

+GroupsService: Provides methods to manage groups, members and owners.

+

+ + + + + +
 
+Modules
       
gdata
+
urllib
+

+ + + + + +
 
+Classes
       
+
gdata.apps.service.PropertyService(gdata.service.GDataService) +
+
+
GroupsService +
+
+
+

+ + + + + + + +
 
+class GroupsService(gdata.apps.service.PropertyService)
   Client for the Google Apps Groups service.
 
 
Method resolution order:
+
GroupsService
+
gdata.apps.service.PropertyService
+
gdata.service.GDataService
+
atom.service.AtomService
+
__builtin__.object
+
+
+Methods defined here:
+
AddMemberToGroup(self, member_id, group_id)
Add a member to a group.

+Args:
+  member_id: The member's email address (e.g. member@example.com).
+  group_id: The ID of the group (e.g. us-sales).

+Returns:
+  A dict containing the result of the add operation.
+ +
AddOwnerToGroup(self, owner_email, group_id)
Add an owner to a group.

+Args:
+  owner_email: The email address of a group owner.
+  group_id: The ID of the group (e.g. us-sales).

+Returns:
+  A dict containing the result of the add operation.
+ +
CreateGroup(self, group_id, group_name, description, email_permission)
Create a group.

+Args:
+  group_id: The ID of the group (e.g. us-sales).
+  group_name: The name of the group.
+  description: A description of the group
+  email_permission: The subscription permission of the group.

+Returns:
+  A dict containing the result of the create operation.
+ +
DeleteGroup(self, group_id)
Delete a group based on its ID.

+Args:
+  group_id: The ID of the group (e.g. us-sales).

+Returns:
+  A dict containing the result of the delete operation.
+ +
IsMember(self, member_id, group_id)
Check whether the given member already exists in the given group.

+Args:
+  member_id: The member's email address (e.g. member@example.com).
+  group_id: The ID of the group (e.g. us-sales).

+Returns:
+  True if the member exists in the group.  False otherwise.
+ +
IsOwner(self, owner_email, group_id)
Check whether the given member an owner of the given group.

+Args:
+  owner_email: The email address of a group owner.
+  group_id: The ID of the group (e.g. us-sales).

+Returns:
+  True if the member is an owner of the given group.  False otherwise.
+ +
RemoveMemberFromGroup(self, member_id, group_id)
Remove the given member from the given group.

+Args:
+  member_id: The member's email address (e.g. member@example.com).
+  group_id: The ID of the group (e.g. us-sales).

+Returns:
+  A dict containing the result of the remove operation.
+ +
RemoveOwnerFromGroup(self, owner_email, group_id)
Remove the given owner from the given group.

+Args:
+  owner_email: The email address of a group owner.
+  group_id: The ID of the group (e.g. us-sales).

+Returns:
+  A dict containing the result of the remove operation.
+ +
RetrieveAllGroups(self)
Retrieve all groups in the domain.

+Args:
+  None

+Returns:
+  A list containing the result of the retrieve operation.
+ +
RetrieveAllMembers(self, group_id, suspended_users=False)
Retrieve all members in the given group.

+Args:
+  group_id: The ID of the group (e.g. us-sales).
+  suspended_users: A boolean; should we include any suspended users in
+    the membership list returned?

+Returns:
+  A list containing the result of the retrieve operation.
+ +
RetrieveAllOwners(self, group_id, suspended_users=False)
Retrieve all owners of the given group.

+Args:
+  group_id: The ID of the group (e.g. us-sales).
+  suspended_users: A boolean; should we include any suspended users in
+    the ownership list returned?

+Returns:
+  A list containing the result of the retrieve operation.
+ +
RetrieveGroup(self, group_id)
Retrieve a group based on its ID.

+Args:
+  group_id: The ID of the group (e.g. us-sales).

+Returns:
+  A dict containing the result of the retrieve operation.
+ +
RetrieveGroups(self, member_id, direct_only=False)
Retrieve all groups that belong to the given member_id.

+Args:
+  member_id: The member's email address (e.g. member@example.com).
+  direct_only: Boolean whether only return groups that this member directly belongs to.

+Returns:
+  A list containing the result of the retrieve operation.
+ +
RetrieveMember(self, member_id, group_id)
Retrieve the given member in the given group.

+Args:
+  member_id: The member's email address (e.g. member@example.com).
+  group_id: The ID of the group (e.g. us-sales).

+Returns:
+  A dict containing the result of the retrieve operation.
+ +
RetrieveOwner(self, owner_email, group_id)
Retrieve the given owner in the given group.

+Args:
+  owner_email: The email address of a group owner.
+  group_id: The ID of the group (e.g. us-sales).

+Returns:
+  A dict containing the result of the retrieve operation.
+ +
UpdateGroup(self, group_id, group_name, description, email_permission)
Update a group's name, description and/or permission.

+Args:
+  group_id: The ID of the group (e.g. us-sales).
+  group_name: The name of the group.
+  description: A description of the group
+  email_permission: The subscription permission of the group.

+Returns:
+  A dict containing the result of the update operation.
+ +
+Methods inherited from gdata.apps.service.PropertyService:
+
AddAllElementsFromAllPages(self, link_finder, func)
retrieve all pages and add all elements
+ +
__init__(self, email=None, password=None, domain=None, source=None, server='apps-apis.google.com', additional_headers=None)
+ +
+Methods inherited from gdata.service.GDataService:
+
AuthSubTokenInfo(self)
Fetches the AuthSub token's metadata from the server.

+Raises:
+  NonAuthSubToken if the user's auth token is not an AuthSub token
+ +
ClientLogin(self, username, password, account_type=None, service=None, auth_service_url=None, source=None, captcha_token=None, captcha_response=None)
Convenience method for authenticating using ProgrammaticLogin. 

+Sets values for email, password, and other optional members.

+Args:
+  username:
+  password:
+  account_type: string (optional)
+  service: string (optional)
+  auth_service_url: string (optional)
+  captcha_token: string (optional)
+  captcha_response: string (optional)
+ +
Delete(self, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=4)
Deletes the entry at the given URI.

+Args:
+  uri: string The URI of the entry to be deleted. Example: 
+       '/base/feeds/items/ITEM-ID'
+  extra_headers: dict (optional) HTTP headers which are to be included.
+                 The client automatically sets the Content-Type and
+                 Authorization headers.
+  url_params: dict (optional) Additional URL parameters to be included
+              in the URI. These are translated into query arguments
+              in the form '&dict_key=value&...'.
+              Example: {'max-results': '250'} becomes &max-results=250
+  escape_params: boolean (optional) If false, the calling code has already
+                 ensured that the query will form a valid URL (all
+                 reserved characters have been escaped). If true, this
+                 method will escape the query and any URL parameters
+                 provided.

+Returns:
+  True if the entry was deleted.
+ +
FetchOAuthRequestToken(self, scopes=None, extra_parameters=None, request_url='https://www.google.com/accounts/OAuthGetRequestToken', oauth_callback=None)
Fetches and sets the OAuth request token and returns it.

+Args:
+  scopes: string or list of string base URL(s) of the service(s) to be
+      accessed. If None, then this method tries to determine the
+      scope(s) from the current service.
+  extra_parameters: dict (optional) key-value pairs as any additional
+      parameters to be included in the URL and signature while making a
+      request for fetching an OAuth request token. All the OAuth parameters
+      are added by default. But if provided through this argument, any
+      default parameters will be overwritten. For e.g. a default parameter
+      oauth_version 1.0 can be overwritten if
+      extra_parameters = {'oauth_version': '2.0'}
+  request_url: Request token URL. The default is
+      'https://www.google.com/accounts/OAuthGetRequestToken'.
+  oauth_callback: str (optional) If set, it is assume the client is using
+      the OAuth v1.0a protocol where the callback url is sent in the
+      request token step.  If the oauth_callback is also set in
+      extra_params, this value will override that one.

+Returns:
+  The fetched request token as a gdata.auth.OAuthToken object.

+Raises:
+  FetchingOAuthRequestTokenFailed if the server responded to the request
+  with an error.
+ +
GenerateAuthSubURL(self, next, scope, secure=False, session=True, domain='default')
Generate a URL at which the user will login and be redirected back.

+Users enter their credentials on a Google login page and a token is sent
+to the URL specified in next. See documentation for AuthSub login at:
+http://code.google.com/apis/accounts/docs/AuthSub.html

+Args:
+  next: string The URL user will be sent to after logging in.
+  scope: string or list of strings. The URLs of the services to be 
+         accessed.
+  secure: boolean (optional) Determines whether or not the issued token
+          is a secure token.
+  session: boolean (optional) Determines whether or not the issued token
+           can be upgraded to a session token.
+ +
GenerateOAuthAuthorizationURL(self, request_token=None, callback_url=None, extra_params=None, include_scopes_in_callback=False, scopes_param_prefix='oauth_token_scope', request_url='https://www.google.com/accounts/OAuthAuthorizeToken')
Generates URL at which user will login to authorize the request token.

+Args:
+  request_token: gdata.auth.OAuthToken (optional) OAuth request token.
+      If not specified, then the current token will be used if it is of
+      type <gdata.auth.OAuthToken>, else it is found by looking in the
+      token_store by looking for a token for the current scope.    
+  callback_url: string (optional) The URL user will be sent to after
+      logging in and granting access.
+  extra_params: dict (optional) Additional parameters to be sent.
+  include_scopes_in_callback: Boolean (default=False) if set to True, and
+      if 'callback_url' is present, the 'callback_url' will be modified to
+      include the scope(s) from the request token as a URL parameter. The
+      key for the 'callback' URL's scope parameter will be
+      OAUTH_SCOPE_URL_PARAM_NAME. The benefit of including the scope URL as
+      a parameter to the 'callback' URL, is that the page which receives
+      the OAuth token will be able to tell which URLs the token grants
+      access to.
+  scopes_param_prefix: string (default='oauth_token_scope') The URL
+      parameter key which maps to the list of valid scopes for the token.
+      This URL parameter will be included in the callback URL along with
+      the scopes of the token as value if include_scopes_in_callback=True.
+  request_url: Authorization URL. The default is
+      'https://www.google.com/accounts/OAuthAuthorizeToken'.
+Returns:
+  A string URL at which the user is required to login.

+Raises:
+  NonOAuthToken if the user's request token is not an OAuth token or if a
+  request token was not available.
+ +
Get(self, uri, extra_headers=None, redirects_remaining=4, encoding='UTF-8', converter=None)
Query the GData API with the given URI

+The uri is the portion of the URI after the server value 
+(ex: www.google.com).

+To perform a query against Google Base, set the server to 
+'base.google.com' and set the uri to '/base/feeds/...', where ... is 
+your query. For example, to find snippets for all digital cameras uri 
+should be set to: '/base/feeds/snippets?bq=digital+camera'

+Args:
+  uri: string The query in the form of a URI. Example:
+       '/base/feeds/snippets?bq=digital+camera'.
+  extra_headers: dictionary (optional) Extra HTTP headers to be included
+                 in the GET request. These headers are in addition to 
+                 those stored in the client's additional_headers property.
+                 The client automatically sets the Content-Type and 
+                 Authorization headers.
+  redirects_remaining: int (optional) Tracks the number of additional
+      redirects this method will allow. If the service object receives
+      a redirect and remaining is 0, it will not follow the redirect. 
+      This was added to avoid infinite redirect loops.
+  encoding: string (optional) The character encoding for the server's
+      response. Default is UTF-8
+  converter: func (optional) A function which will transform
+      the server's results before it is returned. Example: use 
+      GDataFeedFromString to parse the server response as if it
+      were a GDataFeed.

+Returns:
+  If there is no ResultsTransformer specified in the call, a GDataFeed 
+  or GDataEntry depending on which is sent from the server. If the 
+  response is niether a feed or entry and there is no ResultsTransformer,
+  return a string. If there is a ResultsTransformer, the returned value 
+  will be that of the ResultsTransformer function.
+ +
GetAuthSubToken(self)
Returns the AuthSub token as a string.

+If the token is an gdta.auth.AuthSubToken, the Authorization Label
+("AuthSub token") is removed.

+This method examines the current_token to see if it is an AuthSubToken
+or SecureAuthSubToken. If not, it searches the token_store for a token
+which matches the current scope.

+The current scope is determined by the service name string member.

+Returns:
+  If the current_token is set to an AuthSubToken/SecureAuthSubToken,
+  return the token string. If there is no current_token, a token string
+  for a token which matches the service object's default scope is returned.
+  If there are no tokens valid for the scope, returns None.
+ +
GetClientLoginToken(self)
Returns the token string for the current token or a token matching the 
+service scope.

+If the current_token is a ClientLoginToken, the token string for 
+the current token is returned. If the current_token is not set, this method
+searches for a token in the token_store which is valid for the service 
+object's current scope.

+The current scope is determined by the service name string member.
+The token string is the end of the Authorization header, it doesn not
+include the ClientLogin label.
+ +
GetEntry(self, uri, extra_headers=None)
Query the GData API with the given URI and receive an Entry.

+See also documentation for gdata.service.Get

+Args:
+  uri: string The query in the form of a URI. Example:
+       '/base/feeds/snippets?bq=digital+camera'.
+  extra_headers: dictionary (optional) Extra HTTP headers to be included
+                 in the GET request. These headers are in addition to
+                 those stored in the client's additional_headers property.
+                 The client automatically sets the Content-Type and
+                 Authorization headers.

+Returns:
+  A GDataEntry built from the XML in the server's response.
+ +
GetFeed(self, uri, extra_headers=None, converter=<function GDataFeedFromString at 0x7f4fb4739d70>)
Query the GData API with the given URI and receive a Feed.

+See also documentation for gdata.service.Get

+Args:
+  uri: string The query in the form of a URI. Example:
+       '/base/feeds/snippets?bq=digital+camera'.
+  extra_headers: dictionary (optional) Extra HTTP headers to be included
+                 in the GET request. These headers are in addition to
+                 those stored in the client's additional_headers property.
+                 The client automatically sets the Content-Type and
+                 Authorization headers.

+Returns:
+  A GDataFeed built from the XML in the server's response.
+ +
GetGeneratorFromLinkFinder(self, link_finder, func, num_retries=3, delay=1, backoff=2)
returns a generator for pagination
+ +
GetMedia(self, uri, extra_headers=None)
Returns a MediaSource containing media and its metadata from the given
+URI string.
+ +
GetNext(self, feed)
Requests the next 'page' of results in the feed.

+This method uses the feed's next link to request an additional feed
+and uses the class of the feed to convert the results of the GET request.

+Args:
+  feed: atom.Feed or a subclass. The feed should contain a next link and
+      the type of the feed will be applied to the results from the 
+      server. The new feed which is returned will be of the same class
+      as this feed which was passed in.

+Returns:
+  A new feed representing the next set of results in the server's feed.
+  The type of this feed will match that of the feed argument.
+ +
GetOAuthInputParameters(self)
+ +
GetWithRetries(self, uri, extra_headers=None, redirects_remaining=4, encoding='UTF-8', converter=None, num_retries=3, delay=1, backoff=2, logger=None)
This is a wrapper method for Get with retring capability.

+To avoid various errors while retrieving bulk entities by retring
+specified times.

+Note this method relies on the time module and so may not be usable
+by default in Python2.2.

+Args:
+  num_retries: integer The retry count.
+  delay: integer The initial delay for retring.
+  backoff: integer how much the delay should lengthen after each failure.
+  logger: an object which has a debug(str) method to receive logging
+          messages. Recommended that you pass in the logging module.
+Raises:
+  ValueError if any of the parameters has an invalid value.
+  RanOutOfTries on failure after number of retries.
+ +
Post(self, data, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=4, media_source=None, converter=None)
Insert or update  data into a GData service at the given URI.

+Args:
+  data: string, ElementTree._Element, atom.Entry, or gdata.GDataEntry The
+        XML to be sent to the uri.
+  uri: string The location (feed) to which the data should be inserted.
+       Example: '/base/feeds/items'.
+  extra_headers: dict (optional) HTTP headers which are to be included.
+                 The client automatically sets the Content-Type,
+                 Authorization, and Content-Length headers.
+  url_params: dict (optional) Additional URL parameters to be included
+              in the URI. These are translated into query arguments
+              in the form '&dict_key=value&...'.
+              Example: {'max-results': '250'} becomes &max-results=250
+  escape_params: boolean (optional) If false, the calling code has already
+                 ensured that the query will form a valid URL (all
+                 reserved characters have been escaped). If true, this
+                 method will escape the query and any URL parameters
+                 provided.
+  media_source: MediaSource (optional) Container for the media to be sent
+      along with the entry, if provided.
+  converter: func (optional) A function which will be executed on the
+      server's response. Often this is a function like
+      GDataEntryFromString which will parse the body of the server's
+      response and return a GDataEntry.

+Returns:
+  If the post succeeded, this method will return a GDataFeed, GDataEntry,
+  or the results of running converter on the server's result body (if
+  converter was specified).
+ +
PostOrPut(self, verb, data, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=4, media_source=None, converter=None)
Insert data into a GData service at the given URI.

+Args:
+  verb: string, either 'POST' or 'PUT'
+  data: string, ElementTree._Element, atom.Entry, or gdata.GDataEntry The
+        XML to be sent to the uri. 
+  uri: string The location (feed) to which the data should be inserted. 
+       Example: '/base/feeds/items'. 
+  extra_headers: dict (optional) HTTP headers which are to be included. 
+                 The client automatically sets the Content-Type,
+                 Authorization, and Content-Length headers.
+  url_params: dict (optional) Additional URL parameters to be included
+              in the URI. These are translated into query arguments
+              in the form '&dict_key=value&...'.
+              Example: {'max-results': '250'} becomes &max-results=250
+  escape_params: boolean (optional) If false, the calling code has already
+                 ensured that the query will form a valid URL (all
+                 reserved characters have been escaped). If true, this
+                 method will escape the query and any URL parameters
+                 provided.
+  media_source: MediaSource (optional) Container for the media to be sent
+      along with the entry, if provided.
+  converter: func (optional) A function which will be executed on the 
+      server's response. Often this is a function like 
+      GDataEntryFromString which will parse the body of the server's 
+      response and return a GDataEntry.

+Returns:
+  If the post succeeded, this method will return a GDataFeed, GDataEntry,
+  or the results of running converter on the server's result body (if
+  converter was specified).
+ +
ProgrammaticLogin(self, captcha_token=None, captcha_response=None)
Authenticates the user and sets the GData Auth token.

+Login retreives a temporary auth token which must be used with all
+requests to GData services. The auth token is stored in the GData client
+object.

+Login is also used to respond to a captcha challenge. If the user's login
+attempt failed with a CaptchaRequired error, the user can respond by
+calling Login with the captcha token and the answer to the challenge.

+Args:
+  captcha_token: string (optional) The identifier for the captcha challenge
+                 which was presented to the user.
+  captcha_response: string (optional) The user's answer to the captch 
+                    challenge.

+Raises:
+  CaptchaRequired if the login service will require a captcha response
+  BadAuthentication if the login service rejected the username or password
+  Error if the login service responded with a 403 different from the above
+ +
Put(self, data, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=3, media_source=None, converter=None)
Updates an entry at the given URI.

+Args:
+  data: string, ElementTree._Element, or xml_wrapper.ElementWrapper The 
+        XML containing the updated data.
+  uri: string A URI indicating entry to which the update will be applied.
+       Example: '/base/feeds/items/ITEM-ID'
+  extra_headers: dict (optional) HTTP headers which are to be included.
+                 The client automatically sets the Content-Type,
+                 Authorization, and Content-Length headers.
+  url_params: dict (optional) Additional URL parameters to be included
+              in the URI. These are translated into query arguments
+              in the form '&dict_key=value&...'.
+              Example: {'max-results': '250'} becomes &max-results=250
+  escape_params: boolean (optional) If false, the calling code has already
+                 ensured that the query will form a valid URL (all
+                 reserved characters have been escaped). If true, this
+                 method will escape the query and any URL parameters
+                 provided.
+  converter: func (optional) A function which will be executed on the 
+      server's response. Often this is a function like 
+      GDataEntryFromString which will parse the body of the server's 
+      response and return a GDataEntry.

+Returns:
+  If the put succeeded, this method will return a GDataFeed, GDataEntry,
+  or the results of running converter on the server's result body (if
+  converter was specified).
+ +
RevokeAuthSubToken(self)
Revokes an existing AuthSub token.

+Raises:
+  NonAuthSubToken if the user's auth token is not an AuthSub token
+ +
RevokeOAuthToken(self, request_url='https://www.google.com/accounts/AuthSubRevokeToken')
Revokes an existing OAuth token.

+request_url: Token revoke URL. The default is
+      'https://www.google.com/accounts/AuthSubRevokeToken'.
+Raises:
+  NonOAuthToken if the user's auth token is not an OAuth token.
+  RevokingOAuthTokenFailed if request for revoking an OAuth token failed.
+ +
SetAuthSubToken(self, token, scopes=None, rsa_key=None)
Sets the token sent in requests to an AuthSub token.

+Sets the current_token and attempts to add the token to the token_store.

+Only use this method if you have received a token from the AuthSub
+service. The auth token is set automatically when UpgradeToSessionToken()
+is used. See documentation for Google AuthSub here:
+http://code.google.com/apis/accounts/AuthForWebApps.html 

+Args:
+ token: gdata.auth.AuthSubToken or gdata.auth.SecureAuthSubToken or string
+        The token returned by the AuthSub service. If the token is an
+        AuthSubToken or SecureAuthSubToken, the scope information stored in
+        the token is used. If the token is a string, the scopes parameter is
+        used to determine the valid scopes.
+ scopes: list of URLs for which the token is valid. This is only used
+         if the token parameter is a string.
+ rsa_key: string (optional) Private key required for RSA_SHA1 signature
+          method.  This parameter is necessary if the token is a string
+          representing a secure token.
+ +
SetClientLoginToken(self, token, scopes=None)
Sets the token sent in requests to a ClientLogin token.

+This method sets the current_token to a new ClientLoginToken and it 
+also attempts to add the ClientLoginToken to the token_store.

+Only use this method if you have received a token from the ClientLogin
+service. The auth_token is set automatically when ProgrammaticLogin()
+is used. See documentation for Google ClientLogin here:
+http://code.google.com/apis/accounts/docs/AuthForInstalledApps.html

+Args:
+  token: string or instance of a ClientLoginToken.
+ +
SetOAuthInputParameters(self, signature_method, consumer_key, consumer_secret=None, rsa_key=None, two_legged_oauth=False, requestor_id=None)
Sets parameters required for using OAuth authentication mechanism.

+NOTE: Though consumer_secret and rsa_key are optional, either of the two
+is required depending on the value of the signature_method.

+Args:
+  signature_method: class which provides implementation for strategy class
+      oauth.oauth.OAuthSignatureMethod. Signature method to be used for
+      signing each request. Valid implementations are provided as the
+      constants defined by gdata.auth.OAuthSignatureMethod. Currently
+      they are gdata.auth.OAuthSignatureMethod.RSA_SHA1 and
+      gdata.auth.OAuthSignatureMethod.HMAC_SHA1
+  consumer_key: string Domain identifying third_party web application.
+  consumer_secret: string (optional) Secret generated during registration.
+      Required only for HMAC_SHA1 signature method.
+  rsa_key: string (optional) Private key required for RSA_SHA1 signature
+      method.
+  two_legged_oauth: boolean (optional) Enables two-legged OAuth process.
+  requestor_id: string (optional) User email adress to make requests on
+      their behalf.  This parameter should only be set when two_legged_oauth
+      is True.
+ +
SetOAuthToken(self, oauth_token)
Attempts to set the current token and add it to the token store.

+The oauth_token can be any OAuth token i.e. unauthorized request token,
+authorized request token or access token.
+This method also attempts to add the token to the token store.
+Use this method any time you want the current token to point to the
+oauth_token passed. For e.g. call this method with the request token
+you receive from FetchOAuthRequestToken.

+Args:
+  request_token: gdata.auth.OAuthToken OAuth request token.
+ +
UpgradeToOAuthAccessToken(self, authorized_request_token=None, request_url='https://www.google.com/accounts/OAuthGetAccessToken', oauth_version='1.0', oauth_verifier=None)
Upgrades the authorized request token to an access token and returns it

+Args:
+  authorized_request_token: gdata.auth.OAuthToken (optional) OAuth request
+      token. If not specified, then the current token will be used if it is
+      of type <gdata.auth.OAuthToken>, else it is found by looking in the
+      token_store by looking for a token for the current scope.
+  request_url: Access token URL. The default is
+      'https://www.google.com/accounts/OAuthGetAccessToken'.
+  oauth_version: str (default='1.0') oauth_version parameter. All other
+      'oauth_' parameters are added by default. This parameter too, is
+      added by default but here you can override it's value.
+  oauth_verifier: str (optional) If present, it is assumed that the client
+    will use the OAuth v1.0a protocol which includes passing the
+    oauth_verifier (as returned by the SP) in the access token step.

+Returns:
+  Access token
+      
+Raises:
+  NonOAuthToken if the user's authorized request token is not an OAuth
+  token or if an authorized request token was not available.
+  TokenUpgradeFailed if the server responded to the request with an 
+  error.
+ +
UpgradeToSessionToken(self, token=None)
Upgrades a single use AuthSub token to a session token.

+Args:
+  token: A gdata.auth.AuthSubToken or gdata.auth.SecureAuthSubToken
+         (optional) which is good for a single use but can be upgraded
+         to a session token. If no token is passed in, the token
+         is found by looking in the token_store by looking for a token
+         for the current scope.

+Raises:
+  NonAuthSubToken if the user's auth token is not an AuthSub token
+  TokenUpgradeFailed if the server responded to the request with an 
+  error.
+ +
upgrade_to_session_token(self, token)
Upgrades a single use AuthSub token to a session token.

+Args:
+  token: A gdata.auth.AuthSubToken or gdata.auth.SecureAuthSubToken
+         which is good for a single use but can be upgraded to a
+         session token.

+Returns:
+  The upgraded token as a gdata.auth.AuthSubToken object.

+Raises:
+  TokenUpgradeFailed if the server responded to the request with an 
+  error.
+ +
+Data descriptors inherited from gdata.service.GDataService:
+
captcha_token
+
Get the captcha token for a login request.
+
+
captcha_url
+
Get the captcha URL for a login request.
+
+
source
+
The source is the name of the application making the request. 
+It should be in the form company_id-app_name-app_version
+
+
+Data and other attributes inherited from gdata.service.GDataService:
+
auth_token = None
+ +
handler = None
+ +
tokens = None
+ +
+Methods inherited from atom.service.AtomService:
+
UseBasicAuth(self, username, password, for_proxy=False)
Sets an Authenticaiton: Basic HTTP header containing plaintext.

+Deprecated, use use_basic_auth instead.

+The username and password are base64 encoded and added to an HTTP header
+which will be included in each request. Note that your username and 
+password are sent in plaintext.

+Args:
+  username: str
+  password: str
+ +
request(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
+ +
use_basic_auth(self, username, password, scopes=None)
+ +
+Data descriptors inherited from atom.service.AtomService:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
debug
+
If True, HTTP debug information is printed.
+
+
override_token
+
+
+Data and other attributes inherited from atom.service.AtomService:
+
auto_set_current_token = True
+ +
auto_store_tokens = True
+ +
current_token = None
+ +
port = 80
+ +
ssl = False
+ +

+ + + + + +
 
+Data
       API_VER = '2.0'
+BASE_URL = '/a/feeds/group/2.0/%s'
+GROUP_ID_URL = '/a/feeds/group/2.0/%s/%s'
+GROUP_MEMBER_DIRECT_URL = '/a/feeds/group/2.0/%s?member=%s&directOnly=%s'
+GROUP_MEMBER_URL = '/a/feeds/group/2.0/%s?member=%s'
+MEMBER_ID_URL = '/a/feeds/group/2.0/%s/%s/member/%s'
+MEMBER_URL = '/a/feeds/group/2.0/%s/%s/member'
+MEMBER_WITH_SUSPENDED_URL = '/a/feeds/group/2.0/%s/%s/member?includeSuspendedUsers=%s'
+OWNER_ID_URL = '/a/feeds/group/2.0/%s/%s/owner/%s'
+OWNER_URL = '/a/feeds/group/2.0/%s/%s/owner'
+OWNER_WITH_SUSPENDED_URL = '/a/feeds/group/2.0/%s/%s/owner?includeSuspendedUsers=%s'
+PERMISSION_ANYONE = 'Anyone'
+PERMISSION_DOMAIN = 'Domain'
+PERMISSION_MEMBER = 'Member'
+PERMISSION_OWNER = 'Owner'
+__author__ = 'google-apps-apis@googlegroups.com'

+ + + + + +
 
+Author
       google-apps-apis@googlegroups.com
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.apps.html python-gdata-2.0.8/pydocs/gdata.apps.html --- python-gdata-1.2.4/pydocs/gdata.apps.html 2008-10-16 00:01:57.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.apps.html 2009-10-09 23:48:43.000000000 +0100 @@ -17,8 +17,10 @@ Package Contents

       
emailsettings (package)
-
migration (package)
+
adminsettings (package)
+emailsettings (package)
+
groups (package)
+migration (package)
service

@@ -56,6 +58,7 @@
EmailListFeed(gdata.GDataFeed, gdata.LinkFinder)
EmailListRecipientFeed(gdata.GDataFeed, gdata.LinkFinder)
NicknameFeed(gdata.GDataFeed, gdata.LinkFinder) +
PropertyFeed(gdata.GDataFeed, gdata.LinkFinder)
UserFeed(gdata.GDataFeed, gdata.LinkFinder)
@@ -65,6 +68,7 @@
EmailListFeed(gdata.GDataFeed, gdata.LinkFinder)
EmailListRecipientFeed(gdata.GDataFeed, gdata.LinkFinder)
NicknameFeed(gdata.GDataFeed, gdata.LinkFinder) +
PropertyFeed(gdata.GDataFeed, gdata.LinkFinder)
UserFeed(gdata.GDataFeed, gdata.LinkFinder)
@@ -1051,6 +1055,107 @@
+ + + + +
 
+class PropertyFeed(gdata.GDataFeed, gdata.LinkFinder)
   A Google Apps Property feed flavor of an Atom Feed
 
 
Method resolution order:
+
PropertyFeed
+
gdata.GDataFeed
+
atom.Feed
+
atom.Source
+
atom.FeedEntryParent
+
atom.AtomBase
+
atom.ExtensionContainer
+
gdata.LinkFinder
+
atom.LinkFinder
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, author=None, category=None, contributor=None, generator=None, icon=None, atom_id=None, link=None, logo=None, rights=None, subtitle=None, title=None, updated=None, entry=None, total_results=None, start_index=None, items_per_page=None, extension_elements=None, extension_attributes=None, text=None)
+ +
+Data descriptors inherited from gdata.GDataFeed:
+
generator
+
+
id
+
+
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from gdata.LinkFinder:
+
GetAclLink(self)
+ +
GetEditLink(self)
+ +
GetEditMediaLink(self)
The Picasa API mistakenly returns media-edit rather than edit-media, but
+this may change soon.
+ +
GetFeedLink(self)
+ +
GetHtmlLink(self)
Find the first link with rel of alternate and type of text/html

+Returns:
+  An atom.Link or None if no links matched
+ +
GetNextLink(self)
+ +
GetPostLink(self)
Get a link containing the POST target URL.

+The POST target URL is used to insert new entries.

+Returns:
+  A link object with a rel matching the POST type.
+ +
GetPrevLink(self)
+ +
GetSelfLink(self)
Find the first link with rel set to 'self'

+Returns:
+  An atom.Link or none if none of the links had rel equal to 'self'
+ +
+Methods inherited from atom.LinkFinder:
+
GetAlternateLink(self)
+ +
GetLicenseLink(self)
+ +

+ + + @@ -1373,6 +1478,7 @@
NicknameFeedFromString(xml_string)
NicknameFromString(xml_string)
PropertyEntryFromString(xml_string)
+
PropertyFeedFromString(xml_string)
PropertyFromString(xml_string)
QuotaFromString(xml_string)
UserEntryFromString(xml_string)
diff -Nru python-gdata-1.2.4/pydocs/gdata.apps.migration.html python-gdata-2.0.8/pydocs/gdata.apps.migration.html --- python-gdata-1.2.4/pydocs/gdata.apps.migration.html 2008-10-16 00:01:57.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.apps.migration.html 2009-11-25 01:04:14.000000000 +0000 @@ -191,7 +191,7 @@  
 
If the entry is not a BatchEntry, it is converted to a BatchEntry so
-that the batch specific members will be present. 
+that the batch specific members will be present.
 
The id_url_string can be used in place of an entry if the batch operation
applies to a URL. For example query and delete operations require just
@@ -199,7 +199,7 @@ id_url_string is sent instead of an entry, a BatchEntry is created and
added to the feed.
 
-This method also assigns the desired batch id to the entry so that it 
+This method also assigns the desired batch id to the entry so that it
can be referenced in the server's response. If the batch_id_string is
None, this method will assign a batch_id to be the index at which this
entry will be in the feed's entry list.
@@ -207,7 +207,7 @@ Args:
  entry: BatchEntry, atom.Entry, or another Entry flavor (optional) The
      entry which will be sent to the server as part of the batch request.
-      The item must have a valid atom id so that the server knows which 
+      The item must have a valid atom id so that the server knows which
      entry this request references.
  id_url_string: str (optional) The URL of the entry to be acted on. You
      can find this URL in the text member of the atom id for an entry.
@@ -232,17 +232,17 @@
AddDelete(self, url_string=None, entry=None, batch_id_string=None)
Adds a delete request to the batch request feed.
 
This method takes either the url_string which is the atom id of the item
-to be deleted, or the entry itself. The atom id of the entry must be 
+to be deleted, or the entry itself. The atom id of the entry must be
present so that the server knows which entry should be deleted.
 
Args:
  url_string: str (optional) The URL of the entry to be deleted. You can
-     find this URL in the text member of the atom id for an entry. 
+     find this URL in the text member of the atom id for an entry.
  entry: BatchEntry (optional) The entry to be deleted.
  batch_id_string: str (optional)
 
Raises:
-  MissingRequiredParameters: Raised if neither a url_string nor an entry 
+  MissingRequiredParameters: Raised if neither a url_string nor an entry
      are provided in the request.
AddInsert(self, entry, batch_id_string=None)
Add an insert request to the operations in this batch request feed.
@@ -261,7 +261,7 @@
AddQuery(self, url_string=None, entry=None, batch_id_string=None)
Adds a query request to the batch request feed.
 
-This method takes either the url_string which is the query URL 
+This method takes either the url_string which is the query URL
whose results will be added to the result feed. The query URL will
be encapsulated in a BatchEntry, and you may pass in the BatchEntry
with a query URL instead of sending a url_string.
@@ -277,7 +277,7 @@
AddUpdate(self, entry, batch_id_string=None)
Add an update request to the list of batch operations in this feed.
 
Sets the operation type of the entry to insert if it is not already set
-and assigns the desired batch id to the entry so that it can be 
+and assigns the desired batch id to the entry so that it can be
referenced in the server's response.
 
Args:
diff -Nru python-gdata-1.2.4/pydocs/gdata.apps.migration.service.html python-gdata-2.0.8/pydocs/gdata.apps.migration.service.html --- python-gdata-1.2.4/pydocs/gdata.apps.migration.service.html 2009-01-22 19:55:43.000000000 +0000 +++ python-gdata-2.0.8/pydocs/gdata.apps.migration.service.html 2010-02-26 23:16:48.000000000 +0000 @@ -16,7 +16,7 @@
 
class Quota(atom.AtomBase)
   
+Modules
 
-Modules
        -
base64
@@ -112,9 +112,15 @@
DeleteUser(self, user_name)
Delete a user account
-
GetGeneratorForAllUsers(self)
Retrieve a generator for all users in this domain.
+
GetGeneratorForAllEmailLists(self, num_retries=3, delay=1, backoff=2)
Retrieve a generator for all emaillists in this domain.
-
GetGeneratorFromLinkFinder(self, link_finder, func)
returns a generator for pagination
+
GetGeneratorForAllNicknames(self, num_retries=3, delay=1, backoff=2)
Retrieve a generator for all nicknames in this domain.
+ +
GetGeneratorForAllNicknamesOfAUser(self, user_name, num_retries=3, delay=1, backoff=2)
Retrieve a generator for all nicknames of a particular user.
+ +
GetGeneratorForAllRecipients(self, list_name, num_retries=3, delay=1, backoff=2)
Retrieve a generator for all recipients of a particular emaillist.
+ +
GetGeneratorForAllUsers(self, num_retries=3, delay=1, backoff=2)
Retrieve a generator for all users in this domain.
RemoveRecipientFromEmailList(self, recipient, list_name)
Remove recipient from email list.
@@ -142,13 +148,13 @@
RetrieveNicknames(self, user_name)
Retrieve nicknames of the user
-
RetrievePageOfEmailLists(self, start_email_list_name=None)
Retrieve one page of email list
+
RetrievePageOfEmailLists(self, start_email_list_name=None, num_retries=3, delay=1, backoff=2)
Retrieve one page of email list
-
RetrievePageOfNicknames(self, start_nickname=None)
Retrieve one page of nicknames in the domain
+
RetrievePageOfNicknames(self, start_nickname=None, num_retries=3, delay=1, backoff=2)
Retrieve one page of nicknames in the domain
-
RetrievePageOfRecipients(self, list_name, start_recipient=None)
Retrieve one page of recipient of an email list.
+
RetrievePageOfRecipients(self, list_name, start_recipient=None, num_retries=3, delay=1, backoff=2)
Retrieve one page of recipient of an email list.
-
RetrievePageOfUsers(self, start_username=None)
Retrieve one page of users in this domain.
+
RetrievePageOfUsers(self, start_username=None, num_retries=3, delay=1, backoff=2)
Retrieve one page of users in this domain.
RetrieveUser(self, user_name)
Retrieve an user account.
 
@@ -203,7 +209,7 @@ Returns:
  True if the entry was deleted.
-
FetchOAuthRequestToken(self, scopes=None, extra_parameters=None, request_url='https://www.google.com/accounts/OAuthGetRequestToken')
Fetches OAuth request token and returns it.
+
FetchOAuthRequestToken(self, scopes=None, extra_parameters=None, request_url='https://www.google.com/accounts/OAuthGetRequestToken', oauth_callback=None)
Fetches and sets the OAuth request token and returns it.
 
Args:
  scopes: string or list of string base URL(s) of the service(s) to be
@@ -218,10 +224,14 @@       extra_parameters = {'oauth_version': '2.0'}
  request_url: Request token URL. The default is
      'https://www.google.com/accounts/OAuthGetRequestToken'.
-  
+  oauth_callback: str (optional) If set, it is assume the client is using
+      the OAuth v1.0a protocol where the callback url is sent in the
+      request token step.  If the oauth_callback is also set in
+      extra_params, this value will override that one.

Returns:
  The fetched request token as a gdata.auth.OAuthToken object.
-  

Raises:
  FetchingOAuthRequestTokenFailed if the server responded to the request
  with an error.
@@ -353,7 +363,7 @@ Returns:
  A GDataEntry built from the XML in the server's response.
-
GetFeed(self, uri, extra_headers=None, converter=<function GDataFeedFromString at 0x8ef1b8>)
Query the GData API with the given URI and receive a Feed.
+
GetFeed(self, uri, extra_headers=None, converter=<function GDataFeedFromString at 0x7f4f5d053d70>)
Query the GData API with the given URI and receive a Feed.
 
See also documentation for gdata.service.Get
 
@@ -369,6 +379,8 @@ Returns:
  A GDataFeed built from the XML in the server's response.
+
GetGeneratorFromLinkFinder(self, link_finder, func, num_retries=3, delay=1, backoff=2)
returns a generator for pagination
+
GetMedia(self, uri, extra_headers=None)
Returns a MediaSource containing media and its metadata from the given
URI string.
@@ -387,6 +399,26 @@   A new feed representing the next set of results in the server's feed.
  The type of this feed will match that of the feed argument.
+
GetOAuthInputParameters(self)
+ +
GetWithRetries(self, uri, extra_headers=None, redirects_remaining=4, encoding='UTF-8', converter=None, num_retries=3, delay=1, backoff=2, logger=None)
This is a wrapper method for Get with retring capability.

+To avoid various errors while retrieving bulk entities by retring
+specified times.

+Note this method relies on the time module and so may not be usable
+by default in Python2.2.

+Args:
+  num_retries: integer The retry count.
+  delay: integer The initial delay for retring.
+  backoff: integer how much the delay should lengthen after each failure.
+  logger: an object which has a debug(str) method to receive logging
+          messages. Recommended that you pass in the logging module.
+Raises:
+  ValueError if any of the parameters has an invalid value.
+  RanOutOfTries on failure after number of retries.
+
Post(self, data, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=4, media_source=None, converter=None)
Insert or update  data into a GData service at the given URI.
 
Args:
@@ -547,7 +579,7 @@ Args:
  token: string or instance of a ClientLoginToken.
-
SetOAuthInputParameters(self, signature_method, consumer_key, consumer_secret=None, rsa_key=None, two_legged_oauth=False)
Sets parameters required for using OAuth authentication mechanism.
+
SetOAuthInputParameters(self, signature_method, consumer_key, consumer_secret=None, rsa_key=None, two_legged_oauth=False, requestor_id=None)
Sets parameters required for using OAuth authentication mechanism.
 
NOTE: Though consumer_secret and rsa_key are optional, either of the two
is required depending on the value of the signature_method.
@@ -564,7 +596,10 @@       Required only for HMAC_SHA1 signature method.
  rsa_key: string (optional) Private key required for RSA_SHA1 signature
      method.
-  two_legged_oauth: string (default=False) Enables two-legged OAuth process.
+  two_legged_oauth: boolean (optional) Enables two-legged OAuth process.
+  requestor_id: string (optional) User email adress to make requests on
+      their behalf.  This parameter should only be set when two_legged_oauth
+      is True.
SetOAuthToken(self, oauth_token)
Attempts to set the current token and add it to the token store.
 
@@ -578,18 +613,24 @@ Args:
  request_token: gdata.auth.OAuthToken OAuth request token.
-
UpgradeToOAuthAccessToken(self, authorized_request_token=None, request_url='https://www.google.com/accounts/OAuthGetAccessToken', oauth_version='1.0')
Upgrades the authorized request token to an access token.
+
UpgradeToOAuthAccessToken(self, authorized_request_token=None, request_url='https://www.google.com/accounts/OAuthGetAccessToken', oauth_version='1.0', oauth_verifier=None)
Upgrades the authorized request token to an access token and returns it
 
Args:
  authorized_request_token: gdata.auth.OAuthToken (optional) OAuth request
      token. If not specified, then the current token will be used if it is
      of type <gdata.auth.OAuthToken>, else it is found by looking in the
      token_store by looking for a token for the current scope.
+  request_url: Access token URL. The default is
+      'https://www.google.com/accounts/OAuthGetAccessToken'.
  oauth_version: str (default='1.0') oauth_version parameter. All other
      'oauth_' parameters are added by default. This parameter too, is
      added by default but here you can override it's value.
-  request_url: Access token URL. The default is
-      'https://www.google.com/accounts/OAuthGetAccessToken'.
+  oauth_verifier: str (optional) If present, it is assumed that the client
+    will use the OAuth v1.0a protocol which includes passing the
+    oauth_verifier (as returned by the SP) in the access token step.

+Returns:
+  Access token
      
Raises:
  NonOAuthToken if the user's authorized request token is not an OAuth
@@ -659,7 +700,7 @@   username: str
  password: str
-
request(self, operation, url, data=None, headers=None, url_params=None)
+
request(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
use_basic_auth(self, username, password, scopes=None)
diff -Nru python-gdata-1.2.4/pydocs/gdata.apps.service.html python-gdata-2.0.8/pydocs/gdata.apps.service.html --- python-gdata-1.2.4/pydocs/gdata.apps.service.html 2009-01-22 19:55:42.000000000 +0000 +++ python-gdata-2.0.8/pydocs/gdata.apps.service.html 2010-02-26 23:16:48.000000000 +0000 @@ -26,7 +26,7 @@ +Modules
 
-Modules
       
xml.etree.cElementTree
@@ -85,7 +85,7 @@
Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
@@ -109,6 +109,8 @@
__str__(...)
x.__str__() <==> str(x)
+
__unicode__(...)
+
Data descriptors inherited from exceptions.BaseException:
__dict__
@@ -116,7 +118,6 @@
args
message
-
exception message

@@ -151,9 +152,15 @@
DeleteUser(self, user_name)
Delete a user account
-
GetGeneratorForAllUsers(self)
Retrieve a generator for all users in this domain.
+
GetGeneratorForAllEmailLists(self, num_retries=3, delay=1, backoff=2)
Retrieve a generator for all emaillists in this domain.
+ +
GetGeneratorForAllNicknames(self, num_retries=3, delay=1, backoff=2)
Retrieve a generator for all nicknames in this domain.
+ +
GetGeneratorForAllNicknamesOfAUser(self, user_name, num_retries=3, delay=1, backoff=2)
Retrieve a generator for all nicknames of a particular user.
-
GetGeneratorFromLinkFinder(self, link_finder, func)
returns a generator for pagination
+
GetGeneratorForAllRecipients(self, list_name, num_retries=3, delay=1, backoff=2)
Retrieve a generator for all recipients of a particular emaillist.
+ +
GetGeneratorForAllUsers(self, num_retries=3, delay=1, backoff=2)
Retrieve a generator for all users in this domain.
RemoveRecipientFromEmailList(self, recipient, list_name)
Remove recipient from email list.
@@ -181,13 +188,13 @@
RetrieveNicknames(self, user_name)
Retrieve nicknames of the user
-
RetrievePageOfEmailLists(self, start_email_list_name=None)
Retrieve one page of email list
+
RetrievePageOfEmailLists(self, start_email_list_name=None, num_retries=3, delay=1, backoff=2)
Retrieve one page of email list
-
RetrievePageOfNicknames(self, start_nickname=None)
Retrieve one page of nicknames in the domain
+
RetrievePageOfNicknames(self, start_nickname=None, num_retries=3, delay=1, backoff=2)
Retrieve one page of nicknames in the domain
-
RetrievePageOfRecipients(self, list_name, start_recipient=None)
Retrieve one page of recipient of an email list.
+
RetrievePageOfRecipients(self, list_name, start_recipient=None, num_retries=3, delay=1, backoff=2)
Retrieve one page of recipient of an email list.
-
RetrievePageOfUsers(self, start_username=None)
Retrieve one page of users in this domain.
+
RetrievePageOfUsers(self, start_username=None, num_retries=3, delay=1, backoff=2)
Retrieve one page of users in this domain.
RetrieveUser(self, user_name)
Retrieve an user account.
 
@@ -255,7 +262,7 @@ Returns:
  True if the entry was deleted.
-
FetchOAuthRequestToken(self, scopes=None, extra_parameters=None, request_url='https://www.google.com/accounts/OAuthGetRequestToken')
Fetches OAuth request token and returns it.
+
FetchOAuthRequestToken(self, scopes=None, extra_parameters=None, request_url='https://www.google.com/accounts/OAuthGetRequestToken', oauth_callback=None)
Fetches and sets the OAuth request token and returns it.
 
Args:
  scopes: string or list of string base URL(s) of the service(s) to be
@@ -270,10 +277,14 @@       extra_parameters = {'oauth_version': '2.0'}
  request_url: Request token URL. The default is
      'https://www.google.com/accounts/OAuthGetRequestToken'.
-  
+  oauth_callback: str (optional) If set, it is assume the client is using
+      the OAuth v1.0a protocol where the callback url is sent in the
+      request token step.  If the oauth_callback is also set in
+      extra_params, this value will override that one.

Returns:
  The fetched request token as a gdata.auth.OAuthToken object.
-  

Raises:
  FetchingOAuthRequestTokenFailed if the server responded to the request
  with an error.
@@ -405,7 +416,7 @@ Returns:
  A GDataEntry built from the XML in the server's response.
-
GetFeed(self, uri, extra_headers=None, converter=<function GDataFeedFromString at 0x8ef1b8>)
Query the GData API with the given URI and receive a Feed.
+
GetFeed(self, uri, extra_headers=None, converter=<function GDataFeedFromString at 0x7fb9757fcd70>)
Query the GData API with the given URI and receive a Feed.
 
See also documentation for gdata.service.Get
 
@@ -421,6 +432,8 @@ Returns:
  A GDataFeed built from the XML in the server's response.
+
GetGeneratorFromLinkFinder(self, link_finder, func, num_retries=3, delay=1, backoff=2)
returns a generator for pagination
+
GetMedia(self, uri, extra_headers=None)
Returns a MediaSource containing media and its metadata from the given
URI string.
@@ -439,6 +452,26 @@   A new feed representing the next set of results in the server's feed.
  The type of this feed will match that of the feed argument.
+
GetOAuthInputParameters(self)
+ +
GetWithRetries(self, uri, extra_headers=None, redirects_remaining=4, encoding='UTF-8', converter=None, num_retries=3, delay=1, backoff=2, logger=None)
This is a wrapper method for Get with retring capability.

+To avoid various errors while retrieving bulk entities by retring
+specified times.

+Note this method relies on the time module and so may not be usable
+by default in Python2.2.

+Args:
+  num_retries: integer The retry count.
+  delay: integer The initial delay for retring.
+  backoff: integer how much the delay should lengthen after each failure.
+  logger: an object which has a debug(str) method to receive logging
+          messages. Recommended that you pass in the logging module.
+Raises:
+  ValueError if any of the parameters has an invalid value.
+  RanOutOfTries on failure after number of retries.
+
Post(self, data, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=4, media_source=None, converter=None)
Insert or update  data into a GData service at the given URI.
 
Args:
@@ -599,7 +632,7 @@ Args:
  token: string or instance of a ClientLoginToken.
-
SetOAuthInputParameters(self, signature_method, consumer_key, consumer_secret=None, rsa_key=None, two_legged_oauth=False)
Sets parameters required for using OAuth authentication mechanism.
+
SetOAuthInputParameters(self, signature_method, consumer_key, consumer_secret=None, rsa_key=None, two_legged_oauth=False, requestor_id=None)
Sets parameters required for using OAuth authentication mechanism.
 
NOTE: Though consumer_secret and rsa_key are optional, either of the two
is required depending on the value of the signature_method.
@@ -616,7 +649,10 @@       Required only for HMAC_SHA1 signature method.
  rsa_key: string (optional) Private key required for RSA_SHA1 signature
      method.
-  two_legged_oauth: string (default=False) Enables two-legged OAuth process.
+  two_legged_oauth: boolean (optional) Enables two-legged OAuth process.
+  requestor_id: string (optional) User email adress to make requests on
+      their behalf.  This parameter should only be set when two_legged_oauth
+      is True.
SetOAuthToken(self, oauth_token)
Attempts to set the current token and add it to the token store.
 
@@ -630,18 +666,24 @@ Args:
  request_token: gdata.auth.OAuthToken OAuth request token.
-
UpgradeToOAuthAccessToken(self, authorized_request_token=None, request_url='https://www.google.com/accounts/OAuthGetAccessToken', oauth_version='1.0')
Upgrades the authorized request token to an access token.
+
UpgradeToOAuthAccessToken(self, authorized_request_token=None, request_url='https://www.google.com/accounts/OAuthGetAccessToken', oauth_version='1.0', oauth_verifier=None)
Upgrades the authorized request token to an access token and returns it
 
Args:
  authorized_request_token: gdata.auth.OAuthToken (optional) OAuth request
      token. If not specified, then the current token will be used if it is
      of type <gdata.auth.OAuthToken>, else it is found by looking in the
      token_store by looking for a token for the current scope.
+  request_url: Access token URL. The default is
+      'https://www.google.com/accounts/OAuthGetAccessToken'.
  oauth_version: str (default='1.0') oauth_version parameter. All other
      'oauth_' parameters are added by default. This parameter too, is
      added by default but here you can override it's value.
-  request_url: Access token URL. The default is
-      'https://www.google.com/accounts/OAuthGetAccessToken'.
+  oauth_verifier: str (optional) If present, it is assumed that the client
+    will use the OAuth v1.0a protocol which includes passing the
+    oauth_verifier (as returned by the SP) in the access token step.

+Returns:
+  Access token
      
Raises:
  NonOAuthToken if the user's authorized request token is not an OAuth
@@ -711,7 +753,7 @@   username: str
  password: str
-
request(self, operation, url, data=None, headers=None, url_params=None)
+
request(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
use_basic_auth(self, username, password, scopes=None)
@@ -764,7 +806,7 @@
Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
@@ -788,6 +830,8 @@
__str__(...)
x.__str__() <==> str(x)
+
__unicode__(...)
+
Data descriptors inherited from exceptions.BaseException:
__dict__
@@ -795,7 +839,6 @@
args
message
-
exception message

@@ -814,6 +857,8 @@
Methods defined here:
+
AddAllElementsFromAllPages(self, link_finder, func)
retrieve all pages and add all elements
+
__init__(self, email=None, password=None, domain=None, source=None, server='apps-apis.google.com', additional_headers=None)

@@ -857,7 +902,7 @@ Returns:
  True if the entry was deleted. -
FetchOAuthRequestToken(self, scopes=None, extra_parameters=None, request_url='https://www.google.com/accounts/OAuthGetRequestToken')
Fetches OAuth request token and returns it.
+
FetchOAuthRequestToken(self, scopes=None, extra_parameters=None, request_url='https://www.google.com/accounts/OAuthGetRequestToken', oauth_callback=None)
Fetches and sets the OAuth request token and returns it.
 
Args:
  scopes: string or list of string base URL(s) of the service(s) to be
@@ -872,10 +917,14 @@       extra_parameters = {'oauth_version': '2.0'}
  request_url: Request token URL. The default is
      'https://www.google.com/accounts/OAuthGetRequestToken'.
-  
+  oauth_callback: str (optional) If set, it is assume the client is using
+      the OAuth v1.0a protocol where the callback url is sent in the
+      request token step.  If the oauth_callback is also set in
+      extra_params, this value will override that one.

Returns:
  The fetched request token as a gdata.auth.OAuthToken object.
-  

Raises:
  FetchingOAuthRequestTokenFailed if the server responded to the request
  with an error.
@@ -1007,7 +1056,7 @@ Returns:
  A GDataEntry built from the XML in the server's response.
-
GetFeed(self, uri, extra_headers=None, converter=<function GDataFeedFromString at 0x8ef1b8>)
Query the GData API with the given URI and receive a Feed.
+
GetFeed(self, uri, extra_headers=None, converter=<function GDataFeedFromString at 0x7fb9757fcd70>)
Query the GData API with the given URI and receive a Feed.
 
See also documentation for gdata.service.Get
 
@@ -1023,6 +1072,8 @@ Returns:
  A GDataFeed built from the XML in the server's response.
+
GetGeneratorFromLinkFinder(self, link_finder, func, num_retries=3, delay=1, backoff=2)
returns a generator for pagination
+
GetMedia(self, uri, extra_headers=None)
Returns a MediaSource containing media and its metadata from the given
URI string.
@@ -1041,6 +1092,26 @@   A new feed representing the next set of results in the server's feed.
  The type of this feed will match that of the feed argument.
+
GetOAuthInputParameters(self)
+ +
GetWithRetries(self, uri, extra_headers=None, redirects_remaining=4, encoding='UTF-8', converter=None, num_retries=3, delay=1, backoff=2, logger=None)
This is a wrapper method for Get with retring capability.

+To avoid various errors while retrieving bulk entities by retring
+specified times.

+Note this method relies on the time module and so may not be usable
+by default in Python2.2.

+Args:
+  num_retries: integer The retry count.
+  delay: integer The initial delay for retring.
+  backoff: integer how much the delay should lengthen after each failure.
+  logger: an object which has a debug(str) method to receive logging
+          messages. Recommended that you pass in the logging module.
+Raises:
+  ValueError if any of the parameters has an invalid value.
+  RanOutOfTries on failure after number of retries.
+
Post(self, data, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=4, media_source=None, converter=None)
Insert or update  data into a GData service at the given URI.
 
Args:
@@ -1201,7 +1272,7 @@ Args:
  token: string or instance of a ClientLoginToken.
-
SetOAuthInputParameters(self, signature_method, consumer_key, consumer_secret=None, rsa_key=None, two_legged_oauth=False)
Sets parameters required for using OAuth authentication mechanism.
+
SetOAuthInputParameters(self, signature_method, consumer_key, consumer_secret=None, rsa_key=None, two_legged_oauth=False, requestor_id=None)
Sets parameters required for using OAuth authentication mechanism.
 
NOTE: Though consumer_secret and rsa_key are optional, either of the two
is required depending on the value of the signature_method.
@@ -1218,7 +1289,10 @@       Required only for HMAC_SHA1 signature method.
  rsa_key: string (optional) Private key required for RSA_SHA1 signature
      method.
-  two_legged_oauth: string (default=False) Enables two-legged OAuth process.
+  two_legged_oauth: boolean (optional) Enables two-legged OAuth process.
+  requestor_id: string (optional) User email adress to make requests on
+      their behalf.  This parameter should only be set when two_legged_oauth
+      is True.
SetOAuthToken(self, oauth_token)
Attempts to set the current token and add it to the token store.
 
@@ -1232,18 +1306,24 @@ Args:
  request_token: gdata.auth.OAuthToken OAuth request token.
-
UpgradeToOAuthAccessToken(self, authorized_request_token=None, request_url='https://www.google.com/accounts/OAuthGetAccessToken', oauth_version='1.0')
Upgrades the authorized request token to an access token.
+
UpgradeToOAuthAccessToken(self, authorized_request_token=None, request_url='https://www.google.com/accounts/OAuthGetAccessToken', oauth_version='1.0', oauth_verifier=None)
Upgrades the authorized request token to an access token and returns it
 
Args:
  authorized_request_token: gdata.auth.OAuthToken (optional) OAuth request
      token. If not specified, then the current token will be used if it is
      of type <gdata.auth.OAuthToken>, else it is found by looking in the
      token_store by looking for a token for the current scope.
+  request_url: Access token URL. The default is
+      'https://www.google.com/accounts/OAuthGetAccessToken'.
  oauth_version: str (default='1.0') oauth_version parameter. All other
      'oauth_' parameters are added by default. This parameter too, is
      added by default but here you can override it's value.
-  request_url: Access token URL. The default is
-      'https://www.google.com/accounts/OAuthGetAccessToken'.
+  oauth_verifier: str (optional) If present, it is assumed that the client
+    will use the OAuth v1.0a protocol which includes passing the
+    oauth_verifier (as returned by the SP) in the access token step.

+Returns:
+  Access token
      
Raises:
  NonOAuthToken if the user's authorized request token is not an OAuth
@@ -1313,7 +1393,7 @@   username: str
  password: str
-
request(self, operation, url, data=None, headers=None, url_params=None)
+
request(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
use_basic_auth(self, username, password, scopes=None)
diff -Nru python-gdata-1.2.4/pydocs/gdata.auth.html python-gdata-2.0.8/pydocs/gdata.auth.html --- python-gdata-1.2.4/pydocs/gdata.auth.html 2009-01-22 19:55:42.000000000 +0000 +++ python-gdata-2.0.8/pydocs/gdata.auth.html 2009-07-24 02:47:27.000000000 +0100 @@ -9,7 +9,7 @@  
gdata.auth
index
/usr/local/svn/gdata-python-client/src/gdata/auth.py
-

# Copyright (C) 2007, 2008 Google Inc.
+

# Copyright (C) 2007 - 2009 Google Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -26,21 +26,22 @@ +Modules
 
-Modules
       
atom
cgi
gdata.tlslite.utils.cryptomath
+gdata
gdata.tlslite.utils.keyfactory
math
gdata.oauth
-
gdata.oauth.rsa
-random
+gdata.oauth.rsa
+
random
re
-
time
+time
types
-urllib
+
urllib

@@ -184,7 +185,7 @@ Returns:
  object of supertype <oauth.oauth.OAuthSignatureMethod> -
__init__(self, signature_method, consumer_key, consumer_secret=None, rsa_key=None)
Initializes object with parameters required for using OAuth mechanism.
+
__init__(self, signature_method, consumer_key, consumer_secret=None, rsa_key=None, requestor_id=None)
Initializes object with parameters required for using OAuth mechanism.
 
NOTE: Though consumer_secret and rsa_key are optional, either of the two
is required depending on the value of the signature_method.
@@ -195,12 +196,23 @@       signing each request. Valid implementations are provided as the
      constants defined by gdata.auth.OAuthSignatureMethod. Currently
      they are gdata.auth.OAuthSignatureMethod.RSA_SHA1 and
-      gdata.auth.OAuthSignatureMethod.HMAC_SHA1
+      gdata.auth.OAuthSignatureMethod.HMAC_SHA1. Instead of passing in
+      the strategy class, you may pass in a string for 'RSA_SHA1' or 
+      'HMAC_SHA1'. If you plan to use OAuth on App Engine (or another
+      WSGI environment) I recommend specifying signature method using a
+      string (the only options are 'RSA_SHA1' and 'HMAC_SHA1'). In these
+      environments there are sometimes issues with pickling an object in 
+      which a member references a class or function. Storing a string to
+      refer to the signature method mitigates complications when
+      pickling.
  consumer_key: string Domain identifying third_party web application.
  consumer_secret: string (optional) Secret generated during registration.
      Required only for HMAC_SHA1 signature method.
  rsa_key: string (optional) Private key required for RSA_SHA1 signature
-      method.
+      method.
+  requestor_id: string (optional) User email adress to make requests on
+      their behalf.  This parameter should only be set when performing
+      2 legged OAuth requests.

Data descriptors defined here:
@@ -458,7 +470,7 @@  
Returns:
  The HTTP body to send in a request for a client login token. -
GenerateOAuthAccessTokenUrl(authorized_request_token, oauth_input_params, access_token_url='https://www.google.com/accounts/OAuthGetAccessToken', oauth_version='1.0')
Generates URL at which user will login to authorize the request token.
+
GenerateOAuthAccessTokenUrl(authorized_request_token, oauth_input_params, access_token_url='https://www.google.com/accounts/OAuthGetAccessToken', oauth_version='1.0', oauth_verifier=None)
Generates URL at which user will login to authorize the request token.
 
Args:
  authorized_request_token: gdata.auth.OAuthToken OAuth authorized request
@@ -468,6 +480,9 @@       normally 'https://www.google.com/accounts/OAuthGetAccessToken' or
      '/accounts/OAuthGetAccessToken'
  oauth_version: str (default='1.0') oauth_version parameter.
+  oauth_verifier: str (optional) If present, it is assumed that the client
+      will use the OAuth v1.0a protocol which includes passing the
+      oauth_verifier (as returned by the SP) in the access token step.
 
Returns:
  atom.url.Url OAuth access token URL.
diff -Nru python-gdata-1.2.4/pydocs/gdata.base.html python-gdata-2.0.8/pydocs/gdata.base.html --- python-gdata-1.2.4/pydocs/gdata.base.html 2008-10-16 00:01:57.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.base.html 2009-11-25 01:04:14.000000000 +0000 @@ -348,23 +348,23 @@       class.
  category: list (optional) A list of Category instances
  contributor: list (optional) A list on Contributor instances
-  generator: Generator (optional) 
-  icon: Icon (optional) 
+  generator: Generator (optional)
+  icon: Icon (optional)
  id: Id (optional) The entry's Id element
  link: list (optional) A list of Link instances
-  logo: Logo (optional) 
+  logo: Logo (optional)
  rights: Rights (optional) The entry's Rights element
  subtitle: Subtitle (optional) The entry's subtitle element
  title: Title (optional) the entry's title element
  updated: Updated (optional) the entry's updated element
-  entry: list (optional) A list of the Entry instances contained in the 
+  entry: list (optional) A list of the Entry instances contained in the
      feed.
-  text: String (optional) The text contents of the element. This is the 
-      contents of the Entry's XML text node. 
+  text: String (optional) The text contents of the element. This is the
+      contents of the Entry's XML text node.
      (Example: <foo>This is the text</foo>)
  extension_elements: list (optional) A list of ExtensionElement instances
      which are children of this element.
-  extension_attributes: dict (optional) A dictionary of strings which are 
+  extension_attributes: dict (optional) A dictionary of strings which are
      the values for additional XML attributes of this element.

@@ -632,7 +632,7 @@  
 
If the entry is not a BatchEntry, it is converted to a BatchEntry so
-that the batch specific members will be present. 
+that the batch specific members will be present.
 
The id_url_string can be used in place of an entry if the batch operation
applies to a URL. For example query and delete operations require just
@@ -640,7 +640,7 @@ id_url_string is sent instead of an entry, a BatchEntry is created and
added to the feed.
 
-This method also assigns the desired batch id to the entry so that it 
+This method also assigns the desired batch id to the entry so that it
can be referenced in the server's response. If the batch_id_string is
None, this method will assign a batch_id to be the index at which this
entry will be in the feed's entry list.
@@ -648,7 +648,7 @@ Args:
  entry: BatchEntry, atom.Entry, or another Entry flavor (optional) The
      entry which will be sent to the server as part of the batch request.
-      The item must have a valid atom id so that the server knows which 
+      The item must have a valid atom id so that the server knows which
      entry this request references.
  id_url_string: str (optional) The URL of the entry to be acted on. You
      can find this URL in the text member of the atom id for an entry.
@@ -673,17 +673,17 @@
AddDelete(self, url_string=None, entry=None, batch_id_string=None)
Adds a delete request to the batch request feed.
 
This method takes either the url_string which is the atom id of the item
-to be deleted, or the entry itself. The atom id of the entry must be 
+to be deleted, or the entry itself. The atom id of the entry must be
present so that the server knows which entry should be deleted.
 
Args:
  url_string: str (optional) The URL of the entry to be deleted. You can
-     find this URL in the text member of the atom id for an entry. 
+     find this URL in the text member of the atom id for an entry.
  entry: BatchEntry (optional) The entry to be deleted.
  batch_id_string: str (optional)
 
Raises:
-  MissingRequiredParameters: Raised if neither a url_string nor an entry 
+  MissingRequiredParameters: Raised if neither a url_string nor an entry
      are provided in the request.
AddInsert(self, entry, batch_id_string=None)
Add an insert request to the operations in this batch request feed.
@@ -702,7 +702,7 @@
AddQuery(self, url_string=None, entry=None, batch_id_string=None)
Adds a query request to the batch request feed.
 
-This method takes either the url_string which is the query URL 
+This method takes either the url_string which is the query URL
whose results will be added to the result feed. The query URL will
be encapsulated in a BatchEntry, and you may pass in the BatchEntry
with a query URL instead of sending a url_string.
@@ -718,7 +718,7 @@
AddUpdate(self, entry, batch_id_string=None)
Add an update request to the list of batch operations in this feed.
 
Sets the operation type of the entry to insert if it is not already set
-and assigns the desired batch id to the entry so that it can be 
+and assigns the desired batch id to the entry so that it can be
referenced in the server's response.
 
Args:
@@ -952,23 +952,23 @@       class.
  category: list (optional) A list of Category instances
  contributor: list (optional) A list on Contributor instances
-  generator: Generator (optional) 
-  icon: Icon (optional) 
+  generator: Generator (optional)
+  icon: Icon (optional)
  id: Id (optional) The entry's Id element
  link: list (optional) A list of Link instances
-  logo: Logo (optional) 
+  logo: Logo (optional)
  rights: Rights (optional) The entry's Rights element
  subtitle: Subtitle (optional) The entry's subtitle element
  title: Title (optional) the entry's title element
  updated: Updated (optional) the entry's updated element
-  entry: list (optional) A list of the Entry instances contained in the 
+  entry: list (optional) A list of the Entry instances contained in the
      feed.
-  text: String (optional) The text contents of the element. This is the 
-      contents of the Entry's XML text node. 
+  text: String (optional) The text contents of the element. This is the
+      contents of the Entry's XML text node.
      (Example: <foo>This is the text</foo>)
  extension_elements: list (optional) A list of ExtensionElement instances
      which are children of this element.
-  extension_attributes: dict (optional) A dictionary of strings which are 
+  extension_attributes: dict (optional) A dictionary of strings which are
      the values for additional XML attributes of this element.

@@ -1081,23 +1081,23 @@       class.
  category: list (optional) A list of Category instances
  contributor: list (optional) A list on Contributor instances
-  generator: Generator (optional) 
-  icon: Icon (optional) 
+  generator: Generator (optional)
+  icon: Icon (optional)
  id: Id (optional) The entry's Id element
  link: list (optional) A list of Link instances
-  logo: Logo (optional) 
+  logo: Logo (optional)
  rights: Rights (optional) The entry's Rights element
  subtitle: Subtitle (optional) The entry's subtitle element
  title: Title (optional) the entry's title element
  updated: Updated (optional) the entry's updated element
-  entry: list (optional) A list of the Entry instances contained in the 
+  entry: list (optional) A list of the Entry instances contained in the
      feed.
-  text: String (optional) The text contents of the element. This is the 
-      contents of the Entry's XML text node. 
+  text: String (optional) The text contents of the element. This is the
+      contents of the Entry's XML text node.
      (Example: <foo>This is the text</foo>)
  extension_elements: list (optional) A list of ExtensionElement instances
      which are children of this element.
-  extension_attributes: dict (optional) A dictionary of strings which are 
+  extension_attributes: dict (optional) A dictionary of strings which are
      the values for additional XML attributes of this element.

@@ -1357,23 +1357,23 @@       class.
  category: list (optional) A list of Category instances
  contributor: list (optional) A list on Contributor instances
-  generator: Generator (optional) 
-  icon: Icon (optional) 
+  generator: Generator (optional)
+  icon: Icon (optional)
  id: Id (optional) The entry's Id element
  link: list (optional) A list of Link instances
-  logo: Logo (optional) 
+  logo: Logo (optional)
  rights: Rights (optional) The entry's Rights element
  subtitle: Subtitle (optional) The entry's subtitle element
  title: Title (optional) the entry's title element
  updated: Updated (optional) the entry's updated element
-  entry: list (optional) A list of the Entry instances contained in the 
+  entry: list (optional) A list of the Entry instances contained in the
      feed.
-  text: String (optional) The text contents of the element. This is the 
-      contents of the Entry's XML text node. 
+  text: String (optional) The text contents of the element. This is the
+      contents of the Entry's XML text node.
      (Example: <foo>This is the text</foo>)
  extension_elements: list (optional) A list of ExtensionElement instances
      which are children of this element.
-  extension_attributes: dict (optional) A dictionary of strings which are 
+  extension_attributes: dict (optional) A dictionary of strings which are
      the values for additional XML attributes of this element.

diff -Nru python-gdata-1.2.4/pydocs/gdata.base.service.html python-gdata-2.0.8/pydocs/gdata.base.service.html --- python-gdata-1.2.4/pydocs/gdata.base.service.html 2009-01-22 19:55:42.000000000 +0000 +++ python-gdata-2.0.8/pydocs/gdata.base.service.html 2010-02-26 23:16:48.000000000 +0000 @@ -21,7 +21,7 @@
+Modules
 
-Modules
       
atom
@@ -155,8 +155,6 @@
__gt__(...)
x.__gt__(y) <==> x>y
-
__hash__(...)
x.__hash__() <==> hash(x)
-
__iter__(...)
x.__iter__() <==> iter(x)
__le__(...)
x.__le__(y) <==> x<=y
@@ -171,6 +169,8 @@
__setitem__(...)
x.__setitem__(i, y) <==> x[i]=y
+
__sizeof__(...)
D.__sizeof__() -> size of D in memory, in bytes
+
clear(...)
D.clear() -> None.  Remove all items from D.
copy(...)
D.copy() -> a shallow copy of D
@@ -204,9 +204,11 @@
Data and other attributes inherited from __builtin__.dict:
-
__new__ = <built-in method __new__ of type object at 0x72b260>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__hash__ = None
+ +
__new__ = <built-in method __new__ of type object at 0x7569a0>
T.__new__(S, ...) -> a new object with type S, a subtype of T
-
fromkeys = <built-in method fromkeys of type object at 0xd17fc0>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
+
fromkeys = <built-in method fromkeys of type object at 0xce7480>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
v defaults to None.

@@ -233,7 +235,7 @@


Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
@@ -257,6 +259,8 @@
__str__(...)
x.__str__() <==> str(x)
+
__unicode__(...)
+
Data descriptors inherited from exceptions.BaseException:
__dict__
@@ -264,7 +268,6 @@
args
message
-
exception message

@@ -296,7 +299,7 @@ Returns:
  True if the delete succeeded. -
ExecuteBatch(self, batch_feed, converter=<function GBaseItemFeedFromString at 0x938c80>)
Sends a batch request feed to the server.
+
ExecuteBatch(self, batch_feed, converter=<function GBaseItemFeedFromString at 0xa57b18>)
Sends a batch request feed to the server.
 
Args: 
  batch_feed: gdata.BatchFeed A feed containing BatchEntry elements which
@@ -364,7 +367,7 @@
QuerySnippetsFeed(self, uri)
-
UpdateItem(self, item_id, updated_item, url_params=None, escape_params=True, converter=<function GBaseItemFromString at 0x9388c0>)
Updates an existing item.
+
UpdateItem(self, item_id, updated_item, url_params=None, escape_params=True, converter=<function GBaseItemFromString at 0xa57758>)
Updates an existing item.
 
Args:
  item_id: string The ID of the item to be updated.  Example:
@@ -444,7 +447,7 @@ Returns:
  True if the entry was deleted.
-
FetchOAuthRequestToken(self, scopes=None, extra_parameters=None, request_url='https://www.google.com/accounts/OAuthGetRequestToken')
Fetches OAuth request token and returns it.
+
FetchOAuthRequestToken(self, scopes=None, extra_parameters=None, request_url='https://www.google.com/accounts/OAuthGetRequestToken', oauth_callback=None)
Fetches and sets the OAuth request token and returns it.
 
Args:
  scopes: string or list of string base URL(s) of the service(s) to be
@@ -459,10 +462,14 @@       extra_parameters = {'oauth_version': '2.0'}
  request_url: Request token URL. The default is
      'https://www.google.com/accounts/OAuthGetRequestToken'.
-  
+  oauth_callback: str (optional) If set, it is assume the client is using
+      the OAuth v1.0a protocol where the callback url is sent in the
+      request token step.  If the oauth_callback is also set in
+      extra_params, this value will override that one.

Returns:
  The fetched request token as a gdata.auth.OAuthToken object.
-  

Raises:
  FetchingOAuthRequestTokenFailed if the server responded to the request
  with an error.
@@ -594,7 +601,7 @@ Returns:
  A GDataEntry built from the XML in the server's response.
-
GetFeed(self, uri, extra_headers=None, converter=<function GDataFeedFromString at 0x8ef1b8>)
Query the GData API with the given URI and receive a Feed.
+
GetFeed(self, uri, extra_headers=None, converter=<function GDataFeedFromString at 0x7faf939e4d70>)
Query the GData API with the given URI and receive a Feed.
 
See also documentation for gdata.service.Get
 
@@ -610,6 +617,8 @@ Returns:
  A GDataFeed built from the XML in the server's response.
+
GetGeneratorFromLinkFinder(self, link_finder, func, num_retries=3, delay=1, backoff=2)
returns a generator for pagination
+
GetMedia(self, uri, extra_headers=None)
Returns a MediaSource containing media and its metadata from the given
URI string.
@@ -628,6 +637,26 @@   A new feed representing the next set of results in the server's feed.
  The type of this feed will match that of the feed argument.
+
GetOAuthInputParameters(self)
+ +
GetWithRetries(self, uri, extra_headers=None, redirects_remaining=4, encoding='UTF-8', converter=None, num_retries=3, delay=1, backoff=2, logger=None)
This is a wrapper method for Get with retring capability.

+To avoid various errors while retrieving bulk entities by retring
+specified times.

+Note this method relies on the time module and so may not be usable
+by default in Python2.2.

+Args:
+  num_retries: integer The retry count.
+  delay: integer The initial delay for retring.
+  backoff: integer how much the delay should lengthen after each failure.
+  logger: an object which has a debug(str) method to receive logging
+          messages. Recommended that you pass in the logging module.
+Raises:
+  ValueError if any of the parameters has an invalid value.
+  RanOutOfTries on failure after number of retries.
+
Post(self, data, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=4, media_source=None, converter=None)
Insert or update  data into a GData service at the given URI.
 
Args:
@@ -788,7 +817,7 @@ Args:
  token: string or instance of a ClientLoginToken.
-
SetOAuthInputParameters(self, signature_method, consumer_key, consumer_secret=None, rsa_key=None, two_legged_oauth=False)
Sets parameters required for using OAuth authentication mechanism.
+
SetOAuthInputParameters(self, signature_method, consumer_key, consumer_secret=None, rsa_key=None, two_legged_oauth=False, requestor_id=None)
Sets parameters required for using OAuth authentication mechanism.
 
NOTE: Though consumer_secret and rsa_key are optional, either of the two
is required depending on the value of the signature_method.
@@ -805,7 +834,10 @@       Required only for HMAC_SHA1 signature method.
  rsa_key: string (optional) Private key required for RSA_SHA1 signature
      method.
-  two_legged_oauth: string (default=False) Enables two-legged OAuth process.
+  two_legged_oauth: boolean (optional) Enables two-legged OAuth process.
+  requestor_id: string (optional) User email adress to make requests on
+      their behalf.  This parameter should only be set when two_legged_oauth
+      is True.
SetOAuthToken(self, oauth_token)
Attempts to set the current token and add it to the token store.
 
@@ -819,18 +851,24 @@ Args:
  request_token: gdata.auth.OAuthToken OAuth request token.
-
UpgradeToOAuthAccessToken(self, authorized_request_token=None, request_url='https://www.google.com/accounts/OAuthGetAccessToken', oauth_version='1.0')
Upgrades the authorized request token to an access token.
+
UpgradeToOAuthAccessToken(self, authorized_request_token=None, request_url='https://www.google.com/accounts/OAuthGetAccessToken', oauth_version='1.0', oauth_verifier=None)
Upgrades the authorized request token to an access token and returns it
 
Args:
  authorized_request_token: gdata.auth.OAuthToken (optional) OAuth request
      token. If not specified, then the current token will be used if it is
      of type <gdata.auth.OAuthToken>, else it is found by looking in the
      token_store by looking for a token for the current scope.
+  request_url: Access token URL. The default is
+      'https://www.google.com/accounts/OAuthGetAccessToken'.
  oauth_version: str (default='1.0') oauth_version parameter. All other
      'oauth_' parameters are added by default. This parameter too, is
      added by default but here you can override it's value.
-  request_url: Access token URL. The default is
-      'https://www.google.com/accounts/OAuthGetAccessToken'.
+  oauth_verifier: str (optional) If present, it is assumed that the client
+    will use the OAuth v1.0a protocol which includes passing the
+    oauth_verifier (as returned by the SP) in the access token step.

+Returns:
+  Access token
      
Raises:
  NonOAuthToken if the user's authorized request token is not an OAuth
@@ -900,7 +938,7 @@   username: str
  password: str
-
request(self, operation, url, data=None, headers=None, url_params=None)
+
request(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
use_basic_auth(self, username, password, scopes=None)
@@ -954,7 +992,7 @@
Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
@@ -978,6 +1016,8 @@
__str__(...)
x.__str__() <==> str(x)
+
__unicode__(...)
+
Data descriptors inherited from exceptions.BaseException:
__dict__
@@ -985,7 +1025,6 @@
args
message
-
exception message

diff -Nru python-gdata-1.2.4/pydocs/gdata.blogger.client.html python-gdata-2.0.8/pydocs/gdata.blogger.client.html --- python-gdata-1.2.4/pydocs/gdata.blogger.client.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.blogger.client.html 2010-02-26 23:16:48.000000000 +0000 @@ -0,0 +1,620 @@ + + +Python: module gdata.blogger.client + + +
+ +
 
+ 
gdata.blogger.client
index
/usr/local/svn/gdata-python-client/src/gdata/blogger/client.py
+

Contains a client to communicate with the Blogger servers.

+For documentation on the Blogger API, see:
+http://code.google.com/apis/blogger/

+

+ + + + + +
 
+Modules
       
atom
+
gdata
+

+ + + + + +
 
+Classes
       
+
gdata.client.GDClient(atom.client.AtomPubClient) +
+
+
BloggerClient +
+
+
gdata.client.Query(__builtin__.object) +
+
+
Query +
+
+
+

+ + + + + +
 
+class BloggerClient(gdata.client.GDClient)
    
Method resolution order:
+
BloggerClient
+
gdata.client.GDClient
+
atom.client.AtomPubClient
+
__builtin__.object
+
+
+Methods defined here:
+
AddComment = add_comment(self, blog_id, post_id, body, auth_token=None, title_type='text', body_type='html', **kwargs)
+ +
AddPost = add_post(self, blog_id, title, body, labels=None, draft=False, auth_token=None, title_type='text', body_type='html', **kwargs)
+ +
Delete = delete(self, entry_or_uri, auth_token=None, **kwargs)
+ +
GetBlogArchive = get_blog_archive(self, blog_id, auth_token=None, **kwargs)
+ +
GetBlogComments = get_blog_comments(self, blog_id, auth_token=None, desired_class=<class 'gdata.blogger.data.CommentFeed'>, query=None, **kwargs)
+ +
GetBlogs = get_blogs(self, user_id='default', auth_token=None, desired_class=<class 'gdata.blogger.data.BlogFeed'>, **kwargs)
+ +
GetPostComments = get_post_comments(self, blog_id, post_id, auth_token=None, desired_class=<class 'gdata.blogger.data.CommentFeed'>, query=None, **kwargs)
+ +
GetPosts = get_posts(self, blog_id, auth_token=None, desired_class=<class 'gdata.blogger.data.BlogPostFeed'>, query=None, **kwargs)
+ +
Update = update(self, entry, auth_token=None, **kwargs)
+ +
add_comment(self, blog_id, post_id, body, auth_token=None, title_type='text', body_type='html', **kwargs)
+ +
add_post(self, blog_id, title, body, labels=None, draft=False, auth_token=None, title_type='text', body_type='html', **kwargs)
+ +
delete(self, entry_or_uri, auth_token=None, **kwargs)
+ +
get_blog_archive(self, blog_id, auth_token=None, **kwargs)
+ +
get_blog_comments(self, blog_id, auth_token=None, desired_class=<class 'gdata.blogger.data.CommentFeed'>, query=None, **kwargs)
+ +
get_blogs(self, user_id='default', auth_token=None, desired_class=<class 'gdata.blogger.data.BlogFeed'>, **kwargs)
+ +
get_post_comments(self, blog_id, post_id, auth_token=None, desired_class=<class 'gdata.blogger.data.CommentFeed'>, query=None, **kwargs)
+ +
get_posts(self, blog_id, auth_token=None, desired_class=<class 'gdata.blogger.data.BlogPostFeed'>, query=None, **kwargs)
+ +
update(self, entry, auth_token=None, **kwargs)
+ +
+Data and other attributes defined here:
+
api_version = '2'
+ +
auth_scopes = ('http://www.blogger.com/feeds/',)
+ +
auth_service = 'blogger'
+ +
+Methods inherited from gdata.client.GDClient:
+
ClientLogin = client_login(self, email, password, source, service=None, account_type='HOSTED_OR_GOOGLE', auth_url=<atom.http_core.Uri object at 0xb87850>, captcha_token=None, captcha_response=None)
Performs an auth request using the user's email address and password.

+In order to modify user specific data and read user private data, your
+application must be authorized by the user. One way to demonstrage
+authorization is by including a Client Login token in the Authorization
+HTTP header of all requests. This method requests the Client Login token
+by sending the user's email address, password, the name of the
+application, and the service code for the service which will be accessed
+by the application. If the username and password are correct, the server
+will respond with the client login code and a new ClientLoginToken
+object will be set in the client's auth_token member. With the auth_token
+set, future requests from this client will include the Client Login
+token.

+For a list of service names, see 
+http://code.google.com/apis/gdata/faq.html#clientlogin
+For more information on Client Login, see:
+http://code.google.com/apis/accounts/docs/AuthForInstalledApps.html

+Args:
+  email: str The user's email address or username.
+  password: str The password for the user's account.
+  source: str The name of your application. This can be anything you
+          like but should should give some indication of which app is
+          making the request.
+  service: str The service code for the service you would like to access.
+           For example, 'cp' for contacts, 'cl' for calendar. For a full
+           list see
+           http://code.google.com/apis/gdata/faq.html#clientlogin
+           If you are using a subclass of the gdata.client.GDClient, the
+           service will usually be filled in for you so you do not need
+           to specify it. For example see BloggerClient,
+           SpreadsheetsClient, etc.
+  account_type: str (optional) The type of account which is being
+                authenticated. This can be either 'GOOGLE' for a Google
+                Account, 'HOSTED' for a Google Apps Account, or the
+                default 'HOSTED_OR_GOOGLE' which will select the Google
+                Apps Account if the same email address is used for both
+                a Google Account and a Google Apps Account.
+  auth_url: str (optional) The URL to which the login request should be
+            sent.
+  captcha_token: str (optional) If a previous login attempt was reponded
+                 to with a CAPTCHA challenge, this is the token which
+                 identifies the challenge (from the CAPTCHA's URL).
+  captcha_response: str (optional) If a previous login attempt was
+                    reponded to with a CAPTCHA challenge, this is the
+                    response text which was contained in the challenge.

+  Returns:
+    None

+  Raises:
+    A RequestError or one of its suclasses: BadAuthentication,
+    BadAuthenticationServiceURL, ClientLoginFailed,
+    ClientLoginTokenMissing, or CaptchaChallenge
+ +
GetAccessToken = get_access_token(self, request_token, url='https://www.google.com/accounts/OAuthGetAccessToken')
Exchanges an authorized OAuth request token for an access token.

+Contacts the Google OAuth server to upgrade a previously authorized
+request token. Once the request token is upgraded to an access token,
+the access token may be used to access the user's data.

+For more details, see the Google Accounts OAuth documentation:
+http://code.google.com/apis/accounts/docs/OAuth.html#AccessToken

+Args:
+  request_token: An OAuth token which has been authorized by the user.
+  url: (optional) The URL to which the upgrade request should be sent.
+      Defaults to: https://www.google.com/accounts/OAuthAuthorizeToken
+ +
GetEntry = get_entry(self, uri, auth_token=None, converter=None, desired_class=<class 'gdata.data.GDEntry'>, etag=None, **kwargs)
+ +
GetFeed = get_feed(self, uri, auth_token=None, converter=None, desired_class=<class 'gdata.data.GDFeed'>, **kwargs)
+ +
GetNext = get_next(self, feed, auth_token=None, converter=None, desired_class=None, **kwargs)
Fetches the next set of results from the feed.

+When requesting a feed, the number of entries returned is capped at a
+service specific default limit (often 25 entries). You can specify your
+own entry-count cap using the max-results URL query parameter. If there
+are more results than could fit under max-results, the feed will contain
+a next link. This method performs a GET against this next results URL.

+Returns:
+  A new feed object containing the next set of entries in this feed.
+ +
GetOAuthToken = get_oauth_token(self, scopes, next, consumer_key, consumer_secret=None, rsa_private_key=None, url='https://www.google.com/accounts/OAuthGetRequestToken')
Obtains an OAuth request token to allow the user to authorize this app.

+Once this client has a request token, the user can authorize the request
+token by visiting the authorization URL in their browser. After being
+redirected back to this app at the 'next' URL, this app can then exchange
+the authorized request token for an access token.

+For more information see the documentation on Google Accounts with OAuth:
+http://code.google.com/apis/accounts/docs/OAuth.html#AuthProcess

+Args:
+  scopes: list of strings or atom.http_core.Uri objects which specify the
+      URL prefixes which this app will be accessing. For example, to access
+      the Google Calendar API, you would want to use scopes:
+      ['https://www.google.com/calendar/feeds/',
+       'http://www.google.com/calendar/feeds/']
+  next: str or atom.http_core.Uri object, The URL which the user's browser
+      should be sent to after they authorize access to their data. This
+      should be a URL in your application which will read the token
+      information from the URL and upgrade the request token to an access
+      token.
+  consumer_key: str This is the identifier for this application which you
+      should have received when you registered your application with Google
+      to use OAuth.
+  consumer_secret: str (optional) The shared secret between your app and
+      Google which provides evidence that this request is coming from you
+      application and not another app. If present, this libraries assumes
+      you want to use an HMAC signature to verify requests. Keep this data
+      a secret.
+  rsa_private_key: str (optional) The RSA private key which is used to
+      generate a digital signature which is checked by Google's server. If
+      present, this library assumes that you want to use an RSA signature
+      to verify requests. Keep this data a secret.
+  url: The URL to which a request for a token should be made. The default
+      is Google's OAuth request token provider.
+ +
ModifyRequest = modify_request(self, http_request)
Adds or changes request before making the HTTP request.

+This client will add the API version if it is specified.
+Subclasses may override this method to add their own request
+modifications before the request is made.
+ +
Post = post(self, entry, uri, auth_token=None, converter=None, desired_class=None, **kwargs)
+ +
Request = request(self, method=None, uri=None, auth_token=None, http_request=None, converter=None, desired_class=None, redirects_remaining=4, **kwargs)
Make an HTTP request to the server.

+See also documentation for atom.client.AtomPubClient.request.

+If a 302 redirect is sent from the server to the client, this client
+assumes that the redirect is in the form used by the Google Calendar API.
+The same request URI and method will be used as in the original request,
+but a gsessionid URL parameter will be added to the request URI with
+the value provided in the server's 302 redirect response. If the 302
+redirect is not in the format specified by the Google Calendar API, a
+RedirectError will be raised containing the body of the server's
+response.

+The method calls the client's modify_request method to make any changes
+required by the client before the request is made. For example, a
+version 2 client could add a GData-Version: 2 header to the request in
+its modify_request method.

+Args:
+  method: str The HTTP verb for this request, usually 'GET', 'POST',
+          'PUT', or 'DELETE'
+  uri: atom.http_core.Uri, str, or unicode The URL being requested.
+  auth_token: An object which sets the Authorization HTTP header in its
+              modify_request method. Recommended classes include
+              gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken
+              among others.
+  http_request: (optional) atom.http_core.HttpRequest
+  converter: function which takes the body of the response as it's only
+             argument and returns the desired object.
+  desired_class: class descended from atom.core.XmlElement to which a
+                 successful response should be converted. If there is no
+                 converter function specified (converter=None) then the
+                 desired_class will be used in calling the
+                 atom.core.parse function. If neither
+                 the desired_class nor the converter is specified, an
+                 HTTP reponse object will be returned.
+  redirects_remaining: (optional) int, if this number is 0 and the
+                       server sends a 302 redirect, the request method
+                       will raise an exception. This parameter is used in
+                       recursive request calls to avoid an infinite loop.

+Any additional arguments are passed through to
+atom.client.AtomPubClient.request.

+Returns:
+  An HTTP response object (see atom.http_core.HttpResponse for a
+  description of the object's interface) if no converter was
+  specified and no desired_class was specified. If a converter function
+  was provided, the results of calling the converter are returned. If no
+  converter was specified but a desired_class was provided, the response
+  body will be converted to the class using
+  atom.core.parse.
+ +
RequestClientLoginToken = request_client_login_token(self, email, password, source, service=None, account_type='HOSTED_OR_GOOGLE', auth_url=<atom.http_core.Uri object at 0xb87810>, captcha_token=None, captcha_response=None)
+ +
RevokeToken = revoke_token(self, token=None, url=<atom.http_core.Uri object at 0xb878d0>)
Requests that the token be invalidated.

+This method can be used for both AuthSub and OAuth tokens (to invalidate
+a ClientLogin token, the user must change their password).

+Returns:
+  True if the server responded with a 200.

+Raises:
+  A RequestError if the server responds with a non-200 status.
+ +
UpgradeToken = upgrade_token(self, token=None, url=<atom.http_core.Uri object at 0xb87890>)
Asks the Google auth server for a multi-use AuthSub token.

+For details on AuthSub, see:
+http://code.google.com/apis/accounts/docs/AuthSub.html

+Args:
+  token: gdata.gauth.AuthSubToken or gdata.gauth.SecureAuthSubToken
+      (optional) If no token is passed in, the client's auth_token member
+      is used to request the new token. The token object will be modified
+      to contain the new session token string.
+  url: str or atom.http_core.Uri (optional) The URL to which the token
+      upgrade request should be sent. Defaults to:
+      https://www.google.com/accounts/AuthSubSessionToken

+Returns:
+  The upgraded gdata.gauth.AuthSubToken object.
+ +
client_login(self, email, password, source, service=None, account_type='HOSTED_OR_GOOGLE', auth_url=<atom.http_core.Uri object at 0xb87850>, captcha_token=None, captcha_response=None)
Performs an auth request using the user's email address and password.

+In order to modify user specific data and read user private data, your
+application must be authorized by the user. One way to demonstrage
+authorization is by including a Client Login token in the Authorization
+HTTP header of all requests. This method requests the Client Login token
+by sending the user's email address, password, the name of the
+application, and the service code for the service which will be accessed
+by the application. If the username and password are correct, the server
+will respond with the client login code and a new ClientLoginToken
+object will be set in the client's auth_token member. With the auth_token
+set, future requests from this client will include the Client Login
+token.

+For a list of service names, see 
+http://code.google.com/apis/gdata/faq.html#clientlogin
+For more information on Client Login, see:
+http://code.google.com/apis/accounts/docs/AuthForInstalledApps.html

+Args:
+  email: str The user's email address or username.
+  password: str The password for the user's account.
+  source: str The name of your application. This can be anything you
+          like but should should give some indication of which app is
+          making the request.
+  service: str The service code for the service you would like to access.
+           For example, 'cp' for contacts, 'cl' for calendar. For a full
+           list see
+           http://code.google.com/apis/gdata/faq.html#clientlogin
+           If you are using a subclass of the gdata.client.GDClient, the
+           service will usually be filled in for you so you do not need
+           to specify it. For example see BloggerClient,
+           SpreadsheetsClient, etc.
+  account_type: str (optional) The type of account which is being
+                authenticated. This can be either 'GOOGLE' for a Google
+                Account, 'HOSTED' for a Google Apps Account, or the
+                default 'HOSTED_OR_GOOGLE' which will select the Google
+                Apps Account if the same email address is used for both
+                a Google Account and a Google Apps Account.
+  auth_url: str (optional) The URL to which the login request should be
+            sent.
+  captcha_token: str (optional) If a previous login attempt was reponded
+                 to with a CAPTCHA challenge, this is the token which
+                 identifies the challenge (from the CAPTCHA's URL).
+  captcha_response: str (optional) If a previous login attempt was
+                    reponded to with a CAPTCHA challenge, this is the
+                    response text which was contained in the challenge.

+  Returns:
+    None

+  Raises:
+    A RequestError or one of its suclasses: BadAuthentication,
+    BadAuthenticationServiceURL, ClientLoginFailed,
+    ClientLoginTokenMissing, or CaptchaChallenge
+ +
get_access_token(self, request_token, url='https://www.google.com/accounts/OAuthGetAccessToken')
Exchanges an authorized OAuth request token for an access token.

+Contacts the Google OAuth server to upgrade a previously authorized
+request token. Once the request token is upgraded to an access token,
+the access token may be used to access the user's data.

+For more details, see the Google Accounts OAuth documentation:
+http://code.google.com/apis/accounts/docs/OAuth.html#AccessToken

+Args:
+  request_token: An OAuth token which has been authorized by the user.
+  url: (optional) The URL to which the upgrade request should be sent.
+      Defaults to: https://www.google.com/accounts/OAuthAuthorizeToken
+ +
get_entry(self, uri, auth_token=None, converter=None, desired_class=<class 'gdata.data.GDEntry'>, etag=None, **kwargs)
+ +
get_feed(self, uri, auth_token=None, converter=None, desired_class=<class 'gdata.data.GDFeed'>, **kwargs)
+ +
get_next(self, feed, auth_token=None, converter=None, desired_class=None, **kwargs)
Fetches the next set of results from the feed.

+When requesting a feed, the number of entries returned is capped at a
+service specific default limit (often 25 entries). You can specify your
+own entry-count cap using the max-results URL query parameter. If there
+are more results than could fit under max-results, the feed will contain
+a next link. This method performs a GET against this next results URL.

+Returns:
+  A new feed object containing the next set of entries in this feed.
+ +
get_oauth_token(self, scopes, next, consumer_key, consumer_secret=None, rsa_private_key=None, url='https://www.google.com/accounts/OAuthGetRequestToken')
Obtains an OAuth request token to allow the user to authorize this app.

+Once this client has a request token, the user can authorize the request
+token by visiting the authorization URL in their browser. After being
+redirected back to this app at the 'next' URL, this app can then exchange
+the authorized request token for an access token.

+For more information see the documentation on Google Accounts with OAuth:
+http://code.google.com/apis/accounts/docs/OAuth.html#AuthProcess

+Args:
+  scopes: list of strings or atom.http_core.Uri objects which specify the
+      URL prefixes which this app will be accessing. For example, to access
+      the Google Calendar API, you would want to use scopes:
+      ['https://www.google.com/calendar/feeds/',
+       'http://www.google.com/calendar/feeds/']
+  next: str or atom.http_core.Uri object, The URL which the user's browser
+      should be sent to after they authorize access to their data. This
+      should be a URL in your application which will read the token
+      information from the URL and upgrade the request token to an access
+      token.
+  consumer_key: str This is the identifier for this application which you
+      should have received when you registered your application with Google
+      to use OAuth.
+  consumer_secret: str (optional) The shared secret between your app and
+      Google which provides evidence that this request is coming from you
+      application and not another app. If present, this libraries assumes
+      you want to use an HMAC signature to verify requests. Keep this data
+      a secret.
+  rsa_private_key: str (optional) The RSA private key which is used to
+      generate a digital signature which is checked by Google's server. If
+      present, this library assumes that you want to use an RSA signature
+      to verify requests. Keep this data a secret.
+  url: The URL to which a request for a token should be made. The default
+      is Google's OAuth request token provider.
+ +
modify_request(self, http_request)
Adds or changes request before making the HTTP request.

+This client will add the API version if it is specified.
+Subclasses may override this method to add their own request
+modifications before the request is made.
+ +
post(self, entry, uri, auth_token=None, converter=None, desired_class=None, **kwargs)
+ +
request(self, method=None, uri=None, auth_token=None, http_request=None, converter=None, desired_class=None, redirects_remaining=4, **kwargs)
Make an HTTP request to the server.

+See also documentation for atom.client.AtomPubClient.request.

+If a 302 redirect is sent from the server to the client, this client
+assumes that the redirect is in the form used by the Google Calendar API.
+The same request URI and method will be used as in the original request,
+but a gsessionid URL parameter will be added to the request URI with
+the value provided in the server's 302 redirect response. If the 302
+redirect is not in the format specified by the Google Calendar API, a
+RedirectError will be raised containing the body of the server's
+response.

+The method calls the client's modify_request method to make any changes
+required by the client before the request is made. For example, a
+version 2 client could add a GData-Version: 2 header to the request in
+its modify_request method.

+Args:
+  method: str The HTTP verb for this request, usually 'GET', 'POST',
+          'PUT', or 'DELETE'
+  uri: atom.http_core.Uri, str, or unicode The URL being requested.
+  auth_token: An object which sets the Authorization HTTP header in its
+              modify_request method. Recommended classes include
+              gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken
+              among others.
+  http_request: (optional) atom.http_core.HttpRequest
+  converter: function which takes the body of the response as it's only
+             argument and returns the desired object.
+  desired_class: class descended from atom.core.XmlElement to which a
+                 successful response should be converted. If there is no
+                 converter function specified (converter=None) then the
+                 desired_class will be used in calling the
+                 atom.core.parse function. If neither
+                 the desired_class nor the converter is specified, an
+                 HTTP reponse object will be returned.
+  redirects_remaining: (optional) int, if this number is 0 and the
+                       server sends a 302 redirect, the request method
+                       will raise an exception. This parameter is used in
+                       recursive request calls to avoid an infinite loop.

+Any additional arguments are passed through to
+atom.client.AtomPubClient.request.

+Returns:
+  An HTTP response object (see atom.http_core.HttpResponse for a
+  description of the object's interface) if no converter was
+  specified and no desired_class was specified. If a converter function
+  was provided, the results of calling the converter are returned. If no
+  converter was specified but a desired_class was provided, the response
+  body will be converted to the class using
+  atom.core.parse.
+ +
request_client_login_token(self, email, password, source, service=None, account_type='HOSTED_OR_GOOGLE', auth_url=<atom.http_core.Uri object at 0xb87810>, captcha_token=None, captcha_response=None)
+ +
revoke_token(self, token=None, url=<atom.http_core.Uri object at 0xb878d0>)
Requests that the token be invalidated.

+This method can be used for both AuthSub and OAuth tokens (to invalidate
+a ClientLogin token, the user must change their password).

+Returns:
+  True if the server responded with a 200.

+Raises:
+  A RequestError if the server responds with a non-200 status.
+ +
upgrade_token(self, token=None, url=<atom.http_core.Uri object at 0xb87890>)
Asks the Google auth server for a multi-use AuthSub token.

+For details on AuthSub, see:
+http://code.google.com/apis/accounts/docs/AuthSub.html

+Args:
+  token: gdata.gauth.AuthSubToken or gdata.gauth.SecureAuthSubToken
+      (optional) If no token is passed in, the client's auth_token member
+      is used to request the new token. The token object will be modified
+      to contain the new session token string.
+  url: str or atom.http_core.Uri (optional) The URL to which the token
+      upgrade request should be sent. Defaults to:
+      https://www.google.com/accounts/AuthSubSessionToken

+Returns:
+  The upgraded gdata.gauth.AuthSubToken object.
+ +
+Methods inherited from atom.client.AtomPubClient:
+
Get = get(self, uri=None, auth_token=None, http_request=None, **kwargs)
Performs a request using the GET method, returns an HTTP response.
+ +
Put = put(self, uri=None, data=None, auth_token=None, http_request=None, **kwargs)
Sends data using the PUT method, returns an HTTP response.
+ +
__init__(self, http_client=None, host=None, auth_token=None, source=None, **kwargs)
Creates a new AtomPubClient instance.

+Args:
+  source: The name of your application.
+  http_client: An object capable of performing HTTP requests through a
+               request method. This object is used to perform the request
+               when the AtomPubClient's request method is called. Used to
+               allow HTTP requests to be directed to a mock server, or use
+               an alternate library instead of the default of httplib to
+               make HTTP requests.
+  host: str The default host name to use if a host is not specified in the
+        requested URI.
+  auth_token: An object which sets the HTTP Authorization header when its
+              modify_request method is called.
+ +
get(self, uri=None, auth_token=None, http_request=None, **kwargs)
Performs a request using the GET method, returns an HTTP response.
+ +
put(self, uri=None, data=None, auth_token=None, http_request=None, **kwargs)
Sends data using the PUT method, returns an HTTP response.
+ +
+Data descriptors inherited from atom.client.AtomPubClient:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Data and other attributes inherited from atom.client.AtomPubClient:
+
auth_token = None
+ +
host = None
+ +
ssl = False
+ +

+ + + + + +
 
+class Query(gdata.client.Query)
    
Method resolution order:
+
Query
+
gdata.client.Query
+
__builtin__.object
+
+
+Methods defined here:
+
ModifyRequest = modify_request(self, http_request)
+ +
__init__(self, order_by=None, **kwargs)
+ +
modify_request(self, http_request)
+ +
+Data descriptors inherited from gdata.client.Query:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + +
 
+Data
       BLOGS_URL = 'http://www.blogger.com/feeds/%s/blogs'
+BLOG_ARCHIVE_URL = 'http://www.blogger.com/feeds/%s/archive/full'
+BLOG_COMMENTS_URL = 'http://www.blogger.com/feeds/%s/comments/default'
+BLOG_POST_COMMENTS_URL = 'http://www.blogger.com/feeds/%s/%s/comments/default'
+BLOG_POST_URL = 'http://www.blogger.com/feeds/%s/posts/default'
+__author__ = 'j.s@google.com (Jeff Scudder)'

+ + + + + +
 
+Author
       j.s@google.com (Jeff Scudder)
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.blogger.data.html python-gdata-2.0.8/pydocs/gdata.blogger.data.html --- python-gdata-1.2.4/pydocs/gdata.blogger.data.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.blogger.data.html 2010-02-26 23:16:48.000000000 +0000 @@ -0,0 +1,2704 @@ + + +Python: module gdata.blogger.data + + + + +
 
+ 
gdata.blogger.data
index
/usr/local/svn/gdata-python-client/src/gdata/blogger/data.py
+

Data model classes for parsing and generating XML for the Blogger API.

+

+ + + + + +
 
+Modules
       
atom
+
gdata
+
re
+

+ + + + + +
 
+Classes
       
+
atom.core.XmlElement(__builtin__.object) +
+
+
InReplyTo +
+
+
gdata.data.GDEntry(atom.data.Entry, gdata.data.LinkFinder) +
+
+
BloggerEntry +
+
+
Blog +
BlogPost +
Comment +
+
+
+
+
gdata.data.GDFeed(atom.data.Feed, gdata.data.LinkFinder) +
+
+
BlogFeed +
BlogPostFeed +
CommentFeed +
+
+
+

+ + + + + + + +
 
+class Blog(BloggerEntry)
   Represents a blog which belongs to the user.
 
 
Method resolution order:
+
Blog
+
BloggerEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Methods inherited from BloggerEntry:
+
GetBlogId = get_blog_id(self)
Extracts the Blogger id of this blog.

+This method is useful when contructing URLs by hand. The blog id is
+often used in blogger operation URLs. This should not be confused with
+the id member of a BloggerBlog. The id element is the Atom id XML element.
+The blog id which this method returns is a part of the Atom id.

+Returns:
+  The blog's unique id as a string.
+ +
GetBlogName = get_blog_name(self)
Finds the name of this blog as used in the 'alternate' URL.

+An alternate URL is in the form 'http://blogName.blogspot.com/'. For an
+entry representing the above example, this method would return 'blogName'.

+Returns:
+  The blog's URL name component as a string.
+ +
get_blog_id(self)
Extracts the Blogger id of this blog.

+This method is useful when contructing URLs by hand. The blog id is
+often used in blogger operation URLs. This should not be confused with
+the id member of a BloggerBlog. The id element is the Atom id XML element.
+The blog id which this method returns is a part of the Atom id.

+Returns:
+  The blog's unique id as a string.
+ +
get_blog_name(self)
Finds the name of this blog as used in the 'alternate' URL.

+An alternate URL is in the form 'http://blogName.blogspot.com/'. For an
+entry representing the above example, this method would return 'blogName'.

+Returns:
+  The blog's URL name component as a string.
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + +
 
+class BlogFeed(gdata.data.GDFeed)
    
Method resolution order:
+
BlogFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.blogger.data.Blog'>]
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class BlogPost(BloggerEntry)
   Represents a single post on a blog.
 
 
Method resolution order:
+
BlogPost
+
BloggerEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Methods defined here:
+
AddLabel = add_label(self, label)
+ +
GetPostId = get_post_id(self)
+ +
add_label(self, label)
Adds a label to the blog post.

+The label is represented by an Atom category element, so this method
+is shorthand for appending a new atom.Category object.

+Args:
+  label: str
+ +
get_post_id(self)
Extracts the postID string from the entry's Atom id.

+Returns: A string of digits which identify this post within the blog.
+ +
+Methods inherited from BloggerEntry:
+
GetBlogId = get_blog_id(self)
Extracts the Blogger id of this blog.

+This method is useful when contructing URLs by hand. The blog id is
+often used in blogger operation URLs. This should not be confused with
+the id member of a BloggerBlog. The id element is the Atom id XML element.
+The blog id which this method returns is a part of the Atom id.

+Returns:
+  The blog's unique id as a string.
+ +
GetBlogName = get_blog_name(self)
Finds the name of this blog as used in the 'alternate' URL.

+An alternate URL is in the form 'http://blogName.blogspot.com/'. For an
+entry representing the above example, this method would return 'blogName'.

+Returns:
+  The blog's URL name component as a string.
+ +
get_blog_id(self)
Extracts the Blogger id of this blog.

+This method is useful when contructing URLs by hand. The blog id is
+often used in blogger operation URLs. This should not be confused with
+the id member of a BloggerBlog. The id element is the Atom id XML element.
+The blog id which this method returns is a part of the Atom id.

+Returns:
+  The blog's unique id as a string.
+ +
get_blog_name(self)
Finds the name of this blog as used in the 'alternate' URL.

+An alternate URL is in the form 'http://blogName.blogspot.com/'. For an
+entry representing the above example, this method would return 'blogName'.

+Returns:
+  The blog's URL name component as a string.
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + +
 
+class BlogPostFeed(gdata.data.GDFeed)
    
Method resolution order:
+
BlogPostFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.blogger.data.BlogPost'>]
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class BloggerEntry(gdata.data.GDEntry)
   Adds convenience methods inherited by all Blogger entries.
 
 
Method resolution order:
+
BloggerEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Methods defined here:
+
GetBlogId = get_blog_id(self)
+ +
GetBlogName = get_blog_name(self)
+ +
get_blog_id(self)
Extracts the Blogger id of this blog.

+This method is useful when contructing URLs by hand. The blog id is
+often used in blogger operation URLs. This should not be confused with
+the id member of a BloggerBlog. The id element is the Atom id XML element.
+The blog id which this method returns is a part of the Atom id.

+Returns:
+  The blog's unique id as a string.
+ +
get_blog_name(self)
Finds the name of this blog as used in the 'alternate' URL.

+An alternate URL is in the form 'http://blogName.blogspot.com/'. For an
+entry representing the above example, this method would return 'blogName'.

+Returns:
+  The blog's URL name component as a string.
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class Comment(BloggerEntry)
   Blog post comment entry in a feed listing comments on a post or blog.
 
 
Method resolution order:
+
Comment
+
BloggerEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Methods defined here:
+
GetCommentId = get_comment_id(self)
+ +
get_comment_id(self)
Extracts the commentID string from the entry's Atom id.

+Returns: A string of digits which identify this post within the blog.
+ +
+Data and other attributes defined here:
+
in_reply_to = <class 'gdata.blogger.data.InReplyTo'>
+ +
+Methods inherited from BloggerEntry:
+
GetBlogId = get_blog_id(self)
Extracts the Blogger id of this blog.

+This method is useful when contructing URLs by hand. The blog id is
+often used in blogger operation URLs. This should not be confused with
+the id member of a BloggerBlog. The id element is the Atom id XML element.
+The blog id which this method returns is a part of the Atom id.

+Returns:
+  The blog's unique id as a string.
+ +
GetBlogName = get_blog_name(self)
Finds the name of this blog as used in the 'alternate' URL.

+An alternate URL is in the form 'http://blogName.blogspot.com/'. For an
+entry representing the above example, this method would return 'blogName'.

+Returns:
+  The blog's URL name component as a string.
+ +
get_blog_id(self)
Extracts the Blogger id of this blog.

+This method is useful when contructing URLs by hand. The blog id is
+often used in blogger operation URLs. This should not be confused with
+the id member of a BloggerBlog. The id element is the Atom id XML element.
+The blog id which this method returns is a part of the Atom id.

+Returns:
+  The blog's unique id as a string.
+ +
get_blog_name(self)
Finds the name of this blog as used in the 'alternate' URL.

+An alternate URL is in the form 'http://blogName.blogspot.com/'. For an
+entry representing the above example, this method would return 'blogName'.

+Returns:
+  The blog's URL name component as a string.
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + +
 
+class CommentFeed(gdata.data.GDFeed)
    
Method resolution order:
+
CommentFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.blogger.data.Comment'>]
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + +
 
+class InReplyTo(atom.core.XmlElement)
    
Method resolution order:
+
InReplyTo
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
href = 'href'
+ +
ref = 'ref'
+ +
source = 'source'
+ +
type = 'type'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + +
 
+Data
       BLOG_ID2_PATTERN = <_sre.SRE_Pattern object at 0xa4de70>
+BLOG_ID_PATTERN = <_sre.SRE_Pattern object at 0x7fa7ac0a27f0>
+BLOG_NAME_PATTERN = <_sre.SRE_Pattern object at 0x7fa7abf11ea0>
+COMMENT_ID_PATTERN = <_sre.SRE_Pattern object at 0x7fa7aaa5a750>
+LABEL_SCHEME = 'http://www.blogger.com/atom/ns#'
+POST_ID_PATTERN = <_sre.SRE_Pattern object at 0xa50b80>
+THR_TEMPLATE = '{http://purl.org/syndication/thread/1.0}%s'
+__author__ = 'j.s@google.com (Jeff Scudder)'

+ + + + + +
 
+Author
       j.s@google.com (Jeff Scudder)
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.blogger.html python-gdata-2.0.8/pydocs/gdata.blogger.html --- python-gdata-1.2.4/pydocs/gdata.blogger.html 2009-01-22 19:55:43.000000000 +0000 +++ python-gdata-2.0.8/pydocs/gdata.blogger.html 2010-02-26 23:16:48.000000000 +0000 @@ -17,8 +17,10 @@ Package Contents

       
service
-

+

client
+
data
+
service
+

-
 
@@ -95,11 +97,11 @@
Data and other attributes inherited from BloggerEntry:
-
blog_id2_pattern = <_sre.SRE_Pattern object at 0x976110>
+
blog_id2_pattern = <_sre.SRE_Pattern object at 0xa4de70>
-
blog_id_pattern = <_sre.SRE_Pattern object at 0x974bd0>
+
blog_id_pattern = <_sre.SRE_Pattern object at 0x7f8bf133d7f0>
-
blog_name_pattern = <_sre.SRE_Pattern object at 0x8f5030>
+
blog_name_pattern = <_sre.SRE_Pattern object at 0x7f8bf11acea0>

Methods inherited from gdata.GDataEntry:
@@ -114,29 +116,7 @@
Methods inherited from atom.Entry:
-
__init__(self, author=None, category=None, content=None, contributor=None, atom_id=None, link=None, published=None, rights=None, source=None, summary=None, control=None, title=None, updated=None, extension_elements=None, extension_attributes=None, text=None)
Constructor for atom:entry

-Args:
-  author: list A list of Author instances which belong to this class.
-  category: list A list of Category instances
-  content: Content The entry's Content
-  contributor: list A list on Contributor instances
-  id: Id The entry's Id element
-  link: list A list of Link instances
-  published: Published The entry's Published element
-  rights: Rights The entry's Rights element
-  source: Source the entry's source element
-  summary: Summary the entry's summary element
-  title: Title the entry's title element
-  updated: Updated the entry's updated element
-  control: The entry's app:control element which can be used to mark an 
-      entry as a draft which should not be publicly viewable.
-  text: String The text contents of the element. This is the contents
-      of the Entry's XML text node. (Example: <foo>This is the text</foo>)
-  extension_elements: list A list of ExtensionElement instances which are
-      children of this element.
-  extension_attributes: dict A dictionary of strings which are the values
-      for additional XML attributes of this element.
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.

Methods inherited from atom.AtomBase:
@@ -238,23 +218,23 @@       class.
  category: list (optional) A list of Category instances
  contributor: list (optional) A list on Contributor instances
-  generator: Generator (optional) 
-  icon: Icon (optional) 
+  generator: Generator (optional)
+  icon: Icon (optional)
  id: Id (optional) The entry's Id element
  link: list (optional) A list of Link instances
-  logo: Logo (optional) 
+  logo: Logo (optional)
  rights: Rights (optional) The entry's Rights element
  subtitle: Subtitle (optional) The entry's subtitle element
  title: Title (optional) the entry's title element
  updated: Updated (optional) the entry's updated element
-  entry: list (optional) A list of the Entry instances contained in the 
+  entry: list (optional) A list of the Entry instances contained in the
      feed.
-  text: String (optional) The text contents of the element. This is the 
-      contents of the Entry's XML text node. 
+  text: String (optional) The text contents of the element. This is the
+      contents of the Entry's XML text node.
      (Example: <foo>This is the text</foo>)
  extension_elements: list (optional) A list of ExtensionElement instances
      which are children of this element.
-  extension_attributes: dict (optional) A dictionary of strings which are 
+  extension_attributes: dict (optional) A dictionary of strings which are
      the values for additional XML attributes of this element.
@@ -356,7 +336,7 @@
Methods defined here:
-
AddLabel(self, label)
Adds a label to the blog post. 
+
AddLabel(self, label)
Adds a label to the blog post.
 
The label is represented by an Atom category element, so this method
is shorthand for appending a new atom.Category object.
@@ -370,7 +350,7 @@
Data and other attributes defined here:
-
post_id_pattern = <_sre.SRE_Pattern object at 0xb1e5c0>
+
post_id_pattern = <_sre.SRE_Pattern object at 0xa50b80>

Methods inherited from BloggerEntry:
@@ -392,11 +372,11 @@
Data and other attributes inherited from BloggerEntry:
-
blog_id2_pattern = <_sre.SRE_Pattern object at 0x976110>
+
blog_id2_pattern = <_sre.SRE_Pattern object at 0xa4de70>
-
blog_id_pattern = <_sre.SRE_Pattern object at 0x974bd0>
+
blog_id_pattern = <_sre.SRE_Pattern object at 0x7f8bf133d7f0>
-
blog_name_pattern = <_sre.SRE_Pattern object at 0x8f5030>
+
blog_name_pattern = <_sre.SRE_Pattern object at 0x7f8bf11acea0>

Methods inherited from gdata.GDataEntry:
@@ -411,29 +391,7 @@

Methods inherited from atom.Entry:
-
__init__(self, author=None, category=None, content=None, contributor=None, atom_id=None, link=None, published=None, rights=None, source=None, summary=None, control=None, title=None, updated=None, extension_elements=None, extension_attributes=None, text=None)
Constructor for atom:entry

-Args:
-  author: list A list of Author instances which belong to this class.
-  category: list A list of Category instances
-  content: Content The entry's Content
-  contributor: list A list on Contributor instances
-  id: Id The entry's Id element
-  link: list A list of Link instances
-  published: Published The entry's Published element
-  rights: Rights The entry's Rights element
-  source: Source the entry's source element
-  summary: Summary the entry's summary element
-  title: Title the entry's title element
-  updated: Updated the entry's updated element
-  control: The entry's app:control element which can be used to mark an 
-      entry as a draft which should not be publicly viewable.
-  text: String The text contents of the element. This is the contents
-      of the Entry's XML text node. (Example: <foo>This is the text</foo>)
-  extension_elements: list A list of ExtensionElement instances which are
-      children of this element.
-  extension_attributes: dict A dictionary of strings which are the values
-      for additional XML attributes of this element.
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.

Methods inherited from atom.AtomBase:
@@ -535,23 +493,23 @@       class.
  category: list (optional) A list of Category instances
  contributor: list (optional) A list on Contributor instances
-  generator: Generator (optional) 
-  icon: Icon (optional) 
+  generator: Generator (optional)
+  icon: Icon (optional)
  id: Id (optional) The entry's Id element
  link: list (optional) A list of Link instances
-  logo: Logo (optional) 
+  logo: Logo (optional)
  rights: Rights (optional) The entry's Rights element
  subtitle: Subtitle (optional) The entry's subtitle element
  title: Title (optional) the entry's title element
  updated: Updated (optional) the entry's updated element
-  entry: list (optional) A list of the Entry instances contained in the 
+  entry: list (optional) A list of the Entry instances contained in the
      feed.
-  text: String (optional) The text contents of the element. This is the 
-      contents of the Entry's XML text node. 
+  text: String (optional) The text contents of the element. This is the
+      contents of the Entry's XML text node.
      (Example: <foo>This is the text</foo>)
  extension_elements: list (optional) A list of ExtensionElement instances
      which are children of this element.
-  extension_attributes: dict (optional) A dictionary of strings which are 
+  extension_attributes: dict (optional) A dictionary of strings which are
      the values for additional XML attributes of this element.

@@ -670,11 +628,11 @@
Data and other attributes defined here:
-
blog_id2_pattern = <_sre.SRE_Pattern object at 0x976110>
+
blog_id2_pattern = <_sre.SRE_Pattern object at 0xa4de70>
-
blog_id_pattern = <_sre.SRE_Pattern object at 0x974bd0>
+
blog_id_pattern = <_sre.SRE_Pattern object at 0x7f8bf133d7f0>
-
blog_name_pattern = <_sre.SRE_Pattern object at 0x8f5030>
+
blog_name_pattern = <_sre.SRE_Pattern object at 0x7f8bf11acea0>

Methods inherited from gdata.GDataEntry:
@@ -689,29 +647,7 @@
Methods inherited from atom.Entry:
-
__init__(self, author=None, category=None, content=None, contributor=None, atom_id=None, link=None, published=None, rights=None, source=None, summary=None, control=None, title=None, updated=None, extension_elements=None, extension_attributes=None, text=None)
Constructor for atom:entry

-Args:
-  author: list A list of Author instances which belong to this class.
-  category: list A list of Category instances
-  content: Content The entry's Content
-  contributor: list A list on Contributor instances
-  id: Id The entry's Id element
-  link: list A list of Link instances
-  published: Published The entry's Published element
-  rights: Rights The entry's Rights element
-  source: Source the entry's source element
-  summary: Summary the entry's summary element
-  title: Title the entry's title element
-  updated: Updated the entry's updated element
-  control: The entry's app:control element which can be used to mark an 
-      entry as a draft which should not be publicly viewable.
-  text: String The text contents of the element. This is the contents
-      of the Entry's XML text node. (Example: <foo>This is the text</foo>)
-  extension_elements: list A list of ExtensionElement instances which are
-      children of this element.
-  extension_attributes: dict A dictionary of strings which are the values
-      for additional XML attributes of this element.
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.

Methods inherited from atom.AtomBase:
@@ -790,7 +726,7 @@ class CommentEntry(BloggerEntry)
   Describes a blog post comment entry in the feed of a blog post's 
+
Describes a blog post comment entry in the feed of a blog post's
comments.
 
 
Method resolution order:
@@ -815,7 +751,7 @@
Data and other attributes defined here:
-
comment_id_pattern = <_sre.SRE_Pattern object at 0x8a36b0>
+
comment_id_pattern = <_sre.SRE_Pattern object at 0x7f8befcf5750>

Methods inherited from BloggerEntry:
@@ -837,11 +773,11 @@
Data and other attributes inherited from BloggerEntry:
-
blog_id2_pattern = <_sre.SRE_Pattern object at 0x976110>
+
blog_id2_pattern = <_sre.SRE_Pattern object at 0xa4de70>
-
blog_id_pattern = <_sre.SRE_Pattern object at 0x974bd0>
+
blog_id_pattern = <_sre.SRE_Pattern object at 0x7f8bf133d7f0>
-
blog_name_pattern = <_sre.SRE_Pattern object at 0x8f5030>
+
blog_name_pattern = <_sre.SRE_Pattern object at 0x7f8bf11acea0>

Methods inherited from gdata.GDataEntry:
@@ -954,23 +890,23 @@       class.
  category: list (optional) A list of Category instances
  contributor: list (optional) A list on Contributor instances
-  generator: Generator (optional) 
-  icon: Icon (optional) 
+  generator: Generator (optional)
+  icon: Icon (optional)
  id: Id (optional) The entry's Id element
  link: list (optional) A list of Link instances
-  logo: Logo (optional) 
+  logo: Logo (optional)
  rights: Rights (optional) The entry's Rights element
  subtitle: Subtitle (optional) The entry's subtitle element
  title: Title (optional) the entry's title element
  updated: Updated (optional) the entry's updated element
-  entry: list (optional) A list of the Entry instances contained in the 
+  entry: list (optional) A list of the Entry instances contained in the
      feed.
-  text: String (optional) The text contents of the element. This is the 
-      contents of the Entry's XML text node. 
+  text: String (optional) The text contents of the element. This is the
+      contents of the Entry's XML text node.
      (Example: <foo>This is the text</foo>)
  extension_elements: list (optional) A list of ExtensionElement instances
      which are children of this element.
-  extension_attributes: dict (optional) A dictionary of strings which are 
+  extension_attributes: dict (optional) A dictionary of strings which are
      the values for additional XML attributes of this element.

diff -Nru python-gdata-1.2.4/pydocs/gdata.blogger.service.html python-gdata-2.0.8/pydocs/gdata.blogger.service.html --- python-gdata-1.2.4/pydocs/gdata.blogger.service.html 2009-01-22 19:55:42.000000000 +0000 +++ python-gdata-2.0.8/pydocs/gdata.blogger.service.html 2010-02-26 23:16:48.000000000 +0000 @@ -14,7 +14,7 @@ +Modules
 
-Modules
       
gdata
@@ -120,8 +120,6 @@
__gt__(...)
x.__gt__(y) <==> x>y
-
__hash__(...)
x.__hash__() <==> hash(x)
-
__iter__(...)
x.__iter__() <==> iter(x)
__le__(...)
x.__le__(y) <==> x<=y
@@ -136,6 +134,8 @@
__setitem__(...)
x.__setitem__(i, y) <==> x[i]=y
+
__sizeof__(...)
D.__sizeof__() -> size of D in memory, in bytes
+
clear(...)
D.clear() -> None.  Remove all items from D.
copy(...)
D.copy() -> a shallow copy of D
@@ -169,9 +169,11 @@
Data and other attributes inherited from __builtin__.dict:
-
__new__ = <built-in method __new__ of type object at 0x72b260>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__hash__ = None
-
fromkeys = <built-in method fromkeys of type object at 0xd0e020>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
+
__new__ = <built-in method __new__ of type object at 0x7569a0>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+ +
fromkeys = <built-in method fromkeys of type object at 0xcdb540>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
v defaults to None.

@@ -253,8 +255,6 @@

__gt__(...)
x.__gt__(y) <==> x>y
-
__hash__(...)
x.__hash__() <==> hash(x)
-
__iter__(...)
x.__iter__() <==> iter(x)
__le__(...)
x.__le__(y) <==> x<=y
@@ -269,6 +269,8 @@
__setitem__(...)
x.__setitem__(i, y) <==> x[i]=y
+
__sizeof__(...)
D.__sizeof__() -> size of D in memory, in bytes
+
clear(...)
D.clear() -> None.  Remove all items from D.
copy(...)
D.copy() -> a shallow copy of D
@@ -302,9 +304,11 @@
Data and other attributes inherited from __builtin__.dict:
-
__new__ = <built-in method __new__ of type object at 0x72b260>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__hash__ = None
+ +
__new__ = <built-in method __new__ of type object at 0x7569a0>
T.__new__(S, ...) -> a new object with type S, a subtype of T
-
fromkeys = <built-in method fromkeys of type object at 0xd0d980>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
+
fromkeys = <built-in method fromkeys of type object at 0xaadeb0>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
v defaults to None.

@@ -394,8 +398,6 @@

__gt__(...)
x.__gt__(y) <==> x>y
-
__hash__(...)
x.__hash__() <==> hash(x)
-
__iter__(...)
x.__iter__() <==> iter(x)
__le__(...)
x.__le__(y) <==> x<=y
@@ -410,6 +412,8 @@
__setitem__(...)
x.__setitem__(i, y) <==> x[i]=y
+
__sizeof__(...)
D.__sizeof__() -> size of D in memory, in bytes
+
clear(...)
D.clear() -> None.  Remove all items from D.
copy(...)
D.copy() -> a shallow copy of D
@@ -443,9 +447,11 @@
Data and other attributes inherited from __builtin__.dict:
-
__new__ = <built-in method __new__ of type object at 0x72b260>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__hash__ = None
+ +
__new__ = <built-in method __new__ of type object at 0x7569a0>
T.__new__(S, ...) -> a new object with type S, a subtype of T
-
fromkeys = <built-in method fromkeys of type object at 0xb241d0>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
+
fromkeys = <built-in method fromkeys of type object at 0xcda010>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
v defaults to None.

@@ -534,7 +540,7 @@ Returns:
  True if the entry was deleted.
-

FetchOAuthRequestToken(self, scopes=None, extra_parameters=None, request_url='https://www.google.com/accounts/OAuthGetRequestToken')
Fetches OAuth request token and returns it.
+
FetchOAuthRequestToken(self, scopes=None, extra_parameters=None, request_url='https://www.google.com/accounts/OAuthGetRequestToken', oauth_callback=None)
Fetches and sets the OAuth request token and returns it.
 
Args:
  scopes: string or list of string base URL(s) of the service(s) to be
@@ -549,10 +555,14 @@       extra_parameters = {'oauth_version': '2.0'}
  request_url: Request token URL. The default is
      'https://www.google.com/accounts/OAuthGetRequestToken'.
-  
+  oauth_callback: str (optional) If set, it is assume the client is using
+      the OAuth v1.0a protocol where the callback url is sent in the
+      request token step.  If the oauth_callback is also set in
+      extra_params, this value will override that one.

Returns:
  The fetched request token as a gdata.auth.OAuthToken object.
-  

Raises:
  FetchingOAuthRequestTokenFailed if the server responded to the request
  with an error.
@@ -684,7 +694,7 @@ Returns:
  A GDataEntry built from the XML in the server's response.
-
GetFeed(self, uri, extra_headers=None, converter=<function GDataFeedFromString at 0x8ef1b8>)
Query the GData API with the given URI and receive a Feed.
+
GetFeed(self, uri, extra_headers=None, converter=<function GDataFeedFromString at 0x7fc49137bd70>)
Query the GData API with the given URI and receive a Feed.
 
See also documentation for gdata.service.Get
 
@@ -700,6 +710,8 @@ Returns:
  A GDataFeed built from the XML in the server's response.
+
GetGeneratorFromLinkFinder(self, link_finder, func, num_retries=3, delay=1, backoff=2)
returns a generator for pagination
+
GetMedia(self, uri, extra_headers=None)
Returns a MediaSource containing media and its metadata from the given
URI string.
@@ -718,6 +730,26 @@   A new feed representing the next set of results in the server's feed.
  The type of this feed will match that of the feed argument.
+
GetOAuthInputParameters(self)
+ +
GetWithRetries(self, uri, extra_headers=None, redirects_remaining=4, encoding='UTF-8', converter=None, num_retries=3, delay=1, backoff=2, logger=None)
This is a wrapper method for Get with retring capability.

+To avoid various errors while retrieving bulk entities by retring
+specified times.

+Note this method relies on the time module and so may not be usable
+by default in Python2.2.

+Args:
+  num_retries: integer The retry count.
+  delay: integer The initial delay for retring.
+  backoff: integer how much the delay should lengthen after each failure.
+  logger: an object which has a debug(str) method to receive logging
+          messages. Recommended that you pass in the logging module.
+Raises:
+  ValueError if any of the parameters has an invalid value.
+  RanOutOfTries on failure after number of retries.
+
Post(self, data, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=4, media_source=None, converter=None)
Insert or update  data into a GData service at the given URI.
 
Args:
@@ -878,7 +910,7 @@ Args:
  token: string or instance of a ClientLoginToken.
-
SetOAuthInputParameters(self, signature_method, consumer_key, consumer_secret=None, rsa_key=None, two_legged_oauth=False)
Sets parameters required for using OAuth authentication mechanism.
+
SetOAuthInputParameters(self, signature_method, consumer_key, consumer_secret=None, rsa_key=None, two_legged_oauth=False, requestor_id=None)
Sets parameters required for using OAuth authentication mechanism.
 
NOTE: Though consumer_secret and rsa_key are optional, either of the two
is required depending on the value of the signature_method.
@@ -895,7 +927,10 @@       Required only for HMAC_SHA1 signature method.
  rsa_key: string (optional) Private key required for RSA_SHA1 signature
      method.
-  two_legged_oauth: string (default=False) Enables two-legged OAuth process.
+  two_legged_oauth: boolean (optional) Enables two-legged OAuth process.
+  requestor_id: string (optional) User email adress to make requests on
+      their behalf.  This parameter should only be set when two_legged_oauth
+      is True.
SetOAuthToken(self, oauth_token)
Attempts to set the current token and add it to the token store.
 
@@ -909,18 +944,24 @@ Args:
  request_token: gdata.auth.OAuthToken OAuth request token.
-
UpgradeToOAuthAccessToken(self, authorized_request_token=None, request_url='https://www.google.com/accounts/OAuthGetAccessToken', oauth_version='1.0')
Upgrades the authorized request token to an access token.
+
UpgradeToOAuthAccessToken(self, authorized_request_token=None, request_url='https://www.google.com/accounts/OAuthGetAccessToken', oauth_version='1.0', oauth_verifier=None)
Upgrades the authorized request token to an access token and returns it
 
Args:
  authorized_request_token: gdata.auth.OAuthToken (optional) OAuth request
      token. If not specified, then the current token will be used if it is
      of type <gdata.auth.OAuthToken>, else it is found by looking in the
      token_store by looking for a token for the current scope.
+  request_url: Access token URL. The default is
+      'https://www.google.com/accounts/OAuthGetAccessToken'.
  oauth_version: str (default='1.0') oauth_version parameter. All other
      'oauth_' parameters are added by default. This parameter too, is
      added by default but here you can override it's value.
-  request_url: Access token URL. The default is
-      'https://www.google.com/accounts/OAuthGetAccessToken'.
+  oauth_verifier: str (optional) If present, it is assumed that the client
+    will use the OAuth v1.0a protocol which includes passing the
+    oauth_verifier (as returned by the SP) in the access token step.

+Returns:
+  Access token
      
Raises:
  NonOAuthToken if the user's authorized request token is not an OAuth
@@ -990,7 +1031,7 @@   username: str
  password: str
-
request(self, operation, url, data=None, headers=None, url_params=None)
+
request(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
use_basic_auth(self, username, password, scopes=None)
diff -Nru python-gdata-1.2.4/pydocs/gdata.books.data.html python-gdata-2.0.8/pydocs/gdata.books.data.html --- python-gdata-1.2.4/pydocs/gdata.books.data.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.books.data.html 2010-02-26 23:16:48.000000000 +0000 @@ -0,0 +1,2459 @@ + + +Python: module gdata.books.data + + + + +
 
+ 
gdata.books.data
index
/usr/local/svn/gdata-python-client/src/gdata/books/data.py
+

Contains the data classes of the Google Book Search Data API

+

+ + + + + +
 
+Modules
       
atom
+
gdata
+

+ + + + + +
 
+Classes
       
+
atom.core.XmlElement(__builtin__.object) +
+
+
Embeddability +
OpenAccess +
Review +
Viewability +
+
+
gdata.data.BatchFeed(gdata.data.GDFeed) +
+
+
CollectionFeed +
VolumeFeed +
+
+
gdata.data.GDEntry(atom.data.Entry, gdata.data.LinkFinder) +
+
+
CollectionEntry +
VolumeEntry +
+
+
+

+ + + + + + + +
 
+class CollectionEntry(gdata.data.GDEntry)
   Describes an entry in a feed of collections.
 
 
Method resolution order:
+
CollectionEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class CollectionFeed(gdata.data.BatchFeed)
   Describes a Book Search collection feed.
 
 
Method resolution order:
+
CollectionFeed
+
gdata.data.BatchFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.books.data.CollectionEntry'>]
+ +
+Methods inherited from gdata.data.BatchFeed:
+
AddBatchEntry = add_batch_entry(self, entry=None, id_url_string=None, batch_id_string=None, operation_string=None)
Logic for populating members of a BatchEntry and adding to the feed.

+If the entry is not a BatchEntry, it is converted to a BatchEntry so
+that the batch specific members will be present.

+The id_url_string can be used in place of an entry if the batch operation
+applies to a URL. For example query and delete operations require just
+the URL of an entry, no body is sent in the HTTP request. If an
+id_url_string is sent instead of an entry, a BatchEntry is created and
+added to the feed.

+This method also assigns the desired batch id to the entry so that it
+can be referenced in the server's response. If the batch_id_string is
+None, this method will assign a batch_id to be the index at which this
+entry will be in the feed's entry list.

+Args:
+  entry: BatchEntry, atom.data.Entry, or another Entry flavor (optional)
+      The entry which will be sent to the server as part of the batch
+      request. The item must have a valid atom id so that the server
+      knows which entry this request references.
+  id_url_string: str (optional) The URL of the entry to be acted on. You
+      can find this URL in the text member of the atom id for an entry.
+      If an entry is not sent, this id will be used to construct a new
+      BatchEntry which will be added to the request feed.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+  operation_string: str (optional) The desired batch operation which will
+      set the batch_operation.type member of the entry. Options are
+      'insert', 'update', 'delete', and 'query'

+Raises:
+  MissingRequiredParameters: Raised if neither an id_ url_string nor an
+      entry are provided in the request.

+Returns:
+  The added entry.
+ +
AddDelete = add_delete(self, url_string=None, entry=None, batch_id_string=None)
Adds a delete request to the batch request feed.

+This method takes either the url_string which is the atom id of the item
+to be deleted, or the entry itself. The atom id of the entry must be
+present so that the server knows which entry should be deleted.

+Args:
+  url_string: str (optional) The URL of the entry to be deleted. You can
+     find this URL in the text member of the atom id for an entry.
+  entry: BatchEntry (optional) The entry to be deleted.
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters: Raised if neither a url_string nor an entry
+      are provided in the request.
+ +
AddInsert = add_insert(self, entry, batch_id_string=None)
Add an insert request to the operations in this batch request feed.

+If the entry doesn't yet have an operation or a batch id, these will
+be set to the insert operation and a batch_id specified as a parameter.

+Args:
+  entry: BatchEntry The entry which will be sent in the batch feed as an
+      insert request.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+ +
AddQuery = add_query(self, url_string=None, entry=None, batch_id_string=None)
Adds a query request to the batch request feed.

+This method takes either the url_string which is the query URL
+whose results will be added to the result feed. The query URL will
+be encapsulated in a BatchEntry, and you may pass in the BatchEntry
+with a query URL instead of sending a url_string.

+Args:
+  url_string: str (optional)
+  entry: BatchEntry (optional)
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters
+ +
AddUpdate = add_update(self, entry, batch_id_string=None)
Add an update request to the list of batch operations in this feed.

+Sets the operation type of the entry to insert if it is not already set
+and assigns the desired batch id to the entry so that it can be
+referenced in the server's response.

+Args:
+  entry: BatchEntry The entry which will be sent to the server as an
+      update (HTTP PUT) request. The item must have a valid atom id
+      so that the server knows which entry to replace.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. See also comments for AddInsert.
+ +
FindBatchLink = find_batch_link(self)
+ +
add_batch_entry(self, entry=None, id_url_string=None, batch_id_string=None, operation_string=None)
Logic for populating members of a BatchEntry and adding to the feed.

+If the entry is not a BatchEntry, it is converted to a BatchEntry so
+that the batch specific members will be present.

+The id_url_string can be used in place of an entry if the batch operation
+applies to a URL. For example query and delete operations require just
+the URL of an entry, no body is sent in the HTTP request. If an
+id_url_string is sent instead of an entry, a BatchEntry is created and
+added to the feed.

+This method also assigns the desired batch id to the entry so that it
+can be referenced in the server's response. If the batch_id_string is
+None, this method will assign a batch_id to be the index at which this
+entry will be in the feed's entry list.

+Args:
+  entry: BatchEntry, atom.data.Entry, or another Entry flavor (optional)
+      The entry which will be sent to the server as part of the batch
+      request. The item must have a valid atom id so that the server
+      knows which entry this request references.
+  id_url_string: str (optional) The URL of the entry to be acted on. You
+      can find this URL in the text member of the atom id for an entry.
+      If an entry is not sent, this id will be used to construct a new
+      BatchEntry which will be added to the request feed.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+  operation_string: str (optional) The desired batch operation which will
+      set the batch_operation.type member of the entry. Options are
+      'insert', 'update', 'delete', and 'query'

+Raises:
+  MissingRequiredParameters: Raised if neither an id_ url_string nor an
+      entry are provided in the request.

+Returns:
+  The added entry.
+ +
add_delete(self, url_string=None, entry=None, batch_id_string=None)
Adds a delete request to the batch request feed.

+This method takes either the url_string which is the atom id of the item
+to be deleted, or the entry itself. The atom id of the entry must be
+present so that the server knows which entry should be deleted.

+Args:
+  url_string: str (optional) The URL of the entry to be deleted. You can
+     find this URL in the text member of the atom id for an entry.
+  entry: BatchEntry (optional) The entry to be deleted.
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters: Raised if neither a url_string nor an entry
+      are provided in the request.
+ +
add_insert(self, entry, batch_id_string=None)
Add an insert request to the operations in this batch request feed.

+If the entry doesn't yet have an operation or a batch id, these will
+be set to the insert operation and a batch_id specified as a parameter.

+Args:
+  entry: BatchEntry The entry which will be sent in the batch feed as an
+      insert request.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+ +
add_query(self, url_string=None, entry=None, batch_id_string=None)
Adds a query request to the batch request feed.

+This method takes either the url_string which is the query URL
+whose results will be added to the result feed. The query URL will
+be encapsulated in a BatchEntry, and you may pass in the BatchEntry
+with a query URL instead of sending a url_string.

+Args:
+  url_string: str (optional)
+  entry: BatchEntry (optional)
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters
+ +
add_update(self, entry, batch_id_string=None)
Add an update request to the list of batch operations in this feed.

+Sets the operation type of the entry to insert if it is not already set
+and assigns the desired batch id to the entry so that it can be
+referenced in the server's response.

+Args:
+  entry: BatchEntry The entry which will be sent to the server as an
+      update (HTTP PUT) request. The item must have a valid atom id
+      so that the server knows which entry to replace.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. See also comments for AddInsert.
+ +
find_batch_link(self)
+ +
+Data and other attributes inherited from gdata.data.BatchFeed:
+
interrupted = <class 'gdata.data.BatchInterrupted'>
The batch:interrupted element sent if batch request was interrupted.

+Only appears in a feed if some of the batch entries could not be processed.
+See: http://code.google.com/apis/gdata/batch.html#Handling_Errors
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class Embeddability(atom.core.XmlElement)
   Describes an embeddability.
 
 
Method resolution order:
+
Embeddability
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class OpenAccess(atom.core.XmlElement)
   Describes an open access.
 
 
Method resolution order:
+
OpenAccess
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Review(atom.core.XmlElement)
   User-provided review.
 
 
Method resolution order:
+
Review
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
lang = 'lang'
+ +
type = 'type'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Viewability(atom.core.XmlElement)
   Describes a viewability.
 
 
Method resolution order:
+
Viewability
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class VolumeEntry(gdata.data.GDEntry)
   Describes an entry in a feed of Book Search volumes.
 
 
Method resolution order:
+
VolumeEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
comments = <class 'gdata.data.Comments'>
The gd:comments element.

+Contains a comments feed for the enclosing entry (such as a calendar event).
+ +
creator = [<class 'gdata.dublincore.data.Creator'>]
+ +
date = [<class 'gdata.dublincore.data.Date'>]
+ +
dc_title = [<class 'gdata.dublincore.data.Title'>]
+ +
description = [<class 'gdata.dublincore.data.Description'>]
+ +
embeddability = <class 'gdata.books.data.Embeddability'>
Describes an embeddability.
+ +
format = [<class 'gdata.dublincore.data.Format'>]
+ +
identifier = [<class 'gdata.dublincore.data.Identifier'>]
+ +
language = [<class 'gdata.dublincore.data.Language'>]
+ +
open_access = <class 'gdata.books.data.OpenAccess'>
Describes an open access.
+ +
publisher = [<class 'gdata.dublincore.data.Publisher'>]
+ +
rating = <class 'gdata.data.Rating'>
The gd:rating element.

+Represents a numeric rating of the enclosing entity, such as a
+comment. Each rating supplies its own scale, although it may be
+normalized by a service; for example, some services might convert all
+ratings to a scale from 1 to 5.
+ +
review = <class 'gdata.books.data.Review'>
User-provided review.
+ +
subject = [<class 'gdata.dublincore.data.Subject'>]
+ +
viewability = <class 'gdata.books.data.Viewability'>
Describes a viewability.
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class VolumeFeed(gdata.data.BatchFeed)
   Describes a Book Search volume feed.
 
 
Method resolution order:
+
VolumeFeed
+
gdata.data.BatchFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.books.data.VolumeEntry'>]
+ +
+Methods inherited from gdata.data.BatchFeed:
+
AddBatchEntry = add_batch_entry(self, entry=None, id_url_string=None, batch_id_string=None, operation_string=None)
Logic for populating members of a BatchEntry and adding to the feed.

+If the entry is not a BatchEntry, it is converted to a BatchEntry so
+that the batch specific members will be present.

+The id_url_string can be used in place of an entry if the batch operation
+applies to a URL. For example query and delete operations require just
+the URL of an entry, no body is sent in the HTTP request. If an
+id_url_string is sent instead of an entry, a BatchEntry is created and
+added to the feed.

+This method also assigns the desired batch id to the entry so that it
+can be referenced in the server's response. If the batch_id_string is
+None, this method will assign a batch_id to be the index at which this
+entry will be in the feed's entry list.

+Args:
+  entry: BatchEntry, atom.data.Entry, or another Entry flavor (optional)
+      The entry which will be sent to the server as part of the batch
+      request. The item must have a valid atom id so that the server
+      knows which entry this request references.
+  id_url_string: str (optional) The URL of the entry to be acted on. You
+      can find this URL in the text member of the atom id for an entry.
+      If an entry is not sent, this id will be used to construct a new
+      BatchEntry which will be added to the request feed.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+  operation_string: str (optional) The desired batch operation which will
+      set the batch_operation.type member of the entry. Options are
+      'insert', 'update', 'delete', and 'query'

+Raises:
+  MissingRequiredParameters: Raised if neither an id_ url_string nor an
+      entry are provided in the request.

+Returns:
+  The added entry.
+ +
AddDelete = add_delete(self, url_string=None, entry=None, batch_id_string=None)
Adds a delete request to the batch request feed.

+This method takes either the url_string which is the atom id of the item
+to be deleted, or the entry itself. The atom id of the entry must be
+present so that the server knows which entry should be deleted.

+Args:
+  url_string: str (optional) The URL of the entry to be deleted. You can
+     find this URL in the text member of the atom id for an entry.
+  entry: BatchEntry (optional) The entry to be deleted.
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters: Raised if neither a url_string nor an entry
+      are provided in the request.
+ +
AddInsert = add_insert(self, entry, batch_id_string=None)
Add an insert request to the operations in this batch request feed.

+If the entry doesn't yet have an operation or a batch id, these will
+be set to the insert operation and a batch_id specified as a parameter.

+Args:
+  entry: BatchEntry The entry which will be sent in the batch feed as an
+      insert request.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+ +
AddQuery = add_query(self, url_string=None, entry=None, batch_id_string=None)
Adds a query request to the batch request feed.

+This method takes either the url_string which is the query URL
+whose results will be added to the result feed. The query URL will
+be encapsulated in a BatchEntry, and you may pass in the BatchEntry
+with a query URL instead of sending a url_string.

+Args:
+  url_string: str (optional)
+  entry: BatchEntry (optional)
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters
+ +
AddUpdate = add_update(self, entry, batch_id_string=None)
Add an update request to the list of batch operations in this feed.

+Sets the operation type of the entry to insert if it is not already set
+and assigns the desired batch id to the entry so that it can be
+referenced in the server's response.

+Args:
+  entry: BatchEntry The entry which will be sent to the server as an
+      update (HTTP PUT) request. The item must have a valid atom id
+      so that the server knows which entry to replace.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. See also comments for AddInsert.
+ +
FindBatchLink = find_batch_link(self)
+ +
add_batch_entry(self, entry=None, id_url_string=None, batch_id_string=None, operation_string=None)
Logic for populating members of a BatchEntry and adding to the feed.

+If the entry is not a BatchEntry, it is converted to a BatchEntry so
+that the batch specific members will be present.

+The id_url_string can be used in place of an entry if the batch operation
+applies to a URL. For example query and delete operations require just
+the URL of an entry, no body is sent in the HTTP request. If an
+id_url_string is sent instead of an entry, a BatchEntry is created and
+added to the feed.

+This method also assigns the desired batch id to the entry so that it
+can be referenced in the server's response. If the batch_id_string is
+None, this method will assign a batch_id to be the index at which this
+entry will be in the feed's entry list.

+Args:
+  entry: BatchEntry, atom.data.Entry, or another Entry flavor (optional)
+      The entry which will be sent to the server as part of the batch
+      request. The item must have a valid atom id so that the server
+      knows which entry this request references.
+  id_url_string: str (optional) The URL of the entry to be acted on. You
+      can find this URL in the text member of the atom id for an entry.
+      If an entry is not sent, this id will be used to construct a new
+      BatchEntry which will be added to the request feed.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+  operation_string: str (optional) The desired batch operation which will
+      set the batch_operation.type member of the entry. Options are
+      'insert', 'update', 'delete', and 'query'

+Raises:
+  MissingRequiredParameters: Raised if neither an id_ url_string nor an
+      entry are provided in the request.

+Returns:
+  The added entry.
+ +
add_delete(self, url_string=None, entry=None, batch_id_string=None)
Adds a delete request to the batch request feed.

+This method takes either the url_string which is the atom id of the item
+to be deleted, or the entry itself. The atom id of the entry must be
+present so that the server knows which entry should be deleted.

+Args:
+  url_string: str (optional) The URL of the entry to be deleted. You can
+     find this URL in the text member of the atom id for an entry.
+  entry: BatchEntry (optional) The entry to be deleted.
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters: Raised if neither a url_string nor an entry
+      are provided in the request.
+ +
add_insert(self, entry, batch_id_string=None)
Add an insert request to the operations in this batch request feed.

+If the entry doesn't yet have an operation or a batch id, these will
+be set to the insert operation and a batch_id specified as a parameter.

+Args:
+  entry: BatchEntry The entry which will be sent in the batch feed as an
+      insert request.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+ +
add_query(self, url_string=None, entry=None, batch_id_string=None)
Adds a query request to the batch request feed.

+This method takes either the url_string which is the query URL
+whose results will be added to the result feed. The query URL will
+be encapsulated in a BatchEntry, and you may pass in the BatchEntry
+with a query URL instead of sending a url_string.

+Args:
+  url_string: str (optional)
+  entry: BatchEntry (optional)
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters
+ +
add_update(self, entry, batch_id_string=None)
Add an update request to the list of batch operations in this feed.

+Sets the operation type of the entry to insert if it is not already set
+and assigns the desired batch id to the entry so that it can be
+referenced in the server's response.

+Args:
+  entry: BatchEntry The entry which will be sent to the server as an
+      update (HTTP PUT) request. The item must have a valid atom id
+      so that the server knows which entry to replace.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. See also comments for AddInsert.
+ +
find_batch_link(self)
+ +
+Data and other attributes inherited from gdata.data.BatchFeed:
+
interrupted = <class 'gdata.data.BatchInterrupted'>
The batch:interrupted element sent if batch request was interrupted.

+Only appears in a feed if some of the batch entries could not be processed.
+See: http://code.google.com/apis/gdata/batch.html#Handling_Errors
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + +
 
+Data
       GBS_TEMPLATE = '{http://schemas.google.com/books/2008/}%s'
+__author__ = 'j.s@google.com (Jeff Scudder)'

+ + + + + +
 
+Author
       j.s@google.com (Jeff Scudder)
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.books.html python-gdata-2.0.8/pydocs/gdata.books.html --- python-gdata-1.2.4/pydocs/gdata.books.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.books.html 2009-11-25 01:04:14.000000000 +0000 @@ -0,0 +1,1133 @@ + + +Python: package gdata.books + + + + +
 
+ 
gdata.books
index
/usr/local/svn/gdata-python-client/src/gdata/books/__init__.py
+

Data Models for books.service

+All classes can be instantiated from an xml string using their FromString
+class method.

+Notes:
+    * Book.title displays the first dc:title because the returned XML
+      repeats that datum as atom:title.
+There is an undocumented gbs:openAccess element that is not parsed.

+

+ + + + + +
 
+Package Contents
       
data
+
service
+

+ + + + + +
 
+Classes
       
+
gdata.GDataEntry(atom.Entry, gdata.LinkFinder) +
+
+
Book(_AtomFromString, gdata.GDataEntry) +
+
+
gdata.GDataFeed(atom.Feed, gdata.LinkFinder) +
+
+
BookFeed(_AtomFromString, gdata.GDataFeed) +
+
+
_AtomFromString(atom.AtomBase) +
+
+
Book(_AtomFromString, gdata.GDataEntry) +
BookFeed(_AtomFromString, gdata.GDataFeed) +
Creator +
Date +
Description +
Embeddability +
Format +
Identifier +
Publisher +
Rating +
Review +
Subject +
Title +
Viewability +
+
+
+

+ + + + + + + +
 
+class Book(_AtomFromString, gdata.GDataEntry)
   Represents an <entry> from either a search, annotation, library, or single
+item feed. Note that dc_title attribute is the proper title of the volume,
+title is an atom element and may not represent the full title.
 
 
Method resolution order:
+
Book
+
_AtomFromString
+
gdata.GDataEntry
+
atom.Entry
+
atom.FeedEntryParent
+
atom.AtomBase
+
atom.ExtensionContainer
+
gdata.LinkFinder
+
atom.LinkFinder
+
__builtin__.object
+
+
+Methods defined here:
+
GetAnnotationLink(self)
Returns the atom.Link object representing the Annotation URI.
+Note that the use of www.books in the href of this link seems to make
+this information useless. Using books.service.ANNOTATION_FEED and 
+BOOK_SERVER to construct your URI seems to work better.
+ +
GetInfoLink(self)
Returns the atom.Link object representing the human-readable info URI.
+ +
GetPreviewLink(self)
Returns the atom.Link object representing the preview URI.
+ +
GetThumbnailLink(self)
Returns the atom.Link object representing the thumbnail URI.
+ +
__init__(self, creator=None, date=None, description=None, format=None, author=None, identifier=None, publisher=None, subject=None, dc_title=None, viewability=None, embeddability=None, review=None, rating=None, category=None, content=None, contributor=None, atom_id=None, link=None, published=None, rights=None, source=None, summary=None, title=None, control=None, updated=None, text=None, extension_elements=None, extension_attributes=None)
+ +
clean_annotations(self)
Clear all annotations from an item. Useful for taking an item from
+another user's library/annotation feed and adding it to the 
+authenticated user's library without adopting annotations.
+ +
get_google_id(self)
Get Google's ID of the item.
+ +
get_label(self)
Get users label for the item as a string
+ +
remove_label(self)
Clear the user's label for the item
+ +
set_label(self, term)
Clear pre-existing label for the item and set term as the label.
+ +
set_rating(self, value)
Set user's rating. Must be an integral string between 1 nad 5
+ +
set_review(self, text, type='text', lang='en')
Set user's review text
+ +
to_dict(self)
Returns a dictionary of the book's available metadata. If the data
+cannot be discovered, it is not included as a key in the returned dict.
+The possible keys are: authors, embeddability, date, description, 
+format, identifiers, publishers, rating, review, subjects, title, and
+viewability.

+Notes:
+  * Plural keys will be lists
+  * Singular keys will be strings
+  * Title, despite usually being a list, joins the title and subtitle
+    with a space as a single string.
+  * embeddability and viewability only return the portion of the URI 
+    after #
+  * identifiers is a list of tuples, where the first item of each tuple
+    is the type of identifier and the second item is the identifying
+    string. Note that while doing dict() on this tuple may be possible,
+    some items may have multiple of the same identifier and converting
+    to a dict may resulted in collisions/dropped data.
+  * Rating returns only the user's rating. See Rating class for precise
+    definition.
+ +
+Class methods inherited from _AtomFromString:
+
FromString(cls, s) from __builtin__.type
#@classmethod
+ +
+Methods inherited from gdata.GDataEntry:
+
GetMediaURL(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
IsMedia(self)
Determines whether or not an entry is a GData Media entry.
+ +
+Data descriptors inherited from gdata.GDataEntry:
+
id
+
+
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from gdata.LinkFinder:
+
GetAclLink(self)
+ +
GetEditLink(self)
+ +
GetEditMediaLink(self)
The Picasa API mistakenly returns media-edit rather than edit-media, but
+this may change soon.
+ +
GetFeedLink(self)
+ +
GetHtmlLink(self)
Find the first link with rel of alternate and type of text/html

+Returns:
+  An atom.Link or None if no links matched
+ +
GetNextLink(self)
+ +
GetPostLink(self)
Get a link containing the POST target URL.

+The POST target URL is used to insert new entries.

+Returns:
+  A link object with a rel matching the POST type.
+ +
GetPrevLink(self)
+ +
GetSelfLink(self)
Find the first link with rel set to 'self'

+Returns:
+  An atom.Link or none if none of the links had rel equal to 'self'
+ +
+Methods inherited from atom.LinkFinder:
+
GetAlternateLink(self)
+ +
GetLicenseLink(self)
+ +

+ + + + + + + +
 
+class BookFeed(_AtomFromString, gdata.GDataFeed)
   Represents a feed of entries from a search.
 
 
Method resolution order:
+
BookFeed
+
_AtomFromString
+
gdata.GDataFeed
+
atom.Feed
+
atom.Source
+
atom.FeedEntryParent
+
atom.AtomBase
+
atom.ExtensionContainer
+
gdata.LinkFinder
+
atom.LinkFinder
+
__builtin__.object
+
+
+Class methods inherited from _AtomFromString:
+
FromString(cls, s) from __builtin__.type
#@classmethod
+ +
+Methods inherited from gdata.GDataFeed:
+
__init__(self, author=None, category=None, contributor=None, generator=None, icon=None, atom_id=None, link=None, logo=None, rights=None, subtitle=None, title=None, updated=None, entry=None, total_results=None, start_index=None, items_per_page=None, extension_elements=None, extension_attributes=None, text=None)
Constructor for Source

+Args:
+  author: list (optional) A list of Author instances which belong to this
+      class.
+  category: list (optional) A list of Category instances
+  contributor: list (optional) A list on Contributor instances
+  generator: Generator (optional)
+  icon: Icon (optional)
+  id: Id (optional) The entry's Id element
+  link: list (optional) A list of Link instances
+  logo: Logo (optional)
+  rights: Rights (optional) The entry's Rights element
+  subtitle: Subtitle (optional) The entry's subtitle element
+  title: Title (optional) the entry's title element
+  updated: Updated (optional) the entry's updated element
+  entry: list (optional) A list of the Entry instances contained in the
+      feed.
+  text: String (optional) The text contents of the element. This is the
+      contents of the Entry's XML text node.
+      (Example: <foo>This is the text</foo>)
+  extension_elements: list (optional) A list of ExtensionElement instances
+      which are children of this element.
+  extension_attributes: dict (optional) A dictionary of strings which are
+      the values for additional XML attributes of this element.
+ +
+Data descriptors inherited from gdata.GDataFeed:
+
generator
+
+
id
+
+
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from gdata.LinkFinder:
+
GetAclLink(self)
+ +
GetEditLink(self)
+ +
GetEditMediaLink(self)
The Picasa API mistakenly returns media-edit rather than edit-media, but
+this may change soon.
+ +
GetFeedLink(self)
+ +
GetHtmlLink(self)
Find the first link with rel of alternate and type of text/html

+Returns:
+  An atom.Link or None if no links matched
+ +
GetNextLink(self)
+ +
GetPostLink(self)
Get a link containing the POST target URL.

+The POST target URL is used to insert new entries.

+Returns:
+  A link object with a rel matching the POST type.
+ +
GetPrevLink(self)
+ +
GetSelfLink(self)
Find the first link with rel set to 'self'

+Returns:
+  An atom.Link or none if none of the links had rel equal to 'self'
+ +
+Methods inherited from atom.LinkFinder:
+
GetAlternateLink(self)
+ +
GetLicenseLink(self)
+ +

+ + + + + + + +
 
+class Creator(_AtomFromString)
   The <dc:creator> element identifies an author-or more generally, an entity
+responsible for creating the volume in question. Examples of a creator
+include a person, an organization, or a service. In the case of 
+anthologies, proceedings, or other edited works, this field may be used to 
+indicate editors or other entities responsible for collecting the volume's 
+contents.

+This element appears as a child of <entry>. If there are multiple authors or
+contributors to the book, there may be multiple <dc:creator> elements in the
+volume entry (one for each creator or contributor).
 
 
Method resolution order:
+
Creator
+
_AtomFromString
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Class methods inherited from _AtomFromString:
+
FromString(cls, s) from __builtin__.type
#@classmethod
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class Date(_AtomFromString)
   The <dc:date> element indicates the publication date of the specific volume
+in question. If the book is a reprint, this is the reprint date, not the 
+original publication date. The date is encoded according to the ISO-8601 
+standard (and more specifically, the W3CDTF profile).

+The <dc:date> element can appear only as a child of <entry>.

+Usually only the year or the year and the month are given.

+YYYY-MM-DDThh:mm:ssTZD  TZD = -hh:mm or +hh:mm
 
 
Method resolution order:
+
Date
+
_AtomFromString
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Class methods inherited from _AtomFromString:
+
FromString(cls, s) from __builtin__.type
#@classmethod
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class Description(_AtomFromString)
   The <dc:description> element includes text that describes a book or book 
+result. In a search result feed, this may be a search result "snippet" that
+contains the words around the user's search term. For a single volume feed,
+this element may contain a synopsis of the book.

+The <dc:description> element can appear only as a child of <entry>
 
 
Method resolution order:
+
Description
+
_AtomFromString
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Class methods inherited from _AtomFromString:
+
FromString(cls, s) from __builtin__.type
#@classmethod
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class Embeddability(_AtomFromString)
   Many of the books found on Google Book Search can be embedded on third-party
+sites using the Embedded Viewer. The <gbs:embeddability> element indicates 
+whether a particular book result is available for embedding. By definition,
+a book that cannot be previewed on Book Search cannot be embedded on third-
+party sites.

+The <gbs:embeddability> element can appear only as a child of <entry>.

+The value attribute will take on one of the following URIs:
+embeddable: http://schemas.google.com/books/2008#embeddable
+not embeddable: http://schemas.google.com/books/2008#not_embeddable
 
 
Method resolution order:
+
Embeddability
+
_AtomFromString
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, value=None, text=None, extension_elements=None, extension_attributes=None)
+ +
+Class methods inherited from _AtomFromString:
+
FromString(cls, s) from __builtin__.type
#@classmethod
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class Format(_AtomFromString)
   The <dc:format> element describes the physical properties of the volume. 
+Currently, it indicates the number of pages in the book, but more 
+information may be added to this field in the future.

+This element can appear only as a child of <entry>.
 
 
Method resolution order:
+
Format
+
_AtomFromString
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Class methods inherited from _AtomFromString:
+
FromString(cls, s) from __builtin__.type
#@classmethod
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class Identifier(_AtomFromString)
   The <dc:identifier> element provides an unambiguous reference to a 
+particular book.
+* Every <entry> contains at least one <dc:identifier> child.
+* The first identifier is always the unique string Book Search has assigned
+  to the volume (such as s1gVAAAAYAAJ). This is the ID that appears in the 
+  book's URL in the Book Search GUI, as well as in the URL of that book's 
+  single item feed.
+* Many books contain additional <dc:identifier> elements. These provide 
+  alternate, external identifiers to the volume. Such identifiers may 
+  include the ISBNs, ISSNs, Library of Congress Control Numbers (LCCNs), 
+  and OCLC numbers; they are prepended with a corresponding namespace 
+  prefix (such as "ISBN:").
+* Any <dc:identifier> can be passed to the Dynamic Links, used to 
+  instantiate an Embedded Viewer, or even used to construct static links to
+  Book Search.
+The <dc:identifier> element can appear only as a child of <entry>.
 
 
Method resolution order:
+
Identifier
+
_AtomFromString
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Class methods inherited from _AtomFromString:
+
FromString(cls, s) from __builtin__.type
#@classmethod
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class Publisher(_AtomFromString)
   The <dc:publisher> element contains the name of the entity responsible for 
+producing and distributing the volume (usually the specific edition of this
+book). Examples of a publisher include a person, an organization, or a 
+service.

+This element can appear only as a child of <entry>. If there is more than 
+one publisher, multiple <dc:publisher> elements may appear.
 
 
Method resolution order:
+
Publisher
+
_AtomFromString
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Class methods inherited from _AtomFromString:
+
FromString(cls, s) from __builtin__.type
#@classmethod
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class Rating(_AtomFromString)
   All attributes must take an integral string between 1 and 5.
+The min, max, and average attributes represent 'community' ratings. The
+value attribute is the user's (of the feed from which the item is fetched,
+not necessarily the authenticated user) rating of the book.
 
 
Method resolution order:
+
Rating
+
_AtomFromString
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, min=None, max=None, average=None, value=None, text=None, extension_elements=None, extension_attributes=None)
+ +
+Class methods inherited from _AtomFromString:
+
FromString(cls, s) from __builtin__.type
#@classmethod
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class Review(_AtomFromString)
   When present, the <gbs:review> element contains a user-generated review for
+a given book. This element currently appears only in the user library and 
+user annotation feeds, as a child of <entry>.

+type: text, html, xhtml
+xml:lang: id of the language, a guess, (always two letters?)
 
 
Method resolution order:
+
Review
+
_AtomFromString
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, type=None, lang=None, text=None, extension_elements=None, extension_attributes=None)
+ +
+Class methods inherited from _AtomFromString:
+
FromString(cls, s) from __builtin__.type
#@classmethod
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class Subject(_AtomFromString)
   The <dc:subject> element identifies the topic of the book. Usually this is 
+a Library of Congress Subject Heading (LCSH) or  Book Industry Standards 
+and Communications Subject Heading (BISAC).

+The <dc:subject> element can appear only as a child of <entry>. There may 
+be multiple <dc:subject> elements per entry.
 
 
Method resolution order:
+
Subject
+
_AtomFromString
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Class methods inherited from _AtomFromString:
+
FromString(cls, s) from __builtin__.type
#@classmethod
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class Title(_AtomFromString)
   The <dc:title> element contains the title of a book as it was published. If
+a book has a subtitle, it appears as a second <dc:title> element in the book
+result's <entry>.
 
 
Method resolution order:
+
Title
+
_AtomFromString
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Class methods inherited from _AtomFromString:
+
FromString(cls, s) from __builtin__.type
#@classmethod
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class Viewability(_AtomFromString)
   Google Book Search respects the user's local copyright restrictions. As a 
+result, previews or full views of some books are not available in all 
+locations. The <gbs:viewability> element indicates whether a book is fully 
+viewable, can be previewed, or only has "about the book" information. These
+three "viewability modes" are the same ones returned by the Dynamic Links 
+API.

+The <gbs:viewability> element can appear only as a child of <entry>.

+The value attribute will take the form of the following URIs to represent
+the relevant viewing capability:

+Full View: http://schemas.google.com/books/2008#view_all_pages
+Limited Preview: http://schemas.google.com/books/2008#view_partial
+Snippet View/No Preview: http://schemas.google.com/books/2008#view_no_pages
+Unknown view: http://schemas.google.com/books/2008#view_unknown
 
 
Method resolution order:
+
Viewability
+
_AtomFromString
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, value=None, text=None, extension_elements=None, extension_attributes=None)
+ +
+Class methods inherited from _AtomFromString:
+
FromString(cls, s) from __builtin__.type
#@classmethod
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + +
 
+Data
       ANNOTATION_REL = 'http://schemas.google.com/books/2008/annotation'
+BOOK_SEARCH_NAMESPACE = 'http://schemas.google.com/books/2008'
+DC_NAMESPACE = 'http://purl.org/dc/terms'
+EMBEDDABLE = 'http://schemas.google.com/books/2008#embeddable'
+FULL_VIEW = 'http://schemas.google.com/books/2008#view_all_pages'
+INFO_REL = 'http://schemas.google.com/books/2008/info'
+LABEL_SCHEME = 'http://schemas.google.com/books/2008/labels'
+NOT_EMBEDDABLE = 'http://schemas.google.com/books/2008#not_embeddable'
+NO_VIEW = 'http://schemas.google.com/books/2008#view_no_pages'
+PARTIAL_VIEW = 'http://schemas.google.com/books/2008#view_partial'
+PREVIEW_REL = 'http://schemas.google.com/books/2008/preview'
+THUMBNAIL_REL = 'http://schemas.google.com/books/2008/thumbnail'
+UNKNOWN_VIEW = 'http://schemas.google.com/books/2008#view_unknown'
+__author__ = 'James Sams <sams.james@gmail.com>'
+__copyright__ = 'Apache License v2.0'

+ + + + + +
 
+Author
       James Sams <sams.james@gmail.com>
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.books.service.html python-gdata-2.0.8/pydocs/gdata.books.service.html --- python-gdata-1.2.4/pydocs/gdata.books.service.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.books.service.html 2010-02-26 23:16:48.000000000 +0000 @@ -0,0 +1,743 @@ + + +Python: module gdata.books.service + + + + +
 
+ 
gdata.books.service
index
/usr/local/svn/gdata-python-client/src/gdata/books/service.py
+

Extend gdata.service.GDataService to support authenticated CRUD ops on 
+Books API

+http://code.google.com/apis/books/docs/getting-started.html
+http://code.google.com/apis/books/docs/gdata/developers_guide_protocol.html

+TODO: (here and __init__)
+    * search based on label, review, or other annotations (possible?)
+    * edit (specifically, Put requests) seem to fail effect a change

+Problems With API:
+    * Adding a book with a review to the library adds a note, not a review.
+      This does not get included in the returned item. You see this by
+      looking at My Library through the website.
+    * Editing a review never edits a review (unless it is freshly added, but 
+      see above). More generally,
+    * a Put request with changed annotations (label/rating/review) does NOT
+      change the data. Note: Put requests only work on the href from 
+      GetEditLink (as per the spec). Do not try to PUT to the annotate or 
+      library feeds, this will cause a 400 Invalid URI Bad Request response.
+      Attempting to Post to one of the feeds with the updated annotations
+      does not update them. See the following for (hopefully) a follow up:
+      google.com/support/forum/p/booksearch-apis/thread?tid=27fd7f68de438fc8
+    * Attempts to workaround the edit problem continue to fail. For example,
+      removing the item, editing the data, readding the item, gives us only
+      our originally added data (annotations). This occurs even if we
+      completely shut python down, refetch the book from the public feed,
+      and re-add it. There is some kind of persistence going on that I
+      cannot change. This is likely due to the annotations being cached in
+      the annotation feed and the inability to edit (see Put, above)
+    * GetAnnotationLink has www.books.... as the server, but hitting www...
+      results in a bad URI error.
+    * Spec indicates there may be multiple labels, but there does not seem
+      to be a way to get the server to accept multiple labels, nor does the
+      web interface have an obvious way to have multiple labels. Multiple 
+      labels are never returned.

+

+ + + + + +
 
+Modules
       
gdata.books
+
gdata
+

+ + + + + +
 
+Classes
       
+
gdata.service.GDataService(atom.service.AtomService) +
+
+
BookService +
+
+
+

+ + + + + +
 
+class BookService(gdata.service.GDataService)
    
Method resolution order:
+
BookService
+
gdata.service.GDataService
+
atom.service.AtomService
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, email=None, password=None, source=None, server='books.google.com', account_type='HOSTED_OR_GOOGLE', exception_handlers=(), **kwargs)
source should be of form 'ProgramCompany - ProgramName - Version'
+ +
add_annotation(self, item)
Add the item, either an XML string or books.Book instance, to the 
+user's annotation feed.
+ +
add_item_to_library(self, item)
Add the item, either an XML string or books.Book instance, to the 
+user's library feed
+ +
edit_annotation(self, item)
Send an edited item, a books.Book instance, to the user's annotation 
+feed. Note that whereas extra annotations in add_annotations, minus 
+ratings which are immutable once set, are simply added to the item in 
+the annotation feed, if an annotation has been removed from the item, 
+sending an edit request will remove that annotation. This should not 
+happen with add_annotation.
+ +
get_annotations(self, id='me', start_index='1', max_results='100', min_viewability='none', converter=<bound method type.FromString of <class 'gdata.books.BookFeed'>>)
Like get_library, but for the annotation feed
+ +
get_by_google_id(self, id)
+ +
get_library(self, id='me', feed='/books/feeds/users/%s/collections/library/volumes', start_index='1', max_results='100', min_viewability='none', converter=<bound method type.FromString of <class 'gdata.books.BookFeed'>>)
Return a generator object that will return gbook.Book instances until
+the search feed no longer returns an item from the GetNextLink method.
+Thus max_results is not the maximum number of items that will be
+returned, but rather the number of items per page of searches. This has
+been set high to reduce the required number of network requests.
+ +
remove_item_from_library(self, item)
Remove the item, a books.Book instance, from the authenticated user's 
+library feed. Using an item retrieved from a public search will fail.
+ +
search(self, q, start_index='1', max_results='10', min_viewability='none', feed='/books/feeds/volumes', converter=<bound method type.FromString of <class 'gdata.books.BookFeed'>>)
Query the Public search feed. q is either a search string or a
+gdata.service.Query instance with a query set.

+min_viewability must be "none", "partial", or "full".

+If you change the feed to a single item feed, note that you will 
+probably need to change the converter to be Book.FromString
+ +
search_annotations(self, q, id='me', **kwargs)
Like search, but in an annotation feed. Default is the authenticated
+user's feed. Change by setting id.
+ +
search_annotations_by_keyword(self, id='me', **kwargs)
Hybrid of search_by_keyword and search_annotations
+ +
search_by_keyword(self, q='', feed='/books/feeds/volumes', start_index='1', max_results='10', min_viewability='none', **kwargs)
Query the Public Search Feed by keyword. Non-keyword strings can be
+set in q. This is quite fragile. Is there a function somewhere in
+the Google library that will parse a query the same way that Google
+does?

+Legal Identifiers are listed below and correspond to their meaning
+at http://books.google.com/advanced_book_search:
+    all_words 
+    exact_phrase 
+    at_least_one 
+    without_words 
+    title
+    author
+    publisher
+    subject
+    isbn
+    lccn
+    oclc
+    seemingly unsupported:
+    publication_date: a sequence of two, two tuples:
+        ((min_month,min_year),(max_month,max_year))
+        where month is one/two digit month, year is 4 digit, eg:
+        (('1','2000'),('10','2003')). Lower bound is inclusive,
+        upper bound is exclusive
+ +
search_library(self, q, id='me', **kwargs)
Like search, but in a library feed. Default is the authenticated
+user's feed. Change by setting id.
+ +
search_library_by_keyword(self, id='me', **kwargs)
Hybrid of search_by_keyword and search_library
+ +
+Methods inherited from gdata.service.GDataService:
+
AuthSubTokenInfo(self)
Fetches the AuthSub token's metadata from the server.

+Raises:
+  NonAuthSubToken if the user's auth token is not an AuthSub token
+ +
ClientLogin(self, username, password, account_type=None, service=None, auth_service_url=None, source=None, captcha_token=None, captcha_response=None)
Convenience method for authenticating using ProgrammaticLogin. 

+Sets values for email, password, and other optional members.

+Args:
+  username:
+  password:
+  account_type: string (optional)
+  service: string (optional)
+  auth_service_url: string (optional)
+  captcha_token: string (optional)
+  captcha_response: string (optional)
+ +
Delete(self, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=4)
Deletes the entry at the given URI.

+Args:
+  uri: string The URI of the entry to be deleted. Example: 
+       '/base/feeds/items/ITEM-ID'
+  extra_headers: dict (optional) HTTP headers which are to be included.
+                 The client automatically sets the Content-Type and
+                 Authorization headers.
+  url_params: dict (optional) Additional URL parameters to be included
+              in the URI. These are translated into query arguments
+              in the form '&dict_key=value&...'.
+              Example: {'max-results': '250'} becomes &max-results=250
+  escape_params: boolean (optional) If false, the calling code has already
+                 ensured that the query will form a valid URL (all
+                 reserved characters have been escaped). If true, this
+                 method will escape the query and any URL parameters
+                 provided.

+Returns:
+  True if the entry was deleted.
+ +
FetchOAuthRequestToken(self, scopes=None, extra_parameters=None, request_url='https://www.google.com/accounts/OAuthGetRequestToken', oauth_callback=None)
Fetches and sets the OAuth request token and returns it.

+Args:
+  scopes: string or list of string base URL(s) of the service(s) to be
+      accessed. If None, then this method tries to determine the
+      scope(s) from the current service.
+  extra_parameters: dict (optional) key-value pairs as any additional
+      parameters to be included in the URL and signature while making a
+      request for fetching an OAuth request token. All the OAuth parameters
+      are added by default. But if provided through this argument, any
+      default parameters will be overwritten. For e.g. a default parameter
+      oauth_version 1.0 can be overwritten if
+      extra_parameters = {'oauth_version': '2.0'}
+  request_url: Request token URL. The default is
+      'https://www.google.com/accounts/OAuthGetRequestToken'.
+  oauth_callback: str (optional) If set, it is assume the client is using
+      the OAuth v1.0a protocol where the callback url is sent in the
+      request token step.  If the oauth_callback is also set in
+      extra_params, this value will override that one.

+Returns:
+  The fetched request token as a gdata.auth.OAuthToken object.

+Raises:
+  FetchingOAuthRequestTokenFailed if the server responded to the request
+  with an error.
+ +
GenerateAuthSubURL(self, next, scope, secure=False, session=True, domain='default')
Generate a URL at which the user will login and be redirected back.

+Users enter their credentials on a Google login page and a token is sent
+to the URL specified in next. See documentation for AuthSub login at:
+http://code.google.com/apis/accounts/docs/AuthSub.html

+Args:
+  next: string The URL user will be sent to after logging in.
+  scope: string or list of strings. The URLs of the services to be 
+         accessed.
+  secure: boolean (optional) Determines whether or not the issued token
+          is a secure token.
+  session: boolean (optional) Determines whether or not the issued token
+           can be upgraded to a session token.
+ +
GenerateOAuthAuthorizationURL(self, request_token=None, callback_url=None, extra_params=None, include_scopes_in_callback=False, scopes_param_prefix='oauth_token_scope', request_url='https://www.google.com/accounts/OAuthAuthorizeToken')
Generates URL at which user will login to authorize the request token.

+Args:
+  request_token: gdata.auth.OAuthToken (optional) OAuth request token.
+      If not specified, then the current token will be used if it is of
+      type <gdata.auth.OAuthToken>, else it is found by looking in the
+      token_store by looking for a token for the current scope.    
+  callback_url: string (optional) The URL user will be sent to after
+      logging in and granting access.
+  extra_params: dict (optional) Additional parameters to be sent.
+  include_scopes_in_callback: Boolean (default=False) if set to True, and
+      if 'callback_url' is present, the 'callback_url' will be modified to
+      include the scope(s) from the request token as a URL parameter. The
+      key for the 'callback' URL's scope parameter will be
+      OAUTH_SCOPE_URL_PARAM_NAME. The benefit of including the scope URL as
+      a parameter to the 'callback' URL, is that the page which receives
+      the OAuth token will be able to tell which URLs the token grants
+      access to.
+  scopes_param_prefix: string (default='oauth_token_scope') The URL
+      parameter key which maps to the list of valid scopes for the token.
+      This URL parameter will be included in the callback URL along with
+      the scopes of the token as value if include_scopes_in_callback=True.
+  request_url: Authorization URL. The default is
+      'https://www.google.com/accounts/OAuthAuthorizeToken'.
+Returns:
+  A string URL at which the user is required to login.

+Raises:
+  NonOAuthToken if the user's request token is not an OAuth token or if a
+  request token was not available.
+ +
Get(self, uri, extra_headers=None, redirects_remaining=4, encoding='UTF-8', converter=None)
Query the GData API with the given URI

+The uri is the portion of the URI after the server value 
+(ex: www.google.com).

+To perform a query against Google Base, set the server to 
+'base.google.com' and set the uri to '/base/feeds/...', where ... is 
+your query. For example, to find snippets for all digital cameras uri 
+should be set to: '/base/feeds/snippets?bq=digital+camera'

+Args:
+  uri: string The query in the form of a URI. Example:
+       '/base/feeds/snippets?bq=digital+camera'.
+  extra_headers: dictionary (optional) Extra HTTP headers to be included
+                 in the GET request. These headers are in addition to 
+                 those stored in the client's additional_headers property.
+                 The client automatically sets the Content-Type and 
+                 Authorization headers.
+  redirects_remaining: int (optional) Tracks the number of additional
+      redirects this method will allow. If the service object receives
+      a redirect and remaining is 0, it will not follow the redirect. 
+      This was added to avoid infinite redirect loops.
+  encoding: string (optional) The character encoding for the server's
+      response. Default is UTF-8
+  converter: func (optional) A function which will transform
+      the server's results before it is returned. Example: use 
+      GDataFeedFromString to parse the server response as if it
+      were a GDataFeed.

+Returns:
+  If there is no ResultsTransformer specified in the call, a GDataFeed 
+  or GDataEntry depending on which is sent from the server. If the 
+  response is niether a feed or entry and there is no ResultsTransformer,
+  return a string. If there is a ResultsTransformer, the returned value 
+  will be that of the ResultsTransformer function.
+ +
GetAuthSubToken(self)
Returns the AuthSub token as a string.

+If the token is an gdta.auth.AuthSubToken, the Authorization Label
+("AuthSub token") is removed.

+This method examines the current_token to see if it is an AuthSubToken
+or SecureAuthSubToken. If not, it searches the token_store for a token
+which matches the current scope.

+The current scope is determined by the service name string member.

+Returns:
+  If the current_token is set to an AuthSubToken/SecureAuthSubToken,
+  return the token string. If there is no current_token, a token string
+  for a token which matches the service object's default scope is returned.
+  If there are no tokens valid for the scope, returns None.
+ +
GetClientLoginToken(self)
Returns the token string for the current token or a token matching the 
+service scope.

+If the current_token is a ClientLoginToken, the token string for 
+the current token is returned. If the current_token is not set, this method
+searches for a token in the token_store which is valid for the service 
+object's current scope.

+The current scope is determined by the service name string member.
+The token string is the end of the Authorization header, it doesn not
+include the ClientLogin label.
+ +
GetEntry(self, uri, extra_headers=None)
Query the GData API with the given URI and receive an Entry.

+See also documentation for gdata.service.Get

+Args:
+  uri: string The query in the form of a URI. Example:
+       '/base/feeds/snippets?bq=digital+camera'.
+  extra_headers: dictionary (optional) Extra HTTP headers to be included
+                 in the GET request. These headers are in addition to
+                 those stored in the client's additional_headers property.
+                 The client automatically sets the Content-Type and
+                 Authorization headers.

+Returns:
+  A GDataEntry built from the XML in the server's response.
+ +
GetFeed(self, uri, extra_headers=None, converter=<function GDataFeedFromString at 0x7fcb74a84d70>)
Query the GData API with the given URI and receive a Feed.

+See also documentation for gdata.service.Get

+Args:
+  uri: string The query in the form of a URI. Example:
+       '/base/feeds/snippets?bq=digital+camera'.
+  extra_headers: dictionary (optional) Extra HTTP headers to be included
+                 in the GET request. These headers are in addition to
+                 those stored in the client's additional_headers property.
+                 The client automatically sets the Content-Type and
+                 Authorization headers.

+Returns:
+  A GDataFeed built from the XML in the server's response.
+ +
GetGeneratorFromLinkFinder(self, link_finder, func, num_retries=3, delay=1, backoff=2)
returns a generator for pagination
+ +
GetMedia(self, uri, extra_headers=None)
Returns a MediaSource containing media and its metadata from the given
+URI string.
+ +
GetNext(self, feed)
Requests the next 'page' of results in the feed.

+This method uses the feed's next link to request an additional feed
+and uses the class of the feed to convert the results of the GET request.

+Args:
+  feed: atom.Feed or a subclass. The feed should contain a next link and
+      the type of the feed will be applied to the results from the 
+      server. The new feed which is returned will be of the same class
+      as this feed which was passed in.

+Returns:
+  A new feed representing the next set of results in the server's feed.
+  The type of this feed will match that of the feed argument.
+ +
GetOAuthInputParameters(self)
+ +
GetWithRetries(self, uri, extra_headers=None, redirects_remaining=4, encoding='UTF-8', converter=None, num_retries=3, delay=1, backoff=2, logger=None)
This is a wrapper method for Get with retring capability.

+To avoid various errors while retrieving bulk entities by retring
+specified times.

+Note this method relies on the time module and so may not be usable
+by default in Python2.2.

+Args:
+  num_retries: integer The retry count.
+  delay: integer The initial delay for retring.
+  backoff: integer how much the delay should lengthen after each failure.
+  logger: an object which has a debug(str) method to receive logging
+          messages. Recommended that you pass in the logging module.
+Raises:
+  ValueError if any of the parameters has an invalid value.
+  RanOutOfTries on failure after number of retries.
+ +
Post(self, data, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=4, media_source=None, converter=None)
Insert or update  data into a GData service at the given URI.

+Args:
+  data: string, ElementTree._Element, atom.Entry, or gdata.GDataEntry The
+        XML to be sent to the uri.
+  uri: string The location (feed) to which the data should be inserted.
+       Example: '/base/feeds/items'.
+  extra_headers: dict (optional) HTTP headers which are to be included.
+                 The client automatically sets the Content-Type,
+                 Authorization, and Content-Length headers.
+  url_params: dict (optional) Additional URL parameters to be included
+              in the URI. These are translated into query arguments
+              in the form '&dict_key=value&...'.
+              Example: {'max-results': '250'} becomes &max-results=250
+  escape_params: boolean (optional) If false, the calling code has already
+                 ensured that the query will form a valid URL (all
+                 reserved characters have been escaped). If true, this
+                 method will escape the query and any URL parameters
+                 provided.
+  media_source: MediaSource (optional) Container for the media to be sent
+      along with the entry, if provided.
+  converter: func (optional) A function which will be executed on the
+      server's response. Often this is a function like
+      GDataEntryFromString which will parse the body of the server's
+      response and return a GDataEntry.

+Returns:
+  If the post succeeded, this method will return a GDataFeed, GDataEntry,
+  or the results of running converter on the server's result body (if
+  converter was specified).
+ +
PostOrPut(self, verb, data, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=4, media_source=None, converter=None)
Insert data into a GData service at the given URI.

+Args:
+  verb: string, either 'POST' or 'PUT'
+  data: string, ElementTree._Element, atom.Entry, or gdata.GDataEntry The
+        XML to be sent to the uri. 
+  uri: string The location (feed) to which the data should be inserted. 
+       Example: '/base/feeds/items'. 
+  extra_headers: dict (optional) HTTP headers which are to be included. 
+                 The client automatically sets the Content-Type,
+                 Authorization, and Content-Length headers.
+  url_params: dict (optional) Additional URL parameters to be included
+              in the URI. These are translated into query arguments
+              in the form '&dict_key=value&...'.
+              Example: {'max-results': '250'} becomes &max-results=250
+  escape_params: boolean (optional) If false, the calling code has already
+                 ensured that the query will form a valid URL (all
+                 reserved characters have been escaped). If true, this
+                 method will escape the query and any URL parameters
+                 provided.
+  media_source: MediaSource (optional) Container for the media to be sent
+      along with the entry, if provided.
+  converter: func (optional) A function which will be executed on the 
+      server's response. Often this is a function like 
+      GDataEntryFromString which will parse the body of the server's 
+      response and return a GDataEntry.

+Returns:
+  If the post succeeded, this method will return a GDataFeed, GDataEntry,
+  or the results of running converter on the server's result body (if
+  converter was specified).
+ +
ProgrammaticLogin(self, captcha_token=None, captcha_response=None)
Authenticates the user and sets the GData Auth token.

+Login retreives a temporary auth token which must be used with all
+requests to GData services. The auth token is stored in the GData client
+object.

+Login is also used to respond to a captcha challenge. If the user's login
+attempt failed with a CaptchaRequired error, the user can respond by
+calling Login with the captcha token and the answer to the challenge.

+Args:
+  captcha_token: string (optional) The identifier for the captcha challenge
+                 which was presented to the user.
+  captcha_response: string (optional) The user's answer to the captch 
+                    challenge.

+Raises:
+  CaptchaRequired if the login service will require a captcha response
+  BadAuthentication if the login service rejected the username or password
+  Error if the login service responded with a 403 different from the above
+ +
Put(self, data, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=3, media_source=None, converter=None)
Updates an entry at the given URI.

+Args:
+  data: string, ElementTree._Element, or xml_wrapper.ElementWrapper The 
+        XML containing the updated data.
+  uri: string A URI indicating entry to which the update will be applied.
+       Example: '/base/feeds/items/ITEM-ID'
+  extra_headers: dict (optional) HTTP headers which are to be included.
+                 The client automatically sets the Content-Type,
+                 Authorization, and Content-Length headers.
+  url_params: dict (optional) Additional URL parameters to be included
+              in the URI. These are translated into query arguments
+              in the form '&dict_key=value&...'.
+              Example: {'max-results': '250'} becomes &max-results=250
+  escape_params: boolean (optional) If false, the calling code has already
+                 ensured that the query will form a valid URL (all
+                 reserved characters have been escaped). If true, this
+                 method will escape the query and any URL parameters
+                 provided.
+  converter: func (optional) A function which will be executed on the 
+      server's response. Often this is a function like 
+      GDataEntryFromString which will parse the body of the server's 
+      response and return a GDataEntry.

+Returns:
+  If the put succeeded, this method will return a GDataFeed, GDataEntry,
+  or the results of running converter on the server's result body (if
+  converter was specified).
+ +
RevokeAuthSubToken(self)
Revokes an existing AuthSub token.

+Raises:
+  NonAuthSubToken if the user's auth token is not an AuthSub token
+ +
RevokeOAuthToken(self, request_url='https://www.google.com/accounts/AuthSubRevokeToken')
Revokes an existing OAuth token.

+request_url: Token revoke URL. The default is
+      'https://www.google.com/accounts/AuthSubRevokeToken'.
+Raises:
+  NonOAuthToken if the user's auth token is not an OAuth token.
+  RevokingOAuthTokenFailed if request for revoking an OAuth token failed.
+ +
SetAuthSubToken(self, token, scopes=None, rsa_key=None)
Sets the token sent in requests to an AuthSub token.

+Sets the current_token and attempts to add the token to the token_store.

+Only use this method if you have received a token from the AuthSub
+service. The auth token is set automatically when UpgradeToSessionToken()
+is used. See documentation for Google AuthSub here:
+http://code.google.com/apis/accounts/AuthForWebApps.html 

+Args:
+ token: gdata.auth.AuthSubToken or gdata.auth.SecureAuthSubToken or string
+        The token returned by the AuthSub service. If the token is an
+        AuthSubToken or SecureAuthSubToken, the scope information stored in
+        the token is used. If the token is a string, the scopes parameter is
+        used to determine the valid scopes.
+ scopes: list of URLs for which the token is valid. This is only used
+         if the token parameter is a string.
+ rsa_key: string (optional) Private key required for RSA_SHA1 signature
+          method.  This parameter is necessary if the token is a string
+          representing a secure token.
+ +
SetClientLoginToken(self, token, scopes=None)
Sets the token sent in requests to a ClientLogin token.

+This method sets the current_token to a new ClientLoginToken and it 
+also attempts to add the ClientLoginToken to the token_store.

+Only use this method if you have received a token from the ClientLogin
+service. The auth_token is set automatically when ProgrammaticLogin()
+is used. See documentation for Google ClientLogin here:
+http://code.google.com/apis/accounts/docs/AuthForInstalledApps.html

+Args:
+  token: string or instance of a ClientLoginToken.
+ +
SetOAuthInputParameters(self, signature_method, consumer_key, consumer_secret=None, rsa_key=None, two_legged_oauth=False, requestor_id=None)
Sets parameters required for using OAuth authentication mechanism.

+NOTE: Though consumer_secret and rsa_key are optional, either of the two
+is required depending on the value of the signature_method.

+Args:
+  signature_method: class which provides implementation for strategy class
+      oauth.oauth.OAuthSignatureMethod. Signature method to be used for
+      signing each request. Valid implementations are provided as the
+      constants defined by gdata.auth.OAuthSignatureMethod. Currently
+      they are gdata.auth.OAuthSignatureMethod.RSA_SHA1 and
+      gdata.auth.OAuthSignatureMethod.HMAC_SHA1
+  consumer_key: string Domain identifying third_party web application.
+  consumer_secret: string (optional) Secret generated during registration.
+      Required only for HMAC_SHA1 signature method.
+  rsa_key: string (optional) Private key required for RSA_SHA1 signature
+      method.
+  two_legged_oauth: boolean (optional) Enables two-legged OAuth process.
+  requestor_id: string (optional) User email adress to make requests on
+      their behalf.  This parameter should only be set when two_legged_oauth
+      is True.
+ +
SetOAuthToken(self, oauth_token)
Attempts to set the current token and add it to the token store.

+The oauth_token can be any OAuth token i.e. unauthorized request token,
+authorized request token or access token.
+This method also attempts to add the token to the token store.
+Use this method any time you want the current token to point to the
+oauth_token passed. For e.g. call this method with the request token
+you receive from FetchOAuthRequestToken.

+Args:
+  request_token: gdata.auth.OAuthToken OAuth request token.
+ +
UpgradeToOAuthAccessToken(self, authorized_request_token=None, request_url='https://www.google.com/accounts/OAuthGetAccessToken', oauth_version='1.0', oauth_verifier=None)
Upgrades the authorized request token to an access token and returns it

+Args:
+  authorized_request_token: gdata.auth.OAuthToken (optional) OAuth request
+      token. If not specified, then the current token will be used if it is
+      of type <gdata.auth.OAuthToken>, else it is found by looking in the
+      token_store by looking for a token for the current scope.
+  request_url: Access token URL. The default is
+      'https://www.google.com/accounts/OAuthGetAccessToken'.
+  oauth_version: str (default='1.0') oauth_version parameter. All other
+      'oauth_' parameters are added by default. This parameter too, is
+      added by default but here you can override it's value.
+  oauth_verifier: str (optional) If present, it is assumed that the client
+    will use the OAuth v1.0a protocol which includes passing the
+    oauth_verifier (as returned by the SP) in the access token step.

+Returns:
+  Access token
+      
+Raises:
+  NonOAuthToken if the user's authorized request token is not an OAuth
+  token or if an authorized request token was not available.
+  TokenUpgradeFailed if the server responded to the request with an 
+  error.
+ +
UpgradeToSessionToken(self, token=None)
Upgrades a single use AuthSub token to a session token.

+Args:
+  token: A gdata.auth.AuthSubToken or gdata.auth.SecureAuthSubToken
+         (optional) which is good for a single use but can be upgraded
+         to a session token. If no token is passed in, the token
+         is found by looking in the token_store by looking for a token
+         for the current scope.

+Raises:
+  NonAuthSubToken if the user's auth token is not an AuthSub token
+  TokenUpgradeFailed if the server responded to the request with an 
+  error.
+ +
upgrade_to_session_token(self, token)
Upgrades a single use AuthSub token to a session token.

+Args:
+  token: A gdata.auth.AuthSubToken or gdata.auth.SecureAuthSubToken
+         which is good for a single use but can be upgraded to a
+         session token.

+Returns:
+  The upgraded token as a gdata.auth.AuthSubToken object.

+Raises:
+  TokenUpgradeFailed if the server responded to the request with an 
+  error.
+ +
+Data descriptors inherited from gdata.service.GDataService:
+
captcha_token
+
Get the captcha token for a login request.
+
+
captcha_url
+
Get the captcha URL for a login request.
+
+
source
+
The source is the name of the application making the request. 
+It should be in the form company_id-app_name-app_version
+
+
+Data and other attributes inherited from gdata.service.GDataService:
+
auth_token = None
+ +
handler = None
+ +
tokens = None
+ +
+Methods inherited from atom.service.AtomService:
+
UseBasicAuth(self, username, password, for_proxy=False)
Sets an Authenticaiton: Basic HTTP header containing plaintext.

+Deprecated, use use_basic_auth instead.

+The username and password are base64 encoded and added to an HTTP header
+which will be included in each request. Note that your username and 
+password are sent in plaintext.

+Args:
+  username: str
+  password: str
+ +
request(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
+ +
use_basic_auth(self, username, password, scopes=None)
+ +
+Data descriptors inherited from atom.service.AtomService:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
debug
+
If True, HTTP debug information is printed.
+
+
override_token
+
+
+Data and other attributes inherited from atom.service.AtomService:
+
auto_set_current_token = True
+ +
auto_store_tokens = True
+ +
current_token = None
+ +
port = 80
+ +
ssl = False
+ +

+ + + + + +
 
+Data
       ACCOUNT_TYPE = 'HOSTED_OR_GOOGLE'
+ANNOTATION_FEED = '/books/feeds/users/%s/volumes'
+BOOK_SERVER = 'books.google.com'
+BOOK_SERVICE = 'print'
+GENERAL_FEED = '/books/feeds/volumes'
+ITEM_FEED = '/books/feeds/volumes/'
+LIBRARY_FEED = '/books/feeds/users/%s/collections/library/volumes'
+PARTNER_FEED = '/books/feeds/p/%s/volumes'
+__author__ = 'James Sams <sams.james@gmail.com>'
+__copyright__ = 'Apache License v2.0'

+ + + + + +
 
+Author
       James Sams <sams.james@gmail.com>
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.calendar.data.html python-gdata-2.0.8/pydocs/gdata.calendar.data.html --- python-gdata-1.2.4/pydocs/gdata.calendar.data.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.calendar.data.html 2010-02-26 23:16:48.000000000 +0000 @@ -0,0 +1,8816 @@ + + +Python: module gdata.calendar.data + + + + +
 
+ 
gdata.calendar.data
index
/usr/local/svn/gdata-python-client/src/gdata/calendar/data.py
+

Contains the data classes of the Google Calendar Data API

+

+ + + + + +
 
+Modules
       
atom
+
gdata
+

+ + + + + +
 
+Classes
       
+
atom.core.XmlElement(__builtin__.object) +
+
+
AccessLevelProperty +
AllowGSync2Property +
AllowGSyncProperty +
AnyoneCanAddSelfProperty +
ColorProperty +
GuestsCanInviteOthersProperty +
GuestsCanModifyProperty +
GuestsCanSeeGuestsProperty +
HiddenProperty +
IcalUIDProperty +
OverrideNameProperty +
PrivateCopyProperty +
QuickAddProperty +
ResourceProperty +
SelectedProperty +
SendAclNotificationsProperty +
SendEventNotificationsProperty +
SequenceNumberProperty +
SettingsProperty +
SuppressReplyNotificationsProperty +
SyncEventProperty +
TimeZoneProperty +
TimesCleanedProperty +
WebContent +
WebContentGadgetPref +
+
+
gdata.acl.data.AclRole(atom.core.XmlElement) +
+
+
CalendarAclRole +
+
+
gdata.data.BatchEntry(gdata.data.GDEntry) +
+
+
CalendarEventEntry +
+
+
gdata.data.BatchFeed(gdata.data.GDFeed) +
+
+
CalendarEventFeed +
+
+
gdata.data.Comments(atom.core.XmlElement) +
+
+
CalendarComments +
+
+
gdata.data.ExtendedProperty(atom.core.XmlElement) +
+
+
CalendarExtendedProperty +
+
+
gdata.data.GDEntry(atom.data.Entry, gdata.data.LinkFinder) +
+
+
CalendarAclEntry +
CalendarCommentEntry +
CalendarEntry +
CalendarRecurrenceExceptionEntry +
SettingsEntry +
+
+
gdata.data.GDFeed(atom.data.Feed, gdata.data.LinkFinder) +
+
+
CalendarAclFeed +
CalendarCommentFeed +
CalendarFeed +
CalendarSettingsFeed +
+
+
gdata.data.RecurrenceException(atom.core.XmlElement) +
+
+
CalendarRecurrenceException +
+
+
gdata.data.Where(atom.core.XmlElement) +
+
+
CalendarWhere +
+
+
gdata.data.Who(atom.core.XmlElement) +
+
+
EventWho +
+
+
+

+ + + + + + + +
 
+class AccessLevelProperty(atom.core.XmlElement)
   Describes how much a given user may do with an event or calendar
 
 
Method resolution order:
+
AccessLevelProperty
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class AllowGSync2Property(atom.core.XmlElement)
   Whether the user is permitted to run Google Apps Sync
 
 
Method resolution order:
+
AllowGSync2Property
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class AllowGSyncProperty(atom.core.XmlElement)
   Whether the user is permitted to run Google Apps Sync
 
 
Method resolution order:
+
AllowGSyncProperty
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class AnyoneCanAddSelfProperty(atom.core.XmlElement)
   Whether anyone can add self as attendee
 
 
Method resolution order:
+
AnyoneCanAddSelfProperty
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class CalendarAclEntry(gdata.data.GDEntry)
   Describes an entry in a feed of a Calendar access control list (ACL)
 
 
Method resolution order:
+
CalendarAclEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
send_acl_notifications = <class 'gdata.calendar.data.SendAclNotificationsProperty'>
Describes whether to send ACL notifications to grantees
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class CalendarAclFeed(gdata.data.GDFeed)
   Describes a Calendar access contorl list (ACL) feed
 
 
Method resolution order:
+
CalendarAclFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.calendar.data.CalendarAclEntry'>]
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class CalendarAclRole(gdata.acl.data.AclRole)
   Describes the Calendar roles of an entry in the Calendar access control list
 
 
Method resolution order:
+
CalendarAclRole
+
gdata.acl.data.AclRole
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes inherited from gdata.acl.data.AclRole:
+
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class CalendarCommentEntry(gdata.data.GDEntry)
   Describes an entry in a feed of a Calendar event's comments
 
 
Method resolution order:
+
CalendarCommentEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class CalendarCommentFeed(gdata.data.GDFeed)
   Describes feed of a Calendar event's comments
 
 
Method resolution order:
+
CalendarCommentFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.calendar.data.CalendarCommentEntry'>]
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class CalendarComments(gdata.data.Comments)
   Describes a container of a feed link for Calendar comment entries
 
 
Method resolution order:
+
CalendarComments
+
gdata.data.Comments
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes inherited from gdata.data.Comments:
+
feed_link = <class 'gdata.data.FeedLink'>
The gd:feedLink element.

+Represents a logically nested feed. For example, a calendar feed might
+have a nested feed representing all comments on entries.
+ +
rel = 'rel'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class CalendarEntry(gdata.data.GDEntry)
   Describes a Calendar entry in the feed of a user's calendars
 
 
Method resolution order:
+
CalendarEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
accesslevel = <class 'gdata.calendar.data.AccessLevelProperty'>
Describes how much a given user may do with an event or calendar
+ +
color = <class 'gdata.calendar.data.ColorProperty'>
Describes the color of a calendar
+ +
hidden = <class 'gdata.calendar.data.HiddenProperty'>
Describes whether a calendar is hidden
+ +
overridename = <class 'gdata.calendar.data.OverrideNameProperty'>
Describes the override name property of a calendar
+ +
selected = <class 'gdata.calendar.data.SelectedProperty'>
Describes whether a calendar is selected
+ +
times_cleaned = <class 'gdata.calendar.data.TimesCleanedProperty'>
Describes how many times calendar was cleaned via Manage Calendars
+ +
timezone = <class 'gdata.calendar.data.TimeZoneProperty'>
Describes the time zone of a calendar
+ +
where = [<class 'gdata.calendar.data.CalendarWhere'>]
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class CalendarEventEntry(gdata.data.BatchEntry)
   Describes a Calendar event entry
 
 
Method resolution order:
+
CalendarEventEntry
+
gdata.data.BatchEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
anyone_can_add_self = <class 'gdata.calendar.data.AnyoneCanAddSelfProperty'>
Whether anyone can add self as attendee
+ +
extended_property = [<class 'gdata.calendar.data.CalendarExtendedProperty'>]
+ +
georss_where = <class 'gdata.geo.data.GeoRssWhere'>
Describes a geographical location or region.
+ +
guests_can_invite_others = <class 'gdata.calendar.data.GuestsCanInviteOthersProperty'>
Whether guests can invite others to the event
+ +
guests_can_modify = <class 'gdata.calendar.data.GuestsCanModifyProperty'>
Whether guests can modify event
+ +
guests_can_see_guests = <class 'gdata.calendar.data.GuestsCanSeeGuestsProperty'>
Whether guests can see other attendees
+ +
private_copy = <class 'gdata.calendar.data.PrivateCopyProperty'>
Indicates whether this is a private copy of the event, changes to which should not be sent to other calendars
+ +
quickadd = <class 'gdata.calendar.data.QuickAddProperty'>
Describes whether gd:content is for quick-add processing
+ +
send_event_notifications = <class 'gdata.calendar.data.SendEventNotificationsProperty'>
Describes whether to send event notifications to other participants of the event
+ +
sequence = <class 'gdata.calendar.data.SequenceNumberProperty'>
Describes sequence number of an event
+ +
suppress_reply_notifications = <class 'gdata.calendar.data.SuppressReplyNotificationsProperty'>
Lists notification methods to be suppressed for this reply
+ +
sync_event = <class 'gdata.calendar.data.SyncEventProperty'>
Describes whether this is a sync scenario where the Ical UID and Sequence number are honored during inserts and updates
+ +
uid = <class 'gdata.calendar.data.IcalUIDProperty'>
Describes the UID in the ical export of the event
+ +
+Data and other attributes inherited from gdata.data.BatchEntry:
+
batch_id = <class 'gdata.data.BatchId'>
Identifies a single operation in a batch request.
+ +
batch_operation = <class 'gdata.data.BatchOperation'>
The CRUD operation which this batch entry represents.
+ +
batch_status = <class 'gdata.data.BatchStatus'>
The batch:status element present in a batch response entry.

+A status element contains the code (HTTP response code) and
+reason as elements. In a single request these fields would
+be part of the HTTP response, but in a batch request each
+Entry operation has a corresponding Entry in the response
+feed which includes status information.

+See http://code.google.com/apis/gdata/batch.html#Handling_Errors
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class CalendarEventFeed(gdata.data.BatchFeed)
   Describes a Calendar event feed
 
 
Method resolution order:
+
CalendarEventFeed
+
gdata.data.BatchFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
allow_g_sync = <class 'gdata.calendar.data.AllowGSyncProperty'>
Whether the user is permitted to run Google Apps Sync
+ +
allow_g_sync2 = <class 'gdata.calendar.data.AllowGSync2Property'>
Whether the user is permitted to run Google Apps Sync
+ +
entry = [<class 'gdata.calendar.data.CalendarEventEntry'>]
+ +
times_cleaned = <class 'gdata.calendar.data.TimesCleanedProperty'>
Describes how many times calendar was cleaned via Manage Calendars
+ +
timezone = <class 'gdata.calendar.data.TimeZoneProperty'>
Describes the time zone of a calendar
+ +
+Methods inherited from gdata.data.BatchFeed:
+
AddBatchEntry = add_batch_entry(self, entry=None, id_url_string=None, batch_id_string=None, operation_string=None)
Logic for populating members of a BatchEntry and adding to the feed.

+If the entry is not a BatchEntry, it is converted to a BatchEntry so
+that the batch specific members will be present.

+The id_url_string can be used in place of an entry if the batch operation
+applies to a URL. For example query and delete operations require just
+the URL of an entry, no body is sent in the HTTP request. If an
+id_url_string is sent instead of an entry, a BatchEntry is created and
+added to the feed.

+This method also assigns the desired batch id to the entry so that it
+can be referenced in the server's response. If the batch_id_string is
+None, this method will assign a batch_id to be the index at which this
+entry will be in the feed's entry list.

+Args:
+  entry: BatchEntry, atom.data.Entry, or another Entry flavor (optional)
+      The entry which will be sent to the server as part of the batch
+      request. The item must have a valid atom id so that the server
+      knows which entry this request references.
+  id_url_string: str (optional) The URL of the entry to be acted on. You
+      can find this URL in the text member of the atom id for an entry.
+      If an entry is not sent, this id will be used to construct a new
+      BatchEntry which will be added to the request feed.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+  operation_string: str (optional) The desired batch operation which will
+      set the batch_operation.type member of the entry. Options are
+      'insert', 'update', 'delete', and 'query'

+Raises:
+  MissingRequiredParameters: Raised if neither an id_ url_string nor an
+      entry are provided in the request.

+Returns:
+  The added entry.
+ +
AddDelete = add_delete(self, url_string=None, entry=None, batch_id_string=None)
Adds a delete request to the batch request feed.

+This method takes either the url_string which is the atom id of the item
+to be deleted, or the entry itself. The atom id of the entry must be
+present so that the server knows which entry should be deleted.

+Args:
+  url_string: str (optional) The URL of the entry to be deleted. You can
+     find this URL in the text member of the atom id for an entry.
+  entry: BatchEntry (optional) The entry to be deleted.
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters: Raised if neither a url_string nor an entry
+      are provided in the request.
+ +
AddInsert = add_insert(self, entry, batch_id_string=None)
Add an insert request to the operations in this batch request feed.

+If the entry doesn't yet have an operation or a batch id, these will
+be set to the insert operation and a batch_id specified as a parameter.

+Args:
+  entry: BatchEntry The entry which will be sent in the batch feed as an
+      insert request.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+ +
AddQuery = add_query(self, url_string=None, entry=None, batch_id_string=None)
Adds a query request to the batch request feed.

+This method takes either the url_string which is the query URL
+whose results will be added to the result feed. The query URL will
+be encapsulated in a BatchEntry, and you may pass in the BatchEntry
+with a query URL instead of sending a url_string.

+Args:
+  url_string: str (optional)
+  entry: BatchEntry (optional)
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters
+ +
AddUpdate = add_update(self, entry, batch_id_string=None)
Add an update request to the list of batch operations in this feed.

+Sets the operation type of the entry to insert if it is not already set
+and assigns the desired batch id to the entry so that it can be
+referenced in the server's response.

+Args:
+  entry: BatchEntry The entry which will be sent to the server as an
+      update (HTTP PUT) request. The item must have a valid atom id
+      so that the server knows which entry to replace.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. See also comments for AddInsert.
+ +
FindBatchLink = find_batch_link(self)
+ +
add_batch_entry(self, entry=None, id_url_string=None, batch_id_string=None, operation_string=None)
Logic for populating members of a BatchEntry and adding to the feed.

+If the entry is not a BatchEntry, it is converted to a BatchEntry so
+that the batch specific members will be present.

+The id_url_string can be used in place of an entry if the batch operation
+applies to a URL. For example query and delete operations require just
+the URL of an entry, no body is sent in the HTTP request. If an
+id_url_string is sent instead of an entry, a BatchEntry is created and
+added to the feed.

+This method also assigns the desired batch id to the entry so that it
+can be referenced in the server's response. If the batch_id_string is
+None, this method will assign a batch_id to be the index at which this
+entry will be in the feed's entry list.

+Args:
+  entry: BatchEntry, atom.data.Entry, or another Entry flavor (optional)
+      The entry which will be sent to the server as part of the batch
+      request. The item must have a valid atom id so that the server
+      knows which entry this request references.
+  id_url_string: str (optional) The URL of the entry to be acted on. You
+      can find this URL in the text member of the atom id for an entry.
+      If an entry is not sent, this id will be used to construct a new
+      BatchEntry which will be added to the request feed.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+  operation_string: str (optional) The desired batch operation which will
+      set the batch_operation.type member of the entry. Options are
+      'insert', 'update', 'delete', and 'query'

+Raises:
+  MissingRequiredParameters: Raised if neither an id_ url_string nor an
+      entry are provided in the request.

+Returns:
+  The added entry.
+ +
add_delete(self, url_string=None, entry=None, batch_id_string=None)
Adds a delete request to the batch request feed.

+This method takes either the url_string which is the atom id of the item
+to be deleted, or the entry itself. The atom id of the entry must be
+present so that the server knows which entry should be deleted.

+Args:
+  url_string: str (optional) The URL of the entry to be deleted. You can
+     find this URL in the text member of the atom id for an entry.
+  entry: BatchEntry (optional) The entry to be deleted.
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters: Raised if neither a url_string nor an entry
+      are provided in the request.
+ +
add_insert(self, entry, batch_id_string=None)
Add an insert request to the operations in this batch request feed.

+If the entry doesn't yet have an operation or a batch id, these will
+be set to the insert operation and a batch_id specified as a parameter.

+Args:
+  entry: BatchEntry The entry which will be sent in the batch feed as an
+      insert request.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+ +
add_query(self, url_string=None, entry=None, batch_id_string=None)
Adds a query request to the batch request feed.

+This method takes either the url_string which is the query URL
+whose results will be added to the result feed. The query URL will
+be encapsulated in a BatchEntry, and you may pass in the BatchEntry
+with a query URL instead of sending a url_string.

+Args:
+  url_string: str (optional)
+  entry: BatchEntry (optional)
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters
+ +
add_update(self, entry, batch_id_string=None)
Add an update request to the list of batch operations in this feed.

+Sets the operation type of the entry to insert if it is not already set
+and assigns the desired batch id to the entry so that it can be
+referenced in the server's response.

+Args:
+  entry: BatchEntry The entry which will be sent to the server as an
+      update (HTTP PUT) request. The item must have a valid atom id
+      so that the server knows which entry to replace.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. See also comments for AddInsert.
+ +
find_batch_link(self)
+ +
+Data and other attributes inherited from gdata.data.BatchFeed:
+
interrupted = <class 'gdata.data.BatchInterrupted'>
The batch:interrupted element sent if batch request was interrupted.

+Only appears in a feed if some of the batch entries could not be processed.
+See: http://code.google.com/apis/gdata/batch.html#Handling_Errors
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class CalendarExtendedProperty(gdata.data.ExtendedProperty)
   Defines a value for the realm attribute that is used only in the calendar API
 
 
Method resolution order:
+
CalendarExtendedProperty
+
gdata.data.ExtendedProperty
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from gdata.data.ExtendedProperty:
+
GetXmlBlob = get_xml_blob(self)
Returns the XML blob as an atom.core.XmlElement.

+Returns:
+  An XmlElement representing the blob's XML, or None if no
+  blob was set.
+ +
SetXmlBlob = set_xml_blob(self, blob)
Sets the contents of the extendedProperty to XML as a child node.

+Since the extendedProperty is only allowed one child element as an XML
+blob, setting the XML blob will erase any preexisting member elements
+in this object.

+Args:
+  blob: str  or atom.core.XmlElement representing the XML blob stored in
+        the extendedProperty.
+ +
get_xml_blob(self)
Returns the XML blob as an atom.core.XmlElement.

+Returns:
+  An XmlElement representing the blob's XML, or None if no
+  blob was set.
+ +
set_xml_blob(self, blob)
Sets the contents of the extendedProperty to XML as a child node.

+Since the extendedProperty is only allowed one child element as an XML
+blob, setting the XML blob will erase any preexisting member elements
+in this object.

+Args:
+  blob: str  or atom.core.XmlElement representing the XML blob stored in
+        the extendedProperty.
+ +
+Data and other attributes inherited from gdata.data.ExtendedProperty:
+
name = 'name'
+ +
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class CalendarFeed(gdata.data.GDFeed)
   Describes a feed of Calendars
 
 
Method resolution order:
+
CalendarFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.calendar.data.CalendarEntry'>]
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class CalendarRecurrenceException(gdata.data.RecurrenceException)
   Describes an exception to a recurring Calendar event
 
 
Method resolution order:
+
CalendarRecurrenceException
+
gdata.data.RecurrenceException
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes inherited from gdata.data.RecurrenceException:
+
entry_link = <class 'gdata.data.EntryLink'>
The gd:entryLink element.

+Represents a logically nested entry. For example, a <gd:who>
+representing a contact might have a nested entry from a contact feed.
+ +
original_event = <class 'gdata.data.OriginalEvent'>
The gd:originalEvent element.

+Equivalent to the Recurrence ID property specified in section 4.8.4.4
+of RFC 2445. Appears in every instance of a recurring event, to identify
+the original event.

+Contains a <gd:when> element specifying the original start time of the
+instance that has become an exception.
+ +
specialized = 'specialized'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class CalendarRecurrenceExceptionEntry(gdata.data.GDEntry)
   Describes an entry used by a Calendar recurrence exception entry link
 
 
Method resolution order:
+
CalendarRecurrenceExceptionEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
sequence = <class 'gdata.calendar.data.SequenceNumberProperty'>
Describes sequence number of an event
+ +
uid = <class 'gdata.calendar.data.IcalUIDProperty'>
Describes the UID in the ical export of the event
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class CalendarSettingsFeed(gdata.data.GDFeed)
   Personal settings for Calendar application
 
 
Method resolution order:
+
CalendarSettingsFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.calendar.data.SettingsEntry'>]
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class CalendarWhere(gdata.data.Where)
   Extends the base Where class with Calendar extensions
 
 
Method resolution order:
+
CalendarWhere
+
gdata.data.Where
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes inherited from gdata.data.Where:
+
entry_link = <class 'gdata.data.EntryLink'>
The gd:entryLink element.

+Represents a logically nested entry. For example, a <gd:who>
+representing a contact might have a nested entry from a contact feed.
+ +
label = 'label'
+ +
rel = 'rel'
+ +
value = 'valueString'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class ColorProperty(atom.core.XmlElement)
   Describes the color of a calendar
 
 
Method resolution order:
+
ColorProperty
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class EventWho(gdata.data.Who)
   Extends the base Who class with Calendar extensions
 
 
Method resolution order:
+
EventWho
+
gdata.data.Who
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
resource = <class 'gdata.calendar.data.ResourceProperty'>
Describes whether gd:who is a resource such as a conference room
+ +
+Data and other attributes inherited from gdata.data.Who:
+
attendee_status = <class 'gdata.data.AttendeeStatus'>
The gd:attendeeStatus element.
+ +
attendee_type = <class 'gdata.data.AttendeeType'>
The gd:attendeeType element.
+ +
email = 'email'
+ +
entry_link = <class 'gdata.data.EntryLink'>
The gd:entryLink element.

+Represents a logically nested entry. For example, a <gd:who>
+representing a contact might have a nested entry from a contact feed.
+ +
rel = 'rel'
+ +
value = 'valueString'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class GuestsCanInviteOthersProperty(atom.core.XmlElement)
   Whether guests can invite others to the event
 
 
Method resolution order:
+
GuestsCanInviteOthersProperty
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class GuestsCanModifyProperty(atom.core.XmlElement)
   Whether guests can modify event
 
 
Method resolution order:
+
GuestsCanModifyProperty
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class GuestsCanSeeGuestsProperty(atom.core.XmlElement)
   Whether guests can see other attendees
 
 
Method resolution order:
+
GuestsCanSeeGuestsProperty
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class HiddenProperty(atom.core.XmlElement)
   Describes whether a calendar is hidden
 
 
Method resolution order:
+
HiddenProperty
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class IcalUIDProperty(atom.core.XmlElement)
   Describes the UID in the ical export of the event
 
 
Method resolution order:
+
IcalUIDProperty
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class OverrideNameProperty(atom.core.XmlElement)
   Describes the override name property of a calendar
 
 
Method resolution order:
+
OverrideNameProperty
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class PrivateCopyProperty(atom.core.XmlElement)
   Indicates whether this is a private copy of the event, changes to which should not be sent to other calendars
 
 
Method resolution order:
+
PrivateCopyProperty
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class QuickAddProperty(atom.core.XmlElement)
   Describes whether gd:content is for quick-add processing
 
 
Method resolution order:
+
QuickAddProperty
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class ResourceProperty(atom.core.XmlElement)
   Describes whether gd:who is a resource such as a conference room
 
 
Method resolution order:
+
ResourceProperty
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
id = 'id'
+ +
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class SelectedProperty(atom.core.XmlElement)
   Describes whether a calendar is selected
 
 
Method resolution order:
+
SelectedProperty
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class SendAclNotificationsProperty(atom.core.XmlElement)
   Describes whether to send ACL notifications to grantees
 
 
Method resolution order:
+
SendAclNotificationsProperty
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class SendEventNotificationsProperty(atom.core.XmlElement)
   Describes whether to send event notifications to other participants of the event
 
 
Method resolution order:
+
SendEventNotificationsProperty
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class SequenceNumberProperty(atom.core.XmlElement)
   Describes sequence number of an event
 
 
Method resolution order:
+
SequenceNumberProperty
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class SettingsEntry(gdata.data.GDEntry)
   Describes a Calendar Settings property entry
 
 
Method resolution order:
+
SettingsEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
settings_property = <class 'gdata.calendar.data.SettingsProperty'>
User preference name-value pair
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class SettingsProperty(atom.core.XmlElement)
   User preference name-value pair
 
 
Method resolution order:
+
SettingsProperty
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
name = 'name'
+ +
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class SuppressReplyNotificationsProperty(atom.core.XmlElement)
   Lists notification methods to be suppressed for this reply
 
 
Method resolution order:
+
SuppressReplyNotificationsProperty
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
methods = 'methods'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class SyncEventProperty(atom.core.XmlElement)
   Describes whether this is a sync scenario where the Ical UID and Sequence number are honored during inserts and updates
 
 
Method resolution order:
+
SyncEventProperty
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class TimeZoneProperty(atom.core.XmlElement)
   Describes the time zone of a calendar
 
 
Method resolution order:
+
TimeZoneProperty
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class TimesCleanedProperty(atom.core.XmlElement)
   Describes how many times calendar was cleaned via Manage Calendars
 
 
Method resolution order:
+
TimesCleanedProperty
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class WebContent(atom.core.XmlElement)
   Describes a "web content" extension
 
 
Method resolution order:
+
WebContent
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
display = 'display'
+ +
height = 'height'
+ +
url = 'url'
+ +
web_content_gadget_pref = [<class 'gdata.calendar.data.WebContentGadgetPref'>]
+ +
width = 'width'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class WebContentGadgetPref(atom.core.XmlElement)
   Describes a single web content gadget preference
 
 
Method resolution order:
+
WebContentGadgetPref
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
name = 'name'
+ +
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + +
 
+Data
       GCAL_TEMPLATE = '{http://schemas.google.com/gCal/2005/}%s'
+__author__ = 'j.s@google.com (Jeff Scudder)'

+ + + + + +
 
+Author
       j.s@google.com (Jeff Scudder)
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.calendar.html python-gdata-2.0.8/pydocs/gdata.calendar.html --- python-gdata-1.2.4/pydocs/gdata.calendar.html 2008-10-16 00:01:57.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.calendar.html 2009-11-25 01:04:13.000000000 +0000 @@ -17,8 +17,9 @@ Package Contents

       
service
-

+

data
+
service
+

 
@@ -30,6 +31,9 @@
Comments +
GuestsCanInviteOthers +
GuestsCanModify +
GuestsCanSeeGuests
OriginalEvent
QuickAdd
Recurrence @@ -37,6 +41,9 @@
Reminder
Scope
SendEventNotifications +
Sequence +
SyncEvent +
UID
UriEnumElement
@@ -431,23 +438,23 @@       class.
  category: list (optional) A list of Category instances
  contributor: list (optional) A list on Contributor instances
-  generator: Generator (optional) 
-  icon: Icon (optional) 
+  generator: Generator (optional)
+  icon: Icon (optional)
  id: Id (optional) The entry's Id element
  link: list (optional) A list of Link instances
-  logo: Logo (optional) 
+  logo: Logo (optional)
  rights: Rights (optional) The entry's Rights element
  subtitle: Subtitle (optional) The entry's subtitle element
  title: Title (optional) the entry's title element
  updated: Updated (optional) the entry's updated element
-  entry: list (optional) A list of the Entry instances contained in the 
+  entry: list (optional) A list of the Entry instances contained in the
      feed.
-  text: String (optional) The text contents of the element. This is the 
-      contents of the Entry's XML text node. 
+  text: String (optional) The text contents of the element. This is the
+      contents of the Entry's XML text node.
      (Example: <foo>This is the text</foo>)
  extension_elements: list (optional) A list of ExtensionElement instances
      which are children of this element.
-  extension_attributes: dict (optional) A dictionary of strings which are 
+  extension_attributes: dict (optional) A dictionary of strings which are
      the values for additional XML attributes of this element.

@@ -559,29 +566,7 @@
Methods inherited from atom.Entry:
-
__init__(self, author=None, category=None, content=None, contributor=None, atom_id=None, link=None, published=None, rights=None, source=None, summary=None, control=None, title=None, updated=None, extension_elements=None, extension_attributes=None, text=None)
Constructor for atom:entry

-Args:
-  author: list A list of Author instances which belong to this class.
-  category: list A list of Category instances
-  content: Content The entry's Content
-  contributor: list A list on Contributor instances
-  id: Id The entry's Id element
-  link: list A list of Link instances
-  published: Published The entry's Published element
-  rights: Rights The entry's Rights element
-  source: Source the entry's source element
-  summary: Summary the entry's summary element
-  title: Title the entry's title element
-  updated: Updated the entry's updated element
-  control: The entry's app:control element which can be used to mark an 
-      entry as a draft which should not be publicly viewable.
-  text: String The text contents of the element. This is the contents
-      of the Entry's XML text node. (Example: <foo>This is the text</foo>)
-  extension_elements: list A list of ExtensionElement instances which are
-      children of this element.
-  extension_attributes: dict A dictionary of strings which are the values
-      for additional XML attributes of this element.
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.

Methods inherited from atom.AtomBase:
@@ -683,23 +668,23 @@       class.
  category: list (optional) A list of Category instances
  contributor: list (optional) A list on Contributor instances
-  generator: Generator (optional) 
-  icon: Icon (optional) 
+  generator: Generator (optional)
+  icon: Icon (optional)
  id: Id (optional) The entry's Id element
  link: list (optional) A list of Link instances
-  logo: Logo (optional) 
+  logo: Logo (optional)
  rights: Rights (optional) The entry's Rights element
  subtitle: Subtitle (optional) The entry's subtitle element
  title: Title (optional) the entry's title element
  updated: Updated (optional) the entry's updated element
-  entry: list (optional) A list of the Entry instances contained in the 
+  entry: list (optional) A list of the Entry instances contained in the
      feed.
-  text: String (optional) The text contents of the element. This is the 
-      contents of the Entry's XML text node. 
+  text: String (optional) The text contents of the element. This is the
+      contents of the Entry's XML text node.
      (Example: <foo>This is the text</foo>)
  extension_elements: list (optional) A list of ExtensionElement instances
      which are children of this element.
-  extension_attributes: dict (optional) A dictionary of strings which are 
+  extension_attributes: dict (optional) A dictionary of strings which are
      the values for additional XML attributes of this element.

@@ -804,10 +789,10 @@
GetWebContentLink(self)
Finds the first link with rel set to WEB_CONTENT_REL
 
Returns:
-  A gdata.calendar.WebContentLink or none if none of the links had rel 
+  A gdata.calendar.WebContentLink or none if none of the links had rel
  equal to WEB_CONTENT_REL
-
__init__(self, author=None, category=None, content=None, atom_id=None, link=None, published=None, title=None, updated=None, transparency=None, comments=None, event_status=None, send_event_notifications=None, visibility=None, recurrence=None, recurrence_exception=None, where=None, when=None, who=None, quick_add=None, extended_property=None, original_event=None, batch_operation=None, batch_id=None, batch_status=None, extension_elements=None, extension_attributes=None, text=None)
+
__init__(self, author=None, category=None, content=None, atom_id=None, link=None, published=None, title=None, updated=None, transparency=None, comments=None, event_status=None, send_event_notifications=None, visibility=None, recurrence=None, recurrence_exception=None, where=None, when=None, who=None, quick_add=None, extended_property=None, original_event=None, batch_operation=None, batch_id=None, batch_status=None, sequence=None, reminder=None, sync_event=None, uid=None, guests_can_invite_others=None, guests_can_modify=None, guests_can_see_guests=None, extension_elements=None, extension_attributes=None, text=None)

Methods inherited from gdata.GDataEntry:
@@ -978,7 +963,7 @@  
 
If the entry is not a BatchEntry, it is converted to a BatchEntry so
-that the batch specific members will be present. 
+that the batch specific members will be present.
 
The id_url_string can be used in place of an entry if the batch operation
applies to a URL. For example query and delete operations require just
@@ -986,7 +971,7 @@ id_url_string is sent instead of an entry, a BatchEntry is created and
added to the feed.
 
-This method also assigns the desired batch id to the entry so that it 
+This method also assigns the desired batch id to the entry so that it
can be referenced in the server's response. If the batch_id_string is
None, this method will assign a batch_id to be the index at which this
entry will be in the feed's entry list.
@@ -994,7 +979,7 @@ Args:
  entry: BatchEntry, atom.Entry, or another Entry flavor (optional) The
      entry which will be sent to the server as part of the batch request.
-      The item must have a valid atom id so that the server knows which 
+      The item must have a valid atom id so that the server knows which
      entry this request references.
  id_url_string: str (optional) The URL of the entry to be acted on. You
      can find this URL in the text member of the atom id for an entry.
@@ -1019,17 +1004,17 @@
AddDelete(self, url_string=None, entry=None, batch_id_string=None)
Adds a delete request to the batch request feed.
 
This method takes either the url_string which is the atom id of the item
-to be deleted, or the entry itself. The atom id of the entry must be 
+to be deleted, or the entry itself. The atom id of the entry must be
present so that the server knows which entry should be deleted.
 
Args:
  url_string: str (optional) The URL of the entry to be deleted. You can
-     find this URL in the text member of the atom id for an entry. 
+     find this URL in the text member of the atom id for an entry.
  entry: BatchEntry (optional) The entry to be deleted.
  batch_id_string: str (optional)
 
Raises:
-  MissingRequiredParameters: Raised if neither a url_string nor an entry 
+  MissingRequiredParameters: Raised if neither a url_string nor an entry
      are provided in the request.
AddInsert(self, entry, batch_id_string=None)
Add an insert request to the operations in this batch request feed.
@@ -1048,7 +1033,7 @@
AddQuery(self, url_string=None, entry=None, batch_id_string=None)
Adds a query request to the batch request feed.
 
-This method takes either the url_string which is the query URL 
+This method takes either the url_string which is the query URL
whose results will be added to the result feed. The query URL will
be encapsulated in a BatchEntry, and you may pass in the BatchEntry
with a query URL instead of sending a url_string.
@@ -1064,7 +1049,7 @@
AddUpdate(self, entry, batch_id_string=None)
Add an update request to the list of batch operations in this feed.
 
Sets the operation type of the entry to insert if it is not already set
-and assigns the desired batch id to the entry so that it can be 
+and assigns the desired batch id to the entry so that it can be
referenced in the server's response.
 
Args:
@@ -1289,23 +1274,23 @@       class.
  category: list (optional) A list of Category instances
  contributor: list (optional) A list on Contributor instances
-  generator: Generator (optional) 
-  icon: Icon (optional) 
+  generator: Generator (optional)
+  icon: Icon (optional)
  id: Id (optional) The entry's Id element
  link: list (optional) A list of Link instances
-  logo: Logo (optional) 
+  logo: Logo (optional)
  rights: Rights (optional) The entry's Rights element
  subtitle: Subtitle (optional) The entry's subtitle element
  title: Title (optional) the entry's title element
  updated: Updated (optional) the entry's updated element
-  entry: list (optional) A list of the Entry instances contained in the 
+  entry: list (optional) A list of the Entry instances contained in the
      feed.
-  text: String (optional) The text contents of the element. This is the 
-      contents of the Entry's XML text node. 
+  text: String (optional) The text contents of the element. This is the
+      contents of the Entry's XML text node.
      (Example: <foo>This is the text</foo>)
  extension_elements: list (optional) A list of ExtensionElement instances
      which are children of this element.
-  extension_attributes: dict (optional) A dictionary of strings which are 
+  extension_attributes: dict (optional) A dictionary of strings which are
      the values for additional XML attributes of this element.

@@ -1625,6 +1610,187 @@ + + + + +
 
+class GuestsCanInviteOthers(atom.AtomBase)
   Indicates whether event attendees may invite others to the event.

+This element may only be changed by the organizer of the event. If not
+included as part of the event entry, this element will default to true
+during a POST request, and will inherit its previous value during a PUT
+request.
 
 
Method resolution order:
+
GuestsCanInviteOthers
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, value='true', *args, **kwargs)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class GuestsCanModify(atom.AtomBase)
   Indicates whether event attendees may modify the original event.

+If yes, changes are visible to organizer and other attendees. Otherwise,
+any changes made by attendees will be restricted to that attendee's
+calendar.

+This element may only be changed by the organizer of the event, and may
+be set to 'true' only if both gCal:guestsCanInviteOthers and
+gCal:guestsCanSeeGuests are set to true in the same PUT/POST request.
+Otherwise, request fails with HTTP error code 400 (Bad Request).

+If not included as part of the event entry, this element will default to
+false during a POST request, and will inherit its previous value during a
+PUT request.
 
 
Method resolution order:
+
GuestsCanModify
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, value='false', *args, **kwargs)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class GuestsCanSeeGuests(atom.AtomBase)
   Indicates whether attendees can see other people invited to the event.

+The organizer always sees all attendees. Guests always see themselves. This
+property affects what attendees see in the event's guest list via both the
+Calendar UI and API feeds.

+This element may only be changed by the organizer of the event.

+If not included as part of the event entry, this element will default to
+true during a POST request, and will inherit its previous value during a
+PUT request.
 
 
Method resolution order:
+
GuestsCanSeeGuests
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, value='true', *args, **kwargs)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + @@ -1794,7 +1960,7 @@ Methods inherited from atom.AtomBase:
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__init__(self, extension_elements=None, extension_attributes=None, text=None)
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
__str__(self)
@@ -1892,7 +2058,7 @@
Methods defined here:
-
__init__(self, absolute_time=None, days=None, hours=None, minutes=None, extension_elements=None, extension_attributes=None, text=None)
+
__init__(self, absolute_time=None, days=None, hours=None, minutes=None, method=None, extension_elements=None, extension_attributes=None, text=None)

Methods inherited from atom.AtomBase:
@@ -2136,6 +2302,104 @@
 
class Hidden(ValueAttributeContainer)
   
+ + +
 
+class Sequence(atom.AtomBase)
    
Method resolution order:
+
Sequence
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, value=None, extension_elements=None, extension_attributes=None, text=None)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + +
 
+class SyncEvent(atom.AtomBase)
    
Method resolution order:
+
SyncEvent
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, value='false', extension_elements=None, extension_attributes=None, text=None)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + @@ -2248,6 +2512,55 @@
 
class Timezone(ValueAttributeContainer)
   
+ + +
 
+class UID(atom.AtomBase)
    
Method resolution order:
+
UID
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, value=None, extension_elements=None, extension_attributes=None, text=None)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + diff -Nru python-gdata-1.2.4/pydocs/gdata.calendar_resource.client.html python-gdata-2.0.8/pydocs/gdata.calendar_resource.client.html --- python-gdata-1.2.4/pydocs/gdata.calendar_resource.client.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.calendar_resource.client.html 2010-02-26 23:16:48.000000000 +0000 @@ -0,0 +1,668 @@ + + +Python: module gdata.calendar_resource.client + + +
 
class UriEnumElement(atom.AtomBase)
    
+ +
 
+ 
gdata.calendar_resource.client
index
/usr/local/svn/gdata-python-client/src/gdata/calendar_resource/client.py
+

CalendarResourceClient simplifies Calendar Resources API calls.

+CalendarResourceClient extends gdata.client.GDClient to ease interaction with
+the Google Apps Calendar Resources API.  These interactions include the ability
+to create, retrieve, update, and delete calendar resources in a Google Apps
+domain.

+

+ + + + + +
 
+Modules
       
atom
+
gdata
+
urllib
+

+ + + + + +
 
+Classes
       
+
gdata.client.GDClient(atom.client.AtomPubClient) +
+
+
CalendarResourceClient +
+
+
+

+ + + + + + + +
 
+class CalendarResourceClient(gdata.client.GDClient)
   Client extension for the Google Calendar Resource API service.

+Attributes:
+  host: string The hostname for the Calendar Resouce API service.
+  api_version: string The version of the Calendar Resource API.
 
 
Method resolution order:
+
CalendarResourceClient
+
gdata.client.GDClient
+
atom.client.AtomPubClient
+
__builtin__.object
+
+
+Methods defined here:
+
CreateResource = create_resource(self, resource_id, resource_common_name=None, resource_description=None, resource_type=None, **kwargs)
+ +
DeleteResource = delete_resource(self, resource_id, **kwargs)
+ +
GetResource = get_resource(self, uri=None, resource_id=None, **kwargs)
+ +
GetResourceFeed = get_resource_feed(self, uri=None, **kwargs)
+ +
MakeResourceFeedUri = make_resource_feed_uri(self, resource_id=None, params=None)
+ +
UpdateResource = update_resource(self, resource_id, resource_common_name=None, resource_description=None, resource_type=None, **kwargs)
+ +
__init__(self, domain, auth_token=None, **kwargs)
Constructs a new client for the Calendar Resource API.

+Args:
+  domain: string The Google Apps domain with Calendar Resources.
+  auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or 
+    OAuthToken which authorizes this client to edit the calendar resource 
+    data.
+  kwargs: The other parameters to pass to gdata.client.GDClient constructor.
+ +
create_resource(self, resource_id, resource_common_name=None, resource_description=None, resource_type=None, **kwargs)
Creates a calendar resource with the given properties.

+Args:
+  resource_id: string The resource ID of the calendar resource.
+  resource_common_name: string (optional) The common name of the resource.
+  resource_description: string (optional) The description of the resource.
+  resource_type: string (optional) The type of the resource.

+Returns:
+  gdata.calendar_resource.data.CalendarResourceEntry of the new resource.
+ +
delete_resource(self, resource_id, **kwargs)
Deletes the calendar resource with the given resource ID.

+Args:
+  resource_id: string The resource ID of the calendar resource to delete.
+  kwargs: Other parameters to pass to gdata.client.delete()

+Returns:
+  An HTTP response object.  See gdata.client.request().
+ +
get_resource(self, uri=None, resource_id=None, **kwargs)
Fetches a single calendar resource by resource ID.

+Args:
+  uri: string The base URI of the feed from which to fetch the resource.
+  resource_id: string The string ID of the Resource to fetch.

+Returns:
+  A Resource object representing the calendar resource with the given 
+  base URI and resource ID.
+ +
get_resource_feed(self, uri=None, **kwargs)
Fetches a ResourceFeed of calendar resources at the given URI.

+Args:
+  uri: string The URI of the feed to pull.

+Returns:
+  A ResourceFeed object representing the feed at the given URI.
+ +
make_resource_feed_uri(self, resource_id=None, params=None)
Creates a resource feed URI for the Calendar Resource API.

+Using this client's Google Apps domain, create a feed URI for calendar
+resources in that domain. If a resource_id is provided, return a URI
+for that specific resource.  If params are provided, append them as GET
+params.

+Args:
+  resource_id: string (optional) The ID of the calendar resource for which
+    to make a feed URI.
+  params: dict (optional) key -> value params to append as GET vars to the
+    URI. Example: params={'start': 'my-resource-id'}
+Returns:
+  A string giving the URI for calendar resources for this client's Google
+  Apps domain.
+ +
update_resource(self, resource_id, resource_common_name=None, resource_description=None, resource_type=None, **kwargs)
Updates the calendar resource with the given resource ID.

+Args:
+  resource_id: string The resource ID of the calendar resource to update.
+  resource_common_name: string (optional) The common name to give the
+                        resource.
+  resource_description: string (optional) The description to give the
+                        resource.
+  resource_type: string (optional) The type to give the resource.

+Returns:
+  gdata.calendar_resource.data.CalendarResourceEntry of the updated resource.
+ +
+Data and other attributes defined here:
+
api_version = '2.0'
+ +
auth_scopes = ('http://www.google.com/a/feeds/', 'https://www.google.com/a/feeds/', 'http://apps-apis.google.com/a/feeds/', 'https://apps-apis.google.com/a/feeds/')
+ +
auth_service = 'apps'
+ +
host = 'apps-apis.google.com'
+ +
+Methods inherited from gdata.client.GDClient:
+
ClientLogin = client_login(self, email, password, source, service=None, account_type='HOSTED_OR_GOOGLE', auth_url=<atom.http_core.Uri object at 0xbd30d0>, captcha_token=None, captcha_response=None)
Performs an auth request using the user's email address and password.

+In order to modify user specific data and read user private data, your
+application must be authorized by the user. One way to demonstrage
+authorization is by including a Client Login token in the Authorization
+HTTP header of all requests. This method requests the Client Login token
+by sending the user's email address, password, the name of the
+application, and the service code for the service which will be accessed
+by the application. If the username and password are correct, the server
+will respond with the client login code and a new ClientLoginToken
+object will be set in the client's auth_token member. With the auth_token
+set, future requests from this client will include the Client Login
+token.

+For a list of service names, see 
+http://code.google.com/apis/gdata/faq.html#clientlogin
+For more information on Client Login, see:
+http://code.google.com/apis/accounts/docs/AuthForInstalledApps.html

+Args:
+  email: str The user's email address or username.
+  password: str The password for the user's account.
+  source: str The name of your application. This can be anything you
+          like but should should give some indication of which app is
+          making the request.
+  service: str The service code for the service you would like to access.
+           For example, 'cp' for contacts, 'cl' for calendar. For a full
+           list see
+           http://code.google.com/apis/gdata/faq.html#clientlogin
+           If you are using a subclass of the gdata.client.GDClient, the
+           service will usually be filled in for you so you do not need
+           to specify it. For example see BloggerClient,
+           SpreadsheetsClient, etc.
+  account_type: str (optional) The type of account which is being
+                authenticated. This can be either 'GOOGLE' for a Google
+                Account, 'HOSTED' for a Google Apps Account, or the
+                default 'HOSTED_OR_GOOGLE' which will select the Google
+                Apps Account if the same email address is used for both
+                a Google Account and a Google Apps Account.
+  auth_url: str (optional) The URL to which the login request should be
+            sent.
+  captcha_token: str (optional) If a previous login attempt was reponded
+                 to with a CAPTCHA challenge, this is the token which
+                 identifies the challenge (from the CAPTCHA's URL).
+  captcha_response: str (optional) If a previous login attempt was
+                    reponded to with a CAPTCHA challenge, this is the
+                    response text which was contained in the challenge.

+  Returns:
+    None

+  Raises:
+    A RequestError or one of its suclasses: BadAuthentication,
+    BadAuthenticationServiceURL, ClientLoginFailed,
+    ClientLoginTokenMissing, or CaptchaChallenge
+ +
Delete = delete(self, entry_or_uri, auth_token=None, force=False, **kwargs)
+ +
GetAccessToken = get_access_token(self, request_token, url='https://www.google.com/accounts/OAuthGetAccessToken')
Exchanges an authorized OAuth request token for an access token.

+Contacts the Google OAuth server to upgrade a previously authorized
+request token. Once the request token is upgraded to an access token,
+the access token may be used to access the user's data.

+For more details, see the Google Accounts OAuth documentation:
+http://code.google.com/apis/accounts/docs/OAuth.html#AccessToken

+Args:
+  request_token: An OAuth token which has been authorized by the user.
+  url: (optional) The URL to which the upgrade request should be sent.
+      Defaults to: https://www.google.com/accounts/OAuthAuthorizeToken
+ +
GetEntry = get_entry(self, uri, auth_token=None, converter=None, desired_class=<class 'gdata.data.GDEntry'>, etag=None, **kwargs)
+ +
GetFeed = get_feed(self, uri, auth_token=None, converter=None, desired_class=<class 'gdata.data.GDFeed'>, **kwargs)
+ +
GetNext = get_next(self, feed, auth_token=None, converter=None, desired_class=None, **kwargs)
Fetches the next set of results from the feed.

+When requesting a feed, the number of entries returned is capped at a
+service specific default limit (often 25 entries). You can specify your
+own entry-count cap using the max-results URL query parameter. If there
+are more results than could fit under max-results, the feed will contain
+a next link. This method performs a GET against this next results URL.

+Returns:
+  A new feed object containing the next set of entries in this feed.
+ +
GetOAuthToken = get_oauth_token(self, scopes, next, consumer_key, consumer_secret=None, rsa_private_key=None, url='https://www.google.com/accounts/OAuthGetRequestToken')
Obtains an OAuth request token to allow the user to authorize this app.

+Once this client has a request token, the user can authorize the request
+token by visiting the authorization URL in their browser. After being
+redirected back to this app at the 'next' URL, this app can then exchange
+the authorized request token for an access token.

+For more information see the documentation on Google Accounts with OAuth:
+http://code.google.com/apis/accounts/docs/OAuth.html#AuthProcess

+Args:
+  scopes: list of strings or atom.http_core.Uri objects which specify the
+      URL prefixes which this app will be accessing. For example, to access
+      the Google Calendar API, you would want to use scopes:
+      ['https://www.google.com/calendar/feeds/',
+       'http://www.google.com/calendar/feeds/']
+  next: str or atom.http_core.Uri object, The URL which the user's browser
+      should be sent to after they authorize access to their data. This
+      should be a URL in your application which will read the token
+      information from the URL and upgrade the request token to an access
+      token.
+  consumer_key: str This is the identifier for this application which you
+      should have received when you registered your application with Google
+      to use OAuth.
+  consumer_secret: str (optional) The shared secret between your app and
+      Google which provides evidence that this request is coming from you
+      application and not another app. If present, this libraries assumes
+      you want to use an HMAC signature to verify requests. Keep this data
+      a secret.
+  rsa_private_key: str (optional) The RSA private key which is used to
+      generate a digital signature which is checked by Google's server. If
+      present, this library assumes that you want to use an RSA signature
+      to verify requests. Keep this data a secret.
+  url: The URL to which a request for a token should be made. The default
+      is Google's OAuth request token provider.
+ +
ModifyRequest = modify_request(self, http_request)
Adds or changes request before making the HTTP request.

+This client will add the API version if it is specified.
+Subclasses may override this method to add their own request
+modifications before the request is made.
+ +
Post = post(self, entry, uri, auth_token=None, converter=None, desired_class=None, **kwargs)
+ +
Request = request(self, method=None, uri=None, auth_token=None, http_request=None, converter=None, desired_class=None, redirects_remaining=4, **kwargs)
Make an HTTP request to the server.

+See also documentation for atom.client.AtomPubClient.request.

+If a 302 redirect is sent from the server to the client, this client
+assumes that the redirect is in the form used by the Google Calendar API.
+The same request URI and method will be used as in the original request,
+but a gsessionid URL parameter will be added to the request URI with
+the value provided in the server's 302 redirect response. If the 302
+redirect is not in the format specified by the Google Calendar API, a
+RedirectError will be raised containing the body of the server's
+response.

+The method calls the client's modify_request method to make any changes
+required by the client before the request is made. For example, a
+version 2 client could add a GData-Version: 2 header to the request in
+its modify_request method.

+Args:
+  method: str The HTTP verb for this request, usually 'GET', 'POST',
+          'PUT', or 'DELETE'
+  uri: atom.http_core.Uri, str, or unicode The URL being requested.
+  auth_token: An object which sets the Authorization HTTP header in its
+              modify_request method. Recommended classes include
+              gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken
+              among others.
+  http_request: (optional) atom.http_core.HttpRequest
+  converter: function which takes the body of the response as it's only
+             argument and returns the desired object.
+  desired_class: class descended from atom.core.XmlElement to which a
+                 successful response should be converted. If there is no
+                 converter function specified (converter=None) then the
+                 desired_class will be used in calling the
+                 atom.core.parse function. If neither
+                 the desired_class nor the converter is specified, an
+                 HTTP reponse object will be returned.
+  redirects_remaining: (optional) int, if this number is 0 and the
+                       server sends a 302 redirect, the request method
+                       will raise an exception. This parameter is used in
+                       recursive request calls to avoid an infinite loop.

+Any additional arguments are passed through to
+atom.client.AtomPubClient.request.

+Returns:
+  An HTTP response object (see atom.http_core.HttpResponse for a
+  description of the object's interface) if no converter was
+  specified and no desired_class was specified. If a converter function
+  was provided, the results of calling the converter are returned. If no
+  converter was specified but a desired_class was provided, the response
+  body will be converted to the class using
+  atom.core.parse.
+ +
RequestClientLoginToken = request_client_login_token(self, email, password, source, service=None, account_type='HOSTED_OR_GOOGLE', auth_url=<atom.http_core.Uri object at 0xbd3090>, captcha_token=None, captcha_response=None)
+ +
RevokeToken = revoke_token(self, token=None, url=<atom.http_core.Uri object at 0xbd3150>)
Requests that the token be invalidated.

+This method can be used for both AuthSub and OAuth tokens (to invalidate
+a ClientLogin token, the user must change their password).

+Returns:
+  True if the server responded with a 200.

+Raises:
+  A RequestError if the server responds with a non-200 status.
+ +
Update = update(self, entry, auth_token=None, force=False, **kwargs)
Edits the entry on the server by sending the XML for this entry.

+Performs a PUT and converts the response to a new entry object with a
+matching class to the entry passed in.

+Args:
+  entry:
+  auth_token:
+  force: boolean stating whether an update should be forced. Defaults to
+         False. Normally, if a change has been made since the passed in
+         entry was obtained, the server will not overwrite the entry since
+         the changes were based on an obsolete version of the entry.
+         Setting force to True will cause the update to silently
+         overwrite whatever version is present.

+Returns:
+  A new Entry object of a matching type to the entry which was passed in.
+ +
UpgradeToken = upgrade_token(self, token=None, url=<atom.http_core.Uri object at 0xbd3110>)
Asks the Google auth server for a multi-use AuthSub token.

+For details on AuthSub, see:
+http://code.google.com/apis/accounts/docs/AuthSub.html

+Args:
+  token: gdata.gauth.AuthSubToken or gdata.gauth.SecureAuthSubToken
+      (optional) If no token is passed in, the client's auth_token member
+      is used to request the new token. The token object will be modified
+      to contain the new session token string.
+  url: str or atom.http_core.Uri (optional) The URL to which the token
+      upgrade request should be sent. Defaults to:
+      https://www.google.com/accounts/AuthSubSessionToken

+Returns:
+  The upgraded gdata.gauth.AuthSubToken object.
+ +
client_login(self, email, password, source, service=None, account_type='HOSTED_OR_GOOGLE', auth_url=<atom.http_core.Uri object at 0xbd30d0>, captcha_token=None, captcha_response=None)
Performs an auth request using the user's email address and password.

+In order to modify user specific data and read user private data, your
+application must be authorized by the user. One way to demonstrage
+authorization is by including a Client Login token in the Authorization
+HTTP header of all requests. This method requests the Client Login token
+by sending the user's email address, password, the name of the
+application, and the service code for the service which will be accessed
+by the application. If the username and password are correct, the server
+will respond with the client login code and a new ClientLoginToken
+object will be set in the client's auth_token member. With the auth_token
+set, future requests from this client will include the Client Login
+token.

+For a list of service names, see 
+http://code.google.com/apis/gdata/faq.html#clientlogin
+For more information on Client Login, see:
+http://code.google.com/apis/accounts/docs/AuthForInstalledApps.html

+Args:
+  email: str The user's email address or username.
+  password: str The password for the user's account.
+  source: str The name of your application. This can be anything you
+          like but should should give some indication of which app is
+          making the request.
+  service: str The service code for the service you would like to access.
+           For example, 'cp' for contacts, 'cl' for calendar. For a full
+           list see
+           http://code.google.com/apis/gdata/faq.html#clientlogin
+           If you are using a subclass of the gdata.client.GDClient, the
+           service will usually be filled in for you so you do not need
+           to specify it. For example see BloggerClient,
+           SpreadsheetsClient, etc.
+  account_type: str (optional) The type of account which is being
+                authenticated. This can be either 'GOOGLE' for a Google
+                Account, 'HOSTED' for a Google Apps Account, or the
+                default 'HOSTED_OR_GOOGLE' which will select the Google
+                Apps Account if the same email address is used for both
+                a Google Account and a Google Apps Account.
+  auth_url: str (optional) The URL to which the login request should be
+            sent.
+  captcha_token: str (optional) If a previous login attempt was reponded
+                 to with a CAPTCHA challenge, this is the token which
+                 identifies the challenge (from the CAPTCHA's URL).
+  captcha_response: str (optional) If a previous login attempt was
+                    reponded to with a CAPTCHA challenge, this is the
+                    response text which was contained in the challenge.

+  Returns:
+    None

+  Raises:
+    A RequestError or one of its suclasses: BadAuthentication,
+    BadAuthenticationServiceURL, ClientLoginFailed,
+    ClientLoginTokenMissing, or CaptchaChallenge
+ +
delete(self, entry_or_uri, auth_token=None, force=False, **kwargs)
+ +
get_access_token(self, request_token, url='https://www.google.com/accounts/OAuthGetAccessToken')
Exchanges an authorized OAuth request token for an access token.

+Contacts the Google OAuth server to upgrade a previously authorized
+request token. Once the request token is upgraded to an access token,
+the access token may be used to access the user's data.

+For more details, see the Google Accounts OAuth documentation:
+http://code.google.com/apis/accounts/docs/OAuth.html#AccessToken

+Args:
+  request_token: An OAuth token which has been authorized by the user.
+  url: (optional) The URL to which the upgrade request should be sent.
+      Defaults to: https://www.google.com/accounts/OAuthAuthorizeToken
+ +
get_entry(self, uri, auth_token=None, converter=None, desired_class=<class 'gdata.data.GDEntry'>, etag=None, **kwargs)
+ +
get_feed(self, uri, auth_token=None, converter=None, desired_class=<class 'gdata.data.GDFeed'>, **kwargs)
+ +
get_next(self, feed, auth_token=None, converter=None, desired_class=None, **kwargs)
Fetches the next set of results from the feed.

+When requesting a feed, the number of entries returned is capped at a
+service specific default limit (often 25 entries). You can specify your
+own entry-count cap using the max-results URL query parameter. If there
+are more results than could fit under max-results, the feed will contain
+a next link. This method performs a GET against this next results URL.

+Returns:
+  A new feed object containing the next set of entries in this feed.
+ +
get_oauth_token(self, scopes, next, consumer_key, consumer_secret=None, rsa_private_key=None, url='https://www.google.com/accounts/OAuthGetRequestToken')
Obtains an OAuth request token to allow the user to authorize this app.

+Once this client has a request token, the user can authorize the request
+token by visiting the authorization URL in their browser. After being
+redirected back to this app at the 'next' URL, this app can then exchange
+the authorized request token for an access token.

+For more information see the documentation on Google Accounts with OAuth:
+http://code.google.com/apis/accounts/docs/OAuth.html#AuthProcess

+Args:
+  scopes: list of strings or atom.http_core.Uri objects which specify the
+      URL prefixes which this app will be accessing. For example, to access
+      the Google Calendar API, you would want to use scopes:
+      ['https://www.google.com/calendar/feeds/',
+       'http://www.google.com/calendar/feeds/']
+  next: str or atom.http_core.Uri object, The URL which the user's browser
+      should be sent to after they authorize access to their data. This
+      should be a URL in your application which will read the token
+      information from the URL and upgrade the request token to an access
+      token.
+  consumer_key: str This is the identifier for this application which you
+      should have received when you registered your application with Google
+      to use OAuth.
+  consumer_secret: str (optional) The shared secret between your app and
+      Google which provides evidence that this request is coming from you
+      application and not another app. If present, this libraries assumes
+      you want to use an HMAC signature to verify requests. Keep this data
+      a secret.
+  rsa_private_key: str (optional) The RSA private key which is used to
+      generate a digital signature which is checked by Google's server. If
+      present, this library assumes that you want to use an RSA signature
+      to verify requests. Keep this data a secret.
+  url: The URL to which a request for a token should be made. The default
+      is Google's OAuth request token provider.
+ +
modify_request(self, http_request)
Adds or changes request before making the HTTP request.

+This client will add the API version if it is specified.
+Subclasses may override this method to add their own request
+modifications before the request is made.
+ +
post(self, entry, uri, auth_token=None, converter=None, desired_class=None, **kwargs)
+ +
request(self, method=None, uri=None, auth_token=None, http_request=None, converter=None, desired_class=None, redirects_remaining=4, **kwargs)
Make an HTTP request to the server.

+See also documentation for atom.client.AtomPubClient.request.

+If a 302 redirect is sent from the server to the client, this client
+assumes that the redirect is in the form used by the Google Calendar API.
+The same request URI and method will be used as in the original request,
+but a gsessionid URL parameter will be added to the request URI with
+the value provided in the server's 302 redirect response. If the 302
+redirect is not in the format specified by the Google Calendar API, a
+RedirectError will be raised containing the body of the server's
+response.

+The method calls the client's modify_request method to make any changes
+required by the client before the request is made. For example, a
+version 2 client could add a GData-Version: 2 header to the request in
+its modify_request method.

+Args:
+  method: str The HTTP verb for this request, usually 'GET', 'POST',
+          'PUT', or 'DELETE'
+  uri: atom.http_core.Uri, str, or unicode The URL being requested.
+  auth_token: An object which sets the Authorization HTTP header in its
+              modify_request method. Recommended classes include
+              gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken
+              among others.
+  http_request: (optional) atom.http_core.HttpRequest
+  converter: function which takes the body of the response as it's only
+             argument and returns the desired object.
+  desired_class: class descended from atom.core.XmlElement to which a
+                 successful response should be converted. If there is no
+                 converter function specified (converter=None) then the
+                 desired_class will be used in calling the
+                 atom.core.parse function. If neither
+                 the desired_class nor the converter is specified, an
+                 HTTP reponse object will be returned.
+  redirects_remaining: (optional) int, if this number is 0 and the
+                       server sends a 302 redirect, the request method
+                       will raise an exception. This parameter is used in
+                       recursive request calls to avoid an infinite loop.

+Any additional arguments are passed through to
+atom.client.AtomPubClient.request.

+Returns:
+  An HTTP response object (see atom.http_core.HttpResponse for a
+  description of the object's interface) if no converter was
+  specified and no desired_class was specified. If a converter function
+  was provided, the results of calling the converter are returned. If no
+  converter was specified but a desired_class was provided, the response
+  body will be converted to the class using
+  atom.core.parse.
+ +
request_client_login_token(self, email, password, source, service=None, account_type='HOSTED_OR_GOOGLE', auth_url=<atom.http_core.Uri object at 0xbd3090>, captcha_token=None, captcha_response=None)
+ +
revoke_token(self, token=None, url=<atom.http_core.Uri object at 0xbd3150>)
Requests that the token be invalidated.

+This method can be used for both AuthSub and OAuth tokens (to invalidate
+a ClientLogin token, the user must change their password).

+Returns:
+  True if the server responded with a 200.

+Raises:
+  A RequestError if the server responds with a non-200 status.
+ +
update(self, entry, auth_token=None, force=False, **kwargs)
Edits the entry on the server by sending the XML for this entry.

+Performs a PUT and converts the response to a new entry object with a
+matching class to the entry passed in.

+Args:
+  entry:
+  auth_token:
+  force: boolean stating whether an update should be forced. Defaults to
+         False. Normally, if a change has been made since the passed in
+         entry was obtained, the server will not overwrite the entry since
+         the changes were based on an obsolete version of the entry.
+         Setting force to True will cause the update to silently
+         overwrite whatever version is present.

+Returns:
+  A new Entry object of a matching type to the entry which was passed in.
+ +
upgrade_token(self, token=None, url=<atom.http_core.Uri object at 0xbd3110>)
Asks the Google auth server for a multi-use AuthSub token.

+For details on AuthSub, see:
+http://code.google.com/apis/accounts/docs/AuthSub.html

+Args:
+  token: gdata.gauth.AuthSubToken or gdata.gauth.SecureAuthSubToken
+      (optional) If no token is passed in, the client's auth_token member
+      is used to request the new token. The token object will be modified
+      to contain the new session token string.
+  url: str or atom.http_core.Uri (optional) The URL to which the token
+      upgrade request should be sent. Defaults to:
+      https://www.google.com/accounts/AuthSubSessionToken

+Returns:
+  The upgraded gdata.gauth.AuthSubToken object.
+ +
+Methods inherited from atom.client.AtomPubClient:
+
Get = get(self, uri=None, auth_token=None, http_request=None, **kwargs)
Performs a request using the GET method, returns an HTTP response.
+ +
Put = put(self, uri=None, data=None, auth_token=None, http_request=None, **kwargs)
Sends data using the PUT method, returns an HTTP response.
+ +
get(self, uri=None, auth_token=None, http_request=None, **kwargs)
Performs a request using the GET method, returns an HTTP response.
+ +
put(self, uri=None, data=None, auth_token=None, http_request=None, **kwargs)
Sends data using the PUT method, returns an HTTP response.
+ +
+Data descriptors inherited from atom.client.AtomPubClient:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Data and other attributes inherited from atom.client.AtomPubClient:
+
auth_token = None
+ +
ssl = False
+ +

+ + + + + +
 
+Data
       RESOURCE_FEED_TEMPLATE = '/a/feeds/calendar/resource/%s/%s/'
+__author__ = 'Vic Fryzel <vf@google.com>'

+ + + + + +
 
+Author
       Vic Fryzel <vf@google.com>
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.calendar_resource.data.html python-gdata-2.0.8/pydocs/gdata.calendar_resource.data.html --- python-gdata-1.2.4/pydocs/gdata.calendar_resource.data.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.calendar_resource.data.html 2010-02-26 23:16:48.000000000 +0000 @@ -0,0 +1,959 @@ + + +Python: module gdata.calendar_resource.data + + + + +
 
+ 
gdata.calendar_resource.data
index
/usr/local/svn/gdata-python-client/src/gdata/calendar_resource/data.py
+

Data model classes for parsing and generating XML for the Calendar
+Resource API.

+

+ + + + + +
 
+Modules
       
atom
+
gdata
+

+ + + + + +
 
+Classes
       
+
atom.core.XmlElement(__builtin__.object) +
+
+
AppsProperty +
+
+
gdata.data.GDEntry(atom.data.Entry, gdata.data.LinkFinder) +
+
+
CalendarResourceEntry +
+
+
gdata.data.GDFeed(atom.data.Feed, gdata.data.LinkFinder) +
+
+
CalendarResourceFeed +
+
+
+

+ + + + + + + +
 
+class AppsProperty(atom.core.XmlElement)
   Represents an <apps:property> element in a Calendar Resource feed.
 
 
Method resolution order:
+
AppsProperty
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
name = 'name'
+ +
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class CalendarResourceEntry(gdata.data.GDEntry)
   Represents a Calendar Resource entry in object form.
 
 
Method resolution order:
+
CalendarResourceEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Methods defined here:
+
GetResourceCommonName(self)
Get the common name of this Calendar Resource object.

+Returns:
+  The common name of this Calendar Resource object as a string or None.
+ +
GetResourceDescription(self)
Get the description of this Calendar Resource object.

+Returns:
+  The description of this Calendar Resource object as a string or None.
+ +
GetResourceId(self)
Get the resource ID of this Calendar Resource object.

+Returns:
+  The resource ID of this Calendar Resource object as a string or None.
+ +
GetResourceType(self)
Get the type of this Calendar Resource object.

+Returns:
+  The type of this Calendar Resource object as a string or None.
+ +
SetResourceCommonName(self, value)
Set the common name of this Calendar Resource object.

+Args:
+  value: string The new common name value to give this object.
+ +
SetResourceDescription(self, value)
Set the description of this Calendar Resource object.

+Args:
+  value: string The new description value to give this object.
+ +
SetResourceId(self, value)
Set the resource ID of this Calendar Resource object.

+Args:
+  value: string The new resource ID value to give this object.
+ +
SetResourceType(self, value)
Set the type value of this Calendar Resource object.

+Args:
+  value: string The new type value to give this object.
+ +
__init__(self, resource_id=None, resource_common_name=None, resource_description=None, resource_type=None, *args, **kwargs)
Constructs a new CalendarResourceEntry object with the given arguments.

+Args:
+  resource_id: string (optional) The resource ID to give this new object.
+  resource_common_name: string (optional) The common name to give this new
+                        object.
+  resource_description: string (optional) The description to give this new
+                        object.
+  resource_type: string (optional) The type to give this new object.
+  args: The other parameters to pass to gdata.entry.GDEntry constructor. 
+  kwargs: The other parameters to pass to gdata.entry.GDEntry constructor.
+ +
+Data descriptors defined here:
+
resource_common_name
+
Get the common name of this Calendar Resource object.

+Returns:
+  The common name of this Calendar Resource object as a string or None.
+
+
resource_description
+
Get the description of this Calendar Resource object.

+Returns:
+  The description of this Calendar Resource object as a string or None.
+
+
resource_id
+
Get the resource ID of this Calendar Resource object.

+Returns:
+  The resource ID of this Calendar Resource object as a string or None.
+
+
resource_type
+
Get the type of this Calendar Resource object.

+Returns:
+  The type of this Calendar Resource object as a string or None.
+
+
+Data and other attributes defined here:
+
property = [<class 'gdata.calendar_resource.data.AppsProperty'>]
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class CalendarResourceFeed(gdata.data.GDFeed)
   Represents a feed of CalendarResourceEntry objects.
 
 
Method resolution order:
+
CalendarResourceFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.calendar_resource.data.CalendarResourceEntry'>]
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + +
 
+Data
       RESOURCE_COMMON_NAME_NAME = 'resourceCommonName'
+RESOURCE_DESCRIPTION_NAME = 'resourceDescription'
+RESOURCE_ID_NAME = 'resourceId'
+RESOURCE_TYPE_NAME = 'resourceType'
+__author__ = 'Vic Fryzel <vf@google.com>'

+ + + + + +
 
+Author
       Vic Fryzel <vf@google.com>
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.calendar.service.html python-gdata-2.0.8/pydocs/gdata.calendar.service.html --- python-gdata-1.2.4/pydocs/gdata.calendar.service.html 2009-01-22 19:55:42.000000000 +0000 +++ python-gdata-2.0.8/pydocs/gdata.calendar.service.html 2010-02-26 23:16:48.000000000 +0000 @@ -21,7 +21,7 @@ +Modules
 
-Modules
       
atom
@@ -142,8 +142,6 @@
__gt__(...)
x.__gt__(y) <==> x>y
-
__hash__(...)
x.__hash__() <==> hash(x)
-
__iter__(...)
x.__iter__() <==> iter(x)
__le__(...)
x.__le__(y) <==> x<=y
@@ -158,6 +156,8 @@
__setitem__(...)
x.__setitem__(i, y) <==> x[i]=y
+
__sizeof__(...)
D.__sizeof__() -> size of D in memory, in bytes
+
clear(...)
D.clear() -> None.  Remove all items from D.
copy(...)
D.copy() -> a shallow copy of D
@@ -191,9 +191,11 @@
Data and other attributes inherited from __builtin__.dict:
-
__new__ = <built-in method __new__ of type object at 0x72b260>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__hash__ = None
-
fromkeys = <built-in method fromkeys of type object at 0xd243b0>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
+
__new__ = <built-in method __new__ of type object at 0x7569a0>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+ +
fromkeys = <built-in method fromkeys of type object at 0xd36470>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
v defaults to None.

@@ -301,8 +303,6 @@

__gt__(...)
x.__gt__(y) <==> x>y
-
__hash__(...)
x.__hash__() <==> hash(x)
-
__iter__(...)
x.__iter__() <==> iter(x)
__le__(...)
x.__le__(y) <==> x<=y
@@ -317,6 +317,8 @@
__setitem__(...)
x.__setitem__(i, y) <==> x[i]=y
+
__sizeof__(...)
D.__sizeof__() -> size of D in memory, in bytes
+
clear(...)
D.clear() -> None.  Remove all items from D.
copy(...)
D.copy() -> a shallow copy of D
@@ -350,9 +352,11 @@
Data and other attributes inherited from __builtin__.dict:
-
__new__ = <built-in method __new__ of type object at 0x72b260>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__hash__ = None
+ +
__new__ = <built-in method __new__ of type object at 0x7569a0>
T.__new__(S, ...) -> a new object with type S, a subtype of T
-
fromkeys = <built-in method fromkeys of type object at 0xd25cf0>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
+
fromkeys = <built-in method fromkeys of type object at 0xd37ba0>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
v defaults to None.

@@ -436,8 +440,6 @@

__gt__(...)
x.__gt__(y) <==> x>y
-
__hash__(...)
x.__hash__() <==> hash(x)
-
__iter__(...)
x.__iter__() <==> iter(x)
__le__(...)
x.__le__(y) <==> x<=y
@@ -452,6 +454,8 @@
__setitem__(...)
x.__setitem__(i, y) <==> x[i]=y
+
__sizeof__(...)
D.__sizeof__() -> size of D in memory, in bytes
+
clear(...)
D.clear() -> None.  Remove all items from D.
copy(...)
D.copy() -> a shallow copy of D
@@ -485,9 +489,11 @@
Data and other attributes inherited from __builtin__.dict:
-
__new__ = <built-in method __new__ of type object at 0x72b260>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__hash__ = None
+ +
__new__ = <built-in method __new__ of type object at 0x7569a0>
T.__new__(S, ...) -> a new object with type S, a subtype of T
-
fromkeys = <built-in method fromkeys of type object at 0xd23ec0>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
+
fromkeys = <built-in method fromkeys of type object at 0xd35d70>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
v defaults to None.

@@ -562,7 +568,7 @@      'reason': HTTP reason from the server, 
     'body': HTTP body of the server's response}
-

ExecuteBatch(self, batch_feed, url, converter=<function CalendarEventFeedFromString at 0x940b18>)
Sends a batch request feed to the server.
+
ExecuteBatch(self, batch_feed, url, converter=<function CalendarEventFeedFromString at 0xa672a8>)
Sends a batch request feed to the server.
 
The batch request needs to be sent to the batch URL for a particular 
calendar. You can find the URL by calling GetBatchLink().href on the 
@@ -812,7 +818,7 @@ Returns:
  True if the entry was deleted.
-
FetchOAuthRequestToken(self, scopes=None, extra_parameters=None, request_url='https://www.google.com/accounts/OAuthGetRequestToken')
Fetches OAuth request token and returns it.
+
FetchOAuthRequestToken(self, scopes=None, extra_parameters=None, request_url='https://www.google.com/accounts/OAuthGetRequestToken', oauth_callback=None)
Fetches and sets the OAuth request token and returns it.
 
Args:
  scopes: string or list of string base URL(s) of the service(s) to be
@@ -827,10 +833,14 @@       extra_parameters = {'oauth_version': '2.0'}
  request_url: Request token URL. The default is
      'https://www.google.com/accounts/OAuthGetRequestToken'.
-  
+  oauth_callback: str (optional) If set, it is assume the client is using
+      the OAuth v1.0a protocol where the callback url is sent in the
+      request token step.  If the oauth_callback is also set in
+      extra_params, this value will override that one.

Returns:
  The fetched request token as a gdata.auth.OAuthToken object.
-  

Raises:
  FetchingOAuthRequestTokenFailed if the server responded to the request
  with an error.
@@ -962,7 +972,7 @@ Returns:
  A GDataEntry built from the XML in the server's response.
-
GetFeed(self, uri, extra_headers=None, converter=<function GDataFeedFromString at 0x8ef1b8>)
Query the GData API with the given URI and receive a Feed.
+
GetFeed(self, uri, extra_headers=None, converter=<function GDataFeedFromString at 0x7fc4b037dd70>)
Query the GData API with the given URI and receive a Feed.
 
See also documentation for gdata.service.Get
 
@@ -978,6 +988,8 @@ Returns:
  A GDataFeed built from the XML in the server's response.
+
GetGeneratorFromLinkFinder(self, link_finder, func, num_retries=3, delay=1, backoff=2)
returns a generator for pagination
+
GetMedia(self, uri, extra_headers=None)
Returns a MediaSource containing media and its metadata from the given
URI string.
@@ -996,6 +1008,26 @@   A new feed representing the next set of results in the server's feed.
  The type of this feed will match that of the feed argument.
+
GetOAuthInputParameters(self)
+ +
GetWithRetries(self, uri, extra_headers=None, redirects_remaining=4, encoding='UTF-8', converter=None, num_retries=3, delay=1, backoff=2, logger=None)
This is a wrapper method for Get with retring capability.

+To avoid various errors while retrieving bulk entities by retring
+specified times.

+Note this method relies on the time module and so may not be usable
+by default in Python2.2.

+Args:
+  num_retries: integer The retry count.
+  delay: integer The initial delay for retring.
+  backoff: integer how much the delay should lengthen after each failure.
+  logger: an object which has a debug(str) method to receive logging
+          messages. Recommended that you pass in the logging module.
+Raises:
+  ValueError if any of the parameters has an invalid value.
+  RanOutOfTries on failure after number of retries.
+
Post(self, data, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=4, media_source=None, converter=None)
Insert or update  data into a GData service at the given URI.
 
Args:
@@ -1156,7 +1188,7 @@ Args:
  token: string or instance of a ClientLoginToken.
-
SetOAuthInputParameters(self, signature_method, consumer_key, consumer_secret=None, rsa_key=None, two_legged_oauth=False)
Sets parameters required for using OAuth authentication mechanism.
+
SetOAuthInputParameters(self, signature_method, consumer_key, consumer_secret=None, rsa_key=None, two_legged_oauth=False, requestor_id=None)
Sets parameters required for using OAuth authentication mechanism.
 
NOTE: Though consumer_secret and rsa_key are optional, either of the two
is required depending on the value of the signature_method.
@@ -1173,7 +1205,10 @@       Required only for HMAC_SHA1 signature method.
  rsa_key: string (optional) Private key required for RSA_SHA1 signature
      method.
-  two_legged_oauth: string (default=False) Enables two-legged OAuth process.
+  two_legged_oauth: boolean (optional) Enables two-legged OAuth process.
+  requestor_id: string (optional) User email adress to make requests on
+      their behalf.  This parameter should only be set when two_legged_oauth
+      is True.
SetOAuthToken(self, oauth_token)
Attempts to set the current token and add it to the token store.
 
@@ -1187,18 +1222,24 @@ Args:
  request_token: gdata.auth.OAuthToken OAuth request token.
-
UpgradeToOAuthAccessToken(self, authorized_request_token=None, request_url='https://www.google.com/accounts/OAuthGetAccessToken', oauth_version='1.0')
Upgrades the authorized request token to an access token.
+
UpgradeToOAuthAccessToken(self, authorized_request_token=None, request_url='https://www.google.com/accounts/OAuthGetAccessToken', oauth_version='1.0', oauth_verifier=None)
Upgrades the authorized request token to an access token and returns it
 
Args:
  authorized_request_token: gdata.auth.OAuthToken (optional) OAuth request
      token. If not specified, then the current token will be used if it is
      of type <gdata.auth.OAuthToken>, else it is found by looking in the
      token_store by looking for a token for the current scope.
+  request_url: Access token URL. The default is
+      'https://www.google.com/accounts/OAuthGetAccessToken'.
  oauth_version: str (default='1.0') oauth_version parameter. All other
      'oauth_' parameters are added by default. This parameter too, is
      added by default but here you can override it's value.
-  request_url: Access token URL. The default is
-      'https://www.google.com/accounts/OAuthGetAccessToken'.
+  oauth_verifier: str (optional) If present, it is assumed that the client
+    will use the OAuth v1.0a protocol which includes passing the
+    oauth_verifier (as returned by the SP) in the access token step.

+Returns:
+  Access token
      
Raises:
  NonOAuthToken if the user's authorized request token is not an OAuth
@@ -1268,7 +1309,7 @@   username: str
  password: str
-
request(self, operation, url, data=None, headers=None, url_params=None)
+
request(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
use_basic_auth(self, username, password, scopes=None)
@@ -1321,7 +1362,7 @@
Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
@@ -1345,6 +1386,8 @@
__str__(...)
x.__str__() <==> str(x)
+
__unicode__(...)
+
Data descriptors inherited from exceptions.BaseException:
__dict__
@@ -1352,7 +1395,6 @@
args
message
-
exception message

@@ -1379,7 +1421,7 @@
Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
@@ -1403,6 +1445,8 @@
__str__(...)
x.__str__() <==> str(x)
+
__unicode__(...)
+
Data descriptors inherited from exceptions.BaseException:
__dict__
@@ -1410,7 +1454,6 @@
args
message
-
exception message

diff -Nru python-gdata-1.2.4/pydocs/gdata.client.html python-gdata-2.0.8/pydocs/gdata.client.html --- python-gdata-1.2.4/pydocs/gdata.client.html 2009-01-22 19:55:42.000000000 +0000 +++ python-gdata-2.0.8/pydocs/gdata.client.html 2010-02-26 23:16:48.000000000 +0000 @@ -9,31 +9,24 @@  
gdata.client
index
/usr/local/svn/gdata-python-client/src/gdata/client.py
-

# Copyright (C) 2008 Google Inc.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.

+

Provides a client to interact with Google Data API servers.

+This module is used for version 2 of the Google Data APIs. The primary class
+in this module is GDClient.

+  GDClient: handles auth and CRUD operations when communicating with servers.
+  GDataClient: deprecated client for version one services. Will be removed.

+Modules
 
-Modules
       
atom
gdata
-
urllib
-
urlparse
-

+

re
+

 
@@ -41,73 +34,117 @@
       
+
__builtin__.object +
+
+
Query +
ResumableUploader +
+
atom.client.AtomPubClient(__builtin__.object)
GDClient
-
gdata.service.Error(exceptions.Exception) +
atom.http_core.Uri(__builtin__.object)
-
AuthorizationRequired +
GDQuery
-
gdata.service.GDataService(atom.service.AtomService) +
exceptions.Exception(exceptions.BaseException) +
+
+
Error +
+
+
ClientLoginTokenMissing +
MissingOAuthParameters +
RequestError +
+
+
BadAuthentication +
CaptchaChallenge +
ClientLoginFailed +
NotImplemented +
NotModified +
RedirectError
-
GDataClient +
BadAuthenticationServiceURL +
+
+
UnableToUpgradeToken +
+
+
Unauthorized
+
+

+class BadAuthentication(RequestError)
 
-class AuthorizationRequired(gdata.service.Error)
    
Method resolution order:
-
AuthorizationRequired
-
gdata.service.Error
+
BadAuthentication
+
RequestError
+
Error
exceptions.Exception
exceptions.BaseException
__builtin__.object

-Data descriptors inherited from gdata.service.Error:
+Data and other attributes inherited from RequestError:
+
body = None
+ +
headers = None
+ +
reason = None
+ +
status = None
+ +
+Data descriptors inherited from Error:
__weakref__
list of weak references to the object (if defined)

Methods inherited from exceptions.Exception:
-
__init__(...)
x.__init__(...) initializes x; see x.__class__.__doc__ for signature
+
__init__(...)
x.__init__(...) initializes x; see x.__class__.__doc__ for signature

Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
-
__delattr__(...)
x.__delattr__('name') <==> del x.name
+
__delattr__(...)
x.__delattr__('name') <==> del x.name
-
__getattribute__(...)
x.__getattribute__('name') <==> x.name
+
__getattribute__(...)
x.__getattribute__('name') <==> x.name
-
__getitem__(...)
x.__getitem__(y) <==> x[y]
+
__getitem__(...)
x.__getitem__(y) <==> x[y]
-
__getslice__(...)
x.__getslice__(i, j) <==> x[i:j]
+
__getslice__(...)
x.__getslice__(i, j) <==> x[i:j]
 
Use of negative indices is not supported.
-
__reduce__(...)
+
__reduce__(...)
-
__repr__(...)
x.__repr__() <==> repr(x)
+
__repr__(...)
x.__repr__() <==> repr(x)
-
__setattr__(...)
x.__setattr__('name', value) <==> x.name = value
+
__setattr__(...)
x.__setattr__('name', value) <==> x.name = value
-
__setstate__(...)
+
__setstate__(...)
-
__str__(...)
x.__str__() <==> str(x)
+
__str__(...)
x.__str__() <==> str(x)
+ +
__unicode__(...)

Data descriptors inherited from exceptions.BaseException:
@@ -116,533 +153,1462 @@
args
message
-
exception message

+class BadAuthenticationServiceURL(RedirectError)
 
-class GDClient(atom.client.AtomPubClient)
    
Method resolution order:
-
GDClient
-
atom.client.AtomPubClient
+
BadAuthenticationServiceURL
+
RedirectError
+
RequestError
+
Error
+
exceptions.Exception
+
exceptions.BaseException
__builtin__.object

-Methods inherited from atom.client.AtomPubClient:
-
Delete = delete(self, uri=None, auth_token=None, http_request=None, **kwargs)
+Data and other attributes inherited from RequestError:
+
body = None
-
Get = get(self, uri=None, auth_token=None, http_request=None, **kwargs)
+
headers = None
-
Post = post(self, uri=None, data=None, auth_token=None, http_request=None, **kwargs)
+
reason = None
-
Put = put(self, uri=None, data=None, auth_token=None, http_request=None, **kwargs)
+
status = None
-
Request = request(self, method=None, uri=None, auth_token=None, http_request=None, **kwargs)
Performs an HTTP request to the server indicated.

-Uses the http_client instance to make the request.
+
+Data descriptors inherited from Error:
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from exceptions.Exception:
+
__init__(...)
x.__init__(...) initializes x; see x.__class__.__doc__ for signature
+ +
+Data and other attributes inherited from exceptions.Exception:
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+ +
+Methods inherited from exceptions.BaseException:
+
__delattr__(...)
x.__delattr__('name') <==> del x.name
+ +
__getattribute__(...)
x.__getattribute__('name') <==> x.name
+ +
__getitem__(...)
x.__getitem__(y) <==> x[y]
+ +
__getslice__(...)
x.__getslice__(i, j) <==> x[i:j]
 
-Args:
-  method: The HTTP method as a string, usually one of 'GET', 'POST',
-          'PUT', or 'DELETE'
-  uri: The URI desired as a string or atom.http_core.Uri. 
-  http_request: 
-  auth_token: An authorization token object whose modify_request method
-              sets the HTTP Authorization header.
+Use of negative indices is not supported.
-
__init__(self, http_client=None, host=None, auth_token=None, **kwargs)
+
__reduce__(...)
-
delete(self, uri=None, auth_token=None, http_request=None, **kwargs)
+
__repr__(...)
x.__repr__() <==> repr(x)
-
get(self, uri=None, auth_token=None, http_request=None, **kwargs)
+
__setattr__(...)
x.__setattr__('name', value) <==> x.name = value
-
post(self, uri=None, data=None, auth_token=None, http_request=None, **kwargs)
+
__setstate__(...)
-
put(self, uri=None, data=None, auth_token=None, http_request=None, **kwargs)
+
__str__(...)
x.__str__() <==> str(x)
-
request(self, method=None, uri=None, auth_token=None, http_request=None, **kwargs)
Performs an HTTP request to the server indicated.

-Uses the http_client instance to make the request.

-Args:
-  method: The HTTP method as a string, usually one of 'GET', 'POST',
-          'PUT', or 'DELETE'
-  uri: The URI desired as a string or atom.http_core.Uri. 
-  http_request: 
-  auth_token: An authorization token object whose modify_request method
-              sets the HTTP Authorization header.
+
__unicode__(...)

-Data descriptors inherited from atom.client.AtomPubClient:
+Data descriptors inherited from exceptions.BaseException:
__dict__
-
dictionary for instance variables (if defined)
-
__weakref__
-
list of weak references to the object (if defined)
+
args
+
+
message
-
-Data and other attributes inherited from atom.client.AtomPubClient:
-
auth_token = None
- -
host = None
-

+class CaptchaChallenge(RequestError) - - - +
 
-class GDataClient(gdata.service.GDataService)
   This class is deprecated. 

-All functionality has been migrated to gdata.service.GDataService.
 
 
    
Method resolution order:
-
GDataClient
-
gdata.service.GDataService
-
atom.service.AtomService
+
CaptchaChallenge
+
RequestError
+
Error
+
exceptions.Exception
+
exceptions.BaseException
__builtin__.object

-Methods defined here:
-
ClientLogin(self, username, password, service_name, source=None, account_type=None, auth_url=None, login_token=None, login_captcha=None)
+Data and other attributes defined here:
+
captcha_token = None
-
Delete(self, url)
+
captcha_url = None
-
Get(self, url, parser)
Simplified interface for Get.

-Requires a parser function which takes the server response's body as
-the only argument.

-Args:
-  url: A string or something that can be converted to a string using str.
-      The URL of the requested resource.
-  parser: A function which takes the HTTP body from the server as it's
-      only result. Common values would include str, 
-      gdata.GDataEntryFromString, and gdata.GDataFeedFromString.

-Returns: The result of calling parser(http_response_body).
+
+Data and other attributes inherited from RequestError:
+
body = None
-
Post(self, data, url, parser, media_source=None)
Streamlined version of Post.

-Requires a parser function which takes the server response's body as
-the only argument.
+
headers = None
-
Put(self, data, url, parser, media_source=None)
Streamlined version of Put.

-Requires a parser function which takes the server response's body as
-the only argument.
+
reason = None
-
__init__(self, application_name=None, tokens=None)
+
status = None

-Methods inherited from gdata.service.GDataService:
-
AuthSubTokenInfo(self)
Fetches the AuthSub token's metadata from the server.

-Raises:
-  NonAuthSubToken if the user's auth token is not an AuthSub token
- -
FetchOAuthRequestToken(self, scopes=None, extra_parameters=None, request_url='https://www.google.com/accounts/OAuthGetRequestToken')
Fetches OAuth request token and returns it.

-Args:
-  scopes: string or list of string base URL(s) of the service(s) to be
-      accessed. If None, then this method tries to determine the
-      scope(s) from the current service.
-  extra_parameters: dict (optional) key-value pairs as any additional
-      parameters to be included in the URL and signature while making a
-      request for fetching an OAuth request token. All the OAuth parameters
-      are added by default. But if provided through this argument, any
-      default parameters will be overwritten. For e.g. a default parameter
-      oauth_version 1.0 can be overwritten if
-      extra_parameters = {'oauth_version': '2.0'}
-  request_url: Request token URL. The default is
-      'https://www.google.com/accounts/OAuthGetRequestToken'.
-  
-Returns:
-  The fetched request token as a gdata.auth.OAuthToken object.
-  
-Raises:
-  FetchingOAuthRequestTokenFailed if the server responded to the request
-  with an error.
- -
GenerateAuthSubURL(self, next, scope, secure=False, session=True, domain='default')
Generate a URL at which the user will login and be redirected back.

-Users enter their credentials on a Google login page and a token is sent
-to the URL specified in next. See documentation for AuthSub login at:
-http://code.google.com/apis/accounts/docs/AuthSub.html

-Args:
-  next: string The URL user will be sent to after logging in.
-  scope: string or list of strings. The URLs of the services to be 
-         accessed.
-  secure: boolean (optional) Determines whether or not the issued token
-          is a secure token.
-  session: boolean (optional) Determines whether or not the issued token
-           can be upgraded to a session token.
- -
GenerateOAuthAuthorizationURL(self, request_token=None, callback_url=None, extra_params=None, include_scopes_in_callback=False, scopes_param_prefix='oauth_token_scope', request_url='https://www.google.com/accounts/OAuthAuthorizeToken')
Generates URL at which user will login to authorize the request token.

-Args:
-  request_token: gdata.auth.OAuthToken (optional) OAuth request token.
-      If not specified, then the current token will be used if it is of
-      type <gdata.auth.OAuthToken>, else it is found by looking in the
-      token_store by looking for a token for the current scope.    
-  callback_url: string (optional) The URL user will be sent to after
-      logging in and granting access.
-  extra_params: dict (optional) Additional parameters to be sent.
-  include_scopes_in_callback: Boolean (default=False) if set to True, and
-      if 'callback_url' is present, the 'callback_url' will be modified to
-      include the scope(s) from the request token as a URL parameter. The
-      key for the 'callback' URL's scope parameter will be
-      OAUTH_SCOPE_URL_PARAM_NAME. The benefit of including the scope URL as
-      a parameter to the 'callback' URL, is that the page which receives
-      the OAuth token will be able to tell which URLs the token grants
-      access to.
-  scopes_param_prefix: string (default='oauth_token_scope') The URL
-      parameter key which maps to the list of valid scopes for the token.
-      This URL parameter will be included in the callback URL along with
-      the scopes of the token as value if include_scopes_in_callback=True.
-  request_url: Authorization URL. The default is
-      'https://www.google.com/accounts/OAuthAuthorizeToken'.
-Returns:
-  A string URL at which the user is required to login.

-Raises:
-  NonOAuthToken if the user's request token is not an OAuth token or if a
-  request token was not available.
+Data descriptors inherited from Error:
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from exceptions.Exception:
+
__init__(...)
x.__init__(...) initializes x; see x.__class__.__doc__ for signature
-
GetAuthSubToken(self)
Returns the AuthSub token as a string.

-If the token is an gdta.auth.AuthSubToken, the Authorization Label
-("AuthSub token") is removed.

-This method examines the current_token to see if it is an AuthSubToken
-or SecureAuthSubToken. If not, it searches the token_store for a token
-which matches the current scope.

-The current scope is determined by the service name string member.

-Returns:
-  If the current_token is set to an AuthSubToken/SecureAuthSubToken,
-  return the token string. If there is no current_token, a token string
-  for a token which matches the service object's default scope is returned.
-  If there are no tokens valid for the scope, returns None.
- -
GetClientLoginToken(self)
Returns the token string for the current token or a token matching the 
-service scope.

-If the current_token is a ClientLoginToken, the token string for 
-the current token is returned. If the current_token is not set, this method
-searches for a token in the token_store which is valid for the service 
-object's current scope.

-The current scope is determined by the service name string member.
-The token string is the end of the Authorization header, it doesn not
-include the ClientLogin label.
- -
GetEntry(self, uri, extra_headers=None)
Query the GData API with the given URI and receive an Entry.

-See also documentation for gdata.service.Get

-Args:
-  uri: string The query in the form of a URI. Example:
-       '/base/feeds/snippets?bq=digital+camera'.
-  extra_headers: dictionary (optional) Extra HTTP headers to be included
-                 in the GET request. These headers are in addition to
-                 those stored in the client's additional_headers property.
-                 The client automatically sets the Content-Type and
-                 Authorization headers.

-Returns:
-  A GDataEntry built from the XML in the server's response.
+
+Data and other attributes inherited from exceptions.Exception:
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T
-
GetFeed(self, uri, extra_headers=None, converter=<function GDataFeedFromString at 0x8ef1b8>)
Query the GData API with the given URI and receive a Feed.

-See also documentation for gdata.service.Get

-Args:
-  uri: string The query in the form of a URI. Example:
-       '/base/feeds/snippets?bq=digital+camera'.
-  extra_headers: dictionary (optional) Extra HTTP headers to be included
-                 in the GET request. These headers are in addition to
-                 those stored in the client's additional_headers property.
-                 The client automatically sets the Content-Type and
-                 Authorization headers.

-Returns:
-  A GDataFeed built from the XML in the server's response.
+
+Methods inherited from exceptions.BaseException:
+
__delattr__(...)
x.__delattr__('name') <==> del x.name
-
GetMedia(self, uri, extra_headers=None)
Returns a MediaSource containing media and its metadata from the given
-URI string.
+
__getattribute__(...)
x.__getattribute__('name') <==> x.name
-
GetNext(self, feed)
Requests the next 'page' of results in the feed.

-This method uses the feed's next link to request an additional feed
-and uses the class of the feed to convert the results of the GET request.

-Args:
-  feed: atom.Feed or a subclass. The feed should contain a next link and
-      the type of the feed will be applied to the results from the 
-      server. The new feed which is returned will be of the same class
-      as this feed which was passed in.

-Returns:
-  A new feed representing the next set of results in the server's feed.
-  The type of this feed will match that of the feed argument.
+
__getitem__(...)
x.__getitem__(y) <==> x[y]
-
PostOrPut(self, verb, data, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=4, media_source=None, converter=None)
Insert data into a GData service at the given URI.

-Args:
-  verb: string, either 'POST' or 'PUT'
-  data: string, ElementTree._Element, atom.Entry, or gdata.GDataEntry The
-        XML to be sent to the uri. 
-  uri: string The location (feed) to which the data should be inserted. 
-       Example: '/base/feeds/items'. 
-  extra_headers: dict (optional) HTTP headers which are to be included. 
-                 The client automatically sets the Content-Type,
-                 Authorization, and Content-Length headers.
-  url_params: dict (optional) Additional URL parameters to be included
-              in the URI. These are translated into query arguments
-              in the form '&dict_key=value&...'.
-              Example: {'max-results': '250'} becomes &max-results=250
-  escape_params: boolean (optional) If false, the calling code has already
-                 ensured that the query will form a valid URL (all
-                 reserved characters have been escaped). If true, this
-                 method will escape the query and any URL parameters
-                 provided.
-  media_source: MediaSource (optional) Container for the media to be sent
-      along with the entry, if provided.
-  converter: func (optional) A function which will be executed on the 
-      server's response. Often this is a function like 
-      GDataEntryFromString which will parse the body of the server's 
-      response and return a GDataEntry.
+
__getslice__(...)
x.__getslice__(i, j) <==> x[i:j]
 
-Returns:
-  If the post succeeded, this method will return a GDataFeed, GDataEntry,
-  or the results of running converter on the server's result body (if
-  converter was specified).
+Use of negative indices is not supported.
-
ProgrammaticLogin(self, captcha_token=None, captcha_response=None)
Authenticates the user and sets the GData Auth token.

-Login retreives a temporary auth token which must be used with all
-requests to GData services. The auth token is stored in the GData client
-object.

-Login is also used to respond to a captcha challenge. If the user's login
-attempt failed with a CaptchaRequired error, the user can respond by
-calling Login with the captcha token and the answer to the challenge.

-Args:
-  captcha_token: string (optional) The identifier for the captcha challenge
-                 which was presented to the user.
-  captcha_response: string (optional) The user's answer to the captch 
-                    challenge.

-Raises:
-  CaptchaRequired if the login service will require a captcha response
-  BadAuthentication if the login service rejected the username or password
-  Error if the login service responded with a 403 different from the above
+
__reduce__(...)
-
RevokeAuthSubToken(self)
Revokes an existing AuthSub token.

-Raises:
-  NonAuthSubToken if the user's auth token is not an AuthSub token
+
__repr__(...)
x.__repr__() <==> repr(x)
-
RevokeOAuthToken(self, request_url='https://www.google.com/accounts/AuthSubRevokeToken')
Revokes an existing OAuth token.

-request_url: Token revoke URL. The default is
-      'https://www.google.com/accounts/AuthSubRevokeToken'.
-Raises:
-  NonOAuthToken if the user's auth token is not an OAuth token.
-  RevokingOAuthTokenFailed if request for revoking an OAuth token failed.
+
__setattr__(...)
x.__setattr__('name', value) <==> x.name = value
-
SetAuthSubToken(self, token, scopes=None, rsa_key=None)
Sets the token sent in requests to an AuthSub token.

-Sets the current_token and attempts to add the token to the token_store.

-Only use this method if you have received a token from the AuthSub
-service. The auth token is set automatically when UpgradeToSessionToken()
-is used. See documentation for Google AuthSub here:
-http://code.google.com/apis/accounts/AuthForWebApps.html 

-Args:
- token: gdata.auth.AuthSubToken or gdata.auth.SecureAuthSubToken or string
-        The token returned by the AuthSub service. If the token is an
-        AuthSubToken or SecureAuthSubToken, the scope information stored in
-        the token is used. If the token is a string, the scopes parameter is
-        used to determine the valid scopes.
- scopes: list of URLs for which the token is valid. This is only used
-         if the token parameter is a string.
- rsa_key: string (optional) Private key required for RSA_SHA1 signature
-          method.  This parameter is necessary if the token is a string
-          representing a secure token.
- -
SetClientLoginToken(self, token, scopes=None)
Sets the token sent in requests to a ClientLogin token.

-This method sets the current_token to a new ClientLoginToken and it 
-also attempts to add the ClientLoginToken to the token_store.

-Only use this method if you have received a token from the ClientLogin
-service. The auth_token is set automatically when ProgrammaticLogin()
-is used. See documentation for Google ClientLogin here:
-http://code.google.com/apis/accounts/docs/AuthForInstalledApps.html

-Args:
-  token: string or instance of a ClientLoginToken.
+
__setstate__(...)
-
SetOAuthInputParameters(self, signature_method, consumer_key, consumer_secret=None, rsa_key=None, two_legged_oauth=False)
Sets parameters required for using OAuth authentication mechanism.

-NOTE: Though consumer_secret and rsa_key are optional, either of the two
-is required depending on the value of the signature_method.

-Args:
-  signature_method: class which provides implementation for strategy class
-      oauth.oauth.OAuthSignatureMethod. Signature method to be used for
-      signing each request. Valid implementations are provided as the
-      constants defined by gdata.auth.OAuthSignatureMethod. Currently
-      they are gdata.auth.OAuthSignatureMethod.RSA_SHA1 and
-      gdata.auth.OAuthSignatureMethod.HMAC_SHA1
-  consumer_key: string Domain identifying third_party web application.
-  consumer_secret: string (optional) Secret generated during registration.
-      Required only for HMAC_SHA1 signature method.
-  rsa_key: string (optional) Private key required for RSA_SHA1 signature
-      method.
-  two_legged_oauth: string (default=False) Enables two-legged OAuth process.
- -
SetOAuthToken(self, oauth_token)
Attempts to set the current token and add it to the token store.

-The oauth_token can be any OAuth token i.e. unauthorized request token,
-authorized request token or access token.
-This method also attempts to add the token to the token store.
-Use this method any time you want the current token to point to the
-oauth_token passed. For e.g. call this method with the request token
-you receive from FetchOAuthRequestToken.

-Args:
-  request_token: gdata.auth.OAuthToken OAuth request token.
- -
UpgradeToOAuthAccessToken(self, authorized_request_token=None, request_url='https://www.google.com/accounts/OAuthGetAccessToken', oauth_version='1.0')
Upgrades the authorized request token to an access token.

-Args:
-  authorized_request_token: gdata.auth.OAuthToken (optional) OAuth request
-      token. If not specified, then the current token will be used if it is
-      of type <gdata.auth.OAuthToken>, else it is found by looking in the
-      token_store by looking for a token for the current scope.
-  oauth_version: str (default='1.0') oauth_version parameter. All other
-      'oauth_' parameters are added by default. This parameter too, is
-      added by default but here you can override it's value.
-  request_url: Access token URL. The default is
-      'https://www.google.com/accounts/OAuthGetAccessToken'.
-      
-Raises:
-  NonOAuthToken if the user's authorized request token is not an OAuth
-  token or if an authorized request token was not available.
-  TokenUpgradeFailed if the server responded to the request with an 
-  error.
- -
UpgradeToSessionToken(self, token=None)
Upgrades a single use AuthSub token to a session token.

-Args:
-  token: A gdata.auth.AuthSubToken or gdata.auth.SecureAuthSubToken
-         (optional) which is good for a single use but can be upgraded
-         to a session token. If no token is passed in, the token
-         is found by looking in the token_store by looking for a token
-         for the current scope.

-Raises:
-  NonAuthSubToken if the user's auth token is not an AuthSub token
-  TokenUpgradeFailed if the server responded to the request with an 
-  error.
+
__str__(...)
x.__str__() <==> str(x)
-
upgrade_to_session_token(self, token)
Upgrades a single use AuthSub token to a session token.

-Args:
-  token: A gdata.auth.AuthSubToken or gdata.auth.SecureAuthSubToken
-         which is good for a single use but can be upgraded to a
-         session token.

-Returns:
-  The upgraded token as a gdata.auth.AuthSubToken object.

-Raises:
-  TokenUpgradeFailed if the server responded to the request with an 
-  error.
+
__unicode__(...)

-Data descriptors inherited from gdata.service.GDataService:
-
captcha_token
-
Get the captcha token for a login request.
+Data descriptors inherited from exceptions.BaseException:
+
__dict__
+
+
args
-
captcha_url
-
Get the captcha URL for a login request.
+
message
-
source
-
The source is the name of the application making the request. 
-It should be in the form company_id-app_name-app_version
+

+ + + + + +
 
+class ClientLoginFailed(RequestError)
    
Method resolution order:
+
ClientLoginFailed
+
RequestError
+
Error
+
exceptions.Exception
+
exceptions.BaseException
+
__builtin__.object

-Data and other attributes inherited from gdata.service.GDataService:
-
auth_token = None
+Data and other attributes inherited from RequestError:
+
body = None
-
handler = None
+
headers = None
-
tokens = None
+
reason = None
+ +
status = None

-Methods inherited from atom.service.AtomService:
-
UseBasicAuth(self, username, password, for_proxy=False)
Sets an Authenticaiton: Basic HTTP header containing plaintext.

-Deprecated, use use_basic_auth instead.

-The username and password are base64 encoded and added to an HTTP header
-which will be included in each request. Note that your username and 
-password are sent in plaintext.
+Data descriptors inherited from Error:
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from exceptions.Exception:
+
__init__(...)
x.__init__(...) initializes x; see x.__class__.__doc__ for signature
+ +
+Data and other attributes inherited from exceptions.Exception:
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+ +
+Methods inherited from exceptions.BaseException:
+
__delattr__(...)
x.__delattr__('name') <==> del x.name
+ +
__getattribute__(...)
x.__getattribute__('name') <==> x.name
+ +
__getitem__(...)
x.__getitem__(y) <==> x[y]
+ +
__getslice__(...)
x.__getslice__(i, j) <==> x[i:j]
 
-Args:
-  username: str
-  password: str
+Use of negative indices is not supported.
+ +
__reduce__(...)
-
request(self, operation, url, data=None, headers=None, url_params=None)
+
__repr__(...)
x.__repr__() <==> repr(x)
-
use_basic_auth(self, username, password, scopes=None)
+
__setattr__(...)
x.__setattr__('name', value) <==> x.name = value
+ +
__setstate__(...)
+ +
__str__(...)
x.__str__() <==> str(x)
+ +
__unicode__(...)

-Data descriptors inherited from atom.service.AtomService:
+Data descriptors inherited from exceptions.BaseException:
__dict__
-
dictionary for instance variables (if defined)
-
__weakref__
-
list of weak references to the object (if defined)
+
args
-
debug
-
If True, HTTP debug information is printed.
+
message
+
+

+ + + + + +
 
+class ClientLoginTokenMissing(Error)
    
Method resolution order:
+
ClientLoginTokenMissing
+
Error
+
exceptions.Exception
+
exceptions.BaseException
+
__builtin__.object
-
override_token
+
+Data descriptors inherited from Error:
+
__weakref__
+
list of weak references to the object (if defined)

-Data and other attributes inherited from atom.service.AtomService:
-
auto_set_current_token = True
+Methods inherited from exceptions.Exception:
+
__init__(...)
x.__init__(...) initializes x; see x.__class__.__doc__ for signature
-
auto_store_tokens = True
+
+Data and other attributes inherited from exceptions.Exception:
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T
-
current_token = None
+
+Methods inherited from exceptions.BaseException:
+
__delattr__(...)
x.__delattr__('name') <==> del x.name
-
port = 80
+
__getattribute__(...)
x.__getattribute__('name') <==> x.name
-
ssl = False
+
__getitem__(...)
x.__getitem__(y) <==> x[y]
-

+

__getslice__(...)
x.__getslice__(i, j) <==> x[i:j]

+Use of negative indices is not supported.
+ +
__reduce__(...)
+ +
__repr__(...)
x.__repr__() <==> repr(x)
+ +
__setattr__(...)
x.__setattr__('name', value) <==> x.name = value
+ +
__setstate__(...)
+ +
__str__(...)
x.__str__() <==> str(x)
+ +
__unicode__(...)
+ +
+Data descriptors inherited from exceptions.BaseException:
+
__dict__
+
+
args
+
+
message
+
+

+ + + + + +
 
+class Error(exceptions.Exception)
    
Method resolution order:
+
Error
+
exceptions.Exception
+
exceptions.BaseException
+
__builtin__.object
+
+
+Data descriptors defined here:
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from exceptions.Exception:
+
__init__(...)
x.__init__(...) initializes x; see x.__class__.__doc__ for signature
+ +
+Data and other attributes inherited from exceptions.Exception:
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+ +
+Methods inherited from exceptions.BaseException:
+
__delattr__(...)
x.__delattr__('name') <==> del x.name
+ +
__getattribute__(...)
x.__getattribute__('name') <==> x.name
+ +
__getitem__(...)
x.__getitem__(y) <==> x[y]
+ +
__getslice__(...)
x.__getslice__(i, j) <==> x[i:j]

+Use of negative indices is not supported.
+ +
__reduce__(...)
+ +
__repr__(...)
x.__repr__() <==> repr(x)
+ +
__setattr__(...)
x.__setattr__('name', value) <==> x.name = value
+ +
__setstate__(...)
+ +
__str__(...)
x.__str__() <==> str(x)
+ +
__unicode__(...)
+ +
+Data descriptors inherited from exceptions.BaseException:
+
__dict__
+
+
args
+
+
message
+
+

+ + + + + + + +
 
+class GDClient(atom.client.AtomPubClient)
   Communicates with Google Data servers to perform CRUD operations.

+This class is currently experimental and may change in backwards
+incompatible ways.

+This class exists to simplify the following three areas involved in using
+the Google Data APIs.

+CRUD Operations:

+The client provides a generic 'request' method for making HTTP requests.
+There are a number of convenience methods which are built on top of
+request, which include get_feed, get_entry, get_next, post, update, and
+delete. These methods contact the Google Data servers.

+Auth:

+Reading user-specific private data requires authorization from the user as
+do any changes to user data. An auth_token object can be passed into any
+of the HTTP requests to set the Authorization header in the request.

+You may also want to set the auth_token member to a an object which can
+use modify_request to set the Authorization header in the HTTP request.

+If you are authenticating using the email address and password, you can
+use the client_login method to obtain an auth token and set the
+auth_token member.

+If you are using browser redirects, specifically AuthSub, you will want
+to use gdata.gauth.AuthSubToken.from_url to obtain the token after the
+redirect, and you will probably want to updgrade this since use token
+to a multiple use (session) token using the upgrade_token method.

+API Versions:

+This client is multi-version capable and can be used with Google Data API
+version 1 and version 2. The version should be specified by setting the
+api_version member to a string, either '1' or '2'.
 
 
Method resolution order:
+
GDClient
+
atom.client.AtomPubClient
+
__builtin__.object
+
+
+Methods defined here:
+
ClientLogin = client_login(self, email, password, source, service=None, account_type='HOSTED_OR_GOOGLE', auth_url=<atom.http_core.Uri object at 0xc57d10>, captcha_token=None, captcha_response=None)
+ +
Delete = delete(self, entry_or_uri, auth_token=None, force=False, **kwargs)
+ +
GetAccessToken = get_access_token(self, request_token, url='https://www.google.com/accounts/OAuthGetAccessToken')
+ +
GetEntry = get_entry(self, uri, auth_token=None, converter=None, desired_class=<class 'gdata.data.GDEntry'>, etag=None, **kwargs)
+ +
GetFeed = get_feed(self, uri, auth_token=None, converter=None, desired_class=<class 'gdata.data.GDFeed'>, **kwargs)
+ +
GetNext = get_next(self, feed, auth_token=None, converter=None, desired_class=None, **kwargs)
+ +
GetOAuthToken = get_oauth_token(self, scopes, next, consumer_key, consumer_secret=None, rsa_private_key=None, url='https://www.google.com/accounts/OAuthGetRequestToken')
+ +
ModifyRequest = modify_request(self, http_request)
+ +
Post = post(self, entry, uri, auth_token=None, converter=None, desired_class=None, **kwargs)
+ +
Request = request(self, method=None, uri=None, auth_token=None, http_request=None, converter=None, desired_class=None, redirects_remaining=4, **kwargs)
+ +
RequestClientLoginToken = request_client_login_token(self, email, password, source, service=None, account_type='HOSTED_OR_GOOGLE', auth_url=<atom.http_core.Uri object at 0xc57cd0>, captcha_token=None, captcha_response=None)
+ +
RevokeToken = revoke_token(self, token=None, url=<atom.http_core.Uri object at 0xc57d90>)
+ +
Update = update(self, entry, auth_token=None, force=False, **kwargs)
+ +
UpgradeToken = upgrade_token(self, token=None, url=<atom.http_core.Uri object at 0xc57d50>)
+ +
client_login(self, email, password, source, service=None, account_type='HOSTED_OR_GOOGLE', auth_url=<atom.http_core.Uri object at 0xc57d10>, captcha_token=None, captcha_response=None)
Performs an auth request using the user's email address and password.

+In order to modify user specific data and read user private data, your
+application must be authorized by the user. One way to demonstrage
+authorization is by including a Client Login token in the Authorization
+HTTP header of all requests. This method requests the Client Login token
+by sending the user's email address, password, the name of the
+application, and the service code for the service which will be accessed
+by the application. If the username and password are correct, the server
+will respond with the client login code and a new ClientLoginToken
+object will be set in the client's auth_token member. With the auth_token
+set, future requests from this client will include the Client Login
+token.

+For a list of service names, see 
+http://code.google.com/apis/gdata/faq.html#clientlogin
+For more information on Client Login, see:
+http://code.google.com/apis/accounts/docs/AuthForInstalledApps.html

+Args:
+  email: str The user's email address or username.
+  password: str The password for the user's account.
+  source: str The name of your application. This can be anything you
+          like but should should give some indication of which app is
+          making the request.
+  service: str The service code for the service you would like to access.
+           For example, 'cp' for contacts, 'cl' for calendar. For a full
+           list see
+           http://code.google.com/apis/gdata/faq.html#clientlogin
+           If you are using a subclass of the gdata.client.GDClient, the
+           service will usually be filled in for you so you do not need
+           to specify it. For example see BloggerClient,
+           SpreadsheetsClient, etc.
+  account_type: str (optional) The type of account which is being
+                authenticated. This can be either 'GOOGLE' for a Google
+                Account, 'HOSTED' for a Google Apps Account, or the
+                default 'HOSTED_OR_GOOGLE' which will select the Google
+                Apps Account if the same email address is used for both
+                a Google Account and a Google Apps Account.
+  auth_url: str (optional) The URL to which the login request should be
+            sent.
+  captcha_token: str (optional) If a previous login attempt was reponded
+                 to with a CAPTCHA challenge, this is the token which
+                 identifies the challenge (from the CAPTCHA's URL).
+  captcha_response: str (optional) If a previous login attempt was
+                    reponded to with a CAPTCHA challenge, this is the
+                    response text which was contained in the challenge.

+  Returns:
+    None

+  Raises:
+    A RequestError or one of its suclasses: BadAuthentication,
+    BadAuthenticationServiceURLClientLoginFailed,
+    ClientLoginTokenMissing, or CaptchaChallenge
+ +
delete(self, entry_or_uri, auth_token=None, force=False, **kwargs)
+ +
get_access_token(self, request_token, url='https://www.google.com/accounts/OAuthGetAccessToken')
Exchanges an authorized OAuth request token for an access token.

+Contacts the Google OAuth server to upgrade a previously authorized
+request token. Once the request token is upgraded to an access token,
+the access token may be used to access the user's data.

+For more details, see the Google Accounts OAuth documentation:
+http://code.google.com/apis/accounts/docs/OAuth.html#AccessToken

+Args:
+  request_token: An OAuth token which has been authorized by the user.
+  url: (optional) The URL to which the upgrade request should be sent.
+      Defaults to: https://www.google.com/accounts/OAuthAuthorizeToken
+ +
get_entry(self, uri, auth_token=None, converter=None, desired_class=<class 'gdata.data.GDEntry'>, etag=None, **kwargs)
+ +
get_feed(self, uri, auth_token=None, converter=None, desired_class=<class 'gdata.data.GDFeed'>, **kwargs)
+ +
get_next(self, feed, auth_token=None, converter=None, desired_class=None, **kwargs)
Fetches the next set of results from the feed.

+When requesting a feed, the number of entries returned is capped at a
+service specific default limit (often 25 entries). You can specify your
+own entry-count cap using the max-results URL query parameter. If there
+are more results than could fit under max-results, the feed will contain
+a next link. This method performs a GET against this next results URL.

+Returns:
+  A new feed object containing the next set of entries in this feed.
+ +
get_oauth_token(self, scopes, next, consumer_key, consumer_secret=None, rsa_private_key=None, url='https://www.google.com/accounts/OAuthGetRequestToken')
Obtains an OAuth request token to allow the user to authorize this app.

+Once this client has a request token, the user can authorize the request
+token by visiting the authorization URL in their browser. After being
+redirected back to this app at the 'next' URL, this app can then exchange
+the authorized request token for an access token.

+For more information see the documentation on Google Accounts with OAuth:
+http://code.google.com/apis/accounts/docs/OAuth.html#AuthProcess

+Args:
+  scopes: list of strings or atom.http_core.Uri objects which specify the
+      URL prefixes which this app will be accessing. For example, to access
+      the Google Calendar API, you would want to use scopes:
+      ['https://www.google.com/calendar/feeds/',
+       'http://www.google.com/calendar/feeds/']
+  next: str or atom.http_core.Uri object, The URL which the user's browser
+      should be sent to after they authorize access to their data. This
+      should be a URL in your application which will read the token
+      information from the URL and upgrade the request token to an access
+      token.
+  consumer_key: str This is the identifier for this application which you
+      should have received when you registered your application with Google
+      to use OAuth.
+  consumer_secret: str (optional) The shared secret between your app and
+      Google which provides evidence that this request is coming from you
+      application and not another app. If present, this libraries assumes
+      you want to use an HMAC signature to verify requests. Keep this data
+      a secret.
+  rsa_private_key: str (optional) The RSA private key which is used to
+      generate a digital signature which is checked by Google's server. If
+      present, this library assumes that you want to use an RSA signature
+      to verify requests. Keep this data a secret.
+  url: The URL to which a request for a token should be made. The default
+      is Google's OAuth request token provider.
+ +
modify_request(self, http_request)
Adds or changes request before making the HTTP request.

+This client will add the API version if it is specified.
+Subclasses may override this method to add their own request
+modifications before the request is made.
+ +
post(self, entry, uri, auth_token=None, converter=None, desired_class=None, **kwargs)
+ +
request(self, method=None, uri=None, auth_token=None, http_request=None, converter=None, desired_class=None, redirects_remaining=4, **kwargs)
Make an HTTP request to the server.

+See also documentation for atom.client.AtomPubClient.request.

+If a 302 redirect is sent from the server to the client, this client
+assumes that the redirect is in the form used by the Google Calendar API.
+The same request URI and method will be used as in the original request,
+but a gsessionid URL parameter will be added to the request URI with
+the value provided in the server's 302 redirect response. If the 302
+redirect is not in the format specified by the Google Calendar API, a
+RedirectError will be raised containing the body of the server's
+response.

+The method calls the client's modify_request method to make any changes
+required by the client before the request is made. For example, a
+version 2 client could add a GData-Version: 2 header to the request in
+its modify_request method.

+Args:
+  method: str The HTTP verb for this request, usually 'GET', 'POST',
+          'PUT', or 'DELETE'
+  uri: atom.http_core.Uri, str, or unicode The URL being requested.
+  auth_token: An object which sets the Authorization HTTP header in its
+              modify_request method. Recommended classes include
+              gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken
+              among others.
+  http_request: (optional) atom.http_core.HttpRequest
+  converter: function which takes the body of the response as it's only
+             argument and returns the desired object.
+  desired_class: class descended from atom.core.XmlElement to which a
+                 successful response should be converted. If there is no
+                 converter function specified (converter=None) then the
+                 desired_class will be used in calling the
+                 atom.core.parse function. If neither
+                 the desired_class nor the converter is specified, an
+                 HTTP reponse object will be returned.
+  redirects_remaining: (optional) int, if this number is 0 and the
+                       server sends a 302 redirect, the request method
+                       will raise an exception. This parameter is used in
+                       recursive request calls to avoid an infinite loop.

+Any additional arguments are passed through to
+atom.client.AtomPubClient.request.

+Returns:
+  An HTTP response object (see atom.http_core.HttpResponse for a
+  description of the object's interface) if no converter was
+  specified and no desired_class was specified. If a converter function
+  was provided, the results of calling the converter are returned. If no
+  converter was specified but a desired_class was provided, the response
+  body will be converted to the class using
+  atom.core.parse.
+ +
request_client_login_token(self, email, password, source, service=None, account_type='HOSTED_OR_GOOGLE', auth_url=<atom.http_core.Uri object at 0xc57cd0>, captcha_token=None, captcha_response=None)
+ +
revoke_token(self, token=None, url=<atom.http_core.Uri object at 0xc57d90>)
Requests that the token be invalidated.

+This method can be used for both AuthSub and OAuth tokens (to invalidate
+a ClientLogin token, the user must change their password).

+Returns:
+  True if the server responded with a 200.

+Raises:
+  A RequestError if the server responds with a non-200 status.
+ +
update(self, entry, auth_token=None, force=False, **kwargs)
Edits the entry on the server by sending the XML for this entry.

+Performs a PUT and converts the response to a new entry object with a
+matching class to the entry passed in.

+Args:
+  entry:
+  auth_token:
+  force: boolean stating whether an update should be forced. Defaults to
+         False. Normally, if a change has been made since the passed in
+         entry was obtained, the server will not overwrite the entry since
+         the changes were based on an obsolete version of the entry.
+         Setting force to True will cause the update to silently
+         overwrite whatever version is present.

+Returns:
+  A new Entry object of a matching type to the entry which was passed in.
+ +
upgrade_token(self, token=None, url=<atom.http_core.Uri object at 0xc57d50>)
Asks the Google auth server for a multi-use AuthSub token.

+For details on AuthSub, see:
+http://code.google.com/apis/accounts/docs/AuthSub.html

+Args:
+  token: gdata.gauth.AuthSubToken or gdata.gauth.SecureAuthSubToken
+      (optional) If no token is passed in, the client's auth_token member
+      is used to request the new token. The token object will be modified
+      to contain the new session token string.
+  url: str or atom.http_core.Uri (optional) The URL to which the token
+      upgrade request should be sent. Defaults to:
+      https://www.google.com/accounts/AuthSubSessionToken

+Returns:
+  The upgraded gdata.gauth.AuthSubToken object.
+ +
+Data and other attributes defined here:
+
api_version = None
+ +
auth_scopes = None
+ +
auth_service = None
+ +
+Methods inherited from atom.client.AtomPubClient:
+
Get = get(self, uri=None, auth_token=None, http_request=None, **kwargs)
Performs a request using the GET method, returns an HTTP response.
+ +
Put = put(self, uri=None, data=None, auth_token=None, http_request=None, **kwargs)
Sends data using the PUT method, returns an HTTP response.
+ +
__init__(self, http_client=None, host=None, auth_token=None, source=None, **kwargs)
Creates a new AtomPubClient instance.

+Args:
+  source: The name of your application.
+  http_client: An object capable of performing HTTP requests through a
+               request method. This object is used to perform the request
+               when the AtomPubClient's request method is called. Used to
+               allow HTTP requests to be directed to a mock server, or use
+               an alternate library instead of the default of httplib to
+               make HTTP requests.
+  host: str The default host name to use if a host is not specified in the
+        requested URI.
+  auth_token: An object which sets the HTTP Authorization header when its
+              modify_request method is called.
+ +
get(self, uri=None, auth_token=None, http_request=None, **kwargs)
Performs a request using the GET method, returns an HTTP response.
+ +
put(self, uri=None, data=None, auth_token=None, http_request=None, **kwargs)
Sends data using the PUT method, returns an HTTP response.
+ +
+Data descriptors inherited from atom.client.AtomPubClient:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Data and other attributes inherited from atom.client.AtomPubClient:
+
auth_token = None
+ +
host = None
+ +
ssl = False
+ +

+ + + + + +
 
+class GDQuery(atom.http_core.Uri)
    
Method resolution order:
+
GDQuery
+
atom.http_core.Uri
+
__builtin__.object
+
+
+Data descriptors defined here:
+
text_query
+
The q parameter for searching for an exact text match on content
+
+
+Methods inherited from atom.http_core.Uri:
+
ModifyRequest = modify_request(self, http_request=None)
Sets HTTP request components based on the URI.
+ +
__init__(self, scheme=None, host=None, port=None, path=None, query=None)
Constructor for a URI.

+Args:
+  scheme: str This is usually 'http' or 'https'.
+  host: str The host name or IP address of the desired server.
+  post: int The server's port number.
+  path: str The path of the resource following the host. This begins with
+        a /, example: '/calendar/feeds/default/allcalendars/full'
+  query: dict of strings The URL query parameters. The keys and values are
+         both escaped so this dict should contain the unescaped values.
+         For example {'my key': 'val', 'second': '!!!'} will become
+         '?my+key=val&second=%21%21%21' which is appended to the path.
+ +
__str__(self)
+ +
modify_request(self, http_request=None)
Sets HTTP request components based on the URI.
+ +
+Static methods inherited from atom.http_core.Uri:
+
ParseUri = parse_uri(uri_string)
Creates a Uri object which corresponds to the URI string.

+This method can accept partial URIs, but it will leave missing
+members of the Uri unset.
+ +
parse_uri(uri_string)
Creates a Uri object which corresponds to the URI string.

+This method can accept partial URIs, but it will leave missing
+members of the Uri unset.
+ +
+Data descriptors inherited from atom.http_core.Uri:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Data and other attributes inherited from atom.http_core.Uri:
+
host = None
+ +
path = None
+ +
port = None
+ +
scheme = None
+ +

+ + + + + +
 
+class MissingOAuthParameters(Error)
    
Method resolution order:
+
MissingOAuthParameters
+
Error
+
exceptions.Exception
+
exceptions.BaseException
+
__builtin__.object
+
+
+Data descriptors inherited from Error:
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from exceptions.Exception:
+
__init__(...)
x.__init__(...) initializes x; see x.__class__.__doc__ for signature
+ +
+Data and other attributes inherited from exceptions.Exception:
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+ +
+Methods inherited from exceptions.BaseException:
+
__delattr__(...)
x.__delattr__('name') <==> del x.name
+ +
__getattribute__(...)
x.__getattribute__('name') <==> x.name
+ +
__getitem__(...)
x.__getitem__(y) <==> x[y]
+ +
__getslice__(...)
x.__getslice__(i, j) <==> x[i:j]

+Use of negative indices is not supported.
+ +
__reduce__(...)
+ +
__repr__(...)
x.__repr__() <==> repr(x)
+ +
__setattr__(...)
x.__setattr__('name', value) <==> x.name = value
+ +
__setstate__(...)
+ +
__str__(...)
x.__str__() <==> str(x)
+ +
__unicode__(...)
+ +
+Data descriptors inherited from exceptions.BaseException:
+
__dict__
+
+
args
+
+
message
+
+

+ + + + + +
 
+class NotImplemented(RequestError)
    
Method resolution order:
+
NotImplemented
+
RequestError
+
Error
+
exceptions.Exception
+
exceptions.BaseException
+
__builtin__.object
+
+
+Data and other attributes inherited from RequestError:
+
body = None
+ +
headers = None
+ +
reason = None
+ +
status = None
+ +
+Data descriptors inherited from Error:
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from exceptions.Exception:
+
__init__(...)
x.__init__(...) initializes x; see x.__class__.__doc__ for signature
+ +
+Data and other attributes inherited from exceptions.Exception:
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+ +
+Methods inherited from exceptions.BaseException:
+
__delattr__(...)
x.__delattr__('name') <==> del x.name
+ +
__getattribute__(...)
x.__getattribute__('name') <==> x.name
+ +
__getitem__(...)
x.__getitem__(y) <==> x[y]
+ +
__getslice__(...)
x.__getslice__(i, j) <==> x[i:j]

+Use of negative indices is not supported.
+ +
__reduce__(...)
+ +
__repr__(...)
x.__repr__() <==> repr(x)
+ +
__setattr__(...)
x.__setattr__('name', value) <==> x.name = value
+ +
__setstate__(...)
+ +
__str__(...)
x.__str__() <==> str(x)
+ +
__unicode__(...)
+ +
+Data descriptors inherited from exceptions.BaseException:
+
__dict__
+
+
args
+
+
message
+
+

+ + + + + +
 
+class NotModified(RequestError)
    
Method resolution order:
+
NotModified
+
RequestError
+
Error
+
exceptions.Exception
+
exceptions.BaseException
+
__builtin__.object
+
+
+Data and other attributes inherited from RequestError:
+
body = None
+ +
headers = None
+ +
reason = None
+ +
status = None
+ +
+Data descriptors inherited from Error:
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from exceptions.Exception:
+
__init__(...)
x.__init__(...) initializes x; see x.__class__.__doc__ for signature
+ +
+Data and other attributes inherited from exceptions.Exception:
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+ +
+Methods inherited from exceptions.BaseException:
+
__delattr__(...)
x.__delattr__('name') <==> del x.name
+ +
__getattribute__(...)
x.__getattribute__('name') <==> x.name
+ +
__getitem__(...)
x.__getitem__(y) <==> x[y]
+ +
__getslice__(...)
x.__getslice__(i, j) <==> x[i:j]

+Use of negative indices is not supported.
+ +
__reduce__(...)
+ +
__repr__(...)
x.__repr__() <==> repr(x)
+ +
__setattr__(...)
x.__setattr__('name', value) <==> x.name = value
+ +
__setstate__(...)
+ +
__str__(...)
x.__str__() <==> str(x)
+ +
__unicode__(...)
+ +
+Data descriptors inherited from exceptions.BaseException:
+
__dict__
+
+
args
+
+
message
+
+

+ + + + + +
 
+class Query(__builtin__.object)
    Methods defined here:
+
ModifyRequest = modify_request(self, http_request)
+ +
__init__(self, text_query=None, categories=None, author=None, alt=None, updated_min=None, updated_max=None, pretty_print=False, published_min=None, published_max=None, start_index=None, max_results=None, strict=False)
Constructs a Google Data Query to filter feed contents serverside.

+Args:
+  text_query: Full text search str (optional)
+  categories: list of strings (optional). Each string is a required
+      category. To include an 'or' query, put a | in the string between
+      terms. For example, to find everything in the Fitz category and
+      the Laurie or Jane category (Fitz and (Laurie or Jane)) you would
+      set categories to ['Fitz', 'Laurie|Jane'].
+  author: str (optional) The service returns entries where the author
+      name and/or email address match your query string.
+  alt: str (optional) for the Alternative representation type you'd like
+      the feed in. If you don't specify an alt parameter, the service
+      returns an Atom feed. This is equivalent to alt='atom'.
+      alt='rss' returns an RSS 2.0 result feed.
+      alt='json' returns a JSON representation of the feed.
+      alt='json-in-script' Requests a response that wraps JSON in a script
+      tag.
+      alt='atom-in-script' Requests an Atom response that wraps an XML
+      string in a script tag.
+      alt='rss-in-script' Requests an RSS response that wraps an XML
+      string in a script tag.
+  updated_min: str (optional), RFC 3339 timestamp format, lower bounds.
+      For example: 2005-08-09T10:57:00-08:00
+  updated_max: str (optional) updated time must be earlier than timestamp.
+  pretty_print: boolean (optional) If True the server's XML response will
+      be indented to make it more human readable. Defaults to False.
+  published_min: str (optional), Similar to updated_min but for published
+      time.
+  published_max: str (optional), Similar to updated_max but for published
+      time.
+  start_index: int or str (optional) 1-based index of the first result to
+      be retrieved. Note that this isn't a general cursoring mechanism.
+      If you first send a query with ?start-index=1&max-results=10 and
+      then send another query with ?start-index=11&max-results=10, the
+      service cannot guarantee that the results are equivalent to
+      ?start-index=1&max-results=20, because insertions and deletions
+      could have taken place in between the two queries.
+  max_results: int or str (optional) Maximum number of results to be
+      retrieved. Each service has a default max (usually 25) which can
+      vary from service to service. There is also a service-specific
+      limit to the max_results you can fetch in a request.
+  strict: boolean (optional) If True, the server will return an error if
+      the server does not recognize any of the parameters in the request
+      URL. Defaults to False.
+ +
modify_request(self, http_request)
+ +
+Data descriptors defined here:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + +
 
+class RedirectError(RequestError)
    
Method resolution order:
+
RedirectError
+
RequestError
+
Error
+
exceptions.Exception
+
exceptions.BaseException
+
__builtin__.object
+
+
+Data and other attributes inherited from RequestError:
+
body = None
+ +
headers = None
+ +
reason = None
+ +
status = None
+ +
+Data descriptors inherited from Error:
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from exceptions.Exception:
+
__init__(...)
x.__init__(...) initializes x; see x.__class__.__doc__ for signature
+ +
+Data and other attributes inherited from exceptions.Exception:
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+ +
+Methods inherited from exceptions.BaseException:
+
__delattr__(...)
x.__delattr__('name') <==> del x.name
+ +
__getattribute__(...)
x.__getattribute__('name') <==> x.name
+ +
__getitem__(...)
x.__getitem__(y) <==> x[y]
+ +
__getslice__(...)
x.__getslice__(i, j) <==> x[i:j]

+Use of negative indices is not supported.
+ +
__reduce__(...)
+ +
__repr__(...)
x.__repr__() <==> repr(x)
+ +
__setattr__(...)
x.__setattr__('name', value) <==> x.name = value
+ +
__setstate__(...)
+ +
__str__(...)
x.__str__() <==> str(x)
+ +
__unicode__(...)
+ +
+Data descriptors inherited from exceptions.BaseException:
+
__dict__
+
+
args
+
+
message
+
+

+ + + + + +
 
+class RequestError(Error)
    
Method resolution order:
+
RequestError
+
Error
+
exceptions.Exception
+
exceptions.BaseException
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
body = None
+ +
headers = None
+ +
reason = None
+ +
status = None
+ +
+Data descriptors inherited from Error:
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from exceptions.Exception:
+
__init__(...)
x.__init__(...) initializes x; see x.__class__.__doc__ for signature
+ +
+Data and other attributes inherited from exceptions.Exception:
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+ +
+Methods inherited from exceptions.BaseException:
+
__delattr__(...)
x.__delattr__('name') <==> del x.name
+ +
__getattribute__(...)
x.__getattribute__('name') <==> x.name
+ +
__getitem__(...)
x.__getitem__(y) <==> x[y]
+ +
__getslice__(...)
x.__getslice__(i, j) <==> x[i:j]

+Use of negative indices is not supported.
+ +
__reduce__(...)
+ +
__repr__(...)
x.__repr__() <==> repr(x)
+ +
__setattr__(...)
x.__setattr__('name', value) <==> x.name = value
+ +
__setstate__(...)
+ +
__str__(...)
x.__str__() <==> str(x)
+ +
__unicode__(...)
+ +
+Data descriptors inherited from exceptions.BaseException:
+
__dict__
+
+
args
+
+
message
+
+

+ + + + + + + +
 
+class ResumableUploader(__builtin__.object)
   Resumable upload helper for the Google Data protocol.
 
 Methods defined here:
+
QueryUploadStatus = query_upload_status(self, uri=None)
+ +
UpdateFile = update_file(self, entry_or_resumable_edit_link, headers=None, force=False, auth_token=None)
+ +
UploadChunk = upload_chunk(self, start_byte, content_bytes)
+ +
UploadFile = upload_file(self, resumable_media_link, entry=None, headers=None, auth_token=None)
+ +
__init__(self, client, file_handle, content_type, total_file_size, chunk_size=None, desired_class=None)
Starts a resumable upload to a service that supports the protocol.

+Args:
+  client: gdata.client.GDClient A Google Data API service.
+  file_handle: object A file-like object containing the file to upload.
+  content_type: str The mimetype of the file to upload.
+  total_file_size: int The file's total size in bytes.
+  chunk_size: int The size of each upload chunk. If None, the
+      DEFAULT_CHUNK_SIZE will be used.
+  desired_class: object (optional) The type of gdata.data.GDEntry to parse
+      the completed entry as. This should be specific to the API.
+ +
query_upload_status(self, uri=None)
Queries the current status of a resumable upload request.

+Args:
+  uri: str (optional) A resumable upload uri to query and override the one
+      that is set in this object.

+Returns:
+  An integer representing the file position (byte) to resume the upload from
+  or True if the upload is complete.

+Raises:
+  RequestError if anything other than a HTTP 308 is returned
+  when the request raises an exception.
+ +
update_file(self, entry_or_resumable_edit_link, headers=None, force=False, auth_token=None)
Updates the contents of an existing file using the resumable protocol.

+If you are interested in pausing an upload or controlling the chunking
+yourself, use the upload_chunk() method instead.

+Args:
+  entry_or_resumable_edit_link: object or string A gdata.data.GDEntry for
+      the entry/file to update or the full uri of the link with rel
+      #resumable-edit-media.
+  headers: dict Additional headers to send in the initial request to create
+      the resumable upload request. These headers will override any default
+      headers sent in the request. For example: headers={'Slug': 'MyTitle'}.
+  force boolean (optional) True to force an update and set the If-Match
+      header to '*'. If False and entry_or_resumable_edit_link is a
+      gdata.data.GDEntry object, its etag value is used. Otherwise this
+      parameter should be set to True to force the update.
+  auth_token: (optional) An object which sets the Authorization HTTP header
+      in its modify_request method. Recommended classes include
+      gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken
+      among others.

+Returns:
+  The final Atom entry created on the server. The entry object's type will
+  be the class specified in self.desired_class.

+Raises:
+  RequestError if anything other than a HTTP 308 is returned
+  when the request raises an exception.
+ +
upload_chunk(self, start_byte, content_bytes)
Uploads a byte range (chunk) to the resumable upload server.

+Args:
+  start_byte: int The byte offset of the total file where the byte range
+      passed in lives.
+  content_bytes: str The file contents of this chunk.

+Returns:
+  The final Atom entry created on the server. The entry object's type will
+  be the class specified in self.desired_class.

+Raises:
+  RequestError if the unique upload uri is not set or the
+  server returns something other than an HTTP 308 when the upload is
+  incomplete.
+ +
upload_file(self, resumable_media_link, entry=None, headers=None, auth_token=None)
Uploads an entire file in chunks using the resumable upload protocol.

+If you are interested in pausing an upload or controlling the chunking
+yourself, use the upload_chunk() method instead.

+Args:
+  resumable_media_link: str The full URL for the #resumable-create-media for
+      starting a resumable upload request.
+  entry: A (optional) gdata.data.GDEntry containging metadata to create the 
+      upload from.
+  headers: dict Additional headers to send in the initial request to create
+      the resumable upload request. These headers will override any default
+      headers sent in the request. For example: headers={'Slug': 'MyTitle'}.
+  auth_token: (optional) An object which sets the Authorization HTTP header
+      in its modify_request method. Recommended classes include
+      gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken
+      among others.

+Returns:
+  The final Atom entry created on the server. The entry object's type will
+  be the class specified in self.desired_class.

+Raises:
+  RequestError if anything other than a HTTP 308 is returned
+  when the request raises an exception.
+ +
+Data descriptors defined here:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Data and other attributes defined here:
+
DEFAULT_CHUNK_SIZE = 5242880
+ +

+ + + + + +
 
+class UnableToUpgradeToken(RequestError)
    
Method resolution order:
+
UnableToUpgradeToken
+
RequestError
+
Error
+
exceptions.Exception
+
exceptions.BaseException
+
__builtin__.object
+
+
+Data and other attributes inherited from RequestError:
+
body = None
+ +
headers = None
+ +
reason = None
+ +
status = None
+ +
+Data descriptors inherited from Error:
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from exceptions.Exception:
+
__init__(...)
x.__init__(...) initializes x; see x.__class__.__doc__ for signature
+ +
+Data and other attributes inherited from exceptions.Exception:
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+ +
+Methods inherited from exceptions.BaseException:
+
__delattr__(...)
x.__delattr__('name') <==> del x.name
+ +
__getattribute__(...)
x.__getattribute__('name') <==> x.name
+ +
__getitem__(...)
x.__getitem__(y) <==> x[y]
+ +
__getslice__(...)
x.__getslice__(i, j) <==> x[i:j]

+Use of negative indices is not supported.
+ +
__reduce__(...)
+ +
__repr__(...)
x.__repr__() <==> repr(x)
+ +
__setattr__(...)
x.__setattr__('name', value) <==> x.name = value
+ +
__setstate__(...)
+ +
__str__(...)
x.__str__() <==> str(x)
+ +
__unicode__(...)
+ +
+Data descriptors inherited from exceptions.BaseException:
+
__dict__
+
+
args
+
+
message
+
+

+ + + + + +
 
+class Unauthorized(Error)
    
Method resolution order:
+
Unauthorized
+
Error
+
exceptions.Exception
+
exceptions.BaseException
+
__builtin__.object
+
+
+Data descriptors inherited from Error:
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from exceptions.Exception:
+
__init__(...)
x.__init__(...) initializes x; see x.__class__.__doc__ for signature
+ +
+Data and other attributes inherited from exceptions.Exception:
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+ +
+Methods inherited from exceptions.BaseException:
+
__delattr__(...)
x.__delattr__('name') <==> del x.name
+ +
__getattribute__(...)
x.__getattribute__('name') <==> x.name
+ +
__getitem__(...)
x.__getitem__(y) <==> x[y]
+ +
__getslice__(...)
x.__getslice__(i, j) <==> x[i:j]

+Use of negative indices is not supported.
+ +
__reduce__(...)
+ +
__repr__(...)
x.__repr__() <==> repr(x)
+ +
__setattr__(...)
x.__setattr__('name', value) <==> x.name = value
+ +
__setstate__(...)
+ +
__str__(...)
x.__str__() <==> str(x)
+ +
__unicode__(...)
+ +
+Data descriptors inherited from exceptions.BaseException:
+
__dict__
+
+
args
+
+
message
+
+

+ + + + + +
 
+Functions
       
error_from_response(message, http_response, error_class, response_body=None)
Creates a new exception and sets the HTTP information in the error.

+Args:
+ message: str human readable message to be displayed if the exception is
+          not caught.
+ http_response: The response from the server, contains error information.
+ error_class: The exception to be instantiated and populated with
+              information from the http_response
+ response_body: str (optional) specify if the response has already been read
+                from the http_response object.
+
get_xml_version(version)
Determines which XML schema to use based on the client API version.

+Args:
+  version: string which is converted to an int. The version string is in
+           the form 'Major.Minor.x.y.z' and only the major version number
+           is considered. If None is provided assume version 1.
+

-
 
Data
       CLIENT_LOGIN_SCOPES = {'apps': ['http://www.google.com/a/feeds/', 'https://www.google.com/a/feeds/', 'http://apps-apis.google.com/a/feeds/', 'https://apps-apis.google.com/a/feeds/'], 'blogger': ['http://www.blogger.com/feeds/'], 'cl': ['https://www.google.com/calendar/feeds/', 'http://www.google.com/calendar/feeds/'], 'codesearch': ['http://www.google.com/codesearch/feeds/'], 'cp': ['https://www.google.com/m8/feeds/', 'http://www.google.com/m8/feeds/'], 'finance': ['http://finance.google.com/finance/feeds/'], 'gbase': ['http://base.google.com/base/feeds/', 'http://www.google.com/base/feeds/'], 'health': ['https://www.google.com/health/feeds/'], 'lh2': ['http://picasaweb.google.com/data/'], 'sitemaps': ['https://www.google.com/webmasters/tools/feeds/'], ...}
-SCOPE_URL_PARAM_NAME = 'authsub_token_scope'
-__author__ = 'j.s@google.com (Jeff Scudder)'

+__author__ = 'j.s@google.com (Jeff Scudder)'

 
diff -Nru python-gdata-1.2.4/pydocs/gdata.codesearch.html python-gdata-2.0.8/pydocs/gdata.codesearch.html --- python-gdata-1.2.4/pydocs/gdata.codesearch.html 2008-10-16 00:01:57.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.codesearch.html 2009-11-25 01:04:13.000000000 +0000 @@ -182,23 +182,23 @@       class.
  category: list (optional) A list of Category instances
  contributor: list (optional) A list on Contributor instances
-  generator: Generator (optional) 
-  icon: Icon (optional) 
+  generator: Generator (optional)
+  icon: Icon (optional)
  id: Id (optional) The entry's Id element
  link: list (optional) A list of Link instances
-  logo: Logo (optional) 
+  logo: Logo (optional)
  rights: Rights (optional) The entry's Rights element
  subtitle: Subtitle (optional) The entry's subtitle element
  title: Title (optional) the entry's title element
  updated: Updated (optional) the entry's updated element
-  entry: list (optional) A list of the Entry instances contained in the 
+  entry: list (optional) A list of the Entry instances contained in the
      feed.
-  text: String (optional) The text contents of the element. This is the 
-      contents of the Entry's XML text node. 
+  text: String (optional) The text contents of the element. This is the
+      contents of the Entry's XML text node.
      (Example: <foo>This is the text</foo>)
  extension_elements: list (optional) A list of ExtensionElement instances
      which are children of this element.
-  extension_attributes: dict (optional) A dictionary of strings which are 
+  extension_attributes: dict (optional) A dictionary of strings which are
      the values for additional XML attributes of this element.
diff -Nru python-gdata-1.2.4/pydocs/gdata.codesearch.service.html python-gdata-2.0.8/pydocs/gdata.codesearch.service.html --- python-gdata-1.2.4/pydocs/gdata.codesearch.service.html 2009-01-22 19:55:42.000000000 +0000 +++ python-gdata-2.0.8/pydocs/gdata.codesearch.service.html 2010-02-26 23:16:48.000000000 +0000 @@ -15,7 +15,7 @@ +Modules -
 
-Modules
       
atom
@@ -136,8 +136,6 @@
__gt__(...)
x.__gt__(y) <==> x>y
-
__hash__(...)
x.__hash__() <==> hash(x)
-
__iter__(...)
x.__iter__() <==> iter(x)
__le__(...)
x.__le__(y) <==> x<=y
@@ -152,6 +150,8 @@
__setitem__(...)
x.__setitem__(i, y) <==> x[i]=y
+
__sizeof__(...)
D.__sizeof__() -> size of D in memory, in bytes
+
clear(...)
D.clear() -> None.  Remove all items from D.
copy(...)
D.copy() -> a shallow copy of D
@@ -185,9 +185,11 @@
Data and other attributes inherited from __builtin__.dict:
-
__new__ = <built-in method __new__ of type object at 0x72b260>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__hash__ = None
+ +
__new__ = <built-in method __new__ of type object at 0x7569a0>
T.__new__(S, ...) -> a new object with type S, a subtype of T
-
fromkeys = <built-in method fromkeys of type object at 0xd09450>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
+
fromkeys = <built-in method fromkeys of type object at 0xa62bb0>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
v defaults to None.

@@ -215,7 +217,7 @@ Returns:
    A CodesearchFeed objects representing the feed returned by the server -

Query(self, uri, converter=<function CodesearchFeedFromString at 0x8dc140>)
Queries the Codesearch feed and returns the resulting feed of
+
Query(self, uri, converter=<function CodesearchFeedFromString at 0x7fed6212cc08>)
Queries the Codesearch feed and returns the resulting feed of
   entries.
 
Args:
@@ -285,7 +287,7 @@ Returns:
  True if the entry was deleted.
-
FetchOAuthRequestToken(self, scopes=None, extra_parameters=None, request_url='https://www.google.com/accounts/OAuthGetRequestToken')
Fetches OAuth request token and returns it.
+
FetchOAuthRequestToken(self, scopes=None, extra_parameters=None, request_url='https://www.google.com/accounts/OAuthGetRequestToken', oauth_callback=None)
Fetches and sets the OAuth request token and returns it.
 
Args:
  scopes: string or list of string base URL(s) of the service(s) to be
@@ -300,10 +302,14 @@       extra_parameters = {'oauth_version': '2.0'}
  request_url: Request token URL. The default is
      'https://www.google.com/accounts/OAuthGetRequestToken'.
-  
+  oauth_callback: str (optional) If set, it is assume the client is using
+      the OAuth v1.0a protocol where the callback url is sent in the
+      request token step.  If the oauth_callback is also set in
+      extra_params, this value will override that one.

Returns:
  The fetched request token as a gdata.auth.OAuthToken object.
-  

Raises:
  FetchingOAuthRequestTokenFailed if the server responded to the request
  with an error.
@@ -435,7 +441,7 @@ Returns:
  A GDataEntry built from the XML in the server's response.
-
GetFeed(self, uri, extra_headers=None, converter=<function GDataFeedFromString at 0x8ef1b8>)
Query the GData API with the given URI and receive a Feed.
+
GetFeed(self, uri, extra_headers=None, converter=<function GDataFeedFromString at 0x7fed60c53d70>)
Query the GData API with the given URI and receive a Feed.
 
See also documentation for gdata.service.Get
 
@@ -451,6 +457,8 @@ Returns:
  A GDataFeed built from the XML in the server's response.
+
GetGeneratorFromLinkFinder(self, link_finder, func, num_retries=3, delay=1, backoff=2)
returns a generator for pagination
+
GetMedia(self, uri, extra_headers=None)
Returns a MediaSource containing media and its metadata from the given
URI string.
@@ -469,6 +477,26 @@   A new feed representing the next set of results in the server's feed.
  The type of this feed will match that of the feed argument.
+
GetOAuthInputParameters(self)
+ +
GetWithRetries(self, uri, extra_headers=None, redirects_remaining=4, encoding='UTF-8', converter=None, num_retries=3, delay=1, backoff=2, logger=None)
This is a wrapper method for Get with retring capability.

+To avoid various errors while retrieving bulk entities by retring
+specified times.

+Note this method relies on the time module and so may not be usable
+by default in Python2.2.

+Args:
+  num_retries: integer The retry count.
+  delay: integer The initial delay for retring.
+  backoff: integer how much the delay should lengthen after each failure.
+  logger: an object which has a debug(str) method to receive logging
+          messages. Recommended that you pass in the logging module.
+Raises:
+  ValueError if any of the parameters has an invalid value.
+  RanOutOfTries on failure after number of retries.
+
Post(self, data, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=4, media_source=None, converter=None)
Insert or update  data into a GData service at the given URI.
 
Args:
@@ -629,7 +657,7 @@ Args:
  token: string or instance of a ClientLoginToken.
-
SetOAuthInputParameters(self, signature_method, consumer_key, consumer_secret=None, rsa_key=None, two_legged_oauth=False)
Sets parameters required for using OAuth authentication mechanism.
+
SetOAuthInputParameters(self, signature_method, consumer_key, consumer_secret=None, rsa_key=None, two_legged_oauth=False, requestor_id=None)
Sets parameters required for using OAuth authentication mechanism.
 
NOTE: Though consumer_secret and rsa_key are optional, either of the two
is required depending on the value of the signature_method.
@@ -646,7 +674,10 @@       Required only for HMAC_SHA1 signature method.
  rsa_key: string (optional) Private key required for RSA_SHA1 signature
      method.
-  two_legged_oauth: string (default=False) Enables two-legged OAuth process.
+  two_legged_oauth: boolean (optional) Enables two-legged OAuth process.
+  requestor_id: string (optional) User email adress to make requests on
+      their behalf.  This parameter should only be set when two_legged_oauth
+      is True.
SetOAuthToken(self, oauth_token)
Attempts to set the current token and add it to the token store.
 
@@ -660,18 +691,24 @@ Args:
  request_token: gdata.auth.OAuthToken OAuth request token.
-
UpgradeToOAuthAccessToken(self, authorized_request_token=None, request_url='https://www.google.com/accounts/OAuthGetAccessToken', oauth_version='1.0')
Upgrades the authorized request token to an access token.
+
UpgradeToOAuthAccessToken(self, authorized_request_token=None, request_url='https://www.google.com/accounts/OAuthGetAccessToken', oauth_version='1.0', oauth_verifier=None)
Upgrades the authorized request token to an access token and returns it
 
Args:
  authorized_request_token: gdata.auth.OAuthToken (optional) OAuth request
      token. If not specified, then the current token will be used if it is
      of type <gdata.auth.OAuthToken>, else it is found by looking in the
      token_store by looking for a token for the current scope.
+  request_url: Access token URL. The default is
+      'https://www.google.com/accounts/OAuthGetAccessToken'.
  oauth_version: str (default='1.0') oauth_version parameter. All other
      'oauth_' parameters are added by default. This parameter too, is
      added by default but here you can override it's value.
-  request_url: Access token URL. The default is
-      'https://www.google.com/accounts/OAuthGetAccessToken'.
+  oauth_verifier: str (optional) If present, it is assumed that the client
+    will use the OAuth v1.0a protocol which includes passing the
+    oauth_verifier (as returned by the SP) in the access token step.

+Returns:
+  Access token
      
Raises:
  NonOAuthToken if the user's authorized request token is not an OAuth
@@ -741,7 +778,7 @@   username: str
  password: str
-
request(self, operation, url, data=None, headers=None, url_params=None)
+
request(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
use_basic_auth(self, username, password, scopes=None)
diff -Nru python-gdata-1.2.4/pydocs/gdata.contacts.client.html python-gdata-2.0.8/pydocs/gdata.contacts.client.html --- python-gdata-1.2.4/pydocs/gdata.contacts.client.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.contacts.client.html 2010-02-26 23:16:48.000000000 +0000 @@ -0,0 +1,904 @@ + + +Python: module gdata.contacts.client + + + + +
 
+ 
gdata.contacts.client
index
/usr/local/svn/gdata-python-client/src/gdata/contacts/client.py
+

# Copyright (C) 2009 Google Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.

+

+ + + + + +
 
+Modules
       
atom
+
gdata
+

+ + + + + +
 
+Classes
       
+
gdata.client.GDClient(atom.client.AtomPubClient) +
+
+
ContactsClient +
+
+
gdata.client.Query(__builtin__.object) +
+
+
ContactsQuery +
ProfilesQuery +
+
+
+

+ + + + + +
 
+class ContactsClient(gdata.client.GDClient)
    
Method resolution order:
+
ContactsClient
+
gdata.client.GDClient
+
atom.client.AtomPubClient
+
__builtin__.object
+
+
+Methods defined here:
+
AddContact = add_contact(self, new_contact, insert_uri=None, auth_token=None, billing_information=None, birthday=None, calendar_link=None, **kwargs)
+ +
ChangePhoto = change_photo(self, media, contact_entry_or_url, content_type=None, content_length=None)
+ +
CreateContact = create_contact(self, new_contact, insert_uri=None, auth_token=None, **kwargs)
+ +
CreateGroup = create_group(self, new_group, insert_uri=None, url_params=None, desired_class=None)
+ +
DeleteGroup = delete_group(self, edit_uri, extra_headers=None, url_params=None, escape_params=True)
+ +
DeletePhoto = delete_photo(self, contact_entry_or_url)
+ +
ExecuteBatch = execute_batch(self, batch_feed, url, desired_class=None)
+ +
ExecuteBatchProfiles = execute_batch_profiles(self, batch_feed, url, desired_class=<function ProfilesFeedFromString at 0xbed500>)
+ +
GetContact = get_contact(self, uri, desired_class=<class 'gdata.contacts.data.ContactEntry'>, auth_token=None, **kwargs)
+ +
GetContacts = get_contacts(self, desired_class=<class 'gdata.contacts.data.ContactsFeed'>, auth_token=None, **kwargs)
+ +
GetFeedUri = get_feed_uri(self, kind='contacts', contact_list=None, projection='full', scheme='http')
+ +
GetGroup = get_group(self, uri=None, desired_class=<class 'gdata.contacts.data.GroupEntry'>, auth_token=None, **kwargs)
+ +
GetGroups = get_groups(self, uri=None, desired_class=<class 'gdata.contacts.data.GroupsFeed'>, auth_token=None, **kwargs)
+ +
GetPhoto = get_photo(self, contact_entry_or_url)
+ +
GetProfile = get_profile(self, uri)
+ +
GetProfilesFeed = get_profiles_feed(self, uri=None)
+ +
UpdateGroup = update_group(self, edit_uri, updated_group, url_params=None, escape_params=True, desired_class=None)
+ +
UpdateProfile = update_profile(self, edit_uri, updated_profile, auth_token=None, **kwargs)
+ +
add_contact(self, new_contact, insert_uri=None, auth_token=None, billing_information=None, birthday=None, calendar_link=None, **kwargs)
Adds an new contact to Google Contacts.

+Args:
+  new_contact: atom.Entry or subclass A new contact which is to be added to
+            Google Contacts.
+  insert_uri: the URL to post new contacts to the feed
+  url_params: dict (optional) Additional URL parameters to be included
+              in the insertion request.
+  escape_params: boolean (optional) If true, the url_parameters will be
+                 escaped before they are included in the request.

+Returns:
+  On successful insert,  an entry containing the contact created
+  On failure, a RequestError is raised of the form:
+    {'status': HTTP status code from server,
+     'reason': HTTP reason from the server,
+     'body': HTTP body of the server's response}
+ +
change_photo(self, media, contact_entry_or_url, content_type=None, content_length=None)
Change the photo for the contact by uploading a new photo.

+Performs a PUT against the photo edit URL to send the binary data for the
+photo.

+Args:
+  media: filename, file-like-object, or a gdata.MediaSource object to send.
+  contact_entry_or_url: ContactEntry or str If it is a ContactEntry, this
+                        method will search for an edit photo link URL and
+                        perform a PUT to the URL.
+  content_type: str (optional) the mime type for the photo data. This is
+                necessary if media is a file or file name, but if media
+                is a MediaSource object then the media object can contain
+                the mime type. If media_type is set, it will override the
+                mime type in the media object.
+  content_length: int or str (optional) Specifying the content length is
+                  only required if media is a file-like object. If media
+                  is a filename, the length is determined using
+                  os.path.getsize. If media is a MediaSource object, it is
+                  assumed that it already contains the content length.
+ +
create_contact(self, new_contact, insert_uri=None, auth_token=None, **kwargs)
Adds an new contact to Google Contacts.

+Args:
+  new_contact: atom.Entry or subclass A new contact which is to be added to
+            Google Contacts.
+  insert_uri: the URL to post new contacts to the feed
+  url_params: dict (optional) Additional URL parameters to be included
+              in the insertion request.
+  escape_params: boolean (optional) If true, the url_parameters will be
+                 escaped before they are included in the request.

+Returns:
+  On successful insert,  an entry containing the contact created
+  On failure, a RequestError is raised of the form:
+    {'status': HTTP status code from server,
+     'reason': HTTP reason from the server,
+     'body': HTTP body of the server's response}
+ +
create_group(self, new_group, insert_uri=None, url_params=None, desired_class=None)
+ +
delete_group(self, edit_uri, extra_headers=None, url_params=None, escape_params=True)
+ +
delete_photo(self, contact_entry_or_url)
+ +
execute_batch(self, batch_feed, url, desired_class=None)
Sends a batch request feed to the server.

+Args:
+  batch_feed: gdata.contacts.ContactFeed A feed containing batch
+      request entries. Each entry contains the operation to be performed
+      on the data contained in the entry. For example an entry with an
+      operation type of insert will be used as if the individual entry
+      had been inserted.
+  url: str The batch URL to which these operations should be applied.
+  converter: Function (optional) The function used to convert the server's
+      response to an object. 

+Returns:
+  The results of the batch request's execution on the server. If the
+  default converter is used, this is stored in a ContactsFeed.
+ +
execute_batch_profiles(self, batch_feed, url, desired_class=<function ProfilesFeedFromString at 0xbed500>)
Sends a batch request feed to the server.

+Args:
+  batch_feed: gdata.profiles.ProfilesFeed A feed containing batch
+      request entries. Each entry contains the operation to be performed
+      on the data contained in the entry. For example an entry with an
+      operation type of insert will be used as if the individual entry
+      had been inserted.
+  url: string The batch URL to which these operations should be applied.
+  converter: Function (optional) The function used to convert the server's
+      response to an object. The default value is
+      gdata.profiles.ProfilesFeedFromString.

+Returns:
+  The results of the batch request's execution on the server. If the
+  default converter is used, this is stored in a ProfilesFeed.
+ +
get_contact(self, uri, desired_class=<class 'gdata.contacts.data.ContactEntry'>, auth_token=None, **kwargs)
+ +
get_contacts(self, desired_class=<class 'gdata.contacts.data.ContactsFeed'>, auth_token=None, **kwargs)
Obtains a feed with the contacts belonging to the current user.

+Args:
+  auth_token: An object which sets the Authorization HTTP header in its
+              modify_request method. Recommended classes include
+              gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken
+              among others. Represents the current user. Defaults to None
+              and if None, this method will look for a value in the
+              auth_token member of SpreadsheetsClient.
+  desired_class: class descended from atom.core.XmlElement to which a
+                 successful response should be converted. If there is no
+                 converter function specified (desired_class=None) then the
+                 desired_class will be used in calling the
+                 atom.core.parse function. If neither
+                 the desired_class nor the converter is specified, an
+                 HTTP reponse object will be returned. Defaults to
+                 gdata.spreadsheets.data.SpreadsheetsFeed.
+ +
get_feed_uri(self, kind='contacts', contact_list=None, projection='full', scheme='http')
Builds a feed URI.

+Args:
+  kind: The type of feed to return, typically 'groups' or 'contacts'.
+    Default value: 'contacts'.
+  contact_list: The contact list to return a feed for.
+    Default value: self.contact_list.
+  projection: The projection to apply to the feed contents, for example
+    'full', 'base', 'base/12345', 'full/batch'. Default value: 'full'.
+  scheme: The URL scheme such as 'http' or 'https', None to return a
+      relative URI without hostname.

+Returns:
+  A feed URI using the given kind, contact list, and projection.
+  Example: '/m8/feeds/contacts/default/full'.
+ +
get_group(self, uri=None, desired_class=<class 'gdata.contacts.data.GroupEntry'>, auth_token=None, **kwargs)
Get a single groups details 
+Args:
+    uri:  the group uri or id
+ +
get_groups(self, uri=None, desired_class=<class 'gdata.contacts.data.GroupsFeed'>, auth_token=None, **kwargs)
+ +
get_photo(self, contact_entry_or_url)
Retrives the binary data for the contact's profile photo as a string.

+Args:
+  contact_entry_or_url: a gdata.contacts.ContactEntry objecr or a string
+     containing the photo link's URL. If the contact entry does not 
+     contain a photo link, the image will not be fetched and this method
+     will return None.
+ +
get_profile(self, uri)
Retrieves a domain's profile for the user.

+Args:
+  uri: string the URL to retrieve the profiles feed,
+      for example /m8/feeds/profiles/default/full/username

+Returns:
+  On success, a ProfileEntry containing the profile for the user.
+  On failure, raises a RequestError
+ +
get_profiles_feed(self, uri=None)
Retrieves a feed containing all domain's profiles.

+Args:
+  uri: string (optional) the URL to retrieve the profiles feed,
+      for example /m8/feeds/profiles/default/full

+Returns:
+  On success, a ProfilesFeed containing the profiles.
+  On failure, raises a RequestError.
+ +
update_group(self, edit_uri, updated_group, url_params=None, escape_params=True, desired_class=None)
+ +
update_profile(self, edit_uri, updated_profile, auth_token=None, **kwargs)
Updates an existing profile.

+Args:
+  edit_uri: string The edit link URI for the element being updated
+  updated_profile: string atom.Entry or subclass containing
+                the Atom Entry which will replace the profile which is
+                stored at the edit_url.
+  url_params: dict (optional) Additional URL parameters to be included
+              in the update request.
+  escape_params: boolean (optional) If true, the url_params will be
+                 escaped before they are included in the request.

+Returns:
+  On successful update,  a httplib.HTTPResponse containing the server's
+    response to the PUT request.
+  On failure, raises a RequestError.
+ +
+Data and other attributes defined here:
+
api_version = '3'
+ +
auth_scopes = ('https://www.google.com/m8/feeds/', 'http://www.google.com/m8/feeds/')
+ +
auth_service = 'cp'
+ +
contact_list = 'default'
+ +
server = 'www.google.com'
+ +
+Methods inherited from gdata.client.GDClient:
+
ClientLogin = client_login(self, email, password, source, service=None, account_type='HOSTED_OR_GOOGLE', auth_url=<atom.http_core.Uri object at 0xbd5850>, captcha_token=None, captcha_response=None)
Performs an auth request using the user's email address and password.

+In order to modify user specific data and read user private data, your
+application must be authorized by the user. One way to demonstrage
+authorization is by including a Client Login token in the Authorization
+HTTP header of all requests. This method requests the Client Login token
+by sending the user's email address, password, the name of the
+application, and the service code for the service which will be accessed
+by the application. If the username and password are correct, the server
+will respond with the client login code and a new ClientLoginToken
+object will be set in the client's auth_token member. With the auth_token
+set, future requests from this client will include the Client Login
+token.

+For a list of service names, see 
+http://code.google.com/apis/gdata/faq.html#clientlogin
+For more information on Client Login, see:
+http://code.google.com/apis/accounts/docs/AuthForInstalledApps.html

+Args:
+  email: str The user's email address or username.
+  password: str The password for the user's account.
+  source: str The name of your application. This can be anything you
+          like but should should give some indication of which app is
+          making the request.
+  service: str The service code for the service you would like to access.
+           For example, 'cp' for contacts, 'cl' for calendar. For a full
+           list see
+           http://code.google.com/apis/gdata/faq.html#clientlogin
+           If you are using a subclass of the gdata.client.GDClient, the
+           service will usually be filled in for you so you do not need
+           to specify it. For example see BloggerClient,
+           SpreadsheetsClient, etc.
+  account_type: str (optional) The type of account which is being
+                authenticated. This can be either 'GOOGLE' for a Google
+                Account, 'HOSTED' for a Google Apps Account, or the
+                default 'HOSTED_OR_GOOGLE' which will select the Google
+                Apps Account if the same email address is used for both
+                a Google Account and a Google Apps Account.
+  auth_url: str (optional) The URL to which the login request should be
+            sent.
+  captcha_token: str (optional) If a previous login attempt was reponded
+                 to with a CAPTCHA challenge, this is the token which
+                 identifies the challenge (from the CAPTCHA's URL).
+  captcha_response: str (optional) If a previous login attempt was
+                    reponded to with a CAPTCHA challenge, this is the
+                    response text which was contained in the challenge.

+  Returns:
+    None

+  Raises:
+    A RequestError or one of its suclasses: BadAuthentication,
+    BadAuthenticationServiceURL, ClientLoginFailed,
+    ClientLoginTokenMissing, or CaptchaChallenge
+ +
Delete = delete(self, entry_or_uri, auth_token=None, force=False, **kwargs)
+ +
GetAccessToken = get_access_token(self, request_token, url='https://www.google.com/accounts/OAuthGetAccessToken')
Exchanges an authorized OAuth request token for an access token.

+Contacts the Google OAuth server to upgrade a previously authorized
+request token. Once the request token is upgraded to an access token,
+the access token may be used to access the user's data.

+For more details, see the Google Accounts OAuth documentation:
+http://code.google.com/apis/accounts/docs/OAuth.html#AccessToken

+Args:
+  request_token: An OAuth token which has been authorized by the user.
+  url: (optional) The URL to which the upgrade request should be sent.
+      Defaults to: https://www.google.com/accounts/OAuthAuthorizeToken
+ +
GetEntry = get_entry(self, uri, auth_token=None, converter=None, desired_class=<class 'gdata.data.GDEntry'>, etag=None, **kwargs)
+ +
GetFeed = get_feed(self, uri, auth_token=None, converter=None, desired_class=<class 'gdata.data.GDFeed'>, **kwargs)
+ +
GetNext = get_next(self, feed, auth_token=None, converter=None, desired_class=None, **kwargs)
Fetches the next set of results from the feed.

+When requesting a feed, the number of entries returned is capped at a
+service specific default limit (often 25 entries). You can specify your
+own entry-count cap using the max-results URL query parameter. If there
+are more results than could fit under max-results, the feed will contain
+a next link. This method performs a GET against this next results URL.

+Returns:
+  A new feed object containing the next set of entries in this feed.
+ +
GetOAuthToken = get_oauth_token(self, scopes, next, consumer_key, consumer_secret=None, rsa_private_key=None, url='https://www.google.com/accounts/OAuthGetRequestToken')
Obtains an OAuth request token to allow the user to authorize this app.

+Once this client has a request token, the user can authorize the request
+token by visiting the authorization URL in their browser. After being
+redirected back to this app at the 'next' URL, this app can then exchange
+the authorized request token for an access token.

+For more information see the documentation on Google Accounts with OAuth:
+http://code.google.com/apis/accounts/docs/OAuth.html#AuthProcess

+Args:
+  scopes: list of strings or atom.http_core.Uri objects which specify the
+      URL prefixes which this app will be accessing. For example, to access
+      the Google Calendar API, you would want to use scopes:
+      ['https://www.google.com/calendar/feeds/',
+       'http://www.google.com/calendar/feeds/']
+  next: str or atom.http_core.Uri object, The URL which the user's browser
+      should be sent to after they authorize access to their data. This
+      should be a URL in your application which will read the token
+      information from the URL and upgrade the request token to an access
+      token.
+  consumer_key: str This is the identifier for this application which you
+      should have received when you registered your application with Google
+      to use OAuth.
+  consumer_secret: str (optional) The shared secret between your app and
+      Google which provides evidence that this request is coming from you
+      application and not another app. If present, this libraries assumes
+      you want to use an HMAC signature to verify requests. Keep this data
+      a secret.
+  rsa_private_key: str (optional) The RSA private key which is used to
+      generate a digital signature which is checked by Google's server. If
+      present, this library assumes that you want to use an RSA signature
+      to verify requests. Keep this data a secret.
+  url: The URL to which a request for a token should be made. The default
+      is Google's OAuth request token provider.
+ +
ModifyRequest = modify_request(self, http_request)
Adds or changes request before making the HTTP request.

+This client will add the API version if it is specified.
+Subclasses may override this method to add their own request
+modifications before the request is made.
+ +
Post = post(self, entry, uri, auth_token=None, converter=None, desired_class=None, **kwargs)
+ +
Request = request(self, method=None, uri=None, auth_token=None, http_request=None, converter=None, desired_class=None, redirects_remaining=4, **kwargs)
Make an HTTP request to the server.

+See also documentation for atom.client.AtomPubClient.request.

+If a 302 redirect is sent from the server to the client, this client
+assumes that the redirect is in the form used by the Google Calendar API.
+The same request URI and method will be used as in the original request,
+but a gsessionid URL parameter will be added to the request URI with
+the value provided in the server's 302 redirect response. If the 302
+redirect is not in the format specified by the Google Calendar API, a
+RedirectError will be raised containing the body of the server's
+response.

+The method calls the client's modify_request method to make any changes
+required by the client before the request is made. For example, a
+version 2 client could add a GData-Version: 2 header to the request in
+its modify_request method.

+Args:
+  method: str The HTTP verb for this request, usually 'GET', 'POST',
+          'PUT', or 'DELETE'
+  uri: atom.http_core.Uri, str, or unicode The URL being requested.
+  auth_token: An object which sets the Authorization HTTP header in its
+              modify_request method. Recommended classes include
+              gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken
+              among others.
+  http_request: (optional) atom.http_core.HttpRequest
+  converter: function which takes the body of the response as it's only
+             argument and returns the desired object.
+  desired_class: class descended from atom.core.XmlElement to which a
+                 successful response should be converted. If there is no
+                 converter function specified (converter=None) then the
+                 desired_class will be used in calling the
+                 atom.core.parse function. If neither
+                 the desired_class nor the converter is specified, an
+                 HTTP reponse object will be returned.
+  redirects_remaining: (optional) int, if this number is 0 and the
+                       server sends a 302 redirect, the request method
+                       will raise an exception. This parameter is used in
+                       recursive request calls to avoid an infinite loop.

+Any additional arguments are passed through to
+atom.client.AtomPubClient.request.

+Returns:
+  An HTTP response object (see atom.http_core.HttpResponse for a
+  description of the object's interface) if no converter was
+  specified and no desired_class was specified. If a converter function
+  was provided, the results of calling the converter are returned. If no
+  converter was specified but a desired_class was provided, the response
+  body will be converted to the class using
+  atom.core.parse.
+ +
RequestClientLoginToken = request_client_login_token(self, email, password, source, service=None, account_type='HOSTED_OR_GOOGLE', auth_url=<atom.http_core.Uri object at 0xbd5810>, captcha_token=None, captcha_response=None)
+ +
RevokeToken = revoke_token(self, token=None, url=<atom.http_core.Uri object at 0xbd58d0>)
Requests that the token be invalidated.

+This method can be used for both AuthSub and OAuth tokens (to invalidate
+a ClientLogin token, the user must change their password).

+Returns:
+  True if the server responded with a 200.

+Raises:
+  A RequestError if the server responds with a non-200 status.
+ +
Update = update(self, entry, auth_token=None, force=False, **kwargs)
Edits the entry on the server by sending the XML for this entry.

+Performs a PUT and converts the response to a new entry object with a
+matching class to the entry passed in.

+Args:
+  entry:
+  auth_token:
+  force: boolean stating whether an update should be forced. Defaults to
+         False. Normally, if a change has been made since the passed in
+         entry was obtained, the server will not overwrite the entry since
+         the changes were based on an obsolete version of the entry.
+         Setting force to True will cause the update to silently
+         overwrite whatever version is present.

+Returns:
+  A new Entry object of a matching type to the entry which was passed in.
+ +
UpgradeToken = upgrade_token(self, token=None, url=<atom.http_core.Uri object at 0xbd5890>)
Asks the Google auth server for a multi-use AuthSub token.

+For details on AuthSub, see:
+http://code.google.com/apis/accounts/docs/AuthSub.html

+Args:
+  token: gdata.gauth.AuthSubToken or gdata.gauth.SecureAuthSubToken
+      (optional) If no token is passed in, the client's auth_token member
+      is used to request the new token. The token object will be modified
+      to contain the new session token string.
+  url: str or atom.http_core.Uri (optional) The URL to which the token
+      upgrade request should be sent. Defaults to:
+      https://www.google.com/accounts/AuthSubSessionToken

+Returns:
+  The upgraded gdata.gauth.AuthSubToken object.
+ +
client_login(self, email, password, source, service=None, account_type='HOSTED_OR_GOOGLE', auth_url=<atom.http_core.Uri object at 0xbd5850>, captcha_token=None, captcha_response=None)
Performs an auth request using the user's email address and password.

+In order to modify user specific data and read user private data, your
+application must be authorized by the user. One way to demonstrage
+authorization is by including a Client Login token in the Authorization
+HTTP header of all requests. This method requests the Client Login token
+by sending the user's email address, password, the name of the
+application, and the service code for the service which will be accessed
+by the application. If the username and password are correct, the server
+will respond with the client login code and a new ClientLoginToken
+object will be set in the client's auth_token member. With the auth_token
+set, future requests from this client will include the Client Login
+token.

+For a list of service names, see 
+http://code.google.com/apis/gdata/faq.html#clientlogin
+For more information on Client Login, see:
+http://code.google.com/apis/accounts/docs/AuthForInstalledApps.html

+Args:
+  email: str The user's email address or username.
+  password: str The password for the user's account.
+  source: str The name of your application. This can be anything you
+          like but should should give some indication of which app is
+          making the request.
+  service: str The service code for the service you would like to access.
+           For example, 'cp' for contacts, 'cl' for calendar. For a full
+           list see
+           http://code.google.com/apis/gdata/faq.html#clientlogin
+           If you are using a subclass of the gdata.client.GDClient, the
+           service will usually be filled in for you so you do not need
+           to specify it. For example see BloggerClient,
+           SpreadsheetsClient, etc.
+  account_type: str (optional) The type of account which is being
+                authenticated. This can be either 'GOOGLE' for a Google
+                Account, 'HOSTED' for a Google Apps Account, or the
+                default 'HOSTED_OR_GOOGLE' which will select the Google
+                Apps Account if the same email address is used for both
+                a Google Account and a Google Apps Account.
+  auth_url: str (optional) The URL to which the login request should be
+            sent.
+  captcha_token: str (optional) If a previous login attempt was reponded
+                 to with a CAPTCHA challenge, this is the token which
+                 identifies the challenge (from the CAPTCHA's URL).
+  captcha_response: str (optional) If a previous login attempt was
+                    reponded to with a CAPTCHA challenge, this is the
+                    response text which was contained in the challenge.

+  Returns:
+    None

+  Raises:
+    A RequestError or one of its suclasses: BadAuthentication,
+    BadAuthenticationServiceURL, ClientLoginFailed,
+    ClientLoginTokenMissing, or CaptchaChallenge
+ +
delete(self, entry_or_uri, auth_token=None, force=False, **kwargs)
+ +
get_access_token(self, request_token, url='https://www.google.com/accounts/OAuthGetAccessToken')
Exchanges an authorized OAuth request token for an access token.

+Contacts the Google OAuth server to upgrade a previously authorized
+request token. Once the request token is upgraded to an access token,
+the access token may be used to access the user's data.

+For more details, see the Google Accounts OAuth documentation:
+http://code.google.com/apis/accounts/docs/OAuth.html#AccessToken

+Args:
+  request_token: An OAuth token which has been authorized by the user.
+  url: (optional) The URL to which the upgrade request should be sent.
+      Defaults to: https://www.google.com/accounts/OAuthAuthorizeToken
+ +
get_entry(self, uri, auth_token=None, converter=None, desired_class=<class 'gdata.data.GDEntry'>, etag=None, **kwargs)
+ +
get_feed(self, uri, auth_token=None, converter=None, desired_class=<class 'gdata.data.GDFeed'>, **kwargs)
+ +
get_next(self, feed, auth_token=None, converter=None, desired_class=None, **kwargs)
Fetches the next set of results from the feed.

+When requesting a feed, the number of entries returned is capped at a
+service specific default limit (often 25 entries). You can specify your
+own entry-count cap using the max-results URL query parameter. If there
+are more results than could fit under max-results, the feed will contain
+a next link. This method performs a GET against this next results URL.

+Returns:
+  A new feed object containing the next set of entries in this feed.
+ +
get_oauth_token(self, scopes, next, consumer_key, consumer_secret=None, rsa_private_key=None, url='https://www.google.com/accounts/OAuthGetRequestToken')
Obtains an OAuth request token to allow the user to authorize this app.

+Once this client has a request token, the user can authorize the request
+token by visiting the authorization URL in their browser. After being
+redirected back to this app at the 'next' URL, this app can then exchange
+the authorized request token for an access token.

+For more information see the documentation on Google Accounts with OAuth:
+http://code.google.com/apis/accounts/docs/OAuth.html#AuthProcess

+Args:
+  scopes: list of strings or atom.http_core.Uri objects which specify the
+      URL prefixes which this app will be accessing. For example, to access
+      the Google Calendar API, you would want to use scopes:
+      ['https://www.google.com/calendar/feeds/',
+       'http://www.google.com/calendar/feeds/']
+  next: str or atom.http_core.Uri object, The URL which the user's browser
+      should be sent to after they authorize access to their data. This
+      should be a URL in your application which will read the token
+      information from the URL and upgrade the request token to an access
+      token.
+  consumer_key: str This is the identifier for this application which you
+      should have received when you registered your application with Google
+      to use OAuth.
+  consumer_secret: str (optional) The shared secret between your app and
+      Google which provides evidence that this request is coming from you
+      application and not another app. If present, this libraries assumes
+      you want to use an HMAC signature to verify requests. Keep this data
+      a secret.
+  rsa_private_key: str (optional) The RSA private key which is used to
+      generate a digital signature which is checked by Google's server. If
+      present, this library assumes that you want to use an RSA signature
+      to verify requests. Keep this data a secret.
+  url: The URL to which a request for a token should be made. The default
+      is Google's OAuth request token provider.
+ +
modify_request(self, http_request)
Adds or changes request before making the HTTP request.

+This client will add the API version if it is specified.
+Subclasses may override this method to add their own request
+modifications before the request is made.
+ +
post(self, entry, uri, auth_token=None, converter=None, desired_class=None, **kwargs)
+ +
request(self, method=None, uri=None, auth_token=None, http_request=None, converter=None, desired_class=None, redirects_remaining=4, **kwargs)
Make an HTTP request to the server.

+See also documentation for atom.client.AtomPubClient.request.

+If a 302 redirect is sent from the server to the client, this client
+assumes that the redirect is in the form used by the Google Calendar API.
+The same request URI and method will be used as in the original request,
+but a gsessionid URL parameter will be added to the request URI with
+the value provided in the server's 302 redirect response. If the 302
+redirect is not in the format specified by the Google Calendar API, a
+RedirectError will be raised containing the body of the server's
+response.

+The method calls the client's modify_request method to make any changes
+required by the client before the request is made. For example, a
+version 2 client could add a GData-Version: 2 header to the request in
+its modify_request method.

+Args:
+  method: str The HTTP verb for this request, usually 'GET', 'POST',
+          'PUT', or 'DELETE'
+  uri: atom.http_core.Uri, str, or unicode The URL being requested.
+  auth_token: An object which sets the Authorization HTTP header in its
+              modify_request method. Recommended classes include
+              gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken
+              among others.
+  http_request: (optional) atom.http_core.HttpRequest
+  converter: function which takes the body of the response as it's only
+             argument and returns the desired object.
+  desired_class: class descended from atom.core.XmlElement to which a
+                 successful response should be converted. If there is no
+                 converter function specified (converter=None) then the
+                 desired_class will be used in calling the
+                 atom.core.parse function. If neither
+                 the desired_class nor the converter is specified, an
+                 HTTP reponse object will be returned.
+  redirects_remaining: (optional) int, if this number is 0 and the
+                       server sends a 302 redirect, the request method
+                       will raise an exception. This parameter is used in
+                       recursive request calls to avoid an infinite loop.

+Any additional arguments are passed through to
+atom.client.AtomPubClient.request.

+Returns:
+  An HTTP response object (see atom.http_core.HttpResponse for a
+  description of the object's interface) if no converter was
+  specified and no desired_class was specified. If a converter function
+  was provided, the results of calling the converter are returned. If no
+  converter was specified but a desired_class was provided, the response
+  body will be converted to the class using
+  atom.core.parse.
+ +
request_client_login_token(self, email, password, source, service=None, account_type='HOSTED_OR_GOOGLE', auth_url=<atom.http_core.Uri object at 0xbd5810>, captcha_token=None, captcha_response=None)
+ +
revoke_token(self, token=None, url=<atom.http_core.Uri object at 0xbd58d0>)
Requests that the token be invalidated.

+This method can be used for both AuthSub and OAuth tokens (to invalidate
+a ClientLogin token, the user must change their password).

+Returns:
+  True if the server responded with a 200.

+Raises:
+  A RequestError if the server responds with a non-200 status.
+ +
update(self, entry, auth_token=None, force=False, **kwargs)
Edits the entry on the server by sending the XML for this entry.

+Performs a PUT and converts the response to a new entry object with a
+matching class to the entry passed in.

+Args:
+  entry:
+  auth_token:
+  force: boolean stating whether an update should be forced. Defaults to
+         False. Normally, if a change has been made since the passed in
+         entry was obtained, the server will not overwrite the entry since
+         the changes were based on an obsolete version of the entry.
+         Setting force to True will cause the update to silently
+         overwrite whatever version is present.

+Returns:
+  A new Entry object of a matching type to the entry which was passed in.
+ +
upgrade_token(self, token=None, url=<atom.http_core.Uri object at 0xbd5890>)
Asks the Google auth server for a multi-use AuthSub token.

+For details on AuthSub, see:
+http://code.google.com/apis/accounts/docs/AuthSub.html

+Args:
+  token: gdata.gauth.AuthSubToken or gdata.gauth.SecureAuthSubToken
+      (optional) If no token is passed in, the client's auth_token member
+      is used to request the new token. The token object will be modified
+      to contain the new session token string.
+  url: str or atom.http_core.Uri (optional) The URL to which the token
+      upgrade request should be sent. Defaults to:
+      https://www.google.com/accounts/AuthSubSessionToken

+Returns:
+  The upgraded gdata.gauth.AuthSubToken object.
+ +
+Methods inherited from atom.client.AtomPubClient:
+
Get = get(self, uri=None, auth_token=None, http_request=None, **kwargs)
Performs a request using the GET method, returns an HTTP response.
+ +
Put = put(self, uri=None, data=None, auth_token=None, http_request=None, **kwargs)
Sends data using the PUT method, returns an HTTP response.
+ +
__init__(self, http_client=None, host=None, auth_token=None, source=None, **kwargs)
Creates a new AtomPubClient instance.

+Args:
+  source: The name of your application.
+  http_client: An object capable of performing HTTP requests through a
+               request method. This object is used to perform the request
+               when the AtomPubClient's request method is called. Used to
+               allow HTTP requests to be directed to a mock server, or use
+               an alternate library instead of the default of httplib to
+               make HTTP requests.
+  host: str The default host name to use if a host is not specified in the
+        requested URI.
+  auth_token: An object which sets the HTTP Authorization header when its
+              modify_request method is called.
+ +
get(self, uri=None, auth_token=None, http_request=None, **kwargs)
Performs a request using the GET method, returns an HTTP response.
+ +
put(self, uri=None, data=None, auth_token=None, http_request=None, **kwargs)
Sends data using the PUT method, returns an HTTP response.
+ +
+Data descriptors inherited from atom.client.AtomPubClient:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Data and other attributes inherited from atom.client.AtomPubClient:
+
auth_token = None
+ +
host = None
+ +
ssl = False
+ +

+ + + + + + + +
 
+class ContactsQuery(gdata.client.Query)
   Create a custom Contacts Query

+Full specs can be found at: U{Contacts query parameters reference
+<http://code.google.com/apis/contacts/docs/3.0/reference.html#Parameters>}
 
 
Method resolution order:
+
ContactsQuery
+
gdata.client.Query
+
__builtin__.object
+
+
+Methods defined here:
+
ModifyRequest = modify_request(self, http_request)
+ +
__init__(self, feed=None, group=None, orderby=None, showdeleted=None, sortorder=None, requirealldeleted=None, **kwargs)
@param max_results: The maximum number of entries to return. If you want 
+    to receive all of the contacts, rather than only the default maximum, you 
+    can specify a very large number for max-results.
+@param start-index: The 1-based index of the first result to be retrieved.
+@param updated-min: The lower bound on entry update dates.
+@param group: Constrains the results to only the contacts belonging to the
+    group specified. Value of this parameter specifies group ID
+@param orderby:  Sorting criterion. The only supported value is 
+    lastmodified.
+@param showdeleted: Include deleted contacts in the returned contacts feed
+@pram sortorder: Sorting order direction. Can be either ascending or
+    descending.
+@param requirealldeleted: Only relevant if showdeleted and updated-min 
+    are also provided. It dictates the behavior of the server in case it 
+    detects that placeholders of some entries deleted since the point in
+    time specified as updated-min may have been lost.
+ +
modify_request(self, http_request)
+ +
+Data descriptors inherited from gdata.client.Query:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + +
 
+class ProfilesQuery(gdata.client.Query)
    
Method resolution order:
+
ProfilesQuery
+
gdata.client.Query
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, feed=None)
+ +
+Methods inherited from gdata.client.Query:
+
ModifyRequest = modify_request(self, http_request)
+ +
modify_request(self, http_request)
+ +
+Data descriptors inherited from gdata.client.Query:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + +
 
+Data
       __author__ = 'vinces1979@gmail.com (Vince Spicer)'

+ + + + + +
 
+Author
       vinces1979@gmail.com (Vince Spicer)
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.contacts.data.html python-gdata-2.0.8/pydocs/gdata.contacts.data.html --- python-gdata-1.2.4/pydocs/gdata.contacts.data.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.contacts.data.html 2010-02-26 23:16:48.000000000 +0000 @@ -0,0 +1,8219 @@ + + +Python: module gdata.contacts.data + + + + +
 
+ 
gdata.contacts.data
index
/usr/local/svn/gdata-python-client/src/gdata/contacts/data.py
+

Data model classes for parsing and generating XML for the Contacts API.

+

+ + + + + +
 
+Modules
       
atom
+
gdata
+

+ + + + + +
 
+Classes
       
+
atom.core.XmlElement(__builtin__.object) +
+
+
BillingInformation +
Birthday +
CalendarLink +
City +
Country +
Deleted +
DirectoryServer +
Event +
ExternalId +
Gender +
GroupMembershipInfo +
Hobby +
HouseName +
Initials +
Jot +
Language +
MaidenName +
Mileage +
Neighborhood +
NickName +
Occupation +
POBox +
PostalCode +
Priority +
Region +
Relation +
Sensitivity +
Street +
SubRegion +
SystemGroup +
UserDefinedField +
Website +
+
+
gdata.data.BatchEntry(gdata.data.GDEntry) +
+
+
GroupEntry +
PersonEntry +
+
+
ContactEntry +
ProfileEntry +
+
+
+
+
gdata.data.BatchFeed(gdata.data.GDFeed) +
+
+
ContactsFeed +
GroupsFeed +
ProfilesFeed +
+
+
+

+ + + + + + + +
 
+class BillingInformation(atom.core.XmlElement)
   gContact:billingInformation
+Specifies billing information of the entity represented by the contact. The element cannot be repeated.
 
 
Method resolution order:
+
BillingInformation
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Birthday(atom.core.XmlElement)
   Stores birthday date of the person represented by the contact. The element cannot be repeated.
 
 
Method resolution order:
+
Birthday
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
when = 'when'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class CalendarLink(atom.core.XmlElement)
   Storage for URL of the contact's calendar. The element can be repeated.
 
 
Method resolution order:
+
CalendarLink
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
href = 'href'
+ +
label = 'label'
+ +
primary = 'primary'
+ +
rel = 'rel'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class City(atom.core.XmlElement)
   Can be city, village, town, borough, etc. This is the postal town and not
+necessarily the place of residence or place of business.
 
 
Method resolution order:
+
City
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class ContactEntry(PersonEntry)
   A Google Contacts flavor of an Atom Entry.
 
 
Method resolution order:
+
ContactEntry
+
PersonEntry
+
gdata.data.BatchEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Methods defined here:
+
GetPhotoEditLink(self)
+ +
GetPhotoLink(self)
+ +
+Data and other attributes defined here:
+
deleted = <class 'gdata.contacts.data.Deleted'>
If present, indicates that this contact has been deleted.
+ +
group_membership_info = [<class 'gdata.contacts.data.GroupMembershipInfo'>]
+ +
organization = <class 'gdata.data.Organization'>
The gd:organization element.

+An organization, typically associated with a contact.
+ +
+Data and other attributes inherited from PersonEntry:
+
billing_information = <class 'gdata.contacts.data.BillingInformation'>
gContact:billingInformation
+Specifies billing information of the entity represented by the contact. The element cannot be repeated.
+ +
birthday = <class 'gdata.contacts.data.Birthday'>
Stores birthday date of the person represented by the contact. The element cannot be repeated.
+ +
calendar_link = [<class 'gdata.contacts.data.CalendarLink'>]
+ +
directory_server = <class 'gdata.contacts.data.DirectoryServer'>
A directory server associated with this contact. 
+May not be repeated.
+ +
email = [<class 'gdata.data.Email'>]
+ +
event = [<class 'gdata.contacts.data.Event'>]
+ +
extended_property = [<class 'gdata.data.ExtendedProperty'>]
+ +
external_id = [<class 'gdata.contacts.data.ExternalId'>]
+ +
gender = <class 'gdata.contacts.data.Gender'>
Specifies the gender of the person represented by the contact.
+The element cannot be repeated.
+ +
hobby = [<class 'gdata.contacts.data.Hobby'>]
+ +
im = [<class 'gdata.data.Im'>]
+ +
initals = <class 'gdata.contacts.data.Initials'>
Specifies the initials of the person represented by the contact. The 
+element cannot be repeated.
+ +
jot = [<class 'gdata.contacts.data.Jot'>]
+ +
language = [<class 'gdata.contacts.data.Language'>]
+ +
maiden_name = <class 'gdata.contacts.data.MaidenName'>
Specifies maiden name of the person represented by the contact. 
+The element cannot be repeated.
+ +
mileage = <class 'gdata.contacts.data.Mileage'>
Specifies the mileage for the entity represented by the contact. 
+Can be used for example to document distance needed for reimbursement 
+purposes. The value is not interpreted. The element cannot be repeated.
+ +
name = <class 'gdata.data.Name'>
The gd:name element.

+Allows storing person's name in a structured way. Consists of
+given name, additional name, family name, prefix, suffix and full name.
+ +
nickname = <class 'gdata.contacts.data.NickName'>
Specifies the nickname of the person represented by the contact. 
+The element cannot be repeated.
+ +
occupation = <class 'gdata.contacts.data.Occupation'>
Specifies the occupation/profession of the person specified by the contact. 
+The element cannot be repeated.
+ +
phone_number = [<class 'gdata.data.PhoneNumber'>]
+ +
postal_address = [<class 'gdata.data.PostalAddress'>]
+ +
priority = <class 'gdata.contacts.data.Priority'>
Classifies importance of the contact into 3 categories:
+  * Low
+  * Normal
+  * High

+The priority element cannot be repeated.
+ +
relation = [<class 'gdata.contacts.data.Relation'>]
+ +
sensitivity = <class 'gdata.contacts.data.Sensitivity'>
Classifies sensitivity of the contact into the following categories:
+  * Confidential
+  * Normal
+  * Personal
+  * Private

+The sensitivity element cannot be repeated.
+ +
structured_postal_address = [<class 'gdata.data.StructuredPostalAddress'>]
+ +
user_defined_field = [<class 'gdata.contacts.data.UserDefinedField'>]
+ +
website = [<class 'gdata.contacts.data.Website'>]
+ +
+Data and other attributes inherited from gdata.data.BatchEntry:
+
batch_id = <class 'gdata.data.BatchId'>
Identifies a single operation in a batch request.
+ +
batch_operation = <class 'gdata.data.BatchOperation'>
The CRUD operation which this batch entry represents.
+ +
batch_status = <class 'gdata.data.BatchStatus'>
The batch:status element present in a batch response entry.

+A status element contains the code (HTTP response code) and
+reason as elements. In a single request these fields would
+be part of the HTTP response, but in a batch request each
+Entry operation has a corresponding Entry in the response
+feed which includes status information.

+See http://code.google.com/apis/gdata/batch.html#Handling_Errors
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class ContactsFeed(gdata.data.BatchFeed)
   A collection of Contacts.
 
 
Method resolution order:
+
ContactsFeed
+
gdata.data.BatchFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.contacts.data.ContactEntry'>]
+ +
+Methods inherited from gdata.data.BatchFeed:
+
AddBatchEntry = add_batch_entry(self, entry=None, id_url_string=None, batch_id_string=None, operation_string=None)
Logic for populating members of a BatchEntry and adding to the feed.

+If the entry is not a BatchEntry, it is converted to a BatchEntry so
+that the batch specific members will be present.

+The id_url_string can be used in place of an entry if the batch operation
+applies to a URL. For example query and delete operations require just
+the URL of an entry, no body is sent in the HTTP request. If an
+id_url_string is sent instead of an entry, a BatchEntry is created and
+added to the feed.

+This method also assigns the desired batch id to the entry so that it
+can be referenced in the server's response. If the batch_id_string is
+None, this method will assign a batch_id to be the index at which this
+entry will be in the feed's entry list.

+Args:
+  entry: BatchEntry, atom.data.Entry, or another Entry flavor (optional)
+      The entry which will be sent to the server as part of the batch
+      request. The item must have a valid atom id so that the server
+      knows which entry this request references.
+  id_url_string: str (optional) The URL of the entry to be acted on. You
+      can find this URL in the text member of the atom id for an entry.
+      If an entry is not sent, this id will be used to construct a new
+      BatchEntry which will be added to the request feed.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+  operation_string: str (optional) The desired batch operation which will
+      set the batch_operation.type member of the entry. Options are
+      'insert', 'update', 'delete', and 'query'

+Raises:
+  MissingRequiredParameters: Raised if neither an id_ url_string nor an
+      entry are provided in the request.

+Returns:
+  The added entry.
+ +
AddDelete = add_delete(self, url_string=None, entry=None, batch_id_string=None)
Adds a delete request to the batch request feed.

+This method takes either the url_string which is the atom id of the item
+to be deleted, or the entry itself. The atom id of the entry must be
+present so that the server knows which entry should be deleted.

+Args:
+  url_string: str (optional) The URL of the entry to be deleted. You can
+     find this URL in the text member of the atom id for an entry.
+  entry: BatchEntry (optional) The entry to be deleted.
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters: Raised if neither a url_string nor an entry
+      are provided in the request.
+ +
AddInsert = add_insert(self, entry, batch_id_string=None)
Add an insert request to the operations in this batch request feed.

+If the entry doesn't yet have an operation or a batch id, these will
+be set to the insert operation and a batch_id specified as a parameter.

+Args:
+  entry: BatchEntry The entry which will be sent in the batch feed as an
+      insert request.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+ +
AddQuery = add_query(self, url_string=None, entry=None, batch_id_string=None)
Adds a query request to the batch request feed.

+This method takes either the url_string which is the query URL
+whose results will be added to the result feed. The query URL will
+be encapsulated in a BatchEntry, and you may pass in the BatchEntry
+with a query URL instead of sending a url_string.

+Args:
+  url_string: str (optional)
+  entry: BatchEntry (optional)
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters
+ +
AddUpdate = add_update(self, entry, batch_id_string=None)
Add an update request to the list of batch operations in this feed.

+Sets the operation type of the entry to insert if it is not already set
+and assigns the desired batch id to the entry so that it can be
+referenced in the server's response.

+Args:
+  entry: BatchEntry The entry which will be sent to the server as an
+      update (HTTP PUT) request. The item must have a valid atom id
+      so that the server knows which entry to replace.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. See also comments for AddInsert.
+ +
FindBatchLink = find_batch_link(self)
+ +
add_batch_entry(self, entry=None, id_url_string=None, batch_id_string=None, operation_string=None)
Logic for populating members of a BatchEntry and adding to the feed.

+If the entry is not a BatchEntry, it is converted to a BatchEntry so
+that the batch specific members will be present.

+The id_url_string can be used in place of an entry if the batch operation
+applies to a URL. For example query and delete operations require just
+the URL of an entry, no body is sent in the HTTP request. If an
+id_url_string is sent instead of an entry, a BatchEntry is created and
+added to the feed.

+This method also assigns the desired batch id to the entry so that it
+can be referenced in the server's response. If the batch_id_string is
+None, this method will assign a batch_id to be the index at which this
+entry will be in the feed's entry list.

+Args:
+  entry: BatchEntry, atom.data.Entry, or another Entry flavor (optional)
+      The entry which will be sent to the server as part of the batch
+      request. The item must have a valid atom id so that the server
+      knows which entry this request references.
+  id_url_string: str (optional) The URL of the entry to be acted on. You
+      can find this URL in the text member of the atom id for an entry.
+      If an entry is not sent, this id will be used to construct a new
+      BatchEntry which will be added to the request feed.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+  operation_string: str (optional) The desired batch operation which will
+      set the batch_operation.type member of the entry. Options are
+      'insert', 'update', 'delete', and 'query'

+Raises:
+  MissingRequiredParameters: Raised if neither an id_ url_string nor an
+      entry are provided in the request.

+Returns:
+  The added entry.
+ +
add_delete(self, url_string=None, entry=None, batch_id_string=None)
Adds a delete request to the batch request feed.

+This method takes either the url_string which is the atom id of the item
+to be deleted, or the entry itself. The atom id of the entry must be
+present so that the server knows which entry should be deleted.

+Args:
+  url_string: str (optional) The URL of the entry to be deleted. You can
+     find this URL in the text member of the atom id for an entry.
+  entry: BatchEntry (optional) The entry to be deleted.
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters: Raised if neither a url_string nor an entry
+      are provided in the request.
+ +
add_insert(self, entry, batch_id_string=None)
Add an insert request to the operations in this batch request feed.

+If the entry doesn't yet have an operation or a batch id, these will
+be set to the insert operation and a batch_id specified as a parameter.

+Args:
+  entry: BatchEntry The entry which will be sent in the batch feed as an
+      insert request.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+ +
add_query(self, url_string=None, entry=None, batch_id_string=None)
Adds a query request to the batch request feed.

+This method takes either the url_string which is the query URL
+whose results will be added to the result feed. The query URL will
+be encapsulated in a BatchEntry, and you may pass in the BatchEntry
+with a query URL instead of sending a url_string.

+Args:
+  url_string: str (optional)
+  entry: BatchEntry (optional)
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters
+ +
add_update(self, entry, batch_id_string=None)
Add an update request to the list of batch operations in this feed.

+Sets the operation type of the entry to insert if it is not already set
+and assigns the desired batch id to the entry so that it can be
+referenced in the server's response.

+Args:
+  entry: BatchEntry The entry which will be sent to the server as an
+      update (HTTP PUT) request. The item must have a valid atom id
+      so that the server knows which entry to replace.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. See also comments for AddInsert.
+ +
find_batch_link(self)
+ +
+Data and other attributes inherited from gdata.data.BatchFeed:
+
interrupted = <class 'gdata.data.BatchInterrupted'>
The batch:interrupted element sent if batch request was interrupted.

+Only appears in a feed if some of the batch entries could not be processed.
+See: http://code.google.com/apis/gdata/batch.html#Handling_Errors
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class Country(atom.core.XmlElement)
   The name or code of the country.
 
 
Method resolution order:
+
Country
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Deleted(atom.core.XmlElement)
   If present, indicates that this contact has been deleted.
 
 
Method resolution order:
+
Deleted
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class DirectoryServer(atom.core.XmlElement)
   A directory server associated with this contact. 
+May not be repeated.
 
 
Method resolution order:
+
DirectoryServer
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Event(atom.core.XmlElement)
   These elements describe events associated with a contact. 
+They may be repeated
 
 
Method resolution order:
+
Event
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
label = 'label'
+ +
rel = 'rel'
+ +
when = <class 'gdata.data.When'>
The gd:when element.

+Represents a period of time or an instant.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class ExternalId(atom.core.XmlElement)
    Describes an ID of the contact in an external system of some kind. 
+This element may be repeated.
 
 
Method resolution order:
+
ExternalId
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Gender(atom.core.XmlElement)
   Specifies the gender of the person represented by the contact.
+The element cannot be repeated.
 
 
Method resolution order:
+
Gender
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class GroupEntry(gdata.data.BatchEntry)
   Represents a contact group.
 
 
Method resolution order:
+
GroupEntry
+
gdata.data.BatchEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
extended_property = [<class 'gdata.data.ExtendedProperty'>]
+ +
system_group = <class 'gdata.contacts.data.SystemGroup'>
The contacts systemGroup element.

+When used within a contact group entry, indicates that the group in
+question is one of the predefined system groups.
+ +
+Data and other attributes inherited from gdata.data.BatchEntry:
+
batch_id = <class 'gdata.data.BatchId'>
Identifies a single operation in a batch request.
+ +
batch_operation = <class 'gdata.data.BatchOperation'>
The CRUD operation which this batch entry represents.
+ +
batch_status = <class 'gdata.data.BatchStatus'>
The batch:status element present in a batch response entry.

+A status element contains the code (HTTP response code) and
+reason as elements. In a single request these fields would
+be part of the HTTP response, but in a batch request each
+Entry operation has a corresponding Entry in the response
+feed which includes status information.

+See http://code.google.com/apis/gdata/batch.html#Handling_Errors
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class GroupMembershipInfo(atom.core.XmlElement)
   Identifies the group to which the contact belongs or belonged.
+The group is referenced by its id.
 
 
Method resolution order:
+
GroupMembershipInfo
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
deleted = 'deleted'
+ +
href = 'href'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class GroupsFeed(gdata.data.BatchFeed)
   A Google contact groups feed flavor of an Atom Feed.
 
 
Method resolution order:
+
GroupsFeed
+
gdata.data.BatchFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.contacts.data.GroupEntry'>]
+ +
+Methods inherited from gdata.data.BatchFeed:
+
AddBatchEntry = add_batch_entry(self, entry=None, id_url_string=None, batch_id_string=None, operation_string=None)
Logic for populating members of a BatchEntry and adding to the feed.

+If the entry is not a BatchEntry, it is converted to a BatchEntry so
+that the batch specific members will be present.

+The id_url_string can be used in place of an entry if the batch operation
+applies to a URL. For example query and delete operations require just
+the URL of an entry, no body is sent in the HTTP request. If an
+id_url_string is sent instead of an entry, a BatchEntry is created and
+added to the feed.

+This method also assigns the desired batch id to the entry so that it
+can be referenced in the server's response. If the batch_id_string is
+None, this method will assign a batch_id to be the index at which this
+entry will be in the feed's entry list.

+Args:
+  entry: BatchEntry, atom.data.Entry, or another Entry flavor (optional)
+      The entry which will be sent to the server as part of the batch
+      request. The item must have a valid atom id so that the server
+      knows which entry this request references.
+  id_url_string: str (optional) The URL of the entry to be acted on. You
+      can find this URL in the text member of the atom id for an entry.
+      If an entry is not sent, this id will be used to construct a new
+      BatchEntry which will be added to the request feed.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+  operation_string: str (optional) The desired batch operation which will
+      set the batch_operation.type member of the entry. Options are
+      'insert', 'update', 'delete', and 'query'

+Raises:
+  MissingRequiredParameters: Raised if neither an id_ url_string nor an
+      entry are provided in the request.

+Returns:
+  The added entry.
+ +
AddDelete = add_delete(self, url_string=None, entry=None, batch_id_string=None)
Adds a delete request to the batch request feed.

+This method takes either the url_string which is the atom id of the item
+to be deleted, or the entry itself. The atom id of the entry must be
+present so that the server knows which entry should be deleted.

+Args:
+  url_string: str (optional) The URL of the entry to be deleted. You can
+     find this URL in the text member of the atom id for an entry.
+  entry: BatchEntry (optional) The entry to be deleted.
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters: Raised if neither a url_string nor an entry
+      are provided in the request.
+ +
AddInsert = add_insert(self, entry, batch_id_string=None)
Add an insert request to the operations in this batch request feed.

+If the entry doesn't yet have an operation or a batch id, these will
+be set to the insert operation and a batch_id specified as a parameter.

+Args:
+  entry: BatchEntry The entry which will be sent in the batch feed as an
+      insert request.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+ +
AddQuery = add_query(self, url_string=None, entry=None, batch_id_string=None)
Adds a query request to the batch request feed.

+This method takes either the url_string which is the query URL
+whose results will be added to the result feed. The query URL will
+be encapsulated in a BatchEntry, and you may pass in the BatchEntry
+with a query URL instead of sending a url_string.

+Args:
+  url_string: str (optional)
+  entry: BatchEntry (optional)
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters
+ +
AddUpdate = add_update(self, entry, batch_id_string=None)
Add an update request to the list of batch operations in this feed.

+Sets the operation type of the entry to insert if it is not already set
+and assigns the desired batch id to the entry so that it can be
+referenced in the server's response.

+Args:
+  entry: BatchEntry The entry which will be sent to the server as an
+      update (HTTP PUT) request. The item must have a valid atom id
+      so that the server knows which entry to replace.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. See also comments for AddInsert.
+ +
FindBatchLink = find_batch_link(self)
+ +
add_batch_entry(self, entry=None, id_url_string=None, batch_id_string=None, operation_string=None)
Logic for populating members of a BatchEntry and adding to the feed.

+If the entry is not a BatchEntry, it is converted to a BatchEntry so
+that the batch specific members will be present.

+The id_url_string can be used in place of an entry if the batch operation
+applies to a URL. For example query and delete operations require just
+the URL of an entry, no body is sent in the HTTP request. If an
+id_url_string is sent instead of an entry, a BatchEntry is created and
+added to the feed.

+This method also assigns the desired batch id to the entry so that it
+can be referenced in the server's response. If the batch_id_string is
+None, this method will assign a batch_id to be the index at which this
+entry will be in the feed's entry list.

+Args:
+  entry: BatchEntry, atom.data.Entry, or another Entry flavor (optional)
+      The entry which will be sent to the server as part of the batch
+      request. The item must have a valid atom id so that the server
+      knows which entry this request references.
+  id_url_string: str (optional) The URL of the entry to be acted on. You
+      can find this URL in the text member of the atom id for an entry.
+      If an entry is not sent, this id will be used to construct a new
+      BatchEntry which will be added to the request feed.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+  operation_string: str (optional) The desired batch operation which will
+      set the batch_operation.type member of the entry. Options are
+      'insert', 'update', 'delete', and 'query'

+Raises:
+  MissingRequiredParameters: Raised if neither an id_ url_string nor an
+      entry are provided in the request.

+Returns:
+  The added entry.
+ +
add_delete(self, url_string=None, entry=None, batch_id_string=None)
Adds a delete request to the batch request feed.

+This method takes either the url_string which is the atom id of the item
+to be deleted, or the entry itself. The atom id of the entry must be
+present so that the server knows which entry should be deleted.

+Args:
+  url_string: str (optional) The URL of the entry to be deleted. You can
+     find this URL in the text member of the atom id for an entry.
+  entry: BatchEntry (optional) The entry to be deleted.
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters: Raised if neither a url_string nor an entry
+      are provided in the request.
+ +
add_insert(self, entry, batch_id_string=None)
Add an insert request to the operations in this batch request feed.

+If the entry doesn't yet have an operation or a batch id, these will
+be set to the insert operation and a batch_id specified as a parameter.

+Args:
+  entry: BatchEntry The entry which will be sent in the batch feed as an
+      insert request.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+ +
add_query(self, url_string=None, entry=None, batch_id_string=None)
Adds a query request to the batch request feed.

+This method takes either the url_string which is the query URL
+whose results will be added to the result feed. The query URL will
+be encapsulated in a BatchEntry, and you may pass in the BatchEntry
+with a query URL instead of sending a url_string.

+Args:
+  url_string: str (optional)
+  entry: BatchEntry (optional)
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters
+ +
add_update(self, entry, batch_id_string=None)
Add an update request to the list of batch operations in this feed.

+Sets the operation type of the entry to insert if it is not already set
+and assigns the desired batch id to the entry so that it can be
+referenced in the server's response.

+Args:
+  entry: BatchEntry The entry which will be sent to the server as an
+      update (HTTP PUT) request. The item must have a valid atom id
+      so that the server knows which entry to replace.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. See also comments for AddInsert.
+ +
find_batch_link(self)
+ +
+Data and other attributes inherited from gdata.data.BatchFeed:
+
interrupted = <class 'gdata.data.BatchInterrupted'>
The batch:interrupted element sent if batch request was interrupted.

+Only appears in a feed if some of the batch entries could not be processed.
+See: http://code.google.com/apis/gdata/batch.html#Handling_Errors
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class Hobby(atom.core.XmlElement)
   Describes an ID of the contact in an external system of some kind. 
+This element may be repeated.
 
 
Method resolution order:
+
Hobby
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class HouseName(atom.core.XmlElement)
   Used in places where houses or buildings have names (and 
+not necessarily numbers), eg. "The Pillars".
 
 
Method resolution order:
+
HouseName
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Initials(atom.core.XmlElement)
   Specifies the initials of the person represented by the contact. The 
+element cannot be repeated.
 
 
Method resolution order:
+
Initials
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Jot(atom.core.XmlElement)
   Storage for arbitrary pieces of information about the contact. Each jot 
+has a type specified by the rel attribute and a text value. 
+The element can be repeated.
 
 
Method resolution order:
+
Jot
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
rel = 'rel'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Language(atom.core.XmlElement)
   Specifies the preferred languages of the contact. 
+The element can be repeated.

+ The language must be specified using one of two mutually exclusive methods: 
+ using the freeform @label attribute, or using the @code attribute, whose value 
+ must conform to the IETF BCP 47 specification.
 
 
Method resolution order:
+
Language
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
code = 'code'
+ +
label = 'label'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class MaidenName(atom.core.XmlElement)
   Specifies maiden name of the person represented by the contact. 
+The element cannot be repeated.
 
 
Method resolution order:
+
MaidenName
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Mileage(atom.core.XmlElement)
   Specifies the mileage for the entity represented by the contact. 
+Can be used for example to document distance needed for reimbursement 
+purposes. The value is not interpreted. The element cannot be repeated.
 
 
Method resolution order:
+
Mileage
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Neighborhood(atom.core.XmlElement)
   This is used to disambiguate a street address when a city contains more than
+one street with the same name, or to specify a small place whose mail is
+routed through a larger postal town. In China it could be a county or a 
+minor city.
 
 
Method resolution order:
+
Neighborhood
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class NickName(atom.core.XmlElement)
   Specifies the nickname of the person represented by the contact. 
+The element cannot be repeated.
 
 
Method resolution order:
+
NickName
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Occupation(atom.core.XmlElement)
   Specifies the occupation/profession of the person specified by the contact. 
+The element cannot be repeated.
 
 
Method resolution order:
+
Occupation
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class POBox(atom.core.XmlElement)
   Covers actual P.O. boxes, drawers, locked bags, etc. This is usually but not
+always mutually exclusive with street
 
 
Method resolution order:
+
POBox
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class PersonEntry(gdata.data.BatchEntry)
   Represents a google contact
 
 
Method resolution order:
+
PersonEntry
+
gdata.data.BatchEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
billing_information = <class 'gdata.contacts.data.BillingInformation'>
gContact:billingInformation
+Specifies billing information of the entity represented by the contact. The element cannot be repeated.
+ +
birthday = <class 'gdata.contacts.data.Birthday'>
Stores birthday date of the person represented by the contact. The element cannot be repeated.
+ +
calendar_link = [<class 'gdata.contacts.data.CalendarLink'>]
+ +
directory_server = <class 'gdata.contacts.data.DirectoryServer'>
A directory server associated with this contact. 
+May not be repeated.
+ +
email = [<class 'gdata.data.Email'>]
+ +
event = [<class 'gdata.contacts.data.Event'>]
+ +
extended_property = [<class 'gdata.data.ExtendedProperty'>]
+ +
external_id = [<class 'gdata.contacts.data.ExternalId'>]
+ +
gender = <class 'gdata.contacts.data.Gender'>
Specifies the gender of the person represented by the contact.
+The element cannot be repeated.
+ +
hobby = [<class 'gdata.contacts.data.Hobby'>]
+ +
im = [<class 'gdata.data.Im'>]
+ +
initals = <class 'gdata.contacts.data.Initials'>
Specifies the initials of the person represented by the contact. The 
+element cannot be repeated.
+ +
jot = [<class 'gdata.contacts.data.Jot'>]
+ +
language = [<class 'gdata.contacts.data.Language'>]
+ +
maiden_name = <class 'gdata.contacts.data.MaidenName'>
Specifies maiden name of the person represented by the contact. 
+The element cannot be repeated.
+ +
mileage = <class 'gdata.contacts.data.Mileage'>
Specifies the mileage for the entity represented by the contact. 
+Can be used for example to document distance needed for reimbursement 
+purposes. The value is not interpreted. The element cannot be repeated.
+ +
name = <class 'gdata.data.Name'>
The gd:name element.

+Allows storing person's name in a structured way. Consists of
+given name, additional name, family name, prefix, suffix and full name.
+ +
nickname = <class 'gdata.contacts.data.NickName'>
Specifies the nickname of the person represented by the contact. 
+The element cannot be repeated.
+ +
occupation = <class 'gdata.contacts.data.Occupation'>
Specifies the occupation/profession of the person specified by the contact. 
+The element cannot be repeated.
+ +
organization = <class 'gdata.data.Organization'>
The gd:organization element.

+An organization, typically associated with a contact.
+ +
phone_number = [<class 'gdata.data.PhoneNumber'>]
+ +
postal_address = [<class 'gdata.data.PostalAddress'>]
+ +
priority = <class 'gdata.contacts.data.Priority'>
Classifies importance of the contact into 3 categories:
+  * Low
+  * Normal
+  * High

+The priority element cannot be repeated.
+ +
relation = [<class 'gdata.contacts.data.Relation'>]
+ +
sensitivity = <class 'gdata.contacts.data.Sensitivity'>
Classifies sensitivity of the contact into the following categories:
+  * Confidential
+  * Normal
+  * Personal
+  * Private

+The sensitivity element cannot be repeated.
+ +
structured_postal_address = [<class 'gdata.data.StructuredPostalAddress'>]
+ +
user_defined_field = [<class 'gdata.contacts.data.UserDefinedField'>]
+ +
website = [<class 'gdata.contacts.data.Website'>]
+ +
+Data and other attributes inherited from gdata.data.BatchEntry:
+
batch_id = <class 'gdata.data.BatchId'>
Identifies a single operation in a batch request.
+ +
batch_operation = <class 'gdata.data.BatchOperation'>
The CRUD operation which this batch entry represents.
+ +
batch_status = <class 'gdata.data.BatchStatus'>
The batch:status element present in a batch response entry.

+A status element contains the code (HTTP response code) and
+reason as elements. In a single request these fields would
+be part of the HTTP response, but in a batch request each
+Entry operation has a corresponding Entry in the response
+feed which includes status information.

+See http://code.google.com/apis/gdata/batch.html#Handling_Errors
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class PostalCode(atom.core.XmlElement)
   Postal code. Usually country-wide, but sometimes specific to the 
+city (e.g. "2" in "Dublin 2, Ireland" addresses).
 
 
Method resolution order:
+
PostalCode
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Priority(atom.core.XmlElement)
   Classifies importance of the contact into 3 categories:
+  * Low
+  * Normal
+  * High

+The priority element cannot be repeated.
 
 
Method resolution order:
+
Priority
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class ProfileEntry(PersonEntry)
   A Google Profiles flavor of an Atom Entry.
 
 
Method resolution order:
+
ProfileEntry
+
PersonEntry
+
gdata.data.BatchEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes inherited from PersonEntry:
+
billing_information = <class 'gdata.contacts.data.BillingInformation'>
gContact:billingInformation
+Specifies billing information of the entity represented by the contact. The element cannot be repeated.
+ +
birthday = <class 'gdata.contacts.data.Birthday'>
Stores birthday date of the person represented by the contact. The element cannot be repeated.
+ +
calendar_link = [<class 'gdata.contacts.data.CalendarLink'>]
+ +
directory_server = <class 'gdata.contacts.data.DirectoryServer'>
A directory server associated with this contact. 
+May not be repeated.
+ +
email = [<class 'gdata.data.Email'>]
+ +
event = [<class 'gdata.contacts.data.Event'>]
+ +
extended_property = [<class 'gdata.data.ExtendedProperty'>]
+ +
external_id = [<class 'gdata.contacts.data.ExternalId'>]
+ +
gender = <class 'gdata.contacts.data.Gender'>
Specifies the gender of the person represented by the contact.
+The element cannot be repeated.
+ +
hobby = [<class 'gdata.contacts.data.Hobby'>]
+ +
im = [<class 'gdata.data.Im'>]
+ +
initals = <class 'gdata.contacts.data.Initials'>
Specifies the initials of the person represented by the contact. The 
+element cannot be repeated.
+ +
jot = [<class 'gdata.contacts.data.Jot'>]
+ +
language = [<class 'gdata.contacts.data.Language'>]
+ +
maiden_name = <class 'gdata.contacts.data.MaidenName'>
Specifies maiden name of the person represented by the contact. 
+The element cannot be repeated.
+ +
mileage = <class 'gdata.contacts.data.Mileage'>
Specifies the mileage for the entity represented by the contact. 
+Can be used for example to document distance needed for reimbursement 
+purposes. The value is not interpreted. The element cannot be repeated.
+ +
name = <class 'gdata.data.Name'>
The gd:name element.

+Allows storing person's name in a structured way. Consists of
+given name, additional name, family name, prefix, suffix and full name.
+ +
nickname = <class 'gdata.contacts.data.NickName'>
Specifies the nickname of the person represented by the contact. 
+The element cannot be repeated.
+ +
occupation = <class 'gdata.contacts.data.Occupation'>
Specifies the occupation/profession of the person specified by the contact. 
+The element cannot be repeated.
+ +
organization = <class 'gdata.data.Organization'>
The gd:organization element.

+An organization, typically associated with a contact.
+ +
phone_number = [<class 'gdata.data.PhoneNumber'>]
+ +
postal_address = [<class 'gdata.data.PostalAddress'>]
+ +
priority = <class 'gdata.contacts.data.Priority'>
Classifies importance of the contact into 3 categories:
+  * Low
+  * Normal
+  * High

+The priority element cannot be repeated.
+ +
relation = [<class 'gdata.contacts.data.Relation'>]
+ +
sensitivity = <class 'gdata.contacts.data.Sensitivity'>
Classifies sensitivity of the contact into the following categories:
+  * Confidential
+  * Normal
+  * Personal
+  * Private

+The sensitivity element cannot be repeated.
+ +
structured_postal_address = [<class 'gdata.data.StructuredPostalAddress'>]
+ +
user_defined_field = [<class 'gdata.contacts.data.UserDefinedField'>]
+ +
website = [<class 'gdata.contacts.data.Website'>]
+ +
+Data and other attributes inherited from gdata.data.BatchEntry:
+
batch_id = <class 'gdata.data.BatchId'>
Identifies a single operation in a batch request.
+ +
batch_operation = <class 'gdata.data.BatchOperation'>
The CRUD operation which this batch entry represents.
+ +
batch_status = <class 'gdata.data.BatchStatus'>
The batch:status element present in a batch response entry.

+A status element contains the code (HTTP response code) and
+reason as elements. In a single request these fields would
+be part of the HTTP response, but in a batch request each
+Entry operation has a corresponding Entry in the response
+feed which includes status information.

+See http://code.google.com/apis/gdata/batch.html#Handling_Errors
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class ProfilesFeed(gdata.data.BatchFeed)
   A Google Profiles feed flavor of an Atom Feed.
 
 
Method resolution order:
+
ProfilesFeed
+
gdata.data.BatchFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.contacts.data.ProfileEntry'>]
+ +
+Methods inherited from gdata.data.BatchFeed:
+
AddBatchEntry = add_batch_entry(self, entry=None, id_url_string=None, batch_id_string=None, operation_string=None)
Logic for populating members of a BatchEntry and adding to the feed.

+If the entry is not a BatchEntry, it is converted to a BatchEntry so
+that the batch specific members will be present.

+The id_url_string can be used in place of an entry if the batch operation
+applies to a URL. For example query and delete operations require just
+the URL of an entry, no body is sent in the HTTP request. If an
+id_url_string is sent instead of an entry, a BatchEntry is created and
+added to the feed.

+This method also assigns the desired batch id to the entry so that it
+can be referenced in the server's response. If the batch_id_string is
+None, this method will assign a batch_id to be the index at which this
+entry will be in the feed's entry list.

+Args:
+  entry: BatchEntry, atom.data.Entry, or another Entry flavor (optional)
+      The entry which will be sent to the server as part of the batch
+      request. The item must have a valid atom id so that the server
+      knows which entry this request references.
+  id_url_string: str (optional) The URL of the entry to be acted on. You
+      can find this URL in the text member of the atom id for an entry.
+      If an entry is not sent, this id will be used to construct a new
+      BatchEntry which will be added to the request feed.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+  operation_string: str (optional) The desired batch operation which will
+      set the batch_operation.type member of the entry. Options are
+      'insert', 'update', 'delete', and 'query'

+Raises:
+  MissingRequiredParameters: Raised if neither an id_ url_string nor an
+      entry are provided in the request.

+Returns:
+  The added entry.
+ +
AddDelete = add_delete(self, url_string=None, entry=None, batch_id_string=None)
Adds a delete request to the batch request feed.

+This method takes either the url_string which is the atom id of the item
+to be deleted, or the entry itself. The atom id of the entry must be
+present so that the server knows which entry should be deleted.

+Args:
+  url_string: str (optional) The URL of the entry to be deleted. You can
+     find this URL in the text member of the atom id for an entry.
+  entry: BatchEntry (optional) The entry to be deleted.
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters: Raised if neither a url_string nor an entry
+      are provided in the request.
+ +
AddInsert = add_insert(self, entry, batch_id_string=None)
Add an insert request to the operations in this batch request feed.

+If the entry doesn't yet have an operation or a batch id, these will
+be set to the insert operation and a batch_id specified as a parameter.

+Args:
+  entry: BatchEntry The entry which will be sent in the batch feed as an
+      insert request.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+ +
AddQuery = add_query(self, url_string=None, entry=None, batch_id_string=None)
Adds a query request to the batch request feed.

+This method takes either the url_string which is the query URL
+whose results will be added to the result feed. The query URL will
+be encapsulated in a BatchEntry, and you may pass in the BatchEntry
+with a query URL instead of sending a url_string.

+Args:
+  url_string: str (optional)
+  entry: BatchEntry (optional)
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters
+ +
AddUpdate = add_update(self, entry, batch_id_string=None)
Add an update request to the list of batch operations in this feed.

+Sets the operation type of the entry to insert if it is not already set
+and assigns the desired batch id to the entry so that it can be
+referenced in the server's response.

+Args:
+  entry: BatchEntry The entry which will be sent to the server as an
+      update (HTTP PUT) request. The item must have a valid atom id
+      so that the server knows which entry to replace.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. See also comments for AddInsert.
+ +
FindBatchLink = find_batch_link(self)
+ +
add_batch_entry(self, entry=None, id_url_string=None, batch_id_string=None, operation_string=None)
Logic for populating members of a BatchEntry and adding to the feed.

+If the entry is not a BatchEntry, it is converted to a BatchEntry so
+that the batch specific members will be present.

+The id_url_string can be used in place of an entry if the batch operation
+applies to a URL. For example query and delete operations require just
+the URL of an entry, no body is sent in the HTTP request. If an
+id_url_string is sent instead of an entry, a BatchEntry is created and
+added to the feed.

+This method also assigns the desired batch id to the entry so that it
+can be referenced in the server's response. If the batch_id_string is
+None, this method will assign a batch_id to be the index at which this
+entry will be in the feed's entry list.

+Args:
+  entry: BatchEntry, atom.data.Entry, or another Entry flavor (optional)
+      The entry which will be sent to the server as part of the batch
+      request. The item must have a valid atom id so that the server
+      knows which entry this request references.
+  id_url_string: str (optional) The URL of the entry to be acted on. You
+      can find this URL in the text member of the atom id for an entry.
+      If an entry is not sent, this id will be used to construct a new
+      BatchEntry which will be added to the request feed.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+  operation_string: str (optional) The desired batch operation which will
+      set the batch_operation.type member of the entry. Options are
+      'insert', 'update', 'delete', and 'query'

+Raises:
+  MissingRequiredParameters: Raised if neither an id_ url_string nor an
+      entry are provided in the request.

+Returns:
+  The added entry.
+ +
add_delete(self, url_string=None, entry=None, batch_id_string=None)
Adds a delete request to the batch request feed.

+This method takes either the url_string which is the atom id of the item
+to be deleted, or the entry itself. The atom id of the entry must be
+present so that the server knows which entry should be deleted.

+Args:
+  url_string: str (optional) The URL of the entry to be deleted. You can
+     find this URL in the text member of the atom id for an entry.
+  entry: BatchEntry (optional) The entry to be deleted.
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters: Raised if neither a url_string nor an entry
+      are provided in the request.
+ +
add_insert(self, entry, batch_id_string=None)
Add an insert request to the operations in this batch request feed.

+If the entry doesn't yet have an operation or a batch id, these will
+be set to the insert operation and a batch_id specified as a parameter.

+Args:
+  entry: BatchEntry The entry which will be sent in the batch feed as an
+      insert request.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+ +
add_query(self, url_string=None, entry=None, batch_id_string=None)
Adds a query request to the batch request feed.

+This method takes either the url_string which is the query URL
+whose results will be added to the result feed. The query URL will
+be encapsulated in a BatchEntry, and you may pass in the BatchEntry
+with a query URL instead of sending a url_string.

+Args:
+  url_string: str (optional)
+  entry: BatchEntry (optional)
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters
+ +
add_update(self, entry, batch_id_string=None)
Add an update request to the list of batch operations in this feed.

+Sets the operation type of the entry to insert if it is not already set
+and assigns the desired batch id to the entry so that it can be
+referenced in the server's response.

+Args:
+  entry: BatchEntry The entry which will be sent to the server as an
+      update (HTTP PUT) request. The item must have a valid atom id
+      so that the server knows which entry to replace.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. See also comments for AddInsert.
+ +
find_batch_link(self)
+ +
+Data and other attributes inherited from gdata.data.BatchFeed:
+
interrupted = <class 'gdata.data.BatchInterrupted'>
The batch:interrupted element sent if batch request was interrupted.

+Only appears in a feed if some of the batch entries could not be processed.
+See: http://code.google.com/apis/gdata/batch.html#Handling_Errors
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class Region(atom.core.XmlElement)
   A state, province, county (in Ireland), Land (in Germany), 
+departement (in France), etc.
 
 
Method resolution order:
+
Region
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Relation(atom.core.XmlElement)
   This element describe another entity (usually a person) that is in a 
+relation of some kind with the contact.
 
 
Method resolution order:
+
Relation
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
label = 'label'
+ +
rel = 'rel'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Sensitivity(atom.core.XmlElement)
   Classifies sensitivity of the contact into the following categories:
+  * Confidential
+  * Normal
+  * Personal
+  * Private

+The sensitivity element cannot be repeated.
 
 
Method resolution order:
+
Sensitivity
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
rel = 'rel'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Street(atom.core.XmlElement)
   Can be street, avenue, road, etc. This element also includes the house 
+number and room/apartment/flat/floor number.
 
 
Method resolution order:
+
Street
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class SubRegion(atom.core.XmlElement)
   Handles administrative districts such as U.S. or U.K. counties that are not
+ used for mail addressing purposes. Subregion is not intended for 
+ delivery addresses.
 
 
Method resolution order:
+
SubRegion
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class SystemGroup(atom.core.XmlElement)
   The contacts systemGroup element.

+When used within a contact group entry, indicates that the group in
+question is one of the predefined system groups.
 
 
Method resolution order:
+
SystemGroup
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
id = 'id'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class UserDefinedField(atom.core.XmlElement)
   Represents an arbitrary key-value pair attached to the contact.
 
 
Method resolution order:
+
UserDefinedField
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
key = 'key'
+ +
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Website(atom.core.XmlElement)
   Describes websites associated with the contact, including links. 
+May be repeated.
 
 
Method resolution order:
+
Website
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
href = 'href'
+ +
label = 'label'
+ +
primary = 'primary'
+ +
rel = 'rel'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + +
 
+Functions
       
ExternalIdFromString(xml_string)
+
ProfileEntryFromString(xml_string)
Converts an XML string into a ProfileEntry object.

+Args:
+  xml_string: string The XML describing a Profile entry.

+Returns:
+  A ProfileEntry object corresponding to the given XML.
+
ProfilesFeedFromString(xml_string)
Converts an XML string into a ProfilesFeed object.

+Args:
+  xml_string: string The XML describing a Profiles feed.

+Returns:
+  A ProfilesFeed object corresponding to the given XML.
+
UserDefinedFieldFromString(xml_string)
+
WebsiteFromString(xml_string)
+

+ + + + + +
 
+Data
       CONTACTS_NAMESPACE = 'http://schemas.google.com/contact/2008'
+CONTACTS_TEMPLATE = '{http://schemas.google.com/contact/2008}%s'
+EXTERNAL_ID_ORGANIZATION = 'organization'
+PHOTO_EDIT_LINK_REL = 'http://schemas.google.com/contacts/2008/rel#edit-photo'
+PHOTO_LINK_REL = 'http://schemas.google.com/contacts/2008/rel#photo'
+RELATION_MANAGER = 'manager'
+__author__ = 'vinces1979@gmail.com (Vince Spicer)'

+ + + + + +
 
+Author
       vinces1979@gmail.com (Vince Spicer)
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.contacts.html python-gdata-2.0.8/pydocs/gdata.contacts.html --- python-gdata-1.2.4/pydocs/gdata.contacts.html 2008-12-04 00:16:02.000000000 +0000 +++ python-gdata-2.0.8/pydocs/gdata.contacts.html 2009-11-25 01:04:14.000000000 +0000 @@ -17,8 +17,10 @@ Package Contents

       
service
-

+

client
+
data
+
service
+

 
@@ -29,35 +31,68 @@
atom.AtomBase(atom.ExtensionContainer)
+
GDataBase +
+
+
ContactsBase +
+
+
Birthday +
Event +
ExternalId +
Gender +
GroupMembershipInfo +
Nickname +
Occupation +
Relation +
UserDefinedField +
Website +
+
Deleted
Email -
GroupMembershipInfo +
FormattedAddress
IM +
OrgDepartment +
OrgJobDescription
OrgName
OrgTitle
Organization
PhoneNumber
PostalAddress +
StructuredPostalAddress +
When +
Where
+
+
gdata.BatchEntry(gdata.GDataEntry)
+
GroupEntry +
PersonEntry +
+
ContactEntry -
GroupEntry +
ProfileEntry
+
+
gdata.BatchFeed(gdata.GDataFeed)
ContactsFeed(gdata.BatchFeed, gdata.LinkFinder)
GroupsFeed +
ProfilesFeed(gdata.BatchFeed, gdata.LinkFinder)
gdata.LinkFinder(atom.LinkFinder)
ContactsFeed(gdata.BatchFeed, gdata.LinkFinder) +
ProfilesFeed(gdata.BatchFeed, gdata.LinkFinder)
@@ -65,13 +100,67 @@ +class Birthday(ContactsBase) + + + + +
 
-class ContactEntry(gdata.BatchEntry)
   The Google Contacts Birthday element.
 
 
Method resolution order:
+
Birthday
+
ContactsBase
+
GDataBase
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, when=None, text=None, extension_elements=None, extension_attributes=None)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + - +
 
+class ContactEntry(PersonEntry)
   A Google Contact flavor of an Atom Entry
 
A Google Contact flavor of an Atom Entry.
 
 
Method resolution order:
ContactEntry
+
PersonEntry
gdata.BatchEntry
gdata.GDataEntry
atom.Entry
@@ -88,7 +177,7 @@
GetPhotoLink(self)
-
__init__(self, author=None, category=None, content=None, atom_id=None, link=None, published=None, title=None, updated=None, email=None, postal_address=None, deleted=None, organization=None, phone_number=None, im=None, extended_property=None, group_membership_info=None, batch_operation=None, batch_id=None, batch_status=None, extension_elements=None, extension_attributes=None, text=None)
+
__init__(self, author=None, category=None, content=None, atom_id=None, link=None, published=None, title=None, updated=None, organization=None, phone_number=None, nickname=None, occupation=None, gender=None, birthday=None, postal_address=None, structured_pstal_address=None, email=None, im=None, relation=None, user_defined_field=None, website=None, external_id=None, event=None, batch_operation=None, batch_id=None, batch_status=None, text=None, extension_elements=None, extension_attributes=None, etag=None, deleted=None, extended_property=None, group_membership_info=None)

Methods inherited from gdata.GDataEntry:
@@ -175,10 +264,62 @@ + + + + +
 
+class ContactsBase(GDataBase)
   The Google Contacts intermediate class for Contacts namespace.
 
 
Method resolution order:
+
ContactsBase
+
GDataBase
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods inherited from GDataBase:
+
__init__(self, text=None, extension_elements=None, extension_attributes=None)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + - +
 
class ContactsFeed(gdata.BatchFeed, gdata.LinkFinder)
   A Google Contacts feed flavor of an Atom Feed
 
A Google Contacts feed flavor of an Atom Feed.
 
 
Method resolution order:
ContactsFeed
@@ -203,7 +344,7 @@  
 
If the entry is not a BatchEntry, it is converted to a BatchEntry so
-that the batch specific members will be present. 
+that the batch specific members will be present.
 
The id_url_string can be used in place of an entry if the batch operation
applies to a URL. For example query and delete operations require just
@@ -211,7 +352,7 @@ id_url_string is sent instead of an entry, a BatchEntry is created and
added to the feed.
 
-This method also assigns the desired batch id to the entry so that it 
+This method also assigns the desired batch id to the entry so that it
can be referenced in the server's response. If the batch_id_string is
None, this method will assign a batch_id to be the index at which this
entry will be in the feed's entry list.
@@ -219,7 +360,7 @@ Args:
  entry: BatchEntry, atom.Entry, or another Entry flavor (optional) The
      entry which will be sent to the server as part of the batch request.
-      The item must have a valid atom id so that the server knows which 
+      The item must have a valid atom id so that the server knows which
      entry this request references.
  id_url_string: str (optional) The URL of the entry to be acted on. You
      can find this URL in the text member of the atom id for an entry.
@@ -244,17 +385,17 @@
AddDelete(self, url_string=None, entry=None, batch_id_string=None)
Adds a delete request to the batch request feed.
 
This method takes either the url_string which is the atom id of the item
-to be deleted, or the entry itself. The atom id of the entry must be 
+to be deleted, or the entry itself. The atom id of the entry must be
present so that the server knows which entry should be deleted.
 
Args:
  url_string: str (optional) The URL of the entry to be deleted. You can
-     find this URL in the text member of the atom id for an entry. 
+     find this URL in the text member of the atom id for an entry.
  entry: BatchEntry (optional) The entry to be deleted.
  batch_id_string: str (optional)
 
Raises:
-  MissingRequiredParameters: Raised if neither a url_string nor an entry 
+  MissingRequiredParameters: Raised if neither a url_string nor an entry
      are provided in the request.
AddInsert(self, entry, batch_id_string=None)
Add an insert request to the operations in this batch request feed.
@@ -271,53 +412,1308 @@       count. Note that batch_ids should either always be specified or
      never, mixing could potentially result in duplicate batch ids.
-
AddQuery(self, url_string=None, entry=None, batch_id_string=None)
Adds a query request to the batch request feed.
+
AddQuery(self, url_string=None, entry=None, batch_id_string=None)
Adds a query request to the batch request feed.

+This method takes either the url_string which is the query URL
+whose results will be added to the result feed. The query URL will
+be encapsulated in a BatchEntry, and you may pass in the BatchEntry
+with a query URL instead of sending a url_string.

+Args:
+  url_string: str (optional)
+  entry: BatchEntry (optional)
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters
+ +
AddUpdate(self, entry, batch_id_string=None)
Add an update request to the list of batch operations in this feed.

+Sets the operation type of the entry to insert if it is not already set
+and assigns the desired batch id to the entry so that it can be
+referenced in the server's response.

+Args:
+  entry: BatchEntry The entry which will be sent to the server as an
+      update (HTTP PUT) request. The item must have a valid atom id
+      so that the server knows which entry to replace.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. See also comments for AddInsert.
+ +
GetBatchLink(self)
+ +
+Data descriptors inherited from gdata.GDataFeed:
+
generator
+
+
id
+
+
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from gdata.LinkFinder:
+
GetAclLink(self)
+ +
GetEditLink(self)
+ +
GetEditMediaLink(self)
The Picasa API mistakenly returns media-edit rather than edit-media, but
+this may change soon.
+ +
GetFeedLink(self)
+ +
GetHtmlLink(self)
Find the first link with rel of alternate and type of text/html

+Returns:
+  An atom.Link or None if no links matched
+ +
GetNextLink(self)
+ +
GetPostLink(self)
Get a link containing the POST target URL.

+The POST target URL is used to insert new entries.

+Returns:
+  A link object with a rel matching the POST type.
+ +
GetPrevLink(self)
+ +
GetSelfLink(self)
Find the first link with rel set to 'self'

+Returns:
+  An atom.Link or none if none of the links had rel equal to 'self'
+ +
+Methods inherited from atom.LinkFinder:
+
GetAlternateLink(self)
+ +
GetLicenseLink(self)
+ +

+ + + + + + + +
 
+class Deleted(GDataBase)
   The Google Contacts Deleted element.
 
 
Method resolution order:
+
Deleted
+
GDataBase
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods inherited from GDataBase:
+
__init__(self, text=None, extension_elements=None, extension_attributes=None)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class Email(GDataBase)
   The Google Contacts Email element.
 
 
Method resolution order:
+
Email
+
GDataBase
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, label=None, rel=None, address=None, primary='false', text=None, extension_elements=None, extension_attributes=None)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class Event(ContactsBase)
   The Google Contacts Event element.
 
 
Method resolution order:
+
Event
+
ContactsBase
+
GDataBase
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, label=None, rel=None, when=None, text=None, extension_elements=None, extension_attributes=None)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class ExternalId(ContactsBase)
   The Google Contacts ExternalId element.
 
 
Method resolution order:
+
ExternalId
+
ContactsBase
+
GDataBase
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, label=None, rel=None, value=None, text=None, extension_elements=None, extension_attributes=None)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class FormattedAddress(GDataBase)
   The Google Contacts FormattedAddress element.
 
 
Method resolution order:
+
FormattedAddress
+
GDataBase
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods inherited from GDataBase:
+
__init__(self, text=None, extension_elements=None, extension_attributes=None)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class GDataBase(atom.AtomBase)
   The Google Contacts intermediate class from atom.AtomBase.
 
 
Method resolution order:
+
GDataBase
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, text=None, extension_elements=None, extension_attributes=None)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class Gender(ContactsBase)
   The Google Contacts Gender element.
 
 
Method resolution order:
+
Gender
+
ContactsBase
+
GDataBase
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, value=None, text=None, extension_elements=None, extension_attributes=None)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class GroupEntry(gdata.BatchEntry)
   Represents a contact group.
 
 
Method resolution order:
+
GroupEntry
+
gdata.BatchEntry
+
gdata.GDataEntry
+
atom.Entry
+
atom.FeedEntryParent
+
atom.AtomBase
+
atom.ExtensionContainer
+
gdata.LinkFinder
+
atom.LinkFinder
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, author=None, category=None, content=None, contributor=None, atom_id=None, link=None, published=None, rights=None, source=None, summary=None, control=None, title=None, updated=None, extended_property=None, batch_operation=None, batch_id=None, batch_status=None, extension_elements=None, extension_attributes=None, text=None)
+ +
+Methods inherited from gdata.GDataEntry:
+
GetMediaURL(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
IsMedia(self)
Determines whether or not an entry is a GData Media entry.
+ +
+Data descriptors inherited from gdata.GDataEntry:
+
id
+
+
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from gdata.LinkFinder:
+
GetAclLink(self)
+ +
GetEditLink(self)
+ +
GetEditMediaLink(self)
The Picasa API mistakenly returns media-edit rather than edit-media, but
+this may change soon.
+ +
GetFeedLink(self)
+ +
GetHtmlLink(self)
Find the first link with rel of alternate and type of text/html

+Returns:
+  An atom.Link or None if no links matched
+ +
GetNextLink(self)
+ +
GetPostLink(self)
Get a link containing the POST target URL.

+The POST target URL is used to insert new entries.

+Returns:
+  A link object with a rel matching the POST type.
+ +
GetPrevLink(self)
+ +
GetSelfLink(self)
Find the first link with rel set to 'self'

+Returns:
+  An atom.Link or none if none of the links had rel equal to 'self'
+ +
+Methods inherited from atom.LinkFinder:
+
GetAlternateLink(self)
+ +
GetLicenseLink(self)
+ +

+ + + + + + + +
 
+class GroupMembershipInfo(ContactsBase)
   The Google Contacts GroupMembershipInfo element.
 
 
Method resolution order:
+
GroupMembershipInfo
+
ContactsBase
+
GDataBase
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, deleted=None, href=None, text=None, extension_elements=None, extension_attributes=None)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class GroupsFeed(gdata.BatchFeed)
   A Google contact groups feed flavor of an Atom Feed.
 
 
Method resolution order:
+
GroupsFeed
+
gdata.BatchFeed
+
gdata.GDataFeed
+
atom.Feed
+
atom.Source
+
atom.FeedEntryParent
+
atom.AtomBase
+
atom.ExtensionContainer
+
gdata.LinkFinder
+
atom.LinkFinder
+
__builtin__.object
+
+
+Methods inherited from gdata.BatchFeed:
+
AddBatchEntry(self, entry=None, id_url_string=None, batch_id_string=None, operation_string=None)
Logic for populating members of a BatchEntry and adding to the feed.


+If the entry is not a BatchEntry, it is converted to a BatchEntry so
+that the batch specific members will be present.

+The id_url_string can be used in place of an entry if the batch operation
+applies to a URL. For example query and delete operations require just
+the URL of an entry, no body is sent in the HTTP request. If an
+id_url_string is sent instead of an entry, a BatchEntry is created and
+added to the feed.

+This method also assigns the desired batch id to the entry so that it
+can be referenced in the server's response. If the batch_id_string is
+None, this method will assign a batch_id to be the index at which this
+entry will be in the feed's entry list.

+Args:
+  entry: BatchEntry, atom.Entry, or another Entry flavor (optional) The
+      entry which will be sent to the server as part of the batch request.
+      The item must have a valid atom id so that the server knows which
+      entry this request references.
+  id_url_string: str (optional) The URL of the entry to be acted on. You
+      can find this URL in the text member of the atom id for an entry.
+      If an entry is not sent, this id will be used to construct a new
+      BatchEntry which will be added to the request feed.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+  operation_string: str (optional) The desired batch operation which will
+      set the batch_operation.type member of the entry. Options are
+      'insert', 'update', 'delete', and 'query'

+Raises:
+  MissingRequiredParameters: Raised if neither an id_ url_string nor an
+      entry are provided in the request.

+Returns:
+  The added entry.
+ +
AddDelete(self, url_string=None, entry=None, batch_id_string=None)
Adds a delete request to the batch request feed.

+This method takes either the url_string which is the atom id of the item
+to be deleted, or the entry itself. The atom id of the entry must be
+present so that the server knows which entry should be deleted.

+Args:
+  url_string: str (optional) The URL of the entry to be deleted. You can
+     find this URL in the text member of the atom id for an entry.
+  entry: BatchEntry (optional) The entry to be deleted.
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters: Raised if neither a url_string nor an entry
+      are provided in the request.
+ +
AddInsert(self, entry, batch_id_string=None)
Add an insert request to the operations in this batch request feed.

+If the entry doesn't yet have an operation or a batch id, these will
+be set to the insert operation and a batch_id specified as a parameter.

+Args:
+  entry: BatchEntry The entry which will be sent in the batch feed as an
+      insert request.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+ +
AddQuery(self, url_string=None, entry=None, batch_id_string=None)
Adds a query request to the batch request feed.

+This method takes either the url_string which is the query URL
+whose results will be added to the result feed. The query URL will
+be encapsulated in a BatchEntry, and you may pass in the BatchEntry
+with a query URL instead of sending a url_string.

+Args:
+  url_string: str (optional)
+  entry: BatchEntry (optional)
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters
+ +
AddUpdate(self, entry, batch_id_string=None)
Add an update request to the list of batch operations in this feed.

+Sets the operation type of the entry to insert if it is not already set
+and assigns the desired batch id to the entry so that it can be
+referenced in the server's response.

+Args:
+  entry: BatchEntry The entry which will be sent to the server as an
+      update (HTTP PUT) request. The item must have a valid atom id
+      so that the server knows which entry to replace.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. See also comments for AddInsert.
+ +
GetBatchLink(self)
+ +
__init__(self, author=None, category=None, contributor=None, generator=None, icon=None, atom_id=None, link=None, logo=None, rights=None, subtitle=None, title=None, updated=None, entry=None, total_results=None, start_index=None, items_per_page=None, interrupted=None, extension_elements=None, extension_attributes=None, text=None)
+ +
+Data descriptors inherited from gdata.GDataFeed:
+
generator
+
+
id
+
+
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from gdata.LinkFinder:
+
GetAclLink(self)
+ +
GetEditLink(self)
+ +
GetEditMediaLink(self)
The Picasa API mistakenly returns media-edit rather than edit-media, but
+this may change soon.
+ +
GetFeedLink(self)
+ +
GetHtmlLink(self)
Find the first link with rel of alternate and type of text/html

+Returns:
+  An atom.Link or None if no links matched
+ +
GetNextLink(self)
+ +
GetPostLink(self)
Get a link containing the POST target URL.

+The POST target URL is used to insert new entries.

+Returns:
+  A link object with a rel matching the POST type.
+ +
GetPrevLink(self)
+ +
GetSelfLink(self)
Find the first link with rel set to 'self'

+Returns:
+  An atom.Link or none if none of the links had rel equal to 'self'
+ +
+Methods inherited from atom.LinkFinder:
+
GetAlternateLink(self)
+ +
GetLicenseLink(self)
+ +

+ + + + + + + +
 
+class IM(GDataBase)
   The Google Contacts IM element.
 
 
Method resolution order:
+
IM
+
GDataBase
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, primary='false', rel=None, address=None, protocol=None, label=None, text=None, extension_elements=None, extension_attributes=None)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class Nickname(ContactsBase)
   The Google Contacts Nickname element.
 
 
Method resolution order:
+
Nickname
+
ContactsBase
+
GDataBase
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods inherited from GDataBase:
+
__init__(self, text=None, extension_elements=None, extension_attributes=None)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class Occupation(ContactsBase)
   The Google Contacts Occupation element.
 
 
Method resolution order:
+
Occupation
+
ContactsBase
+
GDataBase
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods inherited from GDataBase:
+
__init__(self, text=None, extension_elements=None, extension_attributes=None)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class OrgDepartment(GDataBase)
   The Google Contacts OrgDepartment element.
 
 
Method resolution order:
+
OrgDepartment
+
GDataBase
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods inherited from GDataBase:
+
__init__(self, text=None, extension_elements=None, extension_attributes=None)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class OrgJobDescription(GDataBase)
   The Google Contacts OrgJobDescription element.
 
 
Method resolution order:
+
OrgJobDescription
+
GDataBase
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods inherited from GDataBase:
+
__init__(self, text=None, extension_elements=None, extension_attributes=None)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class OrgName(GDataBase)
   The Google Contacts OrgName element.
 
 
Method resolution order:
+
OrgName
+
GDataBase
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods inherited from GDataBase:
+
__init__(self, text=None, extension_elements=None, extension_attributes=None)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class OrgTitle(GDataBase)
   The Google Contacts OrgTitle element.
 
 
Method resolution order:
+
OrgTitle
+
GDataBase
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods inherited from GDataBase:
+
__init__(self, text=None, extension_elements=None, extension_attributes=None)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class Organization(GDataBase)
   The Google Contacts Organization element.
 
 
Method resolution order:
+
Organization
+
GDataBase
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, label=None, rel=None, primary='false', org_name=None, org_title=None, org_department=None, org_job_description=None, where=None, text=None, extension_elements=None, extension_attributes=None)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.
 
-This method takes either the url_string which is the query URL 
-whose results will be added to the result feed. The query URL will
-be encapsulated in a BatchEntry, and you may pass in the BatchEntry
-with a query URL instead of sending a url_string.
+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.
 
Args:
-  url_string: str (optional)
-  entry: BatchEntry (optional)
-  batch_id_string: str (optional)
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace
 
-Raises:
-  MissingRequiredParameters
+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values -
AddUpdate(self, entry, batch_id_string=None)
Add an update request to the list of batch operations in this feed.

-Sets the operation type of the entry to insert if it is not already set
-and assigns the desired batch id to the entry so that it can be 
-referenced in the server's response.

-Args:
-  entry: BatchEntry The entry which will be sent to the server as an
-      update (HTTP PUT) request. The item must have a valid atom id
-      so that the server knows which entry to replace.
-  batch_id_string: str (optional) The batch ID to be used to reference
-      this batch operation in the results feed. If this parameter is None,
-      the current length of the feed's entry array will be used as a
-      count. See also comments for AddInsert.
+
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class PersonEntry(gdata.BatchEntry)
   Base class for ContactEntry and ProfileEntry.
 
 
Method resolution order:
+
PersonEntry
+
gdata.BatchEntry
+
gdata.GDataEntry
+
atom.Entry
+
atom.FeedEntryParent
+
atom.AtomBase
+
atom.ExtensionContainer
+
gdata.LinkFinder
+
atom.LinkFinder
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, author=None, category=None, content=None, atom_id=None, link=None, published=None, title=None, updated=None, organization=None, phone_number=None, nickname=None, occupation=None, gender=None, birthday=None, postal_address=None, structured_pstal_address=None, email=None, im=None, relation=None, user_defined_field=None, website=None, external_id=None, event=None, batch_operation=None, batch_id=None, batch_status=None, text=None, extension_elements=None, extension_attributes=None, etag=None)
-
GetBatchLink(self)
+
+Methods inherited from gdata.GDataEntry:
+
GetMediaURL(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
IsMedia(self)
Determines whether or not an entry is a GData Media entry.

-Data descriptors inherited from gdata.GDataFeed:
-
generator
-
+Data descriptors inherited from gdata.GDataEntry:
id

Methods inherited from atom.AtomBase:
-
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__str__(self)
+
__str__(self)

Methods inherited from atom.ExtensionContainer:
-
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.
 
Returns a list of extension elements within this object whose tag
and/or namespace match those passed in. To find all extensions in
@@ -343,68 +1739,71 @@

Methods inherited from gdata.LinkFinder:
-
GetAclLink(self)
+
GetAclLink(self)
-
GetEditLink(self)
+
GetEditLink(self)
-
GetEditMediaLink(self)
The Picasa API mistakenly returns media-edit rather than edit-media, but
+
GetEditMediaLink(self)
The Picasa API mistakenly returns media-edit rather than edit-media, but
this may change soon.
-
GetFeedLink(self)
+
GetFeedLink(self)
-
GetHtmlLink(self)
Find the first link with rel of alternate and type of text/html
+
GetHtmlLink(self)
Find the first link with rel of alternate and type of text/html
 
Returns:
  An atom.Link or None if no links matched
-
GetNextLink(self)
+
GetNextLink(self)
-
GetPostLink(self)
Get a link containing the POST target URL.
+
GetPostLink(self)
Get a link containing the POST target URL.
 
The POST target URL is used to insert new entries.
 
Returns:
  A link object with a rel matching the POST type.
-
GetPrevLink(self)
+
GetPrevLink(self)
-
GetSelfLink(self)
Find the first link with rel set to 'self'
+
GetSelfLink(self)
Find the first link with rel set to 'self'
 
Returns:
  An atom.Link or none if none of the links had rel equal to 'self'

Methods inherited from atom.LinkFinder:
-
GetAlternateLink(self)
+
GetAlternateLink(self)
-
GetLicenseLink(self)
+
GetLicenseLink(self)

+class PhoneNumber(GDataBase) - + + +
 
-class Deleted(atom.AtomBase)
    
   The Google Contacts PhoneNumber element.
 
 
Method resolution order:
-
Deleted
+
PhoneNumber
+
GDataBase
atom.AtomBase
atom.ExtensionContainer
__builtin__.object

Methods defined here:
-
__init__(self, text=None, extension_elements=None, extension_attributes=None)
+
__init__(self, label=None, rel=None, uri=None, primary='false', text=None, extension_elements=None, extension_attributes=None)

Methods inherited from atom.AtomBase:
-
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__str__(self)
+
__str__(self)

Methods inherited from atom.ExtensionContainer:
-
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.
 
Returns a list of extension elements within this object whose tag
and/or namespace match those passed in. To find all extensions in
@@ -432,28 +1831,31 @@ +class PostalAddress(GDataBase) - + + +
 
-class Email(atom.AtomBase)
    
   The Google Contacts PostalAddress element.
 
 
Method resolution order:
-
Email
+
PostalAddress
+
GDataBase
atom.AtomBase
atom.ExtensionContainer
__builtin__.object

Methods defined here:
-
__init__(self, primary=None, rel=None, address=None, text=None, label=None, extension_elements=None, extension_attributes=None)
+
__init__(self, primary=None, rel=None, text=None, extension_elements=None, extension_attributes=None)

Methods inherited from atom.AtomBase:
-
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__str__(self)
+
__str__(self)

Methods inherited from atom.ExtensionContainer:
-
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.
 
Returns a list of extension elements within this object whose tag
and/or namespace match those passed in. To find all extensions in
@@ -481,13 +1883,14 @@ +class ProfileEntry(PersonEntry) - +
 
-class GroupEntry(gdata.BatchEntry)
   Represents a contact group.
 
A Google Profiles flavor of an Atom Entry.
 
 
Method resolution order:
-
GroupEntry
+
ProfileEntry
+
PersonEntry
gdata.BatchEntry
gdata.GDataEntry
atom.Entry
@@ -499,15 +1902,15 @@
__builtin__.object

-Methods defined here:
-
__init__(self, author=None, category=None, content=None, contributor=None, atom_id=None, link=None, published=None, rights=None, source=None, summary=None, control=None, title=None, updated=None, extended_property=None, batch_operation=None, batch_id=None, batch_status=None, extension_elements=None, extension_attributes=None, text=None)
+Methods inherited from PersonEntry:
+
__init__(self, author=None, category=None, content=None, atom_id=None, link=None, published=None, title=None, updated=None, organization=None, phone_number=None, nickname=None, occupation=None, gender=None, birthday=None, postal_address=None, structured_pstal_address=None, email=None, im=None, relation=None, user_defined_field=None, website=None, external_id=None, event=None, batch_operation=None, batch_id=None, batch_status=None, text=None, extension_elements=None, extension_attributes=None, etag=None)

Methods inherited from gdata.GDataEntry:
-
GetMediaURL(self)
Returns the URL to the media content, if the entry is a media entry.
+
GetMediaURL(self)
Returns the URL to the media content, if the entry is a media entry.
Otherwise returns None.
-
IsMedia(self)
Determines whether or not an entry is a GData Media entry.
+
IsMedia(self)
Determines whether or not an entry is a GData Media entry.

Data descriptors inherited from gdata.GDataEntry:
@@ -515,13 +1918,13 @@

Methods inherited from atom.AtomBase:
-
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__str__(self)
+
__str__(self)

Methods inherited from atom.ExtensionContainer:
-
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.
 
Returns a list of extension elements within this object whose tag
and/or namespace match those passed in. To find all extensions in
@@ -547,102 +1950,53 @@

Methods inherited from gdata.LinkFinder:
-
GetAclLink(self)
+
GetAclLink(self)
-
GetEditLink(self)
+
GetEditLink(self)
-
GetEditMediaLink(self)
The Picasa API mistakenly returns media-edit rather than edit-media, but
+
GetEditMediaLink(self)
The Picasa API mistakenly returns media-edit rather than edit-media, but
this may change soon.
-
GetFeedLink(self)
+
GetFeedLink(self)
-
GetHtmlLink(self)
Find the first link with rel of alternate and type of text/html
+
GetHtmlLink(self)
Find the first link with rel of alternate and type of text/html
 
Returns:
  An atom.Link or None if no links matched
-
GetNextLink(self)
+
GetNextLink(self)
-
GetPostLink(self)
Get a link containing the POST target URL.
+
GetPostLink(self)
Get a link containing the POST target URL.
 
The POST target URL is used to insert new entries.
 
Returns:
  A link object with a rel matching the POST type.
-
GetPrevLink(self)
+
GetPrevLink(self)
-
GetSelfLink(self)
Find the first link with rel set to 'self'
+
GetSelfLink(self)
Find the first link with rel set to 'self'
 
Returns:
  An atom.Link or none if none of the links had rel equal to 'self'

Methods inherited from atom.LinkFinder:
-
GetAlternateLink(self)
- -
GetLicenseLink(self)
- -

- - - - - -
 
-class GroupMembershipInfo(atom.AtomBase)
    
Method resolution order:
-
GroupMembershipInfo
-
atom.AtomBase
-
atom.ExtensionContainer
-
__builtin__.object
-
-
-Methods defined here:
-
__init__(self, deleted=None, href=None, text=None, extension_elements=None, extension_attributes=None)
- -
-Methods inherited from atom.AtomBase:
-
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
- -
__str__(self)
+
GetAlternateLink(self)
-
-Methods inherited from atom.ExtensionContainer:
-
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

-Returns a list of extension elements within this object whose tag
-and/or namespace match those passed in. To find all extensions in
-a particular namespace, specify the namespace but not the tag name.
-If you specify only the tag, the result list may contain extension
-elements in multiple namespaces.

-Args:
-  tag: str (optional) The desired tag
-  namespace: str (optional) The desired namespace

-Returns:
-  A list of elements whose tag and/or namespace match the parameters
-  values
+
GetLicenseLink(self)
-
-Data descriptors inherited from atom.ExtensionContainer:
-
__dict__
-
dictionary for instance variables (if defined)
-
-
__weakref__
-
list of weak references to the object (if defined)
-

+class ProfilesFeed(gdata.BatchFeed, gdata.LinkFinder) - +
 
-class GroupsFeed(gdata.BatchFeed)
   A Google contact groups feed flavor of an Atom Feed
 
A Google Profiles feed flavor of an Atom Feed.
 
 
Method resolution order:
-
GroupsFeed
+
ProfilesFeed
gdata.BatchFeed
gdata.GDataFeed
atom.Feed
@@ -655,12 +2009,16 @@
__builtin__.object

+Methods defined here:
+
__init__(self, author=None, category=None, contributor=None, generator=None, icon=None, atom_id=None, link=None, logo=None, rights=None, subtitle=None, title=None, updated=None, entry=None, total_results=None, start_index=None, items_per_page=None, extension_elements=None, extension_attributes=None, text=None)
+ +
Methods inherited from gdata.BatchFeed:
-
AddBatchEntry(self, entry=None, id_url_string=None, batch_id_string=None, operation_string=None)
Logic for populating members of a BatchEntry and adding to the feed.
+
AddBatchEntry(self, entry=None, id_url_string=None, batch_id_string=None, operation_string=None)
Logic for populating members of a BatchEntry and adding to the feed.
 
 
If the entry is not a BatchEntry, it is converted to a BatchEntry so
-that the batch specific members will be present. 
+that the batch specific members will be present.
 
The id_url_string can be used in place of an entry if the batch operation
applies to a URL. For example query and delete operations require just
@@ -668,7 +2026,7 @@ id_url_string is sent instead of an entry, a BatchEntry is created and
added to the feed.
 
-This method also assigns the desired batch id to the entry so that it 
+This method also assigns the desired batch id to the entry so that it
can be referenced in the server's response. If the batch_id_string is
None, this method will assign a batch_id to be the index at which this
entry will be in the feed's entry list.
@@ -676,7 +2034,7 @@ Args:
  entry: BatchEntry, atom.Entry, or another Entry flavor (optional) The
      entry which will be sent to the server as part of the batch request.
-      The item must have a valid atom id so that the server knows which 
+      The item must have a valid atom id so that the server knows which
      entry this request references.
  id_url_string: str (optional) The URL of the entry to be acted on. You
      can find this URL in the text member of the atom id for an entry.
@@ -698,23 +2056,23 @@ Returns:
  The added entry.
-
AddDelete(self, url_string=None, entry=None, batch_id_string=None)
Adds a delete request to the batch request feed.
+
AddDelete(self, url_string=None, entry=None, batch_id_string=None)
Adds a delete request to the batch request feed.
 
This method takes either the url_string which is the atom id of the item
-to be deleted, or the entry itself. The atom id of the entry must be 
+to be deleted, or the entry itself. The atom id of the entry must be
present so that the server knows which entry should be deleted.
 
Args:
  url_string: str (optional) The URL of the entry to be deleted. You can
-     find this URL in the text member of the atom id for an entry. 
+     find this URL in the text member of the atom id for an entry.
  entry: BatchEntry (optional) The entry to be deleted.
  batch_id_string: str (optional)
 
Raises:
-  MissingRequiredParameters: Raised if neither a url_string nor an entry 
+  MissingRequiredParameters: Raised if neither a url_string nor an entry
      are provided in the request.
-
AddInsert(self, entry, batch_id_string=None)
Add an insert request to the operations in this batch request feed.
+
AddInsert(self, entry, batch_id_string=None)
Add an insert request to the operations in this batch request feed.
 
If the entry doesn't yet have an operation or a batch id, these will
be set to the insert operation and a batch_id specified as a parameter.
@@ -728,9 +2086,9 @@       count. Note that batch_ids should either always be specified or
      never, mixing could potentially result in duplicate batch ids.
-
AddQuery(self, url_string=None, entry=None, batch_id_string=None)
Adds a query request to the batch request feed.
+
AddQuery(self, url_string=None, entry=None, batch_id_string=None)
Adds a query request to the batch request feed.
 
-This method takes either the url_string which is the query URL 
+This method takes either the url_string which is the query URL
whose results will be added to the result feed. The query URL will
be encapsulated in a BatchEntry, and you may pass in the BatchEntry
with a query URL instead of sending a url_string.
@@ -743,10 +2101,10 @@ Raises:
  MissingRequiredParameters
-
AddUpdate(self, entry, batch_id_string=None)
Add an update request to the list of batch operations in this feed.
+
AddUpdate(self, entry, batch_id_string=None)
Add an update request to the list of batch operations in this feed.
 
Sets the operation type of the entry to insert if it is not already set
-and assigns the desired batch id to the entry so that it can be 
+and assigns the desired batch id to the entry so that it can be
referenced in the server's response.
 
Args:
@@ -758,9 +2116,7 @@       the current length of the feed's entry array will be used as a
      count. See also comments for AddInsert.
-
GetBatchLink(self)
- -
__init__(self, author=None, category=None, contributor=None, generator=None, icon=None, atom_id=None, link=None, logo=None, rights=None, subtitle=None, title=None, updated=None, entry=None, total_results=None, start_index=None, items_per_page=None, interrupted=None, extension_elements=None, extension_attributes=None, text=None)
+
GetBatchLink(self)

Data descriptors inherited from gdata.GDataFeed:
@@ -770,13 +2126,13 @@

Methods inherited from atom.AtomBase:
-
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__str__(self)
+
__str__(self)

Methods inherited from atom.ExtensionContainer:
-
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.
 
Returns a list of extension elements within this object whose tag
and/or namespace match those passed in. To find all extensions in
@@ -802,68 +2158,72 @@

Methods inherited from gdata.LinkFinder:
-
GetAclLink(self)
+
GetAclLink(self)
-
GetEditLink(self)
+
GetEditLink(self)
-
GetEditMediaLink(self)
The Picasa API mistakenly returns media-edit rather than edit-media, but
+
GetEditMediaLink(self)
The Picasa API mistakenly returns media-edit rather than edit-media, but
this may change soon.
-
GetFeedLink(self)
+
GetFeedLink(self)
-
GetHtmlLink(self)
Find the first link with rel of alternate and type of text/html
+
GetHtmlLink(self)
Find the first link with rel of alternate and type of text/html
 
Returns:
  An atom.Link or None if no links matched
-
GetNextLink(self)
+
GetNextLink(self)
-
GetPostLink(self)
Get a link containing the POST target URL.
+
GetPostLink(self)
Get a link containing the POST target URL.
 
The POST target URL is used to insert new entries.
 
Returns:
  A link object with a rel matching the POST type.
-
GetPrevLink(self)
+
GetPrevLink(self)
-
GetSelfLink(self)
Find the first link with rel set to 'self'
+
GetSelfLink(self)
Find the first link with rel set to 'self'
 
Returns:
  An atom.Link or none if none of the links had rel equal to 'self'

Methods inherited from atom.LinkFinder:
-
GetAlternateLink(self)
+
GetAlternateLink(self)
-
GetLicenseLink(self)
+
GetLicenseLink(self)

+class Relation(ContactsBase) - + + + -
 
-class IM(atom.AtomBase)
    
   The Google Contacts Relation element.
 
 
Method resolution order:
-
IM
+
Relation
+
ContactsBase
+
GDataBase
atom.AtomBase
atom.ExtensionContainer
__builtin__.object

Methods defined here:
-
__init__(self, primary=None, rel=None, address=None, protocol=None, label=None, text=None, extension_elements=None, extension_attributes=None)
+
__init__(self, label=None, rel=None, text=None, extension_elements=None, extension_attributes=None)

Methods inherited from atom.AtomBase:
-
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__str__(self)
+
__str__(self)

Methods inherited from atom.ExtensionContainer:
-
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.
 
Returns a list of extension elements within this object whose tag
and/or namespace match those passed in. To find all extensions in
@@ -891,28 +2251,31 @@ +class StructuredPostalAddress(GDataBase) - + + +
 
-class OrgName(atom.AtomBase)
    
   The Google Contacts StructuredPostalAddress element.
 
 
Method resolution order:
-
OrgName
+
StructuredPostalAddress
+
GDataBase
atom.AtomBase
atom.ExtensionContainer
__builtin__.object

Methods defined here:
-
__init__(self, text=None, extension_elements=None, extension_attributes=None)
+
__init__(self, rel=None, primary=None, formatted_address=None, text=None, extension_elements=None, extension_attributes=None)

Methods inherited from atom.AtomBase:
-
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__str__(self)
+
__str__(self)

Methods inherited from atom.ExtensionContainer:
-
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.
 
Returns a list of extension elements within this object whose tag
and/or namespace match those passed in. To find all extensions in
@@ -940,28 +2303,32 @@ +class UserDefinedField(ContactsBase) - + + +
 
-class OrgTitle(atom.AtomBase)
    
   The Google Contacts UserDefinedField element.
 
 
Method resolution order:
-
OrgTitle
+
UserDefinedField
+
ContactsBase
+
GDataBase
atom.AtomBase
atom.ExtensionContainer
__builtin__.object

Methods defined here:
-
__init__(self, text=None, extension_elements=None, extension_attributes=None)
+
__init__(self, key=None, value=None, text=None, extension_elements=None, extension_attributes=None)

Methods inherited from atom.AtomBase:
-
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__str__(self)
+
__str__(self)

Methods inherited from atom.ExtensionContainer:
-
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.
 
Returns a list of extension elements within this object whose tag
and/or namespace match those passed in. To find all extensions in
@@ -989,28 +2356,32 @@ +class Website(ContactsBase) - + + +
 
-class Organization(atom.AtomBase)
    
   The Google Contacts Website element.
 
 
Method resolution order:
-
Organization
+
Website
+
ContactsBase
+
GDataBase
atom.AtomBase
atom.ExtensionContainer
__builtin__.object

Methods defined here:
-
__init__(self, rel=None, primary='false', org_name=None, org_title=None, label=None, text=None, extension_elements=None, extension_attributes=None)
+
__init__(self, href=None, label=None, primary='false', rel=None, text=None, extension_elements=None, extension_attributes=None)

Methods inherited from atom.AtomBase:
-
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__str__(self)
+
__str__(self)

Methods inherited from atom.ExtensionContainer:
-
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.
 
Returns a list of extension elements within this object whose tag
and/or namespace match those passed in. To find all extensions in
@@ -1038,28 +2409,31 @@ +class When(GDataBase) - + + +
 
-class PhoneNumber(atom.AtomBase)
    
   The Google Contacts When element.
 
 
Method resolution order:
-
PhoneNumber
+
When
+
GDataBase
atom.AtomBase
atom.ExtensionContainer
__builtin__.object

Methods defined here:
-
__init__(self, primary=None, rel=None, text=None, extension_elements=None, extension_attributes=None)
+
__init__(self, start_time=None, end_time=None, label=None, text=None, extension_elements=None, extension_attributes=None)

Methods inherited from atom.AtomBase:
-
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__str__(self)
+
__str__(self)

Methods inherited from atom.ExtensionContainer:
-
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.
 
Returns a list of extension elements within this object whose tag
and/or namespace match those passed in. To find all extensions in
@@ -1087,28 +2461,31 @@ +class Where(GDataBase) - + + +
 
-class PostalAddress(atom.AtomBase)
    
   The Google Contacts Where element.
 
 
Method resolution order:
-
PostalAddress
+
Where
+
GDataBase
atom.AtomBase
atom.ExtensionContainer
__builtin__.object

Methods defined here:
-
__init__(self, primary=None, rel=None, text=None, extension_elements=None, extension_attributes=None)
+
__init__(self, value_string=None, rel=None, label=None, text=None, extension_elements=None, extension_attributes=None)

Methods inherited from atom.AtomBase:
-
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__str__(self)
+
__str__(self)

Methods inherited from atom.ExtensionContainer:
-
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.
 
Returns a list of extension elements within this object whose tag
and/or namespace match those passed in. To find all extensions in
@@ -1141,8 +2518,27 @@
       
ContactEntryFromString(xml_string)
ContactsFeedFromString(xml_string)
+
EventFromString(xml_string)
+
ExternalIdFromString(xml_string)
GroupEntryFromString(xml_string)
GroupsFeedFromString(xml_string)
+
ProfileEntryFromString(xml_string)
Converts an XML string into a ProfileEntry object.

+Args:
+  xml_string: string The XML describing a Profile entry.

+Returns:
+  A ProfileEntry object corresponding to the given XML.
+
ProfilesFeedFromString(xml_string)
Converts an XML string into a ProfilesFeed object.

+Args:
+  xml_string: string The XML describing a Profiles feed.

+Returns:
+  A ProfilesFeed object corresponding to the given XML.
+
RelationFromString(xml_string)
+
UserDefinedFieldFromString(xml_string)
+
WebsiteFromString(xml_string)

@@ -1151,29 +2547,43 @@
        CONTACTS_NAMESPACE = 'http://schemas.google.com/contact/2008'
+EXTERNAL_ID_ORGANIZATION = 'organization'
IM_AIM = 'http://schemas.google.com/g/2005#AIM'
IM_GOOGLE_TALK = 'http://schemas.google.com/g/2005#GOOGLE_TALK'
IM_ICQ = 'http://schemas.google.com/g/2005#ICQ'
IM_JABBER = 'http://schemas.google.com/g/2005#JABBER'
IM_MSN = 'http://schemas.google.com/g/2005#MSN'
+IM_NETMEETING = 'http://schemas.google.com/g/2005#netmeeting'
IM_QQ = 'http://schemas.google.com/g/2005#QQ'
IM_SKYPE = 'http://schemas.google.com/g/2005#SKYPE'
IM_YAHOO = 'http://schemas.google.com/g/2005#YAHOO'
+PHONE_ASSISTANT = 'http://schemas.google.com/g/2005#assistant'
+PHONE_CALLBACK = 'http://schemas.google.com/g/2005#callback'
PHONE_CAR = 'http://schemas.google.com/g/2005#car'
+PHONE_COMPANY_MAIN = 'http://schemas.google.com/g/2005#company_main'
PHONE_FAX = 'http://schemas.google.com/g/2005#fax'
PHONE_GENERAL = 'http://schemas.google.com/g/2005#general'
PHONE_HOME = 'http://schemas.google.com/g/2005#home'
PHONE_HOME_FAX = 'http://schemas.google.com/g/2005#home_fax'
PHONE_INTERNAL = 'http://schemas.google.com/g/2005#internal-extension'
+PHONE_ISDN = 'http://schemas.google.com/g/2005#isdn'
+PHONE_MAIN = 'http://schemas.google.com/g/2005#main'
PHONE_MOBILE = 'http://schemas.google.com/g/2005#mobile'
PHONE_OTHER = 'http://schemas.google.com/g/2005#other'
+PHONE_OTHER_FAX = 'http://schemas.google.com/g/2005#other_fax'
PHONE_PAGER = 'http://schemas.google.com/g/2005#pager'
+PHONE_RADIO = 'http://schemas.google.com/g/2005#radio'
PHONE_SATELLITE = 'http://schemas.google.com/g/2005#satellite'
+PHONE_TELEX = 'http://schemas.google.com/g/2005#telex'
+PHONE_TTY_TDD = 'http://schemas.google.com/g/2005#tty_tdd'
PHONE_VOIP = 'http://schemas.google.com/g/2005#voip'
PHONE_WORK = 'http://schemas.google.com/g/2005#work'
PHONE_WORK_FAX = 'http://schemas.google.com/g/2005#work_fax'
+PHONE_WORK_MOBILE = 'http://schemas.google.com/g/2005#work_mobile'
+PHONE_WORK_PAGER = 'http://schemas.google.com/g/2005#work_pager'
PHOTO_EDIT_LINK_REL = 'http://schemas.google.com/contacts/2008/rel#edit-photo'
PHOTO_LINK_REL = 'http://schemas.google.com/contacts/2008/rel#photo'
+RELATION_MANAGER = 'manager'
REL_HOME = 'http://schemas.google.com/g/2005#home'
REL_OTHER = 'http://schemas.google.com/g/2005#other'
REL_WORK = 'http://schemas.google.com/g/2005#work'
diff -Nru python-gdata-1.2.4/pydocs/gdata.contacts.service.html python-gdata-2.0.8/pydocs/gdata.contacts.service.html --- python-gdata-1.2.4/pydocs/gdata.contacts.service.html 2009-01-22 19:55:42.000000000 +0000 +++ python-gdata-2.0.8/pydocs/gdata.contacts.service.html 2010-02-26 23:16:48.000000000 +0000 @@ -9,24 +9,23 @@  
gdata.contacts.service
index
/usr/local/svn/gdata-python-client/src/gdata/contacts/service.py
-

ContactsService extends the GDataService to streamline Google Contacts operations.
+

ContactsService extends the GDataService for Google Contacts operations.
 
-ContactsService: Provides methods to query feeds and manipulate items. Extends 
-              GDataService.
+ContactsService: Provides methods to query feeds and manipulate items.
+                 Extends GDataService.
 
-DictionaryToParamList: Function which converts a dictionary into a list of 
-                       URL arguments (represented as strings). This is a 
+DictionaryToParamList: Function which converts a dictionary into a list of
+                       URL arguments (represented as strings). This is a
                       utility function used in CRUD operations.

+Modules -
 
-Modules
       
atom
-
gdata
-

+

gdata
+

 
@@ -56,6 +55,7 @@
ContactsQuery
GroupsQuery +
ProfilesQuery
@@ -143,8 +143,6 @@
__gt__(...)
x.__gt__(y) <==> x>y
-
__hash__(...)
x.__hash__() <==> hash(x)
-
__iter__(...)
x.__iter__() <==> iter(x)
__le__(...)
x.__le__(y) <==> x<=y
@@ -159,6 +157,8 @@
__setitem__(...)
x.__setitem__(i, y) <==> x[i]=y
+
__sizeof__(...)
D.__sizeof__() -> size of D in memory, in bytes
+
clear(...)
D.clear() -> None.  Remove all items from D.
copy(...)
D.copy() -> a shallow copy of D
@@ -192,9 +192,11 @@
Data and other attributes inherited from __builtin__.dict:
-
__new__ = <built-in method __new__ of type object at 0x72b260>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__hash__ = None
+ +
__new__ = <built-in method __new__ of type object at 0x7569a0>
T.__new__(S, ...) -> a new object with type S, a subtype of T
-
fromkeys = <built-in method fromkeys of type object at 0xd2f350>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
+
fromkeys = <built-in method fromkeys of type object at 0xd49940>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
v defaults to None.

@@ -231,26 +233,26 @@                 mime type in the media object.
  content_length: int or str (optional) Specifying the content length is
                  only required if media is a file-like object. If media
-                  is a filename, the length is determined using 
+                  is a filename, the length is determined using
                  os.path.getsize. If media is a MediaSource object, it is
                  assumed that it already contains the content length.

CreateContact(self, new_contact, insert_uri=None, url_params=None, escape_params=True)
Adds an new contact to Google Contacts.
 
-Args: 
+Args:
  new_contact: atom.Entry or subclass A new contact which is to be added to
            Google Contacts.
  insert_uri: the URL to post new contacts to the feed
  url_params: dict (optional) Additional URL parameters to be included
-              in the insertion request. 
+              in the insertion request.
  escape_params: boolean (optional) If true, the url_parameters will be
                 escaped before they are included in the request.
 
Returns:
  On successful insert,  an entry containing the contact created
  On failure, a RequestError is raised of the form:
-    {'status': HTTP status code from server, 
-     'reason': HTTP reason from the server, 
+    {'status': HTTP status code from server,
+     'reason': HTTP reason from the server,
     'body': HTTP body of the server's response}
CreateGroup(self, new_group, insert_uri=None, url_params=None, escape_params=True)
@@ -269,15 +271,15 @@   On successful delete,  a httplib.HTTPResponse containing the server's
    response to the DELETE request.
  On failure, a RequestError is raised of the form:
-    {'status': HTTP status code from server, 
-     'reason': HTTP reason from the server, 
+    {'status': HTTP status code from server,
+     'reason': HTTP reason from the server,
     'body': HTTP body of the server's response}
DeleteGroup(self, edit_uri, extra_headers=None, url_params=None, escape_params=True)
DeletePhoto(self, contact_entry_or_url)
-
ExecuteBatch(self, batch_feed, url, converter=<function ContactsFeedFromString at 0x934668>)
Sends a batch request feed to the server.
+
ExecuteBatch(self, batch_feed, url, converter=<function ContactsFeedFromString at 0xa5ced8>)
Sends a batch request feed to the server.
 
Args:
  batch_feed: gdata.contacts.ContactFeed A feed containing batch
@@ -293,6 +295,23 @@   The results of the batch request's execution on the server. If the
  default converter is used, this is stored in a ContactsFeed.
+
ExecuteBatchProfiles(self, batch_feed, url, converter=<function ProfilesFeedFromString at 0xa60230>)
Sends a batch request feed to the server.

+Args:
+  batch_feed: gdata.profiles.ProfilesFeed A feed containing batch
+      request entries. Each entry contains the operation to be performed
+      on the data contained in the entry. For example an entry with an
+      operation type of insert will be used as if the individual entry
+      had been inserted.
+  url: string The batch URL to which these operations should be applied.
+  converter: Function (optional) The function used to convert the server's
+      response to an object. The default value is
+      gdata.profiles.ProfilesFeedFromString.

+Returns:
+  The results of the batch request's execution on the server. If the
+  default converter is used, this is stored in a ProfilesFeed.
+
GetContact(self, uri)
GetContactsFeed(self, uri=None)
@@ -323,13 +342,33 @@      contain a photo link, the image will not be fetched and this method
     will return None.
+
GetProfile(self, uri)
Retrieves a domain's profile for the user.

+Args:
+  uri: string the URL to retrieve the profiles feed,
+      for example /m8/feeds/profiles/default/full/username

+Returns:
+  On success, a ProfileEntry containing the profile for the user.
+  On failure, raises a RequestError
+ +
GetProfilesFeed(self, uri=None)
Retrieves a feed containing all domain's profiles.

+Args:
+  uri: string (optional) the URL to retrieve the profiles feed,
+      for example /m8/feeds/profiles/default/full

+Returns:
+  On success, a ProfilesFeed containing the profiles.
+  On failure, raises a RequestError.
+
UpdateContact(self, edit_uri, updated_contact, url_params=None, escape_params=True)
Updates an existing contact.
 
Args:
  edit_uri: string The edit link URI for the element being updated
  updated_contact: string, atom.Entry or subclass containing
-                the Atom Entry which will replace the contact which is 
-                stored at the edit_url 
+                the Atom Entry which will replace the contact which is
+                stored at the edit_url
  url_params: dict (optional) Additional URL parameters to be included
              in the update request.
  escape_params: boolean (optional) If true, the url_parameters will be
@@ -339,12 +378,29 @@   On successful update,  a httplib.HTTPResponse containing the server's
    response to the PUT request.
  On failure, a RequestError is raised of the form:
-    {'status': HTTP status code from server, 
-     'reason': HTTP reason from the server, 
+    {'status': HTTP status code from server,
+     'reason': HTTP reason from the server,
     'body': HTTP body of the server's response}
UpdateGroup(self, edit_uri, updated_group, url_params=None, escape_params=True)
+
UpdateProfile(self, edit_uri, updated_profile, url_params=None, escape_params=True)
Updates an existing profile.

+Args:
+  edit_uri: string The edit link URI for the element being updated
+  updated_profile: string atom.Entry or subclass containing
+                the Atom Entry which will replace the profile which is
+                stored at the edit_url.
+  url_params: dict (optional) Additional URL parameters to be included
+              in the update request.
+  escape_params: boolean (optional) If true, the url_params will be
+                 escaped before they are included in the request.

+Returns:
+  On successful update,  a httplib.HTTPResponse containing the server's
+    response to the PUT request.
+  On failure, raises a RequestError.
+
__init__(self, email=None, password=None, source=None, server='www.google.com', additional_headers=None, contact_list='default', **kwargs)
Creates a client for the Contacts service.
 
Args:
@@ -401,7 +457,7 @@ Returns:
  True if the entry was deleted.
-
FetchOAuthRequestToken(self, scopes=None, extra_parameters=None, request_url='https://www.google.com/accounts/OAuthGetRequestToken')
Fetches OAuth request token and returns it.
+
FetchOAuthRequestToken(self, scopes=None, extra_parameters=None, request_url='https://www.google.com/accounts/OAuthGetRequestToken', oauth_callback=None)
Fetches and sets the OAuth request token and returns it.
 
Args:
  scopes: string or list of string base URL(s) of the service(s) to be
@@ -416,10 +472,14 @@       extra_parameters = {'oauth_version': '2.0'}
  request_url: Request token URL. The default is
      'https://www.google.com/accounts/OAuthGetRequestToken'.
-  
+  oauth_callback: str (optional) If set, it is assume the client is using
+      the OAuth v1.0a protocol where the callback url is sent in the
+      request token step.  If the oauth_callback is also set in
+      extra_params, this value will override that one.

Returns:
  The fetched request token as a gdata.auth.OAuthToken object.
-  

Raises:
  FetchingOAuthRequestTokenFailed if the server responded to the request
  with an error.
@@ -551,7 +611,7 @@ Returns:
  A GDataEntry built from the XML in the server's response.
-
GetFeed(self, uri, extra_headers=None, converter=<function GDataFeedFromString at 0x8ef1b8>)
Query the GData API with the given URI and receive a Feed.
+
GetFeed(self, uri, extra_headers=None, converter=<function GDataFeedFromString at 0x7f8029298d70>)
Query the GData API with the given URI and receive a Feed.
 
See also documentation for gdata.service.Get
 
@@ -567,6 +627,8 @@ Returns:
  A GDataFeed built from the XML in the server's response.
+
GetGeneratorFromLinkFinder(self, link_finder, func, num_retries=3, delay=1, backoff=2)
returns a generator for pagination
+
GetMedia(self, uri, extra_headers=None)
Returns a MediaSource containing media and its metadata from the given
URI string.
@@ -585,6 +647,26 @@   A new feed representing the next set of results in the server's feed.
  The type of this feed will match that of the feed argument.
+
GetOAuthInputParameters(self)
+ +
GetWithRetries(self, uri, extra_headers=None, redirects_remaining=4, encoding='UTF-8', converter=None, num_retries=3, delay=1, backoff=2, logger=None)
This is a wrapper method for Get with retring capability.

+To avoid various errors while retrieving bulk entities by retring
+specified times.

+Note this method relies on the time module and so may not be usable
+by default in Python2.2.

+Args:
+  num_retries: integer The retry count.
+  delay: integer The initial delay for retring.
+  backoff: integer how much the delay should lengthen after each failure.
+  logger: an object which has a debug(str) method to receive logging
+          messages. Recommended that you pass in the logging module.
+Raises:
+  ValueError if any of the parameters has an invalid value.
+  RanOutOfTries on failure after number of retries.
+
Post(self, data, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=4, media_source=None, converter=None)
Insert or update  data into a GData service at the given URI.
 
Args:
@@ -745,7 +827,7 @@ Args:
  token: string or instance of a ClientLoginToken.
-
SetOAuthInputParameters(self, signature_method, consumer_key, consumer_secret=None, rsa_key=None, two_legged_oauth=False)
Sets parameters required for using OAuth authentication mechanism.
+
SetOAuthInputParameters(self, signature_method, consumer_key, consumer_secret=None, rsa_key=None, two_legged_oauth=False, requestor_id=None)
Sets parameters required for using OAuth authentication mechanism.
 
NOTE: Though consumer_secret and rsa_key are optional, either of the two
is required depending on the value of the signature_method.
@@ -762,7 +844,10 @@       Required only for HMAC_SHA1 signature method.
  rsa_key: string (optional) Private key required for RSA_SHA1 signature
      method.
-  two_legged_oauth: string (default=False) Enables two-legged OAuth process.
+  two_legged_oauth: boolean (optional) Enables two-legged OAuth process.
+  requestor_id: string (optional) User email adress to make requests on
+      their behalf.  This parameter should only be set when two_legged_oauth
+      is True.
SetOAuthToken(self, oauth_token)
Attempts to set the current token and add it to the token store.
 
@@ -776,18 +861,24 @@ Args:
  request_token: gdata.auth.OAuthToken OAuth request token.
-
UpgradeToOAuthAccessToken(self, authorized_request_token=None, request_url='https://www.google.com/accounts/OAuthGetAccessToken', oauth_version='1.0')
Upgrades the authorized request token to an access token.
+
UpgradeToOAuthAccessToken(self, authorized_request_token=None, request_url='https://www.google.com/accounts/OAuthGetAccessToken', oauth_version='1.0', oauth_verifier=None)
Upgrades the authorized request token to an access token and returns it
 
Args:
  authorized_request_token: gdata.auth.OAuthToken (optional) OAuth request
      token. If not specified, then the current token will be used if it is
      of type <gdata.auth.OAuthToken>, else it is found by looking in the
      token_store by looking for a token for the current scope.
+  request_url: Access token URL. The default is
+      'https://www.google.com/accounts/OAuthGetAccessToken'.
  oauth_version: str (default='1.0') oauth_version parameter. All other
      'oauth_' parameters are added by default. This parameter too, is
      added by default but here you can override it's value.
-  request_url: Access token URL. The default is
-      'https://www.google.com/accounts/OAuthGetAccessToken'.
+  oauth_verifier: str (optional) If present, it is assumed that the client
+    will use the OAuth v1.0a protocol which includes passing the
+    oauth_verifier (as returned by the SP) in the access token step.

+Returns:
+  Access token
      
Raises:
  NonOAuthToken if the user's authorized request token is not an OAuth
@@ -857,7 +948,7 @@   username: str
  password: str
-
request(self, operation, url, data=None, headers=None, url_params=None)
+
request(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
use_basic_auth(self, username, password, scopes=None)
@@ -910,7 +1001,7 @@
Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
@@ -934,6 +1025,8 @@
__str__(...)
x.__str__() <==> str(x)
+
__unicode__(...)
+
Data descriptors inherited from exceptions.BaseException:
__dict__
@@ -941,7 +1034,6 @@
args
message
-
exception message

@@ -1022,8 +1114,6 @@
__gt__(...)
x.__gt__(y) <==> x>y
-
__hash__(...)
x.__hash__() <==> hash(x)
-
__iter__(...)
x.__iter__() <==> iter(x)
__le__(...)
x.__le__(y) <==> x<=y
@@ -1038,6 +1128,8 @@
__setitem__(...)
x.__setitem__(i, y) <==> x[i]=y
+
__sizeof__(...)
D.__sizeof__() -> size of D in memory, in bytes
+
clear(...)
D.clear() -> None.  Remove all items from D.
copy(...)
D.copy() -> a shallow copy of D
@@ -1071,9 +1163,148 @@
Data and other attributes inherited from __builtin__.dict:
-
__new__ = <built-in method __new__ of type object at 0x72b260>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__hash__ = None
+ +
__new__ = <built-in method __new__ of type object at 0x7569a0>
T.__new__(S, ...) -> a new object with type S, a subtype of T
-
fromkeys = <built-in method fromkeys of type object at 0xd2f6f0>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
+
fromkeys = <built-in method fromkeys of type object at 0xd4a070>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
+v defaults to None.
+ +

+ + + + + + + +
 
+class ProfilesQuery(gdata.service.Query)
   Constructs a query object for the profiles feed.
 
 
Method resolution order:
+
ProfilesQuery
+
gdata.service.Query
+
__builtin__.dict
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, feed=None, text_query=None, params=None, categories=None)
+ +
+Methods inherited from gdata.service.Query:
+
ToUri(self)
+ +
__str__(self)
+ +
+Data descriptors inherited from gdata.service.Query:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
alt
+
The feed query's alt parameter
+
+
author
+
The feed query's author parameter
+
+
max_results
+
The feed query's max-results parameter
+
+
orderby
+
The feed query's orderby parameter
+
+
published_max
+
The feed query's published-max parameter
+
+
published_min
+
The feed query's published-min parameter
+
+
start_index
+
The feed query's start-index parameter
+
+
text_query
+
The feed query's q parameter
+
+
updated_max
+
The feed query's updated-max parameter
+
+
updated_min
+
The feed query's updated-min parameter
+
+
+Methods inherited from __builtin__.dict:
+
__cmp__(...)
x.__cmp__(y) <==> cmp(x,y)
+ +
__contains__(...)
D.__contains__(k) -> True if D has a key k, else False
+ +
__delitem__(...)
x.__delitem__(y) <==> del x[y]
+ +
__eq__(...)
x.__eq__(y) <==> x==y
+ +
__ge__(...)
x.__ge__(y) <==> x>=y
+ +
__getattribute__(...)
x.__getattribute__('name') <==> x.name
+ +
__getitem__(...)
x.__getitem__(y) <==> x[y]
+ +
__gt__(...)
x.__gt__(y) <==> x>y
+ +
__iter__(...)
x.__iter__() <==> iter(x)
+ +
__le__(...)
x.__le__(y) <==> x<=y
+ +
__len__(...)
x.__len__() <==> len(x)
+ +
__lt__(...)
x.__lt__(y) <==> x<y
+ +
__ne__(...)
x.__ne__(y) <==> x!=y
+ +
__repr__(...)
x.__repr__() <==> repr(x)
+ +
__setitem__(...)
x.__setitem__(i, y) <==> x[i]=y
+ +
__sizeof__(...)
D.__sizeof__() -> size of D in memory, in bytes
+ +
clear(...)
D.clear() -> None.  Remove all items from D.
+ +
copy(...)
D.copy() -> a shallow copy of D
+ +
get(...)
D.get(k[,d]) -> D[k] if k in D, else d.  d defaults to None.
+ +
has_key(...)
D.has_key(k) -> True if D has a key k, else False
+ +
items(...)
D.items() -> list of D's (key, value) pairs, as 2-tuples
+ +
iteritems(...)
D.iteritems() -> an iterator over the (key, value) items of D
+ +
iterkeys(...)
D.iterkeys() -> an iterator over the keys of D
+ +
itervalues(...)
D.itervalues() -> an iterator over the values of D
+ +
keys(...)
D.keys() -> list of D's keys
+ +
pop(...)
D.pop(k[,d]) -> v, remove specified key and return the corresponding value
+If key is not found, d is returned if given, otherwise KeyError is raised
+ +
popitem(...)
D.popitem() -> (k, v), remove and return some (key, value) pair as a
+2-tuple; but raise KeyError if D is empty
+ +
setdefault(...)
D.setdefault(k[,d]) -> D.get(k,d), also set D[k]=d if k not in D
+ +
update(...)
D.update(E, **F) -> None.  Update D from E and F: for k in E: D[k] = E[k]
+(if E has keys else: for (k, v) in E: D[k] = v) then: for k in F: D[k] = F[k]
+ +
values(...)
D.values() -> list of D's values
+ +
+Data and other attributes inherited from __builtin__.dict:
+
__hash__ = None
+ +
__new__ = <built-in method __new__ of type object at 0x7569a0>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+ +
fromkeys = <built-in method fromkeys of type object at 0xd4bb30>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
v defaults to None.

@@ -1101,7 +1332,7 @@


Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
@@ -1125,6 +1356,8 @@
__str__(...)
x.__str__() <==> str(x)
+
__unicode__(...)
+
Data descriptors inherited from exceptions.BaseException:
__dict__
@@ -1132,7 +1365,6 @@
args
message
-
exception message

@@ -1142,6 +1374,8 @@
        DEFAULT_BATCH_URL = 'http://www.google.com/m8/feeds/contacts/default/full/batch'
+DEFAULT_PROFILES_BATCH_URL = 'http://www.google.com/m8/feeds/profiles/default/full/batch'
+GDATA_VER_HEADER = 'GData-Version'
__author__ = 'dbrattli (Dag Brattli)'

diff -Nru python-gdata-1.2.4/pydocs/gdata.data.html python-gdata-2.0.8/pydocs/gdata.data.html --- python-gdata-1.2.4/pydocs/gdata.data.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.data.html 2010-02-26 23:16:48.000000000 +0000 @@ -0,0 +1,10375 @@ + + +Python: module gdata.data + + +
+ +
 
+ 
gdata.data
index
/usr/local/svn/gdata-python-client/src/gdata/data.py
+

Provides classes and constants for the XML in the Google Data namespace.

+Documentation for the raw XML which these classes represent can be found here:
+http://code.google.com/apis/gdata/docs/2.0/elements.html

+

+ + + + + +
 
+Modules
       
atom
+
os
+

+ + + + + +
 
+Classes
       
+
__builtin__.object +
+
+
MediaSource +
+
+
atom.core.XmlElement(__builtin__.object) +
+
+
AdditionalName +
Agent +
AttendeeStatus +
AttendeeType +
BatchId +
BatchInterrupted +
BatchOperation +
BatchStatus +
City +
Comments +
Country +
Deleted +
EmailImParent +
+
+
Email +
Im +
+
+
EntryLink +
ExtendedProperty +
FamilyName +
FeedLink +
FormattedAddress +
FullName +
GivenName +
HouseName +
ItemsPerPage +
Money +
Name +
NamePrefix +
NameSuffix +
Neighborhood +
OrgDepartment +
OrgJobDescription +
OrgName +
OrgSymbol +
OrgTitle +
Organization +
OriginalEvent +
PhoneNumber +
PoBox +
PostalAddress +
Postcode +
Rating +
Recurrence +
RecurrenceException +
Region +
Reminder +
StartIndex +
Street +
StructuredPostalAddress +
Subregion +
TotalResults +
When +
Where +
Who +
+
+
atom.data.Entry(atom.data.FeedEntryParent) +
+
+
GDEntry(atom.data.Entry, LinkFinder) +
+
+
BatchEntry +
+
+
+
+
atom.data.Feed(atom.data.Source) +
+
+
GDFeed(atom.data.Feed, LinkFinder) +
+
+
BatchFeed +
+
+
+
+
atom.data.LinkFinder(__builtin__.object) +
+
+
LinkFinder +
+
+
GDEntry(atom.data.Entry, LinkFinder) +
+
+
BatchEntry +
+
+
GDFeed(atom.data.Feed, LinkFinder) +
+
+
BatchFeed +
+
+
+
+
+
+
exceptions.Exception(exceptions.BaseException) +
+
+
Error +
+
+
MissingRequiredParameters +
+
+
+
+
+

+ + + + + + + +
 
+class AdditionalName(atom.core.XmlElement)
   The gd:additionalName element.

+Specifies additional (eg. middle) name of the person.
+Contains an attribute for the phonetic representaton of the name.
 
 
Method resolution order:
+
AdditionalName
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
yomi = 'yomi'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Agent(atom.core.XmlElement)
   The gd:agent element.

+The agent who actually receives the mail. Used in work addresses.
+Also for 'in care of' or 'c/o'.
 
 
Method resolution order:
+
Agent
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class AttendeeStatus(atom.core.XmlElement)
   The gd:attendeeStatus element.
 
 
Method resolution order:
+
AttendeeStatus
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class AttendeeType(atom.core.XmlElement)
   The gd:attendeeType element.
 
 
Method resolution order:
+
AttendeeType
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class BatchEntry(GDEntry)
   An atom:entry for use in batch requests.

+The BatchEntry contains additional members to specify the operation to be
+performed on this entry and a batch ID so that the server can reference
+individual operations in the response feed. For more information, see:
+http://code.google.com/apis/gdata/batch.html
 
 
Method resolution order:
+
BatchEntry
+
GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
batch_id = <class 'gdata.data.BatchId'>
Identifies a single operation in a batch request.
+ +
batch_operation = <class 'gdata.data.BatchOperation'>
The CRUD operation which this batch entry represents.
+ +
batch_status = <class 'gdata.data.BatchStatus'>
The batch:status element present in a batch response entry.

+A status element contains the code (HTTP response code) and
+reason as elements. In a single request these fields would
+be part of the HTTP response, but in a batch request each
+Entry operation has a corresponding Entry in the response
+feed which includes status information.

+See http://code.google.com/apis/gdata/batch.html#Handling_Errors
+ +
+Methods inherited from GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class BatchFeed(GDFeed)
   A feed containing a list of batch request entries.
 
 
Method resolution order:
+
BatchFeed
+
GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Methods defined here:
+
AddBatchEntry = add_batch_entry(self, entry=None, id_url_string=None, batch_id_string=None, operation_string=None)
+ +
AddDelete = add_delete(self, url_string=None, entry=None, batch_id_string=None)
+ +
AddInsert = add_insert(self, entry, batch_id_string=None)
+ +
AddQuery = add_query(self, url_string=None, entry=None, batch_id_string=None)
+ +
AddUpdate = add_update(self, entry, batch_id_string=None)
+ +
FindBatchLink = find_batch_link(self)
+ +
add_batch_entry(self, entry=None, id_url_string=None, batch_id_string=None, operation_string=None)
Logic for populating members of a BatchEntry and adding to the feed.

+If the entry is not a BatchEntry, it is converted to a BatchEntry so
+that the batch specific members will be present.

+The id_url_string can be used in place of an entry if the batch operation
+applies to a URL. For example query and delete operations require just
+the URL of an entry, no body is sent in the HTTP request. If an
+id_url_string is sent instead of an entry, a BatchEntry is created and
+added to the feed.

+This method also assigns the desired batch id to the entry so that it
+can be referenced in the server's response. If the batch_id_string is
+None, this method will assign a batch_id to be the index at which this
+entry will be in the feed's entry list.

+Args:
+  entry: BatchEntry, atom.data.Entry, or another Entry flavor (optional)
+      The entry which will be sent to the server as part of the batch
+      request. The item must have a valid atom id so that the server
+      knows which entry this request references.
+  id_url_string: str (optional) The URL of the entry to be acted on. You
+      can find this URL in the text member of the atom id for an entry.
+      If an entry is not sent, this id will be used to construct a new
+      BatchEntry which will be added to the request feed.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+  operation_string: str (optional) The desired batch operation which will
+      set the batch_operation.type member of the entry. Options are
+      'insert', 'update', 'delete', and 'query'

+Raises:
+  MissingRequiredParameters: Raised if neither an id_ url_string nor an
+      entry are provided in the request.

+Returns:
+  The added entry.
+ +
add_delete(self, url_string=None, entry=None, batch_id_string=None)
Adds a delete request to the batch request feed.

+This method takes either the url_string which is the atom id of the item
+to be deleted, or the entry itself. The atom id of the entry must be
+present so that the server knows which entry should be deleted.

+Args:
+  url_string: str (optional) The URL of the entry to be deleted. You can
+     find this URL in the text member of the atom id for an entry.
+  entry: BatchEntry (optional) The entry to be deleted.
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters: Raised if neither a url_string nor an entry
+      are provided in the request.
+ +
add_insert(self, entry, batch_id_string=None)
Add an insert request to the operations in this batch request feed.

+If the entry doesn't yet have an operation or a batch id, these will
+be set to the insert operation and a batch_id specified as a parameter.

+Args:
+  entry: BatchEntry The entry which will be sent in the batch feed as an
+      insert request.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+ +
add_query(self, url_string=None, entry=None, batch_id_string=None)
Adds a query request to the batch request feed.

+This method takes either the url_string which is the query URL
+whose results will be added to the result feed. The query URL will
+be encapsulated in a BatchEntry, and you may pass in the BatchEntry
+with a query URL instead of sending a url_string.

+Args:
+  url_string: str (optional)
+  entry: BatchEntry (optional)
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters
+ +
add_update(self, entry, batch_id_string=None)
Add an update request to the list of batch operations in this feed.

+Sets the operation type of the entry to insert if it is not already set
+and assigns the desired batch id to the entry so that it can be
+referenced in the server's response.

+Args:
+  entry: BatchEntry The entry which will be sent to the server as an
+      update (HTTP PUT) request. The item must have a valid atom id
+      so that the server knows which entry to replace.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. See also comments for AddInsert.
+ +
find_batch_link(self)
+ +
+Data and other attributes defined here:
+
entry = [<class 'gdata.data.BatchEntry'>]
+ +
interrupted = <class 'gdata.data.BatchInterrupted'>
The batch:interrupted element sent if batch request was interrupted.

+Only appears in a feed if some of the batch entries could not be processed.
+See: http://code.google.com/apis/gdata/batch.html#Handling_Errors
+ +
+Methods inherited from GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class BatchId(atom.core.XmlElement)
   Identifies a single operation in a batch request.
 
 
Method resolution order:
+
BatchId
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class BatchInterrupted(atom.core.XmlElement)
   The batch:interrupted element sent if batch request was interrupted.

+Only appears in a feed if some of the batch entries could not be processed.
+See: http://code.google.com/apis/gdata/batch.html#Handling_Errors
 
 
Method resolution order:
+
BatchInterrupted
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
failures = 'failures'
+ +
parsed = 'parsed'
+ +
reason = 'reason'
+ +
success = 'success'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class BatchOperation(atom.core.XmlElement)
   The CRUD operation which this batch entry represents.
 
 
Method resolution order:
+
BatchOperation
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
type = 'type'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class BatchStatus(atom.core.XmlElement)
   The batch:status element present in a batch response entry.

+A status element contains the code (HTTP response code) and
+reason as elements. In a single request these fields would
+be part of the HTTP response, but in a batch request each
+Entry operation has a corresponding Entry in the response
+feed which includes status information.

+See http://code.google.com/apis/gdata/batch.html#Handling_Errors
 
 
Method resolution order:
+
BatchStatus
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
code = 'code'
+ +
content_type = 'content-type'
+ +
reason = 'reason'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class City(atom.core.XmlElement)
   The gd:city element.

+Can be city, village, town, borough, etc. This is the postal town and
+not necessarily the place of residence or place of business.
 
 
Method resolution order:
+
City
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Comments(atom.core.XmlElement)
   The gd:comments element.

+Contains a comments feed for the enclosing entry (such as a calendar event).
 
 
Method resolution order:
+
Comments
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
feed_link = <class 'gdata.data.FeedLink'>
The gd:feedLink element.

+Represents a logically nested feed. For example, a calendar feed might
+have a nested feed representing all comments on entries.
+ +
rel = 'rel'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Country(atom.core.XmlElement)
   The gd:country element.

+The name or code of the country.
 
 
Method resolution order:
+
Country
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Deleted(atom.core.XmlElement)
   gd:deleted when present, indicates the containing entry is deleted.
 
 
Method resolution order:
+
Deleted
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Email(EmailImParent)
   The gd:email element.

+An email address associated with the containing entity (which is
+usually an entity representing a person or a location).
 
 
Method resolution order:
+
Email
+
EmailImParent
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
display_name = 'displayName'
+ +
+Data and other attributes inherited from EmailImParent:
+
address = 'address'
+ +
label = 'label'
+ +
primary = 'primary'
+ +
rel = 'rel'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + +
 
+class EmailImParent(atom.core.XmlElement)
    
Method resolution order:
+
EmailImParent
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
address = 'address'
+ +
label = 'label'
+ +
primary = 'primary'
+ +
rel = 'rel'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class EntryLink(atom.core.XmlElement)
   The gd:entryLink element.

+Represents a logically nested entry. For example, a <gd:who>
+representing a contact might have a nested entry from a contact feed.
 
 
Method resolution order:
+
EntryLink
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = <class 'gdata.data.GDEntry'>
Extends Atom Entry to provide data processing
+ +
href = 'href'
+ +
read_only = 'readOnly'
+ +
rel = 'rel'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + +
 
+class Error(exceptions.Exception)
    
Method resolution order:
+
Error
+
exceptions.Exception
+
exceptions.BaseException
+
__builtin__.object
+
+
+Data descriptors defined here:
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from exceptions.Exception:
+
__init__(...)
x.__init__(...) initializes x; see x.__class__.__doc__ for signature
+ +
+Data and other attributes inherited from exceptions.Exception:
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+ +
+Methods inherited from exceptions.BaseException:
+
__delattr__(...)
x.__delattr__('name') <==> del x.name
+ +
__getattribute__(...)
x.__getattribute__('name') <==> x.name
+ +
__getitem__(...)
x.__getitem__(y) <==> x[y]
+ +
__getslice__(...)
x.__getslice__(i, j) <==> x[i:j]

+Use of negative indices is not supported.
+ +
__reduce__(...)
+ +
__repr__(...)
x.__repr__() <==> repr(x)
+ +
__setattr__(...)
x.__setattr__('name', value) <==> x.name = value
+ +
__setstate__(...)
+ +
__str__(...)
x.__str__() <==> str(x)
+ +
__unicode__(...)
+ +
+Data descriptors inherited from exceptions.BaseException:
+
__dict__
+
+
args
+
+
message
+
+

+ + + + + + + +
 
+class ExtendedProperty(atom.core.XmlElement)
   The Google Data extendedProperty element.

+Used to store arbitrary key-value information specific to your
+application. The value can either be a text string stored as an XML
+attribute (.value), or an XML node (XmlBlob) as a child element.

+This element is used in the Google Calendar data API and the Google
+Contacts data API.
 
 
Method resolution order:
+
ExtendedProperty
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods defined here:
+
GetXmlBlob = get_xml_blob(self)
+ +
SetXmlBlob = set_xml_blob(self, blob)
+ +
get_xml_blob(self)
Returns the XML blob as an atom.core.XmlElement.

+Returns:
+  An XmlElement representing the blob's XML, or None if no
+  blob was set.
+ +
set_xml_blob(self, blob)
Sets the contents of the extendedProperty to XML as a child node.

+Since the extendedProperty is only allowed one child element as an XML
+blob, setting the XML blob will erase any preexisting member elements
+in this object.

+Args:
+  blob: str  or atom.core.XmlElement representing the XML blob stored in
+        the extendedProperty.
+ +
+Data and other attributes defined here:
+
name = 'name'
+ +
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class FamilyName(atom.core.XmlElement)
   The gd:familyName element.

+Specifies family name of the person, eg. "Smith".
 
 
Method resolution order:
+
FamilyName
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
yomi = 'yomi'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class FeedLink(atom.core.XmlElement)
   The gd:feedLink element.

+Represents a logically nested feed. For example, a calendar feed might
+have a nested feed representing all comments on entries.
 
 
Method resolution order:
+
FeedLink
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
count_hint = 'countHint'
+ +
feed = <class 'gdata.data.GDFeed'>
Feed from a GData service.
+ +
href = 'href'
+ +
read_only = 'readOnly'
+ +
rel = 'rel'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class FormattedAddress(atom.core.XmlElement)
   The gd:formattedAddress element.

+The full, unstructured postal address.
 
 
Method resolution order:
+
FormattedAddress
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class FullName(atom.core.XmlElement)
   The gd:fullName element.

+Unstructured representation of the name.
 
 
Method resolution order:
+
FullName
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class GDEntry(atom.data.Entry, LinkFinder)
   Extends Atom Entry to provide data processing
 
 
Method resolution order:
+
GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Methods defined here:
+
FindMediaLink = find_media_link(self)
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes defined here:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class GDFeed(atom.data.Feed, LinkFinder)
   Feed from a GData service.
 
 
Method resolution order:
+
GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Methods defined here:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes defined here:
+
entry = [<class 'gdata.data.GDEntry'>]
+ +
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class GivenName(atom.core.XmlElement)
   The gd:givenName element.

+Specifies given name of the person, eg. "John".
 
 
Method resolution order:
+
GivenName
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
yomi = 'yomi'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class HouseName(atom.core.XmlElement)
   The gd:housename element.

+Used in places where houses or buildings have names (and not
+necessarily numbers), eg. "The Pillars".
 
 
Method resolution order:
+
HouseName
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Im(EmailImParent)
   The gd:im element.

+An instant messaging address associated with the containing entity.
 
 
Method resolution order:
+
Im
+
EmailImParent
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
protocol = 'protocol'
+ +
+Data and other attributes inherited from EmailImParent:
+
address = 'address'
+ +
label = 'label'
+ +
primary = 'primary'
+ +
rel = 'rel'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class ItemsPerPage(atom.core.XmlElement)
   The opensearch:itemsPerPage element in GData feed.
 
 
Method resolution order:
+
ItemsPerPage
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class LinkFinder(atom.data.LinkFinder)
   Mixin used in Feed and Entry classes to simplify link lookups by type.

+Provides lookup methods for edit, edit-media, post, ACL and other special
+links which are common across Google Data APIs.
 
 
Method resolution order:
+
LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Methods defined here:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
+ +
FindPostLink = find_post_link(self)
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +
+Data descriptors inherited from atom.data.LinkFinder:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class MediaSource(__builtin__.object)
   GData Entries can refer to media sources, so this class provides a
+place to store references to these objects along with some metadata.
 
 Methods defined here:
+
ModifyRequest = modify_request(self, http_request)
+ +
SetFileHandle = set_file_handle(self, file_name, content_type)
+ +
__init__(self, file_handle=None, content_type=None, content_length=None, file_path=None, file_name=None)
Creates an object of type MediaSource.

+Args:
+  file_handle: A file handle pointing to the file to be encapsulated in the
+               MediaSource.
+  content_type: string The MIME type of the file. Required if a file_handle
+                is given.
+  content_length: int The size of the file. Required if a file_handle is
+                  given.
+  file_path: string (optional) A full path name to the file. Used in
+                place of a file_handle.
+  file_name: string The name of the file without any path information.
+             Required if a file_handle is given.
+ +
modify_request(self, http_request)
+ +
set_file_handle(self, file_name, content_type)
A helper function which can create a file handle from a given filename
+and set the content type and length all at once.

+Args:
+  file_name: string The path and file name to the file containing the media
+  content_type: string A MIME type representing the type of the media
+ +
+Data descriptors defined here:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + +
 
+class MissingRequiredParameters(Error)
    
Method resolution order:
+
MissingRequiredParameters
+
Error
+
exceptions.Exception
+
exceptions.BaseException
+
__builtin__.object
+
+
+Data descriptors inherited from Error:
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from exceptions.Exception:
+
__init__(...)
x.__init__(...) initializes x; see x.__class__.__doc__ for signature
+ +
+Data and other attributes inherited from exceptions.Exception:
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+ +
+Methods inherited from exceptions.BaseException:
+
__delattr__(...)
x.__delattr__('name') <==> del x.name
+ +
__getattribute__(...)
x.__getattribute__('name') <==> x.name
+ +
__getitem__(...)
x.__getitem__(y) <==> x[y]
+ +
__getslice__(...)
x.__getslice__(i, j) <==> x[i:j]

+Use of negative indices is not supported.
+ +
__reduce__(...)
+ +
__repr__(...)
x.__repr__() <==> repr(x)
+ +
__setattr__(...)
x.__setattr__('name', value) <==> x.name = value
+ +
__setstate__(...)
+ +
__str__(...)
x.__str__() <==> str(x)
+ +
__unicode__(...)
+ +
+Data descriptors inherited from exceptions.BaseException:
+
__dict__
+
+
args
+
+
message
+
+

+ + + + + + + +
 
+class Money(atom.core.XmlElement)
   Describes money
 
 
Method resolution order:
+
Money
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
amount = 'amount'
+ +
currency_code = 'currencyCode'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Name(atom.core.XmlElement)
   The gd:name element.

+Allows storing person's name in a structured way. Consists of
+given name, additional name, family name, prefix, suffix and full name.
 
 
Method resolution order:
+
Name
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
additional_name = <class 'gdata.data.AdditionalName'>
The gd:additionalName element.

+Specifies additional (eg. middle) name of the person.
+Contains an attribute for the phonetic representaton of the name.
+ +
family_name = <class 'gdata.data.FamilyName'>
The gd:familyName element.

+Specifies family name of the person, eg. "Smith".
+ +
full_name = <class 'gdata.data.FullName'>
The gd:fullName element.

+Unstructured representation of the name.
+ +
given_name = <class 'gdata.data.GivenName'>
The gd:givenName element.

+Specifies given name of the person, eg. "John".
+ +
name_prefix = <class 'gdata.data.NamePrefix'>
The gd:namePrefix element.

+Honorific prefix, eg. 'Mr' or 'Mrs'.
+ +
name_suffix = <class 'gdata.data.NameSuffix'>
The gd:nameSuffix element.

+Honorific suffix, eg. 'san' or 'III'.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class NamePrefix(atom.core.XmlElement)
   The gd:namePrefix element.

+Honorific prefix, eg. 'Mr' or 'Mrs'.
 
 
Method resolution order:
+
NamePrefix
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class NameSuffix(atom.core.XmlElement)
   The gd:nameSuffix element.

+Honorific suffix, eg. 'san' or 'III'.
 
 
Method resolution order:
+
NameSuffix
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Neighborhood(atom.core.XmlElement)
   The gd:neighborhood element.

+This is used to disambiguate a street address when a city contains more
+than one street with the same name, or to specify a small place whose
+mail is routed through a larger postal town. In China it could be a
+county or a minor city.
 
 
Method resolution order:
+
Neighborhood
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class OrgDepartment(atom.core.XmlElement)
   The gd:orgDepartment element.

+Describes a department within an organization. Must appear within a
+gd:organization element.
 
 
Method resolution order:
+
OrgDepartment
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class OrgJobDescription(atom.core.XmlElement)
   The gd:orgJobDescription element.

+Describes a job within an organization. Must appear within a
+gd:organization element.
 
 
Method resolution order:
+
OrgJobDescription
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class OrgName(atom.core.XmlElement)
   The gd:orgName element.

+The name of the organization. Must appear within a gd:organization
+element.

+Contains a Yomigana attribute (Japanese reading aid) for the
+organization name.
 
 
Method resolution order:
+
OrgName
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
yomi = 'yomi'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class OrgSymbol(atom.core.XmlElement)
   The gd:orgSymbol element.

+Provides a symbol of an organization. Must appear within a
+gd:organization element.
 
 
Method resolution order:
+
OrgSymbol
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class OrgTitle(atom.core.XmlElement)
   The gd:orgTitle element.

+The title of a person within an organization. Must appear within a
+gd:organization element.
 
 
Method resolution order:
+
OrgTitle
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Organization(atom.core.XmlElement)
   The gd:organization element.

+An organization, typically associated with a contact.
 
 
Method resolution order:
+
Organization
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
department = <class 'gdata.data.OrgDepartment'>
The gd:orgDepartment element.

+Describes a department within an organization. Must appear within a
+gd:organization element.
+ +
job_description = <class 'gdata.data.OrgJobDescription'>
The gd:orgJobDescription element.

+Describes a job within an organization. Must appear within a
+gd:organization element.
+ +
label = 'label'
+ +
name = <class 'gdata.data.OrgName'>
The gd:orgName element.

+The name of the organization. Must appear within a gd:organization
+element.

+Contains a Yomigana attribute (Japanese reading aid) for the
+organization name.
+ +
primary = 'primary'
+ +
rel = 'rel'
+ +
symbol = <class 'gdata.data.OrgSymbol'>
The gd:orgSymbol element.

+Provides a symbol of an organization. Must appear within a
+gd:organization element.
+ +
title = <class 'gdata.data.OrgTitle'>
The gd:orgTitle element.

+The title of a person within an organization. Must appear within a
+gd:organization element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class OriginalEvent(atom.core.XmlElement)
   The gd:originalEvent element.

+Equivalent to the Recurrence ID property specified in section 4.8.4.4
+of RFC 2445. Appears in every instance of a recurring event, to identify
+the original event.

+Contains a <gd:when> element specifying the original start time of the
+instance that has become an exception.
 
 
Method resolution order:
+
OriginalEvent
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
href = 'href'
+ +
id = 'id'
+ +
when = <class 'gdata.data.When'>
The gd:when element.

+Represents a period of time or an instant.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class PhoneNumber(atom.core.XmlElement)
   The gd:phoneNumber element.

+A phone number associated with the containing entity (which is usually
+an entity representing a person or a location).
 
 
Method resolution order:
+
PhoneNumber
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
label = 'label'
+ +
primary = 'primary'
+ +
rel = 'rel'
+ +
uri = 'uri'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class PoBox(atom.core.XmlElement)
   The gd:pobox element.

+Covers actual P.O. boxes, drawers, locked bags, etc. This is usually
+but not always mutually exclusive with street.
 
 
Method resolution order:
+
PoBox
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class PostalAddress(atom.core.XmlElement)
   The gd:postalAddress element.
 
 
Method resolution order:
+
PostalAddress
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
label = 'label'
+ +
primary = 'primary'
+ +
rel = 'rel'
+ +
uri = 'uri'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Postcode(atom.core.XmlElement)
   The gd:postcode element.

+Postal code. Usually country-wide, but sometimes specific to the
+city (e.g. "2" in "Dublin 2, Ireland" addresses).
 
 
Method resolution order:
+
Postcode
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Rating(atom.core.XmlElement)
   The gd:rating element.

+Represents a numeric rating of the enclosing entity, such as a
+comment. Each rating supplies its own scale, although it may be
+normalized by a service; for example, some services might convert all
+ratings to a scale from 1 to 5.
 
 
Method resolution order:
+
Rating
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
average = 'average'
+ +
max = 'max'
+ +
min = 'min'
+ +
num_raters = 'numRaters'
+ +
rel = 'rel'
+ +
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Recurrence(atom.core.XmlElement)
   The gd:recurrence element.

+Represents the dates and times when a recurring event takes place.

+The string that defines the recurrence consists of a set of properties,
+each of which is defined in the iCalendar standard (RFC 2445).

+Specifically, the string usually begins with a DTSTART property that
+indicates the starting time of the first instance of the event, and
+often a DTEND property or a DURATION property to indicate when the
+first instance ends. Next come RRULE, RDATE, EXRULE, and/or EXDATE
+properties, which collectively define a recurring event and its
+exceptions (but see below). (See section 4.8.5 of RFC 2445 for more
+information about these recurrence component properties.) Last comes a
+VTIMEZONE component, providing detailed timezone rules for any timezone
+ID mentioned in the preceding properties.

+Google services like Google Calendar don't generally generate EXRULE
+and EXDATE properties to represent exceptions to recurring events;
+instead, they generate <gd:recurrenceException> elements. However,
+Google services may include EXRULE and/or EXDATE properties anyway;
+for example, users can import events and exceptions into Calendar, and
+if those imported events contain EXRULE or EXDATE properties, then
+Calendar will provide those properties when it sends a <gd:recurrence>
+element.

+Note the the use of <gd:recurrenceException> means that you can't be
+sure just from examining a <gd:recurrence> element whether there are
+any exceptions to the recurrence description. To ensure that you find
+all exceptions, look for <gd:recurrenceException> elements in the feed,
+and use their <gd:originalEvent> elements to match them up with
+<gd:recurrence> elements.
 
 
Method resolution order:
+
Recurrence
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class RecurrenceException(atom.core.XmlElement)
   The gd:recurrenceException element.

+Represents an event that's an exception to a recurring event-that is,
+an instance of a recurring event in which one or more aspects of the
+recurring event (such as attendance list, time, or location) have been
+changed.

+Contains a <gd:originalEvent> element that specifies the original
+recurring event that this event is an exception to.

+When you change an instance of a recurring event, that instance becomes
+an exception. Depending on what change you made to it, the exception
+behaves in either of two different ways when the original recurring
+event is changed:

+- If you add, change, or remove comments, attendees, or attendee
+  responses, then the exception remains tied to the original event, and
+  changes to the original event also change the exception.
+- If you make any other changes to the exception (such as changing the
+  time or location) then the instance becomes "specialized," which means
+  that it's no longer as tightly tied to the original event. If you
+  change the original event, specialized exceptions don't change. But
+  see below.

+For example, say you have a meeting every Tuesday and Thursday at
+2:00 p.m. If you change the attendance list for this Thursday's meeting
+(but not for the regularly scheduled meeting), then it becomes an
+exception. If you change the time for this Thursday's meeting (but not
+for the regularly scheduled meeting), then it becomes specialized.

+Regardless of whether an exception is specialized or not, if you do
+something that deletes the instance that the exception was derived from,
+then the exception is deleted. Note that changing the day or time of a
+recurring event deletes all instances, and creates new ones.

+For example, after you've specialized this Thursday's meeting, say you
+change the recurring meeting to happen on Monday, Wednesday, and Friday.
+That change deletes all of the recurring instances of the
+Tuesday/Thursday meeting, including the specialized one.

+If a particular instance of a recurring event is deleted, then that
+instance appears as a <gd:recurrenceException> containing a
+<gd:entryLink> that has its <gd:eventStatus> set to
+"http://schemas.google.com/g/2005#event.canceled". (For more
+information about canceled events, see RFC 2445.)
 
 
Method resolution order:
+
RecurrenceException
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry_link = <class 'gdata.data.EntryLink'>
The gd:entryLink element.

+Represents a logically nested entry. For example, a <gd:who>
+representing a contact might have a nested entry from a contact feed.
+ +
original_event = <class 'gdata.data.OriginalEvent'>
The gd:originalEvent element.

+Equivalent to the Recurrence ID property specified in section 4.8.4.4
+of RFC 2445. Appears in every instance of a recurring event, to identify
+the original event.

+Contains a <gd:when> element specifying the original start time of the
+instance that has become an exception.
+ +
specialized = 'specialized'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Region(atom.core.XmlElement)
   The gd:region element.

+A state, province, county (in Ireland), Land (in Germany),
+departement (in France), etc.
 
 
Method resolution order:
+
Region
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Reminder(atom.core.XmlElement)
   The gd:reminder element.

+A time interval, indicating how long before the containing entity's start
+time or due time attribute a reminder should be issued. Alternatively,
+may specify an absolute time at which a reminder should be issued. Also
+specifies a notification method, indicating what medium the system
+should use to remind the user.
 
 
Method resolution order:
+
Reminder
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
absolute_time = 'absoluteTime'
+ +
days = 'days'
+ +
hours = 'hours'
+ +
method = 'method'
+ +
minutes = 'minutes'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class StartIndex(atom.core.XmlElement)
   The opensearch:startIndex element in GData feed.
 
 
Method resolution order:
+
StartIndex
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Street(atom.core.XmlElement)
   The gd:street element.

+Can be street, avenue, road, etc. This element also includes the
+house number and room/apartment/flat/floor number.
 
 
Method resolution order:
+
Street
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class StructuredPostalAddress(atom.core.XmlElement)
   The gd:structuredPostalAddress element.

+Postal address split into components. It allows to store the address
+in locale independent format. The fields can be interpreted and used
+to generate formatted, locale dependent address. The following elements
+reperesent parts of the address: agent, house name, street, P.O. box,
+neighborhood, city, subregion, region, postal code, country. The
+subregion element is not used for postal addresses, it is provided for
+extended uses of addresses only. In order to store postal address in an
+unstructured form formatted address field is provided.
 
 
Method resolution order:
+
StructuredPostalAddress
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
agent = <class 'gdata.data.Agent'>
The gd:agent element.

+The agent who actually receives the mail. Used in work addresses.
+Also for 'in care of' or 'c/o'.
+ +
city = <class 'gdata.data.City'>
The gd:city element.

+Can be city, village, town, borough, etc. This is the postal town and
+not necessarily the place of residence or place of business.
+ +
country = <class 'gdata.data.Country'>
The gd:country element.

+The name or code of the country.
+ +
formatted_address = <class 'gdata.data.FormattedAddress'>
The gd:formattedAddress element.

+The full, unstructured postal address.
+ +
house_name = <class 'gdata.data.HouseName'>
The gd:housename element.

+Used in places where houses or buildings have names (and not
+necessarily numbers), eg. "The Pillars".
+ +
label = 'label'
+ +
mail_class = 'mailClass'
+ +
neighborhood = <class 'gdata.data.Neighborhood'>
The gd:neighborhood element.

+This is used to disambiguate a street address when a city contains more
+than one street with the same name, or to specify a small place whose
+mail is routed through a larger postal town. In China it could be a
+county or a minor city.
+ +
po_box = <class 'gdata.data.PoBox'>
The gd:pobox element.

+Covers actual P.O. boxes, drawers, locked bags, etc. This is usually
+but not always mutually exclusive with street.
+ +
postcode = <class 'gdata.data.Postcode'>
The gd:postcode element.

+Postal code. Usually country-wide, but sometimes specific to the
+city (e.g. "2" in "Dublin 2, Ireland" addresses).
+ +
primary = 'primary'
+ +
region = <class 'gdata.data.Region'>
The gd:region element.

+A state, province, county (in Ireland), Land (in Germany),
+departement (in France), etc.
+ +
rel = 'rel'
+ +
street = <class 'gdata.data.Street'>
The gd:street element.

+Can be street, avenue, road, etc. This element also includes the
+house number and room/apartment/flat/floor number.
+ +
subregion = <class 'gdata.data.Subregion'>
The gd:subregion element.

+Handles administrative districts such as U.S. or U.K. counties that are
+not used for mail addressing purposes. Subregion is not intended for
+delivery addresses.
+ +
usage = 'usage'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Subregion(atom.core.XmlElement)
   The gd:subregion element.

+Handles administrative districts such as U.S. or U.K. counties that are
+not used for mail addressing purposes. Subregion is not intended for
+delivery addresses.
 
 
Method resolution order:
+
Subregion
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class TotalResults(atom.core.XmlElement)
   opensearch:TotalResults for a GData feed.
 
 
Method resolution order:
+
TotalResults
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class When(atom.core.XmlElement)
   The gd:when element.

+Represents a period of time or an instant.
 
 
Method resolution order:
+
When
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
end = 'endTime'
+ +
start = 'startTime'
+ +
value = 'valueString'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Where(atom.core.XmlElement)
   The gd:where element.

+A place (such as an event location) associated with the containing
+entity. The type of the association is determined by the rel attribute;
+the details of the location are contained in an embedded or linked-to
+Contact entry.

+A <gd:where> element is more general than a <gd:geoPt> element. The
+former identifies a place using a text description and/or a Contact
+entry, while the latter identifies a place using a specific geographic
+location.
 
 
Method resolution order:
+
Where
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry_link = <class 'gdata.data.EntryLink'>
The gd:entryLink element.

+Represents a logically nested entry. For example, a <gd:who>
+representing a contact might have a nested entry from a contact feed.
+ +
label = 'label'
+ +
rel = 'rel'
+ +
value = 'valueString'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Who(atom.core.XmlElement)
   The gd:who element.

+A person associated with the containing entity. The type of the
+association is determined by the rel attribute; the details about the
+person are contained in an embedded or linked-to Contact entry.

+The <gd:who> element can be used to specify email senders and
+recipients, calendar event organizers, and so on.
 
 
Method resolution order:
+
Who
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
attendee_status = <class 'gdata.data.AttendeeStatus'>
The gd:attendeeStatus element.
+ +
attendee_type = <class 'gdata.data.AttendeeType'>
The gd:attendeeType element.
+ +
email = 'email'
+ +
entry_link = <class 'gdata.data.EntryLink'>
The gd:entryLink element.

+Represents a logically nested entry. For example, a <gd:who>
+representing a contact might have a nested entry from a contact feed.
+ +
rel = 'rel'
+ +
value = 'valueString'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + +
 
+Data
       ACL_REL = 'http://schemas.google.com/acl/2007#accessControlList'
+AIM_PROTOCOL = 'http://schemas.google.com/g/2005#AIM'
+ALTERNATE_LOCATION = 'http://schemas.google.com/g/2005#event.alternate'
+ASSISTANT_REL = 'http://schemas.google.com/g/2005#assistant'
+ATTENDEE_ACCEPTED = 'http://schemas.google.com/g/2005#event.accepted'
+ATTENDEE_DECLINED = 'http://schemas.google.com/g/2005#event.declined'
+ATTENDEE_INVITED = 'http://schemas.google.com/g/2005#event.invited'
+ATTENDEE_TENTATIVE = 'http://schemas.google.com/g/2005#event.tentative'
+BASIC_PROJECTION = 'basic'
+BATCH_DELETE = 'delete'
+BATCH_INSERT = 'insert'
+BATCH_QUERY = 'query'
+BATCH_TEMPLATE = '{http://schemas.google.com/gdata/batch}%s'
+BATCH_UPDATE = 'update'
+BCC_RECIPIENT = 'http://schemas.google.com/g/2005#message.bcc'
+CALLBACK_REL = 'http://schemas.google.com/g/2005#callback'
+CANCELED_EVENT = 'http://schemas.google.com/g/2005#event.canceled'
+CAR_REL = 'http://schemas.google.com/g/2005#car'
+CC_RECIPIENT = 'http://schemas.google.com/g/2005#message.cc'
+CHAT_MESSAGE = 'http://schemas.google.com/g/2005#message.chat'
+COMPANY_MAIN_REL = 'http://schemas.google.com/g/2005#company_main'
+CONFIDENTIAL_EVENT = 'http://schemas.google.com/g/2005#event.confidential'
+CONFIRMED_EVENT = 'http://schemas.google.com/g/2005#event.confirmed'
+DEFAULT_EVENT = 'http://schemas.google.com/g/2005#event.default'
+EVENT_ALTERNATE_REL = 'http://schemas.google.com/g/2005#event.alternate'
+EVENT_LOCATION = 'http://schemas.google.com/g/2005#event'
+EVENT_PARKING_REL = 'http://schemas.google.com/g/2005#event.parking'
+EVENT_REL = 'http://schemas.google.com/g/2005#event'
+FAX_REL = 'http://schemas.google.com/g/2005#fax'
+FULL_PROJECTION = 'full'
+GDATA_TEMPLATE = '{http://schemas.google.com/g/2005}%s'
+GD_TEMPLATE = '{http://schemas.google.com/g/2005}%s'
+GENERAL_ADDRESS = 'http://schemas.google.com/g/2005#general'
+GOOGLE_TALK_PROTOCOL = 'http://schemas.google.com/g/2005#GOOGLE_TALK'
+HOME_FAX_REL = 'http://schemas.google.com/g/2005#home_fax'
+HOME_REL = 'http://schemas.google.com/g/2005#home'
+ICQ_PROTOCOL = 'http://schemas.google.com/g/2005#ICQ'
+INBOX_MESSAGE = 'http://schemas.google.com/g/2005#message.inbox'
+ISDN_REL = 'http://schemas.google.com/g/2005#isdn'
+JABBER_PROTOCOL = 'http://schemas.google.com/g/2005#JABBER'
+LOCAL_ADDRESS = 'http://schemas.google.com/g/2005#local'
+MAIL_BOTH = 'http://schemas.google.com/g/2005#both'
+MAIL_LETTERS = 'http://schemas.google.com/g/2005#letters'
+MAIL_NEITHER = 'http://schemas.google.com/g/2005#neither'
+MAIL_PARCELS = 'http://schemas.google.com/g/2005#parcels'
+MAIN_REL = 'http://schemas.google.com/g/2005#main'
+MOBILE_REL = 'http://schemas.google.com/g/2005#mobile'
+MSN_PROTOCOL = 'http://schemas.google.com/g/2005#MSN'
+NETMEETING_REL = 'http://schemas.google.com/g/2005#netmeeting'
+OPAQUE_EVENT = 'http://schemas.google.com/g/2005#event.opaque'
+OPENSEARCH_TEMPLATE_V1 = '{http://a9.com/-/spec/opensearchrss/1.0/}%s'
+OPENSEARCH_TEMPLATE_V2 = '{http://a9.com/-/spec/opensearch/1.1/}%s'
+OPTIONAL_ATENDEE = 'http://schemas.google.com/g/2005#event.optional'
+OTHER_FAX_REL = 'http://schemas.google.com/g/2005#other_fax'
+OTHER_REL = 'http://schemas.google.com/g/2005#other'
+OVERALL_REL = 'http://schemas.google.com/g/2005#overall'
+PAGER_REL = 'http://schemas.google.com/g/2005#pager'
+PARKING_LOCATION = 'http://schemas.google.com/g/2005#event.parking'
+PRICE_REL = 'http://schemas.google.com/g/2005#price'
+PRIVATE_EVENT = 'http://schemas.google.com/g/2005#event.private'
+PRIVATE_VISIBILITY = 'private'
+PUBLIC_EVENT = 'http://schemas.google.com/g/2005#event.public'
+PUBLIC_VISIBILITY = 'public'
+QQ_PROTOCOL = 'http://schemas.google.com/g/2005#QQ'
+QUALITY_REL = 'http://schemas.google.com/g/2005#quality'
+RADIO_REL = 'http://schemas.google.com/g/2005#radio'
+REGULAR_COMMENTS = 'http://schemas.google.com/g/2005#regular'
+REPLY_TO = 'http://schemas.google.com/g/2005#message.reply-to'
+REQUIRED_ATENDEE = 'http://schemas.google.com/g/2005#event.required'
+REVIEW_COMMENTS = 'http://schemas.google.com/g/2005#reviews'
+SENDER = 'http://schemas.google.com/g/2005#message.from'
+SENT_MESSAGE = 'http://schemas.google.com/g/2005#message.sent'
+SKYPE_PROTOCOL = 'http://schemas.google.com/g/2005#SKYPE'
+SPAM_MESSAGE = 'http://schemas.google.com/g/2005#message.spam'
+STARRED_MESSAGE = 'http://schemas.google.com/g/2005#message.starred'
+TELEX_REL = 'http://schemas.google.com/g/2005#telex'
+TENTATIVE_EVENT = 'http://schemas.google.com/g/2005#event.tentative'
+TO_RECIPIENT = 'http://schemas.google.com/g/2005#message.to'
+TRANSPARENT_EVENT = 'http://schemas.google.com/g/2005#event.transparent'
+TTL_TDD_REL = 'http://schemas.google.com/g/2005#tty_tdd'
+UNREAD_MESSAGE = 'http://schemas.google.com/g/2005#message.unread'
+VALUES_PROJECTION = 'values'
+WORK_FAX_REL = 'http://schemas.google.com/g/2005#work_fax'
+WORK_MOBILE_REL = 'http://schemas.google.com/g/2005#work_mobile'
+WORK_PAGER_REL = 'http://schemas.google.com/g/2005#work_pager'
+WORK_REL = 'http://schemas.google.com/g/2005#work'
+YAHOO_MESSENGER_PROTOCOL = 'http://schemas.google.com/g/2005#YAHOO'
+__author__ = 'j.s@google.com (Jeff Scudder)'

+ + + + + +
 
+Author
       j.s@google.com (Jeff Scudder)
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.docs.client.html python-gdata-2.0.8/pydocs/gdata.docs.client.html --- python-gdata-1.2.4/pydocs/gdata.docs.client.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.docs.client.html 2010-02-26 23:16:48.000000000 +0000 @@ -0,0 +1,908 @@ + + +Python: module gdata.docs.client + + + + +
 
+ 
gdata.docs.client
index
/usr/local/svn/gdata-python-client/src/gdata/docs/client.py
+

DocsClient extends gdata.client.GDClient to streamline DocList API calls.

+

+ + + + + +
 
+Modules
       
atom
+
gdata
+
mimetypes
+
urllib
+

+ + + + + +
 
+Classes
       
+
gdata.client.GDClient(atom.client.AtomPubClient) +
+
+
DocsClient +
+
+
gdata.client.Query(__builtin__.object) +
+
+
DocsQuery +
+
+
+

+ + + + + + + +
 
+class DocsClient(gdata.client.GDClient)
   Client extension for the Google Documents List API.
 
 
Method resolution order:
+
DocsClient
+
gdata.client.GDClient
+
atom.client.AtomPubClient
+
__builtin__.object
+
+
+Methods defined here:
+
Copy = copy(self, source_entry, title, auth_token=None, **kwargs)
+ +
Create = create(self, doc_type, title, folder_or_id=None, writers_can_invite=None, auth_token=None, **kwargs)
+ +
Download = download(self, entry_or_id_or_url, file_path, extra_params=None, auth_token=None, **kwargs)
+ +
Export = export(self, entry_or_id_or_url, file_path, gid=None, auth_token=None, **kwargs)
+ +
GetAclPermissions = get_acl_permissions(self, resource_id, auth_token=None, **kwargs)
+ +
GetDoc = get_doc(self, resource_id, etag=None, auth_token=None, **kwargs)
+ +
GetDocList = get_doclist(self, uri=None, limit=None, auth_token=None, **kwargs)
+ +
GetEverything = get_everything(self, uri=None, auth_token=None, **kwargs)
+ +
GetFileContent = get_file_content(self, uri, auth_token=None, **kwargs)
+ +
GetRevisions = get_revisions(self, resource_id, auth_token=None, **kwargs)
+ +
Move = move(self, source_entry, folder_entry=None, keep_in_folders=False, auth_token=None, **kwargs)
+ +
Upload = upload(self, media, title, folder_or_uri=None, content_type=None, auth_token=None, **kwargs)
+ +
__init__(self, auth_token=None, **kwargs)
Constructs a new client for the DocList API.

+Args:
+  auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or
+      OAuthToken which authorizes this client to edit the user's data.
+  kwargs: The other parameters to pass to gdata.client.GDClient constructor.
+ +
copy(self, source_entry, title, auth_token=None, **kwargs)
Copies a native Google document, spreadsheet, or presentation.

+Note: arbitrary file types and PDFs do not support this feature.

+Args:
+  source_entry: gdata.docs.data.DocsEntry An object representing the source
+      document/folder.
+  title: str A title for the new document.
+  auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or
+      OAuthToken which authorizes this client to edit the user's data.
+  kwargs: Other parameters to pass to post().

+Returns:
+  A gdata.docs.data.DocsEntry of the duplicated document.
+ +
create(self, doc_type, title, folder_or_id=None, writers_can_invite=None, auth_token=None, **kwargs)
Creates a new item in the user's doclist.

+Args:
+  doc_type: str The type of object to create. For example: 'document',
+      'spreadsheet', 'folder', 'presentation'.
+  title: str A title for the document.
+  folder_or_id: gdata.docs.data.DocsEntry or str (optional) Folder entry or
+      the resouce id of a folder to create the object under. Note: A valid
+      resource id for a folder is of the form: folder%3Afolder_id.
+  writers_can_invite: bool (optional) False prevents collaborators from
+      being able to invite others to edit or view the document.
+  auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or
+      OAuthToken which authorizes this client to edit the user's data.
+  kwargs: Other parameters to pass to post().

+Returns:
+  gdata.docs.data.DocsEntry containing information newly created item.
+ +
download(self, entry_or_id_or_url, file_path, extra_params=None, auth_token=None, **kwargs)
Downloads a file from the Document List to local disk.

+Note: to download a file in memory, use the GetFileContent() method.

+Args:
+  entry_or_id_or_url: gdata.docs.data.DocsEntry or string representing a
+      resource id or URL to download the document from (such as the content
+      src link).
+  file_path: str The full path to save the file to.
+  extra_params: dict (optional) A map of any further parameters to control
+      how the document is downloaded/exported. For example, exporting a
+      spreadsheet as a .csv: extra_params={'gid': 0, 'exportFormat': 'csv'}
+  auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or
+      OAuthToken which authorizes this client to edit the user's data.
+  kwargs: Other parameters to pass to _download_file().

+Raises:
+  gdata.client.RequestError if the download URL is malformed or the server's
+  response was not successful.
+  ValueError if entry_or_id_or_url was a resource id for a filetype
+  in which the download link cannot be manually constructed (e.g. pdf).
+ +
export(self, entry_or_id_or_url, file_path, gid=None, auth_token=None, **kwargs)
Exports a document from the Document List in a different format.

+Args:
+  entry_or_id_or_url: gdata.docs.data.DocsEntry or string representing a
+      resource id or URL to download the document from (such as the content
+      src link).
+  file_path: str The full path to save the file to.  The export
+      format is inferred from the the file extension.
+  gid: str (optional) grid id for downloading a single grid of a
+      spreadsheet. The param should only be used for .csv and .tsv
+      spreadsheet exports.
+  auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or
+      OAuthToken which authorizes this client to edit the user's data.
+  kwargs: Other parameters to pass to download().

+Raises:
+  gdata.client.RequestError if the download URL is malformed or the server's
+  response was not successful.
+ +
get_acl_permissions(self, resource_id, auth_token=None, **kwargs)
Retrieves a the ACL sharing permissions for a document.

+Args:
+  resource_id: str The document/item's resource id. Example for pdf:
+      'pdf%3A0A1234567890'.
+  auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or
+      OAuthToken which authorizes this client to edit the user's data.
+  kwargs: Other parameters to pass to get_feed().

+Returns:
+  A gdata.docs.data.AclFeed object representing the document's ACL entries.

+Raises:
+  ValueError if the resource_id is not a valid format.
+ +
get_doc(self, resource_id, etag=None, auth_token=None, **kwargs)
Retrieves a particular document given by its resource id.

+Args:
+  resource_id: str The document/item's resource id. Example spreadsheet:
+      'spreadsheet%3A0A1234567890'.
+  etag: str (optional) The document/item's etag value to be used in a
+      conditional GET. See http://code.google.com/apis/documents/docs/3.0/
+      developers_guide_protocol.html#RetrievingCached.
+  auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or
+      OAuthToken which authorizes this client to edit the user's data.
+  kwargs: Other parameters to pass to get_entry().

+Returns:
+  A gdata.docs.data.DocsEntry object representing the retrieved entry.

+Raises:
+  ValueError if the resource_id is not a valid format.
+ +
get_doclist(self, uri=None, limit=None, auth_token=None, **kwargs)
Retrieves the main doclist feed containing the user's items.

+Args:
+  uri: str (optional) A URI to query the doclist feed.
+  limit: int (optional) A maximum cap for the number of results to
+      return in the feed. By default, the API returns a maximum of 100
+      per page. Thus, if you set limit=5000, you will get <= 5000
+      documents (guarenteed no more than 5000), and will need to follow the
+      feed's next links (feed.GetNextLink()) to the rest. See
+      get_everything(). Similarly, if you set limit=50, only <= 50
+      documents are returned. Note: if the max-results parameter is set in
+      the uri parameter, it is chosen over a value set for limit.
+  auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or
+      OAuthToken which authorizes this client to edit the user's data.
+  kwargs: Other parameters to pass to get_feed().

+Returns:
+  gdata.docs.data.DocList feed.
+ +
get_everything(self, uri=None, auth_token=None, **kwargs)
Retrieves the user's entire doc list.

+The method makes multiple HTTP requests (by following the feed's next links)
+in order to fetch the user's entire document list.

+Args:
+  uri: str (optional) A URI to query the doclist feed with.
+  auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or
+      OAuthToken which authorizes this client to edit the user's data.
+  kwargs: Other parameters to pass to GetDocList().

+Returns:
+  A list of gdata.docs.data.DocsEntry objects representing the retrieved
+  entries.
+ +
get_file_content(self, uri, auth_token=None, **kwargs)
Fetches the file content from the specified uri.

+This method is useful for downloading/exporting a file within enviornments
+like Google App Engine, where the user does not have the ability to write
+the file to a local disk.

+Args:
+  uri: str The full URL to fetch the file contents from.
+  auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or
+      OAuthToken which authorizes this client to edit the user's data.
+  kwargs: Other parameters to pass to request().

+Returns:
+  The binary file content.

+Raises:
+  gdata.client.RequestError: on error response from server.
+ +
get_revisions(self, resource_id, auth_token=None, **kwargs)
Retrieves the revision history for a document.

+Args:
+  resource_id: str The document/item's resource id. Example for pdf:
+      'pdf%3A0A1234567890'.
+  auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or
+      OAuthToken which authorizes this client to edit the user's data.
+  kwargs: Other parameters to pass to get_feed().

+Returns:
+  A gdata.docs.data.RevisionFeed representing the document's revisions.

+Raises:
+  ValueError if the resource_id is not a valid format.
+ +
move(self, source_entry, folder_entry=None, keep_in_folders=False, auth_token=None, **kwargs)
Moves an item into a different folder (or to the root document list).

+Args:
+  source_entry: gdata.docs.data.DocsEntry An object representing the source
+      document/folder.
+  folder_entry: gdata.docs.data.DocsEntry (optional) An object representing
+      the destination folder. If None, set keep_in_folders to
+      True to remove the item from all parent folders.
+  keep_in_folders: boolean (optional) If True, the source entry
+      is not removed from any existing parent folders it is in.
+  auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or
+      OAuthToken which authorizes this client to edit the user's data.
+  kwargs: Other parameters to pass to post().

+Returns:
+  A gdata.docs.data.DocsEntry of the moved entry or True if just moving the
+  item out of all folders (e.g. Move(source_entry)).
+ +
upload(self, media, title, folder_or_uri=None, content_type=None, auth_token=None, **kwargs)
Uploads a file to Google Docs.

+Args:
+  media: A gdata.data.MediaSource object containing the file to be
+      uploaded or a string of the filepath.
+  title: str The title of the document on the server after being
+      uploaded.
+  folder_or_uri: gdata.docs.data.DocsEntry or str (optional) An object with
+      a link to the folder or the uri to upload the file to.
+      Note: A valid uri for a folder is of the form:
+            /feeds/default/private/full/folder%3Afolder_id/contents
+  content_type: str (optional) The file's mimetype. If not provided, the
+      one in the media source object is used or the mimetype is inferred
+      from the filename (if media is a string). When media is a filename,
+      it is always recommended to pass in a content type.
+  auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or
+      OAuthToken which authorizes this client to edit the user's data.
+  kwargs: Other parameters to pass to post().

+Returns:
+  A gdata.docs.data.DocsEntry containing information about uploaded doc.
+ +
+Data and other attributes defined here:
+
api_version = '3.0'
+ +
auth_scopes = ('https://docs.google.com/feeds/', 'http://docs.google.com/feeds/')
+ +
auth_service = 'writely'
+ +
host = 'docs.google.com'
+ +
+Methods inherited from gdata.client.GDClient:
+
ClientLogin = client_login(self, email, password, source, service=None, account_type='HOSTED_OR_GOOGLE', auth_url=<atom.http_core.Uri object at 0xbdf9d0>, captcha_token=None, captcha_response=None)
Performs an auth request using the user's email address and password.

+In order to modify user specific data and read user private data, your
+application must be authorized by the user. One way to demonstrage
+authorization is by including a Client Login token in the Authorization
+HTTP header of all requests. This method requests the Client Login token
+by sending the user's email address, password, the name of the
+application, and the service code for the service which will be accessed
+by the application. If the username and password are correct, the server
+will respond with the client login code and a new ClientLoginToken
+object will be set in the client's auth_token member. With the auth_token
+set, future requests from this client will include the Client Login
+token.

+For a list of service names, see 
+http://code.google.com/apis/gdata/faq.html#clientlogin
+For more information on Client Login, see:
+http://code.google.com/apis/accounts/docs/AuthForInstalledApps.html

+Args:
+  email: str The user's email address or username.
+  password: str The password for the user's account.
+  source: str The name of your application. This can be anything you
+          like but should should give some indication of which app is
+          making the request.
+  service: str The service code for the service you would like to access.
+           For example, 'cp' for contacts, 'cl' for calendar. For a full
+           list see
+           http://code.google.com/apis/gdata/faq.html#clientlogin
+           If you are using a subclass of the gdata.client.GDClient, the
+           service will usually be filled in for you so you do not need
+           to specify it. For example see BloggerClient,
+           SpreadsheetsClient, etc.
+  account_type: str (optional) The type of account which is being
+                authenticated. This can be either 'GOOGLE' for a Google
+                Account, 'HOSTED' for a Google Apps Account, or the
+                default 'HOSTED_OR_GOOGLE' which will select the Google
+                Apps Account if the same email address is used for both
+                a Google Account and a Google Apps Account.
+  auth_url: str (optional) The URL to which the login request should be
+            sent.
+  captcha_token: str (optional) If a previous login attempt was reponded
+                 to with a CAPTCHA challenge, this is the token which
+                 identifies the challenge (from the CAPTCHA's URL).
+  captcha_response: str (optional) If a previous login attempt was
+                    reponded to with a CAPTCHA challenge, this is the
+                    response text which was contained in the challenge.

+  Returns:
+    None

+  Raises:
+    A RequestError or one of its suclasses: BadAuthentication,
+    BadAuthenticationServiceURL, ClientLoginFailed,
+    ClientLoginTokenMissing, or CaptchaChallenge
+ +
Delete = delete(self, entry_or_uri, auth_token=None, force=False, **kwargs)
+ +
GetAccessToken = get_access_token(self, request_token, url='https://www.google.com/accounts/OAuthGetAccessToken')
Exchanges an authorized OAuth request token for an access token.

+Contacts the Google OAuth server to upgrade a previously authorized
+request token. Once the request token is upgraded to an access token,
+the access token may be used to access the user's data.

+For more details, see the Google Accounts OAuth documentation:
+http://code.google.com/apis/accounts/docs/OAuth.html#AccessToken

+Args:
+  request_token: An OAuth token which has been authorized by the user.
+  url: (optional) The URL to which the upgrade request should be sent.
+      Defaults to: https://www.google.com/accounts/OAuthAuthorizeToken
+ +
GetEntry = get_entry(self, uri, auth_token=None, converter=None, desired_class=<class 'gdata.data.GDEntry'>, etag=None, **kwargs)
+ +
GetFeed = get_feed(self, uri, auth_token=None, converter=None, desired_class=<class 'gdata.data.GDFeed'>, **kwargs)
+ +
GetNext = get_next(self, feed, auth_token=None, converter=None, desired_class=None, **kwargs)
Fetches the next set of results from the feed.

+When requesting a feed, the number of entries returned is capped at a
+service specific default limit (often 25 entries). You can specify your
+own entry-count cap using the max-results URL query parameter. If there
+are more results than could fit under max-results, the feed will contain
+a next link. This method performs a GET against this next results URL.

+Returns:
+  A new feed object containing the next set of entries in this feed.
+ +
GetOAuthToken = get_oauth_token(self, scopes, next, consumer_key, consumer_secret=None, rsa_private_key=None, url='https://www.google.com/accounts/OAuthGetRequestToken')
Obtains an OAuth request token to allow the user to authorize this app.

+Once this client has a request token, the user can authorize the request
+token by visiting the authorization URL in their browser. After being
+redirected back to this app at the 'next' URL, this app can then exchange
+the authorized request token for an access token.

+For more information see the documentation on Google Accounts with OAuth:
+http://code.google.com/apis/accounts/docs/OAuth.html#AuthProcess

+Args:
+  scopes: list of strings or atom.http_core.Uri objects which specify the
+      URL prefixes which this app will be accessing. For example, to access
+      the Google Calendar API, you would want to use scopes:
+      ['https://www.google.com/calendar/feeds/',
+       'http://www.google.com/calendar/feeds/']
+  next: str or atom.http_core.Uri object, The URL which the user's browser
+      should be sent to after they authorize access to their data. This
+      should be a URL in your application which will read the token
+      information from the URL and upgrade the request token to an access
+      token.
+  consumer_key: str This is the identifier for this application which you
+      should have received when you registered your application with Google
+      to use OAuth.
+  consumer_secret: str (optional) The shared secret between your app and
+      Google which provides evidence that this request is coming from you
+      application and not another app. If present, this libraries assumes
+      you want to use an HMAC signature to verify requests. Keep this data
+      a secret.
+  rsa_private_key: str (optional) The RSA private key which is used to
+      generate a digital signature which is checked by Google's server. If
+      present, this library assumes that you want to use an RSA signature
+      to verify requests. Keep this data a secret.
+  url: The URL to which a request for a token should be made. The default
+      is Google's OAuth request token provider.
+ +
ModifyRequest = modify_request(self, http_request)
Adds or changes request before making the HTTP request.

+This client will add the API version if it is specified.
+Subclasses may override this method to add their own request
+modifications before the request is made.
+ +
Post = post(self, entry, uri, auth_token=None, converter=None, desired_class=None, **kwargs)
+ +
Request = request(self, method=None, uri=None, auth_token=None, http_request=None, converter=None, desired_class=None, redirects_remaining=4, **kwargs)
Make an HTTP request to the server.

+See also documentation for atom.client.AtomPubClient.request.

+If a 302 redirect is sent from the server to the client, this client
+assumes that the redirect is in the form used by the Google Calendar API.
+The same request URI and method will be used as in the original request,
+but a gsessionid URL parameter will be added to the request URI with
+the value provided in the server's 302 redirect response. If the 302
+redirect is not in the format specified by the Google Calendar API, a
+RedirectError will be raised containing the body of the server's
+response.

+The method calls the client's modify_request method to make any changes
+required by the client before the request is made. For example, a
+version 2 client could add a GData-Version: 2 header to the request in
+its modify_request method.

+Args:
+  method: str The HTTP verb for this request, usually 'GET', 'POST',
+          'PUT', or 'DELETE'
+  uri: atom.http_core.Uri, str, or unicode The URL being requested.
+  auth_token: An object which sets the Authorization HTTP header in its
+              modify_request method. Recommended classes include
+              gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken
+              among others.
+  http_request: (optional) atom.http_core.HttpRequest
+  converter: function which takes the body of the response as it's only
+             argument and returns the desired object.
+  desired_class: class descended from atom.core.XmlElement to which a
+                 successful response should be converted. If there is no
+                 converter function specified (converter=None) then the
+                 desired_class will be used in calling the
+                 atom.core.parse function. If neither
+                 the desired_class nor the converter is specified, an
+                 HTTP reponse object will be returned.
+  redirects_remaining: (optional) int, if this number is 0 and the
+                       server sends a 302 redirect, the request method
+                       will raise an exception. This parameter is used in
+                       recursive request calls to avoid an infinite loop.

+Any additional arguments are passed through to
+atom.client.AtomPubClient.request.

+Returns:
+  An HTTP response object (see atom.http_core.HttpResponse for a
+  description of the object's interface) if no converter was
+  specified and no desired_class was specified. If a converter function
+  was provided, the results of calling the converter are returned. If no
+  converter was specified but a desired_class was provided, the response
+  body will be converted to the class using
+  atom.core.parse.
+ +
RequestClientLoginToken = request_client_login_token(self, email, password, source, service=None, account_type='HOSTED_OR_GOOGLE', auth_url=<atom.http_core.Uri object at 0xbdf990>, captcha_token=None, captcha_response=None)
+ +
RevokeToken = revoke_token(self, token=None, url=<atom.http_core.Uri object at 0xbdfa50>)
Requests that the token be invalidated.

+This method can be used for both AuthSub and OAuth tokens (to invalidate
+a ClientLogin token, the user must change their password).

+Returns:
+  True if the server responded with a 200.

+Raises:
+  A RequestError if the server responds with a non-200 status.
+ +
Update = update(self, entry, auth_token=None, force=False, **kwargs)
Edits the entry on the server by sending the XML for this entry.

+Performs a PUT and converts the response to a new entry object with a
+matching class to the entry passed in.

+Args:
+  entry:
+  auth_token:
+  force: boolean stating whether an update should be forced. Defaults to
+         False. Normally, if a change has been made since the passed in
+         entry was obtained, the server will not overwrite the entry since
+         the changes were based on an obsolete version of the entry.
+         Setting force to True will cause the update to silently
+         overwrite whatever version is present.

+Returns:
+  A new Entry object of a matching type to the entry which was passed in.
+ +
UpgradeToken = upgrade_token(self, token=None, url=<atom.http_core.Uri object at 0xbdfa10>)
Asks the Google auth server for a multi-use AuthSub token.

+For details on AuthSub, see:
+http://code.google.com/apis/accounts/docs/AuthSub.html

+Args:
+  token: gdata.gauth.AuthSubToken or gdata.gauth.SecureAuthSubToken
+      (optional) If no token is passed in, the client's auth_token member
+      is used to request the new token. The token object will be modified
+      to contain the new session token string.
+  url: str or atom.http_core.Uri (optional) The URL to which the token
+      upgrade request should be sent. Defaults to:
+      https://www.google.com/accounts/AuthSubSessionToken

+Returns:
+  The upgraded gdata.gauth.AuthSubToken object.
+ +
client_login(self, email, password, source, service=None, account_type='HOSTED_OR_GOOGLE', auth_url=<atom.http_core.Uri object at 0xbdf9d0>, captcha_token=None, captcha_response=None)
Performs an auth request using the user's email address and password.

+In order to modify user specific data and read user private data, your
+application must be authorized by the user. One way to demonstrage
+authorization is by including a Client Login token in the Authorization
+HTTP header of all requests. This method requests the Client Login token
+by sending the user's email address, password, the name of the
+application, and the service code for the service which will be accessed
+by the application. If the username and password are correct, the server
+will respond with the client login code and a new ClientLoginToken
+object will be set in the client's auth_token member. With the auth_token
+set, future requests from this client will include the Client Login
+token.

+For a list of service names, see 
+http://code.google.com/apis/gdata/faq.html#clientlogin
+For more information on Client Login, see:
+http://code.google.com/apis/accounts/docs/AuthForInstalledApps.html

+Args:
+  email: str The user's email address or username.
+  password: str The password for the user's account.
+  source: str The name of your application. This can be anything you
+          like but should should give some indication of which app is
+          making the request.
+  service: str The service code for the service you would like to access.
+           For example, 'cp' for contacts, 'cl' for calendar. For a full
+           list see
+           http://code.google.com/apis/gdata/faq.html#clientlogin
+           If you are using a subclass of the gdata.client.GDClient, the
+           service will usually be filled in for you so you do not need
+           to specify it. For example see BloggerClient,
+           SpreadsheetsClient, etc.
+  account_type: str (optional) The type of account which is being
+                authenticated. This can be either 'GOOGLE' for a Google
+                Account, 'HOSTED' for a Google Apps Account, or the
+                default 'HOSTED_OR_GOOGLE' which will select the Google
+                Apps Account if the same email address is used for both
+                a Google Account and a Google Apps Account.
+  auth_url: str (optional) The URL to which the login request should be
+            sent.
+  captcha_token: str (optional) If a previous login attempt was reponded
+                 to with a CAPTCHA challenge, this is the token which
+                 identifies the challenge (from the CAPTCHA's URL).
+  captcha_response: str (optional) If a previous login attempt was
+                    reponded to with a CAPTCHA challenge, this is the
+                    response text which was contained in the challenge.

+  Returns:
+    None

+  Raises:
+    A RequestError or one of its suclasses: BadAuthentication,
+    BadAuthenticationServiceURL, ClientLoginFailed,
+    ClientLoginTokenMissing, or CaptchaChallenge
+ +
delete(self, entry_or_uri, auth_token=None, force=False, **kwargs)
+ +
get_access_token(self, request_token, url='https://www.google.com/accounts/OAuthGetAccessToken')
Exchanges an authorized OAuth request token for an access token.

+Contacts the Google OAuth server to upgrade a previously authorized
+request token. Once the request token is upgraded to an access token,
+the access token may be used to access the user's data.

+For more details, see the Google Accounts OAuth documentation:
+http://code.google.com/apis/accounts/docs/OAuth.html#AccessToken

+Args:
+  request_token: An OAuth token which has been authorized by the user.
+  url: (optional) The URL to which the upgrade request should be sent.
+      Defaults to: https://www.google.com/accounts/OAuthAuthorizeToken
+ +
get_entry(self, uri, auth_token=None, converter=None, desired_class=<class 'gdata.data.GDEntry'>, etag=None, **kwargs)
+ +
get_feed(self, uri, auth_token=None, converter=None, desired_class=<class 'gdata.data.GDFeed'>, **kwargs)
+ +
get_next(self, feed, auth_token=None, converter=None, desired_class=None, **kwargs)
Fetches the next set of results from the feed.

+When requesting a feed, the number of entries returned is capped at a
+service specific default limit (often 25 entries). You can specify your
+own entry-count cap using the max-results URL query parameter. If there
+are more results than could fit under max-results, the feed will contain
+a next link. This method performs a GET against this next results URL.

+Returns:
+  A new feed object containing the next set of entries in this feed.
+ +
get_oauth_token(self, scopes, next, consumer_key, consumer_secret=None, rsa_private_key=None, url='https://www.google.com/accounts/OAuthGetRequestToken')
Obtains an OAuth request token to allow the user to authorize this app.

+Once this client has a request token, the user can authorize the request
+token by visiting the authorization URL in their browser. After being
+redirected back to this app at the 'next' URL, this app can then exchange
+the authorized request token for an access token.

+For more information see the documentation on Google Accounts with OAuth:
+http://code.google.com/apis/accounts/docs/OAuth.html#AuthProcess

+Args:
+  scopes: list of strings or atom.http_core.Uri objects which specify the
+      URL prefixes which this app will be accessing. For example, to access
+      the Google Calendar API, you would want to use scopes:
+      ['https://www.google.com/calendar/feeds/',
+       'http://www.google.com/calendar/feeds/']
+  next: str or atom.http_core.Uri object, The URL which the user's browser
+      should be sent to after they authorize access to their data. This
+      should be a URL in your application which will read the token
+      information from the URL and upgrade the request token to an access
+      token.
+  consumer_key: str This is the identifier for this application which you
+      should have received when you registered your application with Google
+      to use OAuth.
+  consumer_secret: str (optional) The shared secret between your app and
+      Google which provides evidence that this request is coming from you
+      application and not another app. If present, this libraries assumes
+      you want to use an HMAC signature to verify requests. Keep this data
+      a secret.
+  rsa_private_key: str (optional) The RSA private key which is used to
+      generate a digital signature which is checked by Google's server. If
+      present, this library assumes that you want to use an RSA signature
+      to verify requests. Keep this data a secret.
+  url: The URL to which a request for a token should be made. The default
+      is Google's OAuth request token provider.
+ +
modify_request(self, http_request)
Adds or changes request before making the HTTP request.

+This client will add the API version if it is specified.
+Subclasses may override this method to add their own request
+modifications before the request is made.
+ +
post(self, entry, uri, auth_token=None, converter=None, desired_class=None, **kwargs)
+ +
request(self, method=None, uri=None, auth_token=None, http_request=None, converter=None, desired_class=None, redirects_remaining=4, **kwargs)
Make an HTTP request to the server.

+See also documentation for atom.client.AtomPubClient.request.

+If a 302 redirect is sent from the server to the client, this client
+assumes that the redirect is in the form used by the Google Calendar API.
+The same request URI and method will be used as in the original request,
+but a gsessionid URL parameter will be added to the request URI with
+the value provided in the server's 302 redirect response. If the 302
+redirect is not in the format specified by the Google Calendar API, a
+RedirectError will be raised containing the body of the server's
+response.

+The method calls the client's modify_request method to make any changes
+required by the client before the request is made. For example, a
+version 2 client could add a GData-Version: 2 header to the request in
+its modify_request method.

+Args:
+  method: str The HTTP verb for this request, usually 'GET', 'POST',
+          'PUT', or 'DELETE'
+  uri: atom.http_core.Uri, str, or unicode The URL being requested.
+  auth_token: An object which sets the Authorization HTTP header in its
+              modify_request method. Recommended classes include
+              gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken
+              among others.
+  http_request: (optional) atom.http_core.HttpRequest
+  converter: function which takes the body of the response as it's only
+             argument and returns the desired object.
+  desired_class: class descended from atom.core.XmlElement to which a
+                 successful response should be converted. If there is no
+                 converter function specified (converter=None) then the
+                 desired_class will be used in calling the
+                 atom.core.parse function. If neither
+                 the desired_class nor the converter is specified, an
+                 HTTP reponse object will be returned.
+  redirects_remaining: (optional) int, if this number is 0 and the
+                       server sends a 302 redirect, the request method
+                       will raise an exception. This parameter is used in
+                       recursive request calls to avoid an infinite loop.

+Any additional arguments are passed through to
+atom.client.AtomPubClient.request.

+Returns:
+  An HTTP response object (see atom.http_core.HttpResponse for a
+  description of the object's interface) if no converter was
+  specified and no desired_class was specified. If a converter function
+  was provided, the results of calling the converter are returned. If no
+  converter was specified but a desired_class was provided, the response
+  body will be converted to the class using
+  atom.core.parse.
+ +
request_client_login_token(self, email, password, source, service=None, account_type='HOSTED_OR_GOOGLE', auth_url=<atom.http_core.Uri object at 0xbdf990>, captcha_token=None, captcha_response=None)
+ +
revoke_token(self, token=None, url=<atom.http_core.Uri object at 0xbdfa50>)
Requests that the token be invalidated.

+This method can be used for both AuthSub and OAuth tokens (to invalidate
+a ClientLogin token, the user must change their password).

+Returns:
+  True if the server responded with a 200.

+Raises:
+  A RequestError if the server responds with a non-200 status.
+ +
update(self, entry, auth_token=None, force=False, **kwargs)
Edits the entry on the server by sending the XML for this entry.

+Performs a PUT and converts the response to a new entry object with a
+matching class to the entry passed in.

+Args:
+  entry:
+  auth_token:
+  force: boolean stating whether an update should be forced. Defaults to
+         False. Normally, if a change has been made since the passed in
+         entry was obtained, the server will not overwrite the entry since
+         the changes were based on an obsolete version of the entry.
+         Setting force to True will cause the update to silently
+         overwrite whatever version is present.

+Returns:
+  A new Entry object of a matching type to the entry which was passed in.
+ +
upgrade_token(self, token=None, url=<atom.http_core.Uri object at 0xbdfa10>)
Asks the Google auth server for a multi-use AuthSub token.

+For details on AuthSub, see:
+http://code.google.com/apis/accounts/docs/AuthSub.html

+Args:
+  token: gdata.gauth.AuthSubToken or gdata.gauth.SecureAuthSubToken
+      (optional) If no token is passed in, the client's auth_token member
+      is used to request the new token. The token object will be modified
+      to contain the new session token string.
+  url: str or atom.http_core.Uri (optional) The URL to which the token
+      upgrade request should be sent. Defaults to:
+      https://www.google.com/accounts/AuthSubSessionToken

+Returns:
+  The upgraded gdata.gauth.AuthSubToken object.
+ +
+Methods inherited from atom.client.AtomPubClient:
+
Get = get(self, uri=None, auth_token=None, http_request=None, **kwargs)
Performs a request using the GET method, returns an HTTP response.
+ +
Put = put(self, uri=None, data=None, auth_token=None, http_request=None, **kwargs)
Sends data using the PUT method, returns an HTTP response.
+ +
get(self, uri=None, auth_token=None, http_request=None, **kwargs)
Performs a request using the GET method, returns an HTTP response.
+ +
put(self, uri=None, data=None, auth_token=None, http_request=None, **kwargs)
Sends data using the PUT method, returns an HTTP response.
+ +
+Data descriptors inherited from atom.client.AtomPubClient:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Data and other attributes inherited from atom.client.AtomPubClient:
+
auth_token = None
+ +
ssl = False
+ +

+ + + + + +
 
+class DocsQuery(gdata.client.Query)
    
Method resolution order:
+
DocsQuery
+
gdata.client.Query
+
__builtin__.object
+
+
+Methods defined here:
+
ModifyRequest = modify_request(self, http_request)
+ +
__init__(self, title=None, title_exact=None, opened_min=None, opened_max=None, edited_min=None, edited_max=None, owner=None, writer=None, reader=None, show_folders=None, show_deleted=None, ocr=None, target_language=None, source_language=None, convert=None, **kwargs)
Constructs a query URL for the Google Documents List  API.

+Args:
+  title: str (optional) Specifies the search terms for the title of a
+         document. This parameter used without title_exact will only
+         submit partial queries, not exact queries.
+  title_exact: str (optional) Meaningless without title. Possible values
+               are 'true' and 'false'. Note: Matches are case-insensitive.
+  opened_min: str (optional) Lower bound on the last time a document was
+              opened by the current user. Use the RFC 3339 timestamp
+              format. For example: opened_min='2005-08-09T09:57:00-08:00'.
+  opened_max: str (optional) Upper bound on the last time a document was
+              opened by the current user. (See also opened_min.)
+  edited_min: str (optional) Lower bound on the last time a document was
+              edited by the current user. This value corresponds to the
+              edited.text value in the doc's entry object, which
+              represents changes to the document's content or metadata.
+              Use the RFC 3339 timestamp format. For example:
+              edited_min='2005-08-09T09:57:00-08:00'
+  edited_max: str (optional) Upper bound on the last time a document was
+              edited by the user. (See also edited_min.)
+  owner: str (optional) Searches for documents with a specific owner. Use
+         the email address of the owner. For example:
+         owner='user@gmail.com'
+  writer: str (optional) Searches for documents which can be written to
+          by specific users. Use a single email address or a comma
+          separated list of email addresses. For example:
+          writer='user1@gmail.com,user@example.com'
+  reader: str (optional) Searches for documents which can be read by
+          specific users. (See also writer.)
+  show_folders: str (optional) Specifies whether the query should return
+                folders as well as documents. Possible values are 'true'
+                and 'false'. Default is false.
+  show_deleted: str (optional) Specifies whether the query should return
+                documents which are in the trash as well as other
+                documents. Possible values are 'true' and 'false'.
+                Default is false.
+  ocr: str (optional) Specifies whether to attempt OCR on a .jpg, .png, or
+       .gif upload. Possible values are 'true' and 'false'. Default is
+       false. See OCR in the Protocol Guide: 
+       http://code.google.com/apis/documents/docs/3.0/developers_guide_protocol.html#OCR
+  target_language: str (optional) Specifies the language to translate a
+                   document into. See Document Translation in the Protocol
+                   Guide for a table of possible values:
+                   http://code.google.com/apis/documents/docs/3.0/developers_guide_protocol.html#DocumentTranslation
+  source_language: str (optional) Specifies the source language of the
+                   original document. Optional when using the translation
+                   service. If not provided, Google will attempt to
+                   auto-detect the source language. See Document
+                   Translation in the Protocol Guide for a table of
+                   possible values (link in target_language).
+  convert: str (optional) Used when uploading arbitrary file types to
+           specity if document-type uploads should convert to a native
+           Google Docs format. Possible values are 'true' and 'false'.
+           The default is 'true'.
+ +
modify_request(self, http_request)
+ +
+Data descriptors inherited from gdata.client.Query:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + +
 
+Data
       ACL_FEED_TEMPLATE = '/feeds/default/private/full/%s/acl'
+DOCLIST_FEED_URI = '/feeds/default/private/full/'
+FOLDERS_FEED_TEMPLATE = '/feeds/default/private/full/%s/contents'
+REVISIONS_FEED_TEMPLATE = '/feeds/default/private/full/%s/revisions'
+__author__ = 'e.bidelman (Eric Bidelman)'

+ + + + + +
 
+Author
       e.bidelman (Eric Bidelman)
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.docs.data.html python-gdata-2.0.8/pydocs/gdata.docs.data.html --- python-gdata-1.2.4/pydocs/gdata.docs.data.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.docs.data.html 2010-02-26 23:16:48.000000000 +0000 @@ -0,0 +1,3403 @@ + + +Python: module gdata.docs.data + + + + +
 
+ 
gdata.docs.data
index
/usr/local/svn/gdata-python-client/src/gdata/docs/data.py
+

Data model classes for parsing and generating XML for the DocList Data API

+

+ + + + + +
 
+Modules
       
atom
+
gdata
+
re
+

+ + + + + +
 
+Classes
       
+
atom.core.XmlElement(__builtin__.object) +
+
+
Publish +
PublishAuto +
PublishOutsideDomain +
QuotaBytesUsed +
ResourceId +
WritersCanInvite +
+
+
atom.data.Person(atom.core.XmlElement) +
+
+
LastModifiedBy +
LastViewed +
+
+
gdata.acl.data.AclEntry(gdata.data.GDEntry) +
+
+
Acl +
+
+
gdata.acl.data.AclFeed(gdata.data.GDFeed) +
+
+
AclFeed +
+
+
gdata.data.GDEntry(atom.data.Entry, gdata.data.LinkFinder) +
+
+
DocsEntry +
Revision +
+
+
gdata.data.GDFeed(atom.data.Feed, gdata.data.LinkFinder) +
+
+
DocList +
RevisionFeed +
+
+
+

+ + + + + + + +
 
+class Acl(gdata.acl.data.AclEntry)
   A document ACL entry.
 
 
Method resolution order:
+
Acl
+
gdata.acl.data.AclEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes inherited from gdata.acl.data.AclEntry:
+
role = <class 'gdata.acl.data.AclRole'>
Describes the role of an entry in an access control list.
+ +
scope = <class 'gdata.acl.data.AclScope'>
Describes the scope of an entry in an access control list.
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class AclFeed(gdata.acl.data.AclFeed)
   DocList ACL feed.
 
 
Method resolution order:
+
AclFeed
+
gdata.acl.data.AclFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.docs.data.Acl'>]
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class DocList(gdata.data.GDFeed)
   The main DocList feed containing a list of Google Documents.
 
 
Method resolution order:
+
DocList
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.docs.data.DocsEntry'>]
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class DocsEntry(gdata.data.GDEntry)
   DocList version of an Atom Entry.
 
 
Method resolution order:
+
DocsEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Methods defined here:
+
GetAclFeedLink = get_acl_feed_link(self)
+ +
GetDocumentType = get_document_type(self)
+ +
GetRevisionsFeedLink = get_revisions_feed_link(self)
+ +
InFolders = in_folders(self)
+ +
get_acl_feed_link(self)
Extracts the DocsEntry's ACL feed <gd:feedLink>.

+Returns:
+  A gdata.data.FeedLink object.
+ +
get_document_type(self)
Extracts the type of document this DocsEntry is.

+This method returns the type of document the DocsEntry represents. Possible
+values are document, presentation, spreadsheet, folder, or pdf.

+Returns:
+  A string representing the type of document.
+ +
get_revisions_feed_link(self)
Extracts the DocsEntry's revisions feed <gd:feedLink>.

+Returns:
+  A gdata.data.FeedLink object.
+ +
in_folders(self)
Returns the parents link(s) (folders) of this entry.
+ +
+Data and other attributes defined here:
+
feed_link = [<class 'gdata.data.FeedLink'>]
+ +
last_modified_by = <class 'gdata.docs.data.LastModifiedBy'>
The DocList gd:lastModifiedBy element.
+ +
last_viewed = <class 'gdata.docs.data.LastViewed'>
The DocList gd:lastViewed element.
+ +
quota_bytes_used = <class 'gdata.docs.data.QuotaBytesUsed'>
The DocList gd:quotaBytesUsed element.
+ +
resource_id = <class 'gdata.docs.data.ResourceId'>
The DocList gd:resourceId element.
+ +
writers_can_invite = <class 'gdata.docs.data.WritersCanInvite'>
The DocList docs:writersCanInvite element.
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class LastModifiedBy(atom.data.Person)
   The DocList gd:lastModifiedBy element.
 
 
Method resolution order:
+
LastModifiedBy
+
atom.data.Person
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes inherited from atom.data.Person:
+
email = <class 'atom.data.Email'>
The atom:email element.
+ +
name = <class 'atom.data.Name'>
The atom:name element.
+ +
uri = <class 'atom.data.Uri'>
The atom:uri element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class LastViewed(atom.data.Person)
   The DocList gd:lastViewed element.
 
 
Method resolution order:
+
LastViewed
+
atom.data.Person
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes inherited from atom.data.Person:
+
email = <class 'atom.data.Email'>
The atom:email element.
+ +
name = <class 'atom.data.Name'>
The atom:name element.
+ +
uri = <class 'atom.data.Uri'>
The atom:uri element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Publish(atom.core.XmlElement)
   The DocList docs:publish element.
 
 
Method resolution order:
+
Publish
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class PublishAuto(atom.core.XmlElement)
   The DocList docs:publishAuto element.
 
 
Method resolution order:
+
PublishAuto
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class PublishOutsideDomain(atom.core.XmlElement)
   The DocList docs:publishOutsideDomain element.
 
 
Method resolution order:
+
PublishOutsideDomain
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class QuotaBytesUsed(atom.core.XmlElement)
   The DocList gd:quotaBytesUsed element.
 
 
Method resolution order:
+
QuotaBytesUsed
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class ResourceId(atom.core.XmlElement)
   The DocList gd:resourceId element.
 
 
Method resolution order:
+
ResourceId
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Revision(gdata.data.GDEntry)
   A document Revision entry.
 
 
Method resolution order:
+
Revision
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Methods defined here:
+
FindPublishLink = find_publish_link(self)
+ +
GetPublishLink = get_publish_link(self)
+ +
find_publish_link(self)
Get the link that points to the published document on the web.

+Returns:
+  A str for the URL in the link with a rel ending in #publish.
+ +
get_publish_link(self)
Get the link that points to the published document on the web.

+Returns:
+  A gdata.data.Link for the link with a rel ending in #publish.
+ +
+Data and other attributes defined here:
+
publish = <class 'gdata.docs.data.Publish'>
The DocList docs:publish element.
+ +
publish_auto = <class 'gdata.docs.data.PublishAuto'>
The DocList docs:publishAuto element.
+ +
publish_outside_domain = <class 'gdata.docs.data.PublishOutsideDomain'>
The DocList docs:publishOutsideDomain element.
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class RevisionFeed(gdata.data.GDFeed)
   DocList Revision feed.
 
 
Method resolution order:
+
RevisionFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.docs.data.Revision'>]
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class WritersCanInvite(atom.core.XmlElement)
   The DocList docs:writersCanInvite element.
 
 
Method resolution order:
+
WritersCanInvite
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
value = 'value'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + +
 
+Functions
       
MakeContentLinkFromResourceId = make_content_link_from_resource_id(resource_id)
Constructs export URL for a given resource.

+Args:
+  resource_id: str The document/item's resource id. Example presentation:
+      'presentation%3A0A1234567890'.

+Raises:
+  gdata.client.ValueError if the resource_id is not a valid format.
+
MakeKindCategory = make_kind_category(label)
Builds the appropriate atom.data.Category for the label passed in.

+Args:
+  label: str The value for the category entry.

+Returns:
+  An atom.data.Category or None if label is None.
+
make_content_link_from_resource_id(resource_id)
Constructs export URL for a given resource.

+Args:
+  resource_id: str The document/item's resource id. Example presentation:
+      'presentation%3A0A1234567890'.

+Raises:
+  gdata.client.ValueError if the resource_id is not a valid format.
+
make_kind_category(label)
Builds the appropriate atom.data.Category for the label passed in.

+Args:
+  label: str The value for the category entry.

+Returns:
+  An atom.data.Category or None if label is None.
+

+ + + + + +
 
+Data
       ACL_FEEDLINK_REL = 'http://schemas.google.com/acl/2007#accessControlList'
+DATA_KIND_SCHEME = 'http://schemas.google.com/g/2005#kind'
+DOCS_PARENT_LINK_REL = 'http://schemas.google.com/docs/2007#parent'
+DOCS_PUBLISH_LINK_REL = 'http://schemas.google.com/docs/2007#publish'
+DOCUMENTS_NS = 'http://schemas.google.com/docs/2007'
+DOCUMENTS_TEMPLATE = '{http://schemas.google.com/docs/2007}%s'
+DOCUMENT_LABEL = 'document'
+FILE_EXT_PATTERN = <_sre.SRE_Pattern object at 0x7f9e4cac1990>
+FOLDER_LABEL = 'folder'
+HIDDEN_LABEL_TERM = 'http://schemas.google.com/g/2005/labels#hidden'
+LABEL_SCHEME = 'http://schemas.google.com/g/2005/labels'
+MIMETYPES = {'CSV': 'text/csv', 'DOC': 'application/msword', 'DOCX': 'application/vnd.openxmlformats-officedocument.wordprocessingml.document', 'HTM': 'text/html', 'HTML': 'text/html', 'ODS': 'application/x-vnd.oasis.opendocument.spreadsheet', 'ODT': 'application/vnd.oasis.opendocument.text', 'PDF': 'application/pdf', 'PNG': 'image/png', 'PPS': 'application/vnd.ms-powerpoint', ...}
+MINE_LABEL_TERM = 'http://schemas.google.com/g/2005/labels#mine'
+PDF_LABEL = 'pdf'
+PRESENTATION_LABEL = 'presentation'
+PRIVATE_LABEL_TERM = 'http://schemas.google.com/g/2005/labels#private'
+RESOURCE_ID_PATTERN = <_sre.SRE_Pattern object at 0x7f9e4df83cd8>
+REVISION_FEEDLINK_REL = 'http://schemas.google.com/docs/2007/revisions'
+SHARED_WITH_DOMAIN_LABEL_TERM = 'http://schemas.google.com/g/2005/labels#shared-with-domain'
+SPREADSHEET_LABEL = 'spreadsheet'
+STARRED_LABEL_TERM = 'http://schemas.google.com/g/2005/labels#starred'
+TRASHED_LABEL_TERM = 'http://schemas.google.com/g/2005/labels#trashed'
+VIEWED_LABEL_TERM = 'http://schemas.google.com/g/2005/labels#viewed'
+__author__ = 'e.bidelman (Eric Bidelman)'

+ + + + + +
 
+Author
       e.bidelman (Eric Bidelman)
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.docs.html python-gdata-2.0.8/pydocs/gdata.docs.html --- python-gdata-1.2.4/pydocs/gdata.docs.html 2008-10-16 00:01:57.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.docs.html 2009-11-25 01:04:14.000000000 +0000 @@ -17,8 +17,10 @@ Package Contents

       
service
-

+

client
+
data
+
service
+

 
@@ -26,16 +28,35 @@
       
+
atom.AtomBase(atom.ExtensionContainer) +
+
+
FeedLink +
ResourceId +
Role +
Scope +
WritersCanInvite +
+
+
atom.Person(atom.AtomBase) +
+
+
LastModifiedBy +
LastViewed +
+
gdata.GDataEntry(atom.Entry, gdata.LinkFinder)
-
DocumentListEntry +
DocumentListAclEntry +
DocumentListEntry
gdata.GDataFeed(atom.Feed, gdata.LinkFinder)
-
DocumentListFeed +
DocumentListAclFeed +
DocumentListFeed
@@ -43,6 +64,236 @@ + + + + +
 
+class DocumentListAclEntry(gdata.GDataEntry)
   A DocList ACL Entry flavor of an Atom Entry
 
 
Method resolution order:
+
DocumentListAclEntry
+
gdata.GDataEntry
+
atom.Entry
+
atom.FeedEntryParent
+
atom.AtomBase
+
atom.ExtensionContainer
+
gdata.LinkFinder
+
atom.LinkFinder
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, category=None, atom_id=None, link=None, title=None, updated=None, scope=None, role=None, extension_elements=None, extension_attributes=None, text=None)
+ +
+Methods inherited from gdata.GDataEntry:
+
GetMediaURL(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
IsMedia(self)
Determines whether or not an entry is a GData Media entry.
+ +
+Data descriptors inherited from gdata.GDataEntry:
+
id
+
+
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from gdata.LinkFinder:
+
GetAclLink(self)
+ +
GetEditLink(self)
+ +
GetEditMediaLink(self)
The Picasa API mistakenly returns media-edit rather than edit-media, but
+this may change soon.
+ +
GetFeedLink(self)
+ +
GetHtmlLink(self)
Find the first link with rel of alternate and type of text/html

+Returns:
+  An atom.Link or None if no links matched
+ +
GetNextLink(self)
+ +
GetPostLink(self)
Get a link containing the POST target URL.

+The POST target URL is used to insert new entries.

+Returns:
+  A link object with a rel matching the POST type.
+ +
GetPrevLink(self)
+ +
GetSelfLink(self)
Find the first link with rel set to 'self'

+Returns:
+  An atom.Link or none if none of the links had rel equal to 'self'
+ +
+Methods inherited from atom.LinkFinder:
+
GetAlternateLink(self)
+ +
GetLicenseLink(self)
+ +

+ + + + + + + +
 
+class DocumentListAclFeed(gdata.GDataFeed)
   A DocList ACL feed flavor of a Atom feed
 
 
Method resolution order:
+
DocumentListAclFeed
+
gdata.GDataFeed
+
atom.Feed
+
atom.Source
+
atom.FeedEntryParent
+
atom.AtomBase
+
atom.ExtensionContainer
+
gdata.LinkFinder
+
atom.LinkFinder
+
__builtin__.object
+
+
+Methods inherited from gdata.GDataFeed:
+
__init__(self, author=None, category=None, contributor=None, generator=None, icon=None, atom_id=None, link=None, logo=None, rights=None, subtitle=None, title=None, updated=None, entry=None, total_results=None, start_index=None, items_per_page=None, extension_elements=None, extension_attributes=None, text=None)
Constructor for Source

+Args:
+  author: list (optional) A list of Author instances which belong to this
+      class.
+  category: list (optional) A list of Category instances
+  contributor: list (optional) A list on Contributor instances
+  generator: Generator (optional)
+  icon: Icon (optional)
+  id: Id (optional) The entry's Id element
+  link: list (optional) A list of Link instances
+  logo: Logo (optional)
+  rights: Rights (optional) The entry's Rights element
+  subtitle: Subtitle (optional) The entry's subtitle element
+  title: Title (optional) the entry's title element
+  updated: Updated (optional) the entry's updated element
+  entry: list (optional) A list of the Entry instances contained in the
+      feed.
+  text: String (optional) The text contents of the element. This is the
+      contents of the Entry's XML text node.
+      (Example: <foo>This is the text</foo>)
+  extension_elements: list (optional) A list of ExtensionElement instances
+      which are children of this element.
+  extension_attributes: dict (optional) A dictionary of strings which are
+      the values for additional XML attributes of this element.
+ +
+Data descriptors inherited from gdata.GDataFeed:
+
generator
+
+
id
+
+
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from gdata.LinkFinder:
+
GetAclLink(self)
+ +
GetEditLink(self)
+ +
GetEditMediaLink(self)
The Picasa API mistakenly returns media-edit rather than edit-media, but
+this may change soon.
+ +
GetFeedLink(self)
+ +
GetHtmlLink(self)
Find the first link with rel of alternate and type of text/html

+Returns:
+  An atom.Link or None if no links matched
+ +
GetNextLink(self)
+ +
GetPostLink(self)
Get a link containing the POST target URL.

+The POST target URL is used to insert new entries.

+Returns:
+  A link object with a rel matching the POST type.
+ +
GetPrevLink(self)
+ +
GetSelfLink(self)
Find the first link with rel set to 'self'

+Returns:
+  An atom.Link or none if none of the links had rel equal to 'self'
+ +
+Methods inherited from atom.LinkFinder:
+
GetAlternateLink(self)
+ +
GetLicenseLink(self)
+ +

+ + + @@ -60,6 +311,24 @@
__builtin__.object

+Methods defined here:
+
GetAclLink(self)
Extracts the DocListEntry's <gd:feedLink>.

+Returns:
+  A FeedLink object.
+ +
GetDocumentType(self)
Extracts the type of document from the DocListEntry.

+This method returns the type of document the DocListEntry
+represents.  Possible values are document, presentation,
+spreadsheet, folder, or pdf.

+Returns:
+  A string representing the type of document.
+ +
__init__(self, resourceId=None, feedLink=None, lastViewed=None, lastModifiedBy=None, writersCanInvite=None, author=None, category=None, content=None, atom_id=None, link=None, published=None, title=None, updated=None, text=None, extension_elements=None, extension_attributes=None)
+ +
Methods inherited from gdata.GDataEntry:
GetMediaURL(self)
Returns the URL to the media content, if the entry is a media entry.
Otherwise returns None.
@@ -71,32 +340,6 @@
id

-Methods inherited from atom.Entry:
-
__init__(self, author=None, category=None, content=None, contributor=None, atom_id=None, link=None, published=None, rights=None, source=None, summary=None, control=None, title=None, updated=None, extension_elements=None, extension_attributes=None, text=None)
Constructor for atom:entry

-Args:
-  author: list A list of Author instances which belong to this class.
-  category: list A list of Category instances
-  content: Content The entry's Content
-  contributor: list A list on Contributor instances
-  id: Id The entry's Id element
-  link: list A list of Link instances
-  published: Published The entry's Published element
-  rights: Rights The entry's Rights element
-  source: Source the entry's source element
-  summary: Summary the entry's summary element
-  title: Title the entry's title element
-  updated: Updated the entry's updated element
-  control: The entry's app:control element which can be used to mark an 
-      entry as a draft which should not be publicly viewable.
-  text: String The text contents of the element. This is the contents
-      of the Entry's XML text node. (Example: <foo>This is the text</foo>)
-  extension_elements: list A list of ExtensionElement instances which are
-      children of this element.
-  extension_attributes: dict A dictionary of strings which are the values
-      for additional XML attributes of this element.
- -
Methods inherited from atom.AtomBase:
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
@@ -130,8 +373,6 @@
Methods inherited from gdata.LinkFinder:
-
GetAclLink(self)
-
GetEditLink(self)
GetEditMediaLink(self)
The Picasa API mistakenly returns media-edit rather than edit-media, but
@@ -196,23 +437,23 @@       class.
  category: list (optional) A list of Category instances
  contributor: list (optional) A list on Contributor instances
-  generator: Generator (optional) 
-  icon: Icon (optional) 
+  generator: Generator (optional)
+  icon: Icon (optional)
  id: Id (optional) The entry's Id element
  link: list (optional) A list of Link instances
-  logo: Logo (optional) 
+  logo: Logo (optional)
  rights: Rights (optional) The entry's Rights element
  subtitle: Subtitle (optional) The entry's subtitle element
  title: Title (optional) the entry's title element
  updated: Updated (optional) the entry's updated element
-  entry: list (optional) A list of the Entry instances contained in the 
+  entry: list (optional) A list of the Entry instances contained in the
      feed.
-  text: String (optional) The text contents of the element. This is the 
-      contents of the Entry's XML text node. 
+  text: String (optional) The text contents of the element. This is the
+      contents of the Entry's XML text node.
      (Example: <foo>This is the text</foo>)
  extension_elements: list (optional) A list of ExtensionElement instances
      which are children of this element.
-  extension_attributes: dict (optional) A dictionary of strings which are 
+  extension_attributes: dict (optional) A dictionary of strings which are
      the values for additional XML attributes of this element.

@@ -291,14 +532,413 @@
GetLicenseLink(self)
-
 
class DocumentListEntry(gdata.GDataEntry)
   

+

- + +class FeedLink(atom.AtomBase) - - + + +
 
-Functions
       
DocumentListEntryFromString(xml_string)
Converts an XML string into a DocumentListEntry object.
+
   The DocList gd:feedLink element
 
 
Method resolution order:
+
FeedLink
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, href=None, rel=None, text=None, extension_elements=None, extension_attributes=None)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class LastModifiedBy(atom.Person)
   The DocList gd:lastModifiedBy element
 
 
Method resolution order:
+
LastModifiedBy
+
atom.Person
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods inherited from atom.Person:
+
__init__(self, name=None, email=None, uri=None, extension_elements=None, extension_attributes=None, text=None)
Foundation from which author and contributor are derived.

+The constructor is provided for illustrative purposes, you should not
+need to instantiate a Person.

+Args:
+  name: Name The person's name
+  email: Email The person's email address
+  uri: Uri The URI of the person's webpage
+  extension_elements: list A list of ExtensionElement instances which are
+      children of this element.
+  extension_attributes: dict A dictionary of strings which are the values
+      for additional XML attributes of this element.
+  text: String The text contents of the element. This is the contents
+      of the Entry's XML text node. (Example: <foo>This is the text</foo>)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class LastViewed(atom.Person)
   The DocList gd:lastViewed element
 
 
Method resolution order:
+
LastViewed
+
atom.Person
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods inherited from atom.Person:
+
__init__(self, name=None, email=None, uri=None, extension_elements=None, extension_attributes=None, text=None)
Foundation from which author and contributor are derived.

+The constructor is provided for illustrative purposes, you should not
+need to instantiate a Person.

+Args:
+  name: Name The person's name
+  email: Email The person's email address
+  uri: Uri The URI of the person's webpage
+  extension_elements: list A list of ExtensionElement instances which are
+      children of this element.
+  extension_attributes: dict A dictionary of strings which are the values
+      for additional XML attributes of this element.
+  text: String The text contents of the element. This is the contents
+      of the Entry's XML text node. (Example: <foo>This is the text</foo>)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class ResourceId(atom.AtomBase)
   The DocList gd:resourceId element
 
 
Method resolution order:
+
ResourceId
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, value=None, extension_elements=None, extension_attributes=None, text=None)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class Role(atom.AtomBase)
   The DocList ACL role element
 
 
Method resolution order:
+
Role
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, value=None, extension_elements=None, extension_attributes=None, text=None)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class Scope(atom.AtomBase)
   The DocList ACL scope element
 
 
Method resolution order:
+
Scope
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, value=None, type=None, extension_elements=None, extension_attributes=None, text=None)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class WritersCanInvite(atom.AtomBase)
   The DocList docs:writersCanInvite element
 
 
Method resolution order:
+
WritersCanInvite
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + -
 
+Functions
       
DocumentListAclEntryFromString(xml_string)
Converts an XML string into a DocumentListAclEntry object.

+Args:
+  xml_string: string The XML describing a Document List ACL feed entry.

+Returns:
+  A DocumentListAclEntry object corresponding to the given XML.
+
DocumentListAclFeedFromString(xml_string)
Converts an XML string into a DocumentListAclFeed object.

+Args:
+  xml_string: string The XML describing a DocumentList feed.

+Returns:
+  A DocumentListFeed object corresponding to the given XML.
+
DocumentListEntryFromString(xml_string)
Converts an XML string into a DocumentListEntry object.
 
Args:
  xml_string: string The XML describing a Document List feed entry.
@@ -319,12 +959,13 @@ Data
       __author__ = 'api.jfisher (Jeff Fisher)'

+

DOCUMENTS_NAMESPACE = 'http://schemas.google.com/docs/2007'
+__author__ = 'api.jfisher (Jeff Fisher), api.eric@google.com (Eric Bidelman)'

-
 
Author
       api.jfisher (Jeff Fisher)
+api.jfisher (Jeff Fisher), api.eric@google.com (Eric Bidelman) \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.docs.service.html python-gdata-2.0.8/pydocs/gdata.docs.service.html --- python-gdata-1.2.4/pydocs/gdata.docs.service.html 2009-01-22 19:55:42.000000000 +0000 +++ python-gdata-2.0.8/pydocs/gdata.docs.service.html 2010-02-26 23:16:48.000000000 +0000 @@ -15,18 +15,21 @@ DocsService: Provides methods to query feeds and manipulate items.
                  Extends GDataService.
 
-DocumentQuery: Queries a Google Document list feed.

+DocumentQuery: Queries a Google Document list feed.

+DocumentAclQuery: Queries a Google Document Acl feed.

+Modules
 
-Modules
       
atom
gdata
+
re
urllib
-

+

 
@@ -43,7 +46,8 @@
gdata.service.Query(__builtin__.dict)
-
DocumentQuery +
DocumentAclQuery +
DocumentQuery
@@ -64,6 +68,70 @@
Methods defined here:
+
CreateFolder(self, title, folder_or_uri=None)
Creates a folder in the Document List feed.

+Args:
+  title: string The title of the folder on the server after being created.
+  folder_or_uri: DocumentListEntry or string (optional) An object with a
+      link to a folder or a uri to a folder to upload to.
+      Note: A valid uri for a folder is of the form:
+            /feeds/folders/private/full/folder%3Afolder_id

+Returns:
+  A DocumentListEntry containing information about the folder created on
+  the Google Documents service.
+ +
Download(self, entry_or_id_or_url, file_path, export_format=None, gid=None, extra_params=None)
Downloads a document from the Document List.

+Args:
+  entry_or_id_or_url: a DocumentListEntry, or the resource id of an entry,
+      or a url to download from (such as the content src).
+  file_path: string The full path to save the file to.
+  export_format: the format to convert to, if conversion is required.
+  gid: grid id, for downloading a single grid of a spreadsheet
+  extra_params: a map of any further parameters to control how the document
+      is downloaded

+Raises:
+  RequestError if the service does not respond with success
+ +
DownloadDocument = Export(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
+ +
DownloadPresentation = Export(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
+ +
DownloadSpreadsheet = Export(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
+ +
Export(self, entry_or_id_or_url, file_path, gid=None, extra_params=None)
Downloads a document from the Document List in a different format.

+Args:
+  entry_or_id_or_url: a DocumentListEntry, or the resource id of an entry,
+      or a url to download from (such as the content src).
+  file_path: string The full path to save the file to.  The export
+      format is inferred from the the file extension.
+  gid: grid id, for downloading a single grid of a spreadsheet
+  extra_params: a map of any further parameters to control how the document
+      is downloaded

+Raises:
+  RequestError if the service does not respond with success
+ +
GetDocumentListAclEntry(self, uri)
Retrieves a particular DocumentListAclEntry by its unique URI.

+Args:
+  uri: string The unique URI of an entry in a Document List feed.

+Returns:
+  A DocumentListAclEntry object representing the retrieved entry.
+ +
GetDocumentListAclFeed(self, uri)
Retrieves a feed containing all of a user's documents.

+Args:
+  uri: string The URI of a document's Acl feed to retrieve.

+Returns:
+  A DocumentListAclFeed object representing the ACL feed
+  returned by the server.
+
GetDocumentListEntry(self, uri)
Retrieves a particular DocumentListEntry by its unique URI.
 
Args:
@@ -72,21 +140,53 @@ Returns:
  A DocumentListEntry object representing the retrieved entry.
-
GetDocumentListFeed(self)
Retrieves a feed containing all of a user's documents.
+
GetDocumentListFeed(self, uri=None)
Retrieves a feed containing all of a user's documents.

+Args:
+  uri: string A full URI to query the Document List feed.
+ +
MoveDocumentIntoFolder = MoveIntoFolder(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
+ +
MoveFolderIntoFolder = MoveIntoFolder(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
+ +
MoveIntoFolder(self, source_entry, folder_entry)
Moves a document into a folder in the Document List Feed.

+Args:
+  source_entry: DocumentListEntry An object representing the source
+      document/folder.
+  folder_entry: DocumentListEntry An object with a link to the destination
+      folder.

+Returns:
+  A DocumentListEntry containing information about the document created on
+  the Google Documents service.
+ +
MoveOutOfFolder(self, source_entry)
Moves a document into a folder in the Document List Feed.

+Args:
+  source_entry: DocumentListEntry An object representing the source
+      document/folder.

+Returns:
+  True if the entry was moved out.
+ +
MovePresentationIntoFolder = MoveIntoFolder(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
-
Query(self, uri, converter=<function DocumentListFeedFromString at 0x8d7ed8>)
Queries the Document List feed and returns the resulting feed of
+
MoveSpreadsheetIntoFolder = MoveIntoFolder(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
+ +
Query(self, uri, converter=<function DocumentListFeedFromString at 0x7f0055c54cf8>)
Queries the Document List feed and returns the resulting feed of
   entries.
 
Args:
  uri: string The full URI to be queried. This can contain query
-       parameters, a hostname, or simply the relative path to a Document
-       List feed. The DocumentQuery object is useful when constructing
-       query parameters.
+      parameters, a hostname, or simply the relative path to a Document
+      List feed. The DocumentQuery object is useful when constructing
+      query parameters.
  converter: func (optional) A function which will be executed on the
-             retrieved item, generally to render it into a Python object.
-             By default the DocumentListFeedFromString function is used to
-             return a DocumentListFeed object. This is because most feed
-             queries will result in a feed and not a single entry.
+      retrieved item, generally to render it into a Python object.
+      By default the DocumentListFeedFromString function is used to
+      return a DocumentListFeed object. This is because most feed
+      queries will result in a feed and not a single entry.
QueryDocumentListFeed(self, uri)
Retrieves a DocumentListFeed by retrieving a URI based off the Document
   List feed, including any query parameters. A DocumentQuery object can
@@ -94,49 +194,34 @@  
Args:
  uri: string The URI of the feed being retrieved possibly with query
-       parameters.
+      parameters.
 
Returns:
  A DocumentListFeed object representing the feed returned by the server.
-
UploadDocument(self, media_source, title)
Uploads a document inside of a MediaSource object to the Document List
+
Upload(self, media_source, title, folder_or_uri=None, label=None)
Uploads a document inside of a MediaSource object to the Document List
   feed with the given title.
 
Args:
  media_source: MediaSource The gdata.MediaSource object containing a
-                document file to be uploaded.
+      document file to be uploaded.
  title: string The title of the document on the server after being
-         uploaded.

-Returns:
-  A GDataEntry containing information about the document created on the
-  Google Documents service.
- -
UploadPresentation(self, media_source, title)
Uploads a presentation inside of a MediaSource object to the Document
-   List feed with the given title.

-Args:
-  media_source: MediaSource The MediaSource object containing a
-      presentation file to be uploaded.
-  title: string The title of the presentation on the server after being
      uploaded.
+  folder_or_uri: DocumentListEntry or string (optional) An object with a
+      link to a folder or a uri to a folder to upload to.
+      Note: A valid uri for a folder is of the form:
+            /feeds/folders/private/full/folder%3Afolder_id
+  label: optional label describing the type of the document to be created.
 
Returns:
-  A GDataEntry containing information about the presentation created on the
-  Google Documents service.
+  A DocumentListEntry containing information about the document created
+  on the Google Documents service.
-
UploadSpreadsheet(self, media_source, title)
Uploads a spreadsheet inside of a MediaSource object to the Document
-   List feed with the given title.

-Args:
-  media_source: MediaSource The MediaSource object containing a spreadsheet
-                file to be uploaded.
-  title: string The title of the spreadsheet on the server after being
-         uploaded.

-Returns:
-  A GDataEntry containing information about the spreadsheet created on the
-  Google Documents service.
+
UploadDocument(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
+ +
UploadPresentation(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
+ +
UploadSpreadsheet(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
__init__(self, email=None, password=None, source=None, server='docs.google.com', additional_headers=None, **kwargs)
Creates a client for the Google Documents service.
 
@@ -191,7 +276,7 @@ Returns:
  True if the entry was deleted.
-
FetchOAuthRequestToken(self, scopes=None, extra_parameters=None, request_url='https://www.google.com/accounts/OAuthGetRequestToken')
Fetches OAuth request token and returns it.
+
FetchOAuthRequestToken(self, scopes=None, extra_parameters=None, request_url='https://www.google.com/accounts/OAuthGetRequestToken', oauth_callback=None)
Fetches and sets the OAuth request token and returns it.
 
Args:
  scopes: string or list of string base URL(s) of the service(s) to be
@@ -206,10 +291,14 @@       extra_parameters = {'oauth_version': '2.0'}
  request_url: Request token URL. The default is
      'https://www.google.com/accounts/OAuthGetRequestToken'.
-  
+  oauth_callback: str (optional) If set, it is assume the client is using
+      the OAuth v1.0a protocol where the callback url is sent in the
+      request token step.  If the oauth_callback is also set in
+      extra_params, this value will override that one.

Returns:
  The fetched request token as a gdata.auth.OAuthToken object.
-  

Raises:
  FetchingOAuthRequestTokenFailed if the server responded to the request
  with an error.
@@ -341,7 +430,7 @@ Returns:
  A GDataEntry built from the XML in the server's response.
-
GetFeed(self, uri, extra_headers=None, converter=<function GDataFeedFromString at 0x8ef1b8>)
Query the GData API with the given URI and receive a Feed.
+
GetFeed(self, uri, extra_headers=None, converter=<function GDataFeedFromString at 0x7f0055c26d70>)
Query the GData API with the given URI and receive a Feed.
 
See also documentation for gdata.service.Get
 
@@ -357,6 +446,8 @@ Returns:
  A GDataFeed built from the XML in the server's response.
+
GetGeneratorFromLinkFinder(self, link_finder, func, num_retries=3, delay=1, backoff=2)
returns a generator for pagination
+
GetMedia(self, uri, extra_headers=None)
Returns a MediaSource containing media and its metadata from the given
URI string.
@@ -375,6 +466,26 @@   A new feed representing the next set of results in the server's feed.
  The type of this feed will match that of the feed argument.
+
GetOAuthInputParameters(self)
+ +
GetWithRetries(self, uri, extra_headers=None, redirects_remaining=4, encoding='UTF-8', converter=None, num_retries=3, delay=1, backoff=2, logger=None)
This is a wrapper method for Get with retring capability.

+To avoid various errors while retrieving bulk entities by retring
+specified times.

+Note this method relies on the time module and so may not be usable
+by default in Python2.2.

+Args:
+  num_retries: integer The retry count.
+  delay: integer The initial delay for retring.
+  backoff: integer how much the delay should lengthen after each failure.
+  logger: an object which has a debug(str) method to receive logging
+          messages. Recommended that you pass in the logging module.
+Raises:
+  ValueError if any of the parameters has an invalid value.
+  RanOutOfTries on failure after number of retries.
+
Post(self, data, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=4, media_source=None, converter=None)
Insert or update  data into a GData service at the given URI.
 
Args:
@@ -535,7 +646,7 @@ Args:
  token: string or instance of a ClientLoginToken.
-
SetOAuthInputParameters(self, signature_method, consumer_key, consumer_secret=None, rsa_key=None, two_legged_oauth=False)
Sets parameters required for using OAuth authentication mechanism.
+
SetOAuthInputParameters(self, signature_method, consumer_key, consumer_secret=None, rsa_key=None, two_legged_oauth=False, requestor_id=None)
Sets parameters required for using OAuth authentication mechanism.
 
NOTE: Though consumer_secret and rsa_key are optional, either of the two
is required depending on the value of the signature_method.
@@ -552,7 +663,10 @@       Required only for HMAC_SHA1 signature method.
  rsa_key: string (optional) Private key required for RSA_SHA1 signature
      method.
-  two_legged_oauth: string (default=False) Enables two-legged OAuth process.
+  two_legged_oauth: boolean (optional) Enables two-legged OAuth process.
+  requestor_id: string (optional) User email adress to make requests on
+      their behalf.  This parameter should only be set when two_legged_oauth
+      is True.
SetOAuthToken(self, oauth_token)
Attempts to set the current token and add it to the token store.
 
@@ -566,18 +680,24 @@ Args:
  request_token: gdata.auth.OAuthToken OAuth request token.
-
UpgradeToOAuthAccessToken(self, authorized_request_token=None, request_url='https://www.google.com/accounts/OAuthGetAccessToken', oauth_version='1.0')
Upgrades the authorized request token to an access token.
+
UpgradeToOAuthAccessToken(self, authorized_request_token=None, request_url='https://www.google.com/accounts/OAuthGetAccessToken', oauth_version='1.0', oauth_verifier=None)
Upgrades the authorized request token to an access token and returns it
 
Args:
  authorized_request_token: gdata.auth.OAuthToken (optional) OAuth request
      token. If not specified, then the current token will be used if it is
      of type <gdata.auth.OAuthToken>, else it is found by looking in the
      token_store by looking for a token for the current scope.
+  request_url: Access token URL. The default is
+      'https://www.google.com/accounts/OAuthGetAccessToken'.
  oauth_version: str (default='1.0') oauth_version parameter. All other
      'oauth_' parameters are added by default. This parameter too, is
      added by default but here you can override it's value.
-  request_url: Access token URL. The default is
-      'https://www.google.com/accounts/OAuthGetAccessToken'.
+  oauth_verifier: str (optional) If present, it is assumed that the client
+    will use the OAuth v1.0a protocol which includes passing the
+    oauth_verifier (as returned by the SP) in the access token step.

+Returns:
+  Access token
      
Raises:
  NonOAuthToken if the user's authorized request token is not an OAuth
@@ -647,7 +767,7 @@   username: str
  password: str
-
request(self, operation, url, data=None, headers=None, url_params=None)
+
request(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
use_basic_auth(self, username, password, scopes=None)
@@ -680,6 +800,157 @@ + + + + +
 
+class DocumentAclQuery(gdata.service.Query)
   Object used to construct a URI to query a Document's ACL feed
 
 
Method resolution order:
+
DocumentAclQuery
+
gdata.service.Query
+
__builtin__.dict
+
__builtin__.object
+
+
+Methods defined here:
+
ToUri(self)
Generates a URI from the query parameters set in the object.

+Returns:
+  A string containing the URI used to retrieve entries from the Document
+  ACL feed.
+ +
__init__(self, resource_id, feed='/feeds/acl/private/full')
Constructor for Document ACL Query

+Args:
+  resource_id: string The resource id. (e.g. 'document%3Adocument_id',
+      'spreadsheet%3Aspreadsheet_id', etc.)
+  feed: string (optional) The path for the feed.
+      (e.g. '/feeds/acl/private/full')

+Yields:
+  A DocumentAclQuery object used to construct a URI based on the Document
+  ACL feed.
+ +
+Methods inherited from gdata.service.Query:
+
__str__(self)
+ +
+Data descriptors inherited from gdata.service.Query:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
alt
+
The feed query's alt parameter
+
+
author
+
The feed query's author parameter
+
+
max_results
+
The feed query's max-results parameter
+
+
orderby
+
The feed query's orderby parameter
+
+
published_max
+
The feed query's published-max parameter
+
+
published_min
+
The feed query's published-min parameter
+
+
start_index
+
The feed query's start-index parameter
+
+
text_query
+
The feed query's q parameter
+
+
updated_max
+
The feed query's updated-max parameter
+
+
updated_min
+
The feed query's updated-min parameter
+
+
+Methods inherited from __builtin__.dict:
+
__cmp__(...)
x.__cmp__(y) <==> cmp(x,y)
+ +
__contains__(...)
D.__contains__(k) -> True if D has a key k, else False
+ +
__delitem__(...)
x.__delitem__(y) <==> del x[y]
+ +
__eq__(...)
x.__eq__(y) <==> x==y
+ +
__ge__(...)
x.__ge__(y) <==> x>=y
+ +
__getattribute__(...)
x.__getattribute__('name') <==> x.name
+ +
__getitem__(...)
x.__getitem__(y) <==> x[y]
+ +
__gt__(...)
x.__gt__(y) <==> x>y
+ +
__iter__(...)
x.__iter__() <==> iter(x)
+ +
__le__(...)
x.__le__(y) <==> x<=y
+ +
__len__(...)
x.__len__() <==> len(x)
+ +
__lt__(...)
x.__lt__(y) <==> x<y
+ +
__ne__(...)
x.__ne__(y) <==> x!=y
+ +
__repr__(...)
x.__repr__() <==> repr(x)
+ +
__setitem__(...)
x.__setitem__(i, y) <==> x[i]=y
+ +
__sizeof__(...)
D.__sizeof__() -> size of D in memory, in bytes
+ +
clear(...)
D.clear() -> None.  Remove all items from D.
+ +
copy(...)
D.copy() -> a shallow copy of D
+ +
get(...)
D.get(k[,d]) -> D[k] if k in D, else d.  d defaults to None.
+ +
has_key(...)
D.has_key(k) -> True if D has a key k, else False
+ +
items(...)
D.items() -> list of D's (key, value) pairs, as 2-tuples
+ +
iteritems(...)
D.iteritems() -> an iterator over the (key, value) items of D
+ +
iterkeys(...)
D.iterkeys() -> an iterator over the keys of D
+ +
itervalues(...)
D.itervalues() -> an iterator over the values of D
+ +
keys(...)
D.keys() -> list of D's keys
+ +
pop(...)
D.pop(k[,d]) -> v, remove specified key and return the corresponding value
+If key is not found, d is returned if given, otherwise KeyError is raised
+ +
popitem(...)
D.popitem() -> (k, v), remove and return some (key, value) pair as a
+2-tuple; but raise KeyError if D is empty
+ +
setdefault(...)
D.setdefault(k[,d]) -> D.get(k,d), also set D[k]=d if k not in D
+ +
update(...)
D.update(E, **F) -> None.  Update D from E and F: for k in E: D[k] = E[k]
+(if E has keys else: for (k, v) in E: D[k] = v) then: for k in F: D[k] = F[k]
+ +
values(...)
D.values() -> list of D's values
+ +
+Data and other attributes inherited from __builtin__.dict:
+
__hash__ = None
+ +
__new__ = <built-in method __new__ of type object at 0x7569a0>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+ +
fromkeys = <built-in method fromkeys of type object at 0xcd4230>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
+v defaults to None.
+ +

+ + + @@ -729,11 +1000,11 @@   text_query: string (optional) The contents of the q query parameter. This
              string is URL escaped upon conversion to a URI.
  params: dict (optional) Parameter value string pairs which become URL
-          params when translated to a URI. These parameters are added to
-          the query's items.
+      params when translated to a URI. These parameters are added to
+      the query's items.
  categories: list (optional) List of category strings which should be
-          included as query categories. See gdata.service.Query for
-          additional documentation.
+      included as query categories. See gdata.service.Query for
+      additional documentation.
 
Yields:
  A DocumentQuery object used to construct a URI based on the Document
@@ -799,8 +1070,6 @@
__gt__(...)
x.__gt__(y) <==> x>y
-
__hash__(...)
x.__hash__() <==> hash(x)
-
__iter__(...)
x.__iter__() <==> iter(x)
__le__(...)
x.__le__(y) <==> x<=y
@@ -815,6 +1084,8 @@
__setitem__(...)
x.__setitem__(i, y) <==> x[i]=y
+
__sizeof__(...)
D.__sizeof__() -> size of D in memory, in bytes
+
clear(...)
D.clear() -> None.  Remove all items from D.
copy(...)
D.copy() -> a shallow copy of D
@@ -848,9 +1119,11 @@
Data and other attributes inherited from __builtin__.dict:
-
__new__ = <built-in method __new__ of type object at 0x72b260>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__hash__ = None
+ +
__new__ = <built-in method __new__ of type object at 0x7569a0>
T.__new__(S, ...) -> a new object with type S, a subtype of T
-
fromkeys = <built-in method fromkeys of type object at 0xb1b8c0>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
+
fromkeys = <built-in method fromkeys of type object at 0xcdeae0>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
v defaults to None.
 
class DocumentQuery(gdata.service.Query)
   

@@ -861,16 +1134,27 @@         DATA_KIND_SCHEME = 'http://schemas.google.com/g/2005#kind'
-DOCUMENT_KIND_TERM = 'http://schemas.google.com/docs/2007#document'
-PRESENTATION_KIND_TERM = 'http://schemas.google.com/docs/2007#presentation'
-SPREADSHEET_KIND_TERM = 'http://schemas.google.com/docs/2007#spreadsheet'
-SUPPORTED_FILETYPES = {'CSV': 'text/csv', 'DOC': 'application/msword', 'HTM': 'text/html', 'HTML': 'text/html', 'ODS': 'application/x-vnd.oasis.opendocument.spreadsheet', 'ODT': 'application/vnd.oasis.opendocument.text', 'PPS': 'application/vnd.ms-powerpoint', 'PPT': 'application/vnd.ms-powerpoint', 'RTF': 'application/rtf', 'SXW': 'application/vnd.sun.xml.writer', ...}
-__author__ = 'api.jfisher (Jeff Fisher)'

+DOCUMENT_LABEL = 'document'
+FOLDERS_SCHEME_PREFIX = 'http://schemas.google.com/docs/2007/folders/'
+FOLDER_LABEL = 'folder'
+HIDDEN_LABEL_TERM = 'http://schemas.google.com/g/2005/labels#hidden'
+LABEL_SCHEME = 'http://schemas.google.com/g/2005/labels'
+MINE_LABEL_TERM = 'http://schemas.google.com/g/2005/labels#mine'
+PDF_LABEL = 'pdf'
+PRESENTATION_LABEL = 'presentation'
+PRIVATE_LABEL_TERM = 'http://schemas.google.com/g/2005/labels#private'
+SHARED_WITH_DOMAIN_LABEL_TERM = 'http://schemas.google.com/g/2005/labels#shared-with-domain'
+SPREADSHEET_LABEL = 'spreadsheet'
+STARRED_LABEL_TERM = 'http://schemas.google.com/g/2005/labels#starred'
+SUPPORTED_FILETYPES = {'CSV': 'text/csv', 'DOC': 'application/msword', 'DOCX': 'application/vnd.openxmlformats-officedocument.wordprocessingml.document', 'HTM': 'text/html', 'HTML': 'text/html', 'ODS': 'application/x-vnd.oasis.opendocument.spreadsheet', 'ODT': 'application/vnd.oasis.opendocument.text', 'PDF': 'application/pdf', 'PNG': 'image/png', 'PPS': 'application/vnd.ms-powerpoint', ...}
+TRASHED_LABEL_TERM = 'http://schemas.google.com/g/2005/labels#trashed'
+VIEWED_LABEL_TERM = 'http://schemas.google.com/g/2005/labels#viewed'
+__author__ = 'api.jfisher (Jeff Fisher), e.bidelman (Eric Bidelman)'

-
 
Author
       api.jfisher (Jeff Fisher)
+api.jfisher (Jeff Fisher), e.bidelman (Eric Bidelman) \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.dublincore.data.html python-gdata-2.0.8/pydocs/gdata.dublincore.data.html --- python-gdata-1.2.4/pydocs/gdata.dublincore.data.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.dublincore.data.html 2009-12-17 20:58:53.000000000 +0000 @@ -0,0 +1,1521 @@ + + +Python: module gdata.dublincore.data + + + + +
 
+ 
gdata.dublincore.data
index
/usr/local/svn/gdata-python-client/src/gdata/dublincore/data.py
+

Contains the data classes of the Dublin Core Metadata Initiative (DCMI) Extension

+

+ + + + + +
 
+Modules
       
atom
+

+ + + + + +
 
+Classes
       
+
atom.core.XmlElement(__builtin__.object) +
+
+
Creator +
Date +
Description +
Format +
Identifier +
Language +
Publisher +
Rights +
Subject +
Title +
+
+
+

+ + + + + + + +
 
+class Creator(atom.core.XmlElement)
   Entity primarily responsible for making the resource.
 
 
Method resolution order:
+
Creator
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Date(atom.core.XmlElement)
   Point or period of time associated with an event in the lifecycle of the resource.
 
 
Method resolution order:
+
Date
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Description(atom.core.XmlElement)
   Account of the resource.
 
 
Method resolution order:
+
Description
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Format(atom.core.XmlElement)
   File format, physical medium, or dimensions of the resource.
 
 
Method resolution order:
+
Format
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Identifier(atom.core.XmlElement)
   An unambiguous reference to the resource within a given context.
 
 
Method resolution order:
+
Identifier
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Language(atom.core.XmlElement)
   Language of the resource.
 
 
Method resolution order:
+
Language
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Publisher(atom.core.XmlElement)
   Entity responsible for making the resource available.
 
 
Method resolution order:
+
Publisher
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Rights(atom.core.XmlElement)
   Information about rights held in and over the resource.
 
 
Method resolution order:
+
Rights
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Subject(atom.core.XmlElement)
   Topic of the resource.
 
 
Method resolution order:
+
Subject
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Title(atom.core.XmlElement)
   Name given to the resource.
 
 
Method resolution order:
+
Title
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + +
 
+Data
       DC_TEMPLATE = '{http://purl.org/dc/terms/}%s'
+__author__ = 'j.s@google.com (Jeff Scudder)'

+ + + + + +
 
+Author
       j.s@google.com (Jeff Scudder)
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.finance.data.html python-gdata-2.0.8/pydocs/gdata.finance.data.html --- python-gdata-1.2.4/pydocs/gdata.finance.data.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.finance.data.html 2010-02-26 23:16:48.000000000 +0000 @@ -0,0 +1,3632 @@ + + +Python: module gdata.finance.data + + + + +
 
+ 
gdata.finance.data
index
/usr/local/svn/gdata-python-client/src/gdata/finance/data.py
+

Contains the data classes of the Google Finance Portfolio Data API

+

+ + + + + +
 
+Modules
       
atom
+
gdata
+

+ + + + + +
 
+Classes
       
+
atom.core.XmlElement(__builtin__.object) +
+
+
Commission +
CostBasis +
DaysGain +
Gain +
MarketValue +
PortfolioData +
PositionData +
Price +
Symbol +
TransactionData +
+
+
gdata.data.GDEntry(atom.data.Entry, gdata.data.LinkFinder) +
+
+
PortfolioEntry +
PositionEntry +
TransactionEntry +
+
+
gdata.data.GDFeed(atom.data.Feed, gdata.data.LinkFinder) +
+
+
PortfolioFeed +
PositionFeed +
TransactionFeed +
+
+
+

+ + + + + + + +
 
+class Commission(atom.core.XmlElement)
   Commission for the transaction
 
 
Method resolution order:
+
Commission
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
money = [<class 'gdata.data.Money'>]
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class CostBasis(atom.core.XmlElement)
   Cost basis for the portfolio or position
 
 
Method resolution order:
+
CostBasis
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
money = [<class 'gdata.data.Money'>]
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class DaysGain(atom.core.XmlElement)
   Today's gain for the portfolio or position
 
 
Method resolution order:
+
DaysGain
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
money = [<class 'gdata.data.Money'>]
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Gain(atom.core.XmlElement)
   Total gain for the portfolio or position
 
 
Method resolution order:
+
Gain
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
money = [<class 'gdata.data.Money'>]
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class MarketValue(atom.core.XmlElement)
   Market value for the portfolio or position
 
 
Method resolution order:
+
MarketValue
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
money = [<class 'gdata.data.Money'>]
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class PortfolioData(atom.core.XmlElement)
   Data for the portfolio
 
 
Method resolution order:
+
PortfolioData
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
cost_basis = <class 'gdata.finance.data.CostBasis'>
Cost basis for the portfolio or position
+ +
currency_code = 'currencyCode'
+ +
days_gain = <class 'gdata.finance.data.DaysGain'>
Today's gain for the portfolio or position
+ +
gain = <class 'gdata.finance.data.Gain'>
Total gain for the portfolio or position
+ +
gain_percentage = 'gainPercentage'
+ +
market_value = <class 'gdata.finance.data.MarketValue'>
Market value for the portfolio or position
+ +
return1w = 'return1w'
+ +
return1y = 'return1y'
+ +
return3m = 'return3m'
+ +
return3y = 'return3y'
+ +
return4w = 'return4w'
+ +
return5y = 'return5y'
+ +
return_overall = 'returnOverall'
+ +
return_y_t_d = 'returnYTD'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class PortfolioEntry(gdata.data.GDEntry)
   Describes an entry in a feed of Finance portfolios
 
 
Method resolution order:
+
PortfolioEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
portfolio_data = <class 'gdata.finance.data.PortfolioData'>
Data for the portfolio
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class PortfolioFeed(gdata.data.GDFeed)
   Describes a Finance portfolio feed
 
 
Method resolution order:
+
PortfolioFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.finance.data.PortfolioEntry'>]
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class PositionData(atom.core.XmlElement)
   Data for the position
 
 
Method resolution order:
+
PositionData
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
cost_basis = <class 'gdata.finance.data.CostBasis'>
Cost basis for the portfolio or position
+ +
days_gain = <class 'gdata.finance.data.DaysGain'>
Today's gain for the portfolio or position
+ +
gain = <class 'gdata.finance.data.Gain'>
Total gain for the portfolio or position
+ +
gain_percentage = 'gainPercentage'
+ +
market_value = <class 'gdata.finance.data.MarketValue'>
Market value for the portfolio or position
+ +
return1w = 'return1w'
+ +
return1y = 'return1y'
+ +
return3m = 'return3m'
+ +
return3y = 'return3y'
+ +
return4w = 'return4w'
+ +
return5y = 'return5y'
+ +
return_overall = 'returnOverall'
+ +
return_y_t_d = 'returnYTD'
+ +
shares = 'shares'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class PositionEntry(gdata.data.GDEntry)
   Describes an entry in a feed of Finance positions
 
 
Method resolution order:
+
PositionEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
position_data = <class 'gdata.finance.data.PositionData'>
Data for the position
+ +
symbol = <class 'gdata.finance.data.Symbol'>
Stock symbol for the company
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class PositionFeed(gdata.data.GDFeed)
   Describes a Finance position feed
 
 
Method resolution order:
+
PositionFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.finance.data.PositionEntry'>]
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class Price(atom.core.XmlElement)
   Price of the transaction
 
 
Method resolution order:
+
Price
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
money = [<class 'gdata.data.Money'>]
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Symbol(atom.core.XmlElement)
   Stock symbol for the company
 
 
Method resolution order:
+
Symbol
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
exchange = 'exchange'
+ +
full_name = 'fullName'
+ +
symbol = 'symbol'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class TransactionData(atom.core.XmlElement)
   Data for the transction
 
 
Method resolution order:
+
TransactionData
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
commission = <class 'gdata.finance.data.Commission'>
Commission for the transaction
+ +
date = 'date'
+ +
notes = 'notes'
+ +
price = <class 'gdata.finance.data.Price'>
Price of the transaction
+ +
shares = 'shares'
+ +
type = 'type'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class TransactionEntry(gdata.data.GDEntry)
   Describes an entry in a feed of Finance transactions
 
 
Method resolution order:
+
TransactionEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
transaction_data = <class 'gdata.finance.data.TransactionData'>
Data for the transction
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class TransactionFeed(gdata.data.GDFeed)
   Describes a Finance transaction feed
 
 
Method resolution order:
+
TransactionFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.finance.data.TransactionEntry'>]
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + +
 
+Data
       GF_TEMPLATE = '{http://schemas.google.com/finance/2007/}%s'
+__author__ = 'j.s@google.com (Jeff Scudder)'

+ + + + + +
 
+Author
       j.s@google.com (Jeff Scudder)
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.finance.html python-gdata-2.0.8/pydocs/gdata.finance.html --- python-gdata-1.2.4/pydocs/gdata.finance.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.finance.html 2009-11-25 01:04:14.000000000 +0000 @@ -0,0 +1,1535 @@ + + +Python: package gdata.finance + + + + +
 
+ 
gdata.finance
index
/usr/local/svn/gdata-python-client/src/gdata/finance/__init__.py
+

Contains extensions to Atom objects used with Google Finance.

+

+ + + + + +
 
+Package Contents
       
data
+
service
+

+ + + + + +
 
+Classes
       
+
atom.AtomBase(atom.ExtensionContainer) +
+
+
Money +
PortfolioData +
PositionData +
PositionFeedLink +
Symbol +
TransactionData +
TransactionFeedLink +
+
+
gdata.GDataEntry(atom.Entry, gdata.LinkFinder) +
+
+
PortfolioEntry +
PositionEntry +
TransactionEntry +
+
+
gdata.GDataFeed(atom.Feed, gdata.LinkFinder) +
+
+
PortfolioFeed +
PositionFeed +
TransactionFeed +
+
+
_Monies(atom.AtomBase) +
+
+
Commission +
CostBasis +
DaysGain +
Gain +
MarketValue +
Price +
+
+
+

+ + + + + + + +
 
+class Commission(_Monies)
   The <gf:commission> element.
 
 
Method resolution order:
+
Commission
+
_Monies
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods inherited from _Monies:
+
__init__(self, money=None, **kwargs)
+ +
__str__(self)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class CostBasis(_Monies)
   The <gf:costBasis> element.
 
 
Method resolution order:
+
CostBasis
+
_Monies
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods inherited from _Monies:
+
__init__(self, money=None, **kwargs)
+ +
__str__(self)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class DaysGain(_Monies)
   The <gf:daysGain> element.
 
 
Method resolution order:
+
DaysGain
+
_Monies
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods inherited from _Monies:
+
__init__(self, money=None, **kwargs)
+ +
__str__(self)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class Gain(_Monies)
   The <gf:gain> element.
 
 
Method resolution order:
+
Gain
+
_Monies
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods inherited from _Monies:
+
__init__(self, money=None, **kwargs)
+ +
__str__(self)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class MarketValue(_Monies)
   The <gf:marketValue> element.
 
 
Method resolution order:
+
MarketValue
+
_Monies
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods inherited from _Monies:
+
__init__(self, money=None, **kwargs)
+ +
__str__(self)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class Money(atom.AtomBase)
   The <gd:money> element.
 
 
Method resolution order:
+
Money
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, amount=None, currency_code=None, **kwargs)
+ +
__str__(self)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class PortfolioData(atom.AtomBase)
   The <gf:portfolioData> element.
 
 
Method resolution order:
+
PortfolioData
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, currency_code=None, gain_percentage=None, return1w=None, return4w=None, return3m=None, returnYTD=None, return1y=None, return3y=None, return5y=None, return_overall=None, cost_basis=None, days_gain=None, gain=None, market_value=None, **kwargs)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class PortfolioEntry(gdata.GDataEntry)
   An entry of the PortfolioFeed.

+A PortfolioEntry contains the portfolio's title along with PortfolioData
+such as currency, total market value, and overall performance statistics.
 
 
Method resolution order:
+
PortfolioEntry
+
gdata.GDataEntry
+
atom.Entry
+
atom.FeedEntryParent
+
atom.AtomBase
+
atom.ExtensionContainer
+
gdata.LinkFinder
+
atom.LinkFinder
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, portfolio_data=None, feed_link=None, **kwargs)
+ +
set_portfolio_title(self, portfolio_title)
+ +
+Data descriptors defined here:
+
portfolio_id
+
The portfolio ID. Do not confuse with portfolio.id.
+
+
portfolio_title
+
The portfolio title as a string (i.e. portfolio.title.text).
+
+
positions
+
Inlined PositionEntries are returned if PortfolioFeed was queried
+with positions='true'.
+
+
+Methods inherited from gdata.GDataEntry:
+
GetMediaURL(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
IsMedia(self)
Determines whether or not an entry is a GData Media entry.
+ +
+Data descriptors inherited from gdata.GDataEntry:
+
id
+
+
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from gdata.LinkFinder:
+
GetAclLink(self)
+ +
GetEditLink(self)
+ +
GetEditMediaLink(self)
The Picasa API mistakenly returns media-edit rather than edit-media, but
+this may change soon.
+ +
GetFeedLink(self)
+ +
GetHtmlLink(self)
Find the first link with rel of alternate and type of text/html

+Returns:
+  An atom.Link or None if no links matched
+ +
GetNextLink(self)
+ +
GetPostLink(self)
Get a link containing the POST target URL.

+The POST target URL is used to insert new entries.

+Returns:
+  A link object with a rel matching the POST type.
+ +
GetPrevLink(self)
+ +
GetSelfLink(self)
Find the first link with rel set to 'self'

+Returns:
+  An atom.Link or none if none of the links had rel equal to 'self'
+ +
+Methods inherited from atom.LinkFinder:
+
GetAlternateLink(self)
+ +
GetLicenseLink(self)
+ +

+ + + + + + + +
 
+class PortfolioFeed(gdata.GDataFeed)
   A feed that lists all of the user's portfolios.

+A portfolio is a collection of positions that the user holds in various
+securities, plus metadata. The PortfolioFeed lists all of the user's
+portfolios as a list of PortfolioEntries.
 
 
Method resolution order:
+
PortfolioFeed
+
gdata.GDataFeed
+
atom.Feed
+
atom.Source
+
atom.FeedEntryParent
+
atom.AtomBase
+
atom.ExtensionContainer
+
gdata.LinkFinder
+
atom.LinkFinder
+
__builtin__.object
+
+
+Methods inherited from gdata.GDataFeed:
+
__init__(self, author=None, category=None, contributor=None, generator=None, icon=None, atom_id=None, link=None, logo=None, rights=None, subtitle=None, title=None, updated=None, entry=None, total_results=None, start_index=None, items_per_page=None, extension_elements=None, extension_attributes=None, text=None)
Constructor for Source

+Args:
+  author: list (optional) A list of Author instances which belong to this
+      class.
+  category: list (optional) A list of Category instances
+  contributor: list (optional) A list on Contributor instances
+  generator: Generator (optional)
+  icon: Icon (optional)
+  id: Id (optional) The entry's Id element
+  link: list (optional) A list of Link instances
+  logo: Logo (optional)
+  rights: Rights (optional) The entry's Rights element
+  subtitle: Subtitle (optional) The entry's subtitle element
+  title: Title (optional) the entry's title element
+  updated: Updated (optional) the entry's updated element
+  entry: list (optional) A list of the Entry instances contained in the
+      feed.
+  text: String (optional) The text contents of the element. This is the
+      contents of the Entry's XML text node.
+      (Example: <foo>This is the text</foo>)
+  extension_elements: list (optional) A list of ExtensionElement instances
+      which are children of this element.
+  extension_attributes: dict (optional) A dictionary of strings which are
+      the values for additional XML attributes of this element.
+ +
+Data descriptors inherited from gdata.GDataFeed:
+
generator
+
+
id
+
+
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from gdata.LinkFinder:
+
GetAclLink(self)
+ +
GetEditLink(self)
+ +
GetEditMediaLink(self)
The Picasa API mistakenly returns media-edit rather than edit-media, but
+this may change soon.
+ +
GetFeedLink(self)
+ +
GetHtmlLink(self)
Find the first link with rel of alternate and type of text/html

+Returns:
+  An atom.Link or None if no links matched
+ +
GetNextLink(self)
+ +
GetPostLink(self)
Get a link containing the POST target URL.

+The POST target URL is used to insert new entries.

+Returns:
+  A link object with a rel matching the POST type.
+ +
GetPrevLink(self)
+ +
GetSelfLink(self)
Find the first link with rel set to 'self'

+Returns:
+  An atom.Link or none if none of the links had rel equal to 'self'
+ +
+Methods inherited from atom.LinkFinder:
+
GetAlternateLink(self)
+ +
GetLicenseLink(self)
+ +

+ + + + + + + +
 
+class PositionData(atom.AtomBase)
   The <gf:positionData> element.
 
 
Method resolution order:
+
PositionData
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, gain_percentage=None, return1w=None, return4w=None, return3m=None, returnYTD=None, return1y=None, return3y=None, return5y=None, return_overall=None, shares=None, cost_basis=None, days_gain=None, gain=None, market_value=None, **kwargs)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class PositionEntry(gdata.GDataEntry)
   An entry of the position feed.

+A PositionEntry contains the ticker exchange and Symbol for a stock,
+mutual fund, or other security, along with PositionData such as the
+number of units of that security that the user holds, and performance
+statistics.
 
 
Method resolution order:
+
PositionEntry
+
gdata.GDataEntry
+
atom.Entry
+
atom.FeedEntryParent
+
atom.AtomBase
+
atom.ExtensionContainer
+
gdata.LinkFinder
+
atom.LinkFinder
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, position_data=None, symbol=None, feed_link=None, **kwargs)
+ +
+Data descriptors defined here:
+
position_title
+
The position title as a string (i.e. position.title.text).
+
+
ticker_id
+
The position TICKER ID.
+
+
transactions
+
Inlined TransactionEntries are returned if PositionFeed is queried
+with transactions='true'.
+
+
+Methods inherited from gdata.GDataEntry:
+
GetMediaURL(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
IsMedia(self)
Determines whether or not an entry is a GData Media entry.
+ +
+Data descriptors inherited from gdata.GDataEntry:
+
id
+
+
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from gdata.LinkFinder:
+
GetAclLink(self)
+ +
GetEditLink(self)
+ +
GetEditMediaLink(self)
The Picasa API mistakenly returns media-edit rather than edit-media, but
+this may change soon.
+ +
GetFeedLink(self)
+ +
GetHtmlLink(self)
Find the first link with rel of alternate and type of text/html

+Returns:
+  An atom.Link or None if no links matched
+ +
GetNextLink(self)
+ +
GetPostLink(self)
Get a link containing the POST target URL.

+The POST target URL is used to insert new entries.

+Returns:
+  A link object with a rel matching the POST type.
+ +
GetPrevLink(self)
+ +
GetSelfLink(self)
Find the first link with rel set to 'self'

+Returns:
+  An atom.Link or none if none of the links had rel equal to 'self'
+ +
+Methods inherited from atom.LinkFinder:
+
GetAlternateLink(self)
+ +
GetLicenseLink(self)
+ +

+ + + + + + + +
 
+class PositionFeed(gdata.GDataFeed)
   A feed that lists all of the positions in a particular portfolio.

+A position is a collection of information about a security that the
+user holds. The PositionFeed lists all of the positions in a particular
+portfolio as a list of PositionEntries.
 
 
Method resolution order:
+
PositionFeed
+
gdata.GDataFeed
+
atom.Feed
+
atom.Source
+
atom.FeedEntryParent
+
atom.AtomBase
+
atom.ExtensionContainer
+
gdata.LinkFinder
+
atom.LinkFinder
+
__builtin__.object
+
+
+Methods inherited from gdata.GDataFeed:
+
__init__(self, author=None, category=None, contributor=None, generator=None, icon=None, atom_id=None, link=None, logo=None, rights=None, subtitle=None, title=None, updated=None, entry=None, total_results=None, start_index=None, items_per_page=None, extension_elements=None, extension_attributes=None, text=None)
Constructor for Source

+Args:
+  author: list (optional) A list of Author instances which belong to this
+      class.
+  category: list (optional) A list of Category instances
+  contributor: list (optional) A list on Contributor instances
+  generator: Generator (optional)
+  icon: Icon (optional)
+  id: Id (optional) The entry's Id element
+  link: list (optional) A list of Link instances
+  logo: Logo (optional)
+  rights: Rights (optional) The entry's Rights element
+  subtitle: Subtitle (optional) The entry's subtitle element
+  title: Title (optional) the entry's title element
+  updated: Updated (optional) the entry's updated element
+  entry: list (optional) A list of the Entry instances contained in the
+      feed.
+  text: String (optional) The text contents of the element. This is the
+      contents of the Entry's XML text node.
+      (Example: <foo>This is the text</foo>)
+  extension_elements: list (optional) A list of ExtensionElement instances
+      which are children of this element.
+  extension_attributes: dict (optional) A dictionary of strings which are
+      the values for additional XML attributes of this element.
+ +
+Data descriptors inherited from gdata.GDataFeed:
+
generator
+
+
id
+
+
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from gdata.LinkFinder:
+
GetAclLink(self)
+ +
GetEditLink(self)
+ +
GetEditMediaLink(self)
The Picasa API mistakenly returns media-edit rather than edit-media, but
+this may change soon.
+ +
GetFeedLink(self)
+ +
GetHtmlLink(self)
Find the first link with rel of alternate and type of text/html

+Returns:
+  An atom.Link or None if no links matched
+ +
GetNextLink(self)
+ +
GetPostLink(self)
Get a link containing the POST target URL.

+The POST target URL is used to insert new entries.

+Returns:
+  A link object with a rel matching the POST type.
+ +
GetPrevLink(self)
+ +
GetSelfLink(self)
Find the first link with rel set to 'self'

+Returns:
+  An atom.Link or none if none of the links had rel equal to 'self'
+ +
+Methods inherited from atom.LinkFinder:
+
GetAlternateLink(self)
+ +
GetLicenseLink(self)
+ +

+ + + + + + + +
 
+class PositionFeedLink(atom.AtomBase)
   Link to PositionFeed embedded in PortfolioEntry.

+If a PortfolioFeed is queried with positions='true', the PositionFeeds
+are inlined in the returned PortfolioEntries. These PositionFeeds are
+accessible via PositionFeedLink's feed attribute.
 
 
Method resolution order:
+
PositionFeedLink
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, href=None, feed=None, **kwargs)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class Price(_Monies)
   The <gf:price> element.
 
 
Method resolution order:
+
Price
+
_Monies
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods inherited from _Monies:
+
__init__(self, money=None, **kwargs)
+ +
__str__(self)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class Symbol(atom.AtomBase)
   The <gf:symbol> element.
 
 
Method resolution order:
+
Symbol
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, full_name=None, exchange=None, symbol=None, **kwargs)
+ +
__str__(self)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class TransactionData(atom.AtomBase)
   The <gf:transactionData> element.
 
 
Method resolution order:
+
TransactionData
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, type=None, date=None, shares=None, notes=None, commission=None, price=None, **kwargs)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class TransactionEntry(gdata.GDataEntry)
   An entry of the transaction feed.

+A TransactionEntry contains TransactionData such as the transaction
+type (Buy,  Sell,  Sell Short, or  Buy to Cover), the number of units,
+the date, the price, any commission, and any notes.
 
 
Method resolution order:
+
TransactionEntry
+
gdata.GDataEntry
+
atom.Entry
+
atom.FeedEntryParent
+
atom.AtomBase
+
atom.ExtensionContainer
+
gdata.LinkFinder
+
atom.LinkFinder
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, transaction_data=None, **kwargs)
+ +
+Data descriptors defined here:
+
transaction_id
+
The transaction ID.
+
+
+Methods inherited from gdata.GDataEntry:
+
GetMediaURL(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
IsMedia(self)
Determines whether or not an entry is a GData Media entry.
+ +
+Data descriptors inherited from gdata.GDataEntry:
+
id
+
+
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from gdata.LinkFinder:
+
GetAclLink(self)
+ +
GetEditLink(self)
+ +
GetEditMediaLink(self)
The Picasa API mistakenly returns media-edit rather than edit-media, but
+this may change soon.
+ +
GetFeedLink(self)
+ +
GetHtmlLink(self)
Find the first link with rel of alternate and type of text/html

+Returns:
+  An atom.Link or None if no links matched
+ +
GetNextLink(self)
+ +
GetPostLink(self)
Get a link containing the POST target URL.

+The POST target URL is used to insert new entries.

+Returns:
+  A link object with a rel matching the POST type.
+ +
GetPrevLink(self)
+ +
GetSelfLink(self)
Find the first link with rel set to 'self'

+Returns:
+  An atom.Link or none if none of the links had rel equal to 'self'
+ +
+Methods inherited from atom.LinkFinder:
+
GetAlternateLink(self)
+ +
GetLicenseLink(self)
+ +

+ + + + + + + +
 
+class TransactionFeed(gdata.GDataFeed)
   A feed that lists all of the transactions that have been recorded for
+a particular position.

+A transaction is a collection of information about an instance of
+buying or selling a particular security. The TransactionFeed lists all
+of the transactions that have been recorded for a particular position
+as a list of TransactionEntries.
 
 
Method resolution order:
+
TransactionFeed
+
gdata.GDataFeed
+
atom.Feed
+
atom.Source
+
atom.FeedEntryParent
+
atom.AtomBase
+
atom.ExtensionContainer
+
gdata.LinkFinder
+
atom.LinkFinder
+
__builtin__.object
+
+
+Methods inherited from gdata.GDataFeed:
+
__init__(self, author=None, category=None, contributor=None, generator=None, icon=None, atom_id=None, link=None, logo=None, rights=None, subtitle=None, title=None, updated=None, entry=None, total_results=None, start_index=None, items_per_page=None, extension_elements=None, extension_attributes=None, text=None)
Constructor for Source

+Args:
+  author: list (optional) A list of Author instances which belong to this
+      class.
+  category: list (optional) A list of Category instances
+  contributor: list (optional) A list on Contributor instances
+  generator: Generator (optional)
+  icon: Icon (optional)
+  id: Id (optional) The entry's Id element
+  link: list (optional) A list of Link instances
+  logo: Logo (optional)
+  rights: Rights (optional) The entry's Rights element
+  subtitle: Subtitle (optional) The entry's subtitle element
+  title: Title (optional) the entry's title element
+  updated: Updated (optional) the entry's updated element
+  entry: list (optional) A list of the Entry instances contained in the
+      feed.
+  text: String (optional) The text contents of the element. This is the
+      contents of the Entry's XML text node.
+      (Example: <foo>This is the text</foo>)
+  extension_elements: list (optional) A list of ExtensionElement instances
+      which are children of this element.
+  extension_attributes: dict (optional) A dictionary of strings which are
+      the values for additional XML attributes of this element.
+ +
+Data descriptors inherited from gdata.GDataFeed:
+
generator
+
+
id
+
+
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from gdata.LinkFinder:
+
GetAclLink(self)
+ +
GetEditLink(self)
+ +
GetEditMediaLink(self)
The Picasa API mistakenly returns media-edit rather than edit-media, but
+this may change soon.
+ +
GetFeedLink(self)
+ +
GetHtmlLink(self)
Find the first link with rel of alternate and type of text/html

+Returns:
+  An atom.Link or None if no links matched
+ +
GetNextLink(self)
+ +
GetPostLink(self)
Get a link containing the POST target URL.

+The POST target URL is used to insert new entries.

+Returns:
+  A link object with a rel matching the POST type.
+ +
GetPrevLink(self)
+ +
GetSelfLink(self)
Find the first link with rel set to 'self'

+Returns:
+  An atom.Link or none if none of the links had rel equal to 'self'
+ +
+Methods inherited from atom.LinkFinder:
+
GetAlternateLink(self)
+ +
GetLicenseLink(self)
+ +

+ + + + + + + +
 
+class TransactionFeedLink(atom.AtomBase)
   Link to TransactionFeed embedded in PositionEntry.

+If a PositionFeed is queried with transactions='true', TransactionFeeds
+are inlined in the returned PositionEntries. These TransactionFeeds are
+accessible via TransactionFeedLink's feed attribute.
 
 
Method resolution order:
+
TransactionFeedLink
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, href=None, feed=None, **kwargs)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + +
 
+Functions
       
CommissionFromString(xml_string)
+
CostBasisFromString(xml_string)
+
DaysGainFromString(xml_string)
+
GainFromString(xml_string)
+
MarketValueFromString(xml_string)
+
MoneyFromString(xml_string)
+
PortfolioDataFromString(xml_string)
+
PortfolioEntryFromString(xml_string)
+
PortfolioFeedFromString(xml_string)
+
PositionDataFromString(xml_string)
+
PositionEntryFromString(xml_string)
+
PositionFeedFromString(xml_string)
+
PriceFromString(xml_string)
+
SymbolFromString(xml_string)
+
TransactionDataFromString(xml_string)
+
TransactionEntryFromString(xml_string)
+
TransactionFeedFromString(xml_string)
+

+ + + + + +
 
+Data
       GD_NAMESPACE = 'http://schemas.google.com/g/2005'
+GF_NAMESPACE = 'http://schemas.google.com/finance/2007'
+__author__ = 'thesweeheng@gmail.com'

+ + + + + +
 
+Author
       thesweeheng@gmail.com
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.finance.service.html python-gdata-2.0.8/pydocs/gdata.finance.service.html --- python-gdata-1.2.4/pydocs/gdata.finance.service.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.finance.service.html 2010-02-26 23:16:48.000000000 +0000 @@ -0,0 +1,1044 @@ + + +Python: module gdata.finance.service + + + + +
 
+ 
gdata.finance.service
index
/usr/local/svn/gdata-python-client/src/gdata/finance/service.py
+

Classes to interact with the Google Finance server.

+

+ + + + + +
 
+Modules
       
atom
+
gdata
+

+ + + + + +
 
+Classes
       
+
gdata.service.GDataService(atom.service.AtomService) +
+
+
FinanceService +
+
+
gdata.service.Query(__builtin__.dict) +
+
+
PortfolioQuery +
PositionQuery +
+
+
+

+ + + + + +
 
+class FinanceService(gdata.service.GDataService)
    
Method resolution order:
+
FinanceService
+
gdata.service.GDataService
+
atom.service.AtomService
+
__builtin__.object
+
+
+Methods defined here:
+
AddPortfolio(self, portfolio_entry=None)
+ +
AddTransaction(self, transaction_entry=None, transaction_feed=None, position_entry=None, portfolio_id=None, ticker_id=None)
Args:
+  transaction_entry: TransactionEntry (required)
+  transaction_feed: TransactionFeed (optional; see Notes)
+  position_entry: PositionEntry (optional; see Notes)
+  portfolio_id: string (optional; see Notes) This may be obtained
+      from a PortfolioEntry's portfolio_id attribute.
+  ticker_id: string (optional; see Notes) This may be obtained from
+      a PositionEntry's ticker_id attribute. Alternatively it can
+      be constructed using the security's exchange and symbol,
+      e.g. 'NASDAQ:GOOG'

+Notes:
+  Either a TransactionFeed OR a PositionEntry OR (a portfolio ID AND
+  ticker ID) must be provided.
+ +
DeletePortfolio(self, portfolio_entry=None)
+ +
DeletePosition(self, position_entry=None, portfolio_id=None, ticker_id=None, transaction_feed=None)
A position is deleted by deleting all its transactions.

+Args:
+  position_entry: PositionEntry (optional; see Notes)
+  portfolio_id: string (optional; see Notes) This may be obtained
+      from a PortfolioEntry's portfolio_id attribute.
+  ticker_id: string (optional; see Notes) This may be obtained from
+      a PositionEntry's ticker_id attribute. Alternatively it can
+      be constructed using the security's exchange and symbol,
+      e.g. 'NASDAQ:GOOG'
+  transaction_feed: TransactionFeed (optional; see Notes)

+Notes:
+  Either a PositionEntry OR (a portfolio ID AND ticker ID) OR
+  a TransactionFeed must be provided.
+ +
DeleteTransaction(self, transaction_entry=None)
+ +
GetPortfolio(self, portfolio_id=None, query=None)
+ +
GetPortfolioFeed(self, query=None)
+ +
GetPosition(self, portfolio_id=None, ticker_id=None, query=None)
+ +
GetPositionFeed(self, portfolio_entry=None, portfolio_id=None, query=None)
Args:
+  portfolio_entry: PortfolioEntry (optional; see Notes)
+  portfolio_id: string (optional; see Notes) This may be obtained
+      from a PortfolioEntry's portfolio_id attribute.
+  query: PortfolioQuery (optional)

+Notes:
+  Either a PortfolioEntry OR a portfolio ID must be provided.
+ +
GetTransaction(self, portfolio_id=None, ticker_id=None, transaction_id=None)
+ +
GetTransactionFeed(self, position_entry=None, portfolio_id=None, ticker_id=None)
Args:
+  position_entry: PositionEntry (optional; see Notes)
+  portfolio_id: string (optional; see Notes) This may be obtained
+      from a PortfolioEntry's portfolio_id attribute.
+  ticker_id: string (optional; see Notes) This may be obtained from
+      a PositionEntry's ticker_id attribute. Alternatively it can
+      be constructed using the security's exchange and symbol,
+      e.g. 'NASDAQ:GOOG'

+Notes:
+  Either a PositionEntry OR (a portfolio ID AND ticker ID) must
+  be provided.
+ +
UpdatePortfolio(self, portfolio_entry=None)
+ +
UpdateTransaction(self, transaction_entry=None)
+ +
__init__(self, email=None, password=None, source=None, server='finance.google.com', **kwargs)
Creates a client for the Finance service.

+Args:
+  email: string (optional) The user's email address, used for
+      authentication.
+  password: string (optional) The user's password.
+  source: string (optional) The name of the user's application.
+  server: string (optional) The name of the server to which a connection
+      will be opened. Default value: 'finance.google.com'.
+  **kwargs: The other parameters to pass to gdata.service.GDataService
+      constructor.
+ +
+Methods inherited from gdata.service.GDataService:
+
AuthSubTokenInfo(self)
Fetches the AuthSub token's metadata from the server.

+Raises:
+  NonAuthSubToken if the user's auth token is not an AuthSub token
+ +
ClientLogin(self, username, password, account_type=None, service=None, auth_service_url=None, source=None, captcha_token=None, captcha_response=None)
Convenience method for authenticating using ProgrammaticLogin. 

+Sets values for email, password, and other optional members.

+Args:
+  username:
+  password:
+  account_type: string (optional)
+  service: string (optional)
+  auth_service_url: string (optional)
+  captcha_token: string (optional)
+  captcha_response: string (optional)
+ +
Delete(self, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=4)
Deletes the entry at the given URI.

+Args:
+  uri: string The URI of the entry to be deleted. Example: 
+       '/base/feeds/items/ITEM-ID'
+  extra_headers: dict (optional) HTTP headers which are to be included.
+                 The client automatically sets the Content-Type and
+                 Authorization headers.
+  url_params: dict (optional) Additional URL parameters to be included
+              in the URI. These are translated into query arguments
+              in the form '&dict_key=value&...'.
+              Example: {'max-results': '250'} becomes &max-results=250
+  escape_params: boolean (optional) If false, the calling code has already
+                 ensured that the query will form a valid URL (all
+                 reserved characters have been escaped). If true, this
+                 method will escape the query and any URL parameters
+                 provided.

+Returns:
+  True if the entry was deleted.
+ +
FetchOAuthRequestToken(self, scopes=None, extra_parameters=None, request_url='https://www.google.com/accounts/OAuthGetRequestToken', oauth_callback=None)
Fetches and sets the OAuth request token and returns it.

+Args:
+  scopes: string or list of string base URL(s) of the service(s) to be
+      accessed. If None, then this method tries to determine the
+      scope(s) from the current service.
+  extra_parameters: dict (optional) key-value pairs as any additional
+      parameters to be included in the URL and signature while making a
+      request for fetching an OAuth request token. All the OAuth parameters
+      are added by default. But if provided through this argument, any
+      default parameters will be overwritten. For e.g. a default parameter
+      oauth_version 1.0 can be overwritten if
+      extra_parameters = {'oauth_version': '2.0'}
+  request_url: Request token URL. The default is
+      'https://www.google.com/accounts/OAuthGetRequestToken'.
+  oauth_callback: str (optional) If set, it is assume the client is using
+      the OAuth v1.0a protocol where the callback url is sent in the
+      request token step.  If the oauth_callback is also set in
+      extra_params, this value will override that one.

+Returns:
+  The fetched request token as a gdata.auth.OAuthToken object.

+Raises:
+  FetchingOAuthRequestTokenFailed if the server responded to the request
+  with an error.
+ +
GenerateAuthSubURL(self, next, scope, secure=False, session=True, domain='default')
Generate a URL at which the user will login and be redirected back.

+Users enter their credentials on a Google login page and a token is sent
+to the URL specified in next. See documentation for AuthSub login at:
+http://code.google.com/apis/accounts/docs/AuthSub.html

+Args:
+  next: string The URL user will be sent to after logging in.
+  scope: string or list of strings. The URLs of the services to be 
+         accessed.
+  secure: boolean (optional) Determines whether or not the issued token
+          is a secure token.
+  session: boolean (optional) Determines whether or not the issued token
+           can be upgraded to a session token.
+ +
GenerateOAuthAuthorizationURL(self, request_token=None, callback_url=None, extra_params=None, include_scopes_in_callback=False, scopes_param_prefix='oauth_token_scope', request_url='https://www.google.com/accounts/OAuthAuthorizeToken')
Generates URL at which user will login to authorize the request token.

+Args:
+  request_token: gdata.auth.OAuthToken (optional) OAuth request token.
+      If not specified, then the current token will be used if it is of
+      type <gdata.auth.OAuthToken>, else it is found by looking in the
+      token_store by looking for a token for the current scope.    
+  callback_url: string (optional) The URL user will be sent to after
+      logging in and granting access.
+  extra_params: dict (optional) Additional parameters to be sent.
+  include_scopes_in_callback: Boolean (default=False) if set to True, and
+      if 'callback_url' is present, the 'callback_url' will be modified to
+      include the scope(s) from the request token as a URL parameter. The
+      key for the 'callback' URL's scope parameter will be
+      OAUTH_SCOPE_URL_PARAM_NAME. The benefit of including the scope URL as
+      a parameter to the 'callback' URL, is that the page which receives
+      the OAuth token will be able to tell which URLs the token grants
+      access to.
+  scopes_param_prefix: string (default='oauth_token_scope') The URL
+      parameter key which maps to the list of valid scopes for the token.
+      This URL parameter will be included in the callback URL along with
+      the scopes of the token as value if include_scopes_in_callback=True.
+  request_url: Authorization URL. The default is
+      'https://www.google.com/accounts/OAuthAuthorizeToken'.
+Returns:
+  A string URL at which the user is required to login.

+Raises:
+  NonOAuthToken if the user's request token is not an OAuth token or if a
+  request token was not available.
+ +
Get(self, uri, extra_headers=None, redirects_remaining=4, encoding='UTF-8', converter=None)
Query the GData API with the given URI

+The uri is the portion of the URI after the server value 
+(ex: www.google.com).

+To perform a query against Google Base, set the server to 
+'base.google.com' and set the uri to '/base/feeds/...', where ... is 
+your query. For example, to find snippets for all digital cameras uri 
+should be set to: '/base/feeds/snippets?bq=digital+camera'

+Args:
+  uri: string The query in the form of a URI. Example:
+       '/base/feeds/snippets?bq=digital+camera'.
+  extra_headers: dictionary (optional) Extra HTTP headers to be included
+                 in the GET request. These headers are in addition to 
+                 those stored in the client's additional_headers property.
+                 The client automatically sets the Content-Type and 
+                 Authorization headers.
+  redirects_remaining: int (optional) Tracks the number of additional
+      redirects this method will allow. If the service object receives
+      a redirect and remaining is 0, it will not follow the redirect. 
+      This was added to avoid infinite redirect loops.
+  encoding: string (optional) The character encoding for the server's
+      response. Default is UTF-8
+  converter: func (optional) A function which will transform
+      the server's results before it is returned. Example: use 
+      GDataFeedFromString to parse the server response as if it
+      were a GDataFeed.

+Returns:
+  If there is no ResultsTransformer specified in the call, a GDataFeed 
+  or GDataEntry depending on which is sent from the server. If the 
+  response is niether a feed or entry and there is no ResultsTransformer,
+  return a string. If there is a ResultsTransformer, the returned value 
+  will be that of the ResultsTransformer function.
+ +
GetAuthSubToken(self)
Returns the AuthSub token as a string.

+If the token is an gdta.auth.AuthSubToken, the Authorization Label
+("AuthSub token") is removed.

+This method examines the current_token to see if it is an AuthSubToken
+or SecureAuthSubToken. If not, it searches the token_store for a token
+which matches the current scope.

+The current scope is determined by the service name string member.

+Returns:
+  If the current_token is set to an AuthSubToken/SecureAuthSubToken,
+  return the token string. If there is no current_token, a token string
+  for a token which matches the service object's default scope is returned.
+  If there are no tokens valid for the scope, returns None.
+ +
GetClientLoginToken(self)
Returns the token string for the current token or a token matching the 
+service scope.

+If the current_token is a ClientLoginToken, the token string for 
+the current token is returned. If the current_token is not set, this method
+searches for a token in the token_store which is valid for the service 
+object's current scope.

+The current scope is determined by the service name string member.
+The token string is the end of the Authorization header, it doesn not
+include the ClientLogin label.
+ +
GetEntry(self, uri, extra_headers=None)
Query the GData API with the given URI and receive an Entry.

+See also documentation for gdata.service.Get

+Args:
+  uri: string The query in the form of a URI. Example:
+       '/base/feeds/snippets?bq=digital+camera'.
+  extra_headers: dictionary (optional) Extra HTTP headers to be included
+                 in the GET request. These headers are in addition to
+                 those stored in the client's additional_headers property.
+                 The client automatically sets the Content-Type and
+                 Authorization headers.

+Returns:
+  A GDataEntry built from the XML in the server's response.
+ +
GetFeed(self, uri, extra_headers=None, converter=<function GDataFeedFromString at 0x7f5d8a0a3d70>)
Query the GData API with the given URI and receive a Feed.

+See also documentation for gdata.service.Get

+Args:
+  uri: string The query in the form of a URI. Example:
+       '/base/feeds/snippets?bq=digital+camera'.
+  extra_headers: dictionary (optional) Extra HTTP headers to be included
+                 in the GET request. These headers are in addition to
+                 those stored in the client's additional_headers property.
+                 The client automatically sets the Content-Type and
+                 Authorization headers.

+Returns:
+  A GDataFeed built from the XML in the server's response.
+ +
GetGeneratorFromLinkFinder(self, link_finder, func, num_retries=3, delay=1, backoff=2)
returns a generator for pagination
+ +
GetMedia(self, uri, extra_headers=None)
Returns a MediaSource containing media and its metadata from the given
+URI string.
+ +
GetNext(self, feed)
Requests the next 'page' of results in the feed.

+This method uses the feed's next link to request an additional feed
+and uses the class of the feed to convert the results of the GET request.

+Args:
+  feed: atom.Feed or a subclass. The feed should contain a next link and
+      the type of the feed will be applied to the results from the 
+      server. The new feed which is returned will be of the same class
+      as this feed which was passed in.

+Returns:
+  A new feed representing the next set of results in the server's feed.
+  The type of this feed will match that of the feed argument.
+ +
GetOAuthInputParameters(self)
+ +
GetWithRetries(self, uri, extra_headers=None, redirects_remaining=4, encoding='UTF-8', converter=None, num_retries=3, delay=1, backoff=2, logger=None)
This is a wrapper method for Get with retring capability.

+To avoid various errors while retrieving bulk entities by retring
+specified times.

+Note this method relies on the time module and so may not be usable
+by default in Python2.2.

+Args:
+  num_retries: integer The retry count.
+  delay: integer The initial delay for retring.
+  backoff: integer how much the delay should lengthen after each failure.
+  logger: an object which has a debug(str) method to receive logging
+          messages. Recommended that you pass in the logging module.
+Raises:
+  ValueError if any of the parameters has an invalid value.
+  RanOutOfTries on failure after number of retries.
+ +
Post(self, data, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=4, media_source=None, converter=None)
Insert or update  data into a GData service at the given URI.

+Args:
+  data: string, ElementTree._Element, atom.Entry, or gdata.GDataEntry The
+        XML to be sent to the uri.
+  uri: string The location (feed) to which the data should be inserted.
+       Example: '/base/feeds/items'.
+  extra_headers: dict (optional) HTTP headers which are to be included.
+                 The client automatically sets the Content-Type,
+                 Authorization, and Content-Length headers.
+  url_params: dict (optional) Additional URL parameters to be included
+              in the URI. These are translated into query arguments
+              in the form '&dict_key=value&...'.
+              Example: {'max-results': '250'} becomes &max-results=250
+  escape_params: boolean (optional) If false, the calling code has already
+                 ensured that the query will form a valid URL (all
+                 reserved characters have been escaped). If true, this
+                 method will escape the query and any URL parameters
+                 provided.
+  media_source: MediaSource (optional) Container for the media to be sent
+      along with the entry, if provided.
+  converter: func (optional) A function which will be executed on the
+      server's response. Often this is a function like
+      GDataEntryFromString which will parse the body of the server's
+      response and return a GDataEntry.

+Returns:
+  If the post succeeded, this method will return a GDataFeed, GDataEntry,
+  or the results of running converter on the server's result body (if
+  converter was specified).
+ +
PostOrPut(self, verb, data, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=4, media_source=None, converter=None)
Insert data into a GData service at the given URI.

+Args:
+  verb: string, either 'POST' or 'PUT'
+  data: string, ElementTree._Element, atom.Entry, or gdata.GDataEntry The
+        XML to be sent to the uri. 
+  uri: string The location (feed) to which the data should be inserted. 
+       Example: '/base/feeds/items'. 
+  extra_headers: dict (optional) HTTP headers which are to be included. 
+                 The client automatically sets the Content-Type,
+                 Authorization, and Content-Length headers.
+  url_params: dict (optional) Additional URL parameters to be included
+              in the URI. These are translated into query arguments
+              in the form '&dict_key=value&...'.
+              Example: {'max-results': '250'} becomes &max-results=250
+  escape_params: boolean (optional) If false, the calling code has already
+                 ensured that the query will form a valid URL (all
+                 reserved characters have been escaped). If true, this
+                 method will escape the query and any URL parameters
+                 provided.
+  media_source: MediaSource (optional) Container for the media to be sent
+      along with the entry, if provided.
+  converter: func (optional) A function which will be executed on the 
+      server's response. Often this is a function like 
+      GDataEntryFromString which will parse the body of the server's 
+      response and return a GDataEntry.

+Returns:
+  If the post succeeded, this method will return a GDataFeed, GDataEntry,
+  or the results of running converter on the server's result body (if
+  converter was specified).
+ +
ProgrammaticLogin(self, captcha_token=None, captcha_response=None)
Authenticates the user and sets the GData Auth token.

+Login retreives a temporary auth token which must be used with all
+requests to GData services. The auth token is stored in the GData client
+object.

+Login is also used to respond to a captcha challenge. If the user's login
+attempt failed with a CaptchaRequired error, the user can respond by
+calling Login with the captcha token and the answer to the challenge.

+Args:
+  captcha_token: string (optional) The identifier for the captcha challenge
+                 which was presented to the user.
+  captcha_response: string (optional) The user's answer to the captch 
+                    challenge.

+Raises:
+  CaptchaRequired if the login service will require a captcha response
+  BadAuthentication if the login service rejected the username or password
+  Error if the login service responded with a 403 different from the above
+ +
Put(self, data, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=3, media_source=None, converter=None)
Updates an entry at the given URI.

+Args:
+  data: string, ElementTree._Element, or xml_wrapper.ElementWrapper The 
+        XML containing the updated data.
+  uri: string A URI indicating entry to which the update will be applied.
+       Example: '/base/feeds/items/ITEM-ID'
+  extra_headers: dict (optional) HTTP headers which are to be included.
+                 The client automatically sets the Content-Type,
+                 Authorization, and Content-Length headers.
+  url_params: dict (optional) Additional URL parameters to be included
+              in the URI. These are translated into query arguments
+              in the form '&dict_key=value&...'.
+              Example: {'max-results': '250'} becomes &max-results=250
+  escape_params: boolean (optional) If false, the calling code has already
+                 ensured that the query will form a valid URL (all
+                 reserved characters have been escaped). If true, this
+                 method will escape the query and any URL parameters
+                 provided.
+  converter: func (optional) A function which will be executed on the 
+      server's response. Often this is a function like 
+      GDataEntryFromString which will parse the body of the server's 
+      response and return a GDataEntry.

+Returns:
+  If the put succeeded, this method will return a GDataFeed, GDataEntry,
+  or the results of running converter on the server's result body (if
+  converter was specified).
+ +
RevokeAuthSubToken(self)
Revokes an existing AuthSub token.

+Raises:
+  NonAuthSubToken if the user's auth token is not an AuthSub token
+ +
RevokeOAuthToken(self, request_url='https://www.google.com/accounts/AuthSubRevokeToken')
Revokes an existing OAuth token.

+request_url: Token revoke URL. The default is
+      'https://www.google.com/accounts/AuthSubRevokeToken'.
+Raises:
+  NonOAuthToken if the user's auth token is not an OAuth token.
+  RevokingOAuthTokenFailed if request for revoking an OAuth token failed.
+ +
SetAuthSubToken(self, token, scopes=None, rsa_key=None)
Sets the token sent in requests to an AuthSub token.

+Sets the current_token and attempts to add the token to the token_store.

+Only use this method if you have received a token from the AuthSub
+service. The auth token is set automatically when UpgradeToSessionToken()
+is used. See documentation for Google AuthSub here:
+http://code.google.com/apis/accounts/AuthForWebApps.html 

+Args:
+ token: gdata.auth.AuthSubToken or gdata.auth.SecureAuthSubToken or string
+        The token returned by the AuthSub service. If the token is an
+        AuthSubToken or SecureAuthSubToken, the scope information stored in
+        the token is used. If the token is a string, the scopes parameter is
+        used to determine the valid scopes.
+ scopes: list of URLs for which the token is valid. This is only used
+         if the token parameter is a string.
+ rsa_key: string (optional) Private key required for RSA_SHA1 signature
+          method.  This parameter is necessary if the token is a string
+          representing a secure token.
+ +
SetClientLoginToken(self, token, scopes=None)
Sets the token sent in requests to a ClientLogin token.

+This method sets the current_token to a new ClientLoginToken and it 
+also attempts to add the ClientLoginToken to the token_store.

+Only use this method if you have received a token from the ClientLogin
+service. The auth_token is set automatically when ProgrammaticLogin()
+is used. See documentation for Google ClientLogin here:
+http://code.google.com/apis/accounts/docs/AuthForInstalledApps.html

+Args:
+  token: string or instance of a ClientLoginToken.
+ +
SetOAuthInputParameters(self, signature_method, consumer_key, consumer_secret=None, rsa_key=None, two_legged_oauth=False, requestor_id=None)
Sets parameters required for using OAuth authentication mechanism.

+NOTE: Though consumer_secret and rsa_key are optional, either of the two
+is required depending on the value of the signature_method.

+Args:
+  signature_method: class which provides implementation for strategy class
+      oauth.oauth.OAuthSignatureMethod. Signature method to be used for
+      signing each request. Valid implementations are provided as the
+      constants defined by gdata.auth.OAuthSignatureMethod. Currently
+      they are gdata.auth.OAuthSignatureMethod.RSA_SHA1 and
+      gdata.auth.OAuthSignatureMethod.HMAC_SHA1
+  consumer_key: string Domain identifying third_party web application.
+  consumer_secret: string (optional) Secret generated during registration.
+      Required only for HMAC_SHA1 signature method.
+  rsa_key: string (optional) Private key required for RSA_SHA1 signature
+      method.
+  two_legged_oauth: boolean (optional) Enables two-legged OAuth process.
+  requestor_id: string (optional) User email adress to make requests on
+      their behalf.  This parameter should only be set when two_legged_oauth
+      is True.
+ +
SetOAuthToken(self, oauth_token)
Attempts to set the current token and add it to the token store.

+The oauth_token can be any OAuth token i.e. unauthorized request token,
+authorized request token or access token.
+This method also attempts to add the token to the token store.
+Use this method any time you want the current token to point to the
+oauth_token passed. For e.g. call this method with the request token
+you receive from FetchOAuthRequestToken.

+Args:
+  request_token: gdata.auth.OAuthToken OAuth request token.
+ +
UpgradeToOAuthAccessToken(self, authorized_request_token=None, request_url='https://www.google.com/accounts/OAuthGetAccessToken', oauth_version='1.0', oauth_verifier=None)
Upgrades the authorized request token to an access token and returns it

+Args:
+  authorized_request_token: gdata.auth.OAuthToken (optional) OAuth request
+      token. If not specified, then the current token will be used if it is
+      of type <gdata.auth.OAuthToken>, else it is found by looking in the
+      token_store by looking for a token for the current scope.
+  request_url: Access token URL. The default is
+      'https://www.google.com/accounts/OAuthGetAccessToken'.
+  oauth_version: str (default='1.0') oauth_version parameter. All other
+      'oauth_' parameters are added by default. This parameter too, is
+      added by default but here you can override it's value.
+  oauth_verifier: str (optional) If present, it is assumed that the client
+    will use the OAuth v1.0a protocol which includes passing the
+    oauth_verifier (as returned by the SP) in the access token step.

+Returns:
+  Access token
+      
+Raises:
+  NonOAuthToken if the user's authorized request token is not an OAuth
+  token or if an authorized request token was not available.
+  TokenUpgradeFailed if the server responded to the request with an 
+  error.
+ +
UpgradeToSessionToken(self, token=None)
Upgrades a single use AuthSub token to a session token.

+Args:
+  token: A gdata.auth.AuthSubToken or gdata.auth.SecureAuthSubToken
+         (optional) which is good for a single use but can be upgraded
+         to a session token. If no token is passed in, the token
+         is found by looking in the token_store by looking for a token
+         for the current scope.

+Raises:
+  NonAuthSubToken if the user's auth token is not an AuthSub token
+  TokenUpgradeFailed if the server responded to the request with an 
+  error.
+ +
upgrade_to_session_token(self, token)
Upgrades a single use AuthSub token to a session token.

+Args:
+  token: A gdata.auth.AuthSubToken or gdata.auth.SecureAuthSubToken
+         which is good for a single use but can be upgraded to a
+         session token.

+Returns:
+  The upgraded token as a gdata.auth.AuthSubToken object.

+Raises:
+  TokenUpgradeFailed if the server responded to the request with an 
+  error.
+ +
+Data descriptors inherited from gdata.service.GDataService:
+
captcha_token
+
Get the captcha token for a login request.
+
+
captcha_url
+
Get the captcha URL for a login request.
+
+
source
+
The source is the name of the application making the request. 
+It should be in the form company_id-app_name-app_version
+
+
+Data and other attributes inherited from gdata.service.GDataService:
+
auth_token = None
+ +
handler = None
+ +
tokens = None
+ +
+Methods inherited from atom.service.AtomService:
+
UseBasicAuth(self, username, password, for_proxy=False)
Sets an Authenticaiton: Basic HTTP header containing plaintext.

+Deprecated, use use_basic_auth instead.

+The username and password are base64 encoded and added to an HTTP header
+which will be included in each request. Note that your username and 
+password are sent in plaintext.

+Args:
+  username: str
+  password: str
+ +
request(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
+ +
use_basic_auth(self, username, password, scopes=None)
+ +
+Data descriptors inherited from atom.service.AtomService:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
debug
+
If True, HTTP debug information is printed.
+
+
override_token
+
+
+Data and other attributes inherited from atom.service.AtomService:
+
auto_set_current_token = True
+ +
auto_store_tokens = True
+ +
current_token = None
+ +
port = 80
+ +
ssl = False
+ +

+ + + + + + + +
 
+class PortfolioQuery(gdata.service.Query)
   A query object for the list of a user's portfolios.
 
 
Method resolution order:
+
PortfolioQuery
+
gdata.service.Query
+
__builtin__.dict
+
__builtin__.object
+
+
+Methods defined here:
+
set_positions(self, value)
+ +
set_returns(self, value)
+ +
+Data descriptors defined here:
+
positions
+
The positions query parameter
+
+
returns
+
The returns query parameter
+
+
+Methods inherited from gdata.service.Query:
+
ToUri(self)
+ +
__init__(self, feed=None, text_query=None, params=None, categories=None)
Constructor for Query

+Args:
+  feed: str (optional) The path for the feed (Examples: 
+      '/base/feeds/snippets' or 'calendar/feeds/jo@gmail.com/private/full'
+  text_query: str (optional) The contents of the q query parameter. The
+      contents of the text_query are URL escaped upon conversion to a URI.
+  params: dict (optional) Parameter value string pairs which become URL
+      params when translated to a URI. These parameters are added to the
+      query's items (key-value pairs).
+  categories: list (optional) List of category strings which should be
+      included as query categories. See 
+      http://code.google.com/apis/gdata/reference.html#Queries for 
+      details. If you want to get results from category A or B (both 
+      categories), specify a single list item 'A|B'.
+ +
__str__(self)
+ +
+Data descriptors inherited from gdata.service.Query:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
alt
+
The feed query's alt parameter
+
+
author
+
The feed query's author parameter
+
+
max_results
+
The feed query's max-results parameter
+
+
orderby
+
The feed query's orderby parameter
+
+
published_max
+
The feed query's published-max parameter
+
+
published_min
+
The feed query's published-min parameter
+
+
start_index
+
The feed query's start-index parameter
+
+
text_query
+
The feed query's q parameter
+
+
updated_max
+
The feed query's updated-max parameter
+
+
updated_min
+
The feed query's updated-min parameter
+
+
+Methods inherited from __builtin__.dict:
+
__cmp__(...)
x.__cmp__(y) <==> cmp(x,y)
+ +
__contains__(...)
D.__contains__(k) -> True if D has a key k, else False
+ +
__delitem__(...)
x.__delitem__(y) <==> del x[y]
+ +
__eq__(...)
x.__eq__(y) <==> x==y
+ +
__ge__(...)
x.__ge__(y) <==> x>=y
+ +
__getattribute__(...)
x.__getattribute__('name') <==> x.name
+ +
__getitem__(...)
x.__getitem__(y) <==> x[y]
+ +
__gt__(...)
x.__gt__(y) <==> x>y
+ +
__iter__(...)
x.__iter__() <==> iter(x)
+ +
__le__(...)
x.__le__(y) <==> x<=y
+ +
__len__(...)
x.__len__() <==> len(x)
+ +
__lt__(...)
x.__lt__(y) <==> x<y
+ +
__ne__(...)
x.__ne__(y) <==> x!=y
+ +
__repr__(...)
x.__repr__() <==> repr(x)
+ +
__setitem__(...)
x.__setitem__(i, y) <==> x[i]=y
+ +
__sizeof__(...)
D.__sizeof__() -> size of D in memory, in bytes
+ +
clear(...)
D.clear() -> None.  Remove all items from D.
+ +
copy(...)
D.copy() -> a shallow copy of D
+ +
get(...)
D.get(k[,d]) -> D[k] if k in D, else d.  d defaults to None.
+ +
has_key(...)
D.has_key(k) -> True if D has a key k, else False
+ +
items(...)
D.items() -> list of D's (key, value) pairs, as 2-tuples
+ +
iteritems(...)
D.iteritems() -> an iterator over the (key, value) items of D
+ +
iterkeys(...)
D.iterkeys() -> an iterator over the keys of D
+ +
itervalues(...)
D.itervalues() -> an iterator over the values of D
+ +
keys(...)
D.keys() -> list of D's keys
+ +
pop(...)
D.pop(k[,d]) -> v, remove specified key and return the corresponding value
+If key is not found, d is returned if given, otherwise KeyError is raised
+ +
popitem(...)
D.popitem() -> (k, v), remove and return some (key, value) pair as a
+2-tuple; but raise KeyError if D is empty
+ +
setdefault(...)
D.setdefault(k[,d]) -> D.get(k,d), also set D[k]=d if k not in D
+ +
update(...)
D.update(E, **F) -> None.  Update D from E and F: for k in E: D[k] = E[k]
+(if E has keys else: for (k, v) in E: D[k] = v) then: for k in F: D[k] = F[k]
+ +
values(...)
D.values() -> list of D's values
+ +
+Data and other attributes inherited from __builtin__.dict:
+
__hash__ = None
+ +
__new__ = <built-in method __new__ of type object at 0x7569a0>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+ +
fromkeys = <built-in method fromkeys of type object at 0xcdfff0>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
+v defaults to None.
+ +

+ + + + + + + +
 
+class PositionQuery(gdata.service.Query)
   A query object for the list of a user's positions in a portfolio.
 
 
Method resolution order:
+
PositionQuery
+
gdata.service.Query
+
__builtin__.dict
+
__builtin__.object
+
+
+Methods defined here:
+
set_returns(self, value)
+ +
set_transactions(self, value)
+ +
+Data descriptors defined here:
+
returns
+
The returns query parameter
+
+
transactions
+
The transactions query parameter
+
+
+Methods inherited from gdata.service.Query:
+
ToUri(self)
+ +
__init__(self, feed=None, text_query=None, params=None, categories=None)
Constructor for Query

+Args:
+  feed: str (optional) The path for the feed (Examples: 
+      '/base/feeds/snippets' or 'calendar/feeds/jo@gmail.com/private/full'
+  text_query: str (optional) The contents of the q query parameter. The
+      contents of the text_query are URL escaped upon conversion to a URI.
+  params: dict (optional) Parameter value string pairs which become URL
+      params when translated to a URI. These parameters are added to the
+      query's items (key-value pairs).
+  categories: list (optional) List of category strings which should be
+      included as query categories. See 
+      http://code.google.com/apis/gdata/reference.html#Queries for 
+      details. If you want to get results from category A or B (both 
+      categories), specify a single list item 'A|B'.
+ +
__str__(self)
+ +
+Data descriptors inherited from gdata.service.Query:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
alt
+
The feed query's alt parameter
+
+
author
+
The feed query's author parameter
+
+
max_results
+
The feed query's max-results parameter
+
+
orderby
+
The feed query's orderby parameter
+
+
published_max
+
The feed query's published-max parameter
+
+
published_min
+
The feed query's published-min parameter
+
+
start_index
+
The feed query's start-index parameter
+
+
text_query
+
The feed query's q parameter
+
+
updated_max
+
The feed query's updated-max parameter
+
+
updated_min
+
The feed query's updated-min parameter
+
+
+Methods inherited from __builtin__.dict:
+
__cmp__(...)
x.__cmp__(y) <==> cmp(x,y)
+ +
__contains__(...)
D.__contains__(k) -> True if D has a key k, else False
+ +
__delitem__(...)
x.__delitem__(y) <==> del x[y]
+ +
__eq__(...)
x.__eq__(y) <==> x==y
+ +
__ge__(...)
x.__ge__(y) <==> x>=y
+ +
__getattribute__(...)
x.__getattribute__('name') <==> x.name
+ +
__getitem__(...)
x.__getitem__(y) <==> x[y]
+ +
__gt__(...)
x.__gt__(y) <==> x>y
+ +
__iter__(...)
x.__iter__() <==> iter(x)
+ +
__le__(...)
x.__le__(y) <==> x<=y
+ +
__len__(...)
x.__len__() <==> len(x)
+ +
__lt__(...)
x.__lt__(y) <==> x<y
+ +
__ne__(...)
x.__ne__(y) <==> x!=y
+ +
__repr__(...)
x.__repr__() <==> repr(x)
+ +
__setitem__(...)
x.__setitem__(i, y) <==> x[i]=y
+ +
__sizeof__(...)
D.__sizeof__() -> size of D in memory, in bytes
+ +
clear(...)
D.clear() -> None.  Remove all items from D.
+ +
copy(...)
D.copy() -> a shallow copy of D
+ +
get(...)
D.get(k[,d]) -> D[k] if k in D, else d.  d defaults to None.
+ +
has_key(...)
D.has_key(k) -> True if D has a key k, else False
+ +
items(...)
D.items() -> list of D's (key, value) pairs, as 2-tuples
+ +
iteritems(...)
D.iteritems() -> an iterator over the (key, value) items of D
+ +
iterkeys(...)
D.iterkeys() -> an iterator over the keys of D
+ +
itervalues(...)
D.itervalues() -> an iterator over the values of D
+ +
keys(...)
D.keys() -> list of D's keys
+ +
pop(...)
D.pop(k[,d]) -> v, remove specified key and return the corresponding value
+If key is not found, d is returned if given, otherwise KeyError is raised
+ +
popitem(...)
D.popitem() -> (k, v), remove and return some (key, value) pair as a
+2-tuple; but raise KeyError if D is empty
+ +
setdefault(...)
D.setdefault(k[,d]) -> D.get(k,d), also set D[k]=d if k not in D
+ +
update(...)
D.update(E, **F) -> None.  Update D from E and F: for k in E: D[k] = E[k]
+(if E has keys else: for (k, v) in E: D[k] = v) then: for k in F: D[k] = F[k]
+ +
values(...)
D.values() -> list of D's values
+ +
+Data and other attributes inherited from __builtin__.dict:
+
__hash__ = None
+ +
__new__ = <built-in method __new__ of type object at 0x7569a0>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+ +
fromkeys = <built-in method fromkeys of type object at 0xaad850>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
+v defaults to None.
+ +

+ + + + + +
 
+Data
       __author__ = 'thesweeheng@gmail.com'

+ + + + + +
 
+Author
       thesweeheng@gmail.com
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.gauth.html python-gdata-2.0.8/pydocs/gdata.gauth.html --- python-gdata-1.2.4/pydocs/gdata.gauth.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.gauth.html 2010-02-26 23:16:48.000000000 +0000 @@ -0,0 +1,1210 @@ + + +Python: module gdata.gauth + + + + +
 
+ 
gdata.gauth
index
/usr/local/svn/gdata-python-client/src/gdata/gauth.py
+

Provides auth related token classes and functions for Google Data APIs.

+Token classes represent a user's authorization of this app to access their
+data. Usually these are not created directly but by a GDClient object.

+ClientLoginToken
+AuthSubToken
+SecureAuthSubToken
+OAuthHmacToken
+OAuthRsaToken
+TwoLeggedOAuthHmacToken
+TwoLeggedOAuthRsaToken

+Functions which are often used in application code (as opposed to just within
+the gdata-python-client library) are the following:

+generate_auth_sub_url
+authorize_request_token

+The following are helper functions which are used to save and load auth token
+objects in the App Engine datastore. These should only be used if you are using
+this library within App Engine:

+ae_load
+ae_save

+

+ + + + + +
 
+Modules
       
atom
+
random
+
time
+
urllib
+

+ + + + + +
 
+Classes
       
+
__builtin__.object +
+
+
AuthSubToken +
+
+
SecureAuthSubToken +
+
+
ClientLoginToken +
OAuthHmacToken +
+
+
OAuthRsaToken +
+
+
TwoLeggedOAuthRsaToken +
+
+
TwoLeggedOAuthHmacToken +
+
+
+
+
exceptions.Exception(exceptions.BaseException) +
+
+
Error +
+
+
UnsupportedTokenType +
+
+
+
+
+

+ + + + + +
 
+class AuthSubToken(__builtin__.object)
    Methods defined here:
+
ModifyRequest = modify_request(self, http_request)
+ +
__init__(self, token_string, scopes=None)
+ +
modify_request(self, http_request)
Sets Authorization header, allows app to act on the user's behalf.
+ +
+Static methods defined here:
+
FromUrl = from_url(str_or_uri)
Creates a new AuthSubToken using information in the URL.

+Uses auth_sub_string_from_url.

+Args:
+  str_or_uri: The current page's URL (as a str or atom.http_core.Uri)
+              which should contain a token query parameter since the
+              Google auth server redirected the user's browser to this
+              URL.
+ +
from_url(str_or_uri)
Creates a new AuthSubToken using information in the URL.

+Uses auth_sub_string_from_url.

+Args:
+  str_or_uri: The current page's URL (as a str or atom.http_core.Uri)
+              which should contain a token query parameter since the
+              Google auth server redirected the user's browser to this
+              URL.
+ +
+Data descriptors defined here:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + +
 
+class ClientLoginToken(__builtin__.object)
    Methods defined here:
+
ModifyRequest = modify_request(self, http_request)
+ +
__init__(self, token_string)
+ +
modify_request(self, http_request)
+ +
+Data descriptors defined here:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + +
 
+class Error(exceptions.Exception)
    
Method resolution order:
+
Error
+
exceptions.Exception
+
exceptions.BaseException
+
__builtin__.object
+
+
+Data descriptors defined here:
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from exceptions.Exception:
+
__init__(...)
x.__init__(...) initializes x; see x.__class__.__doc__ for signature
+ +
+Data and other attributes inherited from exceptions.Exception:
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+ +
+Methods inherited from exceptions.BaseException:
+
__delattr__(...)
x.__delattr__('name') <==> del x.name
+ +
__getattribute__(...)
x.__getattribute__('name') <==> x.name
+ +
__getitem__(...)
x.__getitem__(y) <==> x[y]
+ +
__getslice__(...)
x.__getslice__(i, j) <==> x[i:j]

+Use of negative indices is not supported.
+ +
__reduce__(...)
+ +
__repr__(...)
x.__repr__() <==> repr(x)
+ +
__setattr__(...)
x.__setattr__('name', value) <==> x.name = value
+ +
__setstate__(...)
+ +
__str__(...)
x.__str__() <==> str(x)
+ +
__unicode__(...)
+ +
+Data descriptors inherited from exceptions.BaseException:
+
__dict__
+
+
args
+
+
message
+
+

+ + + + + +
 
+class OAuthHmacToken(__builtin__.object)
    Methods defined here:
+
GenerateAuthorizationUrl = generate_authorization_url(self, google_apps_domain='default', language=None, btmpl=None, auth_server='https://www.google.com/accounts/OAuthAuthorizeToken')
+ +
ModifyRequest = modify_request(self, http_request)
+ +
__init__(self, consumer_key, consumer_secret, token, token_secret, auth_state, next=None, verifier=None)
+ +
generate_authorization_url(self, google_apps_domain='default', language=None, btmpl=None, auth_server='https://www.google.com/accounts/OAuthAuthorizeToken')
Creates the URL at which the user can authorize this app to access.

+Args:
+  google_apps_domain: str (optional) If the user should be signing in
+      using an account under a known Google Apps domain, provide the
+      domain name ('example.com') here. If not provided, 'default'
+      will be used, and the user will be prompted to select an account
+      if they are signed in with a Google Account and Google Apps
+      accounts.
+  language: str (optional) An ISO 639 country code identifying what
+      language the approval page should be translated in (for example,
+      'en' for English). The default is the user's selected language.
+  btmpl: str (optional) Forces a mobile version of the approval page. The
+    only accepted value is 'mobile'.
+  auth_server: str (optional) The start of the token authorization web
+    page. Defaults to
+    'https://www.google.com/accounts/OAuthAuthorizeToken'
+ +
modify_request(self, http_request)
Sets the Authorization header in the HTTP request using the token.

+Calculates an HMAC signature using the information in the token to
+indicate that the request came from this application and that this
+application has permission to access a particular user's data.

+Returns:
+  The same HTTP request object which was passed in.
+ +
+Data descriptors defined here:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Data and other attributes defined here:
+
SIGNATURE_METHOD = 'HMAC-SHA1'
+ +

+ + + + + +
 
+class OAuthRsaToken(OAuthHmacToken)
    
Method resolution order:
+
OAuthRsaToken
+
OAuthHmacToken
+
__builtin__.object
+
+
+Methods defined here:
+
ModifyRequest = modify_request(self, http_request)
+ +
__init__(self, consumer_key, rsa_private_key, token, token_secret, auth_state, next=None, verifier=None)
+ +
modify_request(self, http_request)
Sets the Authorization header in the HTTP request using the token.

+Calculates an RSA signature using the information in the token to
+indicate that the request came from this application and that this
+application has permission to access a particular user's data.

+Returns:
+  The same HTTP request object which was passed in.
+ +
+Data and other attributes defined here:
+
SIGNATURE_METHOD = 'RSA-SHA1'
+ +
+Methods inherited from OAuthHmacToken:
+
GenerateAuthorizationUrl = generate_authorization_url(self, google_apps_domain='default', language=None, btmpl=None, auth_server='https://www.google.com/accounts/OAuthAuthorizeToken')
Creates the URL at which the user can authorize this app to access.

+Args:
+  google_apps_domain: str (optional) If the user should be signing in
+      using an account under a known Google Apps domain, provide the
+      domain name ('example.com') here. If not provided, 'default'
+      will be used, and the user will be prompted to select an account
+      if they are signed in with a Google Account and Google Apps
+      accounts.
+  language: str (optional) An ISO 639 country code identifying what
+      language the approval page should be translated in (for example,
+      'en' for English). The default is the user's selected language.
+  btmpl: str (optional) Forces a mobile version of the approval page. The
+    only accepted value is 'mobile'.
+  auth_server: str (optional) The start of the token authorization web
+    page. Defaults to
+    'https://www.google.com/accounts/OAuthAuthorizeToken'
+ +
generate_authorization_url(self, google_apps_domain='default', language=None, btmpl=None, auth_server='https://www.google.com/accounts/OAuthAuthorizeToken')
Creates the URL at which the user can authorize this app to access.

+Args:
+  google_apps_domain: str (optional) If the user should be signing in
+      using an account under a known Google Apps domain, provide the
+      domain name ('example.com') here. If not provided, 'default'
+      will be used, and the user will be prompted to select an account
+      if they are signed in with a Google Account and Google Apps
+      accounts.
+  language: str (optional) An ISO 639 country code identifying what
+      language the approval page should be translated in (for example,
+      'en' for English). The default is the user's selected language.
+  btmpl: str (optional) Forces a mobile version of the approval page. The
+    only accepted value is 'mobile'.
+  auth_server: str (optional) The start of the token authorization web
+    page. Defaults to
+    'https://www.google.com/accounts/OAuthAuthorizeToken'
+ +
+Data descriptors inherited from OAuthHmacToken:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + +
 
+class SecureAuthSubToken(AuthSubToken)
    
Method resolution order:
+
SecureAuthSubToken
+
AuthSubToken
+
__builtin__.object
+
+
+Methods defined here:
+
ModifyRequest = modify_request(self, http_request)
+ +
__init__(self, token_string, rsa_private_key, scopes=None)
+ +
modify_request(self, http_request)
Sets the Authorization header and includes a digital signature.

+Calculates a digital signature using the private RSA key, a timestamp
+(uses now at the time this method is called) and a random nonce.

+Args:
+  http_request: The atom.http_core.HttpRequest which contains all of the
+      information needed to send a request to the remote server. The
+      URL and the method of the request must be already set and cannot be
+      changed after this token signs the request, or the signature will
+      not be valid.
+ +
+Static methods defined here:
+
FromUrl = from_url(str_or_uri, rsa_private_key)
Creates a new SecureAuthSubToken using information in the URL.

+Uses auth_sub_string_from_url.

+Args:
+  str_or_uri: The current page's URL (as a str or atom.http_core.Uri)
+      which should contain a token query parameter since the Google auth
+      server redirected the user's browser to this URL.
+  rsa_private_key: str the private RSA key cert used to sign all requests
+      made with this token.
+ +
from_url(str_or_uri, rsa_private_key)
Creates a new SecureAuthSubToken using information in the URL.

+Uses auth_sub_string_from_url.

+Args:
+  str_or_uri: The current page's URL (as a str or atom.http_core.Uri)
+      which should contain a token query parameter since the Google auth
+      server redirected the user's browser to this URL.
+  rsa_private_key: str the private RSA key cert used to sign all requests
+      made with this token.
+ +
+Data descriptors inherited from AuthSubToken:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + +
 
+class TwoLeggedOAuthHmacToken(OAuthHmacToken)
    
Method resolution order:
+
TwoLeggedOAuthHmacToken
+
OAuthHmacToken
+
__builtin__.object
+
+
+Methods defined here:
+
ModifyRequest = modify_request(self, http_request)
+ +
__init__(self, consumer_key, consumer_secret, requestor_id)
+ +
modify_request(self, http_request)
Sets the Authorization header in the HTTP request using the token.

+Calculates an HMAC signature using the information in the token to
+indicate that the request came from this application and that this
+application has permission to access a particular user's data using 2LO.

+Returns:
+  The same HTTP request object which was passed in.
+ +
+Methods inherited from OAuthHmacToken:
+
GenerateAuthorizationUrl = generate_authorization_url(self, google_apps_domain='default', language=None, btmpl=None, auth_server='https://www.google.com/accounts/OAuthAuthorizeToken')
Creates the URL at which the user can authorize this app to access.

+Args:
+  google_apps_domain: str (optional) If the user should be signing in
+      using an account under a known Google Apps domain, provide the
+      domain name ('example.com') here. If not provided, 'default'
+      will be used, and the user will be prompted to select an account
+      if they are signed in with a Google Account and Google Apps
+      accounts.
+  language: str (optional) An ISO 639 country code identifying what
+      language the approval page should be translated in (for example,
+      'en' for English). The default is the user's selected language.
+  btmpl: str (optional) Forces a mobile version of the approval page. The
+    only accepted value is 'mobile'.
+  auth_server: str (optional) The start of the token authorization web
+    page. Defaults to
+    'https://www.google.com/accounts/OAuthAuthorizeToken'
+ +
generate_authorization_url(self, google_apps_domain='default', language=None, btmpl=None, auth_server='https://www.google.com/accounts/OAuthAuthorizeToken')
Creates the URL at which the user can authorize this app to access.

+Args:
+  google_apps_domain: str (optional) If the user should be signing in
+      using an account under a known Google Apps domain, provide the
+      domain name ('example.com') here. If not provided, 'default'
+      will be used, and the user will be prompted to select an account
+      if they are signed in with a Google Account and Google Apps
+      accounts.
+  language: str (optional) An ISO 639 country code identifying what
+      language the approval page should be translated in (for example,
+      'en' for English). The default is the user's selected language.
+  btmpl: str (optional) Forces a mobile version of the approval page. The
+    only accepted value is 'mobile'.
+  auth_server: str (optional) The start of the token authorization web
+    page. Defaults to
+    'https://www.google.com/accounts/OAuthAuthorizeToken'
+ +
+Data descriptors inherited from OAuthHmacToken:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Data and other attributes inherited from OAuthHmacToken:
+
SIGNATURE_METHOD = 'HMAC-SHA1'
+ +

+ + + + + +
 
+class TwoLeggedOAuthRsaToken(OAuthRsaToken)
    
Method resolution order:
+
TwoLeggedOAuthRsaToken
+
OAuthRsaToken
+
OAuthHmacToken
+
__builtin__.object
+
+
+Methods defined here:
+
ModifyRequest = modify_request(self, http_request)
+ +
__init__(self, consumer_key, rsa_private_key, requestor_id)
+ +
modify_request(self, http_request)
Sets the Authorization header in the HTTP request using the token.

+Calculates an RSA signature using the information in the token to
+indicate that the request came from this application and that this
+application has permission to access a particular user's data using 2LO.

+Returns:
+  The same HTTP request object which was passed in.
+ +
+Data and other attributes inherited from OAuthRsaToken:
+
SIGNATURE_METHOD = 'RSA-SHA1'
+ +
+Methods inherited from OAuthHmacToken:
+
GenerateAuthorizationUrl = generate_authorization_url(self, google_apps_domain='default', language=None, btmpl=None, auth_server='https://www.google.com/accounts/OAuthAuthorizeToken')
Creates the URL at which the user can authorize this app to access.

+Args:
+  google_apps_domain: str (optional) If the user should be signing in
+      using an account under a known Google Apps domain, provide the
+      domain name ('example.com') here. If not provided, 'default'
+      will be used, and the user will be prompted to select an account
+      if they are signed in with a Google Account and Google Apps
+      accounts.
+  language: str (optional) An ISO 639 country code identifying what
+      language the approval page should be translated in (for example,
+      'en' for English). The default is the user's selected language.
+  btmpl: str (optional) Forces a mobile version of the approval page. The
+    only accepted value is 'mobile'.
+  auth_server: str (optional) The start of the token authorization web
+    page. Defaults to
+    'https://www.google.com/accounts/OAuthAuthorizeToken'
+ +
generate_authorization_url(self, google_apps_domain='default', language=None, btmpl=None, auth_server='https://www.google.com/accounts/OAuthAuthorizeToken')
Creates the URL at which the user can authorize this app to access.

+Args:
+  google_apps_domain: str (optional) If the user should be signing in
+      using an account under a known Google Apps domain, provide the
+      domain name ('example.com') here. If not provided, 'default'
+      will be used, and the user will be prompted to select an account
+      if they are signed in with a Google Account and Google Apps
+      accounts.
+  language: str (optional) An ISO 639 country code identifying what
+      language the approval page should be translated in (for example,
+      'en' for English). The default is the user's selected language.
+  btmpl: str (optional) Forces a mobile version of the approval page. The
+    only accepted value is 'mobile'.
+  auth_server: str (optional) The start of the token authorization web
+    page. Defaults to
+    'https://www.google.com/accounts/OAuthAuthorizeToken'
+ +
+Data descriptors inherited from OAuthHmacToken:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class UnsupportedTokenType(Error)
   Raised when token to or from blob is unable to convert the token.
 
 
Method resolution order:
+
UnsupportedTokenType
+
Error
+
exceptions.Exception
+
exceptions.BaseException
+
__builtin__.object
+
+
+Data descriptors inherited from Error:
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from exceptions.Exception:
+
__init__(...)
x.__init__(...) initializes x; see x.__class__.__doc__ for signature
+ +
+Data and other attributes inherited from exceptions.Exception:
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+ +
+Methods inherited from exceptions.BaseException:
+
__delattr__(...)
x.__delattr__('name') <==> del x.name
+ +
__getattribute__(...)
x.__getattribute__('name') <==> x.name
+ +
__getitem__(...)
x.__getitem__(y) <==> x[y]
+ +
__getslice__(...)
x.__getslice__(i, j) <==> x[i:j]

+Use of negative indices is not supported.
+ +
__reduce__(...)
+ +
__repr__(...)
x.__repr__() <==> repr(x)
+ +
__setattr__(...)
x.__setattr__('name', value) <==> x.name = value
+ +
__setstate__(...)
+ +
__str__(...)
x.__str__() <==> str(x)
+ +
__unicode__(...)
+ +
+Data descriptors inherited from exceptions.BaseException:
+
__dict__
+
+
args
+
+
message
+
+

+ + + + + +
 
+Functions
       
AeDelete = ae_delete(token_key)
Removes the token object from the App Engine datastore.
+
AeLoad = ae_load(token_key)
Retrieves a token object from the App Engine datastore.

+This is a convenience method for using the library with App Engine.
+See also ae_save.

+Args:
+  token_key: str The unique key associated with the desired token when it
+             was saved using ae_save.

+Returns:
+  A token object if there was a token associated with the token_key or None
+  if the key could not be found.
+
AeSave = ae_save(token, token_key)
Stores an auth token in the App Engine datastore.

+This is a convenience method for using the library with App Engine.
+Recommended usage is to associate the auth token with the current_user.
+If a user is signed in to the app using the App Engine users API, you
+can use
+gdata.gauth.ae_save(some_token, users.get_current_user().user_id())
+If you are not using the Users API you are free to choose whatever
+string you would like for a token_string.

+Args:
+  token: an auth token object. Must be one of ClientLoginToken,
+         AuthSubTokenSecureAuthSubTokenOAuthRsaToken, or OAuthHmacToken
+         (see token_to_blob).
+  token_key: str A unique identified to be used when you want to retrieve
+             the token. If the user is signed in to App Engine using the
+             users API, I recommend using the user ID for the token_key:
+             users.get_current_user().user_id()
+
AuthSubStringFromUrl = auth_sub_string_from_url(url, scopes_param_prefix='auth_sub_scopes')
Finds the token string (and scopes) after the browser is redirected.

+After the Google Accounts AuthSub pages redirect the user's broswer back to
+the web application (using the 'next' URL from the request) the web app must
+extract the token from the current page's URL. The token is provided as a
+URL parameter named 'token' and if generate_auth_sub_url was used to create
+the request, the token's valid scopes are included in a URL parameter whose
+name is specified in scopes_param_prefix.

+Args:
+  url: atom.url.Url or str representing the current URL. The token value
+       and valid scopes should be included as URL parameters.
+  scopes_param_prefix: str (optional) The URL parameter key which maps to
+                       the list of valid scopes for the token.

+Returns:
+  A tuple containing the token value as a string, and a tuple of scopes
+  (as atom.http_core.Uri objects) which are URL prefixes under which this
+  token grants permission to read and write user data.
+  (token_string, (scope_uri, scope_uri, scope_uri, ...))
+  If no scopes were included in the URL, the second value in the tuple is
+  None. If there was no token param in the url, the tuple returned is
+  (None, None)
+
AuthorizeRequestToken = authorize_request_token(request_token, url)
Adds information to request token to allow it to become an access token.

+Modifies the request_token object passed in by setting and unsetting the
+necessary fields to allow this token to form a valid upgrade request.

+Args:
+  request_token: The OAuth request token which has been authorized by the
+      user. In order for this token to be upgraded to an access token,
+      certain fields must be extracted from the URL and added to the token
+      so that they can be passed in an upgrade-token request.
+  url: The URL of the current page which the user's browser was redirected
+      to after they authorized access for the app. This function extracts
+      information from the URL which is needed to upgraded the token from
+      a request token to an access token.

+Returns:
+  The same token object which was passed in.
+
FindScopesForServices = find_scopes_for_services(service_names=None)
Creates a combined list of scope URLs for the desired services.

+This method searches the AUTH_SCOPES dictionary.

+Args:
+  service_names: list of strings (optional) Each name must be a key in the
+                 AUTH_SCOPES dictionary. If no list is provided (None) then
+                 the resulting list will contain all scope URLs in the
+                 AUTH_SCOPES dict.

+Returns:
+  A list of URL strings which are the scopes needed to access these services
+  when requesting a token using AuthSub or OAuth.
+
GenerateClientLoginRequestBody = generate_client_login_request_body(email, password, service, source, account_type='HOSTED_OR_GOOGLE', captcha_token=None, captcha_response=None)
Creates the body of the autentication request

+See http://code.google.com/apis/accounts/AuthForInstalledApps.html#Request
+for more details.

+Args:
+  email: str
+  password: str
+  service: str
+  source: str
+  account_type: str (optional) Defaul is 'HOSTED_OR_GOOGLE', other valid
+      values are 'GOOGLE' and 'HOSTED'
+  captcha_token: str (optional)
+  captcha_response: str (optional)

+Returns:
+  The HTTP body to send in a request for a client login token.
+
GetCaptchaChallenge = get_captcha_challenge(http_body, captcha_base_url='http://www.google.com/accounts/')
Returns the URL and token for a CAPTCHA challenge issued by the server.

+Args:
+  http_body: str The body of the HTTP response from the server which
+      contains the CAPTCHA challenge.
+  captcha_base_url: str This function returns a full URL for viewing the
+      challenge image which is built from the server's response. This
+      base_url is used as the beginning of the URL because the server
+      only provides the end of the URL. For example the server provides
+      'Captcha?ctoken=Hi...N' and the URL for the image is
+      'http://www.google.com/accounts/Captcha?ctoken=Hi...N'

+Returns:
+  A dictionary containing the information needed to repond to the CAPTCHA
+  challenge, the image URL and the ID token of the challenge. The
+  dictionary is in the form:
+  {'token': string identifying the CAPTCHA image,
+   'url': string containing the URL of the image}
+  Returns None if there was no CAPTCHA challenge in the response.
+
GetClientLoginTokenString = get_client_login_token_string(http_body)
Returns the token value for a ClientLoginToken.

+Reads the token from the server's response to a Client Login request and
+creates the token value string to use in requests.

+Args:
+  http_body: str The body of the server's HTTP response to a Client Login
+      request

+Returns:
+  The token value string for a ClientLoginToken.
+
TokenFromBlob = token_from_blob(blob)
Deserializes a token string from the datastore back into a token object.

+Supported token classes: ClientLoginTokenAuthSubTokenSecureAuthSubToken,
+OAuthRsaToken, and OAuthHmacTokenTwoLeggedOAuthRsaToken,
+TwoLeggedOAuthHmacToken.

+Args:
+  blob: string created by token_to_blob.

+Raises:
+  UnsupportedTokenType if the token is not one of the supported token
+  classes listed above.

+Returns:
+  A new token object with members set to the values serialized in the
+  blob string. Note that any members which were set to '' in the original
+  token will now be None.
+
TokenToBlob = token_to_blob(token)
Serializes the token data as a string for storage in a datastore.

+Supported token classes: ClientLoginTokenAuthSubTokenSecureAuthSubToken,
+OAuthRsaToken, and OAuthHmacTokenTwoLeggedOAuthRsaToken,
+TwoLeggedOAuthHmacToken.

+Args:
+  token: A token object which must be of one of the supported token classes.

+Raises:
+  UnsupportedTokenType if the token is not one of the supported token
+  classes listed above.

+Returns:
+  A string represenging this token. The string can be converted back into
+  an equivalent token object using token_from_blob. Note that any members
+  which are set to '' will be set to None when the token is deserialized
+  by token_from_blob.
+
UpgradeToAccessToken = upgrade_to_access_token(request_token, server_response_body)
Extracts access token information from response to an upgrade request.

+Once the server has responded with the new token info for the OAuth
+access token, this method modifies the request_token to set and unset
+necessary fields to create valid OAuth authorization headers for requests.

+Args:
+  request_token: An OAuth token which this function modifies to allow it
+      to be used as an access token.
+  server_response_body: str The server's response to an OAuthAuthorizeToken
+      request. This should contain the new token and token_secret which
+      are used to generate the signature and parameters of the Authorization
+      header in subsequent requests to Google Data APIs.

+Returns:
+  The same token object which was passed in.
+
ae_delete(token_key)
Removes the token object from the App Engine datastore.
+
ae_load(token_key)
Retrieves a token object from the App Engine datastore.

+This is a convenience method for using the library with App Engine.
+See also ae_save.

+Args:
+  token_key: str The unique key associated with the desired token when it
+             was saved using ae_save.

+Returns:
+  A token object if there was a token associated with the token_key or None
+  if the key could not be found.
+
ae_save(token, token_key)
Stores an auth token in the App Engine datastore.

+This is a convenience method for using the library with App Engine.
+Recommended usage is to associate the auth token with the current_user.
+If a user is signed in to the app using the App Engine users API, you
+can use
+gdata.gauth.ae_save(some_token, users.get_current_user().user_id())
+If you are not using the Users API you are free to choose whatever
+string you would like for a token_string.

+Args:
+  token: an auth token object. Must be one of ClientLoginToken,
+         AuthSubTokenSecureAuthSubTokenOAuthRsaToken, or OAuthHmacToken
+         (see token_to_blob).
+  token_key: str A unique identified to be used when you want to retrieve
+             the token. If the user is signed in to App Engine using the
+             users API, I recommend using the user ID for the token_key:
+             users.get_current_user().user_id()
+
auth_sub_string_from_body(http_body)
Extracts the AuthSub token from an HTTP body string.

+Used to find the new session token after making a request to upgrade a
+single use AuthSub token.

+Args:
+  http_body: str The repsonse from the server which contains the AuthSub
+      key. For example, this function would find the new session token
+      from the server's response to an upgrade token request.

+Returns:
+  The raw token value string to use in an AuthSubToken object.
+
auth_sub_string_from_url(url, scopes_param_prefix='auth_sub_scopes')
Finds the token string (and scopes) after the browser is redirected.

+After the Google Accounts AuthSub pages redirect the user's broswer back to
+the web application (using the 'next' URL from the request) the web app must
+extract the token from the current page's URL. The token is provided as a
+URL parameter named 'token' and if generate_auth_sub_url was used to create
+the request, the token's valid scopes are included in a URL parameter whose
+name is specified in scopes_param_prefix.

+Args:
+  url: atom.url.Url or str representing the current URL. The token value
+       and valid scopes should be included as URL parameters.
+  scopes_param_prefix: str (optional) The URL parameter key which maps to
+                       the list of valid scopes for the token.

+Returns:
+  A tuple containing the token value as a string, and a tuple of scopes
+  (as atom.http_core.Uri objects) which are URL prefixes under which this
+  token grants permission to read and write user data.
+  (token_string, (scope_uri, scope_uri, scope_uri, ...))
+  If no scopes were included in the URL, the second value in the tuple is
+  None. If there was no token param in the url, the tuple returned is
+  (None, None)
+
authorize_request_token(request_token, url)
Adds information to request token to allow it to become an access token.

+Modifies the request_token object passed in by setting and unsetting the
+necessary fields to allow this token to form a valid upgrade request.

+Args:
+  request_token: The OAuth request token which has been authorized by the
+      user. In order for this token to be upgraded to an access token,
+      certain fields must be extracted from the URL and added to the token
+      so that they can be passed in an upgrade-token request.
+  url: The URL of the current page which the user's browser was redirected
+      to after they authorized access for the app. This function extracts
+      information from the URL which is needed to upgraded the token from
+      a request token to an access token.

+Returns:
+  The same token object which was passed in.
+
build_auth_sub_data(http_request, timestamp, nonce)
Creates the data string which must be RSA-signed in secure requests.

+For more details see the documenation on secure AuthSub requests:
+http://code.google.com/apis/accounts/docs/AuthSub.html#signingrequests

+Args:
+  http_request: The request being made to the server. The Request's URL
+      must be complete before this signature is calculated as any changes
+      to the URL will invalidate the signature.
+  nonce: str Random 64-bit, unsigned number encoded as an ASCII string in
+      decimal format. The nonce/timestamp pair should always be unique to
+      prevent replay attacks.
+  timestamp: Integer representing the time the request is sent. The
+      timestamp should be expressed in number of seconds after January 1,
+      1970 00:00:00 GMT.
+
build_oauth_base_string(http_request, consumer_key, nonce, signaure_type, timestamp, version, next='oob', token=None, verifier=None)
Generates the base string to be signed in the OAuth request.

+Args:
+  http_request: The request being made to the server. The Request's URL
+      must be complete before this signature is calculated as any changes
+      to the URL will invalidate the signature.
+  consumer_key: Domain identifying the third-party web application. This is
+      the domain used when registering the application with Google. It
+      identifies who is making the request on behalf of the user.
+  nonce: Random 64-bit, unsigned number encoded as an ASCII string in decimal
+      format. The nonce/timestamp pair should always be unique to prevent
+      replay attacks.
+  signaure_type: either RSA_SHA1 or HMAC_SHA1
+  timestamp: Integer representing the time the request is sent. The
+      timestamp should be expressed in number of seconds after January 1,
+      1970 00:00:00 GMT.
+  version: The OAuth version used by the requesting web application. This
+      value must be '1.0' or '1.0a'. If not provided, Google assumes version
+      1.0 is in use.
+  next: The URL the user should be redirected to after granting access
+      to a Google service(s). It can include url-encoded query parameters.
+      The default value is 'oob'. (This is the oauth_callback.)
+  token: The string for the OAuth request token or OAuth access token.
+  verifier: str Sent as the oauth_verifier and required when upgrading a
+      request token to an access token.
+
dump_tokens(tokens)
+
find_scopes_for_services(service_names=None)
Creates a combined list of scope URLs for the desired services.

+This method searches the AUTH_SCOPES dictionary.

+Args:
+  service_names: list of strings (optional) Each name must be a key in the
+                 AUTH_SCOPES dictionary. If no list is provided (None) then
+                 the resulting list will contain all scope URLs in the
+                 AUTH_SCOPES dict.

+Returns:
+  A list of URL strings which are the scopes needed to access these services
+  when requesting a token using AuthSub or OAuth.
+
generate_auth_header(consumer_key, timestamp, nonce, signature_type, signature, version='1.0', next=None, token=None, verifier=None)
Builds the Authorization header to be sent in the request.

+Args:
+  consumer_key: Identifies the application making the request (str).
+  timestamp:
+  nonce:
+  signature_type: One of either HMAC_SHA1 or RSA_SHA1
+  signature: The HMAC or RSA signature for the request as a base64
+      encoded string.
+  version: The version of the OAuth protocol that this request is using.
+      Default is '1.0'
+  next: The URL of the page that the user's browser should be sent to
+      after they authorize the token. (Optional)
+  token: str The OAuth token value to be used in the oauth_token parameter
+      of the header.
+  verifier: str The OAuth verifier which must be included when you are
+      upgrading a request token to an access token.
+
generate_auth_sub_url(next, scopes, secure=False, session=True, request_url=<atom.http_core.Uri object at 0xb27510>, domain='default', scopes_param_prefix='auth_sub_scopes')
Constructs a URI for requesting a multiscope AuthSub token.

+The generated token will contain a URL parameter to pass along the
+requested scopes to the next URL. When the Google Accounts page
+redirects the broswser to the 'next' URL, it appends the single use
+AuthSub token value to the URL as a URL parameter with the key 'token'.
+However, the information about which scopes were requested is not
+included by Google Accounts. This method adds the scopes to the next
+URL before making the request so that the redirect will be sent to
+a page, and both the token value and the list of scopes for which the token
+was requested.

+Args:
+  next: atom.http_core.Uri or string The URL user will be sent to after
+        authorizing this web application to access their data.
+  scopes: list containint strings or atom.http_core.Uri objects. The URLs
+          of the services to be accessed. Could also be a single string
+          or single atom.http_core.Uri for requesting just one scope.
+  secure: boolean (optional) Determines whether or not the issued token
+          is a secure token.
+  session: boolean (optional) Determines whether or not the issued token
+           can be upgraded to a session token.
+  request_url: atom.http_core.Uri or str The beginning of the request URL.
+               This is normally
+               'http://www.google.com/accounts/AuthSubRequest' or
+               '/accounts/AuthSubRequest'
+  domain: The domain which the account is part of. This is used for Google
+          Apps accounts, the default value is 'default' which means that
+          the requested account is a Google Account (@gmail.com for
+          example)
+  scopes_param_prefix: str (optional) The requested scopes are added as a
+                       URL parameter to the next URL so that the page at
+                       the 'next' URL can extract the token value and the
+                       valid scopes from the URL. The key for the URL
+                       parameter defaults to 'auth_sub_scopes'

+Returns:
+  An atom.http_core.Uri which the user's browser should be directed to in
+  order to authorize this application to access their information.
+
generate_client_login_request_body(email, password, service, source, account_type='HOSTED_OR_GOOGLE', captcha_token=None, captcha_response=None)
Creates the body of the autentication request

+See http://code.google.com/apis/accounts/AuthForInstalledApps.html#Request
+for more details.

+Args:
+  email: str
+  password: str
+  service: str
+  source: str
+  account_type: str (optional) Defaul is 'HOSTED_OR_GOOGLE', other valid
+      values are 'GOOGLE' and 'HOSTED'
+  captcha_token: str (optional)
+  captcha_response: str (optional)

+Returns:
+  The HTTP body to send in a request for a client login token.
+
generate_hmac_signature(http_request, consumer_key, consumer_secret, timestamp, nonce, version, next='oob', token=None, token_secret=None, verifier=None)
+
generate_oauth_authorization_url(token, next=None, hd='default', hl=None, btmpl=None, auth_server='https://www.google.com/accounts/OAuthAuthorizeToken')
Creates a URL for the page where the request token can be authorized.

+Args:
+  token: str The request token from the OAuth server.
+  next: str (optional) URL the user should be redirected to after granting
+      access to a Google service(s). It can include url-encoded query
+      parameters.
+  hd: str (optional) Identifies a particular hosted domain account to be
+      accessed (for example, 'mycollege.edu'). Uses 'default' to specify a
+      regular Google account ('username@gmail.com').
+  hl: str (optional) An ISO 639 country code identifying what language the
+      approval page should be translated in (for example, 'hl=en' for
+      English). The default is the user's selected language.
+  btmpl: str (optional) Forces a mobile version of the approval page. The
+      only accepted value is 'mobile'.
+  auth_server: str (optional) The start of the token authorization web
+      page. Defaults to
+      'https://www.google.com/accounts/OAuthAuthorizeToken'

+Returns:
+  An atom.http_core.Uri pointing to the token authorization page where the
+  user may allow or deny this app to access their Google data.
+
generate_request_for_access_token(request_token, auth_server_url='https://www.google.com/accounts/OAuthGetAccessToken')
Creates a request to ask the OAuth server for an access token.

+Requires a request token which the user has authorized. See the
+documentation on OAuth with Google Data for more details:
+http://code.google.com/apis/accounts/docs/OAuth.html#AccessToken

+Args:
+  request_token: An OAuthHmacToken or OAuthRsaToken which the user has
+      approved using their browser.
+  auth_server_url: (optional) The URL at which the OAuth access token is
+      requested. Defaults to
+      https://www.google.com/accounts/OAuthGetAccessToken

+Returns:
+  A new HttpRequest object which can be sent to the OAuth server to
+  request an OAuth Access Token.
+
generate_request_for_request_token(consumer_key, signature_type, scopes, rsa_key=None, consumer_secret=None, auth_server_url='https://www.google.com/accounts/OAuthGetRequestToken', next='oob', version='1.0')
Creates request to be sent to auth server to get an OAuth request token.

+Args:
+  consumer_key:
+  signature_type: either RSA_SHA1 or HMAC_SHA1. The rsa_key must be
+      provided if the signature type is RSA but if the signature method
+      is HMAC, the consumer_secret must be used.
+  scopes: List of URL prefixes for the data which we want to access. For
+      example, to request access to the user's Blogger and Google Calendar
+      data, we would request
+      ['http://www.blogger.com/feeds/',
+       'https://www.google.com/calendar/feeds/',
+       'http://www.google.com/calendar/feeds/']
+  rsa_key: Only used if the signature method is RSA_SHA1.
+  consumer_secret: Only used if the signature method is HMAC_SHA1.
+  auth_server_url: The URL to which the token request should be directed.
+      Defaults to 'https://www.google.com/accounts/OAuthGetRequestToken'.
+  next: The URL of the page that the user's browser should be sent to
+      after they authorize the token. (Optional)
+  version: The OAuth version used by the requesting web application.
+      Defaults to '1.0a'

+Returns:
+  An atom.http_core.HttpRequest object with the URL, Authorization header
+  and body filled in.
+
generate_rsa_signature(http_request, consumer_key, rsa_key, timestamp, nonce, version, next='oob', token=None, token_secret=None, verifier=None)
+
generate_signature(data, rsa_key)
Signs the data string for a secure AuthSub request.
+
get_captcha_challenge(http_body, captcha_base_url='http://www.google.com/accounts/')
Returns the URL and token for a CAPTCHA challenge issued by the server.

+Args:
+  http_body: str The body of the HTTP response from the server which
+      contains the CAPTCHA challenge.
+  captcha_base_url: str This function returns a full URL for viewing the
+      challenge image which is built from the server's response. This
+      base_url is used as the beginning of the URL because the server
+      only provides the end of the URL. For example the server provides
+      'Captcha?ctoken=Hi...N' and the URL for the image is
+      'http://www.google.com/accounts/Captcha?ctoken=Hi...N'

+Returns:
+  A dictionary containing the information needed to repond to the CAPTCHA
+  challenge, the image URL and the ID token of the challenge. The
+  dictionary is in the form:
+  {'token': string identifying the CAPTCHA image,
+   'url': string containing the URL of the image}
+  Returns None if there was no CAPTCHA challenge in the response.
+
get_client_login_token_string(http_body)
Returns the token value for a ClientLoginToken.

+Reads the token from the server's response to a Client Login request and
+creates the token value string to use in requests.

+Args:
+  http_body: str The body of the server's HTTP response to a Client Login
+      request

+Returns:
+  The token value string for a ClientLoginToken.
+
hmac_token_from_body(http_body, consumer_key, consumer_secret, auth_state)
+
load_tokens(blob)
+
oauth_token_info_from_body(http_body)
Exracts an OAuth request token from the server's response.

+Returns:
+  A tuple of strings containing the OAuth token and token secret. If
+  neither of these are present in the body, returns (None, None)
+
oauth_token_info_from_url(url)
Exracts an OAuth access token from the redirected page's URL.

+Returns:
+  A tuple of strings containing the OAuth token and the OAuth verifier which
+  need to sent when upgrading a request token to an access token.
+
rsa_token_from_body(http_body, consumer_key, rsa_private_key, auth_state)
+
token_from_blob(blob)
Deserializes a token string from the datastore back into a token object.

+Supported token classes: ClientLoginTokenAuthSubTokenSecureAuthSubToken,
+OAuthRsaToken, and OAuthHmacTokenTwoLeggedOAuthRsaToken,
+TwoLeggedOAuthHmacToken.

+Args:
+  blob: string created by token_to_blob.

+Raises:
+  UnsupportedTokenType if the token is not one of the supported token
+  classes listed above.

+Returns:
+  A new token object with members set to the values serialized in the
+  blob string. Note that any members which were set to '' in the original
+  token will now be None.
+
token_to_blob(token)
Serializes the token data as a string for storage in a datastore.

+Supported token classes: ClientLoginTokenAuthSubTokenSecureAuthSubToken,
+OAuthRsaToken, and OAuthHmacTokenTwoLeggedOAuthRsaToken,
+TwoLeggedOAuthHmacToken.

+Args:
+  token: A token object which must be of one of the supported token classes.

+Raises:
+  UnsupportedTokenType if the token is not one of the supported token
+  classes listed above.

+Returns:
+  A string represenging this token. The string can be converted back into
+  an equivalent token object using token_from_blob. Note that any members
+  which are set to '' will be set to None when the token is deserialized
+  by token_from_blob.
+
upgrade_to_access_token(request_token, server_response_body)
Extracts access token information from response to an upgrade request.

+Once the server has responded with the new token info for the OAuth
+access token, this method modifies the request_token to set and unset
+necessary fields to create valid OAuth authorization headers for requests.

+Args:
+  request_token: An OAuth token which this function modifies to allow it
+      to be used as an access token.
+  server_response_body: str The server's response to an OAuthAuthorizeToken
+      request. This should contain the new token and token_secret which
+      are used to generate the signature and parameters of the Authorization
+      header in subsequent requests to Google Data APIs.

+Returns:
+  The same token object which was passed in.
+

+ + + + + +
 
+Data
       ACCESS_TOKEN = 3
+ACCESS_TOKEN_URL = 'https://www.google.com/accounts/OAuthGetAccessToken'
+AUTHORIZED_REQUEST_TOKEN = 2
+AUTHSUB_AUTH_LABEL = 'AuthSub token='
+AUTH_SCOPES = {'analytics': ('https://www.google.com/analytics/feeds/',), 'apps': ('http://www.google.com/a/feeds/', 'https://www.google.com/a/feeds/', 'http://apps-apis.google.com/a/feeds/', 'https://apps-apis.google.com/a/feeds/'), 'blogger': ('http://www.blogger.com/feeds/',), 'books': ('http://www.google.com/books/feeds/',), 'cl': ('https://www.google.com/calendar/feeds/', 'http://www.google.com/calendar/feeds/'), 'code': ('http://code.google.com/feeds/issues',), 'codesearch': ('http://www.google.com/codesearch/feeds/',), 'cp': ('https://www.google.com/m8/feeds/', 'http://www.google.com/m8/feeds/'), 'finance': ('http://finance.google.com/finance/feeds/',), 'gbase': ('http://base.google.com/base/feeds/', 'http://www.google.com/base/feeds/'), ...}
+DEFAULT_DOMAIN = 'default'
+HMAC_SHA1 = 'HMAC-SHA1'
+OAUTH_AUTHORIZE_URL = 'https://www.google.com/accounts/OAuthAuthorizeToken'
+PROGRAMMATIC_AUTH_LABEL = 'GoogleLogin auth='
+REQUEST_TOKEN = 1
+REQUEST_TOKEN_URL = 'https://www.google.com/accounts/OAuthGetRequestToken'
+RSA_SHA1 = 'RSA-SHA1'
+__author__ = 'j.s@google.com (Jeff Scudder)'

+ + + + + +
 
+Author
       j.s@google.com (Jeff Scudder)
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.geo.data.html python-gdata-2.0.8/pydocs/gdata.geo.data.html --- python-gdata-1.2.4/pydocs/gdata.geo.data.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.geo.data.html 2009-12-17 20:58:53.000000000 +0000 @@ -0,0 +1,1692 @@ + + +Python: module gdata.geo.data + + + + +
 
+ 
gdata.geo.data
index
/usr/local/svn/gdata-python-client/src/gdata/geo/data.py
+

Contains the data classes of the Geography Extension

+

+ + + + + +
 
+Modules
       
atom
+

+ + + + + +
 
+Classes
       
+
atom.core.XmlElement(__builtin__.object) +
+
+
GeoLat +
GeoLong +
GeoRssBox +
GeoRssPoint +
GeoRssWhere +
GmlEnvelope +
GmlLowerCorner +
GmlPoint +
GmlPos +
GmlUpperCorner +
W3CPoint +
+
+
+

+ + + + + + + +
 
+class GeoLat(atom.core.XmlElement)
   Describes a W3C latitude.
 
 
Method resolution order:
+
GeoLat
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class GeoLong(atom.core.XmlElement)
   Describes a W3C longitude.
 
 
Method resolution order:
+
GeoLong
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class GeoRssBox(atom.core.XmlElement)
   Describes a geographical region.
 
 
Method resolution order:
+
GeoRssBox
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class GeoRssPoint(atom.core.XmlElement)
   Describes a geographical location.
 
 
Method resolution order:
+
GeoRssPoint
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class GeoRssWhere(atom.core.XmlElement)
   Describes a geographical location or region.
 
 
Method resolution order:
+
GeoRssWhere
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
Envelope = <class 'gdata.geo.data.GmlEnvelope'>
Describes a Gml geographical region.
+ +
Point = <class 'gdata.geo.data.GmlPoint'>
Describes a particular geographical point.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class GmlEnvelope(atom.core.XmlElement)
   Describes a Gml geographical region.
 
 
Method resolution order:
+
GmlEnvelope
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
lower_corner = <class 'gdata.geo.data.GmlLowerCorner'>
Describes a lower corner of a region.
+ +
upper_corner = <class 'gdata.geo.data.GmlUpperCorner'>
Describes an upper corner of a region.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class GmlLowerCorner(atom.core.XmlElement)
   Describes a lower corner of a region.
 
 
Method resolution order:
+
GmlLowerCorner
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class GmlPoint(atom.core.XmlElement)
   Describes a particular geographical point.
 
 
Method resolution order:
+
GmlPoint
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
pos = <class 'gdata.geo.data.GmlPos'>
Describes a latitude and longitude.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class GmlPos(atom.core.XmlElement)
   Describes a latitude and longitude.
 
 
Method resolution order:
+
GmlPos
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class GmlUpperCorner(atom.core.XmlElement)
   Describes an upper corner of a region.
 
 
Method resolution order:
+
GmlUpperCorner
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class W3CPoint(atom.core.XmlElement)
   Describes a W3C geographical location.
 
 
Method resolution order:
+
W3CPoint
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
lat = <class 'gdata.geo.data.GeoLat'>
Describes a W3C latitude.
+ +
long = <class 'gdata.geo.data.GeoLong'>
Describes a W3C longitude.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + +
 
+Data
       GEORSS_TEMPLATE = '{http://www.georss.org/georss/}%s'
+GEO_TEMPLATE = '{http://www.w3.org/2003/01/geo/wgs84_pos#/}%s'
+GML_TEMPLATE = '{http://www.opengis.net/gml/}%s'
+__author__ = 'j.s@google.com (Jeff Scudder)'

+ + + + + +
 
+Author
       j.s@google.com (Jeff Scudder)
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.geo.html python-gdata-2.0.8/pydocs/gdata.geo.html --- python-gdata-1.2.4/pydocs/gdata.geo.html 2008-12-04 00:16:01.000000000 +0000 +++ python-gdata-2.0.8/pydocs/gdata.geo.html 2009-11-25 01:04:13.000000000 +0000 @@ -30,7 +30,8 @@ Package Contents         -

+
data
+

 
diff -Nru python-gdata-1.2.4/pydocs/gdata.health.html python-gdata-2.0.8/pydocs/gdata.health.html --- python-gdata-1.2.4/pydocs/gdata.health.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.health.html 2009-11-25 01:04:14.000000000 +0000 @@ -0,0 +1,659 @@ + + +Python: package gdata.health + + + + +
 
+ 
gdata.health
index
/usr/local/svn/gdata-python-client/src/gdata/health/__init__.py
+

Contains extensions to Atom objects used with Google Health.

+

+ + + + + +
 
+Package Contents
       
service
+

+ + + + + +
 
+Classes
       
+
atom.AtomBase(atom.ExtensionContainer) +
+
+
Ccr +
+
+
gdata.GDataEntry(atom.Entry, gdata.LinkFinder) +
+
+
ProfileEntry +
ProfileListEntry +
+
+
gdata.GDataFeed(atom.Feed, gdata.LinkFinder) +
+
+
ProfileFeed +
ProfileListFeed +
+
+
+

+ + + + + + + +
 
+class Ccr(atom.AtomBase)
   Represents a Google Health <ContinuityOfCareRecord>.
 
 
Method resolution order:
+
Ccr
+
atom.AtomBase
+
atom.ExtensionContainer
+
__builtin__.object
+
+
+Methods defined here:
+
GetAlerts(self)
Helper for extracting Alert/Allergy data from the CCR.

+Returns:
+  A list of ExtensionElements (one for each allergy found) or None if
+  no allergies where found in this CCR.
+ +
GetAllergies(self)
Alias for GetAlerts().
+ +
GetConditions(self)
Alias for GetProblems().
+ +
GetImmunizations(self)
Helper for extracting Immunization data from the CCR.

+Returns:
+  A list of ExtensionElements (one for each immunization found) or None if
+  no immunizations where found in this CCR.
+ +
GetMedications(self)
Helper for extracting Medication data from the CCR.

+Returns:
+  A list of ExtensionElements (one for each medication found) or None if
+  no medications where found in this CCR.
+ +
GetProblems(self)
Helper for extracting Problem/Condition data from the CCR.

+Returns:
+  A list of ExtensionElements (one for each problem found) or None if
+  no problems where found in this CCR.
+ +
GetProcedures(self)
Helper for extracting Procedure data from the CCR.

+Returns:
+  A list of ExtensionElements (one for each procedure found) or None if
+  no procedures where found in this CCR.
+ +
GetResults(self)
Helper for extracting Results/Labresults data from the CCR.

+Returns:
+  A list of ExtensionElements (one for each result found) or None if
+  no results where found in this CCR.
+ +
__init__(self, extension_elements=None, extension_attributes=None, text=None)
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + + + +
 
+class ProfileEntry(gdata.GDataEntry)
   The Google Health version of an Atom Entry.
 
 
Method resolution order:
+
ProfileEntry
+
gdata.GDataEntry
+
atom.Entry
+
atom.FeedEntryParent
+
atom.AtomBase
+
atom.ExtensionContainer
+
gdata.LinkFinder
+
atom.LinkFinder
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, ccr=None, author=None, category=None, content=None, atom_id=None, link=None, published=None, title=None, updated=None, text=None, extension_elements=None, extension_attributes=None)
+ +
+Methods inherited from gdata.GDataEntry:
+
GetMediaURL(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
IsMedia(self)
Determines whether or not an entry is a GData Media entry.
+ +
+Data descriptors inherited from gdata.GDataEntry:
+
id
+
+
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from gdata.LinkFinder:
+
GetAclLink(self)
+ +
GetEditLink(self)
+ +
GetEditMediaLink(self)
The Picasa API mistakenly returns media-edit rather than edit-media, but
+this may change soon.
+ +
GetFeedLink(self)
+ +
GetHtmlLink(self)
Find the first link with rel of alternate and type of text/html

+Returns:
+  An atom.Link or None if no links matched
+ +
GetNextLink(self)
+ +
GetPostLink(self)
Get a link containing the POST target URL.

+The POST target URL is used to insert new entries.

+Returns:
+  A link object with a rel matching the POST type.
+ +
GetPrevLink(self)
+ +
GetSelfLink(self)
Find the first link with rel set to 'self'

+Returns:
+  An atom.Link or none if none of the links had rel equal to 'self'
+ +
+Methods inherited from atom.LinkFinder:
+
GetAlternateLink(self)
+ +
GetLicenseLink(self)
+ +

+ + + + + + + +
 
+class ProfileFeed(gdata.GDataFeed)
   A feed containing a list of Google Health profile entries.
 
 
Method resolution order:
+
ProfileFeed
+
gdata.GDataFeed
+
atom.Feed
+
atom.Source
+
atom.FeedEntryParent
+
atom.AtomBase
+
atom.ExtensionContainer
+
gdata.LinkFinder
+
atom.LinkFinder
+
__builtin__.object
+
+
+Methods inherited from gdata.GDataFeed:
+
__init__(self, author=None, category=None, contributor=None, generator=None, icon=None, atom_id=None, link=None, logo=None, rights=None, subtitle=None, title=None, updated=None, entry=None, total_results=None, start_index=None, items_per_page=None, extension_elements=None, extension_attributes=None, text=None)
Constructor for Source

+Args:
+  author: list (optional) A list of Author instances which belong to this
+      class.
+  category: list (optional) A list of Category instances
+  contributor: list (optional) A list on Contributor instances
+  generator: Generator (optional)
+  icon: Icon (optional)
+  id: Id (optional) The entry's Id element
+  link: list (optional) A list of Link instances
+  logo: Logo (optional)
+  rights: Rights (optional) The entry's Rights element
+  subtitle: Subtitle (optional) The entry's subtitle element
+  title: Title (optional) the entry's title element
+  updated: Updated (optional) the entry's updated element
+  entry: list (optional) A list of the Entry instances contained in the
+      feed.
+  text: String (optional) The text contents of the element. This is the
+      contents of the Entry's XML text node.
+      (Example: <foo>This is the text</foo>)
+  extension_elements: list (optional) A list of ExtensionElement instances
+      which are children of this element.
+  extension_attributes: dict (optional) A dictionary of strings which are
+      the values for additional XML attributes of this element.
+ +
+Data descriptors inherited from gdata.GDataFeed:
+
generator
+
+
id
+
+
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from gdata.LinkFinder:
+
GetAclLink(self)
+ +
GetEditLink(self)
+ +
GetEditMediaLink(self)
The Picasa API mistakenly returns media-edit rather than edit-media, but
+this may change soon.
+ +
GetFeedLink(self)
+ +
GetHtmlLink(self)
Find the first link with rel of alternate and type of text/html

+Returns:
+  An atom.Link or None if no links matched
+ +
GetNextLink(self)
+ +
GetPostLink(self)
Get a link containing the POST target URL.

+The POST target URL is used to insert new entries.

+Returns:
+  A link object with a rel matching the POST type.
+ +
GetPrevLink(self)
+ +
GetSelfLink(self)
Find the first link with rel set to 'self'

+Returns:
+  An atom.Link or none if none of the links had rel equal to 'self'
+ +
+Methods inherited from atom.LinkFinder:
+
GetAlternateLink(self)
+ +
GetLicenseLink(self)
+ +

+ + + + + + + +
 
+class ProfileListEntry(gdata.GDataEntry)
   The Atom Entry in the Google Health profile list feed.
 
 
Method resolution order:
+
ProfileListEntry
+
gdata.GDataEntry
+
atom.Entry
+
atom.FeedEntryParent
+
atom.AtomBase
+
atom.ExtensionContainer
+
gdata.LinkFinder
+
atom.LinkFinder
+
__builtin__.object
+
+
+Methods defined here:
+
GetProfileId(self)
+ +
GetProfileName(self)
+ +
+Methods inherited from gdata.GDataEntry:
+
GetMediaURL(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
IsMedia(self)
Determines whether or not an entry is a GData Media entry.
+ +
+Data descriptors inherited from gdata.GDataEntry:
+
id
+
+
+Methods inherited from atom.Entry:
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
+ +
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from gdata.LinkFinder:
+
GetAclLink(self)
+ +
GetEditLink(self)
+ +
GetEditMediaLink(self)
The Picasa API mistakenly returns media-edit rather than edit-media, but
+this may change soon.
+ +
GetFeedLink(self)
+ +
GetHtmlLink(self)
Find the first link with rel of alternate and type of text/html

+Returns:
+  An atom.Link or None if no links matched
+ +
GetNextLink(self)
+ +
GetPostLink(self)
Get a link containing the POST target URL.

+The POST target URL is used to insert new entries.

+Returns:
+  A link object with a rel matching the POST type.
+ +
GetPrevLink(self)
+ +
GetSelfLink(self)
Find the first link with rel set to 'self'

+Returns:
+  An atom.Link or none if none of the links had rel equal to 'self'
+ +
+Methods inherited from atom.LinkFinder:
+
GetAlternateLink(self)
+ +
GetLicenseLink(self)
+ +

+ + + + + + + +
 
+class ProfileListFeed(gdata.GDataFeed)
   A feed containing a list of Google Health profile list entries.
 
 
Method resolution order:
+
ProfileListFeed
+
gdata.GDataFeed
+
atom.Feed
+
atom.Source
+
atom.FeedEntryParent
+
atom.AtomBase
+
atom.ExtensionContainer
+
gdata.LinkFinder
+
atom.LinkFinder
+
__builtin__.object
+
+
+Methods inherited from gdata.GDataFeed:
+
__init__(self, author=None, category=None, contributor=None, generator=None, icon=None, atom_id=None, link=None, logo=None, rights=None, subtitle=None, title=None, updated=None, entry=None, total_results=None, start_index=None, items_per_page=None, extension_elements=None, extension_attributes=None, text=None)
Constructor for Source

+Args:
+  author: list (optional) A list of Author instances which belong to this
+      class.
+  category: list (optional) A list of Category instances
+  contributor: list (optional) A list on Contributor instances
+  generator: Generator (optional)
+  icon: Icon (optional)
+  id: Id (optional) The entry's Id element
+  link: list (optional) A list of Link instances
+  logo: Logo (optional)
+  rights: Rights (optional) The entry's Rights element
+  subtitle: Subtitle (optional) The entry's subtitle element
+  title: Title (optional) the entry's title element
+  updated: Updated (optional) the entry's updated element
+  entry: list (optional) A list of the Entry instances contained in the
+      feed.
+  text: String (optional) The text contents of the element. This is the
+      contents of the Entry's XML text node.
+      (Example: <foo>This is the text</foo>)
+  extension_elements: list (optional) A list of ExtensionElement instances
+      which are children of this element.
+  extension_attributes: dict (optional) A dictionary of strings which are
+      the values for additional XML attributes of this element.
+ +
+Data descriptors inherited from gdata.GDataFeed:
+
generator
+
+
id
+
+
+Methods inherited from atom.AtomBase:
+
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
+ +
__str__(self)
+ +
+Methods inherited from atom.ExtensionContainer:
+
FindExtensions(self, tag=None, namespace=None)
Searches extension elements for child nodes with the desired name.

+Returns a list of extension elements within this object whose tag
+and/or namespace match those passed in. To find all extensions in
+a particular namespace, specify the namespace but not the tag name.
+If you specify only the tag, the result list may contain extension
+elements in multiple namespaces.

+Args:
+  tag: str (optional) The desired tag
+  namespace: str (optional) The desired namespace

+Returns:
+  A list of elements whose tag and/or namespace match the parameters
+  values
+ +
+Data descriptors inherited from atom.ExtensionContainer:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from gdata.LinkFinder:
+
GetAclLink(self)
+ +
GetEditLink(self)
+ +
GetEditMediaLink(self)
The Picasa API mistakenly returns media-edit rather than edit-media, but
+this may change soon.
+ +
GetFeedLink(self)
+ +
GetHtmlLink(self)
Find the first link with rel of alternate and type of text/html

+Returns:
+  An atom.Link or None if no links matched
+ +
GetNextLink(self)
+ +
GetPostLink(self)
Get a link containing the POST target URL.

+The POST target URL is used to insert new entries.

+Returns:
+  A link object with a rel matching the POST type.
+ +
GetPrevLink(self)
+ +
GetSelfLink(self)
Find the first link with rel set to 'self'

+Returns:
+  An atom.Link or none if none of the links had rel equal to 'self'
+ +
+Methods inherited from atom.LinkFinder:
+
GetAlternateLink(self)
+ +
GetLicenseLink(self)
+ +

+ + + + + +
 
+Functions
       
ProfileEntryFromString(xml_string)
Converts an XML string into a ProfileEntry object.

+Args:
+  xml_string: string The XML describing a Health profile feed entry.

+Returns:
+  A ProfileEntry object corresponding to the given XML.
+
ProfileFeedFromString(xml_string)
Converts an XML string into a ProfileFeed object.

+Args:
+  xml_string: string The XML describing a ProfileFeed feed.

+Returns:
+  A ProfileFeed object corresponding to the given XML.
+
ProfileListEntryFromString(xml_string)
Converts an XML string into a ProfileListEntry object.

+Args:
+  xml_string: string The XML describing a Health profile list feed entry.

+Returns:
+  A ProfileListEntry object corresponding to the given XML.
+
ProfileListFeedFromString(xml_string)
Converts an XML string into a ProfileListFeed object.

+Args:
+  xml_string: string The XML describing a ProfileListFeed feed.

+Returns:
+  A ProfileListFeed object corresponding to the given XML.
+

+ + + + + +
 
+Data
       CCR_NAMESPACE = 'urn:astm-org:CCR'
+METADATA_NAMESPACE = 'http://schemas.google.com/health/metadata'
+__author__ = 'api.eric@google.com (Eric Bidelman)'

+ + + + + +
 
+Author
       api.eric@google.com (Eric Bidelman)
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.health.service.html python-gdata-2.0.8/pydocs/gdata.health.service.html --- python-gdata-1.2.4/pydocs/gdata.health.service.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.health.service.html 2010-02-26 23:16:48.000000000 +0000 @@ -0,0 +1,1157 @@ + + +Python: module gdata.health.service + + + + +
 
+ 
gdata.health.service
index
/usr/local/svn/gdata-python-client/src/gdata/health/service.py
+

HealthService extends GDataService to streamline Google Health API access.

+HealthService: Provides methods to interact with the profile, profile list,
+               and register/notices feeds. Extends GDataService.

+HealthProfileQuery: Queries the Google Health Profile feed.

+HealthProfileListQuery: Queries the Google Health Profile list feed.

+

+ + + + + +
 
+Modules
       
atom
+
gdata
+

+ + + + + +
 
+Classes
       
+
gdata.service.GDataService(atom.service.AtomService) +
+
+
HealthService +
+
+
gdata.service.Query(__builtin__.dict) +
+
+
HealthProfileListQuery +
HealthProfileQuery +
HealthRegisterQuery +
+
+
+

+ + + + + + + +
 
+class HealthProfileListQuery(gdata.service.Query)
   Object used to construct a URI to query a Health profile list feed.
 
 
Method resolution order:
+
HealthProfileListQuery
+
gdata.service.Query
+
__builtin__.dict
+
__builtin__.object
+
+
+Methods defined here:
+
ToUri(self)
Generates a URI from the query parameters set in the object.

+Returns:
+  A string containing the URI used to retrieve entries from the
+  profile list feed.
+ +
__init__(self, service='health', feed='feeds/profile/list')
Constructor for Health profile list feed query.

+Args:
+  service: string (optional) The service to query. Either 'health' or 'h9'.
+  feed: string (optional) The path for the feed.  The default value is
+      'feeds/profile/list'.
+ +
+Methods inherited from gdata.service.Query:
+
__str__(self)
+ +
+Data descriptors inherited from gdata.service.Query:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
alt
+
The feed query's alt parameter
+
+
author
+
The feed query's author parameter
+
+
max_results
+
The feed query's max-results parameter
+
+
orderby
+
The feed query's orderby parameter
+
+
published_max
+
The feed query's published-max parameter
+
+
published_min
+
The feed query's published-min parameter
+
+
start_index
+
The feed query's start-index parameter
+
+
text_query
+
The feed query's q parameter
+
+
updated_max
+
The feed query's updated-max parameter
+
+
updated_min
+
The feed query's updated-min parameter
+
+
+Methods inherited from __builtin__.dict:
+
__cmp__(...)
x.__cmp__(y) <==> cmp(x,y)
+ +
__contains__(...)
D.__contains__(k) -> True if D has a key k, else False
+ +
__delitem__(...)
x.__delitem__(y) <==> del x[y]
+ +
__eq__(...)
x.__eq__(y) <==> x==y
+ +
__ge__(...)
x.__ge__(y) <==> x>=y
+ +
__getattribute__(...)
x.__getattribute__('name') <==> x.name
+ +
__getitem__(...)
x.__getitem__(y) <==> x[y]
+ +
__gt__(...)
x.__gt__(y) <==> x>y
+ +
__iter__(...)
x.__iter__() <==> iter(x)
+ +
__le__(...)
x.__le__(y) <==> x<=y
+ +
__len__(...)
x.__len__() <==> len(x)
+ +
__lt__(...)
x.__lt__(y) <==> x<y
+ +
__ne__(...)
x.__ne__(y) <==> x!=y
+ +
__repr__(...)
x.__repr__() <==> repr(x)
+ +
__setitem__(...)
x.__setitem__(i, y) <==> x[i]=y
+ +
__sizeof__(...)
D.__sizeof__() -> size of D in memory, in bytes
+ +
clear(...)
D.clear() -> None.  Remove all items from D.
+ +
copy(...)
D.copy() -> a shallow copy of D
+ +
get(...)
D.get(k[,d]) -> D[k] if k in D, else d.  d defaults to None.
+ +
has_key(...)
D.has_key(k) -> True if D has a key k, else False
+ +
items(...)
D.items() -> list of D's (key, value) pairs, as 2-tuples
+ +
iteritems(...)
D.iteritems() -> an iterator over the (key, value) items of D
+ +
iterkeys(...)
D.iterkeys() -> an iterator over the keys of D
+ +
itervalues(...)
D.itervalues() -> an iterator over the values of D
+ +
keys(...)
D.keys() -> list of D's keys
+ +
pop(...)
D.pop(k[,d]) -> v, remove specified key and return the corresponding value
+If key is not found, d is returned if given, otherwise KeyError is raised
+ +
popitem(...)
D.popitem() -> (k, v), remove and return some (key, value) pair as a
+2-tuple; but raise KeyError if D is empty
+ +
setdefault(...)
D.setdefault(k[,d]) -> D.get(k,d), also set D[k]=d if k not in D
+ +
update(...)
D.update(E, **F) -> None.  Update D from E and F: for k in E: D[k] = E[k]
+(if E has keys else: for (k, v) in E: D[k] = v) then: for k in F: D[k] = F[k]
+ +
values(...)
D.values() -> list of D's values
+ +
+Data and other attributes inherited from __builtin__.dict:
+
__hash__ = None
+ +
__new__ = <built-in method __new__ of type object at 0x7569a0>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+ +
fromkeys = <built-in method fromkeys of type object at 0xaa3ad0>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
+v defaults to None.
+ +

+ + + + + + + +
 
+class HealthProfileQuery(gdata.service.Query)
   Object used to construct a URI to query the Google Health profile feed.
 
 
Method resolution order:
+
HealthProfileQuery
+
gdata.service.Query
+
__builtin__.dict
+
__builtin__.object
+
+
+Methods defined here:
+
ToUri(self)
Generates a URI from the query parameters set in the object.

+Returns:
+  A string containing the URI used to retrieve entries from the Health
+  profile feed.
+ +
__init__(self, service='health', feed='feeds/profile', projection='default', profile_id=None, text_query=None, params=None, categories=None)
Constructor for Health profile feed query.

+Args:
+  service: string (optional) The service to query. Either 'health' or 'h9'.
+  feed: string (optional) The path for the feed. The default value is
+      'feeds/profile'.
+  projection: string (optional) The visibility of the data. Possible values
+      are 'default' for AuthSub and 'ui' for ClientLogin.  If this value
+      is set to 'ui', the profile_id parameter should also be set.
+  profile_id: string (optional) The profile id to query.  This should only
+      be used when using ClientLogin.
+  text_query: str (optional) The contents of the q query parameter. The
+      contents of the text_query are URL escaped upon conversion to a URI.
+      Note: this parameter can only be used on the register feed using
+      ClientLogin.
+  params: dict (optional) Parameter value string pairs which become URL
+      params when translated to a URI. These parameters are added to
+      the query's items.
+  categories: list (optional) List of category strings which should be
+      included as query categories. See gdata.service.Query for
+      additional documentation.
+ +
+Methods inherited from gdata.service.Query:
+
__str__(self)
+ +
+Data descriptors inherited from gdata.service.Query:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
alt
+
The feed query's alt parameter
+
+
author
+
The feed query's author parameter
+
+
max_results
+
The feed query's max-results parameter
+
+
orderby
+
The feed query's orderby parameter
+
+
published_max
+
The feed query's published-max parameter
+
+
published_min
+
The feed query's published-min parameter
+
+
start_index
+
The feed query's start-index parameter
+
+
text_query
+
The feed query's q parameter
+
+
updated_max
+
The feed query's updated-max parameter
+
+
updated_min
+
The feed query's updated-min parameter
+
+
+Methods inherited from __builtin__.dict:
+
__cmp__(...)
x.__cmp__(y) <==> cmp(x,y)
+ +
__contains__(...)
D.__contains__(k) -> True if D has a key k, else False
+ +
__delitem__(...)
x.__delitem__(y) <==> del x[y]
+ +
__eq__(...)
x.__eq__(y) <==> x==y
+ +
__ge__(...)
x.__ge__(y) <==> x>=y
+ +
__getattribute__(...)
x.__getattribute__('name') <==> x.name
+ +
__getitem__(...)
x.__getitem__(y) <==> x[y]
+ +
__gt__(...)
x.__gt__(y) <==> x>y
+ +
__iter__(...)
x.__iter__() <==> iter(x)
+ +
__le__(...)
x.__le__(y) <==> x<=y
+ +
__len__(...)
x.__len__() <==> len(x)
+ +
__lt__(...)
x.__lt__(y) <==> x<y
+ +
__ne__(...)
x.__ne__(y) <==> x!=y
+ +
__repr__(...)
x.__repr__() <==> repr(x)
+ +
__setitem__(...)
x.__setitem__(i, y) <==> x[i]=y
+ +
__sizeof__(...)
D.__sizeof__() -> size of D in memory, in bytes
+ +
clear(...)
D.clear() -> None.  Remove all items from D.
+ +
copy(...)
D.copy() -> a shallow copy of D
+ +
get(...)
D.get(k[,d]) -> D[k] if k in D, else d.  d defaults to None.
+ +
has_key(...)
D.has_key(k) -> True if D has a key k, else False
+ +
items(...)
D.items() -> list of D's (key, value) pairs, as 2-tuples
+ +
iteritems(...)
D.iteritems() -> an iterator over the (key, value) items of D
+ +
iterkeys(...)
D.iterkeys() -> an iterator over the keys of D
+ +
itervalues(...)
D.itervalues() -> an iterator over the values of D
+ +
keys(...)
D.keys() -> list of D's keys
+ +
pop(...)
D.pop(k[,d]) -> v, remove specified key and return the corresponding value
+If key is not found, d is returned if given, otherwise KeyError is raised
+ +
popitem(...)
D.popitem() -> (k, v), remove and return some (key, value) pair as a
+2-tuple; but raise KeyError if D is empty
+ +
setdefault(...)
D.setdefault(k[,d]) -> D.get(k,d), also set D[k]=d if k not in D
+ +
update(...)
D.update(E, **F) -> None.  Update D from E and F: for k in E: D[k] = E[k]
+(if E has keys else: for (k, v) in E: D[k] = v) then: for k in F: D[k] = F[k]
+ +
values(...)
D.values() -> list of D's values
+ +
+Data and other attributes inherited from __builtin__.dict:
+
__hash__ = None
+ +
__new__ = <built-in method __new__ of type object at 0x7569a0>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+ +
fromkeys = <built-in method fromkeys of type object at 0xcd9130>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
+v defaults to None.
+ +

+ + + + + + + +
 
+class HealthRegisterQuery(gdata.service.Query)
   Object used to construct a URI to query a Health register/notice feed.
 
 
Method resolution order:
+
HealthRegisterQuery
+
gdata.service.Query
+
__builtin__.dict
+
__builtin__.object
+
+
+Methods defined here:
+
ToUri(self)
Generates a URI from the query parameters set in the object.

+Returns:
+  A string containing the URI needed to interact with the register feed.
+ +
__init__(self, service='health', feed='feeds/register', projection='default', profile_id=None)
Constructor for Health profile list feed query.

+Args:
+  service: string (optional) The service to query. Either 'health' or 'h9'.
+  feed: string (optional) The path for the feed.  The default value is
+      'feeds/register'.
+  projection: string (optional) The visibility of the data. Possible values
+      are 'default' for AuthSub and 'ui' for ClientLogin.  If this value
+      is set to 'ui', the profile_id parameter should also be set.
+  profile_id: string (optional) The profile id to query.  This should only
+      be used when using ClientLogin.
+ +
+Methods inherited from gdata.service.Query:
+
__str__(self)
+ +
+Data descriptors inherited from gdata.service.Query:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
alt
+
The feed query's alt parameter
+
+
author
+
The feed query's author parameter
+
+
max_results
+
The feed query's max-results parameter
+
+
orderby
+
The feed query's orderby parameter
+
+
published_max
+
The feed query's published-max parameter
+
+
published_min
+
The feed query's published-min parameter
+
+
start_index
+
The feed query's start-index parameter
+
+
text_query
+
The feed query's q parameter
+
+
updated_max
+
The feed query's updated-max parameter
+
+
updated_min
+
The feed query's updated-min parameter
+
+
+Methods inherited from __builtin__.dict:
+
__cmp__(...)
x.__cmp__(y) <==> cmp(x,y)
+ +
__contains__(...)
D.__contains__(k) -> True if D has a key k, else False
+ +
__delitem__(...)
x.__delitem__(y) <==> del x[y]
+ +
__eq__(...)
x.__eq__(y) <==> x==y
+ +
__ge__(...)
x.__ge__(y) <==> x>=y
+ +
__getattribute__(...)
x.__getattribute__('name') <==> x.name
+ +
__getitem__(...)
x.__getitem__(y) <==> x[y]
+ +
__gt__(...)
x.__gt__(y) <==> x>y
+ +
__iter__(...)
x.__iter__() <==> iter(x)
+ +
__le__(...)
x.__le__(y) <==> x<=y
+ +
__len__(...)
x.__len__() <==> len(x)
+ +
__lt__(...)
x.__lt__(y) <==> x<y
+ +
__ne__(...)
x.__ne__(y) <==> x!=y
+ +
__repr__(...)
x.__repr__() <==> repr(x)
+ +
__setitem__(...)
x.__setitem__(i, y) <==> x[i]=y
+ +
__sizeof__(...)
D.__sizeof__() -> size of D in memory, in bytes
+ +
clear(...)
D.clear() -> None.  Remove all items from D.
+ +
copy(...)
D.copy() -> a shallow copy of D
+ +
get(...)
D.get(k[,d]) -> D[k] if k in D, else d.  d defaults to None.
+ +
has_key(...)
D.has_key(k) -> True if D has a key k, else False
+ +
items(...)
D.items() -> list of D's (key, value) pairs, as 2-tuples
+ +
iteritems(...)
D.iteritems() -> an iterator over the (key, value) items of D
+ +
iterkeys(...)
D.iterkeys() -> an iterator over the keys of D
+ +
itervalues(...)
D.itervalues() -> an iterator over the values of D
+ +
keys(...)
D.keys() -> list of D's keys
+ +
pop(...)
D.pop(k[,d]) -> v, remove specified key and return the corresponding value
+If key is not found, d is returned if given, otherwise KeyError is raised
+ +
popitem(...)
D.popitem() -> (k, v), remove and return some (key, value) pair as a
+2-tuple; but raise KeyError if D is empty
+ +
setdefault(...)
D.setdefault(k[,d]) -> D.get(k,d), also set D[k]=d if k not in D
+ +
update(...)
D.update(E, **F) -> None.  Update D from E and F: for k in E: D[k] = E[k]
+(if E has keys else: for (k, v) in E: D[k] = v) then: for k in F: D[k] = F[k]
+ +
values(...)
D.values() -> list of D's values
+ +
+Data and other attributes inherited from __builtin__.dict:
+
__hash__ = None
+ +
__new__ = <built-in method __new__ of type object at 0x7569a0>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+ +
fromkeys = <built-in method fromkeys of type object at 0xaac7c0>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
+v defaults to None.
+ +

+ + + + + + + +
 
+class HealthService(gdata.service.GDataService)
   Client extension for the Google Health service Document List feed.
 
 
Method resolution order:
+
HealthService
+
gdata.service.GDataService
+
atom.service.AtomService
+
__builtin__.object
+
+
+Methods defined here:
+
GetProfileFeed(self, query=None, profile_id=None)
Fetches the users Google Health profile feed.

+Args:
+  query: HealthProfileQuery or string (optional) A query to use on the
+      profile feed.  If None, a HealthProfileQuery is constructed.
+  profile_id: string (optional) The profile id to query the profile feed
+      with when using ClientLogin.  Note: this parameter is ignored if
+      query is set.

+Returns:
+  A gdata.health.ProfileFeed object containing the user's Health profile.
+ +
GetProfileListFeed(self, query=None)
Fetches the users Google Health profile feed.

+Args:
+  query: HealthProfileListQuery or string (optional) A query to use
+      on the profile list feed.  If None, a HealthProfileListQuery is
+      constructed to /health/feeds/profile/list or /h9/feeds/profile/list.

+Returns:
+  A gdata.health.ProfileListFeed object containing the user's list
+  of profiles.
+ +
SendNotice(self, subject, body=None, content_type='html', ccr=None, profile_id=None)
Sends (posts) a notice to the user's Google Health profile.

+Args:
+  subject: A string representing the message's subject line.
+  body: string (optional) The message body.
+  content_type: string (optional) The content type of the notice message
+      body.  This parameter is only honored when a message body is
+      specified.
+  ccr: string (optional) The CCR XML document to reconcile into the
+      user's profile.
+  profile_id: string (optional) The profile id to work with when using
+      ClientLogin.  Note: this parameter is ignored if query is set.

+Returns:
+  A gdata.health.ProfileEntry object of the posted entry.
+ +
__init__(self, email=None, password=None, source=None, use_h9_sandbox=False, server='www.google.com', additional_headers=None, **kwargs)
Creates a client for the Google Health service.

+Args:
+  email: string (optional) The user's email address, used for
+      authentication.
+  password: string (optional) The user's password.
+  source: string (optional) The name of the user's application.
+  use_h9_sandbox: boolean (optional) True to issue requests against the
+      /h9 developer's sandbox.
+  server: string (optional) The name of the server to which a connection
+      will be opened.
+  additional_headers: dictionary (optional) Any additional headers which
+      should be included with CRUD operations.
+  kwargs: The other parameters to pass to gdata.service.GDataService
+      constructor.
+ +
+Methods inherited from gdata.service.GDataService:
+
AuthSubTokenInfo(self)
Fetches the AuthSub token's metadata from the server.

+Raises:
+  NonAuthSubToken if the user's auth token is not an AuthSub token
+ +
ClientLogin(self, username, password, account_type=None, service=None, auth_service_url=None, source=None, captcha_token=None, captcha_response=None)
Convenience method for authenticating using ProgrammaticLogin. 

+Sets values for email, password, and other optional members.

+Args:
+  username:
+  password:
+  account_type: string (optional)
+  service: string (optional)
+  auth_service_url: string (optional)
+  captcha_token: string (optional)
+  captcha_response: string (optional)
+ +
Delete(self, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=4)
Deletes the entry at the given URI.

+Args:
+  uri: string The URI of the entry to be deleted. Example: 
+       '/base/feeds/items/ITEM-ID'
+  extra_headers: dict (optional) HTTP headers which are to be included.
+                 The client automatically sets the Content-Type and
+                 Authorization headers.
+  url_params: dict (optional) Additional URL parameters to be included
+              in the URI. These are translated into query arguments
+              in the form '&dict_key=value&...'.
+              Example: {'max-results': '250'} becomes &max-results=250
+  escape_params: boolean (optional) If false, the calling code has already
+                 ensured that the query will form a valid URL (all
+                 reserved characters have been escaped). If true, this
+                 method will escape the query and any URL parameters
+                 provided.

+Returns:
+  True if the entry was deleted.
+ +
FetchOAuthRequestToken(self, scopes=None, extra_parameters=None, request_url='https://www.google.com/accounts/OAuthGetRequestToken', oauth_callback=None)
Fetches and sets the OAuth request token and returns it.

+Args:
+  scopes: string or list of string base URL(s) of the service(s) to be
+      accessed. If None, then this method tries to determine the
+      scope(s) from the current service.
+  extra_parameters: dict (optional) key-value pairs as any additional
+      parameters to be included in the URL and signature while making a
+      request for fetching an OAuth request token. All the OAuth parameters
+      are added by default. But if provided through this argument, any
+      default parameters will be overwritten. For e.g. a default parameter
+      oauth_version 1.0 can be overwritten if
+      extra_parameters = {'oauth_version': '2.0'}
+  request_url: Request token URL. The default is
+      'https://www.google.com/accounts/OAuthGetRequestToken'.
+  oauth_callback: str (optional) If set, it is assume the client is using
+      the OAuth v1.0a protocol where the callback url is sent in the
+      request token step.  If the oauth_callback is also set in
+      extra_params, this value will override that one.

+Returns:
+  The fetched request token as a gdata.auth.OAuthToken object.

+Raises:
+  FetchingOAuthRequestTokenFailed if the server responded to the request
+  with an error.
+ +
GenerateAuthSubURL(self, next, scope, secure=False, session=True, domain='default')
Generate a URL at which the user will login and be redirected back.

+Users enter their credentials on a Google login page and a token is sent
+to the URL specified in next. See documentation for AuthSub login at:
+http://code.google.com/apis/accounts/docs/AuthSub.html

+Args:
+  next: string The URL user will be sent to after logging in.
+  scope: string or list of strings. The URLs of the services to be 
+         accessed.
+  secure: boolean (optional) Determines whether or not the issued token
+          is a secure token.
+  session: boolean (optional) Determines whether or not the issued token
+           can be upgraded to a session token.
+ +
GenerateOAuthAuthorizationURL(self, request_token=None, callback_url=None, extra_params=None, include_scopes_in_callback=False, scopes_param_prefix='oauth_token_scope', request_url='https://www.google.com/accounts/OAuthAuthorizeToken')
Generates URL at which user will login to authorize the request token.

+Args:
+  request_token: gdata.auth.OAuthToken (optional) OAuth request token.
+      If not specified, then the current token will be used if it is of
+      type <gdata.auth.OAuthToken>, else it is found by looking in the
+      token_store by looking for a token for the current scope.    
+  callback_url: string (optional) The URL user will be sent to after
+      logging in and granting access.
+  extra_params: dict (optional) Additional parameters to be sent.
+  include_scopes_in_callback: Boolean (default=False) if set to True, and
+      if 'callback_url' is present, the 'callback_url' will be modified to
+      include the scope(s) from the request token as a URL parameter. The
+      key for the 'callback' URL's scope parameter will be
+      OAUTH_SCOPE_URL_PARAM_NAME. The benefit of including the scope URL as
+      a parameter to the 'callback' URL, is that the page which receives
+      the OAuth token will be able to tell which URLs the token grants
+      access to.
+  scopes_param_prefix: string (default='oauth_token_scope') The URL
+      parameter key which maps to the list of valid scopes for the token.
+      This URL parameter will be included in the callback URL along with
+      the scopes of the token as value if include_scopes_in_callback=True.
+  request_url: Authorization URL. The default is
+      'https://www.google.com/accounts/OAuthAuthorizeToken'.
+Returns:
+  A string URL at which the user is required to login.

+Raises:
+  NonOAuthToken if the user's request token is not an OAuth token or if a
+  request token was not available.
+ +
Get(self, uri, extra_headers=None, redirects_remaining=4, encoding='UTF-8', converter=None)
Query the GData API with the given URI

+The uri is the portion of the URI after the server value 
+(ex: www.google.com).

+To perform a query against Google Base, set the server to 
+'base.google.com' and set the uri to '/base/feeds/...', where ... is 
+your query. For example, to find snippets for all digital cameras uri 
+should be set to: '/base/feeds/snippets?bq=digital+camera'

+Args:
+  uri: string The query in the form of a URI. Example:
+       '/base/feeds/snippets?bq=digital+camera'.
+  extra_headers: dictionary (optional) Extra HTTP headers to be included
+                 in the GET request. These headers are in addition to 
+                 those stored in the client's additional_headers property.
+                 The client automatically sets the Content-Type and 
+                 Authorization headers.
+  redirects_remaining: int (optional) Tracks the number of additional
+      redirects this method will allow. If the service object receives
+      a redirect and remaining is 0, it will not follow the redirect. 
+      This was added to avoid infinite redirect loops.
+  encoding: string (optional) The character encoding for the server's
+      response. Default is UTF-8
+  converter: func (optional) A function which will transform
+      the server's results before it is returned. Example: use 
+      GDataFeedFromString to parse the server response as if it
+      were a GDataFeed.

+Returns:
+  If there is no ResultsTransformer specified in the call, a GDataFeed 
+  or GDataEntry depending on which is sent from the server. If the 
+  response is niether a feed or entry and there is no ResultsTransformer,
+  return a string. If there is a ResultsTransformer, the returned value 
+  will be that of the ResultsTransformer function.
+ +
GetAuthSubToken(self)
Returns the AuthSub token as a string.

+If the token is an gdta.auth.AuthSubToken, the Authorization Label
+("AuthSub token") is removed.

+This method examines the current_token to see if it is an AuthSubToken
+or SecureAuthSubToken. If not, it searches the token_store for a token
+which matches the current scope.

+The current scope is determined by the service name string member.

+Returns:
+  If the current_token is set to an AuthSubToken/SecureAuthSubToken,
+  return the token string. If there is no current_token, a token string
+  for a token which matches the service object's default scope is returned.
+  If there are no tokens valid for the scope, returns None.
+ +
GetClientLoginToken(self)
Returns the token string for the current token or a token matching the 
+service scope.

+If the current_token is a ClientLoginToken, the token string for 
+the current token is returned. If the current_token is not set, this method
+searches for a token in the token_store which is valid for the service 
+object's current scope.

+The current scope is determined by the service name string member.
+The token string is the end of the Authorization header, it doesn not
+include the ClientLogin label.
+ +
GetEntry(self, uri, extra_headers=None)
Query the GData API with the given URI and receive an Entry.

+See also documentation for gdata.service.Get

+Args:
+  uri: string The query in the form of a URI. Example:
+       '/base/feeds/snippets?bq=digital+camera'.
+  extra_headers: dictionary (optional) Extra HTTP headers to be included
+                 in the GET request. These headers are in addition to
+                 those stored in the client's additional_headers property.
+                 The client automatically sets the Content-Type and
+                 Authorization headers.

+Returns:
+  A GDataEntry built from the XML in the server's response.
+ +
GetFeed(self, uri, extra_headers=None, converter=<function GDataFeedFromString at 0x7f43b01cad70>)
Query the GData API with the given URI and receive a Feed.

+See also documentation for gdata.service.Get

+Args:
+  uri: string The query in the form of a URI. Example:
+       '/base/feeds/snippets?bq=digital+camera'.
+  extra_headers: dictionary (optional) Extra HTTP headers to be included
+                 in the GET request. These headers are in addition to
+                 those stored in the client's additional_headers property.
+                 The client automatically sets the Content-Type and
+                 Authorization headers.

+Returns:
+  A GDataFeed built from the XML in the server's response.
+ +
GetGeneratorFromLinkFinder(self, link_finder, func, num_retries=3, delay=1, backoff=2)
returns a generator for pagination
+ +
GetMedia(self, uri, extra_headers=None)
Returns a MediaSource containing media and its metadata from the given
+URI string.
+ +
GetNext(self, feed)
Requests the next 'page' of results in the feed.

+This method uses the feed's next link to request an additional feed
+and uses the class of the feed to convert the results of the GET request.

+Args:
+  feed: atom.Feed or a subclass. The feed should contain a next link and
+      the type of the feed will be applied to the results from the 
+      server. The new feed which is returned will be of the same class
+      as this feed which was passed in.

+Returns:
+  A new feed representing the next set of results in the server's feed.
+  The type of this feed will match that of the feed argument.
+ +
GetOAuthInputParameters(self)
+ +
GetWithRetries(self, uri, extra_headers=None, redirects_remaining=4, encoding='UTF-8', converter=None, num_retries=3, delay=1, backoff=2, logger=None)
This is a wrapper method for Get with retring capability.

+To avoid various errors while retrieving bulk entities by retring
+specified times.

+Note this method relies on the time module and so may not be usable
+by default in Python2.2.

+Args:
+  num_retries: integer The retry count.
+  delay: integer The initial delay for retring.
+  backoff: integer how much the delay should lengthen after each failure.
+  logger: an object which has a debug(str) method to receive logging
+          messages. Recommended that you pass in the logging module.
+Raises:
+  ValueError if any of the parameters has an invalid value.
+  RanOutOfTries on failure after number of retries.
+ +
Post(self, data, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=4, media_source=None, converter=None)
Insert or update  data into a GData service at the given URI.

+Args:
+  data: string, ElementTree._Element, atom.Entry, or gdata.GDataEntry The
+        XML to be sent to the uri.
+  uri: string The location (feed) to which the data should be inserted.
+       Example: '/base/feeds/items'.
+  extra_headers: dict (optional) HTTP headers which are to be included.
+                 The client automatically sets the Content-Type,
+                 Authorization, and Content-Length headers.
+  url_params: dict (optional) Additional URL parameters to be included
+              in the URI. These are translated into query arguments
+              in the form '&dict_key=value&...'.
+              Example: {'max-results': '250'} becomes &max-results=250
+  escape_params: boolean (optional) If false, the calling code has already
+                 ensured that the query will form a valid URL (all
+                 reserved characters have been escaped). If true, this
+                 method will escape the query and any URL parameters
+                 provided.
+  media_source: MediaSource (optional) Container for the media to be sent
+      along with the entry, if provided.
+  converter: func (optional) A function which will be executed on the
+      server's response. Often this is a function like
+      GDataEntryFromString which will parse the body of the server's
+      response and return a GDataEntry.

+Returns:
+  If the post succeeded, this method will return a GDataFeed, GDataEntry,
+  or the results of running converter on the server's result body (if
+  converter was specified).
+ +
PostOrPut(self, verb, data, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=4, media_source=None, converter=None)
Insert data into a GData service at the given URI.

+Args:
+  verb: string, either 'POST' or 'PUT'
+  data: string, ElementTree._Element, atom.Entry, or gdata.GDataEntry The
+        XML to be sent to the uri. 
+  uri: string The location (feed) to which the data should be inserted. 
+       Example: '/base/feeds/items'. 
+  extra_headers: dict (optional) HTTP headers which are to be included. 
+                 The client automatically sets the Content-Type,
+                 Authorization, and Content-Length headers.
+  url_params: dict (optional) Additional URL parameters to be included
+              in the URI. These are translated into query arguments
+              in the form '&dict_key=value&...'.
+              Example: {'max-results': '250'} becomes &max-results=250
+  escape_params: boolean (optional) If false, the calling code has already
+                 ensured that the query will form a valid URL (all
+                 reserved characters have been escaped). If true, this
+                 method will escape the query and any URL parameters
+                 provided.
+  media_source: MediaSource (optional) Container for the media to be sent
+      along with the entry, if provided.
+  converter: func (optional) A function which will be executed on the 
+      server's response. Often this is a function like 
+      GDataEntryFromString which will parse the body of the server's 
+      response and return a GDataEntry.

+Returns:
+  If the post succeeded, this method will return a GDataFeed, GDataEntry,
+  or the results of running converter on the server's result body (if
+  converter was specified).
+ +
ProgrammaticLogin(self, captcha_token=None, captcha_response=None)
Authenticates the user and sets the GData Auth token.

+Login retreives a temporary auth token which must be used with all
+requests to GData services. The auth token is stored in the GData client
+object.

+Login is also used to respond to a captcha challenge. If the user's login
+attempt failed with a CaptchaRequired error, the user can respond by
+calling Login with the captcha token and the answer to the challenge.

+Args:
+  captcha_token: string (optional) The identifier for the captcha challenge
+                 which was presented to the user.
+  captcha_response: string (optional) The user's answer to the captch 
+                    challenge.

+Raises:
+  CaptchaRequired if the login service will require a captcha response
+  BadAuthentication if the login service rejected the username or password
+  Error if the login service responded with a 403 different from the above
+ +
Put(self, data, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=3, media_source=None, converter=None)
Updates an entry at the given URI.

+Args:
+  data: string, ElementTree._Element, or xml_wrapper.ElementWrapper The 
+        XML containing the updated data.
+  uri: string A URI indicating entry to which the update will be applied.
+       Example: '/base/feeds/items/ITEM-ID'
+  extra_headers: dict (optional) HTTP headers which are to be included.
+                 The client automatically sets the Content-Type,
+                 Authorization, and Content-Length headers.
+  url_params: dict (optional) Additional URL parameters to be included
+              in the URI. These are translated into query arguments
+              in the form '&dict_key=value&...'.
+              Example: {'max-results': '250'} becomes &max-results=250
+  escape_params: boolean (optional) If false, the calling code has already
+                 ensured that the query will form a valid URL (all
+                 reserved characters have been escaped). If true, this
+                 method will escape the query and any URL parameters
+                 provided.
+  converter: func (optional) A function which will be executed on the 
+      server's response. Often this is a function like 
+      GDataEntryFromString which will parse the body of the server's 
+      response and return a GDataEntry.

+Returns:
+  If the put succeeded, this method will return a GDataFeed, GDataEntry,
+  or the results of running converter on the server's result body (if
+  converter was specified).
+ +
RevokeAuthSubToken(self)
Revokes an existing AuthSub token.

+Raises:
+  NonAuthSubToken if the user's auth token is not an AuthSub token
+ +
RevokeOAuthToken(self, request_url='https://www.google.com/accounts/AuthSubRevokeToken')
Revokes an existing OAuth token.

+request_url: Token revoke URL. The default is
+      'https://www.google.com/accounts/AuthSubRevokeToken'.
+Raises:
+  NonOAuthToken if the user's auth token is not an OAuth token.
+  RevokingOAuthTokenFailed if request for revoking an OAuth token failed.
+ +
SetAuthSubToken(self, token, scopes=None, rsa_key=None)
Sets the token sent in requests to an AuthSub token.

+Sets the current_token and attempts to add the token to the token_store.

+Only use this method if you have received a token from the AuthSub
+service. The auth token is set automatically when UpgradeToSessionToken()
+is used. See documentation for Google AuthSub here:
+http://code.google.com/apis/accounts/AuthForWebApps.html 

+Args:
+ token: gdata.auth.AuthSubToken or gdata.auth.SecureAuthSubToken or string
+        The token returned by the AuthSub service. If the token is an
+        AuthSubToken or SecureAuthSubToken, the scope information stored in
+        the token is used. If the token is a string, the scopes parameter is
+        used to determine the valid scopes.
+ scopes: list of URLs for which the token is valid. This is only used
+         if the token parameter is a string.
+ rsa_key: string (optional) Private key required for RSA_SHA1 signature
+          method.  This parameter is necessary if the token is a string
+          representing a secure token.
+ +
SetClientLoginToken(self, token, scopes=None)
Sets the token sent in requests to a ClientLogin token.

+This method sets the current_token to a new ClientLoginToken and it 
+also attempts to add the ClientLoginToken to the token_store.

+Only use this method if you have received a token from the ClientLogin
+service. The auth_token is set automatically when ProgrammaticLogin()
+is used. See documentation for Google ClientLogin here:
+http://code.google.com/apis/accounts/docs/AuthForInstalledApps.html

+Args:
+  token: string or instance of a ClientLoginToken.
+ +
SetOAuthInputParameters(self, signature_method, consumer_key, consumer_secret=None, rsa_key=None, two_legged_oauth=False, requestor_id=None)
Sets parameters required for using OAuth authentication mechanism.

+NOTE: Though consumer_secret and rsa_key are optional, either of the two
+is required depending on the value of the signature_method.

+Args:
+  signature_method: class which provides implementation for strategy class
+      oauth.oauth.OAuthSignatureMethod. Signature method to be used for
+      signing each request. Valid implementations are provided as the
+      constants defined by gdata.auth.OAuthSignatureMethod. Currently
+      they are gdata.auth.OAuthSignatureMethod.RSA_SHA1 and
+      gdata.auth.OAuthSignatureMethod.HMAC_SHA1
+  consumer_key: string Domain identifying third_party web application.
+  consumer_secret: string (optional) Secret generated during registration.
+      Required only for HMAC_SHA1 signature method.
+  rsa_key: string (optional) Private key required for RSA_SHA1 signature
+      method.
+  two_legged_oauth: boolean (optional) Enables two-legged OAuth process.
+  requestor_id: string (optional) User email adress to make requests on
+      their behalf.  This parameter should only be set when two_legged_oauth
+      is True.
+ +
SetOAuthToken(self, oauth_token)
Attempts to set the current token and add it to the token store.

+The oauth_token can be any OAuth token i.e. unauthorized request token,
+authorized request token or access token.
+This method also attempts to add the token to the token store.
+Use this method any time you want the current token to point to the
+oauth_token passed. For e.g. call this method with the request token
+you receive from FetchOAuthRequestToken.

+Args:
+  request_token: gdata.auth.OAuthToken OAuth request token.
+ +
UpgradeToOAuthAccessToken(self, authorized_request_token=None, request_url='https://www.google.com/accounts/OAuthGetAccessToken', oauth_version='1.0', oauth_verifier=None)
Upgrades the authorized request token to an access token and returns it

+Args:
+  authorized_request_token: gdata.auth.OAuthToken (optional) OAuth request
+      token. If not specified, then the current token will be used if it is
+      of type <gdata.auth.OAuthToken>, else it is found by looking in the
+      token_store by looking for a token for the current scope.
+  request_url: Access token URL. The default is
+      'https://www.google.com/accounts/OAuthGetAccessToken'.
+  oauth_version: str (default='1.0') oauth_version parameter. All other
+      'oauth_' parameters are added by default. This parameter too, is
+      added by default but here you can override it's value.
+  oauth_verifier: str (optional) If present, it is assumed that the client
+    will use the OAuth v1.0a protocol which includes passing the
+    oauth_verifier (as returned by the SP) in the access token step.

+Returns:
+  Access token
+      
+Raises:
+  NonOAuthToken if the user's authorized request token is not an OAuth
+  token or if an authorized request token was not available.
+  TokenUpgradeFailed if the server responded to the request with an 
+  error.
+ +
UpgradeToSessionToken(self, token=None)
Upgrades a single use AuthSub token to a session token.

+Args:
+  token: A gdata.auth.AuthSubToken or gdata.auth.SecureAuthSubToken
+         (optional) which is good for a single use but can be upgraded
+         to a session token. If no token is passed in, the token
+         is found by looking in the token_store by looking for a token
+         for the current scope.

+Raises:
+  NonAuthSubToken if the user's auth token is not an AuthSub token
+  TokenUpgradeFailed if the server responded to the request with an 
+  error.
+ +
upgrade_to_session_token(self, token)
Upgrades a single use AuthSub token to a session token.

+Args:
+  token: A gdata.auth.AuthSubToken or gdata.auth.SecureAuthSubToken
+         which is good for a single use but can be upgraded to a
+         session token.

+Returns:
+  The upgraded token as a gdata.auth.AuthSubToken object.

+Raises:
+  TokenUpgradeFailed if the server responded to the request with an 
+  error.
+ +
+Data descriptors inherited from gdata.service.GDataService:
+
captcha_token
+
Get the captcha token for a login request.
+
+
captcha_url
+
Get the captcha URL for a login request.
+
+
source
+
The source is the name of the application making the request. 
+It should be in the form company_id-app_name-app_version
+
+
+Data and other attributes inherited from gdata.service.GDataService:
+
auth_token = None
+ +
handler = None
+ +
tokens = None
+ +
+Methods inherited from atom.service.AtomService:
+
UseBasicAuth(self, username, password, for_proxy=False)
Sets an Authenticaiton: Basic HTTP header containing plaintext.

+Deprecated, use use_basic_auth instead.

+The username and password are base64 encoded and added to an HTTP header
+which will be included in each request. Note that your username and 
+password are sent in plaintext.

+Args:
+  username: str
+  password: str
+ +
request(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
+ +
use_basic_auth(self, username, password, scopes=None)
+ +
+Data descriptors inherited from atom.service.AtomService:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
debug
+
If True, HTTP debug information is printed.
+
+
override_token
+
+
+Data and other attributes inherited from atom.service.AtomService:
+
auto_set_current_token = True
+ +
auto_store_tokens = True
+ +
current_token = None
+ +
port = 80
+ +
ssl = False
+ +

+ + + + + +
 
+Data
       __author__ = 'api.eric@google.com (Eric Bidelman)'

+ + + + + +
 
+Author
       api.eric@google.com (Eric Bidelman)
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.html python-gdata-2.0.8/pydocs/gdata.html --- python-gdata-1.2.4/pydocs/gdata.html 2008-12-04 00:16:02.000000000 +0000 +++ python-gdata-2.0.8/pydocs/gdata.html 2010-02-26 23:16:48.000000000 +0000 @@ -20,24 +20,44 @@

       
Crypto (package)
+acl (package)
alt (package)
+analytics (package)
apps (package)
auth
base (package)
blogger (package)
-
calendar (package)
-client
+books (package)
+calendar (package)
+calendar_resource (package)
+
client
codesearch (package)
contacts (package)
+core
+data
docs (package)
+dublincore (package)
exif (package)
+experimental_oauth
+finance (package)
+gauth
geo (package)
+health (package)
+maps (package)
media (package)
+notebook (package)
oauth (package)
+opensearch (package)
photos (package)
+projecthosting (package)
+sample_util
service
+
sites (package)
spreadsheet (package)
-
test_data
+spreadsheets (package)
+test_config
+test_config_template
+test_data
tlslite (package)
urlfetch
webmastertools (package)
@@ -264,7 +284,7 @@  
 
If the entry is not a BatchEntry, it is converted to a BatchEntry so
-that the batch specific members will be present. 
+that the batch specific members will be present.
 
The id_url_string can be used in place of an entry if the batch operation
applies to a URL. For example query and delete operations require just
@@ -272,7 +292,7 @@ id_url_string is sent instead of an entry, a BatchEntry is created and
added to the feed.
 
-This method also assigns the desired batch id to the entry so that it 
+This method also assigns the desired batch id to the entry so that it
can be referenced in the server's response. If the batch_id_string is
None, this method will assign a batch_id to be the index at which this
entry will be in the feed's entry list.
@@ -280,7 +300,7 @@ Args:
  entry: BatchEntry, atom.Entry, or another Entry flavor (optional) The
      entry which will be sent to the server as part of the batch request.
-      The item must have a valid atom id so that the server knows which 
+      The item must have a valid atom id so that the server knows which
      entry this request references.
  id_url_string: str (optional) The URL of the entry to be acted on. You
      can find this URL in the text member of the atom id for an entry.
@@ -305,17 +325,17 @@
AddDelete(self, url_string=None, entry=None, batch_id_string=None)
Adds a delete request to the batch request feed.
 
This method takes either the url_string which is the atom id of the item
-to be deleted, or the entry itself. The atom id of the entry must be 
+to be deleted, or the entry itself. The atom id of the entry must be
present so that the server knows which entry should be deleted.
 
Args:
  url_string: str (optional) The URL of the entry to be deleted. You can
-     find this URL in the text member of the atom id for an entry. 
+     find this URL in the text member of the atom id for an entry.
  entry: BatchEntry (optional) The entry to be deleted.
  batch_id_string: str (optional)
 
Raises:
-  MissingRequiredParameters: Raised if neither a url_string nor an entry 
+  MissingRequiredParameters: Raised if neither a url_string nor an entry
      are provided in the request.
AddInsert(self, entry, batch_id_string=None)
Add an insert request to the operations in this batch request feed.
@@ -334,7 +354,7 @@
AddQuery(self, url_string=None, entry=None, batch_id_string=None)
Adds a query request to the batch request feed.
 
-This method takes either the url_string which is the query URL 
+This method takes either the url_string which is the query URL
whose results will be added to the result feed. The query URL will
be encapsulated in a BatchEntry, and you may pass in the BatchEntry
with a query URL instead of sending a url_string.
@@ -350,7 +370,7 @@
AddUpdate(self, entry, batch_id_string=None)
Add an update request to the list of batch operations in this feed.
 
Sets the operation type of the entry to insert if it is not already set
-and assigns the desired batch id to the entry so that it can be 
+and assigns the desired batch id to the entry so that it can be
referenced in the server's response.
 
Args:
@@ -459,7 +479,7 @@ Methods inherited from atom.AtomBase:
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__init__(self, extension_elements=None, extension_attributes=None, text=None)
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
__str__(self)
@@ -601,7 +621,7 @@
    The batch:status element present in a batch response entry.
 
-A status element contains the code (HTTP response code) and 
+A status element contains the code (HTTP response code) and
reason as elements. In a single request these fields would
be part of the HTTP response, but in a batch request each
Entry operation has a corresponding Entry in the response
@@ -726,7 +746,7 @@
Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
@@ -750,6 +770,8 @@
__str__(...)
x.__str__() <==> str(x)
+
__unicode__(...)
+
Data descriptors inherited from exceptions.BaseException:
__dict__
@@ -757,7 +779,6 @@
args
message
-
exception message

@@ -769,7 +790,7 @@
The Google Data extendedProperty element.
 
Used to store arbitrary key-value information specific to your
-application. The value can either be a text string stored as an XML 
+application. The value can either be a text string stored as an XML
attribute (.value), or an XML node (XmlBlob) as a child element.
 
This element is used in the Google Calendar data API and the Google
@@ -921,29 +942,7 @@
Methods inherited from atom.Entry:
-
__init__(self, author=None, category=None, content=None, contributor=None, atom_id=None, link=None, published=None, rights=None, source=None, summary=None, control=None, title=None, updated=None, extension_elements=None, extension_attributes=None, text=None)
Constructor for atom:entry

-Args:
-  author: list A list of Author instances which belong to this class.
-  category: list A list of Category instances
-  content: Content The entry's Content
-  contributor: list A list on Contributor instances
-  id: Id The entry's Id element
-  link: list A list of Link instances
-  published: Published The entry's Published element
-  rights: Rights The entry's Rights element
-  source: Source the entry's source element
-  summary: Summary the entry's summary element
-  title: Title the entry's title element
-  updated: Updated the entry's updated element
-  control: The entry's app:control element which can be used to mark an 
-      entry as a draft which should not be publicly viewable.
-  text: String The text contents of the element. This is the contents
-      of the Entry's XML text node. (Example: <foo>This is the text</foo>)
-  extension_elements: list A list of ExtensionElement instances which are
-      children of this element.
-  extension_attributes: dict A dictionary of strings which are the values
-      for additional XML attributes of this element.
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.

Methods inherited from atom.AtomBase:
@@ -1044,23 +1043,23 @@       class.
  category: list (optional) A list of Category instances
  contributor: list (optional) A list on Contributor instances
-  generator: Generator (optional) 
-  icon: Icon (optional) 
+  generator: Generator (optional)
+  icon: Icon (optional)
  id: Id (optional) The entry's Id element
  link: list (optional) A list of Link instances
-  logo: Logo (optional) 
+  logo: Logo (optional)
  rights: Rights (optional) The entry's Rights element
  subtitle: Subtitle (optional) The entry's subtitle element
  title: Title (optional) the entry's title element
  updated: Updated (optional) the entry's updated element
-  entry: list (optional) A list of the Entry instances contained in the 
+  entry: list (optional) A list of the Entry instances contained in the
      feed.
-  text: String (optional) The text contents of the element. This is the 
-      contents of the Entry's XML text node. 
+  text: String (optional) The text contents of the element. This is the
+      contents of the Entry's XML text node.
      (Example: <foo>This is the text</foo>)
  extension_elements: list (optional) A list of ExtensionElement instances
      which are children of this element.
-  extension_attributes: dict (optional) A dictionary of strings which are 
+  extension_attributes: dict (optional) A dictionary of strings which are
      the values for additional XML attributes of this element.

@@ -1322,7 +1321,7 @@
Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
@@ -1346,6 +1345,8 @@
__str__(...)
x.__str__() <==> str(x)
+
__unicode__(...)
+
Data descriptors inherited from exceptions.BaseException:
__dict__
@@ -1353,7 +1354,6 @@
args
message
-
exception message

@@ -1496,12 +1496,12 @@ GDATA_TEMPLATE = '{http://schemas.google.com/g/2005}%s'
OPENSEARCH_NAMESPACE = 'http://a9.com/-/spec/opensearchrss/1.0/'
OPENSEARCH_TEMPLATE = '{http://a9.com/-/spec/opensearchrss/1.0/}%s'
-__author__ = 'api.jscudder (Jeffrey Scudder)'

+__author__ = 'j.s@google.com (Jeffrey Scudder)'

-
 
Author
       api.jscudder (Jeffrey Scudder)
+j.s@google.com (Jeffrey Scudder) \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.maps.client.html python-gdata-2.0.8/pydocs/gdata.maps.client.html --- python-gdata-1.2.4/pydocs/gdata.maps.client.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.maps.client.html 2010-02-26 23:16:48.000000000 +0000 @@ -0,0 +1,615 @@ + + +Python: module gdata.maps.client + + + + +
 
+ 
gdata.maps.client
index
/usr/local/svn/gdata-python-client/src/gdata/maps/client.py
+

Contains a client to communicate with the Maps Data servers.

+For documentation on the Maps Data API, see:
+http://code.google.com/apis/maps/documentation/mapsdata/

+

+ + + + + +
 
+Modules
       
atom
+
gdata
+

+ + + + + +
 
+Classes
       
+
gdata.client.GDClient(atom.client.AtomPubClient) +
+
+
MapsClient +
+
+
+

+ + + + + + + +
 
+class MapsClient(gdata.client.GDClient)
   Maps Data API GData client.
 
 
Method resolution order:
+
MapsClient
+
gdata.client.GDClient
+
atom.client.AtomPubClient
+
__builtin__.object
+
+
+Methods defined here:
+
AddFeature = add_feature(self, map_id, title, content, auth_token=None, title_type='text', content_type='application/vnd.google-earth.kml+xml', **kwargs)
+ +
CreateMap = create_map(self, title, summary=None, unlisted=False, auth_token=None, title_type='text', summary_type='text', **kwargs)
+ +
Delete = delete(self, entry_or_uri, auth_token=None, **kwargs)
+ +
GetFeatures = get_features(self, map_id, user_id='default', auth_token=None, desired_class=<class 'gdata.maps.data.FeatureFeed'>, query=None, **kwargs)
+ +
GetMaps = get_maps(self, user_id='default', auth_token=None, desired_class=<class 'gdata.maps.data.MapFeed'>, **kwargs)
+ +
Update = update(self, entry, auth_token=None, **kwargs)
+ +
add_feature(self, map_id, title, content, auth_token=None, title_type='text', content_type='application/vnd.google-earth.kml+xml', **kwargs)
Adds a new feature to the given map.

+Args:
+  map_id: A string representing the ID of the map to which the new feature
+      should be added.
+  title: A string representing the name/title of the new feature.
+  content: A KML string or gdata.maps.data.KmlContent object representing
+      the new feature's KML contents, including its description.

+Returns:
+  A gdata.maps.data.Feature.
+ +
create_map(self, title, summary=None, unlisted=False, auth_token=None, title_type='text', summary_type='text', **kwargs)
Creates a new map and posts it to the Maps Data servers.

+Args:
+  title: A string representing the title of the new map.
+  summary: An optional string representing the new map's description.
+  unlisted: An optional boolean identifying whether the map should be
+      unlisted (True) or public (False). Default False.

+Returns:
+  A gdata.maps.data.Map.
+ +
delete(self, entry_or_uri, auth_token=None, **kwargs)
Deletes the given entry or entry URI server-side.

+Args:
+  entry_or_uri: A gdata.maps.data.Map, gdata.maps.data.Feature, or URI
+      string representing the entry to delete.
+ +
get_features(self, map_id, user_id='default', auth_token=None, desired_class=<class 'gdata.maps.data.FeatureFeed'>, query=None, **kwargs)
Retrieves a Feature feed for the given map ID/user ID combination.

+Args:
+  map_id: A string representing the ID of the map whose features should be
+      retrieved.
+  user_id: An optional string representing the user ID; should be 'default'.

+Returns:
+  A gdata.maps.data.FeatureFeed.
+ +
get_maps(self, user_id='default', auth_token=None, desired_class=<class 'gdata.maps.data.MapFeed'>, **kwargs)
Retrieves a Map feed for the given user ID.

+Args:
+  user_id: An optional string representing the user ID; should be 'default'.

+Returns:
+  A gdata.maps.data.MapFeed.
+ +
update(self, entry, auth_token=None, **kwargs)
Sends changes to a given map or feature entry to the Maps Data servers.

+Args:
+  entry: A gdata.maps.data.Map or gdata.maps.data.Feature to be updated
+      server-side.
+ +
+Data and other attributes defined here:
+
api_version = '2'
+ +
auth_scopes = ('http://maps.google.com/maps/feeds/',)
+ +
auth_service = 'local'
+ +
+Methods inherited from gdata.client.GDClient:
+
ClientLogin = client_login(self, email, password, source, service=None, account_type='HOSTED_OR_GOOGLE', auth_url=<atom.http_core.Uri object at 0xb6fdd0>, captcha_token=None, captcha_response=None)
Performs an auth request using the user's email address and password.

+In order to modify user specific data and read user private data, your
+application must be authorized by the user. One way to demonstrage
+authorization is by including a Client Login token in the Authorization
+HTTP header of all requests. This method requests the Client Login token
+by sending the user's email address, password, the name of the
+application, and the service code for the service which will be accessed
+by the application. If the username and password are correct, the server
+will respond with the client login code and a new ClientLoginToken
+object will be set in the client's auth_token member. With the auth_token
+set, future requests from this client will include the Client Login
+token.

+For a list of service names, see 
+http://code.google.com/apis/gdata/faq.html#clientlogin
+For more information on Client Login, see:
+http://code.google.com/apis/accounts/docs/AuthForInstalledApps.html

+Args:
+  email: str The user's email address or username.
+  password: str The password for the user's account.
+  source: str The name of your application. This can be anything you
+          like but should should give some indication of which app is
+          making the request.
+  service: str The service code for the service you would like to access.
+           For example, 'cp' for contacts, 'cl' for calendar. For a full
+           list see
+           http://code.google.com/apis/gdata/faq.html#clientlogin
+           If you are using a subclass of the gdata.client.GDClient, the
+           service will usually be filled in for you so you do not need
+           to specify it. For example see BloggerClient,
+           SpreadsheetsClient, etc.
+  account_type: str (optional) The type of account which is being
+                authenticated. This can be either 'GOOGLE' for a Google
+                Account, 'HOSTED' for a Google Apps Account, or the
+                default 'HOSTED_OR_GOOGLE' which will select the Google
+                Apps Account if the same email address is used for both
+                a Google Account and a Google Apps Account.
+  auth_url: str (optional) The URL to which the login request should be
+            sent.
+  captcha_token: str (optional) If a previous login attempt was reponded
+                 to with a CAPTCHA challenge, this is the token which
+                 identifies the challenge (from the CAPTCHA's URL).
+  captcha_response: str (optional) If a previous login attempt was
+                    reponded to with a CAPTCHA challenge, this is the
+                    response text which was contained in the challenge.

+  Returns:
+    None

+  Raises:
+    A RequestError or one of its suclasses: BadAuthentication,
+    BadAuthenticationServiceURL, ClientLoginFailed,
+    ClientLoginTokenMissing, or CaptchaChallenge
+ +
GetAccessToken = get_access_token(self, request_token, url='https://www.google.com/accounts/OAuthGetAccessToken')
Exchanges an authorized OAuth request token for an access token.

+Contacts the Google OAuth server to upgrade a previously authorized
+request token. Once the request token is upgraded to an access token,
+the access token may be used to access the user's data.

+For more details, see the Google Accounts OAuth documentation:
+http://code.google.com/apis/accounts/docs/OAuth.html#AccessToken

+Args:
+  request_token: An OAuth token which has been authorized by the user.
+  url: (optional) The URL to which the upgrade request should be sent.
+      Defaults to: https://www.google.com/accounts/OAuthAuthorizeToken
+ +
GetEntry = get_entry(self, uri, auth_token=None, converter=None, desired_class=<class 'gdata.data.GDEntry'>, etag=None, **kwargs)
+ +
GetFeed = get_feed(self, uri, auth_token=None, converter=None, desired_class=<class 'gdata.data.GDFeed'>, **kwargs)
+ +
GetNext = get_next(self, feed, auth_token=None, converter=None, desired_class=None, **kwargs)
Fetches the next set of results from the feed.

+When requesting a feed, the number of entries returned is capped at a
+service specific default limit (often 25 entries). You can specify your
+own entry-count cap using the max-results URL query parameter. If there
+are more results than could fit under max-results, the feed will contain
+a next link. This method performs a GET against this next results URL.

+Returns:
+  A new feed object containing the next set of entries in this feed.
+ +
GetOAuthToken = get_oauth_token(self, scopes, next, consumer_key, consumer_secret=None, rsa_private_key=None, url='https://www.google.com/accounts/OAuthGetRequestToken')
Obtains an OAuth request token to allow the user to authorize this app.

+Once this client has a request token, the user can authorize the request
+token by visiting the authorization URL in their browser. After being
+redirected back to this app at the 'next' URL, this app can then exchange
+the authorized request token for an access token.

+For more information see the documentation on Google Accounts with OAuth:
+http://code.google.com/apis/accounts/docs/OAuth.html#AuthProcess

+Args:
+  scopes: list of strings or atom.http_core.Uri objects which specify the
+      URL prefixes which this app will be accessing. For example, to access
+      the Google Calendar API, you would want to use scopes:
+      ['https://www.google.com/calendar/feeds/',
+       'http://www.google.com/calendar/feeds/']
+  next: str or atom.http_core.Uri object, The URL which the user's browser
+      should be sent to after they authorize access to their data. This
+      should be a URL in your application which will read the token
+      information from the URL and upgrade the request token to an access
+      token.
+  consumer_key: str This is the identifier for this application which you
+      should have received when you registered your application with Google
+      to use OAuth.
+  consumer_secret: str (optional) The shared secret between your app and
+      Google which provides evidence that this request is coming from you
+      application and not another app. If present, this libraries assumes
+      you want to use an HMAC signature to verify requests. Keep this data
+      a secret.
+  rsa_private_key: str (optional) The RSA private key which is used to
+      generate a digital signature which is checked by Google's server. If
+      present, this library assumes that you want to use an RSA signature
+      to verify requests. Keep this data a secret.
+  url: The URL to which a request for a token should be made. The default
+      is Google's OAuth request token provider.
+ +
ModifyRequest = modify_request(self, http_request)
Adds or changes request before making the HTTP request.

+This client will add the API version if it is specified.
+Subclasses may override this method to add their own request
+modifications before the request is made.
+ +
Post = post(self, entry, uri, auth_token=None, converter=None, desired_class=None, **kwargs)
+ +
Request = request(self, method=None, uri=None, auth_token=None, http_request=None, converter=None, desired_class=None, redirects_remaining=4, **kwargs)
Make an HTTP request to the server.

+See also documentation for atom.client.AtomPubClient.request.

+If a 302 redirect is sent from the server to the client, this client
+assumes that the redirect is in the form used by the Google Calendar API.
+The same request URI and method will be used as in the original request,
+but a gsessionid URL parameter will be added to the request URI with
+the value provided in the server's 302 redirect response. If the 302
+redirect is not in the format specified by the Google Calendar API, a
+RedirectError will be raised containing the body of the server's
+response.

+The method calls the client's modify_request method to make any changes
+required by the client before the request is made. For example, a
+version 2 client could add a GData-Version: 2 header to the request in
+its modify_request method.

+Args:
+  method: str The HTTP verb for this request, usually 'GET', 'POST',
+          'PUT', or 'DELETE'
+  uri: atom.http_core.Uri, str, or unicode The URL being requested.
+  auth_token: An object which sets the Authorization HTTP header in its
+              modify_request method. Recommended classes include
+              gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken
+              among others.
+  http_request: (optional) atom.http_core.HttpRequest
+  converter: function which takes the body of the response as it's only
+             argument and returns the desired object.
+  desired_class: class descended from atom.core.XmlElement to which a
+                 successful response should be converted. If there is no
+                 converter function specified (converter=None) then the
+                 desired_class will be used in calling the
+                 atom.core.parse function. If neither
+                 the desired_class nor the converter is specified, an
+                 HTTP reponse object will be returned.
+  redirects_remaining: (optional) int, if this number is 0 and the
+                       server sends a 302 redirect, the request method
+                       will raise an exception. This parameter is used in
+                       recursive request calls to avoid an infinite loop.

+Any additional arguments are passed through to
+atom.client.AtomPubClient.request.

+Returns:
+  An HTTP response object (see atom.http_core.HttpResponse for a
+  description of the object's interface) if no converter was
+  specified and no desired_class was specified. If a converter function
+  was provided, the results of calling the converter are returned. If no
+  converter was specified but a desired_class was provided, the response
+  body will be converted to the class using
+  atom.core.parse.
+ +
RequestClientLoginToken = request_client_login_token(self, email, password, source, service=None, account_type='HOSTED_OR_GOOGLE', auth_url=<atom.http_core.Uri object at 0xb6fd90>, captcha_token=None, captcha_response=None)
+ +
RevokeToken = revoke_token(self, token=None, url=<atom.http_core.Uri object at 0xb6fe50>)
Requests that the token be invalidated.

+This method can be used for both AuthSub and OAuth tokens (to invalidate
+a ClientLogin token, the user must change their password).

+Returns:
+  True if the server responded with a 200.

+Raises:
+  A RequestError if the server responds with a non-200 status.
+ +
UpgradeToken = upgrade_token(self, token=None, url=<atom.http_core.Uri object at 0xb6fe10>)
Asks the Google auth server for a multi-use AuthSub token.

+For details on AuthSub, see:
+http://code.google.com/apis/accounts/docs/AuthSub.html

+Args:
+  token: gdata.gauth.AuthSubToken or gdata.gauth.SecureAuthSubToken
+      (optional) If no token is passed in, the client's auth_token member
+      is used to request the new token. The token object will be modified
+      to contain the new session token string.
+  url: str or atom.http_core.Uri (optional) The URL to which the token
+      upgrade request should be sent. Defaults to:
+      https://www.google.com/accounts/AuthSubSessionToken

+Returns:
+  The upgraded gdata.gauth.AuthSubToken object.
+ +
client_login(self, email, password, source, service=None, account_type='HOSTED_OR_GOOGLE', auth_url=<atom.http_core.Uri object at 0xb6fdd0>, captcha_token=None, captcha_response=None)
Performs an auth request using the user's email address and password.

+In order to modify user specific data and read user private data, your
+application must be authorized by the user. One way to demonstrage
+authorization is by including a Client Login token in the Authorization
+HTTP header of all requests. This method requests the Client Login token
+by sending the user's email address, password, the name of the
+application, and the service code for the service which will be accessed
+by the application. If the username and password are correct, the server
+will respond with the client login code and a new ClientLoginToken
+object will be set in the client's auth_token member. With the auth_token
+set, future requests from this client will include the Client Login
+token.

+For a list of service names, see 
+http://code.google.com/apis/gdata/faq.html#clientlogin
+For more information on Client Login, see:
+http://code.google.com/apis/accounts/docs/AuthForInstalledApps.html

+Args:
+  email: str The user's email address or username.
+  password: str The password for the user's account.
+  source: str The name of your application. This can be anything you
+          like but should should give some indication of which app is
+          making the request.
+  service: str The service code for the service you would like to access.
+           For example, 'cp' for contacts, 'cl' for calendar. For a full
+           list see
+           http://code.google.com/apis/gdata/faq.html#clientlogin
+           If you are using a subclass of the gdata.client.GDClient, the
+           service will usually be filled in for you so you do not need
+           to specify it. For example see BloggerClient,
+           SpreadsheetsClient, etc.
+  account_type: str (optional) The type of account which is being
+                authenticated. This can be either 'GOOGLE' for a Google
+                Account, 'HOSTED' for a Google Apps Account, or the
+                default 'HOSTED_OR_GOOGLE' which will select the Google
+                Apps Account if the same email address is used for both
+                a Google Account and a Google Apps Account.
+  auth_url: str (optional) The URL to which the login request should be
+            sent.
+  captcha_token: str (optional) If a previous login attempt was reponded
+                 to with a CAPTCHA challenge, this is the token which
+                 identifies the challenge (from the CAPTCHA's URL).
+  captcha_response: str (optional) If a previous login attempt was
+                    reponded to with a CAPTCHA challenge, this is the
+                    response text which was contained in the challenge.

+  Returns:
+    None

+  Raises:
+    A RequestError or one of its suclasses: BadAuthentication,
+    BadAuthenticationServiceURL, ClientLoginFailed,
+    ClientLoginTokenMissing, or CaptchaChallenge
+ +
get_access_token(self, request_token, url='https://www.google.com/accounts/OAuthGetAccessToken')
Exchanges an authorized OAuth request token for an access token.

+Contacts the Google OAuth server to upgrade a previously authorized
+request token. Once the request token is upgraded to an access token,
+the access token may be used to access the user's data.

+For more details, see the Google Accounts OAuth documentation:
+http://code.google.com/apis/accounts/docs/OAuth.html#AccessToken

+Args:
+  request_token: An OAuth token which has been authorized by the user.
+  url: (optional) The URL to which the upgrade request should be sent.
+      Defaults to: https://www.google.com/accounts/OAuthAuthorizeToken
+ +
get_entry(self, uri, auth_token=None, converter=None, desired_class=<class 'gdata.data.GDEntry'>, etag=None, **kwargs)
+ +
get_feed(self, uri, auth_token=None, converter=None, desired_class=<class 'gdata.data.GDFeed'>, **kwargs)
+ +
get_next(self, feed, auth_token=None, converter=None, desired_class=None, **kwargs)
Fetches the next set of results from the feed.

+When requesting a feed, the number of entries returned is capped at a
+service specific default limit (often 25 entries). You can specify your
+own entry-count cap using the max-results URL query parameter. If there
+are more results than could fit under max-results, the feed will contain
+a next link. This method performs a GET against this next results URL.

+Returns:
+  A new feed object containing the next set of entries in this feed.
+ +
get_oauth_token(self, scopes, next, consumer_key, consumer_secret=None, rsa_private_key=None, url='https://www.google.com/accounts/OAuthGetRequestToken')
Obtains an OAuth request token to allow the user to authorize this app.

+Once this client has a request token, the user can authorize the request
+token by visiting the authorization URL in their browser. After being
+redirected back to this app at the 'next' URL, this app can then exchange
+the authorized request token for an access token.

+For more information see the documentation on Google Accounts with OAuth:
+http://code.google.com/apis/accounts/docs/OAuth.html#AuthProcess

+Args:
+  scopes: list of strings or atom.http_core.Uri objects which specify the
+      URL prefixes which this app will be accessing. For example, to access
+      the Google Calendar API, you would want to use scopes:
+      ['https://www.google.com/calendar/feeds/',
+       'http://www.google.com/calendar/feeds/']
+  next: str or atom.http_core.Uri object, The URL which the user's browser
+      should be sent to after they authorize access to their data. This
+      should be a URL in your application which will read the token
+      information from the URL and upgrade the request token to an access
+      token.
+  consumer_key: str This is the identifier for this application which you
+      should have received when you registered your application with Google
+      to use OAuth.
+  consumer_secret: str (optional) The shared secret between your app and
+      Google which provides evidence that this request is coming from you
+      application and not another app. If present, this libraries assumes
+      you want to use an HMAC signature to verify requests. Keep this data
+      a secret.
+  rsa_private_key: str (optional) The RSA private key which is used to
+      generate a digital signature which is checked by Google's server. If
+      present, this library assumes that you want to use an RSA signature
+      to verify requests. Keep this data a secret.
+  url: The URL to which a request for a token should be made. The default
+      is Google's OAuth request token provider.
+ +
modify_request(self, http_request)
Adds or changes request before making the HTTP request.

+This client will add the API version if it is specified.
+Subclasses may override this method to add their own request
+modifications before the request is made.
+ +
post(self, entry, uri, auth_token=None, converter=None, desired_class=None, **kwargs)
+ +
request(self, method=None, uri=None, auth_token=None, http_request=None, converter=None, desired_class=None, redirects_remaining=4, **kwargs)
Make an HTTP request to the server.

+See also documentation for atom.client.AtomPubClient.request.

+If a 302 redirect is sent from the server to the client, this client
+assumes that the redirect is in the form used by the Google Calendar API.
+The same request URI and method will be used as in the original request,
+but a gsessionid URL parameter will be added to the request URI with
+the value provided in the server's 302 redirect response. If the 302
+redirect is not in the format specified by the Google Calendar API, a
+RedirectError will be raised containing the body of the server's
+response.

+The method calls the client's modify_request method to make any changes
+required by the client before the request is made. For example, a
+version 2 client could add a GData-Version: 2 header to the request in
+its modify_request method.

+Args:
+  method: str The HTTP verb for this request, usually 'GET', 'POST',
+          'PUT', or 'DELETE'
+  uri: atom.http_core.Uri, str, or unicode The URL being requested.
+  auth_token: An object which sets the Authorization HTTP header in its
+              modify_request method. Recommended classes include
+              gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken
+              among others.
+  http_request: (optional) atom.http_core.HttpRequest
+  converter: function which takes the body of the response as it's only
+             argument and returns the desired object.
+  desired_class: class descended from atom.core.XmlElement to which a
+                 successful response should be converted. If there is no
+                 converter function specified (converter=None) then the
+                 desired_class will be used in calling the
+                 atom.core.parse function. If neither
+                 the desired_class nor the converter is specified, an
+                 HTTP reponse object will be returned.
+  redirects_remaining: (optional) int, if this number is 0 and the
+                       server sends a 302 redirect, the request method
+                       will raise an exception. This parameter is used in
+                       recursive request calls to avoid an infinite loop.

+Any additional arguments are passed through to
+atom.client.AtomPubClient.request.

+Returns:
+  An HTTP response object (see atom.http_core.HttpResponse for a
+  description of the object's interface) if no converter was
+  specified and no desired_class was specified. If a converter function
+  was provided, the results of calling the converter are returned. If no
+  converter was specified but a desired_class was provided, the response
+  body will be converted to the class using
+  atom.core.parse.
+ +
request_client_login_token(self, email, password, source, service=None, account_type='HOSTED_OR_GOOGLE', auth_url=<atom.http_core.Uri object at 0xb6fd90>, captcha_token=None, captcha_response=None)
+ +
revoke_token(self, token=None, url=<atom.http_core.Uri object at 0xb6fe50>)
Requests that the token be invalidated.

+This method can be used for both AuthSub and OAuth tokens (to invalidate
+a ClientLogin token, the user must change their password).

+Returns:
+  True if the server responded with a 200.

+Raises:
+  A RequestError if the server responds with a non-200 status.
+ +
upgrade_token(self, token=None, url=<atom.http_core.Uri object at 0xb6fe10>)
Asks the Google auth server for a multi-use AuthSub token.

+For details on AuthSub, see:
+http://code.google.com/apis/accounts/docs/AuthSub.html

+Args:
+  token: gdata.gauth.AuthSubToken or gdata.gauth.SecureAuthSubToken
+      (optional) If no token is passed in, the client's auth_token member
+      is used to request the new token. The token object will be modified
+      to contain the new session token string.
+  url: str or atom.http_core.Uri (optional) The URL to which the token
+      upgrade request should be sent. Defaults to:
+      https://www.google.com/accounts/AuthSubSessionToken

+Returns:
+  The upgraded gdata.gauth.AuthSubToken object.
+ +
+Methods inherited from atom.client.AtomPubClient:
+
Get = get(self, uri=None, auth_token=None, http_request=None, **kwargs)
Performs a request using the GET method, returns an HTTP response.
+ +
Put = put(self, uri=None, data=None, auth_token=None, http_request=None, **kwargs)
Sends data using the PUT method, returns an HTTP response.
+ +
__init__(self, http_client=None, host=None, auth_token=None, source=None, **kwargs)
Creates a new AtomPubClient instance.

+Args:
+  source: The name of your application.
+  http_client: An object capable of performing HTTP requests through a
+               request method. This object is used to perform the request
+               when the AtomPubClient's request method is called. Used to
+               allow HTTP requests to be directed to a mock server, or use
+               an alternate library instead of the default of httplib to
+               make HTTP requests.
+  host: str The default host name to use if a host is not specified in the
+        requested URI.
+  auth_token: An object which sets the HTTP Authorization header when its
+              modify_request method is called.
+ +
get(self, uri=None, auth_token=None, http_request=None, **kwargs)
Performs a request using the GET method, returns an HTTP response.
+ +
put(self, uri=None, data=None, auth_token=None, http_request=None, **kwargs)
Sends data using the PUT method, returns an HTTP response.
+ +
+Data descriptors inherited from atom.client.AtomPubClient:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Data and other attributes inherited from atom.client.AtomPubClient:
+
auth_token = None
+ +
host = None
+ +
ssl = False
+ +

+ + + + + +
 
+Data
       KML_CONTENT_TYPE = 'application/vnd.google-earth.kml+xml'
+MAP_FEATURE_URL_TEMPLATE = 'http://maps.google.com/maps/feeds/features/%s/%s/full'
+MAP_URL_TEMPLATE = 'http://maps.google.com/maps/feeds/maps/%s/full'
+__author__ = 'api.roman.public@google.com (Roman Nurik)'

+ + + + + +
 
+Author
       api.roman.public@google.com (Roman Nurik)
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.maps.data.html python-gdata-2.0.8/pydocs/gdata.maps.data.html --- python-gdata-1.2.4/pydocs/gdata.maps.data.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.maps.data.html 2010-02-26 23:16:48.000000000 +0000 @@ -0,0 +1,1930 @@ + + +Python: module gdata.maps.data + + + + +
 
+ 
gdata.maps.data
index
/usr/local/svn/gdata-python-client/src/gdata/maps/data.py
+

Data model classes for parsing and generating XML for the Maps Data API.

+

+ + + + + +
 
+Modules
       
atom
+
gdata
+
re
+

+ + + + + +
 
+Classes
       
+
atom.data.Content(atom.data.Text) +
+
+
KmlContent +
+
+
gdata.data.GDEntry(atom.data.Entry, gdata.data.LinkFinder) +
+
+
MapsDataEntry +
+
+
Feature +
Map +
+
+
+
+
gdata.data.GDFeed(atom.data.Feed, gdata.data.LinkFinder) +
+
+
FeatureFeed +
MapFeed +
+
+
+

+ + + + + + + +
 
+class Feature(MapsDataEntry)
   Represents a single feature in a map.
 
 
Method resolution order:
+
Feature
+
MapsDataEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Methods defined here:
+
GetFeatureId = get_feature_id(self)
+ +
get_feature_id(self)
Extracts the feature ID of this feature.
+ +
+Data and other attributes defined here:
+
atom_id_pattern = <_sre.SRE_Pattern object at 0xa7dc70>
+ +
content = <class 'gdata.maps.data.KmlContent'>
Represents an atom content element that encapsulates KML content.
+ +
+Methods inherited from MapsDataEntry:
+
GetMapId = get_map_id(self)
Extracts the map ID of this entry.
+ +
GetUserId = get_user_id(self)
Extracts the user ID of this entry.
+ +
get_map_id(self)
Extracts the map ID of this entry.
+ +
get_user_id(self)
Extracts the user ID of this entry.
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class FeatureFeed(gdata.data.GDFeed)
   Represents an atom feed of features.
 
 
Method resolution order:
+
FeatureFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.maps.data.Feature'>]
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class KmlContent(atom.data.Content)
   Represents an atom content element that encapsulates KML content.
 
 
Method resolution order:
+
KmlContent
+
atom.data.Content
+
atom.data.Text
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, **kwargs)
+ +
+Data descriptors defined here:
+
kml
+
+
+Data and other attributes inherited from atom.data.Content:
+
src = 'src'
+ +
+Data and other attributes inherited from atom.data.Text:
+
type = 'type'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Map(MapsDataEntry)
   Represents a map which belongs to the user.
 
 
Method resolution order:
+
Map
+
MapsDataEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
atom_id_pattern = <_sre.SRE_Pattern object at 0xa847e0>
+ +
+Methods inherited from MapsDataEntry:
+
GetMapId = get_map_id(self)
Extracts the map ID of this entry.
+ +
GetUserId = get_user_id(self)
Extracts the user ID of this entry.
+ +
get_map_id(self)
Extracts the map ID of this entry.
+ +
get_user_id(self)
Extracts the user ID of this entry.
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class MapFeed(gdata.data.GDFeed)
   Represents an atom feed of maps.
 
 
Method resolution order:
+
MapFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.maps.data.Map'>]
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class MapsDataEntry(gdata.data.GDEntry)
   Adds convenience methods inherited by all Maps Data entries.
 
 
Method resolution order:
+
MapsDataEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Methods defined here:
+
GetMapId = get_map_id(self)
+ +
GetUserId = get_user_id(self)
+ +
get_map_id(self)
Extracts the map ID of this entry.
+ +
get_user_id(self)
Extracts the user ID of this entry.
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + +
 
+Data
       FEATURE_ATOM_ID_PATTERN = <_sre.SRE_Pattern object at 0xa7dc70>
+KML_CONTENT_TYPE = 'application/vnd.google-earth.kml+xml'
+KML_NAMESPACE = 'http://www.opengis.net/kml/2.2'
+MAP_ATOM_ID_PATTERN = <_sre.SRE_Pattern object at 0xa847e0>
+__author__ = 'api.roman.public@google.com (Roman Nurik)'

+ + + + + +
 
+Author
       api.roman.public@google.com (Roman Nurik)
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.media.data.html python-gdata-2.0.8/pydocs/gdata.media.data.html --- python-gdata-1.2.4/pydocs/gdata.media.data.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.media.data.html 2009-12-17 20:58:53.000000000 +0000 @@ -0,0 +1,2249 @@ + + +Python: module gdata.media.data + + + + +
 
+ 
gdata.media.data
index
/usr/local/svn/gdata-python-client/src/gdata/media/data.py
+

Contains the data classes of the Yahoo! Media RSS Extension

+

+ + + + + +
 
+Modules
       
atom
+

+ + + + + +
 
+Classes
       
+
atom.core.XmlElement(__builtin__.object) +
+
+
MediaCategory +
MediaContent +
MediaCopyright +
MediaCredit +
MediaDescription +
MediaGroup +
MediaHash +
MediaKeywords +
MediaPlayer +
MediaRating +
MediaRestriction +
MediaText +
MediaThumbnail +
MediaTitle +
+
+
+

+ + + + + + + +
 
+class MediaCategory(atom.core.XmlElement)
   Describes a media category.
 
 
Method resolution order:
+
MediaCategory
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
label = 'label'
+ +
scheme = 'scheme'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class MediaContent(atom.core.XmlElement)
   Describes a media content.
 
 
Method resolution order:
+
MediaContent
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
bitrate = 'bitrate'
+ +
category = [<class 'gdata.media.data.MediaCategory'>]
+ +
channels = 'channels'
+ +
copyright = <class 'gdata.media.data.MediaCopyright'>
Describes a media copyright.
+ +
credit = [<class 'gdata.media.data.MediaCredit'>]
+ +
description = <class 'gdata.media.data.MediaDescription'>
Describes a media description.
+ +
duration = 'duration'
+ +
expression = 'expression'
+ +
file_size = 'fileSize'
+ +
framerate = 'framerate'
+ +
hash = <class 'gdata.media.data.MediaHash'>
Describes a media hash.
+ +
height = 'height'
+ +
is_default = 'isDefault'
+ +
keywords = <class 'gdata.media.data.MediaKeywords'>
Describes a media keywords.
+ +
language = 'language'
+ +
medium = 'medium'
+ +
player = <class 'gdata.media.data.MediaPlayer'>
Describes a media player.
+ +
rating = [<class 'gdata.media.data.MediaRating'>]
+ +
restriction = [<class 'gdata.media.data.MediaRestriction'>]
+ +
samplingrate = 'samplingrate'
+ +
text = [<class 'gdata.media.data.MediaText'>]
+ +
thumbnail = [<class 'gdata.media.data.MediaThumbnail'>]
+ +
title = <class 'gdata.media.data.MediaTitle'>
Describes a media title.
+ +
type = 'type'
+ +
url = 'url'
+ +
width = 'width'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+

+ + + + + + + +
 
+class MediaCopyright(atom.core.XmlElement)
   Describes a media copyright.
 
 
Method resolution order:
+
MediaCopyright
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
url = 'url'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class MediaCredit(atom.core.XmlElement)
   Describes a media credit.
 
 
Method resolution order:
+
MediaCredit
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
role = 'role'
+ +
scheme = 'scheme'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class MediaDescription(atom.core.XmlElement)
   Describes a media description.
 
 
Method resolution order:
+
MediaDescription
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
type = 'type'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class MediaGroup(atom.core.XmlElement)
   Describes a media group.
 
 
Method resolution order:
+
MediaGroup
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
category = [<class 'gdata.media.data.MediaCategory'>]
+ +
content = [<class 'gdata.media.data.MediaContent'>]
+ +
copyright = <class 'gdata.media.data.MediaCopyright'>
Describes a media copyright.
+ +
credit = [<class 'gdata.media.data.MediaCredit'>]
+ +
description = <class 'gdata.media.data.MediaDescription'>
Describes a media description.
+ +
hash = <class 'gdata.media.data.MediaHash'>
Describes a media hash.
+ +
keywords = <class 'gdata.media.data.MediaKeywords'>
Describes a media keywords.
+ +
player = <class 'gdata.media.data.MediaPlayer'>
Describes a media player.
+ +
rating = [<class 'gdata.media.data.MediaRating'>]
+ +
restriction = [<class 'gdata.media.data.MediaRestriction'>]
+ +
text = [<class 'gdata.media.data.MediaText'>]
+ +
thumbnail = [<class 'gdata.media.data.MediaThumbnail'>]
+ +
title = <class 'gdata.media.data.MediaTitle'>
Describes a media title.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+

+ + + + + + + +
 
+class MediaHash(atom.core.XmlElement)
   Describes a media hash.
 
 
Method resolution order:
+
MediaHash
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
algo = 'algo'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class MediaKeywords(atom.core.XmlElement)
   Describes a media keywords.
 
 
Method resolution order:
+
MediaKeywords
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class MediaPlayer(atom.core.XmlElement)
   Describes a media player.
 
 
Method resolution order:
+
MediaPlayer
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
height = 'height'
+ +
url = 'url'
+ +
width = 'width'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class MediaRating(atom.core.XmlElement)
   Describes a media rating.
 
 
Method resolution order:
+
MediaRating
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
scheme = 'scheme'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class MediaRestriction(atom.core.XmlElement)
   Describes a media restriction.
 
 
Method resolution order:
+
MediaRestriction
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
relationship = 'relationship'
+ +
type = 'type'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class MediaText(atom.core.XmlElement)
   Describes a media text.
 
 
Method resolution order:
+
MediaText
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
end = 'end'
+ +
lang = 'lang'
+ +
start = 'start'
+ +
type = 'type'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class MediaThumbnail(atom.core.XmlElement)
   Describes a media thumbnail.
 
 
Method resolution order:
+
MediaThumbnail
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
height = 'height'
+ +
time = 'time'
+ +
url = 'url'
+ +
width = 'width'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class MediaTitle(atom.core.XmlElement)
   Describes a media title.
 
 
Method resolution order:
+
MediaTitle
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
type = 'type'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + +
 
+Data
       MEDIA_TEMPLATE = '{http://search.yahoo.com/mrss//}%s'
+__author__ = 'j.s@google.com (Jeff Scudder)'

+ + + + + +
 
+Author
       j.s@google.com (Jeff Scudder)
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.media.html python-gdata-2.0.8/pydocs/gdata.media.html --- python-gdata-1.2.4/pydocs/gdata.media.html 2008-10-16 00:01:57.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.media.html 2009-11-25 01:04:14.000000000 +0000 @@ -39,7 +39,8 @@ Package Contents         -

+
data
+

@@ -275,7 +277,8 @@ for `base' projections, the description is in HTML.
 
Attributes:
-type: either `text' or `html'.
  +  type: either `text' or `html'. To set the type member in the contructor,
+        use the description_type parameter.
  +  type: Always set to plain. To set the type member in the constructor, use
+        the title_type parameter.
 
 
@@ -146,14 +147,15 @@   element that specifies the URL of the video itself.
 
Attributes:
-url: non-ambigous reference to online object
-width: width of the object frame, in pixels
-height: width of the object frame, in pixels
-medium: one of `image' or `video', allowing the api user to quickly
-  determine the object's type
-type: Internet media Type[1] (a.k.a. mime type) of the object -- a more
-  verbose way of determining the media type
-(optional) fileSize: the size of the object, in bytes
+  url: non-ambigous reference to online object
+  width: width of the object frame, in pixels
+  height: width of the object frame, in pixels
+  medium: one of `image' or `video', allowing the api user to quickly
+          determine the object's type
+  type: Internet media Type[1] (a.k.a. mime type) of the object -- a more
+        verbose way of determining the media type. To set the type member
+        in the contructor, use the content_type parameter.
+  (optional) fileSize: the size of the object, in bytes
 
[1]: http://en.wikipedia.org/wiki/Internet_media_type
 
 
 
Method resolution order:
Description
@@ -339,7 +342,7 @@ Methods inherited from atom.AtomBase:
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__init__(self, extension_elements=None, extension_attributes=None, text=None)
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
__str__(self)
@@ -606,7 +609,7 @@ Methods inherited from atom.AtomBase:
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__init__(self, extension_elements=None, extension_attributes=None, text=None)
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
__str__(self)
@@ -714,7 +717,8 @@
(string) Contains the title of the entry's media content, in plain text.
 
Attributes:
-type: Always set to plain
 
 
Method resolution order:
Title
diff -Nru python-gdata-1.2.4/pydocs/gdata.notebook.data.html python-gdata-2.0.8/pydocs/gdata.notebook.data.html --- python-gdata-1.2.4/pydocs/gdata.notebook.data.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.notebook.data.html 2010-02-26 23:16:48.000000000 +0000 @@ -0,0 +1,1533 @@ + + +Python: module gdata.notebook.data + + + + +
 
+ 
gdata.notebook.data
index
/usr/local/svn/gdata-python-client/src/gdata/notebook/data.py
+

Contains the data classes of the Google Notebook Data API

+

+ + + + + +
 
+Modules
       
atom
+
gdata
+

+ + + + + +
 
+Classes
       
+
atom.core.XmlElement(__builtin__.object) +
+
+
ComesAfter +
+
+
gdata.data.GDEntry(atom.data.Entry, gdata.data.LinkFinder) +
+
+
NoteEntry +
NotebookListEntry +
+
+
gdata.data.GDFeed(atom.data.Feed, gdata.data.LinkFinder) +
+
+
NotebookFeed +
NotebookListFeed +
+
+
+

+ + + + + + + +
 
+class ComesAfter(atom.core.XmlElement)
   Preceding element.
 
 
Method resolution order:
+
ComesAfter
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
id = 'id'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class NoteEntry(gdata.data.GDEntry)
   Describes a note entry in the feed of a user's notebook.
 
 
Method resolution order:
+
NoteEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class NotebookFeed(gdata.data.GDFeed)
   Describes a notebook feed.
 
 
Method resolution order:
+
NotebookFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.notebook.data.NoteEntry'>]
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class NotebookListEntry(gdata.data.GDEntry)
   Describes a note list entry in the feed of a user's list of public notebooks.
 
 
Method resolution order:
+
NotebookListEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class NotebookListFeed(gdata.data.GDFeed)
   Describes a notebook list feed.
 
 
Method resolution order:
+
NotebookListFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.notebook.data.NotebookListEntry'>]
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + +
 
+Data
       NB_TEMPLATE = '{http://schemas.google.com/notes/2008/}%s'
+__author__ = 'j.s@google.com (Jeff Scudder)'

+ + + + + +
 
+Author
       j.s@google.com (Jeff Scudder)
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.opensearch.data.html python-gdata-2.0.8/pydocs/gdata.opensearch.data.html --- python-gdata-1.2.4/pydocs/gdata.opensearch.data.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.opensearch.data.html 2009-11-25 01:26:44.000000000 +0000 @@ -0,0 +1,493 @@ + + +Python: module gdata.opensearch.data + + + + +
 
+ 
gdata.opensearch.data
index
/usr/local/svn/gdata-python-client/src/gdata/opensearch/data.py
+

Contains the data classes of the OpenSearch Extension

+

+ + + + + +
 
+Modules
       
atom
+

+ + + + + +
 
+Classes
       
+
atom.core.XmlElement(__builtin__.object) +
+
+
ItemsPerPage +
StartIndex +
TotalResults +
+
+
+

+ + + + + + + +
 
+class ItemsPerPage(atom.core.XmlElement)
   Describes the number of items that will be returned per page for paged feeds
 
 
Method resolution order:
+
ItemsPerPage
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class StartIndex(atom.core.XmlElement)
   Describes the starting index of the contained entries for paged feeds
 
 
Method resolution order:
+
StartIndex
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class TotalResults(atom.core.XmlElement)
   Describes the total number of results associated with this feed
 
 
Method resolution order:
+
TotalResults
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + +
 
+Data
       OPENSEARCH_TEMPLATE_V1 = '{http://a9.com/-/spec/opensearchrss/1.0//}%s'
+OPENSEARCH_TEMPLATE_V2 = '{http://a9.com/-/spec/opensearch/1.1//}%s'
+__author__ = 'j.s@google.com (Jeff Scudder)'

+ + + + + +
 
+Author
       j.s@google.com (Jeff Scudder)
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.photos.html python-gdata-2.0.8/pydocs/gdata.photos.html --- python-gdata-1.2.4/pydocs/gdata.photos.html 2009-01-22 19:55:42.000000000 +0000 +++ python-gdata-2.0.8/pydocs/gdata.photos.html 2010-02-26 23:16:48.000000000 +0000 @@ -301,9 +301,9 @@


Data and other attributes defined here:
-
geo = <gdata.geo.Where object at 0x957410>
+
geo = <gdata.geo.Where object at 0x7f57686ae650>
-
media = <gdata.media.Group object at 0x957390>
+
media = <gdata.media.Group object at 0x7f57686ae590>

Methods inherited from GPhotosBaseEntry:
@@ -1938,13 +1938,13 @@
commentingEnabled = None
-
geo = <gdata.geo.Where object at 0x957550>
+
geo = <gdata.geo.Where object at 0x7f57686ae790>
gphoto_id = None
height = None
-
media = <gdata.media.Group object at 0x957510>
+
media = <gdata.media.Group object at 0x7f57686ae750>
position = None
@@ -1956,7 +1956,7 @@
snippettype = None
-
tags = <gdata.exif.Tags object at 0x957650>
+
tags = <gdata.exif.Tags object at 0x7f57686ae890>
timestamp = None
@@ -2101,13 +2101,13 @@
commentingEnabled = None
-
geo = <gdata.geo.Where object at 0x957550>
+
geo = <gdata.geo.Where object at 0x7f57686ae790>
gphoto_id = None
height = None
-
media = <gdata.media.Group object at 0x957510>
+
media = <gdata.media.Group object at 0x7f57686ae750>
position = None
@@ -2119,7 +2119,7 @@
snippettype = None
-
tags = <gdata.exif.Tags object at 0x957650>
+
tags = <gdata.exif.Tags object at 0x7f57686ae890>
timestamp = None
@@ -2260,13 +2260,13 @@
commentingEnabled = None
-
geo = <gdata.geo.Where object at 0x957550>
+
geo = <gdata.geo.Where object at 0x7f57686ae790>
gphoto_id = None
height = None
-
media = <gdata.media.Group object at 0x957510>
+
media = <gdata.media.Group object at 0x7f57686ae750>
position = None
@@ -2278,7 +2278,7 @@
snippettype = None
-
tags = <gdata.exif.Tags object at 0x957650>
+
tags = <gdata.exif.Tags object at 0x7f57686ae890>
timestamp = None
diff -Nru python-gdata-1.2.4/pydocs/gdata.photos.service.html python-gdata-2.0.8/pydocs/gdata.photos.service.html --- python-gdata-1.2.4/pydocs/gdata.photos.service.html 2009-01-22 19:55:42.000000000 +0000 +++ python-gdata-2.0.8/pydocs/gdata.photos.service.html 2010-01-26 21:48:42.000000000 +0000 @@ -65,7 +65,7 @@ +Modules
 
-Modules
       
StringIO
@@ -119,7 +119,7 @@
Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
@@ -143,6 +143,8 @@
__str__(...)
x.__str__() <==> str(x)
+
__unicode__(...)
+
Data descriptors inherited from exceptions.BaseException:
__dict__
@@ -150,7 +152,6 @@
args
message
-
exception message

@@ -494,7 +495,7 @@   captcha_token: string (optional)
  captcha_response: string (optional) -
FetchOAuthRequestToken(self, scopes=None, extra_parameters=None, request_url='https://www.google.com/accounts/OAuthGetRequestToken')
Fetches OAuth request token and returns it.
+
FetchOAuthRequestToken(self, scopes=None, extra_parameters=None, request_url='https://www.google.com/accounts/OAuthGetRequestToken', oauth_callback=None)
Fetches and sets the OAuth request token and returns it.
 
Args:
  scopes: string or list of string base URL(s) of the service(s) to be
@@ -509,10 +510,14 @@       extra_parameters = {'oauth_version': '2.0'}
  request_url: Request token URL. The default is
      'https://www.google.com/accounts/OAuthGetRequestToken'.
-  
+  oauth_callback: str (optional) If set, it is assume the client is using
+      the OAuth v1.0a protocol where the callback url is sent in the
+      request token step.  If the oauth_callback is also set in
+      extra_params, this value will override that one.

Returns:
  The fetched request token as a gdata.auth.OAuthToken object.
-  

Raises:
  FetchingOAuthRequestTokenFailed if the server responded to the request
  with an error.
@@ -628,6 +633,8 @@ The token string is the end of the Authorization header, it doesn not
include the ClientLogin label.
+
GetGeneratorFromLinkFinder(self, link_finder, func, num_retries=3, delay=1, backoff=2)
returns a generator for pagination
+
GetMedia(self, uri, extra_headers=None)
Returns a MediaSource containing media and its metadata from the given
URI string.
@@ -646,6 +653,26 @@   A new feed representing the next set of results in the server's feed.
  The type of this feed will match that of the feed argument. +
GetOAuthInputParameters(self)
+ +
GetWithRetries(self, uri, extra_headers=None, redirects_remaining=4, encoding='UTF-8', converter=None, num_retries=3, delay=1, backoff=2, logger=None)
This is a wrapper method for Get with retring capability.

+To avoid various errors while retrieving bulk entities by retring
+specified times.

+Note this method relies on the time module and so may not be usable
+by default in Python2.2.

+Args:
+  num_retries: integer The retry count.
+  delay: integer The initial delay for retring.
+  backoff: integer how much the delay should lengthen after each failure.
+  logger: an object which has a debug(str) method to receive logging
+          messages. Recommended that you pass in the logging module.
+Raises:
+  ValueError if any of the parameters has an invalid value.
+  RanOutOfTries on failure after number of retries.
+
Post(self, data, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=4, media_source=None, converter=None)
Insert or update  data into a GData service at the given URI.
 
Args:
@@ -806,7 +833,7 @@ Args:
  token: string or instance of a ClientLoginToken.
-
SetOAuthInputParameters(self, signature_method, consumer_key, consumer_secret=None, rsa_key=None, two_legged_oauth=False)
Sets parameters required for using OAuth authentication mechanism.
+
SetOAuthInputParameters(self, signature_method, consumer_key, consumer_secret=None, rsa_key=None, two_legged_oauth=False, requestor_id=None)
Sets parameters required for using OAuth authentication mechanism.
 
NOTE: Though consumer_secret and rsa_key are optional, either of the two
is required depending on the value of the signature_method.
@@ -823,7 +850,10 @@       Required only for HMAC_SHA1 signature method.
  rsa_key: string (optional) Private key required for RSA_SHA1 signature
      method.
-  two_legged_oauth: string (default=False) Enables two-legged OAuth process.
+  two_legged_oauth: boolean (optional) Enables two-legged OAuth process.
+  requestor_id: string (optional) User email adress to make requests on
+      their behalf.  This parameter should only be set when two_legged_oauth
+      is True.
SetOAuthToken(self, oauth_token)
Attempts to set the current token and add it to the token store.
 
@@ -837,18 +867,24 @@ Args:
  request_token: gdata.auth.OAuthToken OAuth request token.
-
UpgradeToOAuthAccessToken(self, authorized_request_token=None, request_url='https://www.google.com/accounts/OAuthGetAccessToken', oauth_version='1.0')
Upgrades the authorized request token to an access token.
+
UpgradeToOAuthAccessToken(self, authorized_request_token=None, request_url='https://www.google.com/accounts/OAuthGetAccessToken', oauth_version='1.0', oauth_verifier=None)
Upgrades the authorized request token to an access token and returns it
 
Args:
  authorized_request_token: gdata.auth.OAuthToken (optional) OAuth request
      token. If not specified, then the current token will be used if it is
      of type <gdata.auth.OAuthToken>, else it is found by looking in the
      token_store by looking for a token for the current scope.
+  request_url: Access token URL. The default is
+      'https://www.google.com/accounts/OAuthGetAccessToken'.
  oauth_version: str (default='1.0') oauth_version parameter. All other
      'oauth_' parameters are added by default. This parameter too, is
      added by default but here you can override it's value.
-  request_url: Access token URL. The default is
-      'https://www.google.com/accounts/OAuthGetAccessToken'.
+  oauth_verifier: str (optional) If present, it is assumed that the client
+    will use the OAuth v1.0a protocol which includes passing the
+    oauth_verifier (as returned by the SP) in the access token step.

+Returns:
+  Access token
      
Raises:
  NonOAuthToken if the user's authorized request token is not an OAuth
@@ -918,7 +954,7 @@   username: str
  password: str
-
request(self, operation, url, data=None, headers=None, url_params=None)
+
request(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
use_basic_auth(self, username, password, scopes=None)
diff -Nru python-gdata-1.2.4/pydocs/gdata.projecthosting.client.html python-gdata-2.0.8/pydocs/gdata.projecthosting.client.html --- python-gdata-1.2.4/pydocs/gdata.projecthosting.client.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.projecthosting.client.html 2010-02-26 23:16:48.000000000 +0000 @@ -0,0 +1,660 @@ + + +Python: module gdata.projecthosting.client + + +
+ +
 
+ 
gdata.projecthosting.client
index
/usr/local/svn/gdata-python-client/src/gdata/projecthosting/client.py
+

# Copyright 2009 Google Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.

+

+ + + + + +
 
+Modules
       
atom
+
gdata
+

+ + + + + +
 
+Classes
       
+
gdata.client.GDClient(atom.client.AtomPubClient) +
+
+
ProjectHostingClient +
+
+
gdata.client.Query(__builtin__.object) +
+
+
Query +
+
+
+

+ + + + + + + +
 
+class ProjectHostingClient(gdata.client.GDClient)
   Client to interact with the Project Hosting GData API.
 
 
Method resolution order:
+
ProjectHostingClient
+
gdata.client.GDClient
+
atom.client.AtomPubClient
+
__builtin__.object
+
+
+Methods defined here:
+
add_issue(self, project_name, title, content, author, status=None, owner=None, labels=None, ccs=None, **kwargs)
Create a new issue for the project.

+Args:
+  project_name str The name of the project.
+  title str The title of the new issue.
+  content str The summary of the new issue.
+  author str The authenticated user's username.
+  status str The status of the new issue, Accepted, etc.
+  owner str The username of new issue's owner.
+  labels [str] Labels to associate with the new issue.
+  ccs [str] usernames to Cc on the new issue.
+Returns:
+  data.IssueEntry
+ +
delete(self, entry_or_uri, auth_token=None, force=False, **kwargs)
Unsupported GData delete method.

+Use update_issue(status='Closed') instead.
+ +
get_comments(self, project_name, issue_id, desired_class=<class 'gdata.projecthosting.data.CommentsFeed'>, **kwargs)
Get a feed of all updates to an issue.

+Args:
+  project_name str The name of the issue's project.
+  issue_id str The issue number needing updated.

+Returns:
+  data.CommentsFeed
+ +
get_issues(self, project_name, desired_class=<class 'gdata.projecthosting.data.IssuesFeed'>, **kwargs)
Get a feed of issues for a particular project.

+Args:
+  project_name str The name of the project.
+  query Query Set returned issues parameters.

+Returns:
+  data.IssuesFeed
+ +
update(self, entry, auth_token=None, force=False, **kwargs)
Unsupported GData update method.

+Use update_*() instead.
+ +
update_issue(self, project_name, issue_id, author, comment=None, summary=None, status=None, owner=None, labels=None, ccs=None, **kwargs)
Update or comment on one issue for the project.

+Args:
+  project_name str The name of the issue's project.
+  issue_id str The issue number needing updated.
+  author str The authenticated user's username.
+  comment str A comment to append to the issue
+  summary str Rewrite the summary of the issue.
+  status str A new status for the issue.
+  owner str The username of the new owner.
+  labels [str] Labels to set on the issue (prepend issue with - to remove a
+      label).
+  ccs [str] Ccs to set on th enew issue (prepend cc with - to remove a cc).

+Returns:
+  data.CommentEntry
+ +
+Data and other attributes defined here:
+
api_version = '1.0'
+ +
auth_scopes = ('http://code.google.com/feeds/issues',)
+ +
auth_service = 'code'
+ +
host = 'code.google.com'
+ +
+Methods inherited from gdata.client.GDClient:
+
ClientLogin = client_login(self, email, password, source, service=None, account_type='HOSTED_OR_GOOGLE', auth_url=<atom.http_core.Uri object at 0xb45e50>, captcha_token=None, captcha_response=None)
Performs an auth request using the user's email address and password.

+In order to modify user specific data and read user private data, your
+application must be authorized by the user. One way to demonstrage
+authorization is by including a Client Login token in the Authorization
+HTTP header of all requests. This method requests the Client Login token
+by sending the user's email address, password, the name of the
+application, and the service code for the service which will be accessed
+by the application. If the username and password are correct, the server
+will respond with the client login code and a new ClientLoginToken
+object will be set in the client's auth_token member. With the auth_token
+set, future requests from this client will include the Client Login
+token.

+For a list of service names, see 
+http://code.google.com/apis/gdata/faq.html#clientlogin
+For more information on Client Login, see:
+http://code.google.com/apis/accounts/docs/AuthForInstalledApps.html

+Args:
+  email: str The user's email address or username.
+  password: str The password for the user's account.
+  source: str The name of your application. This can be anything you
+          like but should should give some indication of which app is
+          making the request.
+  service: str The service code for the service you would like to access.
+           For example, 'cp' for contacts, 'cl' for calendar. For a full
+           list see
+           http://code.google.com/apis/gdata/faq.html#clientlogin
+           If you are using a subclass of the gdata.client.GDClient, the
+           service will usually be filled in for you so you do not need
+           to specify it. For example see BloggerClient,
+           SpreadsheetsClient, etc.
+  account_type: str (optional) The type of account which is being
+                authenticated. This can be either 'GOOGLE' for a Google
+                Account, 'HOSTED' for a Google Apps Account, or the
+                default 'HOSTED_OR_GOOGLE' which will select the Google
+                Apps Account if the same email address is used for both
+                a Google Account and a Google Apps Account.
+  auth_url: str (optional) The URL to which the login request should be
+            sent.
+  captcha_token: str (optional) If a previous login attempt was reponded
+                 to with a CAPTCHA challenge, this is the token which
+                 identifies the challenge (from the CAPTCHA's URL).
+  captcha_response: str (optional) If a previous login attempt was
+                    reponded to with a CAPTCHA challenge, this is the
+                    response text which was contained in the challenge.

+  Returns:
+    None

+  Raises:
+    A RequestError or one of its suclasses: BadAuthentication,
+    BadAuthenticationServiceURL, ClientLoginFailed,
+    ClientLoginTokenMissing, or CaptchaChallenge
+ +
Delete = delete(self, entry_or_uri, auth_token=None, force=False, **kwargs)
+ +
GetAccessToken = get_access_token(self, request_token, url='https://www.google.com/accounts/OAuthGetAccessToken')
Exchanges an authorized OAuth request token for an access token.

+Contacts the Google OAuth server to upgrade a previously authorized
+request token. Once the request token is upgraded to an access token,
+the access token may be used to access the user's data.

+For more details, see the Google Accounts OAuth documentation:
+http://code.google.com/apis/accounts/docs/OAuth.html#AccessToken

+Args:
+  request_token: An OAuth token which has been authorized by the user.
+  url: (optional) The URL to which the upgrade request should be sent.
+      Defaults to: https://www.google.com/accounts/OAuthAuthorizeToken
+ +
GetEntry = get_entry(self, uri, auth_token=None, converter=None, desired_class=<class 'gdata.data.GDEntry'>, etag=None, **kwargs)
+ +
GetFeed = get_feed(self, uri, auth_token=None, converter=None, desired_class=<class 'gdata.data.GDFeed'>, **kwargs)
+ +
GetNext = get_next(self, feed, auth_token=None, converter=None, desired_class=None, **kwargs)
Fetches the next set of results from the feed.

+When requesting a feed, the number of entries returned is capped at a
+service specific default limit (often 25 entries). You can specify your
+own entry-count cap using the max-results URL query parameter. If there
+are more results than could fit under max-results, the feed will contain
+a next link. This method performs a GET against this next results URL.

+Returns:
+  A new feed object containing the next set of entries in this feed.
+ +
GetOAuthToken = get_oauth_token(self, scopes, next, consumer_key, consumer_secret=None, rsa_private_key=None, url='https://www.google.com/accounts/OAuthGetRequestToken')
Obtains an OAuth request token to allow the user to authorize this app.

+Once this client has a request token, the user can authorize the request
+token by visiting the authorization URL in their browser. After being
+redirected back to this app at the 'next' URL, this app can then exchange
+the authorized request token for an access token.

+For more information see the documentation on Google Accounts with OAuth:
+http://code.google.com/apis/accounts/docs/OAuth.html#AuthProcess

+Args:
+  scopes: list of strings or atom.http_core.Uri objects which specify the
+      URL prefixes which this app will be accessing. For example, to access
+      the Google Calendar API, you would want to use scopes:
+      ['https://www.google.com/calendar/feeds/',
+       'http://www.google.com/calendar/feeds/']
+  next: str or atom.http_core.Uri object, The URL which the user's browser
+      should be sent to after they authorize access to their data. This
+      should be a URL in your application which will read the token
+      information from the URL and upgrade the request token to an access
+      token.
+  consumer_key: str This is the identifier for this application which you
+      should have received when you registered your application with Google
+      to use OAuth.
+  consumer_secret: str (optional) The shared secret between your app and
+      Google which provides evidence that this request is coming from you
+      application and not another app. If present, this libraries assumes
+      you want to use an HMAC signature to verify requests. Keep this data
+      a secret.
+  rsa_private_key: str (optional) The RSA private key which is used to
+      generate a digital signature which is checked by Google's server. If
+      present, this library assumes that you want to use an RSA signature
+      to verify requests. Keep this data a secret.
+  url: The URL to which a request for a token should be made. The default
+      is Google's OAuth request token provider.
+ +
ModifyRequest = modify_request(self, http_request)
Adds or changes request before making the HTTP request.

+This client will add the API version if it is specified.
+Subclasses may override this method to add their own request
+modifications before the request is made.
+ +
Post = post(self, entry, uri, auth_token=None, converter=None, desired_class=None, **kwargs)
+ +
Request = request(self, method=None, uri=None, auth_token=None, http_request=None, converter=None, desired_class=None, redirects_remaining=4, **kwargs)
Make an HTTP request to the server.

+See also documentation for atom.client.AtomPubClient.request.

+If a 302 redirect is sent from the server to the client, this client
+assumes that the redirect is in the form used by the Google Calendar API.
+The same request URI and method will be used as in the original request,
+but a gsessionid URL parameter will be added to the request URI with
+the value provided in the server's 302 redirect response. If the 302
+redirect is not in the format specified by the Google Calendar API, a
+RedirectError will be raised containing the body of the server's
+response.

+The method calls the client's modify_request method to make any changes
+required by the client before the request is made. For example, a
+version 2 client could add a GData-Version: 2 header to the request in
+its modify_request method.

+Args:
+  method: str The HTTP verb for this request, usually 'GET', 'POST',
+          'PUT', or 'DELETE'
+  uri: atom.http_core.Uri, str, or unicode The URL being requested.
+  auth_token: An object which sets the Authorization HTTP header in its
+              modify_request method. Recommended classes include
+              gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken
+              among others.
+  http_request: (optional) atom.http_core.HttpRequest
+  converter: function which takes the body of the response as it's only
+             argument and returns the desired object.
+  desired_class: class descended from atom.core.XmlElement to which a
+                 successful response should be converted. If there is no
+                 converter function specified (converter=None) then the
+                 desired_class will be used in calling the
+                 atom.core.parse function. If neither
+                 the desired_class nor the converter is specified, an
+                 HTTP reponse object will be returned.
+  redirects_remaining: (optional) int, if this number is 0 and the
+                       server sends a 302 redirect, the request method
+                       will raise an exception. This parameter is used in
+                       recursive request calls to avoid an infinite loop.

+Any additional arguments are passed through to
+atom.client.AtomPubClient.request.

+Returns:
+  An HTTP response object (see atom.http_core.HttpResponse for a
+  description of the object's interface) if no converter was
+  specified and no desired_class was specified. If a converter function
+  was provided, the results of calling the converter are returned. If no
+  converter was specified but a desired_class was provided, the response
+  body will be converted to the class using
+  atom.core.parse.
+ +
RequestClientLoginToken = request_client_login_token(self, email, password, source, service=None, account_type='HOSTED_OR_GOOGLE', auth_url=<atom.http_core.Uri object at 0xb45e10>, captcha_token=None, captcha_response=None)
+ +
RevokeToken = revoke_token(self, token=None, url=<atom.http_core.Uri object at 0xb45ed0>)
Requests that the token be invalidated.

+This method can be used for both AuthSub and OAuth tokens (to invalidate
+a ClientLogin token, the user must change their password).

+Returns:
+  True if the server responded with a 200.

+Raises:
+  A RequestError if the server responds with a non-200 status.
+ +
Update = update(self, entry, auth_token=None, force=False, **kwargs)
Edits the entry on the server by sending the XML for this entry.

+Performs a PUT and converts the response to a new entry object with a
+matching class to the entry passed in.

+Args:
+  entry:
+  auth_token:
+  force: boolean stating whether an update should be forced. Defaults to
+         False. Normally, if a change has been made since the passed in
+         entry was obtained, the server will not overwrite the entry since
+         the changes were based on an obsolete version of the entry.
+         Setting force to True will cause the update to silently
+         overwrite whatever version is present.

+Returns:
+  A new Entry object of a matching type to the entry which was passed in.
+ +
UpgradeToken = upgrade_token(self, token=None, url=<atom.http_core.Uri object at 0xb45e90>)
Asks the Google auth server for a multi-use AuthSub token.

+For details on AuthSub, see:
+http://code.google.com/apis/accounts/docs/AuthSub.html

+Args:
+  token: gdata.gauth.AuthSubToken or gdata.gauth.SecureAuthSubToken
+      (optional) If no token is passed in, the client's auth_token member
+      is used to request the new token. The token object will be modified
+      to contain the new session token string.
+  url: str or atom.http_core.Uri (optional) The URL to which the token
+      upgrade request should be sent. Defaults to:
+      https://www.google.com/accounts/AuthSubSessionToken

+Returns:
+  The upgraded gdata.gauth.AuthSubToken object.
+ +
client_login(self, email, password, source, service=None, account_type='HOSTED_OR_GOOGLE', auth_url=<atom.http_core.Uri object at 0xb45e50>, captcha_token=None, captcha_response=None)
Performs an auth request using the user's email address and password.

+In order to modify user specific data and read user private data, your
+application must be authorized by the user. One way to demonstrage
+authorization is by including a Client Login token in the Authorization
+HTTP header of all requests. This method requests the Client Login token
+by sending the user's email address, password, the name of the
+application, and the service code for the service which will be accessed
+by the application. If the username and password are correct, the server
+will respond with the client login code and a new ClientLoginToken
+object will be set in the client's auth_token member. With the auth_token
+set, future requests from this client will include the Client Login
+token.

+For a list of service names, see 
+http://code.google.com/apis/gdata/faq.html#clientlogin
+For more information on Client Login, see:
+http://code.google.com/apis/accounts/docs/AuthForInstalledApps.html

+Args:
+  email: str The user's email address or username.
+  password: str The password for the user's account.
+  source: str The name of your application. This can be anything you
+          like but should should give some indication of which app is
+          making the request.
+  service: str The service code for the service you would like to access.
+           For example, 'cp' for contacts, 'cl' for calendar. For a full
+           list see
+           http://code.google.com/apis/gdata/faq.html#clientlogin
+           If you are using a subclass of the gdata.client.GDClient, the
+           service will usually be filled in for you so you do not need
+           to specify it. For example see BloggerClient,
+           SpreadsheetsClient, etc.
+  account_type: str (optional) The type of account which is being
+                authenticated. This can be either 'GOOGLE' for a Google
+                Account, 'HOSTED' for a Google Apps Account, or the
+                default 'HOSTED_OR_GOOGLE' which will select the Google
+                Apps Account if the same email address is used for both
+                a Google Account and a Google Apps Account.
+  auth_url: str (optional) The URL to which the login request should be
+            sent.
+  captcha_token: str (optional) If a previous login attempt was reponded
+                 to with a CAPTCHA challenge, this is the token which
+                 identifies the challenge (from the CAPTCHA's URL).
+  captcha_response: str (optional) If a previous login attempt was
+                    reponded to with a CAPTCHA challenge, this is the
+                    response text which was contained in the challenge.

+  Returns:
+    None

+  Raises:
+    A RequestError or one of its suclasses: BadAuthentication,
+    BadAuthenticationServiceURL, ClientLoginFailed,
+    ClientLoginTokenMissing, or CaptchaChallenge
+ +
get_access_token(self, request_token, url='https://www.google.com/accounts/OAuthGetAccessToken')
Exchanges an authorized OAuth request token for an access token.

+Contacts the Google OAuth server to upgrade a previously authorized
+request token. Once the request token is upgraded to an access token,
+the access token may be used to access the user's data.

+For more details, see the Google Accounts OAuth documentation:
+http://code.google.com/apis/accounts/docs/OAuth.html#AccessToken

+Args:
+  request_token: An OAuth token which has been authorized by the user.
+  url: (optional) The URL to which the upgrade request should be sent.
+      Defaults to: https://www.google.com/accounts/OAuthAuthorizeToken
+ +
get_entry(self, uri, auth_token=None, converter=None, desired_class=<class 'gdata.data.GDEntry'>, etag=None, **kwargs)
+ +
get_feed(self, uri, auth_token=None, converter=None, desired_class=<class 'gdata.data.GDFeed'>, **kwargs)
+ +
get_next(self, feed, auth_token=None, converter=None, desired_class=None, **kwargs)
Fetches the next set of results from the feed.

+When requesting a feed, the number of entries returned is capped at a
+service specific default limit (often 25 entries). You can specify your
+own entry-count cap using the max-results URL query parameter. If there
+are more results than could fit under max-results, the feed will contain
+a next link. This method performs a GET against this next results URL.

+Returns:
+  A new feed object containing the next set of entries in this feed.
+ +
get_oauth_token(self, scopes, next, consumer_key, consumer_secret=None, rsa_private_key=None, url='https://www.google.com/accounts/OAuthGetRequestToken')
Obtains an OAuth request token to allow the user to authorize this app.

+Once this client has a request token, the user can authorize the request
+token by visiting the authorization URL in their browser. After being
+redirected back to this app at the 'next' URL, this app can then exchange
+the authorized request token for an access token.

+For more information see the documentation on Google Accounts with OAuth:
+http://code.google.com/apis/accounts/docs/OAuth.html#AuthProcess

+Args:
+  scopes: list of strings or atom.http_core.Uri objects which specify the
+      URL prefixes which this app will be accessing. For example, to access
+      the Google Calendar API, you would want to use scopes:
+      ['https://www.google.com/calendar/feeds/',
+       'http://www.google.com/calendar/feeds/']
+  next: str or atom.http_core.Uri object, The URL which the user's browser
+      should be sent to after they authorize access to their data. This
+      should be a URL in your application which will read the token
+      information from the URL and upgrade the request token to an access
+      token.
+  consumer_key: str This is the identifier for this application which you
+      should have received when you registered your application with Google
+      to use OAuth.
+  consumer_secret: str (optional) The shared secret between your app and
+      Google which provides evidence that this request is coming from you
+      application and not another app. If present, this libraries assumes
+      you want to use an HMAC signature to verify requests. Keep this data
+      a secret.
+  rsa_private_key: str (optional) The RSA private key which is used to
+      generate a digital signature which is checked by Google's server. If
+      present, this library assumes that you want to use an RSA signature
+      to verify requests. Keep this data a secret.
+  url: The URL to which a request for a token should be made. The default
+      is Google's OAuth request token provider.
+ +
modify_request(self, http_request)
Adds or changes request before making the HTTP request.

+This client will add the API version if it is specified.
+Subclasses may override this method to add their own request
+modifications before the request is made.
+ +
post(self, entry, uri, auth_token=None, converter=None, desired_class=None, **kwargs)
+ +
request(self, method=None, uri=None, auth_token=None, http_request=None, converter=None, desired_class=None, redirects_remaining=4, **kwargs)
Make an HTTP request to the server.

+See also documentation for atom.client.AtomPubClient.request.

+If a 302 redirect is sent from the server to the client, this client
+assumes that the redirect is in the form used by the Google Calendar API.
+The same request URI and method will be used as in the original request,
+but a gsessionid URL parameter will be added to the request URI with
+the value provided in the server's 302 redirect response. If the 302
+redirect is not in the format specified by the Google Calendar API, a
+RedirectError will be raised containing the body of the server's
+response.

+The method calls the client's modify_request method to make any changes
+required by the client before the request is made. For example, a
+version 2 client could add a GData-Version: 2 header to the request in
+its modify_request method.

+Args:
+  method: str The HTTP verb for this request, usually 'GET', 'POST',
+          'PUT', or 'DELETE'
+  uri: atom.http_core.Uri, str, or unicode The URL being requested.
+  auth_token: An object which sets the Authorization HTTP header in its
+              modify_request method. Recommended classes include
+              gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken
+              among others.
+  http_request: (optional) atom.http_core.HttpRequest
+  converter: function which takes the body of the response as it's only
+             argument and returns the desired object.
+  desired_class: class descended from atom.core.XmlElement to which a
+                 successful response should be converted. If there is no
+                 converter function specified (converter=None) then the
+                 desired_class will be used in calling the
+                 atom.core.parse function. If neither
+                 the desired_class nor the converter is specified, an
+                 HTTP reponse object will be returned.
+  redirects_remaining: (optional) int, if this number is 0 and the
+                       server sends a 302 redirect, the request method
+                       will raise an exception. This parameter is used in
+                       recursive request calls to avoid an infinite loop.

+Any additional arguments are passed through to
+atom.client.AtomPubClient.request.

+Returns:
+  An HTTP response object (see atom.http_core.HttpResponse for a
+  description of the object's interface) if no converter was
+  specified and no desired_class was specified. If a converter function
+  was provided, the results of calling the converter are returned. If no
+  converter was specified but a desired_class was provided, the response
+  body will be converted to the class using
+  atom.core.parse.
+ +
request_client_login_token(self, email, password, source, service=None, account_type='HOSTED_OR_GOOGLE', auth_url=<atom.http_core.Uri object at 0xb45e10>, captcha_token=None, captcha_response=None)
+ +
revoke_token(self, token=None, url=<atom.http_core.Uri object at 0xb45ed0>)
Requests that the token be invalidated.

+This method can be used for both AuthSub and OAuth tokens (to invalidate
+a ClientLogin token, the user must change their password).

+Returns:
+  True if the server responded with a 200.

+Raises:
+  A RequestError if the server responds with a non-200 status.
+ +
upgrade_token(self, token=None, url=<atom.http_core.Uri object at 0xb45e90>)
Asks the Google auth server for a multi-use AuthSub token.

+For details on AuthSub, see:
+http://code.google.com/apis/accounts/docs/AuthSub.html

+Args:
+  token: gdata.gauth.AuthSubToken or gdata.gauth.SecureAuthSubToken
+      (optional) If no token is passed in, the client's auth_token member
+      is used to request the new token. The token object will be modified
+      to contain the new session token string.
+  url: str or atom.http_core.Uri (optional) The URL to which the token
+      upgrade request should be sent. Defaults to:
+      https://www.google.com/accounts/AuthSubSessionToken

+Returns:
+  The upgraded gdata.gauth.AuthSubToken object.
+ +
+Methods inherited from atom.client.AtomPubClient:
+
Get = get(self, uri=None, auth_token=None, http_request=None, **kwargs)
Performs a request using the GET method, returns an HTTP response.
+ +
Put = put(self, uri=None, data=None, auth_token=None, http_request=None, **kwargs)
Sends data using the PUT method, returns an HTTP response.
+ +
__init__(self, http_client=None, host=None, auth_token=None, source=None, **kwargs)
Creates a new AtomPubClient instance.

+Args:
+  source: The name of your application.
+  http_client: An object capable of performing HTTP requests through a
+               request method. This object is used to perform the request
+               when the AtomPubClient's request method is called. Used to
+               allow HTTP requests to be directed to a mock server, or use
+               an alternate library instead of the default of httplib to
+               make HTTP requests.
+  host: str The default host name to use if a host is not specified in the
+        requested URI.
+  auth_token: An object which sets the HTTP Authorization header when its
+              modify_request method is called.
+ +
get(self, uri=None, auth_token=None, http_request=None, **kwargs)
Performs a request using the GET method, returns an HTTP response.
+ +
put(self, uri=None, data=None, auth_token=None, http_request=None, **kwargs)
Sends data using the PUT method, returns an HTTP response.
+ +
+Data descriptors inherited from atom.client.AtomPubClient:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Data and other attributes inherited from atom.client.AtomPubClient:
+
auth_token = None
+ +
ssl = False
+ +

+ + + + + +
 
+class Query(gdata.client.Query)
    
Method resolution order:
+
Query
+
gdata.client.Query
+
__builtin__.object
+
+
+Methods defined here:
+
ModifyRequest = modify_request(self, http_request)
+ +
__init__(self, issue_id=None, label=None, canned_query=None, owner=None, status=None, **kwargs)
Constructs a Google Data Query to filter feed contents serverside.
+Args:
+  issue_id: int or str The issue to return based on the issue id.
+  label: str A label returned issues must have.
+  canned_query: str Return issues based on a canned query identifier
+  owner: str Return issues based on the owner of the issue. For Gmail users,
+      this will be the part of the email preceding the '@' sign.
+  status: str Return issues based on the status of the issue.
+ +
modify_request(self, http_request)
+ +
+Data descriptors inherited from gdata.client.Query:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.projecthosting.data.html python-gdata-2.0.8/pydocs/gdata.projecthosting.data.html --- python-gdata-1.2.4/pydocs/gdata.projecthosting.data.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.projecthosting.data.html 2010-02-26 23:16:48.000000000 +0000 @@ -0,0 +1,3193 @@ + + +Python: module gdata.projecthosting.data + + + + +
 
+ 
gdata.projecthosting.data
index
/usr/local/svn/gdata-python-client/src/gdata/projecthosting/data.py
+

Provides classes and constants for XML in the Google Project Hosting API.

+Canonical documentation for the raw XML which these classes represent can be
+found here: http://code.google.com/p/support/wiki/IssueTrackerAPI

+

+ + + + + +
 
+Modules
       
atom
+
gdata
+

+ + + + + +
 
+Classes
       
+
atom.core.XmlElement(__builtin__.object) +
+
+
Cc +
CcUpdate +
Label +
Owner +
OwnerUpdate +
Stars +
State +
Status +
Summary +
Updates +
Uri +
Username +
+
+
gdata.data.GDEntry(atom.data.Entry, gdata.data.LinkFinder) +
+
+
CommentEntry +
IssueEntry +
+
+
gdata.data.GDFeed(atom.data.Feed, gdata.data.LinkFinder) +
+
+
CommentsFeed +
IssuesFeed +
+
+
+

+ + + + + + + +
 
+class Cc(atom.core.XmlElement)
   The issues:cc element.
 
 
Method resolution order:
+
Cc
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
uri = <class 'gdata.projecthosting.data.Uri'>
The issues:uri element.
+ +
username = <class 'gdata.projecthosting.data.Username'>
The issues:username element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class CcUpdate(atom.core.XmlElement)
   The issues:ccUpdate element.
 
 
Method resolution order:
+
CcUpdate
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class CommentEntry(gdata.data.GDEntry)
   An entry detailing one comment on an issue.
 
 
Method resolution order:
+
CommentEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
updates = <class 'gdata.projecthosting.data.Updates'>
The issues:updates element.
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class CommentsFeed(gdata.data.GDFeed)
   An Atom feed listing a project's issue's comments.
 
 
Method resolution order:
+
CommentsFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.projecthosting.data.CommentEntry'>]
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class IssueEntry(gdata.data.GDEntry)
   Represents the information of one issue.
 
 
Method resolution order:
+
IssueEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
cc = [<class 'gdata.projecthosting.data.Cc'>]
+ +
label = [<class 'gdata.projecthosting.data.Label'>]
+ +
owner = <class 'gdata.projecthosting.data.Owner'>
The issues:owner element.
+ +
stars = <class 'gdata.projecthosting.data.Stars'>
The issues:stars element.
+ +
state = <class 'gdata.projecthosting.data.State'>
The issues:state element.
+ +
status = <class 'gdata.projecthosting.data.Status'>
The issues:status element.
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class IssuesFeed(gdata.data.GDFeed)
   An Atom feed listing a project's issues.
 
 
Method resolution order:
+
IssuesFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.projecthosting.data.IssueEntry'>]
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class Label(atom.core.XmlElement)
   The issues:label element.
 
 
Method resolution order:
+
Label
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Owner(atom.core.XmlElement)
   The issues:owner element.
 
 
Method resolution order:
+
Owner
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
uri = <class 'gdata.projecthosting.data.Uri'>
The issues:uri element.
+ +
username = <class 'gdata.projecthosting.data.Username'>
The issues:username element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class OwnerUpdate(atom.core.XmlElement)
   The issues:ownerUpdate element.
 
 
Method resolution order:
+
OwnerUpdate
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Stars(atom.core.XmlElement)
   The issues:stars element.
 
 
Method resolution order:
+
Stars
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class State(atom.core.XmlElement)
   The issues:state element.
 
 
Method resolution order:
+
State
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Status(atom.core.XmlElement)
   The issues:status element.
 
 
Method resolution order:
+
Status
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Summary(atom.core.XmlElement)
   The issues:summary element.
 
 
Method resolution order:
+
Summary
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Updates(atom.core.XmlElement)
   The issues:updates element.
 
 
Method resolution order:
+
Updates
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
ccUpdate = [<class 'gdata.projecthosting.data.CcUpdate'>]
+ +
label = [<class 'gdata.projecthosting.data.Label'>]
+ +
ownerUpdate = <class 'gdata.projecthosting.data.OwnerUpdate'>
The issues:ownerUpdate element.
+ +
status = <class 'gdata.projecthosting.data.Status'>
The issues:status element.
+ +
summary = <class 'gdata.projecthosting.data.Summary'>
The issues:summary element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Uri(atom.core.XmlElement)
   The issues:uri element.
 
 
Method resolution order:
+
Uri
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Username(atom.core.XmlElement)
   The issues:username element.
 
 
Method resolution order:
+
Username
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + +
 
+Data
       COMMENTS_FULL_FEED = '/feeds/issues/p/%s/issues/%s/comments/full'
+ISSUES_FULL_FEED = '/feeds/issues/p/%s/issues/full'
+ISSUES_TEMPLATE = '{http://schemas.google.com/projecthosting/issues/2009}%s'
+__author__ = 'jlapenna@google.com (Joe LaPenna)'

+ + + + + +
 
+Author
       jlapenna@google.com (Joe LaPenna)
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.service.html python-gdata-2.0.8/pydocs/gdata.service.html --- python-gdata-1.2.4/pydocs/gdata.service.html 2009-01-22 19:55:42.000000000 +0000 +++ python-gdata-2.0.8/pydocs/gdata.service.html 2010-02-26 23:16:48.000000000 +0000 @@ -33,7 +33,7 @@                user is either not authenticated or is authenticated through
               another authentication mechanism.
 
-RequestError: Raised if a CRUD request returned a non-success code. 
+RequestError: Raised if a CRUD request returned a non-success code.
 
UnexpectedReturnType: Raised if the response from the server was not of the
                      desired type. For example, this would be raised if the
@@ -53,7 +53,7 @@ +Modules
 
-Modules
       
xml.etree.cElementTree
@@ -96,6 +96,7 @@
NonAuthSubToken
NonOAuthToken
NotAuthenticated +
RanOutOfTries
RequestError
@@ -136,7 +137,7 @@
Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
@@ -160,6 +161,8 @@
__str__(...)
x.__str__() <==> str(x)
+
__unicode__(...)
+
Data descriptors inherited from exceptions.BaseException:
__dict__
@@ -167,7 +170,6 @@
args
message
-
exception message

@@ -194,7 +196,7 @@
Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
@@ -218,6 +220,8 @@
__str__(...)
x.__str__() <==> str(x)
+
__unicode__(...)
+
Data descriptors inherited from exceptions.BaseException:
__dict__
@@ -225,7 +229,6 @@
args
message
-
exception message

@@ -252,7 +255,7 @@
Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
@@ -276,6 +279,8 @@
__str__(...)
x.__str__() <==> str(x)
+
__unicode__(...)
+
Data descriptors inherited from exceptions.BaseException:
__dict__
@@ -283,7 +288,6 @@
args
message
-
exception message

@@ -310,7 +314,7 @@
Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
@@ -334,6 +338,8 @@
__str__(...)
x.__str__() <==> str(x)
+
__unicode__(...)
+
Data descriptors inherited from exceptions.BaseException:
__dict__
@@ -341,7 +347,6 @@
args
message
-
exception message

@@ -367,7 +372,7 @@
Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
@@ -391,6 +396,8 @@
__str__(...)
x.__str__() <==> str(x)
+
__unicode__(...)
+
Data descriptors inherited from exceptions.BaseException:
__dict__
@@ -398,7 +405,6 @@
args
message
-
exception message

@@ -426,7 +432,7 @@
Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
@@ -450,6 +456,8 @@
__str__(...)
x.__str__() <==> str(x)
+
__unicode__(...)
+
Data descriptors inherited from exceptions.BaseException:
__dict__
@@ -457,7 +465,6 @@
args
message
-
exception message

@@ -517,7 +524,7 @@ Returns:
  True if the entry was deleted. -
FetchOAuthRequestToken(self, scopes=None, extra_parameters=None, request_url='https://www.google.com/accounts/OAuthGetRequestToken')
Fetches OAuth request token and returns it.
+
FetchOAuthRequestToken(self, scopes=None, extra_parameters=None, request_url='https://www.google.com/accounts/OAuthGetRequestToken', oauth_callback=None)
Fetches and sets the OAuth request token and returns it.
 
Args:
  scopes: string or list of string base URL(s) of the service(s) to be
@@ -532,10 +539,14 @@       extra_parameters = {'oauth_version': '2.0'}
  request_url: Request token URL. The default is
      'https://www.google.com/accounts/OAuthGetRequestToken'.
-  
+  oauth_callback: str (optional) If set, it is assume the client is using
+      the OAuth v1.0a protocol where the callback url is sent in the
+      request token step.  If the oauth_callback is also set in
+      extra_params, this value will override that one.

Returns:
  The fetched request token as a gdata.auth.OAuthToken object.
-  

Raises:
  FetchingOAuthRequestTokenFailed if the server responded to the request
  with an error.
@@ -667,7 +678,7 @@ Returns:
  A GDataEntry built from the XML in the server's response.
-
GetFeed(self, uri, extra_headers=None, converter=<function GDataFeedFromString at 0x8ef1b8>)
Query the GData API with the given URI and receive a Feed.
+
GetFeed(self, uri, extra_headers=None, converter=<function GDataFeedFromString at 0x7f837de1fd70>)
Query the GData API with the given URI and receive a Feed.
 
See also documentation for gdata.service.Get
 
@@ -683,6 +694,8 @@ Returns:
  A GDataFeed built from the XML in the server's response.
+
GetGeneratorFromLinkFinder(self, link_finder, func, num_retries=3, delay=1, backoff=2)
returns a generator for pagination
+
GetMedia(self, uri, extra_headers=None)
Returns a MediaSource containing media and its metadata from the given
URI string.
@@ -701,6 +714,26 @@   A new feed representing the next set of results in the server's feed.
  The type of this feed will match that of the feed argument.
+
GetOAuthInputParameters(self)
+ +
GetWithRetries(self, uri, extra_headers=None, redirects_remaining=4, encoding='UTF-8', converter=None, num_retries=3, delay=1, backoff=2, logger=None)
This is a wrapper method for Get with retring capability.

+To avoid various errors while retrieving bulk entities by retring
+specified times.

+Note this method relies on the time module and so may not be usable
+by default in Python2.2.

+Args:
+  num_retries: integer The retry count.
+  delay: integer The initial delay for retring.
+  backoff: integer how much the delay should lengthen after each failure.
+  logger: an object which has a debug(str) method to receive logging
+          messages. Recommended that you pass in the logging module.
+Raises:
+  ValueError if any of the parameters has an invalid value.
+  RanOutOfTries on failure after number of retries.
+
Post(self, data, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=4, media_source=None, converter=None)
Insert or update  data into a GData service at the given URI.
 
Args:
@@ -861,7 +894,7 @@ Args:
  token: string or instance of a ClientLoginToken.
-
SetOAuthInputParameters(self, signature_method, consumer_key, consumer_secret=None, rsa_key=None, two_legged_oauth=False)
Sets parameters required for using OAuth authentication mechanism.
+
SetOAuthInputParameters(self, signature_method, consumer_key, consumer_secret=None, rsa_key=None, two_legged_oauth=False, requestor_id=None)
Sets parameters required for using OAuth authentication mechanism.
 
NOTE: Though consumer_secret and rsa_key are optional, either of the two
is required depending on the value of the signature_method.
@@ -878,7 +911,10 @@       Required only for HMAC_SHA1 signature method.
  rsa_key: string (optional) Private key required for RSA_SHA1 signature
      method.
-  two_legged_oauth: string (default=False) Enables two-legged OAuth process.
+  two_legged_oauth: boolean (optional) Enables two-legged OAuth process.
+  requestor_id: string (optional) User email adress to make requests on
+      their behalf.  This parameter should only be set when two_legged_oauth
+      is True.
SetOAuthToken(self, oauth_token)
Attempts to set the current token and add it to the token store.
 
@@ -892,18 +928,24 @@ Args:
  request_token: gdata.auth.OAuthToken OAuth request token.
-
UpgradeToOAuthAccessToken(self, authorized_request_token=None, request_url='https://www.google.com/accounts/OAuthGetAccessToken', oauth_version='1.0')
Upgrades the authorized request token to an access token.
+
UpgradeToOAuthAccessToken(self, authorized_request_token=None, request_url='https://www.google.com/accounts/OAuthGetAccessToken', oauth_version='1.0', oauth_verifier=None)
Upgrades the authorized request token to an access token and returns it
 
Args:
  authorized_request_token: gdata.auth.OAuthToken (optional) OAuth request
      token. If not specified, then the current token will be used if it is
      of type <gdata.auth.OAuthToken>, else it is found by looking in the
      token_store by looking for a token for the current scope.
+  request_url: Access token URL. The default is
+      'https://www.google.com/accounts/OAuthGetAccessToken'.
  oauth_version: str (default='1.0') oauth_version parameter. All other
      'oauth_' parameters are added by default. This parameter too, is
      added by default but here you can override it's value.
-  request_url: Access token URL. The default is
-      'https://www.google.com/accounts/OAuthGetAccessToken'.
+  oauth_verifier: str (optional) If present, it is assumed that the client
+    will use the OAuth v1.0a protocol which includes passing the
+    oauth_verifier (as returned by the SP) in the access token step.

+Returns:
+  Access token
      
Raises:
  NonOAuthToken if the user's authorized request token is not an OAuth
@@ -1005,7 +1047,7 @@   username: str
  password: str
-
request(self, operation, url, data=None, headers=None, url_params=None)
+
request(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
use_basic_auth(self, username, password, scopes=None)
@@ -1059,7 +1101,7 @@
Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
@@ -1083,6 +1125,8 @@
__str__(...)
x.__str__() <==> str(x)
+
__unicode__(...)
+
Data descriptors inherited from exceptions.BaseException:
__dict__
@@ -1090,7 +1134,6 @@
args
message
-
exception message

@@ -1117,7 +1160,7 @@
Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
@@ -1141,6 +1184,8 @@
__str__(...)
x.__str__() <==> str(x)
+
__unicode__(...)
+
Data descriptors inherited from exceptions.BaseException:
__dict__
@@ -1148,7 +1193,6 @@
args
message
-
exception message

@@ -1175,7 +1219,7 @@
Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
@@ -1199,6 +1243,8 @@
__str__(...)
x.__str__() <==> str(x)
+
__unicode__(...)
+
Data descriptors inherited from exceptions.BaseException:
__dict__
@@ -1206,7 +1252,6 @@
args
message
-
exception message

@@ -1312,8 +1357,6 @@
__gt__(...)
x.__gt__(y) <==> x>y
-
__hash__(...)
x.__hash__() <==> hash(x)
-
__iter__(...)
x.__iter__() <==> iter(x)
__le__(...)
x.__le__(y) <==> x<=y
@@ -1328,6 +1371,8 @@
__setitem__(...)
x.__setitem__(i, y) <==> x[i]=y
+
__sizeof__(...)
D.__sizeof__() -> size of D in memory, in bytes
+
clear(...)
D.clear() -> None.  Remove all items from D.
copy(...)
D.copy() -> a shallow copy of D
@@ -1361,15 +1406,76 @@
Data and other attributes inherited from __builtin__.dict:
-
__new__ = <built-in method __new__ of type object at 0x72b260>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__hash__ = None
+ +
__new__ = <built-in method __new__ of type object at 0x7569a0>
T.__new__(S, ...) -> a new object with type S, a subtype of T
-
fromkeys = <built-in method fromkeys of type object at 0xd04de0>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
+
fromkeys = <built-in method fromkeys of type object at 0xd525f0>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
v defaults to None.

+ + +
 
+class RanOutOfTries(Error)
    
Method resolution order:
+
RanOutOfTries
+
Error
+
exceptions.Exception
+
exceptions.BaseException
+
__builtin__.object
+
+
+Data descriptors inherited from Error:
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from exceptions.Exception:
+
__init__(...)
x.__init__(...) initializes x; see x.__class__.__doc__ for signature
+ +
+Data and other attributes inherited from exceptions.Exception:
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+ +
+Methods inherited from exceptions.BaseException:
+
__delattr__(...)
x.__delattr__('name') <==> del x.name
+ +
__getattribute__(...)
x.__getattribute__('name') <==> x.name
+ +
__getitem__(...)
x.__getitem__(y) <==> x[y]
+ +
__getslice__(...)
x.__getslice__(i, j) <==> x[i:j]

+Use of negative indices is not supported.
+ +
__reduce__(...)
+ +
__repr__(...)
x.__repr__() <==> repr(x)
+ +
__setattr__(...)
x.__setattr__('name', value) <==> x.name = value
+ +
__setstate__(...)
+ +
__str__(...)
x.__str__() <==> str(x)
+ +
__unicode__(...)
+ +
+Data descriptors inherited from exceptions.BaseException:
+
__dict__
+
+
args
+
+
message
+
+

+ + + @@ -1391,7 +1497,7 @@
Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
@@ -1415,6 +1521,8 @@
__str__(...)
x.__str__() <==> str(x)
+
__unicode__(...)
+
Data descriptors inherited from exceptions.BaseException:
__dict__
@@ -1422,7 +1530,6 @@
args
message
-
exception message
 
class RequestError(Error)
    

@@ -1450,7 +1557,7 @@
Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
@@ -1474,6 +1581,8 @@
__str__(...)
x.__str__() <==> str(x)
+
__unicode__(...)
+
Data descriptors inherited from exceptions.BaseException:
__dict__
@@ -1481,7 +1590,6 @@
args
message
-
exception message

@@ -1508,7 +1616,7 @@
Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
@@ -1532,6 +1640,8 @@
__str__(...)
x.__str__() <==> str(x)
+
__unicode__(...)
+
Data descriptors inherited from exceptions.BaseException:
__dict__
@@ -1539,7 +1649,6 @@
args
message
-
exception message

@@ -1567,7 +1676,7 @@
Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
@@ -1591,6 +1700,8 @@
__str__(...)
x.__str__() <==> str(x)
+
__unicode__(...)
+
Data descriptors inherited from exceptions.BaseException:
__dict__
@@ -1598,7 +1709,6 @@
args
message
-
exception message

@@ -1625,7 +1735,7 @@
Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
@@ -1649,6 +1759,8 @@
__str__(...)
x.__str__() <==> str(x)
+
__unicode__(...)
+
Data descriptors inherited from exceptions.BaseException:
__dict__
@@ -1656,7 +1768,6 @@
args
message
-
exception message

@@ -1683,7 +1794,7 @@   A tuple containing the token string and a list of scope strings for which
  this token should be valid. If the scope was not included in the URL, the
  tuple will contain (token, None). -
GenerateAuthSubRequestUrl(next, scopes, hd='default', secure=False, session=True, request_url='http://www.google.com/accounts/AuthSubRequest', include_scopes_in_next=True)
Creates a URL to request an AuthSub token to access Google services.
+
GenerateAuthSubRequestUrl(next, scopes, hd='default', secure=False, session=True, request_url='https://www.google.com/accounts/AuthSubRequest', include_scopes_in_next=True)
Creates a URL to request an AuthSub token to access Google services.
 
For more details on AuthSub, see the documentation here:
http://code.google.com/apis/accounts/docs/AuthSub.html
@@ -1706,7 +1817,7 @@       token may only be used once and cannot be upgraded. Default is True.
  request_url: The base of the URL to which the user will be sent to
      authorize this application to access their data. The default is
-      'http://www.google.com/accounts/AuthSubRequest'.
+      'https://www.google.com/accounts/AuthSubRequest'.
  include_scopes_in_next: Boolean if set to true, the 'next' parameter will
      be modified to include the requested scope as a URL parameter. The
      key for the next's scope parameter will be SCOPE_URL_PARAM_NAME. The
@@ -1728,7 +1839,10 @@
        AUTH_SERVER_HOST = 'https://www.google.com'
-CLIENT_LOGIN_SCOPES = {'apps': ['http://www.google.com/a/feeds/', 'https://www.google.com/a/feeds/', 'http://apps-apis.google.com/a/feeds/', 'https://apps-apis.google.com/a/feeds/'], 'blogger': ['http://www.blogger.com/feeds/'], 'cl': ['https://www.google.com/calendar/feeds/', 'http://www.google.com/calendar/feeds/'], 'codesearch': ['http://www.google.com/codesearch/feeds/'], 'cp': ['https://www.google.com/m8/feeds/', 'http://www.google.com/m8/feeds/'], 'finance': ['http://finance.google.com/finance/feeds/'], 'gbase': ['http://base.google.com/base/feeds/', 'http://www.google.com/base/feeds/'], 'health': ['https://www.google.com/health/feeds/'], 'lh2': ['http://picasaweb.google.com/data/'], 'sitemaps': ['https://www.google.com/webmasters/tools/feeds/'], ...}
+CLIENT_LOGIN_SCOPES = {'analytics': ('https://www.google.com/analytics/feeds/',), 'apps': ('http://www.google.com/a/feeds/', 'https://www.google.com/a/feeds/', 'http://apps-apis.google.com/a/feeds/', 'https://apps-apis.google.com/a/feeds/'), 'blogger': ('http://www.blogger.com/feeds/',), 'books': ('http://www.google.com/books/feeds/',), 'cl': ('https://www.google.com/calendar/feeds/', 'http://www.google.com/calendar/feeds/'), 'code': ('http://code.google.com/feeds/issues',), 'codesearch': ('http://www.google.com/codesearch/feeds/',), 'cp': ('https://www.google.com/m8/feeds/', 'http://www.google.com/m8/feeds/'), 'finance': ('http://finance.google.com/finance/feeds/',), 'gbase': ('http://base.google.com/base/feeds/', 'http://www.google.com/base/feeds/'), ...}
+DEFAULT_BACKOFF = 2
+DEFAULT_DELAY = 1
+DEFAULT_NUM_RETRIES = 3
OAUTH_SCOPE_URL_PARAM_NAME = 'oauth_token_scope'
SCOPE_URL_PARAM_NAME = 'authsub_token_scope'
__author__ = 'api.jscudder (Jeffrey Scudder)'

diff -Nru python-gdata-1.2.4/pydocs/gdata.sites.client.html python-gdata-2.0.8/pydocs/gdata.sites.client.html --- python-gdata-1.2.4/pydocs/gdata.sites.client.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.sites.client.html 2010-02-26 23:16:48.000000000 +0000 @@ -0,0 +1,774 @@ + + +Python: module gdata.sites.client + + + + +
 
+ 
gdata.sites.client
index
/usr/local/svn/gdata-python-client/src/gdata/sites/client.py
+

SitesClient extends gdata.client.GDClient to streamline Sites API calls.

+

+ + + + + +
 
+Modules
       
atom
+
gdata
+

+ + + + + +
 
+Classes
       
+
gdata.client.GDClient(atom.client.AtomPubClient) +
+
+
SitesClient +
+
+
+

+ + + + + + + +
 
+class SitesClient(gdata.client.GDClient)
   Client extension for the Google Sites API service.
 
 
Method resolution order:
+
SitesClient
+
gdata.client.GDClient
+
atom.client.AtomPubClient
+
__builtin__.object
+
+
+Methods defined here:
+
CreatePage = create_page(self, kind, title, html='', page_name=None, parent=None, auth_token=None, **kwargs)
+ +
CreateSite = create_site(self, title, description=None, source_site=None, theme=None, uri=None, auth_token=None, **kwargs)
+ +
CreateWebAttachment = create_webattachment(self, src, content_type, title, parent, description=None, auth_token=None, **kwargs)
+ +
DownloadAttachment = download_attachment(self, uri_or_entry, file_path)
+ +
GetAclFeed = get_acl_feed(self, uri=None, auth_token=None, **kwargs)
+ +
GetActivityFeed = get_activity_feed(self, uri=None, auth_token=None, **kwargs)
+ +
GetContentFeed = get_content_feed(self, uri=None, auth_token=None, **kwargs)
+ +
GetRevisionFeed = get_revision_feed(self, entry_or_uri_or_id, auth_token=None, **kwargs)
+ +
GetSiteFeed = get_site_feed(self, uri=None, auth_token=None, **kwargs)
+ +
MakeAclFeedUri = make_acl_feed_uri(self)
+ +
MakeActivityFeedUri = make_activity_feed_uri(self)
+ +
MakeContentFeedUri = make_content_feed_uri(self)
+ +
MakeRevisionFeedUri = make_revision_feed_uri(self)
+ +
MakeSiteFeedUri = make_site_feed_uri(self, site_name=None)
+ +
UploadAttachment = upload_attachment(self, file_handle, parent, content_type=None, title=None, description=None, folder_name=None, auth_token=None, **kwargs)
+ +
__init__(self, site=None, domain=None, auth_token=None, **kwargs)
Constructs a new client for the Sites API.

+Args:
+  site: string (optional) Name (webspace) of the Google Site
+  domain: string (optional) Domain of the (Google Apps hosted) Site.
+      If no domain is given, the Site is assumed to be a consumer Google
+      Site, in which case the value 'site' is used.
+  auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or
+      OAuthToken which authorizes this client to edit the user's data.
+  kwargs: The other parameters to pass to gdata.client.GDClient
+      constructor.
+ +
create_page(self, kind, title, html='', page_name=None, parent=None, auth_token=None, **kwargs)
Creates a new page (specified by kind) on a Google Site.

+Args:
+  kind: string The type of page/item to create. For example, webpage,
+      listpage, comment, announcementspage, filecabinet, etc. The full list
+      of supported kinds can be found in gdata.sites.gdata.SUPPORT_KINDS.
+  title: string Title for the page.
+  html: string (optional) XHTML for the page's content body.
+  page_name: string (optional) The URL page name to set. If not set, the
+      title will be normalized and used as the page's URL path.
+  parent: string or gdata.sites.data.ContentEntry (optional) The parent
+      entry or parent link url to create the page under.
+  auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or
+      OAuthToken which authorizes this client to edit the user's data.
+  kwargs: Other parameters to pass to gdata.client.post().

+Returns:
+  gdata.sites.data.ContentEntry of the created page.
+ +
create_site(self, title, description=None, source_site=None, theme=None, uri=None, auth_token=None, **kwargs)
Creates a new Google Site.

+Note: This feature is only available to Google Apps domains.

+Args:
+  title: string Title for the site.
+  description: string (optional) A description/summary for the site.
+  source_site: string (optional) The site feed URI of the site to copy.
+      This parameter should only be specified when copying a site.
+  theme: string (optional) The name of the theme to create the site with.
+  uri: string (optional) A full site feed URI to override where the site
+      is created/copied. By default, the site will be created under
+      the currently set domain (e.g. self.domain).
+  auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or
+      OAuthToken which authorizes this client to edit the user's data.
+  kwargs: Other parameters to pass to gdata.client.post().

+Returns:
+  gdata.sites.data.SiteEntry of the created site.
+ +
create_webattachment(self, src, content_type, title, parent, description=None, auth_token=None, **kwargs)
Creates a new webattachment within a filecabinet.

+Args:
+  src: string The url of the web attachment.
+  content_type: string The MIME type of the web attachment.
+  title: string The title to name the web attachment.
+  parent: string or gdata.sites.data.ContentEntry (optional) The
+      parent entry or url of the filecabinet to create the attachment under.
+  description: string (optional) A summary/description for the attachment.
+  auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or
+      OAuthToken which authorizes this client to edit the user's data.
+  kwargs: Other parameters to pass to gdata.client.post().

+Returns:
+  gdata.sites.data.ContentEntry of the created page.
+ +
download_attachment(self, uri_or_entry, file_path)
Downloads an attachment file to disk.

+Args:
+  uri_or_entry: string The full URL to download the file from.
+  file_path: string The full path to save the file to.

+Raises:
+  gdata.client.RequestError: on error response from server.
+ +
get_acl_feed(self, uri=None, auth_token=None, **kwargs)
Retrieves the acl feed containing a site's sharing permissions.

+Args:
+  uri: string (optional) A full URI to query the acl feed.
+  auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or
+      OAuthToken which authorizes this client to edit the user's data.
+  kwargs: Other parameters to pass to get_feed().

+Returns:
+  gdata.sites.data.AclFeed
+ +
get_activity_feed(self, uri=None, auth_token=None, **kwargs)
Retrieves the activity feed containing recent Site activity.

+Args:
+  uri: string (optional) A full URI to query the Activity feed.
+  auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or
+      OAuthToken which authorizes this client to edit the user's data.
+  kwargs: Other parameters to pass to get_feed().

+Returns:
+  gdata.sites.data.ActivityFeed
+ +
get_content_feed(self, uri=None, auth_token=None, **kwargs)
Retrieves the content feed containing the current state of site.

+Args:
+  uri: string (optional) A full URI to query the Content feed with.
+  auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or
+      OAuthToken which authorizes this client to edit the user's data.
+  kwargs: Other parameters to pass to get_feed().

+Returns:
+  gdata.sites.data.ContentFeed
+ +
get_revision_feed(self, entry_or_uri_or_id, auth_token=None, **kwargs)
Retrieves the revision feed containing the revision history for a node.

+Args:
+  entry_or_uri_or_id: string or gdata.sites.data.ContentEntry A full URI,
+      content entry node ID, or a content entry object of the entry to
+      retrieve revision information for.
+  auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or
+      OAuthToken which authorizes this client to edit the user's data.
+  kwargs: Other parameters to pass to get_feed().

+Returns:
+  gdata.sites.data.RevisionFeed
+ +
get_site_feed(self, uri=None, auth_token=None, **kwargs)
Retrieves the site feed containing a list of sites a user has access to.

+Args:
+  uri: string (optional) A full URI to query the site feed.
+  auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or
+      OAuthToken which authorizes this client to edit the user's data.
+  kwargs: Other parameters to pass to get_feed().

+Returns:
+  gdata.sites.data.SiteFeed
+ +
make_acl_feed_uri(self)
+ +
make_activity_feed_uri(self)
+ +
make_content_feed_uri(self)
+ +
make_revision_feed_uri(self)
+ +
make_site_feed_uri(self, site_name=None)
+ +
upload_attachment(self, file_handle, parent, content_type=None, title=None, description=None, folder_name=None, auth_token=None, **kwargs)
Uploads an attachment to a parent page.

+Args:
+  file_handle: MediaSource or string A gdata.data.MediaSource object
+      containing the file to be uploaded or the full path name to the
+      file on disk.
+  parent: gdata.sites.data.ContentEntry or string The parent page to
+      upload the file to or the full URI of the entry's self link.
+  content_type: string (optional) The MIME type of the file
+      (e.g 'application/pdf'). This should be provided if file is not a
+      MediaSource object.
+  title: string (optional) The title to name the attachment. If not
+      included, the filepath or media source's filename is used.
+  description: string (optional) A summary/description for the attachment.
+  folder_name: string (optional) The name of an existing folder to upload
+      the attachment to. This only applies when the parent parameter points
+      to a filecabinet entry.
+  auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or
+      OAuthToken which authorizes this client to edit the user's data.
+  kwargs: Other parameters to pass to __upload().

+Returns:
+  A gdata.sites.data.ContentEntry containing information about the created
+  attachment.
+ +
+Data and other attributes defined here:
+
api_version = '1.1'
+ +
auth_scopes = ('http://sites.google.com/feeds/', 'https://sites.google.com/feeds/')
+ +
auth_service = 'jotspot'
+ +
domain = 'site'
+ +
host = 'sites.google.com'
+ +
+Methods inherited from gdata.client.GDClient:
+
ClientLogin = client_login(self, email, password, source, service=None, account_type='HOSTED_OR_GOOGLE', auth_url=<atom.http_core.Uri object at 0xb8ea90>, captcha_token=None, captcha_response=None)
Performs an auth request using the user's email address and password.

+In order to modify user specific data and read user private data, your
+application must be authorized by the user. One way to demonstrage
+authorization is by including a Client Login token in the Authorization
+HTTP header of all requests. This method requests the Client Login token
+by sending the user's email address, password, the name of the
+application, and the service code for the service which will be accessed
+by the application. If the username and password are correct, the server
+will respond with the client login code and a new ClientLoginToken
+object will be set in the client's auth_token member. With the auth_token
+set, future requests from this client will include the Client Login
+token.

+For a list of service names, see 
+http://code.google.com/apis/gdata/faq.html#clientlogin
+For more information on Client Login, see:
+http://code.google.com/apis/accounts/docs/AuthForInstalledApps.html

+Args:
+  email: str The user's email address or username.
+  password: str The password for the user's account.
+  source: str The name of your application. This can be anything you
+          like but should should give some indication of which app is
+          making the request.
+  service: str The service code for the service you would like to access.
+           For example, 'cp' for contacts, 'cl' for calendar. For a full
+           list see
+           http://code.google.com/apis/gdata/faq.html#clientlogin
+           If you are using a subclass of the gdata.client.GDClient, the
+           service will usually be filled in for you so you do not need
+           to specify it. For example see BloggerClient,
+           SpreadsheetsClient, etc.
+  account_type: str (optional) The type of account which is being
+                authenticated. This can be either 'GOOGLE' for a Google
+                Account, 'HOSTED' for a Google Apps Account, or the
+                default 'HOSTED_OR_GOOGLE' which will select the Google
+                Apps Account if the same email address is used for both
+                a Google Account and a Google Apps Account.
+  auth_url: str (optional) The URL to which the login request should be
+            sent.
+  captcha_token: str (optional) If a previous login attempt was reponded
+                 to with a CAPTCHA challenge, this is the token which
+                 identifies the challenge (from the CAPTCHA's URL).
+  captcha_response: str (optional) If a previous login attempt was
+                    reponded to with a CAPTCHA challenge, this is the
+                    response text which was contained in the challenge.

+  Returns:
+    None

+  Raises:
+    A RequestError or one of its suclasses: BadAuthentication,
+    BadAuthenticationServiceURL, ClientLoginFailed,
+    ClientLoginTokenMissing, or CaptchaChallenge
+ +
Delete = delete(self, entry_or_uri, auth_token=None, force=False, **kwargs)
+ +
GetAccessToken = get_access_token(self, request_token, url='https://www.google.com/accounts/OAuthGetAccessToken')
Exchanges an authorized OAuth request token for an access token.

+Contacts the Google OAuth server to upgrade a previously authorized
+request token. Once the request token is upgraded to an access token,
+the access token may be used to access the user's data.

+For more details, see the Google Accounts OAuth documentation:
+http://code.google.com/apis/accounts/docs/OAuth.html#AccessToken

+Args:
+  request_token: An OAuth token which has been authorized by the user.
+  url: (optional) The URL to which the upgrade request should be sent.
+      Defaults to: https://www.google.com/accounts/OAuthAuthorizeToken
+ +
GetEntry = get_entry(self, uri, auth_token=None, converter=None, desired_class=<class 'gdata.data.GDEntry'>, etag=None, **kwargs)
+ +
GetFeed = get_feed(self, uri, auth_token=None, converter=None, desired_class=<class 'gdata.data.GDFeed'>, **kwargs)
+ +
GetNext = get_next(self, feed, auth_token=None, converter=None, desired_class=None, **kwargs)
Fetches the next set of results from the feed.

+When requesting a feed, the number of entries returned is capped at a
+service specific default limit (often 25 entries). You can specify your
+own entry-count cap using the max-results URL query parameter. If there
+are more results than could fit under max-results, the feed will contain
+a next link. This method performs a GET against this next results URL.

+Returns:
+  A new feed object containing the next set of entries in this feed.
+ +
GetOAuthToken = get_oauth_token(self, scopes, next, consumer_key, consumer_secret=None, rsa_private_key=None, url='https://www.google.com/accounts/OAuthGetRequestToken')
Obtains an OAuth request token to allow the user to authorize this app.

+Once this client has a request token, the user can authorize the request
+token by visiting the authorization URL in their browser. After being
+redirected back to this app at the 'next' URL, this app can then exchange
+the authorized request token for an access token.

+For more information see the documentation on Google Accounts with OAuth:
+http://code.google.com/apis/accounts/docs/OAuth.html#AuthProcess

+Args:
+  scopes: list of strings or atom.http_core.Uri objects which specify the
+      URL prefixes which this app will be accessing. For example, to access
+      the Google Calendar API, you would want to use scopes:
+      ['https://www.google.com/calendar/feeds/',
+       'http://www.google.com/calendar/feeds/']
+  next: str or atom.http_core.Uri object, The URL which the user's browser
+      should be sent to after they authorize access to their data. This
+      should be a URL in your application which will read the token
+      information from the URL and upgrade the request token to an access
+      token.
+  consumer_key: str This is the identifier for this application which you
+      should have received when you registered your application with Google
+      to use OAuth.
+  consumer_secret: str (optional) The shared secret between your app and
+      Google which provides evidence that this request is coming from you
+      application and not another app. If present, this libraries assumes
+      you want to use an HMAC signature to verify requests. Keep this data
+      a secret.
+  rsa_private_key: str (optional) The RSA private key which is used to
+      generate a digital signature which is checked by Google's server. If
+      present, this library assumes that you want to use an RSA signature
+      to verify requests. Keep this data a secret.
+  url: The URL to which a request for a token should be made. The default
+      is Google's OAuth request token provider.
+ +
ModifyRequest = modify_request(self, http_request)
Adds or changes request before making the HTTP request.

+This client will add the API version if it is specified.
+Subclasses may override this method to add their own request
+modifications before the request is made.
+ +
Post = post(self, entry, uri, auth_token=None, converter=None, desired_class=None, **kwargs)
+ +
Request = request(self, method=None, uri=None, auth_token=None, http_request=None, converter=None, desired_class=None, redirects_remaining=4, **kwargs)
Make an HTTP request to the server.

+See also documentation for atom.client.AtomPubClient.request.

+If a 302 redirect is sent from the server to the client, this client
+assumes that the redirect is in the form used by the Google Calendar API.
+The same request URI and method will be used as in the original request,
+but a gsessionid URL parameter will be added to the request URI with
+the value provided in the server's 302 redirect response. If the 302
+redirect is not in the format specified by the Google Calendar API, a
+RedirectError will be raised containing the body of the server's
+response.

+The method calls the client's modify_request method to make any changes
+required by the client before the request is made. For example, a
+version 2 client could add a GData-Version: 2 header to the request in
+its modify_request method.

+Args:
+  method: str The HTTP verb for this request, usually 'GET', 'POST',
+          'PUT', or 'DELETE'
+  uri: atom.http_core.Uri, str, or unicode The URL being requested.
+  auth_token: An object which sets the Authorization HTTP header in its
+              modify_request method. Recommended classes include
+              gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken
+              among others.
+  http_request: (optional) atom.http_core.HttpRequest
+  converter: function which takes the body of the response as it's only
+             argument and returns the desired object.
+  desired_class: class descended from atom.core.XmlElement to which a
+                 successful response should be converted. If there is no
+                 converter function specified (converter=None) then the
+                 desired_class will be used in calling the
+                 atom.core.parse function. If neither
+                 the desired_class nor the converter is specified, an
+                 HTTP reponse object will be returned.
+  redirects_remaining: (optional) int, if this number is 0 and the
+                       server sends a 302 redirect, the request method
+                       will raise an exception. This parameter is used in
+                       recursive request calls to avoid an infinite loop.

+Any additional arguments are passed through to
+atom.client.AtomPubClient.request.

+Returns:
+  An HTTP response object (see atom.http_core.HttpResponse for a
+  description of the object's interface) if no converter was
+  specified and no desired_class was specified. If a converter function
+  was provided, the results of calling the converter are returned. If no
+  converter was specified but a desired_class was provided, the response
+  body will be converted to the class using
+  atom.core.parse.
+ +
RequestClientLoginToken = request_client_login_token(self, email, password, source, service=None, account_type='HOSTED_OR_GOOGLE', auth_url=<atom.http_core.Uri object at 0xb8ea50>, captcha_token=None, captcha_response=None)
+ +
RevokeToken = revoke_token(self, token=None, url=<atom.http_core.Uri object at 0xb8eb10>)
Requests that the token be invalidated.

+This method can be used for both AuthSub and OAuth tokens (to invalidate
+a ClientLogin token, the user must change their password).

+Returns:
+  True if the server responded with a 200.

+Raises:
+  A RequestError if the server responds with a non-200 status.
+ +
Update = update(self, entry, auth_token=None, force=False, **kwargs)
Edits the entry on the server by sending the XML for this entry.

+Performs a PUT and converts the response to a new entry object with a
+matching class to the entry passed in.

+Args:
+  entry:
+  auth_token:
+  force: boolean stating whether an update should be forced. Defaults to
+         False. Normally, if a change has been made since the passed in
+         entry was obtained, the server will not overwrite the entry since
+         the changes were based on an obsolete version of the entry.
+         Setting force to True will cause the update to silently
+         overwrite whatever version is present.

+Returns:
+  A new Entry object of a matching type to the entry which was passed in.
+ +
UpgradeToken = upgrade_token(self, token=None, url=<atom.http_core.Uri object at 0xb8ead0>)
Asks the Google auth server for a multi-use AuthSub token.

+For details on AuthSub, see:
+http://code.google.com/apis/accounts/docs/AuthSub.html

+Args:
+  token: gdata.gauth.AuthSubToken or gdata.gauth.SecureAuthSubToken
+      (optional) If no token is passed in, the client's auth_token member
+      is used to request the new token. The token object will be modified
+      to contain the new session token string.
+  url: str or atom.http_core.Uri (optional) The URL to which the token
+      upgrade request should be sent. Defaults to:
+      https://www.google.com/accounts/AuthSubSessionToken

+Returns:
+  The upgraded gdata.gauth.AuthSubToken object.
+ +
client_login(self, email, password, source, service=None, account_type='HOSTED_OR_GOOGLE', auth_url=<atom.http_core.Uri object at 0xb8ea90>, captcha_token=None, captcha_response=None)
Performs an auth request using the user's email address and password.

+In order to modify user specific data and read user private data, your
+application must be authorized by the user. One way to demonstrage
+authorization is by including a Client Login token in the Authorization
+HTTP header of all requests. This method requests the Client Login token
+by sending the user's email address, password, the name of the
+application, and the service code for the service which will be accessed
+by the application. If the username and password are correct, the server
+will respond with the client login code and a new ClientLoginToken
+object will be set in the client's auth_token member. With the auth_token
+set, future requests from this client will include the Client Login
+token.

+For a list of service names, see 
+http://code.google.com/apis/gdata/faq.html#clientlogin
+For more information on Client Login, see:
+http://code.google.com/apis/accounts/docs/AuthForInstalledApps.html

+Args:
+  email: str The user's email address or username.
+  password: str The password for the user's account.
+  source: str The name of your application. This can be anything you
+          like but should should give some indication of which app is
+          making the request.
+  service: str The service code for the service you would like to access.
+           For example, 'cp' for contacts, 'cl' for calendar. For a full
+           list see
+           http://code.google.com/apis/gdata/faq.html#clientlogin
+           If you are using a subclass of the gdata.client.GDClient, the
+           service will usually be filled in for you so you do not need
+           to specify it. For example see BloggerClient,
+           SpreadsheetsClient, etc.
+  account_type: str (optional) The type of account which is being
+                authenticated. This can be either 'GOOGLE' for a Google
+                Account, 'HOSTED' for a Google Apps Account, or the
+                default 'HOSTED_OR_GOOGLE' which will select the Google
+                Apps Account if the same email address is used for both
+                a Google Account and a Google Apps Account.
+  auth_url: str (optional) The URL to which the login request should be
+            sent.
+  captcha_token: str (optional) If a previous login attempt was reponded
+                 to with a CAPTCHA challenge, this is the token which
+                 identifies the challenge (from the CAPTCHA's URL).
+  captcha_response: str (optional) If a previous login attempt was
+                    reponded to with a CAPTCHA challenge, this is the
+                    response text which was contained in the challenge.

+  Returns:
+    None

+  Raises:
+    A RequestError or one of its suclasses: BadAuthentication,
+    BadAuthenticationServiceURL, ClientLoginFailed,
+    ClientLoginTokenMissing, or CaptchaChallenge
+ +
delete(self, entry_or_uri, auth_token=None, force=False, **kwargs)
+ +
get_access_token(self, request_token, url='https://www.google.com/accounts/OAuthGetAccessToken')
Exchanges an authorized OAuth request token for an access token.

+Contacts the Google OAuth server to upgrade a previously authorized
+request token. Once the request token is upgraded to an access token,
+the access token may be used to access the user's data.

+For more details, see the Google Accounts OAuth documentation:
+http://code.google.com/apis/accounts/docs/OAuth.html#AccessToken

+Args:
+  request_token: An OAuth token which has been authorized by the user.
+  url: (optional) The URL to which the upgrade request should be sent.
+      Defaults to: https://www.google.com/accounts/OAuthAuthorizeToken
+ +
get_entry(self, uri, auth_token=None, converter=None, desired_class=<class 'gdata.data.GDEntry'>, etag=None, **kwargs)
+ +
get_feed(self, uri, auth_token=None, converter=None, desired_class=<class 'gdata.data.GDFeed'>, **kwargs)
+ +
get_next(self, feed, auth_token=None, converter=None, desired_class=None, **kwargs)
Fetches the next set of results from the feed.

+When requesting a feed, the number of entries returned is capped at a
+service specific default limit (often 25 entries). You can specify your
+own entry-count cap using the max-results URL query parameter. If there
+are more results than could fit under max-results, the feed will contain
+a next link. This method performs a GET against this next results URL.

+Returns:
+  A new feed object containing the next set of entries in this feed.
+ +
get_oauth_token(self, scopes, next, consumer_key, consumer_secret=None, rsa_private_key=None, url='https://www.google.com/accounts/OAuthGetRequestToken')
Obtains an OAuth request token to allow the user to authorize this app.

+Once this client has a request token, the user can authorize the request
+token by visiting the authorization URL in their browser. After being
+redirected back to this app at the 'next' URL, this app can then exchange
+the authorized request token for an access token.

+For more information see the documentation on Google Accounts with OAuth:
+http://code.google.com/apis/accounts/docs/OAuth.html#AuthProcess

+Args:
+  scopes: list of strings or atom.http_core.Uri objects which specify the
+      URL prefixes which this app will be accessing. For example, to access
+      the Google Calendar API, you would want to use scopes:
+      ['https://www.google.com/calendar/feeds/',
+       'http://www.google.com/calendar/feeds/']
+  next: str or atom.http_core.Uri object, The URL which the user's browser
+      should be sent to after they authorize access to their data. This
+      should be a URL in your application which will read the token
+      information from the URL and upgrade the request token to an access
+      token.
+  consumer_key: str This is the identifier for this application which you
+      should have received when you registered your application with Google
+      to use OAuth.
+  consumer_secret: str (optional) The shared secret between your app and
+      Google which provides evidence that this request is coming from you
+      application and not another app. If present, this libraries assumes
+      you want to use an HMAC signature to verify requests. Keep this data
+      a secret.
+  rsa_private_key: str (optional) The RSA private key which is used to
+      generate a digital signature which is checked by Google's server. If
+      present, this library assumes that you want to use an RSA signature
+      to verify requests. Keep this data a secret.
+  url: The URL to which a request for a token should be made. The default
+      is Google's OAuth request token provider.
+ +
modify_request(self, http_request)
Adds or changes request before making the HTTP request.

+This client will add the API version if it is specified.
+Subclasses may override this method to add their own request
+modifications before the request is made.
+ +
post(self, entry, uri, auth_token=None, converter=None, desired_class=None, **kwargs)
+ +
request(self, method=None, uri=None, auth_token=None, http_request=None, converter=None, desired_class=None, redirects_remaining=4, **kwargs)
Make an HTTP request to the server.

+See also documentation for atom.client.AtomPubClient.request.

+If a 302 redirect is sent from the server to the client, this client
+assumes that the redirect is in the form used by the Google Calendar API.
+The same request URI and method will be used as in the original request,
+but a gsessionid URL parameter will be added to the request URI with
+the value provided in the server's 302 redirect response. If the 302
+redirect is not in the format specified by the Google Calendar API, a
+RedirectError will be raised containing the body of the server's
+response.

+The method calls the client's modify_request method to make any changes
+required by the client before the request is made. For example, a
+version 2 client could add a GData-Version: 2 header to the request in
+its modify_request method.

+Args:
+  method: str The HTTP verb for this request, usually 'GET', 'POST',
+          'PUT', or 'DELETE'
+  uri: atom.http_core.Uri, str, or unicode The URL being requested.
+  auth_token: An object which sets the Authorization HTTP header in its
+              modify_request method. Recommended classes include
+              gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken
+              among others.
+  http_request: (optional) atom.http_core.HttpRequest
+  converter: function which takes the body of the response as it's only
+             argument and returns the desired object.
+  desired_class: class descended from atom.core.XmlElement to which a
+                 successful response should be converted. If there is no
+                 converter function specified (converter=None) then the
+                 desired_class will be used in calling the
+                 atom.core.parse function. If neither
+                 the desired_class nor the converter is specified, an
+                 HTTP reponse object will be returned.
+  redirects_remaining: (optional) int, if this number is 0 and the
+                       server sends a 302 redirect, the request method
+                       will raise an exception. This parameter is used in
+                       recursive request calls to avoid an infinite loop.

+Any additional arguments are passed through to
+atom.client.AtomPubClient.request.

+Returns:
+  An HTTP response object (see atom.http_core.HttpResponse for a
+  description of the object's interface) if no converter was
+  specified and no desired_class was specified. If a converter function
+  was provided, the results of calling the converter are returned. If no
+  converter was specified but a desired_class was provided, the response
+  body will be converted to the class using
+  atom.core.parse.
+ +
request_client_login_token(self, email, password, source, service=None, account_type='HOSTED_OR_GOOGLE', auth_url=<atom.http_core.Uri object at 0xb8ea50>, captcha_token=None, captcha_response=None)
+ +
revoke_token(self, token=None, url=<atom.http_core.Uri object at 0xb8eb10>)
Requests that the token be invalidated.

+This method can be used for both AuthSub and OAuth tokens (to invalidate
+a ClientLogin token, the user must change their password).

+Returns:
+  True if the server responded with a 200.

+Raises:
+  A RequestError if the server responds with a non-200 status.
+ +
update(self, entry, auth_token=None, force=False, **kwargs)
Edits the entry on the server by sending the XML for this entry.

+Performs a PUT and converts the response to a new entry object with a
+matching class to the entry passed in.

+Args:
+  entry:
+  auth_token:
+  force: boolean stating whether an update should be forced. Defaults to
+         False. Normally, if a change has been made since the passed in
+         entry was obtained, the server will not overwrite the entry since
+         the changes were based on an obsolete version of the entry.
+         Setting force to True will cause the update to silently
+         overwrite whatever version is present.

+Returns:
+  A new Entry object of a matching type to the entry which was passed in.
+ +
upgrade_token(self, token=None, url=<atom.http_core.Uri object at 0xb8ead0>)
Asks the Google auth server for a multi-use AuthSub token.

+For details on AuthSub, see:
+http://code.google.com/apis/accounts/docs/AuthSub.html

+Args:
+  token: gdata.gauth.AuthSubToken or gdata.gauth.SecureAuthSubToken
+      (optional) If no token is passed in, the client's auth_token member
+      is used to request the new token. The token object will be modified
+      to contain the new session token string.
+  url: str or atom.http_core.Uri (optional) The URL to which the token
+      upgrade request should be sent. Defaults to:
+      https://www.google.com/accounts/AuthSubSessionToken

+Returns:
+  The upgraded gdata.gauth.AuthSubToken object.
+ +
+Methods inherited from atom.client.AtomPubClient:
+
Get = get(self, uri=None, auth_token=None, http_request=None, **kwargs)
Performs a request using the GET method, returns an HTTP response.
+ +
Put = put(self, uri=None, data=None, auth_token=None, http_request=None, **kwargs)
Sends data using the PUT method, returns an HTTP response.
+ +
get(self, uri=None, auth_token=None, http_request=None, **kwargs)
Performs a request using the GET method, returns an HTTP response.
+ +
put(self, uri=None, data=None, auth_token=None, http_request=None, **kwargs)
Sends data using the PUT method, returns an HTTP response.
+ +
+Data descriptors inherited from atom.client.AtomPubClient:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Data and other attributes inherited from atom.client.AtomPubClient:
+
auth_token = None
+ +
ssl = False
+ +

+ + + + + +
 
+Data
       ACL_FEED_TEMPLATE = '/feeds/acl/site/%s/%s/'
+ACTIVITY_FEED_TEMPLATE = '/feeds/activity/%s/%s/'
+CONTENT_FEED_TEMPLATE = '/feeds/content/%s/%s/'
+REVISION_FEED_TEMPLATE = '/feeds/revision/%s/%s/'
+SITE_FEED_TEMPLATE = '/feeds/site/%s/'
+__author__ = 'e.bidelman (Eric Bidelman)'

+ + + + + +
 
+Author
       e.bidelman (Eric Bidelman)
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.sites.data.html python-gdata-2.0.8/pydocs/gdata.sites.data.html --- python-gdata-1.2.4/pydocs/gdata.sites.data.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.sites.data.html 2010-02-26 23:16:48.000000000 +0000 @@ -0,0 +1,6031 @@ + + +Python: module gdata.sites.data + + + + +
 
+ 
gdata.sites.data
index
/usr/local/svn/gdata-python-client/src/gdata/sites/data.py
+

Data model classes for parsing and generating XML for the Sites Data API.

+

+ + + + + +
 
+Modules
       
atom
+
gdata
+

+ + + + + +
 
+Classes
       
+
atom.core.XmlElement(__builtin__.object) +
+
+
Column +
Data +
Deleted +
Field +
Header +
InReplyTo +
PageName +
Publisher +
Revision +
SiteName +
Theme +
Worksheet +
+
+
atom.data.Content(atom.data.Text) +
+
+
Content +
+
+
atom.data.Summary(atom.data.Text) +
+
+
Summary +
+
+
gdata.acl.data.AclEntry(gdata.data.GDEntry) +
+
+
AclEntry +
+
+
gdata.acl.data.AclFeed(gdata.data.GDFeed) +
+
+
AclFeed +
+
+
gdata.data.GDEntry(atom.data.Entry, gdata.data.LinkFinder) +
+
+
BaseSiteEntry +
+
+
ActivityEntry +
ContentEntry +
RevisionEntry +
+
+
SiteEntry +
+
+
gdata.data.GDFeed(atom.data.Feed, gdata.data.LinkFinder) +
+
+
ActivityFeed +
ContentFeed +
RevisionFeed +
SiteFeed +
+
+
+

+ + + + + + + +
 
+class AclEntry(gdata.acl.data.AclEntry)
   Google Sites ACL Entry.
 
 
Method resolution order:
+
AclEntry
+
gdata.acl.data.AclEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes inherited from gdata.acl.data.AclEntry:
+
role = <class 'gdata.acl.data.AclRole'>
Describes the role of an entry in an access control list.
+ +
scope = <class 'gdata.acl.data.AclScope'>
Describes the scope of an entry in an access control list.
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class AclFeed(gdata.acl.data.AclFeed)
   Google Sites ACL Feed.

+The ACL feed can be used to modify the sharing permissions of a Site.
 
 
Method resolution order:
+
AclFeed
+
gdata.acl.data.AclFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.sites.data.AclEntry'>]
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class ActivityEntry(BaseSiteEntry)
   Google Sites Activity Entry.
 
 
Method resolution order:
+
ActivityEntry
+
BaseSiteEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
summary = <class 'gdata.sites.data.Summary'>
Google Sites version of <atom:summary>.
+ +
+Methods inherited from BaseSiteEntry:
+
FindParentLink = find_parent_link(self)
+ +
GetNodeId = get_node_id(self)
+ +
IsDeleted = is_deleted(self)
+ +
Kind = kind(self)
+ +
__init__(self, kind=None, **kwargs)
+ +
find_parent_link(self)
+ +
get_node_id(self)
+ +
is_deleted(self)
+ +
kind(self)
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class ActivityFeed(gdata.data.GDFeed)
   Google Sites Activity Feed.

+The Activity feed is a feed containing recent Site activity.
 
 
Method resolution order:
+
ActivityFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.sites.data.ActivityEntry'>]
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class BaseSiteEntry(gdata.data.GDEntry)
   Google Sites Entry.
 
 
Method resolution order:
+
BaseSiteEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Methods defined here:
+
FindParentLink = find_parent_link(self)
+ +
GetNodeId = get_node_id(self)
+ +
IsDeleted = is_deleted(self)
+ +
Kind = kind(self)
+ +
__init__(self, kind=None, **kwargs)
+ +
find_parent_link(self)
+ +
get_node_id(self)
+ +
is_deleted(self)
+ +
kind(self)
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class Column(atom.core.XmlElement)
   Google Sites List Page <gs:column>.
 
 
Method resolution order:
+
Column
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
index = 'index'
+ +
name = 'name'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Content(atom.data.Content)
   Google Sites version of <atom:content> that encapsulates XHTML.
 
 
Method resolution order:
+
Content
+
atom.data.Content
+
atom.data.Text
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, html=None, type=None, **kwargs)
+ +
+Data descriptors defined here:
+
html
+
+
+Data and other attributes inherited from atom.data.Content:
+
src = 'src'
+ +
+Data and other attributes inherited from atom.data.Text:
+
type = 'type'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class ContentEntry(BaseSiteEntry)
   Google Sites Content Entry.
 
 
Method resolution order:
+
ContentEntry
+
BaseSiteEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Methods defined here:
+
FindRevisionLink = find_revison_link(self)
+ +
find_revison_link(self)
+ +
+Data and other attributes defined here:
+
content = <class 'gdata.sites.data.Content'>
Google Sites version of <atom:content> that encapsulates XHTML.
+ +
data = <class 'gdata.sites.data.Data'>
Google Sites List Page <gs:data>.
+ +
deleted = <class 'gdata.sites.data.Deleted'>
Google Sites <gd:deleted>.
+ +
feed_link = <class 'gdata.data.FeedLink'>
The gd:feedLink element.

+Represents a logically nested feed. For example, a calendar feed might
+have a nested feed representing all comments on entries.
+ +
field = [<class 'gdata.sites.data.Field'>]
+ +
header = <class 'gdata.sites.data.Header'>
Google Sites List Page <gs:header>.
+ +
in_reply_to = <class 'gdata.sites.data.InReplyTo'>
Google Sites List Item <thr:in-reply-to>.
+ +
page_name = <class 'gdata.sites.data.PageName'>
Google Sites <sites:pageName>.
+ +
publisher = <class 'gdata.sites.data.Publisher'>
Google Sites <dc:pulisher>.
+ +
revision = <class 'gdata.sites.data.Revision'>
Google Sites <sites:revision>.
+ +
worksheet = <class 'gdata.sites.data.Worksheet'>
Google Sites List Page <gs:worksheet>.
+ +
+Methods inherited from BaseSiteEntry:
+
FindParentLink = find_parent_link(self)
+ +
GetNodeId = get_node_id(self)
+ +
IsDeleted = is_deleted(self)
+ +
Kind = kind(self)
+ +
__init__(self, kind=None, **kwargs)
+ +
find_parent_link(self)
+ +
get_node_id(self)
+ +
is_deleted(self)
+ +
kind(self)
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class ContentFeed(gdata.data.GDFeed)
   Google Sites Content Feed.

+The Content feed is a feed containing the current, editable site content.
 
 
Method resolution order:
+
ContentFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Methods defined here:
+
GetAnnouncementPages = get_announcement_pages(self)
+ +
GetAnnouncements = get_announcements(self)
+ +
GetAttachments = get_attachments(self)
+ +
GetComments = get_comments(self)
+ +
GetFileCabinets = get_file_cabinets(self)
+ +
GetListItems = get_list_items(self)
+ +
GetListPages = get_list_pages(self)
+ +
GetWebattachments = get_webattachments(self)
+ +
GetWebpages = get_webpages(self)
+ +
get_announcement_pages(self)
+ +
get_announcements(self)
+ +
get_attachments(self)
+ +
get_comments(self)
+ +
get_file_cabinets(self)
+ +
get_list_items(self)
+ +
get_list_pages(self)
+ +
get_webattachments(self)
+ +
get_webpages(self)
+ +
+Data and other attributes defined here:
+
entry = [<class 'gdata.sites.data.ContentEntry'>]
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class Data(atom.core.XmlElement)
   Google Sites List Page <gs:data>.
 
 
Method resolution order:
+
Data
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
column = [<class 'gdata.sites.data.Column'>]
+ +
startRow = 'startRow'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Deleted(atom.core.XmlElement)
   Google Sites <gd:deleted>.
 
 
Method resolution order:
+
Deleted
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Field(atom.core.XmlElement)
   Google Sites List Item <gs:field>.
 
 
Method resolution order:
+
Field
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
index = 'index'
+ +
name = 'name'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Header(atom.core.XmlElement)
   Google Sites List Page <gs:header>.
 
 
Method resolution order:
+
Header
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
row = 'row'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class InReplyTo(atom.core.XmlElement)
   Google Sites List Item <thr:in-reply-to>.
 
 
Method resolution order:
+
InReplyTo
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
href = 'href'
+ +
ref = 'ref'
+ +
source = 'source'
+ +
type = 'type'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class PageName(atom.core.XmlElement)
   Google Sites <sites:pageName>.
 
 
Method resolution order:
+
PageName
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Publisher(atom.core.XmlElement)
   Google Sites <dc:pulisher>.
 
 
Method resolution order:
+
Publisher
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Revision(atom.core.XmlElement)
   Google Sites <sites:revision>.
 
 
Method resolution order:
+
Revision
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class RevisionEntry(BaseSiteEntry)
   Google Sites Revision Entry.
 
 
Method resolution order:
+
RevisionEntry
+
BaseSiteEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
content = <class 'gdata.sites.data.Content'>
Google Sites version of <atom:content> that encapsulates XHTML.
+ +
+Methods inherited from BaseSiteEntry:
+
FindParentLink = find_parent_link(self)
+ +
GetNodeId = get_node_id(self)
+ +
IsDeleted = is_deleted(self)
+ +
Kind = kind(self)
+ +
__init__(self, kind=None, **kwargs)
+ +
find_parent_link(self)
+ +
get_node_id(self)
+ +
is_deleted(self)
+ +
kind(self)
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class RevisionFeed(gdata.data.GDFeed)
   Google Sites Revision Feed.

+The Activity feed is a feed containing recent Site activity.
 
 
Method resolution order:
+
RevisionFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.sites.data.RevisionEntry'>]
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class SiteEntry(gdata.data.GDEntry)
   Google Sites Site Feed Entry.
 
 
Method resolution order:
+
SiteEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Methods defined here:
+
FindSourceLink = find_source_link(self)
+ +
find_source_link(self)
+ +
+Data and other attributes defined here:
+
site_name = <class 'gdata.sites.data.SiteName'>
Google Sites <sites:siteName>.
+ +
theme = <class 'gdata.sites.data.Theme'>
Google Sites <sites:theme>.
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class SiteFeed(gdata.data.GDFeed)
   Google Sites Site Feed.

+The Site feed can be used to list a user's sites and create new sites.
 
 
Method resolution order:
+
SiteFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.sites.data.SiteEntry'>]
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class SiteName(atom.core.XmlElement)
   Google Sites <sites:siteName>.
 
 
Method resolution order:
+
SiteName
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Summary(atom.data.Summary)
   Google Sites version of <atom:summary>.
 
 
Method resolution order:
+
Summary
+
atom.data.Summary
+
atom.data.Text
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods defined here:
+
__init__(self, html=None, type=None, text=None, **kwargs)
+ +
+Data descriptors defined here:
+
html
+
+
+Data and other attributes inherited from atom.data.Text:
+
type = 'type'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Theme(atom.core.XmlElement)
   Google Sites <sites:theme>.
 
 
Method resolution order:
+
Theme
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Worksheet(atom.core.XmlElement)
   Google Sites List Page <gs:worksheet>.
 
 
Method resolution order:
+
Worksheet
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
name = 'name'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + +
 
+Data
       ANNOUNCEMENT_KIND_TERM = 'http://schemas.google.com/sites/2008#announcement'
+ANNOUNCEMENT_PAGE_KIND_TERM = 'http://schemas.google.com/sites/2008#announcementspage'
+ATTACHMENT_KIND_TERM = 'http://schemas.google.com/sites/2008#attachment'
+COMMENT_KIND_TERM = 'http://schemas.google.com/sites/2008#comment'
+DC_TERMS_TEMPLATE = '{http://purl.org/dc/terms}%s'
+FILECABINET_KIND_TERM = 'http://schemas.google.com/sites/2008#filecabinet'
+FOLDER_KIND_TERM = 'http://schemas.google.com/sites/2008#folder'
+LISTITEM_KIND_TERM = 'http://schemas.google.com/sites/2008#listitem'
+LISTPAGE_KIND_TERM = 'http://schemas.google.com/sites/2008#listpage'
+SITES_KIND_SCHEME = 'http://schemas.google.com/g/2005#kind'
+SITES_NAMESPACE = 'http://schemas.google.com/sites/2008'
+SITES_PARENT_LINK_REL = 'http://schemas.google.com/sites/2008#parent'
+SITES_REVISION_LINK_REL = 'http://schemas.google.com/sites/2008#revision'
+SITES_SOURCE_LINK_REL = 'http://schemas.google.com/sites/2008#source'
+SITES_TEMPLATE = '{http://schemas.google.com/sites/2008}%s'
+SPREADSHEETS_NAMESPACE = 'http://schemas.google.com/spreadsheets/2006'
+SPREADSHEETS_TEMPLATE = '{http://schemas.google.com/spreadsheets/2006}%s'
+SUPPORT_KINDS = ['announcement', 'announcementspage', 'attachment', 'comment', 'filecabinet', 'listitem', 'listpage', 'webpage', 'webattachment']
+THR_TERMS_TEMPLATE = '{http://purl.org/syndication/thread/1.0}%s'
+WEBATTACHMENT_KIND_TERM = 'http://schemas.google.com/sites/2008#webattachment'
+WEBPAGE_KIND_TERM = 'http://schemas.google.com/sites/2008#webpage'
+XHTML_NAMESPACE = 'http://www.w3.org/1999/xhtml'
+XHTML_TEMPLATE = '{http://www.w3.org/1999/xhtml}%s'
+__author__ = 'e.bidelman (Eric Bidelman)'

+ + + + + +
 
+Author
       e.bidelman (Eric Bidelman)
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.spreadsheet.html python-gdata-2.0.8/pydocs/gdata.spreadsheet.html --- python-gdata-1.2.4/pydocs/gdata.spreadsheet.html 2008-10-16 00:01:57.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.spreadsheet.html 2009-11-25 01:04:14.000000000 +0000 @@ -409,7 +409,7 @@  
 
If the entry is not a BatchEntry, it is converted to a BatchEntry so
-that the batch specific members will be present. 
+that the batch specific members will be present.
 
The id_url_string can be used in place of an entry if the batch operation
applies to a URL. For example query and delete operations require just
@@ -417,7 +417,7 @@ id_url_string is sent instead of an entry, a BatchEntry is created and
added to the feed.
 
-This method also assigns the desired batch id to the entry so that it 
+This method also assigns the desired batch id to the entry so that it
can be referenced in the server's response. If the batch_id_string is
None, this method will assign a batch_id to be the index at which this
entry will be in the feed's entry list.
@@ -425,7 +425,7 @@ Args:
  entry: BatchEntry, atom.Entry, or another Entry flavor (optional) The
      entry which will be sent to the server as part of the batch request.
-      The item must have a valid atom id so that the server knows which 
+      The item must have a valid atom id so that the server knows which
      entry this request references.
  id_url_string: str (optional) The URL of the entry to be acted on. You
      can find this URL in the text member of the atom id for an entry.
@@ -450,17 +450,17 @@

AddDelete(self, url_string=None, entry=None, batch_id_string=None)
Adds a delete request to the batch request feed.
 
This method takes either the url_string which is the atom id of the item
-to be deleted, or the entry itself. The atom id of the entry must be 
+to be deleted, or the entry itself. The atom id of the entry must be
present so that the server knows which entry should be deleted.
 
Args:
  url_string: str (optional) The URL of the entry to be deleted. You can
-     find this URL in the text member of the atom id for an entry. 
+     find this URL in the text member of the atom id for an entry.
  entry: BatchEntry (optional) The entry to be deleted.
  batch_id_string: str (optional)
 
Raises:
-  MissingRequiredParameters: Raised if neither a url_string nor an entry 
+  MissingRequiredParameters: Raised if neither a url_string nor an entry
      are provided in the request.
AddInsert(self, entry, batch_id_string=None)
Add an insert request to the operations in this batch request feed.
@@ -479,7 +479,7 @@
AddQuery(self, url_string=None, entry=None, batch_id_string=None)
Adds a query request to the batch request feed.
 
-This method takes either the url_string which is the query URL 
+This method takes either the url_string which is the query URL
whose results will be added to the result feed. The query URL will
be encapsulated in a BatchEntry, and you may pass in the BatchEntry
with a query URL instead of sending a url_string.
@@ -495,7 +495,7 @@
AddUpdate(self, entry, batch_id_string=None)
Add an update request to the list of batch operations in this feed.
 
Sets the operation type of the entry to insert if it is not already set
-and assigns the desired batch id to the entry so that it can be 
+and assigns the desired batch id to the entry so that it can be
referenced in the server's response.
 
Args:
@@ -718,23 +718,23 @@       class.
  category: list (optional) A list of Category instances
  contributor: list (optional) A list on Contributor instances
-  generator: Generator (optional) 
-  icon: Icon (optional) 
+  generator: Generator (optional)
+  icon: Icon (optional)
  id: Id (optional) The entry's Id element
  link: list (optional) A list of Link instances
-  logo: Logo (optional) 
+  logo: Logo (optional)
  rights: Rights (optional) The entry's Rights element
  subtitle: Subtitle (optional) The entry's subtitle element
  title: Title (optional) the entry's title element
  updated: Updated (optional) the entry's updated element
-  entry: list (optional) A list of the Entry instances contained in the 
+  entry: list (optional) A list of the Entry instances contained in the
      feed.
-  text: String (optional) The text contents of the element. This is the 
-      contents of the Entry's XML text node. 
+  text: String (optional) The text contents of the element. This is the
+      contents of the Entry's XML text node.
      (Example: <foo>This is the text</foo>)
  extension_elements: list (optional) A list of ExtensionElement instances
      which are children of this element.
-  extension_attributes: dict (optional) A dictionary of strings which are 
+  extension_attributes: dict (optional) A dictionary of strings which are
      the values for additional XML attributes of this element.

@@ -948,23 +948,23 @@       class.
  category: list (optional) A list of Category instances
  contributor: list (optional) A list on Contributor instances
-  generator: Generator (optional) 
-  icon: Icon (optional) 
+  generator: Generator (optional)
+  icon: Icon (optional)
  id: Id (optional) The entry's Id element
  link: list (optional) A list of Link instances
-  logo: Logo (optional) 
+  logo: Logo (optional)
  rights: Rights (optional) The entry's Rights element
  subtitle: Subtitle (optional) The entry's subtitle element
  title: Title (optional) the entry's title element
  updated: Updated (optional) the entry's updated element
-  entry: list (optional) A list of the Entry instances contained in the 
+  entry: list (optional) A list of the Entry instances contained in the
      feed.
-  text: String (optional) The text contents of the element. This is the 
-      contents of the Entry's XML text node. 
+  text: String (optional) The text contents of the element. This is the
+      contents of the Entry's XML text node.
      (Example: <foo>This is the text</foo>)
  extension_elements: list (optional) A list of ExtensionElement instances
      which are children of this element.
-  extension_attributes: dict (optional) A dictionary of strings which are 
+  extension_attributes: dict (optional) A dictionary of strings which are
      the values for additional XML attributes of this element.

@@ -1178,23 +1178,23 @@       class.
  category: list (optional) A list of Category instances
  contributor: list (optional) A list on Contributor instances
-  generator: Generator (optional) 
-  icon: Icon (optional) 
+  generator: Generator (optional)
+  icon: Icon (optional)
  id: Id (optional) The entry's Id element
  link: list (optional) A list of Link instances
-  logo: Logo (optional) 
+  logo: Logo (optional)
  rights: Rights (optional) The entry's Rights element
  subtitle: Subtitle (optional) The entry's subtitle element
  title: Title (optional) the entry's title element
  updated: Updated (optional) the entry's updated element
-  entry: list (optional) A list of the Entry instances contained in the 
+  entry: list (optional) A list of the Entry instances contained in the
      feed.
-  text: String (optional) The text contents of the element. This is the 
-      contents of the Entry's XML text node. 
+  text: String (optional) The text contents of the element. This is the
+      contents of the Entry's XML text node.
      (Example: <foo>This is the text</foo>)
  extension_elements: list (optional) A list of ExtensionElement instances
      which are children of this element.
-  extension_attributes: dict (optional) A dictionary of strings which are 
+  extension_attributes: dict (optional) A dictionary of strings which are
      the values for additional XML attributes of this element.

diff -Nru python-gdata-1.2.4/pydocs/gdata.spreadsheets.client.html python-gdata-2.0.8/pydocs/gdata.spreadsheets.client.html --- python-gdata-1.2.4/pydocs/gdata.spreadsheets.client.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.spreadsheets.client.html 2010-02-26 23:16:48.000000000 +0000 @@ -0,0 +1,1032 @@ + + +Python: module gdata.spreadsheets.client + + + + +
 
+ 
gdata.spreadsheets.client
index
/usr/local/svn/gdata-python-client/src/gdata/spreadsheets/client.py
+

Contains a client to communicate with the Google Spreadsheets servers.

+For documentation on the Spreadsheets API, see:
+http://code.google.com/apis/spreadsheets/

+

+ + + + + +
 
+Modules
       
atom
+
gdata
+

+ + + + + +
 
+Classes
       
+
gdata.client.GDClient(atom.client.AtomPubClient) +
+
+
SpreadsheetsClient +
+
+
gdata.client.Query(__builtin__.object) +
+
+
CellQuery +
ListQuery +
+
+
TableQuery +
+
+
SpreadsheetQuery +
+
+
WorksheetQuery +
+
+
+
+
+

+ + + + + +
 
+class CellQuery(gdata.client.Query)
    
Method resolution order:
+
CellQuery
+
gdata.client.Query
+
__builtin__.object
+
+
+Methods defined here:
+
ModifyRequest = modify_request(self, http_request)
+ +
__init__(self, min_row=None, max_row=None, min_col=None, max_col=None, range=None, return_empty=None, **kwargs)
Adds Cells-feed specific query parameters to a request.

+Args:
+  min_row: str or int Positional number of minimum row returned in query.
+  max_row: str or int Positional number of maximum row returned in query.
+  min_col: str or int Positional number of minimum column returned in query.
+  max_col: str or int Positional number of maximum column returned in query.
+  range: str A single cell or a range of cells. Use standard spreadsheet
+         cell-range notations, using a colon to separate start and end of
+         range. Examples:
+         - 'A1' and 'R1C1' both specify only cell A1.
+         - 'D1:F3' and 'R1C4:R3C6' both specify the rectangle of cells with
+           corners at D1 and F3.
+  return_empty: str If 'true' then empty cells will be returned in the feed.
+                If omitted, the default is 'false'.
+ +
modify_request(self, http_request)
+ +
+Data descriptors inherited from gdata.client.Query:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + +
 
+class ListQuery(gdata.client.Query)
    
Method resolution order:
+
ListQuery
+
gdata.client.Query
+
__builtin__.object
+
+
+Methods defined here:
+
ModifyRequest = modify_request(self, http_request)
+ +
__init__(self, order_by=None, reverse=None, sq=None, **kwargs)
Adds List-feed specific query parameters to a request.

+Args:
+  order_by: str Specifies what column to use in ordering the entries in
+            the feed. By position (the default): 'position' returns
+            rows in the order in which they appear in the GUI. Row 1, then
+            row 2, then row 3, and so on. By column:
+            'column:columnName' sorts rows in ascending order based on the
+            values in the column with the given columnName, where
+            columnName is the value in the header row for that column.
+  reverse: str Specifies whether to sort in descending or ascending order.
+           Reverses default sort order: 'true' results in a descending
+           sort; 'false' (the default) results in an ascending sort.
+  sq: str Structured query on the full text in the worksheet.
+      [columnName][binaryOperator][value]
+      Supported binaryOperators are:
+      - (), for overriding order of operations
+      - = or ==, for strict equality
+      - <> or !=, for strict inequality
+      - and or &&, for boolean and
+      - or or ||, for boolean or
+ +
modify_request(self, http_request)
+ +
+Data descriptors inherited from gdata.client.Query:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + +
 
+class SpreadsheetQuery(gdata.client.Query)
    
Method resolution order:
+
SpreadsheetQuery
+
gdata.client.Query
+
__builtin__.object
+
+
+Methods defined here:
+
ModifyRequest = modify_request(self, http_request)
+ +
__init__(self, title=None, title_exact=None, **kwargs)
Adds Spreadsheets feed query parameters to a request.

+Args:
+  title: str Specifies the search terms for the title of a document.
+         This parameter used without title-exact will only submit partial
+         queries, not exact queries.
+  title_exact: str Specifies whether the title query should be taken as an
+               exact string. Meaningless without title. Possible values are
+               'true' and 'false'.
+ +
modify_request(self, http_request)
+ +
+Data descriptors inherited from gdata.client.Query:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + +
 
+class SpreadsheetsClient(gdata.client.GDClient)
    
Method resolution order:
+
SpreadsheetsClient
+
gdata.client.GDClient
+
atom.client.AtomPubClient
+
__builtin__.object
+
+
+Methods defined here:
+
AddRecord = add_record(self, spreadsheet_key, table_id, fields, title=None, auth_token=None, **kwargs)
+ +
AddTable = add_table(self, spreadsheet_key, title, summary, worksheet_name, header_row, num_rows, start_row, insertion_mode, column_headers, auth_token=None, **kwargs)
+ +
AddWorksheet = add_worksheet(self, spreadsheet_key, title, rows, cols, auth_token=None, **kwargs)
+ +
GetRecord = get_record(self, spreadsheet_key, table_id, record_id, desired_class=<class 'gdata.spreadsheets.data.Record'>, auth_token=None, **kwargs)
+ +
GetRecords = get_records(self, spreadsheet_key, table_id, desired_class=<class 'gdata.spreadsheets.data.RecordsFeed'>, auth_token=None, **kwargs)
+ +
GetSpreadsheets = get_spreadsheets(self, auth_token=None, desired_class=<class 'gdata.spreadsheets.data.SpreadsheetsFeed'>, **kwargs)
+ +
GetTables = get_tables(self, spreadsheet_key, desired_class=<class 'gdata.spreadsheets.data.TablesFeed'>, auth_token=None, **kwargs)
+ +
GetWorksheet = get_worksheet(self, spreadsheet_key, worksheet_id, desired_class=<class 'gdata.spreadsheets.data.WorksheetEntry'>, auth_token=None, **kwargs)
+ +
GetWorksheets = get_worksheets(self, spreadsheet_key, auth_token=None, desired_class=<class 'gdata.spreadsheets.data.WorksheetsFeed'>, **kwargs)
+ +
add_record(self, spreadsheet_key, table_id, fields, title=None, auth_token=None, **kwargs)
Adds a new row to the table.

+Args:
+  spreadsheet_key: str, The unique ID of this containing spreadsheet. This
+                   can be the ID from the URL or as provided in a
+                   Spreadsheet entry.
+  table_id: str, The ID of the table within the worksheet which should
+            receive this new record. The table ID can be found using the
+            get_table_id method of a gdata.spreadsheets.data.Table.
+  fields: dict of strings mapping column names to values.
+  title: str, optional The title for this row.
+  auth_token: An object which sets the Authorization HTTP header in its
+              modify_request method. Recommended classes include
+              gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken
+              among others. Represents the current user. Defaults to None
+              and if None, this method will look for a value in the
+              auth_token member of SpreadsheetsClient.
+ +
add_table(self, spreadsheet_key, title, summary, worksheet_name, header_row, num_rows, start_row, insertion_mode, column_headers, auth_token=None, **kwargs)
Creates a new table within the worksheet.

+Args:
+  spreadsheet_key: str, The unique ID of this containing spreadsheet. This
+                   can be the ID from the URL or as provided in a
+                   Spreadsheet entry.
+  title: str, The title for the new table within a worksheet.
+  summary: str, A description of the table.
+  worksheet_name: str The name of the worksheet in which this table
+                  should live.
+  header_row: int or str, The number of the row in the worksheet which
+              will contain the column names for the data in this table.
+  num_rows: int or str, The number of adjacent rows in this table.
+  start_row: int or str, The number of the row at which the data begins.
+  insertion_mode: str
+  column_headers: dict of strings, maps the column letters (A, B, C) to
+                  the desired name which will be viewable in the
+                  worksheet.
+  auth_token: An object which sets the Authorization HTTP header in its
+              modify_request method. Recommended classes include
+              gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken
+              among others. Represents the current user. Defaults to None
+              and if None, this method will look for a value in the
+              auth_token member of SpreadsheetsClient.
+ +
add_worksheet(self, spreadsheet_key, title, rows, cols, auth_token=None, **kwargs)
Creates a new worksheet entry in the spreadsheet.

+Args:
+  spreadsheet_key: str, The unique ID of this containing spreadsheet. This
+                   can be the ID from the URL or as provided in a
+                   Spreadsheet entry.
+  title: str, The title to be used in for the worksheet.
+  rows: str or int, The number of rows this worksheet should start with.
+  cols: str or int, The number of columns this worksheet should start with.
+  auth_token: An object which sets the Authorization HTTP header in its
+              modify_request method. Recommended classes include
+              gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken
+              among others. Represents the current user. Defaults to None
+              and if None, this method will look for a value in the
+              auth_token member of SpreadsheetsClient.
+ +
get_record(self, spreadsheet_key, table_id, record_id, desired_class=<class 'gdata.spreadsheets.data.Record'>, auth_token=None, **kwargs)
Retrieves a single record from the table.

+Args:
+  spreadsheet_key: str, The unique ID of this containing spreadsheet. This
+                   can be the ID from the URL or as provided in a
+                   Spreadsheet entry.
+  table_id: str, The ID of the table within the worksheet whose records
+            we would like to fetch. The table ID can be found using the
+            get_table_id method of a gdata.spreadsheets.data.Table.
+  record_id: str, The ID of the record within this table which we want to
+             fetch. You can find the record ID using get_record_id() on
+             an instance of the gdata.spreadsheets.data.Record class.
+  desired_class: class descended from atom.core.XmlElement to which a
+                 successful response should be converted. If there is no
+                 converter function specified (converter=None) then the
+                 desired_class will be used in calling the
+                 atom.core.parse function. If neither
+                 the desired_class nor the converter is specified, an
+                 HTTP reponse object will be returned. Defaults to
+                 gdata.spreadsheets.data.RecordsFeed.
+  auth_token: An object which sets the Authorization HTTP header in its
+              modify_request method. Recommended classes include
+              gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken
+              among others. Represents the current user. Defaults to None
+              and if None, this method will look for a value in the
+              auth_token member of SpreadsheetsClient.
+ +
get_records(self, spreadsheet_key, table_id, desired_class=<class 'gdata.spreadsheets.data.RecordsFeed'>, auth_token=None, **kwargs)
Retrieves the records in a table.

+Args:
+  spreadsheet_key: str, The unique ID of this containing spreadsheet. This
+                   can be the ID from the URL or as provided in a
+                   Spreadsheet entry.
+  table_id: str, The ID of the table within the worksheet whose records
+            we would like to fetch. The table ID can be found using the
+            get_table_id method of a gdata.spreadsheets.data.Table.
+  desired_class: class descended from atom.core.XmlElement to which a
+                 successful response should be converted. If there is no
+                 converter function specified (converter=None) then the
+                 desired_class will be used in calling the
+                 atom.core.parse function. If neither
+                 the desired_class nor the converter is specified, an
+                 HTTP reponse object will be returned. Defaults to
+                 gdata.spreadsheets.data.RecordsFeed.
+  auth_token: An object which sets the Authorization HTTP header in its
+              modify_request method. Recommended classes include
+              gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken
+              among others. Represents the current user. Defaults to None
+              and if None, this method will look for a value in the
+              auth_token member of SpreadsheetsClient.
+ +
get_spreadsheets(self, auth_token=None, desired_class=<class 'gdata.spreadsheets.data.SpreadsheetsFeed'>, **kwargs)
Obtains a feed with the spreadsheets belonging to the current user.

+Args:
+  auth_token: An object which sets the Authorization HTTP header in its
+              modify_request method. Recommended classes include
+              gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken
+              among others. Represents the current user. Defaults to None
+              and if None, this method will look for a value in the
+              auth_token member of SpreadsheetsClient.
+  desired_class: class descended from atom.core.XmlElement to which a
+                 successful response should be converted. If there is no
+                 converter function specified (converter=None) then the
+                 desired_class will be used in calling the
+                 atom.core.parse function. If neither
+                 the desired_class nor the converter is specified, an
+                 HTTP reponse object will be returned. Defaults to
+                 gdata.spreadsheets.data.SpreadsheetsFeed.
+ +
get_tables(self, spreadsheet_key, desired_class=<class 'gdata.spreadsheets.data.TablesFeed'>, auth_token=None, **kwargs)
Retrieves a feed listing the tables in this spreadsheet.

+Args:
+  spreadsheet_key: str, The unique ID of this containing spreadsheet. This
+                   can be the ID from the URL or as provided in a
+                   Spreadsheet entry.
+  desired_class: class descended from atom.core.XmlElement to which a
+                 successful response should be converted. If there is no
+                 converter function specified (converter=None) then the
+                 desired_class will be used in calling the
+                 atom.core.parse function. If neither
+                 the desired_class nor the converter is specified, an
+                 HTTP reponse object will be returned. Defaults to
+                 gdata.spreadsheets.data.TablesFeed.
+  auth_token: An object which sets the Authorization HTTP header in its
+              modify_request method. Recommended classes include
+              gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken
+              among others. Represents the current user. Defaults to None
+              and if None, this method will look for a value in the
+              auth_token member of SpreadsheetsClient.
+ +
get_worksheet(self, spreadsheet_key, worksheet_id, desired_class=<class 'gdata.spreadsheets.data.WorksheetEntry'>, auth_token=None, **kwargs)
Retrieves a single worksheet.

+Args:
+  spreadsheet_key: str, The unique ID of this containing spreadsheet. This
+                   can be the ID from the URL or as provided in a
+                   Spreadsheet entry.
+  worksheet_id: str, The unique ID for the worksheet withing the desired
+                spreadsheet.
+  auth_token: An object which sets the Authorization HTTP header in its
+              modify_request method. Recommended classes include
+              gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken
+              among others. Represents the current user. Defaults to None
+              and if None, this method will look for a value in the
+              auth_token member of SpreadsheetsClient.
+  desired_class: class descended from atom.core.XmlElement to which a
+                 successful response should be converted. If there is no
+                 converter function specified (converter=None) then the
+                 desired_class will be used in calling the
+                 atom.core.parse function. If neither
+                 the desired_class nor the converter is specified, an
+                 HTTP reponse object will be returned. Defaults to
+                 gdata.spreadsheets.data.WorksheetEntry.
+ +
get_worksheets(self, spreadsheet_key, auth_token=None, desired_class=<class 'gdata.spreadsheets.data.WorksheetsFeed'>, **kwargs)
Finds the worksheets within a given spreadsheet.

+Args:
+  spreadsheet_key: str, The unique ID of this containing spreadsheet. This
+                   can be the ID from the URL or as provided in a
+                   Spreadsheet entry.
+  auth_token: An object which sets the Authorization HTTP header in its
+              modify_request method. Recommended classes include
+              gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken
+              among others. Represents the current user. Defaults to None
+              and if None, this method will look for a value in the
+              auth_token member of SpreadsheetsClient.
+  desired_class: class descended from atom.core.XmlElement to which a
+                 successful response should be converted. If there is no
+                 converter function specified (converter=None) then the
+                 desired_class will be used in calling the
+                 atom.core.parse function. If neither
+                 the desired_class nor the converter is specified, an
+                 HTTP reponse object will be returned. Defaults to
+                 gdata.spreadsheets.data.WorksheetsFeed.
+ +
+Data and other attributes defined here:
+
api_version = '3'
+ +
auth_scopes = ('https://spreadsheets.google.com/feeds/', 'http://spreadsheets.google.com/feeds/')
+ +
auth_service = 'wise'
+ +
+Methods inherited from gdata.client.GDClient:
+
ClientLogin = client_login(self, email, password, source, service=None, account_type='HOSTED_OR_GOOGLE', auth_url=<atom.http_core.Uri object at 0xb3dd50>, captcha_token=None, captcha_response=None)
Performs an auth request using the user's email address and password.

+In order to modify user specific data and read user private data, your
+application must be authorized by the user. One way to demonstrage
+authorization is by including a Client Login token in the Authorization
+HTTP header of all requests. This method requests the Client Login token
+by sending the user's email address, password, the name of the
+application, and the service code for the service which will be accessed
+by the application. If the username and password are correct, the server
+will respond with the client login code and a new ClientLoginToken
+object will be set in the client's auth_token member. With the auth_token
+set, future requests from this client will include the Client Login
+token.

+For a list of service names, see 
+http://code.google.com/apis/gdata/faq.html#clientlogin
+For more information on Client Login, see:
+http://code.google.com/apis/accounts/docs/AuthForInstalledApps.html

+Args:
+  email: str The user's email address or username.
+  password: str The password for the user's account.
+  source: str The name of your application. This can be anything you
+          like but should should give some indication of which app is
+          making the request.
+  service: str The service code for the service you would like to access.
+           For example, 'cp' for contacts, 'cl' for calendar. For a full
+           list see
+           http://code.google.com/apis/gdata/faq.html#clientlogin
+           If you are using a subclass of the gdata.client.GDClient, the
+           service will usually be filled in for you so you do not need
+           to specify it. For example see BloggerClient,
+           SpreadsheetsClient, etc.
+  account_type: str (optional) The type of account which is being
+                authenticated. This can be either 'GOOGLE' for a Google
+                Account, 'HOSTED' for a Google Apps Account, or the
+                default 'HOSTED_OR_GOOGLE' which will select the Google
+                Apps Account if the same email address is used for both
+                a Google Account and a Google Apps Account.
+  auth_url: str (optional) The URL to which the login request should be
+            sent.
+  captcha_token: str (optional) If a previous login attempt was reponded
+                 to with a CAPTCHA challenge, this is the token which
+                 identifies the challenge (from the CAPTCHA's URL).
+  captcha_response: str (optional) If a previous login attempt was
+                    reponded to with a CAPTCHA challenge, this is the
+                    response text which was contained in the challenge.

+  Returns:
+    None

+  Raises:
+    A RequestError or one of its suclasses: BadAuthentication,
+    BadAuthenticationServiceURL, ClientLoginFailed,
+    ClientLoginTokenMissing, or CaptchaChallenge
+ +
Delete = delete(self, entry_or_uri, auth_token=None, force=False, **kwargs)
+ +
GetAccessToken = get_access_token(self, request_token, url='https://www.google.com/accounts/OAuthGetAccessToken')
Exchanges an authorized OAuth request token for an access token.

+Contacts the Google OAuth server to upgrade a previously authorized
+request token. Once the request token is upgraded to an access token,
+the access token may be used to access the user's data.

+For more details, see the Google Accounts OAuth documentation:
+http://code.google.com/apis/accounts/docs/OAuth.html#AccessToken

+Args:
+  request_token: An OAuth token which has been authorized by the user.
+  url: (optional) The URL to which the upgrade request should be sent.
+      Defaults to: https://www.google.com/accounts/OAuthAuthorizeToken
+ +
GetEntry = get_entry(self, uri, auth_token=None, converter=None, desired_class=<class 'gdata.data.GDEntry'>, etag=None, **kwargs)
+ +
GetFeed = get_feed(self, uri, auth_token=None, converter=None, desired_class=<class 'gdata.data.GDFeed'>, **kwargs)
+ +
GetNext = get_next(self, feed, auth_token=None, converter=None, desired_class=None, **kwargs)
Fetches the next set of results from the feed.

+When requesting a feed, the number of entries returned is capped at a
+service specific default limit (often 25 entries). You can specify your
+own entry-count cap using the max-results URL query parameter. If there
+are more results than could fit under max-results, the feed will contain
+a next link. This method performs a GET against this next results URL.

+Returns:
+  A new feed object containing the next set of entries in this feed.
+ +
GetOAuthToken = get_oauth_token(self, scopes, next, consumer_key, consumer_secret=None, rsa_private_key=None, url='https://www.google.com/accounts/OAuthGetRequestToken')
Obtains an OAuth request token to allow the user to authorize this app.

+Once this client has a request token, the user can authorize the request
+token by visiting the authorization URL in their browser. After being
+redirected back to this app at the 'next' URL, this app can then exchange
+the authorized request token for an access token.

+For more information see the documentation on Google Accounts with OAuth:
+http://code.google.com/apis/accounts/docs/OAuth.html#AuthProcess

+Args:
+  scopes: list of strings or atom.http_core.Uri objects which specify the
+      URL prefixes which this app will be accessing. For example, to access
+      the Google Calendar API, you would want to use scopes:
+      ['https://www.google.com/calendar/feeds/',
+       'http://www.google.com/calendar/feeds/']
+  next: str or atom.http_core.Uri object, The URL which the user's browser
+      should be sent to after they authorize access to their data. This
+      should be a URL in your application which will read the token
+      information from the URL and upgrade the request token to an access
+      token.
+  consumer_key: str This is the identifier for this application which you
+      should have received when you registered your application with Google
+      to use OAuth.
+  consumer_secret: str (optional) The shared secret between your app and
+      Google which provides evidence that this request is coming from you
+      application and not another app. If present, this libraries assumes
+      you want to use an HMAC signature to verify requests. Keep this data
+      a secret.
+  rsa_private_key: str (optional) The RSA private key which is used to
+      generate a digital signature which is checked by Google's server. If
+      present, this library assumes that you want to use an RSA signature
+      to verify requests. Keep this data a secret.
+  url: The URL to which a request for a token should be made. The default
+      is Google's OAuth request token provider.
+ +
ModifyRequest = modify_request(self, http_request)
Adds or changes request before making the HTTP request.

+This client will add the API version if it is specified.
+Subclasses may override this method to add their own request
+modifications before the request is made.
+ +
Post = post(self, entry, uri, auth_token=None, converter=None, desired_class=None, **kwargs)
+ +
Request = request(self, method=None, uri=None, auth_token=None, http_request=None, converter=None, desired_class=None, redirects_remaining=4, **kwargs)
Make an HTTP request to the server.

+See also documentation for atom.client.AtomPubClient.request.

+If a 302 redirect is sent from the server to the client, this client
+assumes that the redirect is in the form used by the Google Calendar API.
+The same request URI and method will be used as in the original request,
+but a gsessionid URL parameter will be added to the request URI with
+the value provided in the server's 302 redirect response. If the 302
+redirect is not in the format specified by the Google Calendar API, a
+RedirectError will be raised containing the body of the server's
+response.

+The method calls the client's modify_request method to make any changes
+required by the client before the request is made. For example, a
+version 2 client could add a GData-Version: 2 header to the request in
+its modify_request method.

+Args:
+  method: str The HTTP verb for this request, usually 'GET', 'POST',
+          'PUT', or 'DELETE'
+  uri: atom.http_core.Uri, str, or unicode The URL being requested.
+  auth_token: An object which sets the Authorization HTTP header in its
+              modify_request method. Recommended classes include
+              gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken
+              among others.
+  http_request: (optional) atom.http_core.HttpRequest
+  converter: function which takes the body of the response as it's only
+             argument and returns the desired object.
+  desired_class: class descended from atom.core.XmlElement to which a
+                 successful response should be converted. If there is no
+                 converter function specified (converter=None) then the
+                 desired_class will be used in calling the
+                 atom.core.parse function. If neither
+                 the desired_class nor the converter is specified, an
+                 HTTP reponse object will be returned.
+  redirects_remaining: (optional) int, if this number is 0 and the
+                       server sends a 302 redirect, the request method
+                       will raise an exception. This parameter is used in
+                       recursive request calls to avoid an infinite loop.

+Any additional arguments are passed through to
+atom.client.AtomPubClient.request.

+Returns:
+  An HTTP response object (see atom.http_core.HttpResponse for a
+  description of the object's interface) if no converter was
+  specified and no desired_class was specified. If a converter function
+  was provided, the results of calling the converter are returned. If no
+  converter was specified but a desired_class was provided, the response
+  body will be converted to the class using
+  atom.core.parse.
+ +
RequestClientLoginToken = request_client_login_token(self, email, password, source, service=None, account_type='HOSTED_OR_GOOGLE', auth_url=<atom.http_core.Uri object at 0xb3dd10>, captcha_token=None, captcha_response=None)
+ +
RevokeToken = revoke_token(self, token=None, url=<atom.http_core.Uri object at 0xb3ddd0>)
Requests that the token be invalidated.

+This method can be used for both AuthSub and OAuth tokens (to invalidate
+a ClientLogin token, the user must change their password).

+Returns:
+  True if the server responded with a 200.

+Raises:
+  A RequestError if the server responds with a non-200 status.
+ +
Update = update(self, entry, auth_token=None, force=False, **kwargs)
Edits the entry on the server by sending the XML for this entry.

+Performs a PUT and converts the response to a new entry object with a
+matching class to the entry passed in.

+Args:
+  entry:
+  auth_token:
+  force: boolean stating whether an update should be forced. Defaults to
+         False. Normally, if a change has been made since the passed in
+         entry was obtained, the server will not overwrite the entry since
+         the changes were based on an obsolete version of the entry.
+         Setting force to True will cause the update to silently
+         overwrite whatever version is present.

+Returns:
+  A new Entry object of a matching type to the entry which was passed in.
+ +
UpgradeToken = upgrade_token(self, token=None, url=<atom.http_core.Uri object at 0xb3dd90>)
Asks the Google auth server for a multi-use AuthSub token.

+For details on AuthSub, see:
+http://code.google.com/apis/accounts/docs/AuthSub.html

+Args:
+  token: gdata.gauth.AuthSubToken or gdata.gauth.SecureAuthSubToken
+      (optional) If no token is passed in, the client's auth_token member
+      is used to request the new token. The token object will be modified
+      to contain the new session token string.
+  url: str or atom.http_core.Uri (optional) The URL to which the token
+      upgrade request should be sent. Defaults to:
+      https://www.google.com/accounts/AuthSubSessionToken

+Returns:
+  The upgraded gdata.gauth.AuthSubToken object.
+ +
client_login(self, email, password, source, service=None, account_type='HOSTED_OR_GOOGLE', auth_url=<atom.http_core.Uri object at 0xb3dd50>, captcha_token=None, captcha_response=None)
Performs an auth request using the user's email address and password.

+In order to modify user specific data and read user private data, your
+application must be authorized by the user. One way to demonstrage
+authorization is by including a Client Login token in the Authorization
+HTTP header of all requests. This method requests the Client Login token
+by sending the user's email address, password, the name of the
+application, and the service code for the service which will be accessed
+by the application. If the username and password are correct, the server
+will respond with the client login code and a new ClientLoginToken
+object will be set in the client's auth_token member. With the auth_token
+set, future requests from this client will include the Client Login
+token.

+For a list of service names, see 
+http://code.google.com/apis/gdata/faq.html#clientlogin
+For more information on Client Login, see:
+http://code.google.com/apis/accounts/docs/AuthForInstalledApps.html

+Args:
+  email: str The user's email address or username.
+  password: str The password for the user's account.
+  source: str The name of your application. This can be anything you
+          like but should should give some indication of which app is
+          making the request.
+  service: str The service code for the service you would like to access.
+           For example, 'cp' for contacts, 'cl' for calendar. For a full
+           list see
+           http://code.google.com/apis/gdata/faq.html#clientlogin
+           If you are using a subclass of the gdata.client.GDClient, the
+           service will usually be filled in for you so you do not need
+           to specify it. For example see BloggerClient,
+           SpreadsheetsClient, etc.
+  account_type: str (optional) The type of account which is being
+                authenticated. This can be either 'GOOGLE' for a Google
+                Account, 'HOSTED' for a Google Apps Account, or the
+                default 'HOSTED_OR_GOOGLE' which will select the Google
+                Apps Account if the same email address is used for both
+                a Google Account and a Google Apps Account.
+  auth_url: str (optional) The URL to which the login request should be
+            sent.
+  captcha_token: str (optional) If a previous login attempt was reponded
+                 to with a CAPTCHA challenge, this is the token which
+                 identifies the challenge (from the CAPTCHA's URL).
+  captcha_response: str (optional) If a previous login attempt was
+                    reponded to with a CAPTCHA challenge, this is the
+                    response text which was contained in the challenge.

+  Returns:
+    None

+  Raises:
+    A RequestError or one of its suclasses: BadAuthentication,
+    BadAuthenticationServiceURL, ClientLoginFailed,
+    ClientLoginTokenMissing, or CaptchaChallenge
+ +
delete(self, entry_or_uri, auth_token=None, force=False, **kwargs)
+ +
get_access_token(self, request_token, url='https://www.google.com/accounts/OAuthGetAccessToken')
Exchanges an authorized OAuth request token for an access token.

+Contacts the Google OAuth server to upgrade a previously authorized
+request token. Once the request token is upgraded to an access token,
+the access token may be used to access the user's data.

+For more details, see the Google Accounts OAuth documentation:
+http://code.google.com/apis/accounts/docs/OAuth.html#AccessToken

+Args:
+  request_token: An OAuth token which has been authorized by the user.
+  url: (optional) The URL to which the upgrade request should be sent.
+      Defaults to: https://www.google.com/accounts/OAuthAuthorizeToken
+ +
get_entry(self, uri, auth_token=None, converter=None, desired_class=<class 'gdata.data.GDEntry'>, etag=None, **kwargs)
+ +
get_feed(self, uri, auth_token=None, converter=None, desired_class=<class 'gdata.data.GDFeed'>, **kwargs)
+ +
get_next(self, feed, auth_token=None, converter=None, desired_class=None, **kwargs)
Fetches the next set of results from the feed.

+When requesting a feed, the number of entries returned is capped at a
+service specific default limit (often 25 entries). You can specify your
+own entry-count cap using the max-results URL query parameter. If there
+are more results than could fit under max-results, the feed will contain
+a next link. This method performs a GET against this next results URL.

+Returns:
+  A new feed object containing the next set of entries in this feed.
+ +
get_oauth_token(self, scopes, next, consumer_key, consumer_secret=None, rsa_private_key=None, url='https://www.google.com/accounts/OAuthGetRequestToken')
Obtains an OAuth request token to allow the user to authorize this app.

+Once this client has a request token, the user can authorize the request
+token by visiting the authorization URL in their browser. After being
+redirected back to this app at the 'next' URL, this app can then exchange
+the authorized request token for an access token.

+For more information see the documentation on Google Accounts with OAuth:
+http://code.google.com/apis/accounts/docs/OAuth.html#AuthProcess

+Args:
+  scopes: list of strings or atom.http_core.Uri objects which specify the
+      URL prefixes which this app will be accessing. For example, to access
+      the Google Calendar API, you would want to use scopes:
+      ['https://www.google.com/calendar/feeds/',
+       'http://www.google.com/calendar/feeds/']
+  next: str or atom.http_core.Uri object, The URL which the user's browser
+      should be sent to after they authorize access to their data. This
+      should be a URL in your application which will read the token
+      information from the URL and upgrade the request token to an access
+      token.
+  consumer_key: str This is the identifier for this application which you
+      should have received when you registered your application with Google
+      to use OAuth.
+  consumer_secret: str (optional) The shared secret between your app and
+      Google which provides evidence that this request is coming from you
+      application and not another app. If present, this libraries assumes
+      you want to use an HMAC signature to verify requests. Keep this data
+      a secret.
+  rsa_private_key: str (optional) The RSA private key which is used to
+      generate a digital signature which is checked by Google's server. If
+      present, this library assumes that you want to use an RSA signature
+      to verify requests. Keep this data a secret.
+  url: The URL to which a request for a token should be made. The default
+      is Google's OAuth request token provider.
+ +
modify_request(self, http_request)
Adds or changes request before making the HTTP request.

+This client will add the API version if it is specified.
+Subclasses may override this method to add their own request
+modifications before the request is made.
+ +
post(self, entry, uri, auth_token=None, converter=None, desired_class=None, **kwargs)
+ +
request(self, method=None, uri=None, auth_token=None, http_request=None, converter=None, desired_class=None, redirects_remaining=4, **kwargs)
Make an HTTP request to the server.

+See also documentation for atom.client.AtomPubClient.request.

+If a 302 redirect is sent from the server to the client, this client
+assumes that the redirect is in the form used by the Google Calendar API.
+The same request URI and method will be used as in the original request,
+but a gsessionid URL parameter will be added to the request URI with
+the value provided in the server's 302 redirect response. If the 302
+redirect is not in the format specified by the Google Calendar API, a
+RedirectError will be raised containing the body of the server's
+response.

+The method calls the client's modify_request method to make any changes
+required by the client before the request is made. For example, a
+version 2 client could add a GData-Version: 2 header to the request in
+its modify_request method.

+Args:
+  method: str The HTTP verb for this request, usually 'GET', 'POST',
+          'PUT', or 'DELETE'
+  uri: atom.http_core.Uri, str, or unicode The URL being requested.
+  auth_token: An object which sets the Authorization HTTP header in its
+              modify_request method. Recommended classes include
+              gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken
+              among others.
+  http_request: (optional) atom.http_core.HttpRequest
+  converter: function which takes the body of the response as it's only
+             argument and returns the desired object.
+  desired_class: class descended from atom.core.XmlElement to which a
+                 successful response should be converted. If there is no
+                 converter function specified (converter=None) then the
+                 desired_class will be used in calling the
+                 atom.core.parse function. If neither
+                 the desired_class nor the converter is specified, an
+                 HTTP reponse object will be returned.
+  redirects_remaining: (optional) int, if this number is 0 and the
+                       server sends a 302 redirect, the request method
+                       will raise an exception. This parameter is used in
+                       recursive request calls to avoid an infinite loop.

+Any additional arguments are passed through to
+atom.client.AtomPubClient.request.

+Returns:
+  An HTTP response object (see atom.http_core.HttpResponse for a
+  description of the object's interface) if no converter was
+  specified and no desired_class was specified. If a converter function
+  was provided, the results of calling the converter are returned. If no
+  converter was specified but a desired_class was provided, the response
+  body will be converted to the class using
+  atom.core.parse.
+ +
request_client_login_token(self, email, password, source, service=None, account_type='HOSTED_OR_GOOGLE', auth_url=<atom.http_core.Uri object at 0xb3dd10>, captcha_token=None, captcha_response=None)
+ +
revoke_token(self, token=None, url=<atom.http_core.Uri object at 0xb3ddd0>)
Requests that the token be invalidated.

+This method can be used for both AuthSub and OAuth tokens (to invalidate
+a ClientLogin token, the user must change their password).

+Returns:
+  True if the server responded with a 200.

+Raises:
+  A RequestError if the server responds with a non-200 status.
+ +
update(self, entry, auth_token=None, force=False, **kwargs)
Edits the entry on the server by sending the XML for this entry.

+Performs a PUT and converts the response to a new entry object with a
+matching class to the entry passed in.

+Args:
+  entry:
+  auth_token:
+  force: boolean stating whether an update should be forced. Defaults to
+         False. Normally, if a change has been made since the passed in
+         entry was obtained, the server will not overwrite the entry since
+         the changes were based on an obsolete version of the entry.
+         Setting force to True will cause the update to silently
+         overwrite whatever version is present.

+Returns:
+  A new Entry object of a matching type to the entry which was passed in.
+ +
upgrade_token(self, token=None, url=<atom.http_core.Uri object at 0xb3dd90>)
Asks the Google auth server for a multi-use AuthSub token.

+For details on AuthSub, see:
+http://code.google.com/apis/accounts/docs/AuthSub.html

+Args:
+  token: gdata.gauth.AuthSubToken or gdata.gauth.SecureAuthSubToken
+      (optional) If no token is passed in, the client's auth_token member
+      is used to request the new token. The token object will be modified
+      to contain the new session token string.
+  url: str or atom.http_core.Uri (optional) The URL to which the token
+      upgrade request should be sent. Defaults to:
+      https://www.google.com/accounts/AuthSubSessionToken

+Returns:
+  The upgraded gdata.gauth.AuthSubToken object.
+ +
+Methods inherited from atom.client.AtomPubClient:
+
Get = get(self, uri=None, auth_token=None, http_request=None, **kwargs)
Performs a request using the GET method, returns an HTTP response.
+ +
Put = put(self, uri=None, data=None, auth_token=None, http_request=None, **kwargs)
Sends data using the PUT method, returns an HTTP response.
+ +
__init__(self, http_client=None, host=None, auth_token=None, source=None, **kwargs)
Creates a new AtomPubClient instance.

+Args:
+  source: The name of your application.
+  http_client: An object capable of performing HTTP requests through a
+               request method. This object is used to perform the request
+               when the AtomPubClient's request method is called. Used to
+               allow HTTP requests to be directed to a mock server, or use
+               an alternate library instead of the default of httplib to
+               make HTTP requests.
+  host: str The default host name to use if a host is not specified in the
+        requested URI.
+  auth_token: An object which sets the HTTP Authorization header when its
+              modify_request method is called.
+ +
get(self, uri=None, auth_token=None, http_request=None, **kwargs)
Performs a request using the GET method, returns an HTTP response.
+ +
put(self, uri=None, data=None, auth_token=None, http_request=None, **kwargs)
Sends data using the PUT method, returns an HTTP response.
+ +
+Data descriptors inherited from atom.client.AtomPubClient:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Data and other attributes inherited from atom.client.AtomPubClient:
+
auth_token = None
+ +
host = None
+ +
ssl = False
+ +

+ + + + + +
 
+class TableQuery(ListQuery)
    
Method resolution order:
+
TableQuery
+
ListQuery
+
gdata.client.Query
+
__builtin__.object
+
+
+Methods inherited from ListQuery:
+
ModifyRequest = modify_request(self, http_request)
+ +
__init__(self, order_by=None, reverse=None, sq=None, **kwargs)
Adds List-feed specific query parameters to a request.

+Args:
+  order_by: str Specifies what column to use in ordering the entries in
+            the feed. By position (the default): 'position' returns
+            rows in the order in which they appear in the GUI. Row 1, then
+            row 2, then row 3, and so on. By column:
+            'column:columnName' sorts rows in ascending order based on the
+            values in the column with the given columnName, where
+            columnName is the value in the header row for that column.
+  reverse: str Specifies whether to sort in descending or ascending order.
+           Reverses default sort order: 'true' results in a descending
+           sort; 'false' (the default) results in an ascending sort.
+  sq: str Structured query on the full text in the worksheet.
+      [columnName][binaryOperator][value]
+      Supported binaryOperators are:
+      - (), for overriding order of operations
+      - = or ==, for strict equality
+      - <> or !=, for strict inequality
+      - and or &&, for boolean and
+      - or or ||, for boolean or
+ +
modify_request(self, http_request)
+ +
+Data descriptors inherited from gdata.client.Query:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + +
 
+class WorksheetQuery(SpreadsheetQuery)
    
Method resolution order:
+
WorksheetQuery
+
SpreadsheetQuery
+
gdata.client.Query
+
__builtin__.object
+
+
+Methods inherited from SpreadsheetQuery:
+
ModifyRequest = modify_request(self, http_request)
+ +
__init__(self, title=None, title_exact=None, **kwargs)
Adds Spreadsheets feed query parameters to a request.

+Args:
+  title: str Specifies the search terms for the title of a document.
+         This parameter used without title-exact will only submit partial
+         queries, not exact queries.
+  title_exact: str Specifies whether the title query should be taken as an
+               exact string. Meaningless without title. Possible values are
+               'true' and 'false'.
+ +
modify_request(self, http_request)
+ +
+Data descriptors inherited from gdata.client.Query:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + +
 
+Data
       RECORDS_URL = 'http://spreadsheets.google.com/feeds/%s/records/%s'
+RECORD_URL = 'http://spreadsheets.google.com/feeds/%s/records/%s/%s'
+SPREADSHEETS_URL = 'http://spreadsheets.google.com/feeds/spreadsheets/private/full'
+TABLES_URL = 'http://spreadsheets.google.com/feeds/%s/tables'
+WORKSHEETS_URL = 'http://spreadsheets.google.com/feeds/worksheets/%s/private/full'
+WORKSHEET_URL = 'http://spreadsheets.google.com/feeds/worksheets/%s/private/full/%s'
+__author__ = 'j.s@google.com (Jeff Scudder)'

+ + + + + +
 
+Author
       j.s@google.com (Jeff Scudder)
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.spreadsheets.data.html python-gdata-2.0.8/pydocs/gdata.spreadsheets.data.html --- python-gdata-1.2.4/pydocs/gdata.spreadsheets.data.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.spreadsheets.data.html 2010-02-26 23:16:48.000000000 +0000 @@ -0,0 +1,5974 @@ + + +Python: module gdata.spreadsheets.data + + + + +
 
+ 
gdata.spreadsheets.data
index
/usr/local/svn/gdata-python-client/src/gdata/spreadsheets/data.py
+

Provides classes and constants for the XML in the Google Spreadsheets API.

+Documentation for the raw XML which these classes represent can be found here:
+http://code.google.com/apis/spreadsheets/docs/3.0/reference.html#Elements

+

+ + + + + +
 
+Modules
       
atom
+
gdata
+

+ + + + + +
 
+Classes
       
+
atom.core.XmlElement(__builtin__.object) +
+
+
Cell +
ColCount +
Data +
Field +
+
+
Column +
+
+
Header +
ListRow +
RowCount +
Worksheet +
+
+
exceptions.Exception(exceptions.BaseException) +
+
+
Error +
+
+
HeaderNotSet +
+
+
FieldMissing +
+
+
gdata.data.BatchEntry(gdata.data.GDEntry) +
+
+
CellEntry +
+
+
gdata.data.BatchFeed(gdata.data.GDFeed) +
+
+
CellsFeed +
+
+
gdata.data.GDEntry(atom.data.Entry, gdata.data.LinkFinder) +
+
+
ListEntry +
Record +
Spreadsheet +
Table +
WorksheetEntry +
+
+
gdata.data.GDFeed(atom.data.Feed, gdata.data.LinkFinder) +
+
+
ListsFeed +
RecordsFeed +
SpreadsheetsFeed +
TablesFeed +
WorksheetsFeed +
+
+
+

+ + + + + + + +
 
+class Cell(atom.core.XmlElement)
   The gs:cell element.

+A cell in the worksheet. The <gs:cell> element can appear only as a child
+of <atom:entry>.
 
 
Method resolution order:
+
Cell
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
col = 'col'
+ +
input_value = 'inputValue'
+ +
numeric_value = 'numericValue'
+ +
row = 'row'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class CellEntry(gdata.data.BatchEntry)
   An Atom entry representing a single cell in a worksheet.
 
 
Method resolution order:
+
CellEntry
+
gdata.data.BatchEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
cell = <class 'gdata.spreadsheets.data.Cell'>
The gs:cell element.

+A cell in the worksheet. The <gs:cell> element can appear only as a child
+of <atom:entry>.
+ +
+Data and other attributes inherited from gdata.data.BatchEntry:
+
batch_id = <class 'gdata.data.BatchId'>
Identifies a single operation in a batch request.
+ +
batch_operation = <class 'gdata.data.BatchOperation'>
The CRUD operation which this batch entry represents.
+ +
batch_status = <class 'gdata.data.BatchStatus'>
The batch:status element present in a batch response entry.

+A status element contains the code (HTTP response code) and
+reason as elements. In a single request these fields would
+be part of the HTTP response, but in a batch request each
+Entry operation has a corresponding Entry in the response
+feed which includes status information.

+See http://code.google.com/apis/gdata/batch.html#Handling_Errors
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class CellsFeed(gdata.data.BatchFeed)
   An Atom feed contains one entry per cell in a worksheet.

+The cell feed supports batch operations, you can send multiple cell
+operations in one HTTP request.
 
 
Method resolution order:
+
CellsFeed
+
gdata.data.BatchFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Methods defined here:
+
batch_set_cell(row, col, input)
+ +
+Data and other attributes defined here:
+
entry = [<class 'gdata.spreadsheets.data.CellEntry'>]
+ +
+Methods inherited from gdata.data.BatchFeed:
+
AddBatchEntry = add_batch_entry(self, entry=None, id_url_string=None, batch_id_string=None, operation_string=None)
Logic for populating members of a BatchEntry and adding to the feed.

+If the entry is not a BatchEntry, it is converted to a BatchEntry so
+that the batch specific members will be present.

+The id_url_string can be used in place of an entry if the batch operation
+applies to a URL. For example query and delete operations require just
+the URL of an entry, no body is sent in the HTTP request. If an
+id_url_string is sent instead of an entry, a BatchEntry is created and
+added to the feed.

+This method also assigns the desired batch id to the entry so that it
+can be referenced in the server's response. If the batch_id_string is
+None, this method will assign a batch_id to be the index at which this
+entry will be in the feed's entry list.

+Args:
+  entry: BatchEntry, atom.data.Entry, or another Entry flavor (optional)
+      The entry which will be sent to the server as part of the batch
+      request. The item must have a valid atom id so that the server
+      knows which entry this request references.
+  id_url_string: str (optional) The URL of the entry to be acted on. You
+      can find this URL in the text member of the atom id for an entry.
+      If an entry is not sent, this id will be used to construct a new
+      BatchEntry which will be added to the request feed.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+  operation_string: str (optional) The desired batch operation which will
+      set the batch_operation.type member of the entry. Options are
+      'insert', 'update', 'delete', and 'query'

+Raises:
+  MissingRequiredParameters: Raised if neither an id_ url_string nor an
+      entry are provided in the request.

+Returns:
+  The added entry.
+ +
AddDelete = add_delete(self, url_string=None, entry=None, batch_id_string=None)
Adds a delete request to the batch request feed.

+This method takes either the url_string which is the atom id of the item
+to be deleted, or the entry itself. The atom id of the entry must be
+present so that the server knows which entry should be deleted.

+Args:
+  url_string: str (optional) The URL of the entry to be deleted. You can
+     find this URL in the text member of the atom id for an entry.
+  entry: BatchEntry (optional) The entry to be deleted.
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters: Raised if neither a url_string nor an entry
+      are provided in the request.
+ +
AddInsert = add_insert(self, entry, batch_id_string=None)
Add an insert request to the operations in this batch request feed.

+If the entry doesn't yet have an operation or a batch id, these will
+be set to the insert operation and a batch_id specified as a parameter.

+Args:
+  entry: BatchEntry The entry which will be sent in the batch feed as an
+      insert request.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+ +
AddQuery = add_query(self, url_string=None, entry=None, batch_id_string=None)
Adds a query request to the batch request feed.

+This method takes either the url_string which is the query URL
+whose results will be added to the result feed. The query URL will
+be encapsulated in a BatchEntry, and you may pass in the BatchEntry
+with a query URL instead of sending a url_string.

+Args:
+  url_string: str (optional)
+  entry: BatchEntry (optional)
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters
+ +
AddUpdate = add_update(self, entry, batch_id_string=None)
Add an update request to the list of batch operations in this feed.

+Sets the operation type of the entry to insert if it is not already set
+and assigns the desired batch id to the entry so that it can be
+referenced in the server's response.

+Args:
+  entry: BatchEntry The entry which will be sent to the server as an
+      update (HTTP PUT) request. The item must have a valid atom id
+      so that the server knows which entry to replace.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. See also comments for AddInsert.
+ +
FindBatchLink = find_batch_link(self)
+ +
add_batch_entry(self, entry=None, id_url_string=None, batch_id_string=None, operation_string=None)
Logic for populating members of a BatchEntry and adding to the feed.

+If the entry is not a BatchEntry, it is converted to a BatchEntry so
+that the batch specific members will be present.

+The id_url_string can be used in place of an entry if the batch operation
+applies to a URL. For example query and delete operations require just
+the URL of an entry, no body is sent in the HTTP request. If an
+id_url_string is sent instead of an entry, a BatchEntry is created and
+added to the feed.

+This method also assigns the desired batch id to the entry so that it
+can be referenced in the server's response. If the batch_id_string is
+None, this method will assign a batch_id to be the index at which this
+entry will be in the feed's entry list.

+Args:
+  entry: BatchEntry, atom.data.Entry, or another Entry flavor (optional)
+      The entry which will be sent to the server as part of the batch
+      request. The item must have a valid atom id so that the server
+      knows which entry this request references.
+  id_url_string: str (optional) The URL of the entry to be acted on. You
+      can find this URL in the text member of the atom id for an entry.
+      If an entry is not sent, this id will be used to construct a new
+      BatchEntry which will be added to the request feed.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+  operation_string: str (optional) The desired batch operation which will
+      set the batch_operation.type member of the entry. Options are
+      'insert', 'update', 'delete', and 'query'

+Raises:
+  MissingRequiredParameters: Raised if neither an id_ url_string nor an
+      entry are provided in the request.

+Returns:
+  The added entry.
+ +
add_delete(self, url_string=None, entry=None, batch_id_string=None)
Adds a delete request to the batch request feed.

+This method takes either the url_string which is the atom id of the item
+to be deleted, or the entry itself. The atom id of the entry must be
+present so that the server knows which entry should be deleted.

+Args:
+  url_string: str (optional) The URL of the entry to be deleted. You can
+     find this URL in the text member of the atom id for an entry.
+  entry: BatchEntry (optional) The entry to be deleted.
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters: Raised if neither a url_string nor an entry
+      are provided in the request.
+ +
add_insert(self, entry, batch_id_string=None)
Add an insert request to the operations in this batch request feed.

+If the entry doesn't yet have an operation or a batch id, these will
+be set to the insert operation and a batch_id specified as a parameter.

+Args:
+  entry: BatchEntry The entry which will be sent in the batch feed as an
+      insert request.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+ +
add_query(self, url_string=None, entry=None, batch_id_string=None)
Adds a query request to the batch request feed.

+This method takes either the url_string which is the query URL
+whose results will be added to the result feed. The query URL will
+be encapsulated in a BatchEntry, and you may pass in the BatchEntry
+with a query URL instead of sending a url_string.

+Args:
+  url_string: str (optional)
+  entry: BatchEntry (optional)
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters
+ +
add_update(self, entry, batch_id_string=None)
Add an update request to the list of batch operations in this feed.

+Sets the operation type of the entry to insert if it is not already set
+and assigns the desired batch id to the entry so that it can be
+referenced in the server's response.

+Args:
+  entry: BatchEntry The entry which will be sent to the server as an
+      update (HTTP PUT) request. The item must have a valid atom id
+      so that the server knows which entry to replace.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. See also comments for AddInsert.
+ +
find_batch_link(self)
+ +
+Data and other attributes inherited from gdata.data.BatchFeed:
+
interrupted = <class 'gdata.data.BatchInterrupted'>
The batch:interrupted element sent if batch request was interrupted.

+Only appears in a feed if some of the batch entries could not be processed.
+See: http://code.google.com/apis/gdata/batch.html#Handling_Errors
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class ColCount(atom.core.XmlElement)
   The gs:colCount element.

+Indicates the number of columns in the worksheet, including columns that
+contain only empty cells. The <gs:colCount> element can appear as a child
+of <atom:entry> or <atom:feed>
 
 
Method resolution order:
+
ColCount
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Column(Field)
   The gs:column element.
 
 
Method resolution order:
+
Column
+
Field
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes inherited from Field:
+
index = 'index'
+ +
name = 'name'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Data(atom.core.XmlElement)
   The gs:data element.

+A data region of a table. Contained in an <atom:entry> element.
 
 
Method resolution order:
+
Data
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
column = [<class 'gdata.spreadsheets.data.Column'>]
+ +
insertion_mode = 'insertionMode'
+ +
num_rows = 'numRows'
+ +
start_row = 'startRow'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + +
 
+class Error(exceptions.Exception)
    
Method resolution order:
+
Error
+
exceptions.Exception
+
exceptions.BaseException
+
__builtin__.object
+
+
+Data descriptors defined here:
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from exceptions.Exception:
+
__init__(...)
x.__init__(...) initializes x; see x.__class__.__doc__ for signature
+ +
+Data and other attributes inherited from exceptions.Exception:
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+ +
+Methods inherited from exceptions.BaseException:
+
__delattr__(...)
x.__delattr__('name') <==> del x.name
+ +
__getattribute__(...)
x.__getattribute__('name') <==> x.name
+ +
__getitem__(...)
x.__getitem__(y) <==> x[y]
+ +
__getslice__(...)
x.__getslice__(i, j) <==> x[i:j]

+Use of negative indices is not supported.
+ +
__reduce__(...)
+ +
__repr__(...)
x.__repr__() <==> repr(x)
+ +
__setattr__(...)
x.__setattr__('name', value) <==> x.name = value
+ +
__setstate__(...)
+ +
__str__(...)
x.__str__() <==> str(x)
+ +
__unicode__(...)
+ +
+Data descriptors inherited from exceptions.BaseException:
+
__dict__
+
+
args
+
+
message
+
+

+ + + + + + + +
 
+class Field(atom.core.XmlElement)
   The gs:field element.

+A field single cell within a record. Contained in an <atom:entry>.
 
 
Method resolution order:
+
Field
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
index = 'index'
+ +
name = 'name'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + +
 
+class FieldMissing(exceptions.Exception)
    
Method resolution order:
+
FieldMissing
+
exceptions.Exception
+
exceptions.BaseException
+
__builtin__.object
+
+
+Data descriptors defined here:
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from exceptions.Exception:
+
__init__(...)
x.__init__(...) initializes x; see x.__class__.__doc__ for signature
+ +
+Data and other attributes inherited from exceptions.Exception:
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+ +
+Methods inherited from exceptions.BaseException:
+
__delattr__(...)
x.__delattr__('name') <==> del x.name
+ +
__getattribute__(...)
x.__getattribute__('name') <==> x.name
+ +
__getitem__(...)
x.__getitem__(y) <==> x[y]
+ +
__getslice__(...)
x.__getslice__(i, j) <==> x[i:j]

+Use of negative indices is not supported.
+ +
__reduce__(...)
+ +
__repr__(...)
x.__repr__() <==> repr(x)
+ +
__setattr__(...)
x.__setattr__('name', value) <==> x.name = value
+ +
__setstate__(...)
+ +
__str__(...)
x.__str__() <==> str(x)
+ +
__unicode__(...)
+ +
+Data descriptors inherited from exceptions.BaseException:
+
__dict__
+
+
args
+
+
message
+
+

+ + + + + + + +
 
+class Header(atom.core.XmlElement)
   The gs:header element.

+Indicates which row is the header row. Contained in an <atom:entry>.
 
 
Method resolution order:
+
Header
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
row = 'row'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class HeaderNotSet(Error)
   The desired column header had no value for the row in the list feed.
 
 
Method resolution order:
+
HeaderNotSet
+
Error
+
exceptions.Exception
+
exceptions.BaseException
+
__builtin__.object
+
+
+Data descriptors inherited from Error:
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Methods inherited from exceptions.Exception:
+
__init__(...)
x.__init__(...) initializes x; see x.__class__.__doc__ for signature
+ +
+Data and other attributes inherited from exceptions.Exception:
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+ +
+Methods inherited from exceptions.BaseException:
+
__delattr__(...)
x.__delattr__('name') <==> del x.name
+ +
__getattribute__(...)
x.__getattribute__('name') <==> x.name
+ +
__getitem__(...)
x.__getitem__(y) <==> x[y]
+ +
__getslice__(...)
x.__getslice__(i, j) <==> x[i:j]

+Use of negative indices is not supported.
+ +
__reduce__(...)
+ +
__repr__(...)
x.__repr__() <==> repr(x)
+ +
__setattr__(...)
x.__setattr__('name', value) <==> x.name = value
+ +
__setstate__(...)
+ +
__str__(...)
x.__str__() <==> str(x)
+ +
__unicode__(...)
+ +
+Data descriptors inherited from exceptions.BaseException:
+
__dict__
+
+
args
+
+
message
+
+

+ + + + + + + +
 
+class ListEntry(gdata.data.GDEntry)
   An Atom entry representing a worksheet row in the list feed.

+The values for a particular column can be get and set using
+x.get_value('columnheader') and x.set_value('columnheader', 'value').
+See also the explanation of column names in the ListFeed class.
 
 
Method resolution order:
+
ListEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Methods defined here:
+
get_value(self, column_name)
Returns the displayed text for the desired column in this row.

+The formula or input which generated the displayed value is not accessible
+through the list feed, to see the user's input, use the cells feed.

+If a column is not present in this spreadsheet, or there is no value
+for a column in this row, this method will return None.
+ +
set_value(self, column_name, value)
Changes the value of cell in this row under the desired column name.

+Warning: if the cell contained a formula, it will be wiped out by setting
+the value using the list feed since the list feed only works with
+displayed values.

+No client side checking is performed on the column_name, you need to
+ensure that the column_name is the local tag name in the gsx tag for the
+column. For example, the column_name will not contain special characters,
+spaces, uppercase letters, etc.
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class ListRow(atom.core.XmlElement)
   A gsx column value within a row.

+The local tag in the _qname is blank and must be set to the column
+name. For example, when adding to a ListEntry, do:
+col_value = ListRow(text='something')
+col_value._qname = col_value._qname % 'mycolumnname'
 
 
Method resolution order:
+
ListRow
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class ListsFeed(gdata.data.GDFeed)
   An Atom feed in which each entry represents a row in a worksheet.

+The first row in the worksheet is used as the column names for the values
+in each row. If a header cell is empty, then a unique column ID is used
+for the gsx element name.

+Spaces in a column name are removed from the name of the corresponding
+gsx element.

+Caution: The columnNames are case-insensitive. For example, if you see
+a <gsx:e-mail> element in a feed, you can't know whether the column
+heading in the original worksheet was "e-mail" or "E-Mail".

+Note: If two or more columns have the same name, then subsequent columns
+of the same name have _n appended to the columnName. For example, if the
+first column name is "e-mail", followed by columns named "E-Mail" and
+"E-mail", then the columnNames will be gsx:e-mail, gsx:e-mail_2, and
+gsx:e-mail_3 respectively.
 
 
Method resolution order:
+
ListsFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.spreadsheets.data.ListEntry'>]
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class Record(gdata.data.GDEntry)
   An Atom entry representing a single record in a table.

+Note that the order of items in each record is the same as the order of
+columns in the table definition, which may not match the order of
+columns in the GUI.
 
 
Method resolution order:
+
Record
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Methods defined here:
+
ValueForIndex = value_for_index(self, column_index)
+ +
ValueForName = value_for_name(self, name)
+ +
get_record_id(self)
+ +
value_for_index(self, column_index)
+ +
value_for_name(self, name)
+ +
+Data and other attributes defined here:
+
field = [<class 'gdata.spreadsheets.data.Field'>]
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class RecordsFeed(gdata.data.GDFeed)
   An Atom feed containing the individuals records in a table.
 
 
Method resolution order:
+
RecordsFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.spreadsheets.data.Record'>]
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class RowCount(atom.core.XmlElement)
   The gs:rowCount element.

+Indicates the number of total rows in the worksheet, including rows that
+contain only empty cells. The <gs:rowCount> element can appear as a
+child of <atom:entry> or <atom:feed>.
 
 
Method resolution order:
+
RowCount
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Spreadsheet(gdata.data.GDEntry)
   An Atom entry which represents a Google Spreadsheet.
 
 
Method resolution order:
+
Spreadsheet
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Methods defined here:
+
FindWorksheetsFeed = find_worksheets_feed(self)
+ +
find_worksheets_feed(self)
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class SpreadsheetsFeed(gdata.data.GDFeed)
   An Atom feed listing a user's Google Spreadsheets.
 
 
Method resolution order:
+
SpreadsheetsFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.spreadsheets.data.Spreadsheet'>]
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class Table(gdata.data.GDEntry)
   An Atom entry that represents a subsection of a worksheet.

+A table allows you to treat part or all of a worksheet somewhat like a
+table in a database that is, as a set of structured data items. Tables
+don't exist until you explicitly create them before you can use a table
+feed, you have to explicitly define where the table data comes from.
 
 
Method resolution order:
+
Table
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Methods defined here:
+
GetTableId = get_table_id(self)
+ +
get_table_id(self)
+ +
+Data and other attributes defined here:
+
data = <class 'gdata.spreadsheets.data.Data'>
The gs:data element.

+A data region of a table. Contained in an <atom:entry> element.
+ +
header = <class 'gdata.spreadsheets.data.Header'>
The gs:header element.

+Indicates which row is the header row. Contained in an <atom:entry>.
+ +
worksheet = <class 'gdata.spreadsheets.data.Worksheet'>
The gs:worksheet element.

+The worksheet where the table lives.Contained in an <atom:entry>.
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class TablesFeed(gdata.data.GDFeed)
   An Atom feed containing the tables defined within a worksheet.
 
 
Method resolution order:
+
TablesFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.spreadsheets.data.Table'>]
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class Worksheet(atom.core.XmlElement)
   The gs:worksheet element.

+The worksheet where the table lives.Contained in an <atom:entry>.
 
 
Method resolution order:
+
Worksheet
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
name = 'name'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class WorksheetEntry(gdata.data.GDEntry)
   An Atom entry representing a single worksheet in a spreadsheet.
 
 
Method resolution order:
+
WorksheetEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
col_count = <class 'gdata.spreadsheets.data.ColCount'>
The gs:colCount element.

+Indicates the number of columns in the worksheet, including columns that
+contain only empty cells. The <gs:colCount> element can appear as a child
+of <atom:entry> or <atom:feed>
+ +
row_count = <class 'gdata.spreadsheets.data.RowCount'>
The gs:rowCount element.

+Indicates the number of total rows in the worksheet, including rows that
+contain only empty cells. The <gs:rowCount> element can appear as a
+child of <atom:entry> or <atom:feed>.
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class WorksheetsFeed(gdata.data.GDFeed)
   A feed containing the worksheets in a single spreadsheet.
 
 
Method resolution order:
+
WorksheetsFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.spreadsheets.data.WorksheetEntry'>]
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + +
 
+Data
       GSX_NAMESPACE = 'http://schemas.google.com/spreadsheets/2006/extended'
+GS_TEMPLATE = '{http://schemas.google.com/spreadsheets/2006}%s'
+INSERT_MODE = 'insert'
+OVERWRITE_MODE = 'overwrite'
+WORKSHEETS_REL = 'http://schemas.google.com/spreadsheets/2006#worksheetsfeed'
+__author__ = 'j.s@google.com (Jeff Scudder)'

+ + + + + +
 
+Author
       j.s@google.com (Jeff Scudder)
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.spreadsheet.service.html python-gdata-2.0.8/pydocs/gdata.spreadsheet.service.html --- python-gdata-1.2.4/pydocs/gdata.spreadsheet.service.html 2009-01-22 19:55:42.000000000 +0000 +++ python-gdata-2.0.8/pydocs/gdata.spreadsheet.service.html 2010-02-26 23:16:48.000000000 +0000 @@ -12,8 +12,8 @@

SpreadsheetsService extends the GDataService to streamline Google
Spreadsheets operations.
 
-  GBaseService: Provides methods to query feeds and manipulate items. Extends
-                GDataService.
+  SpreadsheetService: Provides methods to query feeds and manipulate items.
+                      Extends GDataService.
 
  DictionaryToParamList: Function which converts a dictionary into a list of
                         URL arguments (represented as strings). This is a
@@ -22,7 +22,7 @@ +Modules
 
-Modules
       
atom
@@ -172,8 +172,6 @@
__gt__(...)
x.__gt__(y) <==> x>y
-
__hash__(...)
x.__hash__() <==> hash(x)
-
__iter__(...)
x.__iter__() <==> iter(x)
__le__(...)
x.__le__(y) <==> x<=y
@@ -188,6 +186,8 @@
__setitem__(...)
x.__setitem__(i, y) <==> x[i]=y
+
__sizeof__(...)
D.__sizeof__() -> size of D in memory, in bytes
+
clear(...)
D.clear() -> None.  Remove all items from D.
copy(...)
D.copy() -> a shallow copy of D
@@ -221,9 +221,11 @@
Data and other attributes inherited from __builtin__.dict:
-
__new__ = <built-in method __new__ of type object at 0x72b260>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__hash__ = None
-
fromkeys = <built-in method fromkeys of type object at 0xd154d0>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
+
__new__ = <built-in method __new__ of type object at 0x7569a0>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+ +
fromkeys = <built-in method fromkeys of type object at 0xca1ee0>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
v defaults to None.

@@ -325,8 +327,6 @@

__gt__(...)
x.__gt__(y) <==> x>y
-
__hash__(...)
x.__hash__() <==> hash(x)
-
__iter__(...)
x.__iter__() <==> iter(x)
__le__(...)
x.__le__(y) <==> x<=y
@@ -341,6 +341,8 @@
__setitem__(...)
x.__setitem__(i, y) <==> x[i]=y
+
__sizeof__(...)
D.__sizeof__() -> size of D in memory, in bytes
+
clear(...)
D.clear() -> None.  Remove all items from D.
copy(...)
D.copy() -> a shallow copy of D
@@ -374,9 +376,11 @@
Data and other attributes inherited from __builtin__.dict:
-
__new__ = <built-in method __new__ of type object at 0x72b260>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__hash__ = None
+ +
__new__ = <built-in method __new__ of type object at 0x7569a0>
T.__new__(S, ...) -> a new object with type S, a subtype of T
-
fromkeys = <built-in method fromkeys of type object at 0xd142c0>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
+
fromkeys = <built-in method fromkeys of type object at 0xb8dd10>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
v defaults to None.

@@ -405,7 +409,7 @@


Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
@@ -429,6 +433,8 @@
__str__(...)
x.__str__() <==> str(x)
+
__unicode__(...)
+
Data descriptors inherited from exceptions.BaseException:
__dict__
@@ -436,7 +442,6 @@
args
message
-
exception message

@@ -537,8 +542,6 @@
__gt__(...)
x.__gt__(y) <==> x>y
-
__hash__(...)
x.__hash__() <==> hash(x)
-
__iter__(...)
x.__iter__() <==> iter(x)
__le__(...)
x.__le__(y) <==> x<=y
@@ -553,6 +556,8 @@
__setitem__(...)
x.__setitem__(i, y) <==> x[i]=y
+
__sizeof__(...)
D.__sizeof__() -> size of D in memory, in bytes
+
clear(...)
D.clear() -> None.  Remove all items from D.
copy(...)
D.copy() -> a shallow copy of D
@@ -586,9 +591,11 @@
Data and other attributes inherited from __builtin__.dict:
-
__new__ = <built-in method __new__ of type object at 0x72b260>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__hash__ = None
+ +
__new__ = <built-in method __new__ of type object at 0x7569a0>
T.__new__(S, ...) -> a new object with type S, a subtype of T
-
fromkeys = <built-in method fromkeys of type object at 0xd15e80>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
+
fromkeys = <built-in method fromkeys of type object at 0xca3700>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
v defaults to None.

@@ -616,7 +623,7 @@


Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
@@ -640,6 +647,8 @@
__str__(...)
x.__str__() <==> str(x)
+
__unicode__(...)
+
Data descriptors inherited from exceptions.BaseException:
__dict__
@@ -647,7 +656,6 @@
args
message
-
exception message

@@ -702,7 +710,7 @@ Returns:
  True if the worksheet was deleted successfully. -
ExecuteBatch(self, batch_feed, url=None, spreadsheet_key=None, worksheet_id=None, converter=<function SpreadsheetsCellsFeedFromString at 0x935050>)
Sends a batch request feed to the server.
+
ExecuteBatch(self, batch_feed, url=None, spreadsheet_key=None, worksheet_id=None, converter=<function SpreadsheetsCellsFeedFromString at 0x7fbb8a942e60>)
Sends a batch request feed to the server.
 
The batch request needs to be sent to the batch URL for a particular 
worksheet. You can specify the worksheet by providing the spreadsheet_key
@@ -724,7 +732,7 @@   converter: Function (optional) Function to be executed on the server's
      response. This function should take one string as a parameter. The
      default value is SpreadsheetsCellsFeedFromString which will turn the result
-      into a gdata.base.GBaseItem object.
+      into a gdata.spreadsheet.SpreadsheetsCellsFeed object.
 
Returns:
  A gdata.BatchFeed containing the results.
@@ -793,6 +801,12 @@
UpdateRow(self, entry, new_row_data)
Updates a row with the provided data
 
+If you want to add additional information to a row, it is often
+easier to change the values in entry.custom, then use the Put
+method instead of UpdateRow. This UpdateRow method will replace
+the contents of the row with new_row_data - it will change all columns
+not just the columns specified in the new_row_data dict.

Args:
  entry: gdata.spreadsheet.SpreadsheetsList The entry to be updated
  new_row_data: dict A dictionary of column header to row data
@@ -865,7 +879,7 @@ Returns:
  True if the entry was deleted.
-
FetchOAuthRequestToken(self, scopes=None, extra_parameters=None, request_url='https://www.google.com/accounts/OAuthGetRequestToken')
Fetches OAuth request token and returns it.
+
FetchOAuthRequestToken(self, scopes=None, extra_parameters=None, request_url='https://www.google.com/accounts/OAuthGetRequestToken', oauth_callback=None)
Fetches and sets the OAuth request token and returns it.
 
Args:
  scopes: string or list of string base URL(s) of the service(s) to be
@@ -880,10 +894,14 @@       extra_parameters = {'oauth_version': '2.0'}
  request_url: Request token URL. The default is
      'https://www.google.com/accounts/OAuthGetRequestToken'.
-  
+  oauth_callback: str (optional) If set, it is assume the client is using
+      the OAuth v1.0a protocol where the callback url is sent in the
+      request token step.  If the oauth_callback is also set in
+      extra_params, this value will override that one.

Returns:
  The fetched request token as a gdata.auth.OAuthToken object.
-  

Raises:
  FetchingOAuthRequestTokenFailed if the server responded to the request
  with an error.
@@ -1015,7 +1033,7 @@ Returns:
  A GDataEntry built from the XML in the server's response.
-
GetFeed(self, uri, extra_headers=None, converter=<function GDataFeedFromString at 0x8ef1b8>)
Query the GData API with the given URI and receive a Feed.
+
GetFeed(self, uri, extra_headers=None, converter=<function GDataFeedFromString at 0x7fbb8a910d70>)
Query the GData API with the given URI and receive a Feed.
 
See also documentation for gdata.service.Get
 
@@ -1031,6 +1049,8 @@ Returns:
  A GDataFeed built from the XML in the server's response.
+
GetGeneratorFromLinkFinder(self, link_finder, func, num_retries=3, delay=1, backoff=2)
returns a generator for pagination
+
GetMedia(self, uri, extra_headers=None)
Returns a MediaSource containing media and its metadata from the given
URI string.
@@ -1049,6 +1069,26 @@   A new feed representing the next set of results in the server's feed.
  The type of this feed will match that of the feed argument.
+
GetOAuthInputParameters(self)
+ +
GetWithRetries(self, uri, extra_headers=None, redirects_remaining=4, encoding='UTF-8', converter=None, num_retries=3, delay=1, backoff=2, logger=None)
This is a wrapper method for Get with retring capability.

+To avoid various errors while retrieving bulk entities by retring
+specified times.

+Note this method relies on the time module and so may not be usable
+by default in Python2.2.

+Args:
+  num_retries: integer The retry count.
+  delay: integer The initial delay for retring.
+  backoff: integer how much the delay should lengthen after each failure.
+  logger: an object which has a debug(str) method to receive logging
+          messages. Recommended that you pass in the logging module.
+Raises:
+  ValueError if any of the parameters has an invalid value.
+  RanOutOfTries on failure after number of retries.
+
Post(self, data, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=4, media_source=None, converter=None)
Insert or update  data into a GData service at the given URI.
 
Args:
@@ -1209,7 +1249,7 @@ Args:
  token: string or instance of a ClientLoginToken.
-
SetOAuthInputParameters(self, signature_method, consumer_key, consumer_secret=None, rsa_key=None, two_legged_oauth=False)
Sets parameters required for using OAuth authentication mechanism.
+
SetOAuthInputParameters(self, signature_method, consumer_key, consumer_secret=None, rsa_key=None, two_legged_oauth=False, requestor_id=None)
Sets parameters required for using OAuth authentication mechanism.
 
NOTE: Though consumer_secret and rsa_key are optional, either of the two
is required depending on the value of the signature_method.
@@ -1226,7 +1266,10 @@       Required only for HMAC_SHA1 signature method.
  rsa_key: string (optional) Private key required for RSA_SHA1 signature
      method.
-  two_legged_oauth: string (default=False) Enables two-legged OAuth process.
+  two_legged_oauth: boolean (optional) Enables two-legged OAuth process.
+  requestor_id: string (optional) User email adress to make requests on
+      their behalf.  This parameter should only be set when two_legged_oauth
+      is True.
SetOAuthToken(self, oauth_token)
Attempts to set the current token and add it to the token store.
 
@@ -1240,18 +1283,24 @@ Args:
  request_token: gdata.auth.OAuthToken OAuth request token.
-
UpgradeToOAuthAccessToken(self, authorized_request_token=None, request_url='https://www.google.com/accounts/OAuthGetAccessToken', oauth_version='1.0')
Upgrades the authorized request token to an access token.
+
UpgradeToOAuthAccessToken(self, authorized_request_token=None, request_url='https://www.google.com/accounts/OAuthGetAccessToken', oauth_version='1.0', oauth_verifier=None)
Upgrades the authorized request token to an access token and returns it
 
Args:
  authorized_request_token: gdata.auth.OAuthToken (optional) OAuth request
      token. If not specified, then the current token will be used if it is
      of type <gdata.auth.OAuthToken>, else it is found by looking in the
      token_store by looking for a token for the current scope.
+  request_url: Access token URL. The default is
+      'https://www.google.com/accounts/OAuthGetAccessToken'.
  oauth_version: str (default='1.0') oauth_version parameter. All other
      'oauth_' parameters are added by default. This parameter too, is
      added by default but here you can override it's value.
-  request_url: Access token URL. The default is
-      'https://www.google.com/accounts/OAuthGetAccessToken'.
+  oauth_verifier: str (optional) If present, it is assumed that the client
+    will use the OAuth v1.0a protocol which includes passing the
+    oauth_verifier (as returned by the SP) in the access token step.

+Returns:
+  Access token
      
Raises:
  NonOAuthToken if the user's authorized request token is not an OAuth
@@ -1321,7 +1370,7 @@   username: str
  password: str
-
request(self, operation, url, data=None, headers=None, url_params=None)
+
request(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
use_basic_auth(self, username, password, scopes=None)
diff -Nru python-gdata-1.2.4/pydocs/gdata.spreadsheet.text_db.html python-gdata-2.0.8/pydocs/gdata.spreadsheet.text_db.html --- python-gdata-1.2.4/pydocs/gdata.spreadsheet.text_db.html 2008-10-16 00:01:57.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.spreadsheet.text_db.html 2009-07-24 02:47:27.000000000 +0100 @@ -26,7 +26,7 @@
+Modules
 
-Modules
       
StringIO
@@ -92,7 +92,7 @@
Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
@@ -116,6 +116,8 @@
__str__(...)
x.__str__() <==> str(x)
+
__unicode__(...)
+
Data descriptors inherited from exceptions.BaseException:
__dict__
@@ -123,7 +125,6 @@
args
message
-
exception message

@@ -150,7 +151,7 @@
Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
@@ -174,6 +175,8 @@
__str__(...)
x.__str__() <==> str(x)
+
__unicode__(...)
+
Data descriptors inherited from exceptions.BaseException:
__dict__
@@ -181,7 +184,6 @@
args
message
-
exception message

@@ -327,7 +329,7 @@
Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
@@ -351,6 +353,8 @@
__str__(...)
x.__str__() <==> str(x)
+
__unicode__(...)
+
Data descriptors inherited from exceptions.BaseException:
__dict__
@@ -358,7 +362,6 @@
args
message
-
exception message

@@ -478,8 +481,6 @@
__gt__(...)
x.__gt__(y) <==> x>y
-
__hash__(...)
x.__hash__() <==> hash(x)
-
__iadd__(...)
x.__iadd__(y) <==> x+=y
__imul__(...)
x.__imul__(y) <==> x*=y
@@ -508,6 +509,8 @@  
Use  of negative indices is not supported. +
__sizeof__(...)
L.__sizeof__() -- size of L in memory, in bytes
+
append(...)
L.append(object) -- append object to end
count(...)
L.count(value) -> integer -- return number of occurrences of value
@@ -529,7 +532,9 @@
Data and other attributes inherited from __builtin__.list:
-
__new__ = <built-in method __new__ of type object at 0x729b20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__hash__ = None
+ +
__new__ = <built-in method __new__ of type object at 0x755000>
T.__new__(S, ...) -> a new object with type S, a subtype of T

diff -Nru python-gdata-1.2.4/pydocs/gdata.test_config.html python-gdata-2.0.8/pydocs/gdata.test_config.html --- python-gdata-1.2.4/pydocs/gdata.test_config.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.test_config.html 2010-02-26 23:16:48.000000000 +0000 @@ -0,0 +1,186 @@ + + +Python: module gdata.test_config + + +
+ +
 
+ 
gdata.test_config
index
/usr/local/svn/gdata-python-client/src/gdata/test_config.py
+

# Copyright (C) 2009 Google Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.

+

+ + + + + +
 
+Modules
       
atom
+gdata
+
getpass
+inspect
+
sys
+unittest
+

+ + + + + +
 
+Classes
       
+
__builtin__.object +
+
+
ConfigCollection +
Option +
+
+
+

+ + + + + +
 
+class ConfigCollection(__builtin__.object)
    Methods defined here:
+
__init__(self, options=None)
+ +
get_value(self, option_name)
+ +
register(self, *args, **kwargs)
+ +
register_option(self, option)
+ +
render_usage(self)
+ +
set_value(self, option_name, value)
+ +
+Data descriptors defined here:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + +
 
+class Option(__builtin__.object)
    Methods defined here:
+
__init__(self, name, prompt, secret=False, description=None, default=None)
+ +
get(self)
+ +
+Data descriptors defined here:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+

+ + + + + +
 
+Functions
       
build_suite(classes)
Creates a TestSuite for all unit test classes in the list.

+Assumes that each of the classes in the list has unit test methods which
+begin with 'test'. Calls unittest.makeSuite.

+Returns: 
+  A new unittest.TestSuite containing a test suite for all classes.
+
check_clients_with_auth(test, classes)
+
check_data_classes(test, classes)
+
close_client(client)
Saves the recoded responses to a temp file if the config file allows.

+This should be called in the unit test's tearDown method.

+Checks to see if the 'savecache' option is set to 'true', to make sure we
+only save sessions to repeat if the user desires.
+
close_service(service)
+
configure_cache(client, test_name)
Loads or begins a cached session to record HTTP traffic.

+Should be called at the beginning of each test method.

+Args:
+  client: a gdata.GDClient whose http_client member has been replaced
+          with a atom.mock_http_core.MockHttpClient so that repeated
+          executions can used cached responses instead of contacting
+          the server.
+  test_name: str The name of this test method. Examples: 
+             'TestClass.test_x_works', 'TestClass.test_crud_operations'.
+             This is used to name the recording of the HTTP requests and
+             responses, so it should be unique to each test method in the
+             test case.
+
configure_client(client, case_name, service_name, use_apps_auth=False)
Sets up a mock client which will reuse a saved session.

+Should be called during setUp of each unit test.

+Handles authentication to allow the GDClient to make requests which
+require an auth header.

+Args:
+  client: a gdata.GDClient whose http_client member should be replaced
+          with a atom.mock_http_core.MockHttpClient so that repeated
+          executions can used cached responses instead of contacting
+          the server.
+  case_name: str The name of the test case class. Examples: 'BloggerTest',
+             'ContactsTest'. Used to save a session
+             for the ClientLogin auth token request, so the case_name
+             should be reused if and only if the same username, password,
+             and service are being used.
+  service_name: str The service name as used for ClientLogin to identify
+                the Google Data API being accessed. Example: 'blogger',
+                'wise', etc.
+  use_apps_auth: bool (optional) If set to True, use appsusername and
+                 appspassword command-line args instead of username and
+                 password respectively.
+
configure_service(service, case_name, service_name)
Sets up a mock GDataService v1 client to reuse recorded sessions.

+Should be called during setUp of each unit test. This is a duplicate of
+configure_client, modified to handle old v1 service classes.
+
configure_service_cache(service, test_name)
Loads or starts a session recording for a v1 Service object.

+Duplicates the behavior of configure_cache, but the target for this
+function is a v1 Service object instead of a v2 Client.
+

+ + + + + +
 
+Data
       APPS_DOMAIN_OPTION = <gdata.test_config.Option object at 0xbc8810>
+BLOG_ID_OPTION = <gdata.test_config.Option object at 0xbc8750>
+GA_TABLE_ID = <gdata.test_config.Option object at 0xbc8910>
+ISSUE_ASSIGNEE_OPTION = <gdata.test_config.Option object at 0xbc88d0>
+PROJECT_NAME_OPTION = <gdata.test_config.Option object at 0xbc8890>
+SITES_NAME_OPTION = <gdata.test_config.Option object at 0xbc8850>
+SPREADSHEET_ID_OPTION = <gdata.test_config.Option object at 0xbc87d0>
+TEST_IMAGE_LOCATION_OPTION = <gdata.test_config.Option object at 0xbc8790>
+options = <gdata.test_config.ConfigCollection object at 0xbc84d0>
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.test_config_template.html python-gdata-2.0.8/pydocs/gdata.test_config_template.html --- python-gdata-1.2.4/pydocs/gdata.test_config_template.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.test_config_template.html 2009-10-09 23:48:43.000000000 +0100 @@ -0,0 +1,243 @@ + + +Python: module gdata.test_config_template + + + + +
 
+ 
gdata.test_config_template
index
/usr/local/svn/gdata-python-client/src/gdata/test_config_template.pyc
+

Fill in this module with configuration data to use in tests.

+See comments in the source code for explanations of the settings.

+

+ + + + + +
 
+Modules
       
os
+

+ + + + + +
 
+Classes
       
+
__builtin__.object +
+
+
NoAuthConfig +
TestConfig +
+
+
BloggerConfig +
ContactsConfig +
MapsConfig +
+
+
+
+
+

+ + + + + +
 
+class BloggerConfig(TestConfig)
    
Method resolution order:
+
BloggerConfig
+
TestConfig
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
blog_id = "<your test blog's id>"
+ +
content = 'This is a <b>test</b>.'
+ +
service = 'blogger'
+ +
title = 'A Test Post'
+ +
+Class methods inherited from TestConfig:
+
email(cls) from __builtin__.type
Provides email to log into the test account for this service.

+By default uses GOOGLE_ACCOUNT_EMAIL, so overwrite this function if you
+have a service-specific test account.
+ +
password(cls) from __builtin__.type
Provides password to log into the test account for this service.

+By default uses GOOGLE_ACCOUNT_PASSWORD, so overwrite this function if
+you have a service-specific test account.
+ +
+Data descriptors inherited from TestConfig:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Data and other attributes inherited from TestConfig:
+
auth_token = None
+ +

+ + + + + +
 
+class ContactsConfig(TestConfig)
    
Method resolution order:
+
ContactsConfig
+
TestConfig
+
__builtin__.object
+
+
+Class methods defined here:
+
get_image_location(cls) from __builtin__.type
+ +
+Data and other attributes defined here:
+
service = 'cp'
+ +
+Class methods inherited from TestConfig:
+
email(cls) from __builtin__.type
Provides email to log into the test account for this service.

+By default uses GOOGLE_ACCOUNT_EMAIL, so overwrite this function if you
+have a service-specific test account.
+ +
password(cls) from __builtin__.type
Provides password to log into the test account for this service.

+By default uses GOOGLE_ACCOUNT_PASSWORD, so overwrite this function if
+you have a service-specific test account.
+ +
+Data descriptors inherited from TestConfig:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Data and other attributes inherited from TestConfig:
+
auth_token = None
+ +

+ + + + + +
 
+class MapsConfig(TestConfig)
    
Method resolution order:
+
MapsConfig
+
TestConfig
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
map_summary = 'A test description'
+ +
map_title = 'Some test map'
+ +
service = 'local'
+ +
+Class methods inherited from TestConfig:
+
email(cls) from __builtin__.type
Provides email to log into the test account for this service.

+By default uses GOOGLE_ACCOUNT_EMAIL, so overwrite this function if you
+have a service-specific test account.
+ +
password(cls) from __builtin__.type
Provides password to log into the test account for this service.

+By default uses GOOGLE_ACCOUNT_PASSWORD, so overwrite this function if
+you have a service-specific test account.
+ +
+Data descriptors inherited from TestConfig:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Data and other attributes inherited from TestConfig:
+
auth_token = None
+ +

+ + + + + +
 
+class NoAuthConfig(__builtin__.object)
    Data descriptors defined here:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Data and other attributes defined here:
+
auth_token = False
+ +

+ + + + + +
 
+class TestConfig(__builtin__.object)
    Class methods defined here:
+
email(cls) from __builtin__.type
Provides email to log into the test account for this service.

+By default uses GOOGLE_ACCOUNT_EMAIL, so overwrite this function if you
+have a service-specific test account.
+ +
password(cls) from __builtin__.type
Provides password to log into the test account for this service.

+By default uses GOOGLE_ACCOUNT_PASSWORD, so overwrite this function if
+you have a service-specific test account.
+ +
+Data descriptors defined here:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
+Data and other attributes defined here:
+
auth_token = None
+ +
service = None
+ +

+ + + + + +
 
+Data
       CACHE_RESPONSES = True
+CLEAR_CACHE = True
+GOOGLE_ACCOUNT_EMAIL = '<your email>'
+GOOGLE_ACCOUNT_PASSWORD = '<your password>'
+RUN_LIVE_TESTS = False
+TEST_FILES_DIR = '<location of the tests directory>'
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.urlfetch.html python-gdata-2.0.8/pydocs/gdata.urlfetch.html --- python-gdata-1.2.4/pydocs/gdata.urlfetch.html 2008-10-16 00:01:57.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.urlfetch.html 2009-07-24 02:47:27.000000000 +0100 @@ -30,7 +30,7 @@ +Modules
 
-Modules
        -
StringIO
diff -Nru python-gdata-1.2.4/pydocs/gdata.webmastertools.data.html python-gdata-2.0.8/pydocs/gdata.webmastertools.data.html --- python-gdata-1.2.4/pydocs/gdata.webmastertools.data.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.webmastertools.data.html 2010-02-26 23:16:48.000000000 +0000 @@ -0,0 +1,6809 @@ + + +Python: module gdata.webmastertools.data + + + + +
 
+ 
gdata.webmastertools.data
index
/usr/local/svn/gdata-python-client/src/gdata/webmastertools/data.py
+

Contains the data classes of the Google Webmaster Tools Data API

+

+ + + + + +
 
+Modules
       
atom
+
gdata
+

+ + + + + +
 
+Classes
       
+
atom.core.XmlElement(__builtin__.object) +
+
+
CrawlIssueCrawlType +
CrawlIssueDateDetected +
CrawlIssueDetail +
CrawlIssueIssueType +
CrawlIssueLinkedFromUrl +
CrawlIssueUrl +
Indexed +
Keyword +
LastCrawled +
MessageBody +
MessageDate +
MessageLanguage +
MessageRead +
MessageSubject +
SiteId +
SitemapMobile +
SitemapMobileMarkupLanguage +
SitemapNews +
SitemapNewsPublicationLabel +
SitemapType +
SitemapUrlCount +
VerificationMethod +
Verified +
+
+
gdata.data.GDEntry(atom.data.Entry, gdata.data.LinkFinder) +
+
+
CrawlIssueEntry +
KeywordEntry +
MessageEntry +
SiteEntry +
SitemapEntry +
+
+
gdata.data.GDFeed(atom.data.Feed, gdata.data.LinkFinder) +
+
+
CrawlIssuesFeed +
KeywordsFeed +
MessagesFeed +
SitemapsFeed +
SitesFeed +
+
+
+

+ + + + + + + +
 
+class CrawlIssueCrawlType(atom.core.XmlElement)
   Type of crawl of the crawl issue
 
 
Method resolution order:
+
CrawlIssueCrawlType
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class CrawlIssueDateDetected(atom.core.XmlElement)
   Detection date for the issue
 
 
Method resolution order:
+
CrawlIssueDateDetected
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class CrawlIssueDetail(atom.core.XmlElement)
   Detail of the crawl issue
 
 
Method resolution order:
+
CrawlIssueDetail
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class CrawlIssueEntry(gdata.data.GDEntry)
   Describes a crawl issue entry
 
 
Method resolution order:
+
CrawlIssueEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
crawl_type = <class 'gdata.webmastertools.data.CrawlIssueCrawlType'>
Type of crawl of the crawl issue
+ +
date_detected = <class 'gdata.webmastertools.data.CrawlIssueDateDetected'>
Detection date for the issue
+ +
detail = <class 'gdata.webmastertools.data.CrawlIssueDetail'>
Detail of the crawl issue
+ +
issue_type = <class 'gdata.webmastertools.data.CrawlIssueIssueType'>
Type of crawl issue
+ +
linked_from = [<class 'gdata.webmastertools.data.CrawlIssueLinkedFromUrl'>]
+ +
url = <class 'gdata.webmastertools.data.CrawlIssueUrl'>
URL affected by the crawl issue
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class CrawlIssueIssueType(atom.core.XmlElement)
   Type of crawl issue
 
 
Method resolution order:
+
CrawlIssueIssueType
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class CrawlIssueLinkedFromUrl(atom.core.XmlElement)
   Source URL that links to the issue URL
 
 
Method resolution order:
+
CrawlIssueLinkedFromUrl
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class CrawlIssueUrl(atom.core.XmlElement)
   URL affected by the crawl issue
 
 
Method resolution order:
+
CrawlIssueUrl
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class CrawlIssuesFeed(gdata.data.GDFeed)
   Feed of crawl issues for a particular site
 
 
Method resolution order:
+
CrawlIssuesFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.webmastertools.data.CrawlIssueEntry'>]
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class Indexed(atom.core.XmlElement)
   Describes the indexing status of a site
 
 
Method resolution order:
+
Indexed
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Keyword(atom.core.XmlElement)
   A keyword in a site or in a link to a site
 
 
Method resolution order:
+
Keyword
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
source = 'source'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class KeywordEntry(gdata.data.GDEntry)
   Describes a keyword entry
 
 
Method resolution order:
+
KeywordEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class KeywordsFeed(gdata.data.GDFeed)
   Feed of keywords for a particular site
 
 
Method resolution order:
+
KeywordsFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.webmastertools.data.KeywordEntry'>]
+ +
keyword = [<class 'gdata.webmastertools.data.Keyword'>]
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class LastCrawled(atom.core.XmlElement)
   Describes the last crawled date of a site
 
 
Method resolution order:
+
LastCrawled
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class MessageBody(atom.core.XmlElement)
   Message body
 
 
Method resolution order:
+
MessageBody
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class MessageDate(atom.core.XmlElement)
   Message date
 
 
Method resolution order:
+
MessageDate
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class MessageEntry(gdata.data.GDEntry)
   Describes a message entry
 
 
Method resolution order:
+
MessageEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
body = <class 'gdata.webmastertools.data.MessageBody'>
Message body
+ +
date = <class 'gdata.webmastertools.data.MessageDate'>
Message date
+ +
language = <class 'gdata.webmastertools.data.MessageLanguage'>
Message language
+ +
read = <class 'gdata.webmastertools.data.MessageRead'>
Indicates if the message has already been read
+ +
subject = <class 'gdata.webmastertools.data.MessageSubject'>
Message subject
+ +
wt_id = <class 'gdata.webmastertools.data.SiteId'>
Site URL
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class MessageLanguage(atom.core.XmlElement)
   Message language
 
 
Method resolution order:
+
MessageLanguage
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class MessageRead(atom.core.XmlElement)
   Indicates if the message has already been read
 
 
Method resolution order:
+
MessageRead
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class MessageSubject(atom.core.XmlElement)
   Message subject
 
 
Method resolution order:
+
MessageSubject
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class MessagesFeed(gdata.data.GDFeed)
   Describes a messages feed
 
 
Method resolution order:
+
MessagesFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.webmastertools.data.MessageEntry'>]
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class SiteEntry(gdata.data.GDEntry)
   Describes a site entry
 
 
Method resolution order:
+
SiteEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
indexed = <class 'gdata.webmastertools.data.Indexed'>
Describes the indexing status of a site
+ +
last_crawled = <class 'gdata.webmastertools.data.LastCrawled'>
Describes the last crawled date of a site
+ +
verification_method = [<class 'gdata.webmastertools.data.VerificationMethod'>]
+ +
verified = <class 'gdata.webmastertools.data.Verified'>
Describes the verification status of a site
+ +
wt_id = <class 'gdata.webmastertools.data.SiteId'>
Site URL
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class SiteId(atom.core.XmlElement)
   Site URL
 
 
Method resolution order:
+
SiteId
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class SitemapEntry(gdata.data.GDEntry)
   Describes a sitemap entry
 
 
Method resolution order:
+
SitemapEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
indexed = <class 'gdata.webmastertools.data.Indexed'>
Describes the indexing status of a site
+ +
wt_id = <class 'gdata.webmastertools.data.SiteId'>
Site URL
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class SitemapMobile(atom.core.XmlElement)
   Lists acceptable mobile markup languages for URLs in this sitemap
 
 
Method resolution order:
+
SitemapMobile
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
sitemap_mobile_markup_language = [<class 'gdata.webmastertools.data.SitemapMobileMarkupLanguage'>]
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class SitemapMobileMarkupLanguage(atom.core.XmlElement)
   Describes a markup language for URLs in this sitemap
 
 
Method resolution order:
+
SitemapMobileMarkupLanguage
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class SitemapNews(atom.core.XmlElement)
   Lists publication labels for this sitemap
 
 
Method resolution order:
+
SitemapNews
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
sitemap_news_publication_label = [<class 'gdata.webmastertools.data.SitemapNewsPublicationLabel'>]
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class SitemapNewsPublicationLabel(atom.core.XmlElement)
   Specifies the publication label for this sitemap
 
 
Method resolution order:
+
SitemapNewsPublicationLabel
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class SitemapType(atom.core.XmlElement)
   Indicates the type of sitemap. Not used for News or Mobile Sitemaps
 
 
Method resolution order:
+
SitemapType
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class SitemapUrlCount(atom.core.XmlElement)
   Indicates the number of URLs contained in the sitemap
 
 
Method resolution order:
+
SitemapUrlCount
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class SitemapsFeed(gdata.data.GDFeed)
   Describes a sitemaps feed
 
 
Method resolution order:
+
SitemapsFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.webmastertools.data.SitemapEntry'>]
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class SitesFeed(gdata.data.GDFeed)
   Describes a sites feed
 
 
Method resolution order:
+
SitesFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.webmastertools.data.SiteEntry'>]
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class VerificationMethod(atom.core.XmlElement)
   Describes a verification method that may be used for a site
 
 
Method resolution order:
+
VerificationMethod
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
in_use = 'in-use'
+ +
type = 'type'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class Verified(atom.core.XmlElement)
   Describes the verification status of a site
 
 
Method resolution order:
+
Verified
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + +
 
+Data
       WT_TEMPLATE = '{http://schemas.google.com/webmaster/tools/2007/}%s'
+__author__ = 'j.s@google.com (Jeff Scudder)'

+ + + + + +
 
+Author
       j.s@google.com (Jeff Scudder)
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.webmastertools.html python-gdata-2.0.8/pydocs/gdata.webmastertools.html --- python-gdata-1.2.4/pydocs/gdata.webmastertools.html 2008-10-16 00:01:57.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.webmastertools.html 2009-11-25 01:04:14.000000000 +0000 @@ -17,8 +17,9 @@ Package Contents

       
service
-

+

data
+
service
+

-
 
@@ -101,7 +102,7 @@ Methods inherited from atom.AtomBase:
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__init__(self, extension_elements=None, extension_attributes=None, text=None)
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
__str__(self)
@@ -198,7 +199,7 @@ Methods inherited from atom.AtomBase:
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__init__(self, extension_elements=None, extension_attributes=None, text=None)
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
__str__(self)
@@ -245,7 +246,7 @@ Methods inherited from atom.AtomBase:
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__init__(self, extension_elements=None, extension_attributes=None, text=None)
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
__str__(self)
@@ -292,7 +293,7 @@ Methods inherited from atom.AtomBase:
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__init__(self, extension_elements=None, extension_attributes=None, text=None)
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
__str__(self)
@@ -364,6 +365,8 @@ Methods inherited from atom.LinkFinder:
GetAlternateLink(self)
+
GetEditMediaLink(self)
+
GetLicenseLink(self)
GetNextLink(self)
@@ -393,7 +396,7 @@ Methods inherited from atom.AtomBase:
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__init__(self, extension_elements=None, extension_attributes=None, text=None)
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
__str__(self)
@@ -440,7 +443,7 @@ Methods inherited from atom.AtomBase:
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__init__(self, extension_elements=None, extension_attributes=None, text=None)
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
__str__(self)
@@ -487,7 +490,7 @@ Methods inherited from atom.AtomBase:
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__init__(self, extension_elements=None, extension_attributes=None, text=None)
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
__str__(self)
@@ -633,7 +636,7 @@ Methods inherited from atom.AtomBase:
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__init__(self, extension_elements=None, extension_attributes=None, text=None)
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
__str__(self)
@@ -729,7 +732,7 @@ Methods inherited from atom.AtomBase:
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__init__(self, extension_elements=None, extension_attributes=None, text=None)
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
__str__(self)
@@ -776,7 +779,7 @@ Methods inherited from atom.AtomBase:
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__init__(self, extension_elements=None, extension_attributes=None, text=None)
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
__str__(self)
@@ -823,7 +826,7 @@ Methods inherited from atom.AtomBase:
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__init__(self, extension_elements=None, extension_attributes=None, text=None)
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
__str__(self)
@@ -870,7 +873,7 @@ Methods inherited from atom.AtomBase:
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__init__(self, extension_elements=None, extension_attributes=None, text=None)
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
__str__(self)
@@ -981,6 +984,8 @@ Methods inherited from atom.LinkFinder:
GetAlternateLink(self)
+
GetEditMediaLink(self)
+
GetLicenseLink(self)
GetNextLink(self)
@@ -1067,6 +1072,8 @@ Methods inherited from atom.LinkFinder:
GetAlternateLink(self)
+
GetEditMediaLink(self)
+
GetLicenseLink(self)
GetNextLink(self)
@@ -1152,6 +1159,8 @@ Methods inherited from atom.LinkFinder:
GetAlternateLink(self)
+
GetEditMediaLink(self)
+
GetLicenseLink(self)
GetNextLink(self)
@@ -1254,6 +1263,8 @@ Methods inherited from atom.LinkFinder:
GetAlternateLink(self)
+
GetEditMediaLink(self)
+
GetLicenseLink(self)
GetNextLink(self)
@@ -1273,7 +1284,7 @@
Methods defined here:
-
__init__(self, text=None, in_use=None, meta=None, extension_elements=None, extension_attributes=None)
+
__init__(self, text=None, in_use=None, meta=None, type=None, extension_elements=None, extension_attributes=None)

Methods inherited from atom.AtomBase:
@@ -1373,7 +1384,7 @@ Methods inherited from atom.AtomBase:
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__init__(self, extension_elements=None, extension_attributes=None, text=None)
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
__str__(self)
diff -Nru python-gdata-1.2.4/pydocs/gdata.webmastertools.service.html python-gdata-2.0.8/pydocs/gdata.webmastertools.service.html --- python-gdata-1.2.4/pydocs/gdata.webmastertools.service.html 2009-01-22 19:55:42.000000000 +0000 +++ python-gdata-2.0.8/pydocs/gdata.webmastertools.service.html 2010-02-26 23:16:48.000000000 +0000 @@ -18,7 +18,7 @@ +Modules
 
-Modules
       
atom
@@ -75,7 +75,7 @@
Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
@@ -99,6 +99,8 @@
__str__(...)
x.__str__() <==> str(x)
+
__unicode__(...)
+
Data descriptors inherited from exceptions.BaseException:
__dict__
@@ -106,7 +108,6 @@
args
message
-
exception message

@@ -237,7 +238,7 @@ Returns:
  True if the delete succeeded. -
GetSitemapsFeed(self, site_uri, uri='https://www.google.com/webmasters/tools/feeds/%(site_id)s/sitemaps/', converter=<function SitemapsFeedFromString at 0x93e398>)
Gets sitemaps feed of a site.
+
GetSitemapsFeed(self, site_uri, uri='https://www.google.com/webmasters/tools/feeds/%(site_id)s/sitemaps/', converter=<function SitemapsFeedFromString at 0x7f354ddc92a8>)
Gets sitemaps feed of a site.
 
Args:
  site_uri: str (optional) URI of which site to retrieve its sitemaps feed.
@@ -251,7 +252,7 @@   If converter is defined, the results of running converter on the server's
  response. Otherwise, it will be a SitemapsFeed object.
-
GetSitesFeed(self, uri='https://www.google.com/webmasters/tools/feeds/sites/', converter=<function SitesFeedFromString at 0x93ade8>)
Gets sites feed.
+
GetSitesFeed(self, uri='https://www.google.com/webmasters/tools/feeds/sites/', converter=<function SitesFeedFromString at 0x7f354ddc7cf8>)
Gets sites feed.
 
Args:
  uri: str (optional) URI to retrieve sites feed.
@@ -425,7 +426,7 @@ Returns:
  True if the entry was deleted.
-
FetchOAuthRequestToken(self, scopes=None, extra_parameters=None, request_url='https://www.google.com/accounts/OAuthGetRequestToken')
Fetches OAuth request token and returns it.
+
FetchOAuthRequestToken(self, scopes=None, extra_parameters=None, request_url='https://www.google.com/accounts/OAuthGetRequestToken', oauth_callback=None)
Fetches and sets the OAuth request token and returns it.
 
Args:
  scopes: string or list of string base URL(s) of the service(s) to be
@@ -440,10 +441,14 @@       extra_parameters = {'oauth_version': '2.0'}
  request_url: Request token URL. The default is
      'https://www.google.com/accounts/OAuthGetRequestToken'.
-  
+  oauth_callback: str (optional) If set, it is assume the client is using
+      the OAuth v1.0a protocol where the callback url is sent in the
+      request token step.  If the oauth_callback is also set in
+      extra_params, this value will override that one.

Returns:
  The fetched request token as a gdata.auth.OAuthToken object.
-  

Raises:
  FetchingOAuthRequestTokenFailed if the server responded to the request
  with an error.
@@ -575,7 +580,7 @@ Returns:
  A GDataEntry built from the XML in the server's response.
-
GetFeed(self, uri, extra_headers=None, converter=<function GDataFeedFromString at 0x8ef1b8>)
Query the GData API with the given URI and receive a Feed.
+
GetFeed(self, uri, extra_headers=None, converter=<function GDataFeedFromString at 0x7f354e01bd70>)
Query the GData API with the given URI and receive a Feed.
 
See also documentation for gdata.service.Get
 
@@ -591,6 +596,8 @@ Returns:
  A GDataFeed built from the XML in the server's response.
+
GetGeneratorFromLinkFinder(self, link_finder, func, num_retries=3, delay=1, backoff=2)
returns a generator for pagination
+
GetMedia(self, uri, extra_headers=None)
Returns a MediaSource containing media and its metadata from the given
URI string.
@@ -609,6 +616,26 @@   A new feed representing the next set of results in the server's feed.
  The type of this feed will match that of the feed argument.
+
GetOAuthInputParameters(self)
+ +
GetWithRetries(self, uri, extra_headers=None, redirects_remaining=4, encoding='UTF-8', converter=None, num_retries=3, delay=1, backoff=2, logger=None)
This is a wrapper method for Get with retring capability.

+To avoid various errors while retrieving bulk entities by retring
+specified times.

+Note this method relies on the time module and so may not be usable
+by default in Python2.2.

+Args:
+  num_retries: integer The retry count.
+  delay: integer The initial delay for retring.
+  backoff: integer how much the delay should lengthen after each failure.
+  logger: an object which has a debug(str) method to receive logging
+          messages. Recommended that you pass in the logging module.
+Raises:
+  ValueError if any of the parameters has an invalid value.
+  RanOutOfTries on failure after number of retries.
+
Post(self, data, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=4, media_source=None, converter=None)
Insert or update  data into a GData service at the given URI.
 
Args:
@@ -769,7 +796,7 @@ Args:
  token: string or instance of a ClientLoginToken.
-
SetOAuthInputParameters(self, signature_method, consumer_key, consumer_secret=None, rsa_key=None, two_legged_oauth=False)
Sets parameters required for using OAuth authentication mechanism.
+
SetOAuthInputParameters(self, signature_method, consumer_key, consumer_secret=None, rsa_key=None, two_legged_oauth=False, requestor_id=None)
Sets parameters required for using OAuth authentication mechanism.
 
NOTE: Though consumer_secret and rsa_key are optional, either of the two
is required depending on the value of the signature_method.
@@ -786,7 +813,10 @@       Required only for HMAC_SHA1 signature method.
  rsa_key: string (optional) Private key required for RSA_SHA1 signature
      method.
-  two_legged_oauth: string (default=False) Enables two-legged OAuth process.
+  two_legged_oauth: boolean (optional) Enables two-legged OAuth process.
+  requestor_id: string (optional) User email adress to make requests on
+      their behalf.  This parameter should only be set when two_legged_oauth
+      is True.
SetOAuthToken(self, oauth_token)
Attempts to set the current token and add it to the token store.
 
@@ -800,18 +830,24 @@ Args:
  request_token: gdata.auth.OAuthToken OAuth request token.
-
UpgradeToOAuthAccessToken(self, authorized_request_token=None, request_url='https://www.google.com/accounts/OAuthGetAccessToken', oauth_version='1.0')
Upgrades the authorized request token to an access token.
+
UpgradeToOAuthAccessToken(self, authorized_request_token=None, request_url='https://www.google.com/accounts/OAuthGetAccessToken', oauth_version='1.0', oauth_verifier=None)
Upgrades the authorized request token to an access token and returns it
 
Args:
  authorized_request_token: gdata.auth.OAuthToken (optional) OAuth request
      token. If not specified, then the current token will be used if it is
      of type <gdata.auth.OAuthToken>, else it is found by looking in the
      token_store by looking for a token for the current scope.
+  request_url: Access token URL. The default is
+      'https://www.google.com/accounts/OAuthGetAccessToken'.
  oauth_version: str (default='1.0') oauth_version parameter. All other
      'oauth_' parameters are added by default. This parameter too, is
      added by default but here you can override it's value.
-  request_url: Access token URL. The default is
-      'https://www.google.com/accounts/OAuthGetAccessToken'.
+  oauth_verifier: str (optional) If present, it is assumed that the client
+    will use the OAuth v1.0a protocol which includes passing the
+    oauth_verifier (as returned by the SP) in the access token step.

+Returns:
+  Access token
      
Raises:
  NonOAuthToken if the user's authorized request token is not an OAuth
@@ -881,7 +917,7 @@   username: str
  password: str
-
request(self, operation, url, data=None, headers=None, url_params=None)
+
request(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
use_basic_auth(self, username, password, scopes=None)
@@ -935,7 +971,7 @@
Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
@@ -959,6 +995,8 @@
__str__(...)
x.__str__() <==> str(x)
+
__unicode__(...)
+
Data descriptors inherited from exceptions.BaseException:
__dict__
@@ -966,7 +1004,6 @@
args
message
-
exception message

diff -Nru python-gdata-1.2.4/pydocs/gdata.youtube.data.html python-gdata-2.0.8/pydocs/gdata.youtube.data.html --- python-gdata-1.2.4/pydocs/gdata.youtube.data.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.youtube.data.html 2010-02-26 23:16:48.000000000 +0000 @@ -0,0 +1,19400 @@ + + +Python: module gdata.youtube.data + + +
+ +
 
+ 
gdata.youtube.data
index
/usr/local/svn/gdata-python-client/src/gdata/youtube/data.py
+

Contains the data classes of the YouTube Data API

+

+ + + + + +
 
+Modules
       
atom
+
gdata
+

+ + + + + +
 
+Classes
       
+
atom.core.XmlElement(__builtin__.object) +
+
+
YtAboutMe +
YtAge +
YtAspectRatio +
YtBasePublicationState +
+
+
YtCaptionPublicationState +
YtPublicationState +
+
+
YtBooks +
YtCompany +
YtCountHint +
YtDescription +
YtDuration +
YtFirstName +
YtGender +
YtHobbies +
YtHometown +
YtLastName +
YtLocation +
YtModerationStatus +
YtMovies +
YtMusic +
YtNoEmbed +
YtOccupation +
YtPlaylistId +
YtPlaylistTitle +
YtPosition +
YtPrivate +
YtQueryString +
YtRacy +
YtRecorded +
YtRelationship +
YtSchool +
YtSpam +
YtStatistics +
+
+
YtUserProfileStatistics +
YtVideoStatistics +
+
+
YtStatus +
YtUploaded +
YtUsername +
YtVideoId +
+
+
atom.data.Control(atom.core.XmlElement) +
+
+
YouTubeAppControl +
YouTubeCaptionAppControl +
+
+
gdata.data.BatchEntry(gdata.data.GDEntry) +
+
+
CommentEntry +
FavoriteEntry +
FriendEntry +
PlaylistEntry +
PlaylistLinkEntry +
SubscriptionEntry +
UserProfileEntry +
VideoEntry +
VideoMessageEntry +
+
+
gdata.data.BatchFeed(gdata.data.GDFeed) +
+
+
CommentFeed +
FavoriteFeed +
FriendFeed +
PlaylistFeed +
PlaylistLinkFeed +
SubscriptionFeed +
UserProfileFeed +
VideoFeed +
VideoMessageFeed +
+
+
gdata.data.GDEntry(atom.data.Entry, gdata.data.LinkFinder) +
+
+
CaptionTrackEntry +
ChannelEntry +
ComplaintEntry +
RatingEntry +
UserEventEntry +
VideoEntryBase +
VideoModerationEntry +
+
+
gdata.data.GDFeed(atom.data.Feed, gdata.data.LinkFinder) +
+
+
CaptionTrackFeed +
ChannelFeed +
ComplaintFeed +
RatingFeed +
UserEventFeed +
VideoModerationFeed +
+
+
gdata.media.data.MediaContent(atom.core.XmlElement) +
+
+
YouTubeMediaContent +
+
+
gdata.media.data.MediaCredit(atom.core.XmlElement) +
+
+
YouTubeMediaCredit +
+
+
gdata.media.data.MediaGroup(atom.core.XmlElement) +
+
+
YouTubeMediaGroup +
+
+
gdata.media.data.MediaRating(atom.core.XmlElement) +
+
+
YouTubeMediaRating +
+
+
+

+ + + + + + + +
 
+class CaptionTrackEntry(gdata.data.GDEntry)
   Describes a caption track
 
 
Method resolution order:
+
CaptionTrackEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class CaptionTrackFeed(gdata.data.GDFeed)
   Describes caption tracks
 
 
Method resolution order:
+
CaptionTrackFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.youtube.data.CaptionTrackEntry'>]
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class ChannelEntry(gdata.data.GDEntry)
   Describes a video channel
 
 
Method resolution order:
+
ChannelEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class ChannelFeed(gdata.data.GDFeed)
   Describes channels
 
 
Method resolution order:
+
ChannelFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.youtube.data.ChannelEntry'>]
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class CommentEntry(gdata.data.BatchEntry)
   Describes a comment for a video
 
 
Method resolution order:
+
CommentEntry
+
gdata.data.BatchEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
spam = <class 'gdata.youtube.data.YtSpam'>
Indicates that the entry probably contains spam
+ +
+Data and other attributes inherited from gdata.data.BatchEntry:
+
batch_id = <class 'gdata.data.BatchId'>
Identifies a single operation in a batch request.
+ +
batch_operation = <class 'gdata.data.BatchOperation'>
The CRUD operation which this batch entry represents.
+ +
batch_status = <class 'gdata.data.BatchStatus'>
The batch:status element present in a batch response entry.

+A status element contains the code (HTTP response code) and
+reason as elements. In a single request these fields would
+be part of the HTTP response, but in a batch request each
+Entry operation has a corresponding Entry in the response
+feed which includes status information.

+See http://code.google.com/apis/gdata/batch.html#Handling_Errors
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class CommentFeed(gdata.data.BatchFeed)
   Describes comments for a video
 
 
Method resolution order:
+
CommentFeed
+
gdata.data.BatchFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.youtube.data.CommentEntry'>]
+ +
+Methods inherited from gdata.data.BatchFeed:
+
AddBatchEntry = add_batch_entry(self, entry=None, id_url_string=None, batch_id_string=None, operation_string=None)
Logic for populating members of a BatchEntry and adding to the feed.

+If the entry is not a BatchEntry, it is converted to a BatchEntry so
+that the batch specific members will be present.

+The id_url_string can be used in place of an entry if the batch operation
+applies to a URL. For example query and delete operations require just
+the URL of an entry, no body is sent in the HTTP request. If an
+id_url_string is sent instead of an entry, a BatchEntry is created and
+added to the feed.

+This method also assigns the desired batch id to the entry so that it
+can be referenced in the server's response. If the batch_id_string is
+None, this method will assign a batch_id to be the index at which this
+entry will be in the feed's entry list.

+Args:
+  entry: BatchEntry, atom.data.Entry, or another Entry flavor (optional)
+      The entry which will be sent to the server as part of the batch
+      request. The item must have a valid atom id so that the server
+      knows which entry this request references.
+  id_url_string: str (optional) The URL of the entry to be acted on. You
+      can find this URL in the text member of the atom id for an entry.
+      If an entry is not sent, this id will be used to construct a new
+      BatchEntry which will be added to the request feed.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+  operation_string: str (optional) The desired batch operation which will
+      set the batch_operation.type member of the entry. Options are
+      'insert', 'update', 'delete', and 'query'

+Raises:
+  MissingRequiredParameters: Raised if neither an id_ url_string nor an
+      entry are provided in the request.

+Returns:
+  The added entry.
+ +
AddDelete = add_delete(self, url_string=None, entry=None, batch_id_string=None)
Adds a delete request to the batch request feed.

+This method takes either the url_string which is the atom id of the item
+to be deleted, or the entry itself. The atom id of the entry must be
+present so that the server knows which entry should be deleted.

+Args:
+  url_string: str (optional) The URL of the entry to be deleted. You can
+     find this URL in the text member of the atom id for an entry.
+  entry: BatchEntry (optional) The entry to be deleted.
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters: Raised if neither a url_string nor an entry
+      are provided in the request.
+ +
AddInsert = add_insert(self, entry, batch_id_string=None)
Add an insert request to the operations in this batch request feed.

+If the entry doesn't yet have an operation or a batch id, these will
+be set to the insert operation and a batch_id specified as a parameter.

+Args:
+  entry: BatchEntry The entry which will be sent in the batch feed as an
+      insert request.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+ +
AddQuery = add_query(self, url_string=None, entry=None, batch_id_string=None)
Adds a query request to the batch request feed.

+This method takes either the url_string which is the query URL
+whose results will be added to the result feed. The query URL will
+be encapsulated in a BatchEntry, and you may pass in the BatchEntry
+with a query URL instead of sending a url_string.

+Args:
+  url_string: str (optional)
+  entry: BatchEntry (optional)
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters
+ +
AddUpdate = add_update(self, entry, batch_id_string=None)
Add an update request to the list of batch operations in this feed.

+Sets the operation type of the entry to insert if it is not already set
+and assigns the desired batch id to the entry so that it can be
+referenced in the server's response.

+Args:
+  entry: BatchEntry The entry which will be sent to the server as an
+      update (HTTP PUT) request. The item must have a valid atom id
+      so that the server knows which entry to replace.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. See also comments for AddInsert.
+ +
FindBatchLink = find_batch_link(self)
+ +
add_batch_entry(self, entry=None, id_url_string=None, batch_id_string=None, operation_string=None)
Logic for populating members of a BatchEntry and adding to the feed.

+If the entry is not a BatchEntry, it is converted to a BatchEntry so
+that the batch specific members will be present.

+The id_url_string can be used in place of an entry if the batch operation
+applies to a URL. For example query and delete operations require just
+the URL of an entry, no body is sent in the HTTP request. If an
+id_url_string is sent instead of an entry, a BatchEntry is created and
+added to the feed.

+This method also assigns the desired batch id to the entry so that it
+can be referenced in the server's response. If the batch_id_string is
+None, this method will assign a batch_id to be the index at which this
+entry will be in the feed's entry list.

+Args:
+  entry: BatchEntry, atom.data.Entry, or another Entry flavor (optional)
+      The entry which will be sent to the server as part of the batch
+      request. The item must have a valid atom id so that the server
+      knows which entry this request references.
+  id_url_string: str (optional) The URL of the entry to be acted on. You
+      can find this URL in the text member of the atom id for an entry.
+      If an entry is not sent, this id will be used to construct a new
+      BatchEntry which will be added to the request feed.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+  operation_string: str (optional) The desired batch operation which will
+      set the batch_operation.type member of the entry. Options are
+      'insert', 'update', 'delete', and 'query'

+Raises:
+  MissingRequiredParameters: Raised if neither an id_ url_string nor an
+      entry are provided in the request.

+Returns:
+  The added entry.
+ +
add_delete(self, url_string=None, entry=None, batch_id_string=None)
Adds a delete request to the batch request feed.

+This method takes either the url_string which is the atom id of the item
+to be deleted, or the entry itself. The atom id of the entry must be
+present so that the server knows which entry should be deleted.

+Args:
+  url_string: str (optional) The URL of the entry to be deleted. You can
+     find this URL in the text member of the atom id for an entry.
+  entry: BatchEntry (optional) The entry to be deleted.
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters: Raised if neither a url_string nor an entry
+      are provided in the request.
+ +
add_insert(self, entry, batch_id_string=None)
Add an insert request to the operations in this batch request feed.

+If the entry doesn't yet have an operation or a batch id, these will
+be set to the insert operation and a batch_id specified as a parameter.

+Args:
+  entry: BatchEntry The entry which will be sent in the batch feed as an
+      insert request.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+ +
add_query(self, url_string=None, entry=None, batch_id_string=None)
Adds a query request to the batch request feed.

+This method takes either the url_string which is the query URL
+whose results will be added to the result feed. The query URL will
+be encapsulated in a BatchEntry, and you may pass in the BatchEntry
+with a query URL instead of sending a url_string.

+Args:
+  url_string: str (optional)
+  entry: BatchEntry (optional)
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters
+ +
add_update(self, entry, batch_id_string=None)
Add an update request to the list of batch operations in this feed.

+Sets the operation type of the entry to insert if it is not already set
+and assigns the desired batch id to the entry so that it can be
+referenced in the server's response.

+Args:
+  entry: BatchEntry The entry which will be sent to the server as an
+      update (HTTP PUT) request. The item must have a valid atom id
+      so that the server knows which entry to replace.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. See also comments for AddInsert.
+ +
find_batch_link(self)
+ +
+Data and other attributes inherited from gdata.data.BatchFeed:
+
interrupted = <class 'gdata.data.BatchInterrupted'>
The batch:interrupted element sent if batch request was interrupted.

+Only appears in a feed if some of the batch entries could not be processed.
+See: http://code.google.com/apis/gdata/batch.html#Handling_Errors
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class ComplaintEntry(gdata.data.GDEntry)
   Describes a complaint about a video
 
 
Method resolution order:
+
ComplaintEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class ComplaintFeed(gdata.data.GDFeed)
   Describes complaints about a video
 
 
Method resolution order:
+
ComplaintFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.youtube.data.ComplaintEntry'>]
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class FavoriteEntry(gdata.data.BatchEntry)
   Describes a favorite video
 
 
Method resolution order:
+
FavoriteEntry
+
gdata.data.BatchEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes inherited from gdata.data.BatchEntry:
+
batch_id = <class 'gdata.data.BatchId'>
Identifies a single operation in a batch request.
+ +
batch_operation = <class 'gdata.data.BatchOperation'>
The CRUD operation which this batch entry represents.
+ +
batch_status = <class 'gdata.data.BatchStatus'>
The batch:status element present in a batch response entry.

+A status element contains the code (HTTP response code) and
+reason as elements. In a single request these fields would
+be part of the HTTP response, but in a batch request each
+Entry operation has a corresponding Entry in the response
+feed which includes status information.

+See http://code.google.com/apis/gdata/batch.html#Handling_Errors
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class FavoriteFeed(gdata.data.BatchFeed)
   Describes favorite videos
 
 
Method resolution order:
+
FavoriteFeed
+
gdata.data.BatchFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.youtube.data.FavoriteEntry'>]
+ +
+Methods inherited from gdata.data.BatchFeed:
+
AddBatchEntry = add_batch_entry(self, entry=None, id_url_string=None, batch_id_string=None, operation_string=None)
Logic for populating members of a BatchEntry and adding to the feed.

+If the entry is not a BatchEntry, it is converted to a BatchEntry so
+that the batch specific members will be present.

+The id_url_string can be used in place of an entry if the batch operation
+applies to a URL. For example query and delete operations require just
+the URL of an entry, no body is sent in the HTTP request. If an
+id_url_string is sent instead of an entry, a BatchEntry is created and
+added to the feed.

+This method also assigns the desired batch id to the entry so that it
+can be referenced in the server's response. If the batch_id_string is
+None, this method will assign a batch_id to be the index at which this
+entry will be in the feed's entry list.

+Args:
+  entry: BatchEntry, atom.data.Entry, or another Entry flavor (optional)
+      The entry which will be sent to the server as part of the batch
+      request. The item must have a valid atom id so that the server
+      knows which entry this request references.
+  id_url_string: str (optional) The URL of the entry to be acted on. You
+      can find this URL in the text member of the atom id for an entry.
+      If an entry is not sent, this id will be used to construct a new
+      BatchEntry which will be added to the request feed.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+  operation_string: str (optional) The desired batch operation which will
+      set the batch_operation.type member of the entry. Options are
+      'insert', 'update', 'delete', and 'query'

+Raises:
+  MissingRequiredParameters: Raised if neither an id_ url_string nor an
+      entry are provided in the request.

+Returns:
+  The added entry.
+ +
AddDelete = add_delete(self, url_string=None, entry=None, batch_id_string=None)
Adds a delete request to the batch request feed.

+This method takes either the url_string which is the atom id of the item
+to be deleted, or the entry itself. The atom id of the entry must be
+present so that the server knows which entry should be deleted.

+Args:
+  url_string: str (optional) The URL of the entry to be deleted. You can
+     find this URL in the text member of the atom id for an entry.
+  entry: BatchEntry (optional) The entry to be deleted.
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters: Raised if neither a url_string nor an entry
+      are provided in the request.
+ +
AddInsert = add_insert(self, entry, batch_id_string=None)
Add an insert request to the operations in this batch request feed.

+If the entry doesn't yet have an operation or a batch id, these will
+be set to the insert operation and a batch_id specified as a parameter.

+Args:
+  entry: BatchEntry The entry which will be sent in the batch feed as an
+      insert request.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+ +
AddQuery = add_query(self, url_string=None, entry=None, batch_id_string=None)
Adds a query request to the batch request feed.

+This method takes either the url_string which is the query URL
+whose results will be added to the result feed. The query URL will
+be encapsulated in a BatchEntry, and you may pass in the BatchEntry
+with a query URL instead of sending a url_string.

+Args:
+  url_string: str (optional)
+  entry: BatchEntry (optional)
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters
+ +
AddUpdate = add_update(self, entry, batch_id_string=None)
Add an update request to the list of batch operations in this feed.

+Sets the operation type of the entry to insert if it is not already set
+and assigns the desired batch id to the entry so that it can be
+referenced in the server's response.

+Args:
+  entry: BatchEntry The entry which will be sent to the server as an
+      update (HTTP PUT) request. The item must have a valid atom id
+      so that the server knows which entry to replace.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. See also comments for AddInsert.
+ +
FindBatchLink = find_batch_link(self)
+ +
add_batch_entry(self, entry=None, id_url_string=None, batch_id_string=None, operation_string=None)
Logic for populating members of a BatchEntry and adding to the feed.

+If the entry is not a BatchEntry, it is converted to a BatchEntry so
+that the batch specific members will be present.

+The id_url_string can be used in place of an entry if the batch operation
+applies to a URL. For example query and delete operations require just
+the URL of an entry, no body is sent in the HTTP request. If an
+id_url_string is sent instead of an entry, a BatchEntry is created and
+added to the feed.

+This method also assigns the desired batch id to the entry so that it
+can be referenced in the server's response. If the batch_id_string is
+None, this method will assign a batch_id to be the index at which this
+entry will be in the feed's entry list.

+Args:
+  entry: BatchEntry, atom.data.Entry, or another Entry flavor (optional)
+      The entry which will be sent to the server as part of the batch
+      request. The item must have a valid atom id so that the server
+      knows which entry this request references.
+  id_url_string: str (optional) The URL of the entry to be acted on. You
+      can find this URL in the text member of the atom id for an entry.
+      If an entry is not sent, this id will be used to construct a new
+      BatchEntry which will be added to the request feed.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+  operation_string: str (optional) The desired batch operation which will
+      set the batch_operation.type member of the entry. Options are
+      'insert', 'update', 'delete', and 'query'

+Raises:
+  MissingRequiredParameters: Raised if neither an id_ url_string nor an
+      entry are provided in the request.

+Returns:
+  The added entry.
+ +
add_delete(self, url_string=None, entry=None, batch_id_string=None)
Adds a delete request to the batch request feed.

+This method takes either the url_string which is the atom id of the item
+to be deleted, or the entry itself. The atom id of the entry must be
+present so that the server knows which entry should be deleted.

+Args:
+  url_string: str (optional) The URL of the entry to be deleted. You can
+     find this URL in the text member of the atom id for an entry.
+  entry: BatchEntry (optional) The entry to be deleted.
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters: Raised if neither a url_string nor an entry
+      are provided in the request.
+ +
add_insert(self, entry, batch_id_string=None)
Add an insert request to the operations in this batch request feed.

+If the entry doesn't yet have an operation or a batch id, these will
+be set to the insert operation and a batch_id specified as a parameter.

+Args:
+  entry: BatchEntry The entry which will be sent in the batch feed as an
+      insert request.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+ +
add_query(self, url_string=None, entry=None, batch_id_string=None)
Adds a query request to the batch request feed.

+This method takes either the url_string which is the query URL
+whose results will be added to the result feed. The query URL will
+be encapsulated in a BatchEntry, and you may pass in the BatchEntry
+with a query URL instead of sending a url_string.

+Args:
+  url_string: str (optional)
+  entry: BatchEntry (optional)
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters
+ +
add_update(self, entry, batch_id_string=None)
Add an update request to the list of batch operations in this feed.

+Sets the operation type of the entry to insert if it is not already set
+and assigns the desired batch id to the entry so that it can be
+referenced in the server's response.

+Args:
+  entry: BatchEntry The entry which will be sent to the server as an
+      update (HTTP PUT) request. The item must have a valid atom id
+      so that the server knows which entry to replace.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. See also comments for AddInsert.
+ +
find_batch_link(self)
+ +
+Data and other attributes inherited from gdata.data.BatchFeed:
+
interrupted = <class 'gdata.data.BatchInterrupted'>
The batch:interrupted element sent if batch request was interrupted.

+Only appears in a feed if some of the batch entries could not be processed.
+See: http://code.google.com/apis/gdata/batch.html#Handling_Errors
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class FriendEntry(gdata.data.BatchEntry)
   Describes a contact in friend list
 
 
Method resolution order:
+
FriendEntry
+
gdata.data.BatchEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
email = <class 'gdata.data.Email'>
The gd:email element.

+An email address associated with the containing entity (which is
+usually an entity representing a person or a location).
+ +
status = <class 'gdata.youtube.data.YtStatus'>
Status of a contact
+ +
username = <class 'gdata.youtube.data.YtUsername'>
Youtube username
+ +
+Data and other attributes inherited from gdata.data.BatchEntry:
+
batch_id = <class 'gdata.data.BatchId'>
Identifies a single operation in a batch request.
+ +
batch_operation = <class 'gdata.data.BatchOperation'>
The CRUD operation which this batch entry represents.
+ +
batch_status = <class 'gdata.data.BatchStatus'>
The batch:status element present in a batch response entry.

+A status element contains the code (HTTP response code) and
+reason as elements. In a single request these fields would
+be part of the HTTP response, but in a batch request each
+Entry operation has a corresponding Entry in the response
+feed which includes status information.

+See http://code.google.com/apis/gdata/batch.html#Handling_Errors
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class FriendFeed(gdata.data.BatchFeed)
   Describes user's friends
 
 
Method resolution order:
+
FriendFeed
+
gdata.data.BatchFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.youtube.data.FriendEntry'>]
+ +
+Methods inherited from gdata.data.BatchFeed:
+
AddBatchEntry = add_batch_entry(self, entry=None, id_url_string=None, batch_id_string=None, operation_string=None)
Logic for populating members of a BatchEntry and adding to the feed.

+If the entry is not a BatchEntry, it is converted to a BatchEntry so
+that the batch specific members will be present.

+The id_url_string can be used in place of an entry if the batch operation
+applies to a URL. For example query and delete operations require just
+the URL of an entry, no body is sent in the HTTP request. If an
+id_url_string is sent instead of an entry, a BatchEntry is created and
+added to the feed.

+This method also assigns the desired batch id to the entry so that it
+can be referenced in the server's response. If the batch_id_string is
+None, this method will assign a batch_id to be the index at which this
+entry will be in the feed's entry list.

+Args:
+  entry: BatchEntry, atom.data.Entry, or another Entry flavor (optional)
+      The entry which will be sent to the server as part of the batch
+      request. The item must have a valid atom id so that the server
+      knows which entry this request references.
+  id_url_string: str (optional) The URL of the entry to be acted on. You
+      can find this URL in the text member of the atom id for an entry.
+      If an entry is not sent, this id will be used to construct a new
+      BatchEntry which will be added to the request feed.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+  operation_string: str (optional) The desired batch operation which will
+      set the batch_operation.type member of the entry. Options are
+      'insert', 'update', 'delete', and 'query'

+Raises:
+  MissingRequiredParameters: Raised if neither an id_ url_string nor an
+      entry are provided in the request.

+Returns:
+  The added entry.
+ +
AddDelete = add_delete(self, url_string=None, entry=None, batch_id_string=None)
Adds a delete request to the batch request feed.

+This method takes either the url_string which is the atom id of the item
+to be deleted, or the entry itself. The atom id of the entry must be
+present so that the server knows which entry should be deleted.

+Args:
+  url_string: str (optional) The URL of the entry to be deleted. You can
+     find this URL in the text member of the atom id for an entry.
+  entry: BatchEntry (optional) The entry to be deleted.
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters: Raised if neither a url_string nor an entry
+      are provided in the request.
+ +
AddInsert = add_insert(self, entry, batch_id_string=None)
Add an insert request to the operations in this batch request feed.

+If the entry doesn't yet have an operation or a batch id, these will
+be set to the insert operation and a batch_id specified as a parameter.

+Args:
+  entry: BatchEntry The entry which will be sent in the batch feed as an
+      insert request.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+ +
AddQuery = add_query(self, url_string=None, entry=None, batch_id_string=None)
Adds a query request to the batch request feed.

+This method takes either the url_string which is the query URL
+whose results will be added to the result feed. The query URL will
+be encapsulated in a BatchEntry, and you may pass in the BatchEntry
+with a query URL instead of sending a url_string.

+Args:
+  url_string: str (optional)
+  entry: BatchEntry (optional)
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters
+ +
AddUpdate = add_update(self, entry, batch_id_string=None)
Add an update request to the list of batch operations in this feed.

+Sets the operation type of the entry to insert if it is not already set
+and assigns the desired batch id to the entry so that it can be
+referenced in the server's response.

+Args:
+  entry: BatchEntry The entry which will be sent to the server as an
+      update (HTTP PUT) request. The item must have a valid atom id
+      so that the server knows which entry to replace.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. See also comments for AddInsert.
+ +
FindBatchLink = find_batch_link(self)
+ +
add_batch_entry(self, entry=None, id_url_string=None, batch_id_string=None, operation_string=None)
Logic for populating members of a BatchEntry and adding to the feed.

+If the entry is not a BatchEntry, it is converted to a BatchEntry so
+that the batch specific members will be present.

+The id_url_string can be used in place of an entry if the batch operation
+applies to a URL. For example query and delete operations require just
+the URL of an entry, no body is sent in the HTTP request. If an
+id_url_string is sent instead of an entry, a BatchEntry is created and
+added to the feed.

+This method also assigns the desired batch id to the entry so that it
+can be referenced in the server's response. If the batch_id_string is
+None, this method will assign a batch_id to be the index at which this
+entry will be in the feed's entry list.

+Args:
+  entry: BatchEntry, atom.data.Entry, or another Entry flavor (optional)
+      The entry which will be sent to the server as part of the batch
+      request. The item must have a valid atom id so that the server
+      knows which entry this request references.
+  id_url_string: str (optional) The URL of the entry to be acted on. You
+      can find this URL in the text member of the atom id for an entry.
+      If an entry is not sent, this id will be used to construct a new
+      BatchEntry which will be added to the request feed.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+  operation_string: str (optional) The desired batch operation which will
+      set the batch_operation.type member of the entry. Options are
+      'insert', 'update', 'delete', and 'query'

+Raises:
+  MissingRequiredParameters: Raised if neither an id_ url_string nor an
+      entry are provided in the request.

+Returns:
+  The added entry.
+ +
add_delete(self, url_string=None, entry=None, batch_id_string=None)
Adds a delete request to the batch request feed.

+This method takes either the url_string which is the atom id of the item
+to be deleted, or the entry itself. The atom id of the entry must be
+present so that the server knows which entry should be deleted.

+Args:
+  url_string: str (optional) The URL of the entry to be deleted. You can
+     find this URL in the text member of the atom id for an entry.
+  entry: BatchEntry (optional) The entry to be deleted.
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters: Raised if neither a url_string nor an entry
+      are provided in the request.
+ +
add_insert(self, entry, batch_id_string=None)
Add an insert request to the operations in this batch request feed.

+If the entry doesn't yet have an operation or a batch id, these will
+be set to the insert operation and a batch_id specified as a parameter.

+Args:
+  entry: BatchEntry The entry which will be sent in the batch feed as an
+      insert request.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+ +
add_query(self, url_string=None, entry=None, batch_id_string=None)
Adds a query request to the batch request feed.

+This method takes either the url_string which is the query URL
+whose results will be added to the result feed. The query URL will
+be encapsulated in a BatchEntry, and you may pass in the BatchEntry
+with a query URL instead of sending a url_string.

+Args:
+  url_string: str (optional)
+  entry: BatchEntry (optional)
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters
+ +
add_update(self, entry, batch_id_string=None)
Add an update request to the list of batch operations in this feed.

+Sets the operation type of the entry to insert if it is not already set
+and assigns the desired batch id to the entry so that it can be
+referenced in the server's response.

+Args:
+  entry: BatchEntry The entry which will be sent to the server as an
+      update (HTTP PUT) request. The item must have a valid atom id
+      so that the server knows which entry to replace.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. See also comments for AddInsert.
+ +
find_batch_link(self)
+ +
+Data and other attributes inherited from gdata.data.BatchFeed:
+
interrupted = <class 'gdata.data.BatchInterrupted'>
The batch:interrupted element sent if batch request was interrupted.

+Only appears in a feed if some of the batch entries could not be processed.
+See: http://code.google.com/apis/gdata/batch.html#Handling_Errors
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class PlaylistEntry(gdata.data.BatchEntry)
   Describes a video in a playlist
 
 
Method resolution order:
+
PlaylistEntry
+
gdata.data.BatchEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
description = <class 'gdata.youtube.data.YtDescription'>
Description
+ +
position = <class 'gdata.youtube.data.YtPosition'>
Video position on the playlist
+ +
+Data and other attributes inherited from gdata.data.BatchEntry:
+
batch_id = <class 'gdata.data.BatchId'>
Identifies a single operation in a batch request.
+ +
batch_operation = <class 'gdata.data.BatchOperation'>
The CRUD operation which this batch entry represents.
+ +
batch_status = <class 'gdata.data.BatchStatus'>
The batch:status element present in a batch response entry.

+A status element contains the code (HTTP response code) and
+reason as elements. In a single request these fields would
+be part of the HTTP response, but in a batch request each
+Entry operation has a corresponding Entry in the response
+feed which includes status information.

+See http://code.google.com/apis/gdata/batch.html#Handling_Errors
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class PlaylistFeed(gdata.data.BatchFeed)
   Describes videos in a playlist
 
 
Method resolution order:
+
PlaylistFeed
+
gdata.data.BatchFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.youtube.data.PlaylistEntry'>]
+ +
group = <class 'gdata.youtube.data.YouTubeMediaGroup'>
Describes a you tube media group
+ +
playlist_id = <class 'gdata.youtube.data.YtPlaylistId'>
Playlist id
+ +
private = <class 'gdata.youtube.data.YtPrivate'>
Flags the entry as private
+ +
+Methods inherited from gdata.data.BatchFeed:
+
AddBatchEntry = add_batch_entry(self, entry=None, id_url_string=None, batch_id_string=None, operation_string=None)
Logic for populating members of a BatchEntry and adding to the feed.

+If the entry is not a BatchEntry, it is converted to a BatchEntry so
+that the batch specific members will be present.

+The id_url_string can be used in place of an entry if the batch operation
+applies to a URL. For example query and delete operations require just
+the URL of an entry, no body is sent in the HTTP request. If an
+id_url_string is sent instead of an entry, a BatchEntry is created and
+added to the feed.

+This method also assigns the desired batch id to the entry so that it
+can be referenced in the server's response. If the batch_id_string is
+None, this method will assign a batch_id to be the index at which this
+entry will be in the feed's entry list.

+Args:
+  entry: BatchEntry, atom.data.Entry, or another Entry flavor (optional)
+      The entry which will be sent to the server as part of the batch
+      request. The item must have a valid atom id so that the server
+      knows which entry this request references.
+  id_url_string: str (optional) The URL of the entry to be acted on. You
+      can find this URL in the text member of the atom id for an entry.
+      If an entry is not sent, this id will be used to construct a new
+      BatchEntry which will be added to the request feed.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+  operation_string: str (optional) The desired batch operation which will
+      set the batch_operation.type member of the entry. Options are
+      'insert', 'update', 'delete', and 'query'

+Raises:
+  MissingRequiredParameters: Raised if neither an id_ url_string nor an
+      entry are provided in the request.

+Returns:
+  The added entry.
+ +
AddDelete = add_delete(self, url_string=None, entry=None, batch_id_string=None)
Adds a delete request to the batch request feed.

+This method takes either the url_string which is the atom id of the item
+to be deleted, or the entry itself. The atom id of the entry must be
+present so that the server knows which entry should be deleted.

+Args:
+  url_string: str (optional) The URL of the entry to be deleted. You can
+     find this URL in the text member of the atom id for an entry.
+  entry: BatchEntry (optional) The entry to be deleted.
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters: Raised if neither a url_string nor an entry
+      are provided in the request.
+ +
AddInsert = add_insert(self, entry, batch_id_string=None)
Add an insert request to the operations in this batch request feed.

+If the entry doesn't yet have an operation or a batch id, these will
+be set to the insert operation and a batch_id specified as a parameter.

+Args:
+  entry: BatchEntry The entry which will be sent in the batch feed as an
+      insert request.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+ +
AddQuery = add_query(self, url_string=None, entry=None, batch_id_string=None)
Adds a query request to the batch request feed.

+This method takes either the url_string which is the query URL
+whose results will be added to the result feed. The query URL will
+be encapsulated in a BatchEntry, and you may pass in the BatchEntry
+with a query URL instead of sending a url_string.

+Args:
+  url_string: str (optional)
+  entry: BatchEntry (optional)
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters
+ +
AddUpdate = add_update(self, entry, batch_id_string=None)
Add an update request to the list of batch operations in this feed.

+Sets the operation type of the entry to insert if it is not already set
+and assigns the desired batch id to the entry so that it can be
+referenced in the server's response.

+Args:
+  entry: BatchEntry The entry which will be sent to the server as an
+      update (HTTP PUT) request. The item must have a valid atom id
+      so that the server knows which entry to replace.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. See also comments for AddInsert.
+ +
FindBatchLink = find_batch_link(self)
+ +
add_batch_entry(self, entry=None, id_url_string=None, batch_id_string=None, operation_string=None)
Logic for populating members of a BatchEntry and adding to the feed.

+If the entry is not a BatchEntry, it is converted to a BatchEntry so
+that the batch specific members will be present.

+The id_url_string can be used in place of an entry if the batch operation
+applies to a URL. For example query and delete operations require just
+the URL of an entry, no body is sent in the HTTP request. If an
+id_url_string is sent instead of an entry, a BatchEntry is created and
+added to the feed.

+This method also assigns the desired batch id to the entry so that it
+can be referenced in the server's response. If the batch_id_string is
+None, this method will assign a batch_id to be the index at which this
+entry will be in the feed's entry list.

+Args:
+  entry: BatchEntry, atom.data.Entry, or another Entry flavor (optional)
+      The entry which will be sent to the server as part of the batch
+      request. The item must have a valid atom id so that the server
+      knows which entry this request references.
+  id_url_string: str (optional) The URL of the entry to be acted on. You
+      can find this URL in the text member of the atom id for an entry.
+      If an entry is not sent, this id will be used to construct a new
+      BatchEntry which will be added to the request feed.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+  operation_string: str (optional) The desired batch operation which will
+      set the batch_operation.type member of the entry. Options are
+      'insert', 'update', 'delete', and 'query'

+Raises:
+  MissingRequiredParameters: Raised if neither an id_ url_string nor an
+      entry are provided in the request.

+Returns:
+  The added entry.
+ +
add_delete(self, url_string=None, entry=None, batch_id_string=None)
Adds a delete request to the batch request feed.

+This method takes either the url_string which is the atom id of the item
+to be deleted, or the entry itself. The atom id of the entry must be
+present so that the server knows which entry should be deleted.

+Args:
+  url_string: str (optional) The URL of the entry to be deleted. You can
+     find this URL in the text member of the atom id for an entry.
+  entry: BatchEntry (optional) The entry to be deleted.
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters: Raised if neither a url_string nor an entry
+      are provided in the request.
+ +
add_insert(self, entry, batch_id_string=None)
Add an insert request to the operations in this batch request feed.

+If the entry doesn't yet have an operation or a batch id, these will
+be set to the insert operation and a batch_id specified as a parameter.

+Args:
+  entry: BatchEntry The entry which will be sent in the batch feed as an
+      insert request.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+ +
add_query(self, url_string=None, entry=None, batch_id_string=None)
Adds a query request to the batch request feed.

+This method takes either the url_string which is the query URL
+whose results will be added to the result feed. The query URL will
+be encapsulated in a BatchEntry, and you may pass in the BatchEntry
+with a query URL instead of sending a url_string.

+Args:
+  url_string: str (optional)
+  entry: BatchEntry (optional)
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters
+ +
add_update(self, entry, batch_id_string=None)
Add an update request to the list of batch operations in this feed.

+Sets the operation type of the entry to insert if it is not already set
+and assigns the desired batch id to the entry so that it can be
+referenced in the server's response.

+Args:
+  entry: BatchEntry The entry which will be sent to the server as an
+      update (HTTP PUT) request. The item must have a valid atom id
+      so that the server knows which entry to replace.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. See also comments for AddInsert.
+ +
find_batch_link(self)
+ +
+Data and other attributes inherited from gdata.data.BatchFeed:
+
interrupted = <class 'gdata.data.BatchInterrupted'>
The batch:interrupted element sent if batch request was interrupted.

+Only appears in a feed if some of the batch entries could not be processed.
+See: http://code.google.com/apis/gdata/batch.html#Handling_Errors
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class PlaylistLinkEntry(gdata.data.BatchEntry)
   Describes a playlist
 
 
Method resolution order:
+
PlaylistLinkEntry
+
gdata.data.BatchEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
count_hint = <class 'gdata.youtube.data.YtCountHint'>
Hint as to how many entries the linked feed contains
+ +
description = <class 'gdata.youtube.data.YtDescription'>
Description
+ +
playlist_id = <class 'gdata.youtube.data.YtPlaylistId'>
Playlist id
+ +
private = <class 'gdata.youtube.data.YtPrivate'>
Flags the entry as private
+ +
+Data and other attributes inherited from gdata.data.BatchEntry:
+
batch_id = <class 'gdata.data.BatchId'>
Identifies a single operation in a batch request.
+ +
batch_operation = <class 'gdata.data.BatchOperation'>
The CRUD operation which this batch entry represents.
+ +
batch_status = <class 'gdata.data.BatchStatus'>
The batch:status element present in a batch response entry.

+A status element contains the code (HTTP response code) and
+reason as elements. In a single request these fields would
+be part of the HTTP response, but in a batch request each
+Entry operation has a corresponding Entry in the response
+feed which includes status information.

+See http://code.google.com/apis/gdata/batch.html#Handling_Errors
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class PlaylistLinkFeed(gdata.data.BatchFeed)
   Describes list of playlists
 
 
Method resolution order:
+
PlaylistLinkFeed
+
gdata.data.BatchFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.youtube.data.PlaylistLinkEntry'>]
+ +
+Methods inherited from gdata.data.BatchFeed:
+
AddBatchEntry = add_batch_entry(self, entry=None, id_url_string=None, batch_id_string=None, operation_string=None)
Logic for populating members of a BatchEntry and adding to the feed.

+If the entry is not a BatchEntry, it is converted to a BatchEntry so
+that the batch specific members will be present.

+The id_url_string can be used in place of an entry if the batch operation
+applies to a URL. For example query and delete operations require just
+the URL of an entry, no body is sent in the HTTP request. If an
+id_url_string is sent instead of an entry, a BatchEntry is created and
+added to the feed.

+This method also assigns the desired batch id to the entry so that it
+can be referenced in the server's response. If the batch_id_string is
+None, this method will assign a batch_id to be the index at which this
+entry will be in the feed's entry list.

+Args:
+  entry: BatchEntry, atom.data.Entry, or another Entry flavor (optional)
+      The entry which will be sent to the server as part of the batch
+      request. The item must have a valid atom id so that the server
+      knows which entry this request references.
+  id_url_string: str (optional) The URL of the entry to be acted on. You
+      can find this URL in the text member of the atom id for an entry.
+      If an entry is not sent, this id will be used to construct a new
+      BatchEntry which will be added to the request feed.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+  operation_string: str (optional) The desired batch operation which will
+      set the batch_operation.type member of the entry. Options are
+      'insert', 'update', 'delete', and 'query'

+Raises:
+  MissingRequiredParameters: Raised if neither an id_ url_string nor an
+      entry are provided in the request.

+Returns:
+  The added entry.
+ +
AddDelete = add_delete(self, url_string=None, entry=None, batch_id_string=None)
Adds a delete request to the batch request feed.

+This method takes either the url_string which is the atom id of the item
+to be deleted, or the entry itself. The atom id of the entry must be
+present so that the server knows which entry should be deleted.

+Args:
+  url_string: str (optional) The URL of the entry to be deleted. You can
+     find this URL in the text member of the atom id for an entry.
+  entry: BatchEntry (optional) The entry to be deleted.
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters: Raised if neither a url_string nor an entry
+      are provided in the request.
+ +
AddInsert = add_insert(self, entry, batch_id_string=None)
Add an insert request to the operations in this batch request feed.

+If the entry doesn't yet have an operation or a batch id, these will
+be set to the insert operation and a batch_id specified as a parameter.

+Args:
+  entry: BatchEntry The entry which will be sent in the batch feed as an
+      insert request.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+ +
AddQuery = add_query(self, url_string=None, entry=None, batch_id_string=None)
Adds a query request to the batch request feed.

+This method takes either the url_string which is the query URL
+whose results will be added to the result feed. The query URL will
+be encapsulated in a BatchEntry, and you may pass in the BatchEntry
+with a query URL instead of sending a url_string.

+Args:
+  url_string: str (optional)
+  entry: BatchEntry (optional)
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters
+ +
AddUpdate = add_update(self, entry, batch_id_string=None)
Add an update request to the list of batch operations in this feed.

+Sets the operation type of the entry to insert if it is not already set
+and assigns the desired batch id to the entry so that it can be
+referenced in the server's response.

+Args:
+  entry: BatchEntry The entry which will be sent to the server as an
+      update (HTTP PUT) request. The item must have a valid atom id
+      so that the server knows which entry to replace.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. See also comments for AddInsert.
+ +
FindBatchLink = find_batch_link(self)
+ +
add_batch_entry(self, entry=None, id_url_string=None, batch_id_string=None, operation_string=None)
Logic for populating members of a BatchEntry and adding to the feed.

+If the entry is not a BatchEntry, it is converted to a BatchEntry so
+that the batch specific members will be present.

+The id_url_string can be used in place of an entry if the batch operation
+applies to a URL. For example query and delete operations require just
+the URL of an entry, no body is sent in the HTTP request. If an
+id_url_string is sent instead of an entry, a BatchEntry is created and
+added to the feed.

+This method also assigns the desired batch id to the entry so that it
+can be referenced in the server's response. If the batch_id_string is
+None, this method will assign a batch_id to be the index at which this
+entry will be in the feed's entry list.

+Args:
+  entry: BatchEntry, atom.data.Entry, or another Entry flavor (optional)
+      The entry which will be sent to the server as part of the batch
+      request. The item must have a valid atom id so that the server
+      knows which entry this request references.
+  id_url_string: str (optional) The URL of the entry to be acted on. You
+      can find this URL in the text member of the atom id for an entry.
+      If an entry is not sent, this id will be used to construct a new
+      BatchEntry which will be added to the request feed.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+  operation_string: str (optional) The desired batch operation which will
+      set the batch_operation.type member of the entry. Options are
+      'insert', 'update', 'delete', and 'query'

+Raises:
+  MissingRequiredParameters: Raised if neither an id_ url_string nor an
+      entry are provided in the request.

+Returns:
+  The added entry.
+ +
add_delete(self, url_string=None, entry=None, batch_id_string=None)
Adds a delete request to the batch request feed.

+This method takes either the url_string which is the atom id of the item
+to be deleted, or the entry itself. The atom id of the entry must be
+present so that the server knows which entry should be deleted.

+Args:
+  url_string: str (optional) The URL of the entry to be deleted. You can
+     find this URL in the text member of the atom id for an entry.
+  entry: BatchEntry (optional) The entry to be deleted.
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters: Raised if neither a url_string nor an entry
+      are provided in the request.
+ +
add_insert(self, entry, batch_id_string=None)
Add an insert request to the operations in this batch request feed.

+If the entry doesn't yet have an operation or a batch id, these will
+be set to the insert operation and a batch_id specified as a parameter.

+Args:
+  entry: BatchEntry The entry which will be sent in the batch feed as an
+      insert request.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+ +
add_query(self, url_string=None, entry=None, batch_id_string=None)
Adds a query request to the batch request feed.

+This method takes either the url_string which is the query URL
+whose results will be added to the result feed. The query URL will
+be encapsulated in a BatchEntry, and you may pass in the BatchEntry
+with a query URL instead of sending a url_string.

+Args:
+  url_string: str (optional)
+  entry: BatchEntry (optional)
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters
+ +
add_update(self, entry, batch_id_string=None)
Add an update request to the list of batch operations in this feed.

+Sets the operation type of the entry to insert if it is not already set
+and assigns the desired batch id to the entry so that it can be
+referenced in the server's response.

+Args:
+  entry: BatchEntry The entry which will be sent to the server as an
+      update (HTTP PUT) request. The item must have a valid atom id
+      so that the server knows which entry to replace.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. See also comments for AddInsert.
+ +
find_batch_link(self)
+ +
+Data and other attributes inherited from gdata.data.BatchFeed:
+
interrupted = <class 'gdata.data.BatchInterrupted'>
The batch:interrupted element sent if batch request was interrupted.

+Only appears in a feed if some of the batch entries could not be processed.
+See: http://code.google.com/apis/gdata/batch.html#Handling_Errors
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class RatingEntry(gdata.data.GDEntry)
   A rating about a video
 
 
Method resolution order:
+
RatingEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
rating = <class 'gdata.data.Rating'>
The gd:rating element.

+Represents a numeric rating of the enclosing entity, such as a
+comment. Each rating supplies its own scale, although it may be
+normalized by a service; for example, some services might convert all
+ratings to a scale from 1 to 5.
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class RatingFeed(gdata.data.GDFeed)
   Describes ratings for a video
 
 
Method resolution order:
+
RatingFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.youtube.data.RatingEntry'>]
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class SubscriptionEntry(gdata.data.BatchEntry)
   Describes user's channel subscritpions
 
 
Method resolution order:
+
SubscriptionEntry
+
gdata.data.BatchEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
count_hint = <class 'gdata.youtube.data.YtCountHint'>
Hint as to how many entries the linked feed contains
+ +
playlist_id = <class 'gdata.youtube.data.YtPlaylistId'>
Playlist id
+ +
playlist_title = <class 'gdata.youtube.data.YtPlaylistTitle'>
Playlist title
+ +
query_string = <class 'gdata.youtube.data.YtQueryString'>
Keywords or query string associated with a subscription
+ +
thumbnail = <class 'gdata.media.data.MediaThumbnail'>
Describes a media thumbnail.
+ +
username = <class 'gdata.youtube.data.YtUsername'>
Youtube username
+ +
+Data and other attributes inherited from gdata.data.BatchEntry:
+
batch_id = <class 'gdata.data.BatchId'>
Identifies a single operation in a batch request.
+ +
batch_operation = <class 'gdata.data.BatchOperation'>
The CRUD operation which this batch entry represents.
+ +
batch_status = <class 'gdata.data.BatchStatus'>
The batch:status element present in a batch response entry.

+A status element contains the code (HTTP response code) and
+reason as elements. In a single request these fields would
+be part of the HTTP response, but in a batch request each
+Entry operation has a corresponding Entry in the response
+feed which includes status information.

+See http://code.google.com/apis/gdata/batch.html#Handling_Errors
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class SubscriptionFeed(gdata.data.BatchFeed)
   Describes list of user's video subscriptions
 
 
Method resolution order:
+
SubscriptionFeed
+
gdata.data.BatchFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.youtube.data.SubscriptionEntry'>]
+ +
+Methods inherited from gdata.data.BatchFeed:
+
AddBatchEntry = add_batch_entry(self, entry=None, id_url_string=None, batch_id_string=None, operation_string=None)
Logic for populating members of a BatchEntry and adding to the feed.

+If the entry is not a BatchEntry, it is converted to a BatchEntry so
+that the batch specific members will be present.

+The id_url_string can be used in place of an entry if the batch operation
+applies to a URL. For example query and delete operations require just
+the URL of an entry, no body is sent in the HTTP request. If an
+id_url_string is sent instead of an entry, a BatchEntry is created and
+added to the feed.

+This method also assigns the desired batch id to the entry so that it
+can be referenced in the server's response. If the batch_id_string is
+None, this method will assign a batch_id to be the index at which this
+entry will be in the feed's entry list.

+Args:
+  entry: BatchEntry, atom.data.Entry, or another Entry flavor (optional)
+      The entry which will be sent to the server as part of the batch
+      request. The item must have a valid atom id so that the server
+      knows which entry this request references.
+  id_url_string: str (optional) The URL of the entry to be acted on. You
+      can find this URL in the text member of the atom id for an entry.
+      If an entry is not sent, this id will be used to construct a new
+      BatchEntry which will be added to the request feed.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+  operation_string: str (optional) The desired batch operation which will
+      set the batch_operation.type member of the entry. Options are
+      'insert', 'update', 'delete', and 'query'

+Raises:
+  MissingRequiredParameters: Raised if neither an id_ url_string nor an
+      entry are provided in the request.

+Returns:
+  The added entry.
+ +
AddDelete = add_delete(self, url_string=None, entry=None, batch_id_string=None)
Adds a delete request to the batch request feed.

+This method takes either the url_string which is the atom id of the item
+to be deleted, or the entry itself. The atom id of the entry must be
+present so that the server knows which entry should be deleted.

+Args:
+  url_string: str (optional) The URL of the entry to be deleted. You can
+     find this URL in the text member of the atom id for an entry.
+  entry: BatchEntry (optional) The entry to be deleted.
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters: Raised if neither a url_string nor an entry
+      are provided in the request.
+ +
AddInsert = add_insert(self, entry, batch_id_string=None)
Add an insert request to the operations in this batch request feed.

+If the entry doesn't yet have an operation or a batch id, these will
+be set to the insert operation and a batch_id specified as a parameter.

+Args:
+  entry: BatchEntry The entry which will be sent in the batch feed as an
+      insert request.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+ +
AddQuery = add_query(self, url_string=None, entry=None, batch_id_string=None)
Adds a query request to the batch request feed.

+This method takes either the url_string which is the query URL
+whose results will be added to the result feed. The query URL will
+be encapsulated in a BatchEntry, and you may pass in the BatchEntry
+with a query URL instead of sending a url_string.

+Args:
+  url_string: str (optional)
+  entry: BatchEntry (optional)
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters
+ +
AddUpdate = add_update(self, entry, batch_id_string=None)
Add an update request to the list of batch operations in this feed.

+Sets the operation type of the entry to insert if it is not already set
+and assigns the desired batch id to the entry so that it can be
+referenced in the server's response.

+Args:
+  entry: BatchEntry The entry which will be sent to the server as an
+      update (HTTP PUT) request. The item must have a valid atom id
+      so that the server knows which entry to replace.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. See also comments for AddInsert.
+ +
FindBatchLink = find_batch_link(self)
+ +
add_batch_entry(self, entry=None, id_url_string=None, batch_id_string=None, operation_string=None)
Logic for populating members of a BatchEntry and adding to the feed.

+If the entry is not a BatchEntry, it is converted to a BatchEntry so
+that the batch specific members will be present.

+The id_url_string can be used in place of an entry if the batch operation
+applies to a URL. For example query and delete operations require just
+the URL of an entry, no body is sent in the HTTP request. If an
+id_url_string is sent instead of an entry, a BatchEntry is created and
+added to the feed.

+This method also assigns the desired batch id to the entry so that it
+can be referenced in the server's response. If the batch_id_string is
+None, this method will assign a batch_id to be the index at which this
+entry will be in the feed's entry list.

+Args:
+  entry: BatchEntry, atom.data.Entry, or another Entry flavor (optional)
+      The entry which will be sent to the server as part of the batch
+      request. The item must have a valid atom id so that the server
+      knows which entry this request references.
+  id_url_string: str (optional) The URL of the entry to be acted on. You
+      can find this URL in the text member of the atom id for an entry.
+      If an entry is not sent, this id will be used to construct a new
+      BatchEntry which will be added to the request feed.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+  operation_string: str (optional) The desired batch operation which will
+      set the batch_operation.type member of the entry. Options are
+      'insert', 'update', 'delete', and 'query'

+Raises:
+  MissingRequiredParameters: Raised if neither an id_ url_string nor an
+      entry are provided in the request.

+Returns:
+  The added entry.
+ +
add_delete(self, url_string=None, entry=None, batch_id_string=None)
Adds a delete request to the batch request feed.

+This method takes either the url_string which is the atom id of the item
+to be deleted, or the entry itself. The atom id of the entry must be
+present so that the server knows which entry should be deleted.

+Args:
+  url_string: str (optional) The URL of the entry to be deleted. You can
+     find this URL in the text member of the atom id for an entry.
+  entry: BatchEntry (optional) The entry to be deleted.
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters: Raised if neither a url_string nor an entry
+      are provided in the request.
+ +
add_insert(self, entry, batch_id_string=None)
Add an insert request to the operations in this batch request feed.

+If the entry doesn't yet have an operation or a batch id, these will
+be set to the insert operation and a batch_id specified as a parameter.

+Args:
+  entry: BatchEntry The entry which will be sent in the batch feed as an
+      insert request.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+ +
add_query(self, url_string=None, entry=None, batch_id_string=None)
Adds a query request to the batch request feed.

+This method takes either the url_string which is the query URL
+whose results will be added to the result feed. The query URL will
+be encapsulated in a BatchEntry, and you may pass in the BatchEntry
+with a query URL instead of sending a url_string.

+Args:
+  url_string: str (optional)
+  entry: BatchEntry (optional)
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters
+ +
add_update(self, entry, batch_id_string=None)
Add an update request to the list of batch operations in this feed.

+Sets the operation type of the entry to insert if it is not already set
+and assigns the desired batch id to the entry so that it can be
+referenced in the server's response.

+Args:
+  entry: BatchEntry The entry which will be sent to the server as an
+      update (HTTP PUT) request. The item must have a valid atom id
+      so that the server knows which entry to replace.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. See also comments for AddInsert.
+ +
find_batch_link(self)
+ +
+Data and other attributes inherited from gdata.data.BatchFeed:
+
interrupted = <class 'gdata.data.BatchInterrupted'>
The batch:interrupted element sent if batch request was interrupted.

+Only appears in a feed if some of the batch entries could not be processed.
+See: http://code.google.com/apis/gdata/batch.html#Handling_Errors
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class UserEventEntry(gdata.data.GDEntry)
   Describes a user event
 
 
Method resolution order:
+
UserEventEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
playlist_id = <class 'gdata.youtube.data.YtPlaylistId'>
Playlist id
+ +
query_string = <class 'gdata.youtube.data.YtQueryString'>
Keywords or query string associated with a subscription
+ +
rating = <class 'gdata.data.Rating'>
The gd:rating element.

+Represents a numeric rating of the enclosing entity, such as a
+comment. Each rating supplies its own scale, although it may be
+normalized by a service; for example, some services might convert all
+ratings to a scale from 1 to 5.
+ +
username = <class 'gdata.youtube.data.YtUsername'>
Youtube username
+ +
videoid = <class 'gdata.youtube.data.YtVideoId'>
Video id
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class UserEventFeed(gdata.data.GDFeed)
   Describes list of events
 
 
Method resolution order:
+
UserEventFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.youtube.data.UserEventEntry'>]
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class UserProfileEntry(gdata.data.BatchEntry)
   Describes an user's profile
 
 
Method resolution order:
+
UserProfileEntry
+
gdata.data.BatchEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
about_me = <class 'gdata.youtube.data.YtAboutMe'>
User's self description
+ +
age = <class 'gdata.youtube.data.YtAge'>
User's age
+ +
books = <class 'gdata.youtube.data.YtBooks'>
User's favorite books
+ +
company = <class 'gdata.youtube.data.YtCompany'>
User's company
+ +
description = <class 'gdata.youtube.data.YtDescription'>
Description
+ +
first_name = <class 'gdata.youtube.data.YtFirstName'>
User's first name
+ +
gender = <class 'gdata.youtube.data.YtGender'>
User's gender
+ +
hobbies = <class 'gdata.youtube.data.YtHobbies'>
User's hobbies
+ +
hometown = <class 'gdata.youtube.data.YtHometown'>
User's hometown
+ +
last_name = <class 'gdata.youtube.data.YtLastName'>
User's last name
+ +
location = <class 'gdata.youtube.data.YtLocation'>
Location
+ +
movies = <class 'gdata.youtube.data.YtMovies'>
User's favorite movies
+ +
music = <class 'gdata.youtube.data.YtMusic'>
User's favorite music
+ +
occupation = <class 'gdata.youtube.data.YtOccupation'>
User's occupation
+ +
relationship = <class 'gdata.youtube.data.YtRelationship'>
User's relationship status
+ +
school = <class 'gdata.youtube.data.YtSchool'>
User's school
+ +
statistics = <class 'gdata.youtube.data.YtUserProfileStatistics'>
User statistics
+ +
thumbnail = <class 'gdata.media.data.MediaThumbnail'>
Describes a media thumbnail.
+ +
username = <class 'gdata.youtube.data.YtUsername'>
Youtube username
+ +
+Data and other attributes inherited from gdata.data.BatchEntry:
+
batch_id = <class 'gdata.data.BatchId'>
Identifies a single operation in a batch request.
+ +
batch_operation = <class 'gdata.data.BatchOperation'>
The CRUD operation which this batch entry represents.
+ +
batch_status = <class 'gdata.data.BatchStatus'>
The batch:status element present in a batch response entry.

+A status element contains the code (HTTP response code) and
+reason as elements. In a single request these fields would
+be part of the HTTP response, but in a batch request each
+Entry operation has a corresponding Entry in the response
+feed which includes status information.

+See http://code.google.com/apis/gdata/batch.html#Handling_Errors
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class UserProfileFeed(gdata.data.BatchFeed)
   Describes a feed of user's profile
 
 
Method resolution order:
+
UserProfileFeed
+
gdata.data.BatchFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.youtube.data.UserProfileEntry'>]
+ +
+Methods inherited from gdata.data.BatchFeed:
+
AddBatchEntry = add_batch_entry(self, entry=None, id_url_string=None, batch_id_string=None, operation_string=None)
Logic for populating members of a BatchEntry and adding to the feed.

+If the entry is not a BatchEntry, it is converted to a BatchEntry so
+that the batch specific members will be present.

+The id_url_string can be used in place of an entry if the batch operation
+applies to a URL. For example query and delete operations require just
+the URL of an entry, no body is sent in the HTTP request. If an
+id_url_string is sent instead of an entry, a BatchEntry is created and
+added to the feed.

+This method also assigns the desired batch id to the entry so that it
+can be referenced in the server's response. If the batch_id_string is
+None, this method will assign a batch_id to be the index at which this
+entry will be in the feed's entry list.

+Args:
+  entry: BatchEntry, atom.data.Entry, or another Entry flavor (optional)
+      The entry which will be sent to the server as part of the batch
+      request. The item must have a valid atom id so that the server
+      knows which entry this request references.
+  id_url_string: str (optional) The URL of the entry to be acted on. You
+      can find this URL in the text member of the atom id for an entry.
+      If an entry is not sent, this id will be used to construct a new
+      BatchEntry which will be added to the request feed.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+  operation_string: str (optional) The desired batch operation which will
+      set the batch_operation.type member of the entry. Options are
+      'insert', 'update', 'delete', and 'query'

+Raises:
+  MissingRequiredParameters: Raised if neither an id_ url_string nor an
+      entry are provided in the request.

+Returns:
+  The added entry.
+ +
AddDelete = add_delete(self, url_string=None, entry=None, batch_id_string=None)
Adds a delete request to the batch request feed.

+This method takes either the url_string which is the atom id of the item
+to be deleted, or the entry itself. The atom id of the entry must be
+present so that the server knows which entry should be deleted.

+Args:
+  url_string: str (optional) The URL of the entry to be deleted. You can
+     find this URL in the text member of the atom id for an entry.
+  entry: BatchEntry (optional) The entry to be deleted.
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters: Raised if neither a url_string nor an entry
+      are provided in the request.
+ +
AddInsert = add_insert(self, entry, batch_id_string=None)
Add an insert request to the operations in this batch request feed.

+If the entry doesn't yet have an operation or a batch id, these will
+be set to the insert operation and a batch_id specified as a parameter.

+Args:
+  entry: BatchEntry The entry which will be sent in the batch feed as an
+      insert request.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+ +
AddQuery = add_query(self, url_string=None, entry=None, batch_id_string=None)
Adds a query request to the batch request feed.

+This method takes either the url_string which is the query URL
+whose results will be added to the result feed. The query URL will
+be encapsulated in a BatchEntry, and you may pass in the BatchEntry
+with a query URL instead of sending a url_string.

+Args:
+  url_string: str (optional)
+  entry: BatchEntry (optional)
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters
+ +
AddUpdate = add_update(self, entry, batch_id_string=None)
Add an update request to the list of batch operations in this feed.

+Sets the operation type of the entry to insert if it is not already set
+and assigns the desired batch id to the entry so that it can be
+referenced in the server's response.

+Args:
+  entry: BatchEntry The entry which will be sent to the server as an
+      update (HTTP PUT) request. The item must have a valid atom id
+      so that the server knows which entry to replace.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. See also comments for AddInsert.
+ +
FindBatchLink = find_batch_link(self)
+ +
add_batch_entry(self, entry=None, id_url_string=None, batch_id_string=None, operation_string=None)
Logic for populating members of a BatchEntry and adding to the feed.

+If the entry is not a BatchEntry, it is converted to a BatchEntry so
+that the batch specific members will be present.

+The id_url_string can be used in place of an entry if the batch operation
+applies to a URL. For example query and delete operations require just
+the URL of an entry, no body is sent in the HTTP request. If an
+id_url_string is sent instead of an entry, a BatchEntry is created and
+added to the feed.

+This method also assigns the desired batch id to the entry so that it
+can be referenced in the server's response. If the batch_id_string is
+None, this method will assign a batch_id to be the index at which this
+entry will be in the feed's entry list.

+Args:
+  entry: BatchEntry, atom.data.Entry, or another Entry flavor (optional)
+      The entry which will be sent to the server as part of the batch
+      request. The item must have a valid atom id so that the server
+      knows which entry this request references.
+  id_url_string: str (optional) The URL of the entry to be acted on. You
+      can find this URL in the text member of the atom id for an entry.
+      If an entry is not sent, this id will be used to construct a new
+      BatchEntry which will be added to the request feed.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+  operation_string: str (optional) The desired batch operation which will
+      set the batch_operation.type member of the entry. Options are
+      'insert', 'update', 'delete', and 'query'

+Raises:
+  MissingRequiredParameters: Raised if neither an id_ url_string nor an
+      entry are provided in the request.

+Returns:
+  The added entry.
+ +
add_delete(self, url_string=None, entry=None, batch_id_string=None)
Adds a delete request to the batch request feed.

+This method takes either the url_string which is the atom id of the item
+to be deleted, or the entry itself. The atom id of the entry must be
+present so that the server knows which entry should be deleted.

+Args:
+  url_string: str (optional) The URL of the entry to be deleted. You can
+     find this URL in the text member of the atom id for an entry.
+  entry: BatchEntry (optional) The entry to be deleted.
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters: Raised if neither a url_string nor an entry
+      are provided in the request.
+ +
add_insert(self, entry, batch_id_string=None)
Add an insert request to the operations in this batch request feed.

+If the entry doesn't yet have an operation or a batch id, these will
+be set to the insert operation and a batch_id specified as a parameter.

+Args:
+  entry: BatchEntry The entry which will be sent in the batch feed as an
+      insert request.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+ +
add_query(self, url_string=None, entry=None, batch_id_string=None)
Adds a query request to the batch request feed.

+This method takes either the url_string which is the query URL
+whose results will be added to the result feed. The query URL will
+be encapsulated in a BatchEntry, and you may pass in the BatchEntry
+with a query URL instead of sending a url_string.

+Args:
+  url_string: str (optional)
+  entry: BatchEntry (optional)
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters
+ +
add_update(self, entry, batch_id_string=None)
Add an update request to the list of batch operations in this feed.

+Sets the operation type of the entry to insert if it is not already set
+and assigns the desired batch id to the entry so that it can be
+referenced in the server's response.

+Args:
+  entry: BatchEntry The entry which will be sent to the server as an
+      update (HTTP PUT) request. The item must have a valid atom id
+      so that the server knows which entry to replace.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. See also comments for AddInsert.
+ +
find_batch_link(self)
+ +
+Data and other attributes inherited from gdata.data.BatchFeed:
+
interrupted = <class 'gdata.data.BatchInterrupted'>
The batch:interrupted element sent if batch request was interrupted.

+Only appears in a feed if some of the batch entries could not be processed.
+See: http://code.google.com/apis/gdata/batch.html#Handling_Errors
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class VideoEntry(gdata.data.BatchEntry)
   Describes a video
 
 
Method resolution order:
+
VideoEntry
+
gdata.data.BatchEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes inherited from gdata.data.BatchEntry:
+
batch_id = <class 'gdata.data.BatchId'>
Identifies a single operation in a batch request.
+ +
batch_operation = <class 'gdata.data.BatchOperation'>
The CRUD operation which this batch entry represents.
+ +
batch_status = <class 'gdata.data.BatchStatus'>
The batch:status element present in a batch response entry.

+A status element contains the code (HTTP response code) and
+reason as elements. In a single request these fields would
+be part of the HTTP response, but in a batch request each
+Entry operation has a corresponding Entry in the response
+feed which includes status information.

+See http://code.google.com/apis/gdata/batch.html#Handling_Errors
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class VideoEntryBase(gdata.data.GDEntry)
   Elements that describe or contain videos
 
 
Method resolution order:
+
VideoEntryBase
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
comments = <class 'gdata.data.Comments'>
The gd:comments element.

+Contains a comments feed for the enclosing entry (such as a calendar event).
+ +
group = <class 'gdata.youtube.data.YouTubeMediaGroup'>
Describes a you tube media group
+ +
location = <class 'gdata.youtube.data.YtLocation'>
Location
+ +
noembed = <class 'gdata.youtube.data.YtNoEmbed'>
Disables embedding for the video
+ +
racy = <class 'gdata.youtube.data.YtRacy'>
Mature content
+ +
rating = <class 'gdata.data.Rating'>
The gd:rating element.

+Represents a numeric rating of the enclosing entity, such as a
+comment. Each rating supplies its own scale, although it may be
+normalized by a service; for example, some services might convert all
+ratings to a scale from 1 to 5.
+ +
recorded = <class 'gdata.youtube.data.YtRecorded'>
Date when the video was recorded
+ +
statistics = <class 'gdata.youtube.data.YtVideoStatistics'>
Video statistics
+ +
where = <class 'gdata.geo.data.GeoRssWhere'>
Describes a geographical location or region.
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class VideoFeed(gdata.data.BatchFeed)
   Describes a video feed
 
 
Method resolution order:
+
VideoFeed
+
gdata.data.BatchFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.youtube.data.VideoEntry'>]
+ +
+Methods inherited from gdata.data.BatchFeed:
+
AddBatchEntry = add_batch_entry(self, entry=None, id_url_string=None, batch_id_string=None, operation_string=None)
Logic for populating members of a BatchEntry and adding to the feed.

+If the entry is not a BatchEntry, it is converted to a BatchEntry so
+that the batch specific members will be present.

+The id_url_string can be used in place of an entry if the batch operation
+applies to a URL. For example query and delete operations require just
+the URL of an entry, no body is sent in the HTTP request. If an
+id_url_string is sent instead of an entry, a BatchEntry is created and
+added to the feed.

+This method also assigns the desired batch id to the entry so that it
+can be referenced in the server's response. If the batch_id_string is
+None, this method will assign a batch_id to be the index at which this
+entry will be in the feed's entry list.

+Args:
+  entry: BatchEntry, atom.data.Entry, or another Entry flavor (optional)
+      The entry which will be sent to the server as part of the batch
+      request. The item must have a valid atom id so that the server
+      knows which entry this request references.
+  id_url_string: str (optional) The URL of the entry to be acted on. You
+      can find this URL in the text member of the atom id for an entry.
+      If an entry is not sent, this id will be used to construct a new
+      BatchEntry which will be added to the request feed.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+  operation_string: str (optional) The desired batch operation which will
+      set the batch_operation.type member of the entry. Options are
+      'insert', 'update', 'delete', and 'query'

+Raises:
+  MissingRequiredParameters: Raised if neither an id_ url_string nor an
+      entry are provided in the request.

+Returns:
+  The added entry.
+ +
AddDelete = add_delete(self, url_string=None, entry=None, batch_id_string=None)
Adds a delete request to the batch request feed.

+This method takes either the url_string which is the atom id of the item
+to be deleted, or the entry itself. The atom id of the entry must be
+present so that the server knows which entry should be deleted.

+Args:
+  url_string: str (optional) The URL of the entry to be deleted. You can
+     find this URL in the text member of the atom id for an entry.
+  entry: BatchEntry (optional) The entry to be deleted.
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters: Raised if neither a url_string nor an entry
+      are provided in the request.
+ +
AddInsert = add_insert(self, entry, batch_id_string=None)
Add an insert request to the operations in this batch request feed.

+If the entry doesn't yet have an operation or a batch id, these will
+be set to the insert operation and a batch_id specified as a parameter.

+Args:
+  entry: BatchEntry The entry which will be sent in the batch feed as an
+      insert request.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+ +
AddQuery = add_query(self, url_string=None, entry=None, batch_id_string=None)
Adds a query request to the batch request feed.

+This method takes either the url_string which is the query URL
+whose results will be added to the result feed. The query URL will
+be encapsulated in a BatchEntry, and you may pass in the BatchEntry
+with a query URL instead of sending a url_string.

+Args:
+  url_string: str (optional)
+  entry: BatchEntry (optional)
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters
+ +
AddUpdate = add_update(self, entry, batch_id_string=None)
Add an update request to the list of batch operations in this feed.

+Sets the operation type of the entry to insert if it is not already set
+and assigns the desired batch id to the entry so that it can be
+referenced in the server's response.

+Args:
+  entry: BatchEntry The entry which will be sent to the server as an
+      update (HTTP PUT) request. The item must have a valid atom id
+      so that the server knows which entry to replace.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. See also comments for AddInsert.
+ +
FindBatchLink = find_batch_link(self)
+ +
add_batch_entry(self, entry=None, id_url_string=None, batch_id_string=None, operation_string=None)
Logic for populating members of a BatchEntry and adding to the feed.

+If the entry is not a BatchEntry, it is converted to a BatchEntry so
+that the batch specific members will be present.

+The id_url_string can be used in place of an entry if the batch operation
+applies to a URL. For example query and delete operations require just
+the URL of an entry, no body is sent in the HTTP request. If an
+id_url_string is sent instead of an entry, a BatchEntry is created and
+added to the feed.

+This method also assigns the desired batch id to the entry so that it
+can be referenced in the server's response. If the batch_id_string is
+None, this method will assign a batch_id to be the index at which this
+entry will be in the feed's entry list.

+Args:
+  entry: BatchEntry, atom.data.Entry, or another Entry flavor (optional)
+      The entry which will be sent to the server as part of the batch
+      request. The item must have a valid atom id so that the server
+      knows which entry this request references.
+  id_url_string: str (optional) The URL of the entry to be acted on. You
+      can find this URL in the text member of the atom id for an entry.
+      If an entry is not sent, this id will be used to construct a new
+      BatchEntry which will be added to the request feed.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+  operation_string: str (optional) The desired batch operation which will
+      set the batch_operation.type member of the entry. Options are
+      'insert', 'update', 'delete', and 'query'

+Raises:
+  MissingRequiredParameters: Raised if neither an id_ url_string nor an
+      entry are provided in the request.

+Returns:
+  The added entry.
+ +
add_delete(self, url_string=None, entry=None, batch_id_string=None)
Adds a delete request to the batch request feed.

+This method takes either the url_string which is the atom id of the item
+to be deleted, or the entry itself. The atom id of the entry must be
+present so that the server knows which entry should be deleted.

+Args:
+  url_string: str (optional) The URL of the entry to be deleted. You can
+     find this URL in the text member of the atom id for an entry.
+  entry: BatchEntry (optional) The entry to be deleted.
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters: Raised if neither a url_string nor an entry
+      are provided in the request.
+ +
add_insert(self, entry, batch_id_string=None)
Add an insert request to the operations in this batch request feed.

+If the entry doesn't yet have an operation or a batch id, these will
+be set to the insert operation and a batch_id specified as a parameter.

+Args:
+  entry: BatchEntry The entry which will be sent in the batch feed as an
+      insert request.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+ +
add_query(self, url_string=None, entry=None, batch_id_string=None)
Adds a query request to the batch request feed.

+This method takes either the url_string which is the query URL
+whose results will be added to the result feed. The query URL will
+be encapsulated in a BatchEntry, and you may pass in the BatchEntry
+with a query URL instead of sending a url_string.

+Args:
+  url_string: str (optional)
+  entry: BatchEntry (optional)
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters
+ +
add_update(self, entry, batch_id_string=None)
Add an update request to the list of batch operations in this feed.

+Sets the operation type of the entry to insert if it is not already set
+and assigns the desired batch id to the entry so that it can be
+referenced in the server's response.

+Args:
+  entry: BatchEntry The entry which will be sent to the server as an
+      update (HTTP PUT) request. The item must have a valid atom id
+      so that the server knows which entry to replace.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. See also comments for AddInsert.
+ +
find_batch_link(self)
+ +
+Data and other attributes inherited from gdata.data.BatchFeed:
+
interrupted = <class 'gdata.data.BatchInterrupted'>
The batch:interrupted element sent if batch request was interrupted.

+Only appears in a feed if some of the batch entries could not be processed.
+See: http://code.google.com/apis/gdata/batch.html#Handling_Errors
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class VideoMessageEntry(gdata.data.BatchEntry)
   Describes a video message
 
 
Method resolution order:
+
VideoMessageEntry
+
gdata.data.BatchEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
description = <class 'gdata.youtube.data.YtDescription'>
Description
+ +
+Data and other attributes inherited from gdata.data.BatchEntry:
+
batch_id = <class 'gdata.data.BatchId'>
Identifies a single operation in a batch request.
+ +
batch_operation = <class 'gdata.data.BatchOperation'>
The CRUD operation which this batch entry represents.
+ +
batch_status = <class 'gdata.data.BatchStatus'>
The batch:status element present in a batch response entry.

+A status element contains the code (HTTP response code) and
+reason as elements. In a single request these fields would
+be part of the HTTP response, but in a batch request each
+Entry operation has a corresponding Entry in the response
+feed which includes status information.

+See http://code.google.com/apis/gdata/batch.html#Handling_Errors
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class VideoMessageFeed(gdata.data.BatchFeed)
   Describes videos in a videoMessage
 
 
Method resolution order:
+
VideoMessageFeed
+
gdata.data.BatchFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.youtube.data.VideoMessageEntry'>]
+ +
+Methods inherited from gdata.data.BatchFeed:
+
AddBatchEntry = add_batch_entry(self, entry=None, id_url_string=None, batch_id_string=None, operation_string=None)
Logic for populating members of a BatchEntry and adding to the feed.

+If the entry is not a BatchEntry, it is converted to a BatchEntry so
+that the batch specific members will be present.

+The id_url_string can be used in place of an entry if the batch operation
+applies to a URL. For example query and delete operations require just
+the URL of an entry, no body is sent in the HTTP request. If an
+id_url_string is sent instead of an entry, a BatchEntry is created and
+added to the feed.

+This method also assigns the desired batch id to the entry so that it
+can be referenced in the server's response. If the batch_id_string is
+None, this method will assign a batch_id to be the index at which this
+entry will be in the feed's entry list.

+Args:
+  entry: BatchEntry, atom.data.Entry, or another Entry flavor (optional)
+      The entry which will be sent to the server as part of the batch
+      request. The item must have a valid atom id so that the server
+      knows which entry this request references.
+  id_url_string: str (optional) The URL of the entry to be acted on. You
+      can find this URL in the text member of the atom id for an entry.
+      If an entry is not sent, this id will be used to construct a new
+      BatchEntry which will be added to the request feed.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+  operation_string: str (optional) The desired batch operation which will
+      set the batch_operation.type member of the entry. Options are
+      'insert', 'update', 'delete', and 'query'

+Raises:
+  MissingRequiredParameters: Raised if neither an id_ url_string nor an
+      entry are provided in the request.

+Returns:
+  The added entry.
+ +
AddDelete = add_delete(self, url_string=None, entry=None, batch_id_string=None)
Adds a delete request to the batch request feed.

+This method takes either the url_string which is the atom id of the item
+to be deleted, or the entry itself. The atom id of the entry must be
+present so that the server knows which entry should be deleted.

+Args:
+  url_string: str (optional) The URL of the entry to be deleted. You can
+     find this URL in the text member of the atom id for an entry.
+  entry: BatchEntry (optional) The entry to be deleted.
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters: Raised if neither a url_string nor an entry
+      are provided in the request.
+ +
AddInsert = add_insert(self, entry, batch_id_string=None)
Add an insert request to the operations in this batch request feed.

+If the entry doesn't yet have an operation or a batch id, these will
+be set to the insert operation and a batch_id specified as a parameter.

+Args:
+  entry: BatchEntry The entry which will be sent in the batch feed as an
+      insert request.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+ +
AddQuery = add_query(self, url_string=None, entry=None, batch_id_string=None)
Adds a query request to the batch request feed.

+This method takes either the url_string which is the query URL
+whose results will be added to the result feed. The query URL will
+be encapsulated in a BatchEntry, and you may pass in the BatchEntry
+with a query URL instead of sending a url_string.

+Args:
+  url_string: str (optional)
+  entry: BatchEntry (optional)
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters
+ +
AddUpdate = add_update(self, entry, batch_id_string=None)
Add an update request to the list of batch operations in this feed.

+Sets the operation type of the entry to insert if it is not already set
+and assigns the desired batch id to the entry so that it can be
+referenced in the server's response.

+Args:
+  entry: BatchEntry The entry which will be sent to the server as an
+      update (HTTP PUT) request. The item must have a valid atom id
+      so that the server knows which entry to replace.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. See also comments for AddInsert.
+ +
FindBatchLink = find_batch_link(self)
+ +
add_batch_entry(self, entry=None, id_url_string=None, batch_id_string=None, operation_string=None)
Logic for populating members of a BatchEntry and adding to the feed.

+If the entry is not a BatchEntry, it is converted to a BatchEntry so
+that the batch specific members will be present.

+The id_url_string can be used in place of an entry if the batch operation
+applies to a URL. For example query and delete operations require just
+the URL of an entry, no body is sent in the HTTP request. If an
+id_url_string is sent instead of an entry, a BatchEntry is created and
+added to the feed.

+This method also assigns the desired batch id to the entry so that it
+can be referenced in the server's response. If the batch_id_string is
+None, this method will assign a batch_id to be the index at which this
+entry will be in the feed's entry list.

+Args:
+  entry: BatchEntry, atom.data.Entry, or another Entry flavor (optional)
+      The entry which will be sent to the server as part of the batch
+      request. The item must have a valid atom id so that the server
+      knows which entry this request references.
+  id_url_string: str (optional) The URL of the entry to be acted on. You
+      can find this URL in the text member of the atom id for an entry.
+      If an entry is not sent, this id will be used to construct a new
+      BatchEntry which will be added to the request feed.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+  operation_string: str (optional) The desired batch operation which will
+      set the batch_operation.type member of the entry. Options are
+      'insert', 'update', 'delete', and 'query'

+Raises:
+  MissingRequiredParameters: Raised if neither an id_ url_string nor an
+      entry are provided in the request.

+Returns:
+  The added entry.
+ +
add_delete(self, url_string=None, entry=None, batch_id_string=None)
Adds a delete request to the batch request feed.

+This method takes either the url_string which is the atom id of the item
+to be deleted, or the entry itself. The atom id of the entry must be
+present so that the server knows which entry should be deleted.

+Args:
+  url_string: str (optional) The URL of the entry to be deleted. You can
+     find this URL in the text member of the atom id for an entry.
+  entry: BatchEntry (optional) The entry to be deleted.
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters: Raised if neither a url_string nor an entry
+      are provided in the request.
+ +
add_insert(self, entry, batch_id_string=None)
Add an insert request to the operations in this batch request feed.

+If the entry doesn't yet have an operation or a batch id, these will
+be set to the insert operation and a batch_id specified as a parameter.

+Args:
+  entry: BatchEntry The entry which will be sent in the batch feed as an
+      insert request.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. Note that batch_ids should either always be specified or
+      never, mixing could potentially result in duplicate batch ids.
+ +
add_query(self, url_string=None, entry=None, batch_id_string=None)
Adds a query request to the batch request feed.

+This method takes either the url_string which is the query URL
+whose results will be added to the result feed. The query URL will
+be encapsulated in a BatchEntry, and you may pass in the BatchEntry
+with a query URL instead of sending a url_string.

+Args:
+  url_string: str (optional)
+  entry: BatchEntry (optional)
+  batch_id_string: str (optional)

+Raises:
+  MissingRequiredParameters
+ +
add_update(self, entry, batch_id_string=None)
Add an update request to the list of batch operations in this feed.

+Sets the operation type of the entry to insert if it is not already set
+and assigns the desired batch id to the entry so that it can be
+referenced in the server's response.

+Args:
+  entry: BatchEntry The entry which will be sent to the server as an
+      update (HTTP PUT) request. The item must have a valid atom id
+      so that the server knows which entry to replace.
+  batch_id_string: str (optional) The batch ID to be used to reference
+      this batch operation in the results feed. If this parameter is None,
+      the current length of the feed's entry array will be used as a
+      count. See also comments for AddInsert.
+ +
find_batch_link(self)
+ +
+Data and other attributes inherited from gdata.data.BatchFeed:
+
interrupted = <class 'gdata.data.BatchInterrupted'>
The batch:interrupted element sent if batch request was interrupted.

+Only appears in a feed if some of the batch entries could not be processed.
+See: http://code.google.com/apis/gdata/batch.html#Handling_Errors
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class VideoModerationEntry(gdata.data.GDEntry)
   Describes video moderation
 
 
Method resolution order:
+
VideoModerationEntry
+
gdata.data.GDEntry
+
atom.data.Entry
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
moderation_status = <class 'gdata.youtube.data.YtModerationStatus'>
Moderation status
+ +
videoid = <class 'gdata.youtube.data.YtVideoId'>
Video id
+ +
+Methods inherited from gdata.data.GDEntry:
+
FindMediaLink = find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
GetId = get_id(self)
+ +
IsMedia = is_media(self)
+ +
find_media_link(self)
Returns the URL to the media content, if the entry is a media entry.
+Otherwise returns None.
+ +
get_id(self)
+ +
is_media(self)
+ +
+Data and other attributes inherited from gdata.data.GDEntry:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
+Data and other attributes inherited from atom.data.Entry:
+
content = <class 'atom.data.Content'>
The atom:content element.
+ +
control = <class 'atom.data.Control'>
The app:control element indicating restrictions on publication.

+The APP control element may contain a draft element indicating whether or
+not this entry should be publicly available.
+ +
published = <class 'atom.data.Published'>
The atom:published element.
+ +
source = <class 'atom.data.Source'>
The atom:source element.
+ +
summary = <class 'atom.data.Summary'>
The atom:summary element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class VideoModerationFeed(gdata.data.GDFeed)
   Describes a video moderation feed
 
 
Method resolution order:
+
VideoModerationFeed
+
gdata.data.GDFeed
+
atom.data.Feed
+
atom.data.Source
+
atom.data.FeedEntryParent
+
atom.core.XmlElement
+
gdata.data.LinkFinder
+
atom.data.LinkFinder
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
entry = [<class 'gdata.youtube.data.VideoModerationEntry'>]
+ +
+Methods inherited from gdata.data.GDFeed:
+
GetId = get_id(self)
+ +
get_generator(self)
+ +
get_id(self)
+ +
+Data and other attributes inherited from gdata.data.GDFeed:
+
etag = '{http://schemas.google.com/g/2005}etag'
+ +
items_per_page = <class 'gdata.data.ItemsPerPage'>
The opensearch:itemsPerPage element in GData feed.
+ +
start_index = <class 'gdata.data.StartIndex'>
The opensearch:startIndex element in GData feed.
+ +
total_results = <class 'gdata.data.TotalResults'>
opensearch:TotalResults for a GData feed.
+ +
+Data and other attributes inherited from atom.data.Source:
+
generator = <class 'atom.data.Generator'>
The atom:generator element.
+ +
icon = <class 'atom.data.Icon'>
The atom:icon element.
+ +
logo = <class 'atom.data.Logo'>
The atom:logo element.
+ +
subtitle = <class 'atom.data.Subtitle'>
The atom:subtitle element.
+ +
+Methods inherited from atom.data.FeedEntryParent:
+
__init__(self, atom_id=None, text=None, *args, **kwargs)
+ +
+Data and other attributes inherited from atom.data.FeedEntryParent:
+
author = [<class 'atom.data.Author'>]
+ +
category = [<class 'atom.data.Category'>]
+ +
contributor = [<class 'atom.data.Contributor'>]
+ +
id = <class 'atom.data.Id'>
The atom:id element.
+ +
link = [<class 'atom.data.Link'>]
+ +
rights = <class 'atom.data.Rights'>
The atom:rights element.
+ +
title = <class 'atom.data.Title'>
The atom:title element.
+ +
updated = <class 'atom.data.Updated'>
The atom:updated element.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +
+Methods inherited from gdata.data.LinkFinder:
+
FindAclLink = find_acl_link(self)
+ +
FindFeedLink = find_feed_link(self)
+ +
FindHtmlLink = find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
FindPostLink = find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
FindPreviousLink = find_previous_link(self)
+ +
GetAclLink = get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
GetFeedLink = get_feed_link(self)
+ +
GetHtmlLink = get_html_link(self)
+ +
GetPostLink = get_post_link(self)
+ +
GetPreviousLink = get_previous_link(self)
+ +
find_acl_link(self)
+ +
find_feed_link(self)
+ +
find_html_link(self)
Finds the first link with rel of alternate and type of text/html.
+ +
find_post_link(self)
Get the URL to which new entries should be POSTed.

+The POST target URL is used to insert new entries.

+Returns:
+  A str for the URL in the link with a rel matching the POST type.
+ +
find_previous_link(self)
+ +
get_acl_link(self)
Searches for a link or feed_link (if present) with the rel for ACL.
+ +
get_feed_link(self)
+ +
get_html_link(self)
+ +
get_post_link(self)
+ +
get_previous_link(self)
+ +
+Methods inherited from atom.data.LinkFinder:
+
FindAlternateLink = find_alternate_link(self)
+ +
FindEditLink = find_edit_link(self)
+ +
FindEditMediaLink = find_edit_media_link(self)
+ +
FindLicenseLink = find_license_link(self)
+ +
FindNextLink = find_next_link(self)
+ +
FindSelfLink = find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
FindUrl = find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
GetAlternateLink = get_alternate_link(self)
+ +
GetEditLink = get_edit_link(self)
+ +
GetEditMediaLink = get_edit_media_link(self)
+ +
GetLicenseLink = get_license_link(self)
+ +
GetLink = get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
GetNextLink = get_next_link(self)
+ +
GetSelfLink = get_self_link(self)
+ +
find_alternate_link(self)
+ +
find_edit_link(self)
+ +
find_edit_media_link(self)
+ +
find_license_link(self)
+ +
find_next_link(self)
+ +
find_self_link(self)
Find the first link with rel set to 'self'

+Returns:
+  A str containing the link's href or None if none of the links had rel
+  equal to 'self'
+ +
find_url(self, rel)
Returns the URL in a link with the desired rel value.
+ +
get_alternate_link(self)
+ +
get_edit_link(self)
+ +
get_edit_media_link(self)
+ +
get_license_link(self)
+ +
get_link(self, rel)
Returns a link object which has the desired rel value.

+If you are interested in the URL instead of the link object,
+consider using find_url instead.
+ +
get_next_link(self)
+ +
get_self_link(self)
+ +

+ + + + + + + +
 
+class YouTubeAppControl(atom.data.Control)
   Describes a you tube app control
 
 
Method resolution order:
+
YouTubeAppControl
+
atom.data.Control
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
state = <class 'gdata.youtube.data.YtPublicationState'>
Status of an unpublished video
+ +
+Data and other attributes inherited from atom.data.Control:
+
draft = <class 'atom.data.Draft'>
The app:draft element which indicates if this entry should be public.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class YouTubeCaptionAppControl(atom.data.Control)
   Describes a you tube caption app control
 
 
Method resolution order:
+
YouTubeCaptionAppControl
+
atom.data.Control
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
state = <class 'gdata.youtube.data.YtCaptionPublicationState'>
Status of an unpublished caption track
+ +
+Data and other attributes inherited from atom.data.Control:
+
draft = <class 'atom.data.Draft'>
The app:draft element which indicates if this entry should be public.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class YouTubeMediaContent(gdata.media.data.MediaContent)
   Describes a you tube media content
 
 
Method resolution order:
+
YouTubeMediaContent
+
gdata.media.data.MediaContent
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
format = 'format'
+ +
+Data and other attributes inherited from gdata.media.data.MediaContent:
+
bitrate = 'bitrate'
+ +
category = [<class 'gdata.media.data.MediaCategory'>]
+ +
channels = 'channels'
+ +
copyright = <class 'gdata.media.data.MediaCopyright'>
Describes a media copyright.
+ +
credit = [<class 'gdata.media.data.MediaCredit'>]
+ +
description = <class 'gdata.media.data.MediaDescription'>
Describes a media description.
+ +
duration = 'duration'
+ +
expression = 'expression'
+ +
file_size = 'fileSize'
+ +
framerate = 'framerate'
+ +
hash = <class 'gdata.media.data.MediaHash'>
Describes a media hash.
+ +
height = 'height'
+ +
is_default = 'isDefault'
+ +
keywords = <class 'gdata.media.data.MediaKeywords'>
Describes a media keywords.
+ +
language = 'language'
+ +
medium = 'medium'
+ +
player = <class 'gdata.media.data.MediaPlayer'>
Describes a media player.
+ +
rating = [<class 'gdata.media.data.MediaRating'>]
+ +
restriction = [<class 'gdata.media.data.MediaRestriction'>]
+ +
samplingrate = 'samplingrate'
+ +
text = [<class 'gdata.media.data.MediaText'>]
+ +
thumbnail = [<class 'gdata.media.data.MediaThumbnail'>]
+ +
title = <class 'gdata.media.data.MediaTitle'>
Describes a media title.
+ +
type = 'type'
+ +
url = 'url'
+ +
width = 'width'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+

+ + + + + + + +
 
+class YouTubeMediaCredit(gdata.media.data.MediaCredit)
   Describes a you tube media credit
 
 
Method resolution order:
+
YouTubeMediaCredit
+
gdata.media.data.MediaCredit
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
type = 'type'
+ +
+Data and other attributes inherited from gdata.media.data.MediaCredit:
+
role = 'role'
+ +
scheme = 'scheme'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class YouTubeMediaGroup(gdata.media.data.MediaGroup)
   Describes a you tube media group
 
 
Method resolution order:
+
YouTubeMediaGroup
+
gdata.media.data.MediaGroup
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
aspect_ratio = <class 'gdata.youtube.data.YtAspectRatio'>
The aspect ratio of a media file
+ +
duration = <class 'gdata.youtube.data.YtDuration'>
Video duration
+ +
private = <class 'gdata.youtube.data.YtPrivate'>
Flags the entry as private
+ +
uploaded = <class 'gdata.youtube.data.YtUploaded'>
Date/Time at which the video was uploaded
+ +
videoid = <class 'gdata.youtube.data.YtVideoId'>
Video id
+ +
+Data and other attributes inherited from gdata.media.data.MediaGroup:
+
category = [<class 'gdata.media.data.MediaCategory'>]
+ +
content = [<class 'gdata.media.data.MediaContent'>]
+ +
copyright = <class 'gdata.media.data.MediaCopyright'>
Describes a media copyright.
+ +
credit = [<class 'gdata.media.data.MediaCredit'>]
+ +
description = <class 'gdata.media.data.MediaDescription'>
Describes a media description.
+ +
hash = <class 'gdata.media.data.MediaHash'>
Describes a media hash.
+ +
keywords = <class 'gdata.media.data.MediaKeywords'>
Describes a media keywords.
+ +
player = <class 'gdata.media.data.MediaPlayer'>
Describes a media player.
+ +
rating = [<class 'gdata.media.data.MediaRating'>]
+ +
restriction = [<class 'gdata.media.data.MediaRestriction'>]
+ +
text = [<class 'gdata.media.data.MediaText'>]
+ +
thumbnail = [<class 'gdata.media.data.MediaThumbnail'>]
+ +
title = <class 'gdata.media.data.MediaTitle'>
Describes a media title.
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+

+ + + + + + + +
 
+class YouTubeMediaRating(gdata.media.data.MediaRating)
   Describes a you tube media rating
 
 
Method resolution order:
+
YouTubeMediaRating
+
gdata.media.data.MediaRating
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
country = 'country'
+ +
+Data and other attributes inherited from gdata.media.data.MediaRating:
+
scheme = 'scheme'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class YtAboutMe(atom.core.XmlElement)
   User's self description
 
 
Method resolution order:
+
YtAboutMe
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class YtAge(atom.core.XmlElement)
   User's age
 
 
Method resolution order:
+
YtAge
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class YtAspectRatio(atom.core.XmlElement)
   The aspect ratio of a media file
 
 
Method resolution order:
+
YtAspectRatio
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class YtBasePublicationState(atom.core.XmlElement)
   Status of an unpublished entry
 
 
Method resolution order:
+
YtBasePublicationState
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
help_url = 'helpUrl'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class YtBooks(atom.core.XmlElement)
   User's favorite books
 
 
Method resolution order:
+
YtBooks
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class YtCaptionPublicationState(YtBasePublicationState)
   Status of an unpublished caption track
 
 
Method resolution order:
+
YtCaptionPublicationState
+
YtBasePublicationState
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
name = 'name'
+ +
reason_code = 'reasonCode'
+ +
+Data and other attributes inherited from YtBasePublicationState:
+
help_url = 'helpUrl'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class YtCompany(atom.core.XmlElement)
   User's company
 
 
Method resolution order:
+
YtCompany
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class YtCountHint(atom.core.XmlElement)
   Hint as to how many entries the linked feed contains
 
 
Method resolution order:
+
YtCountHint
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class YtDescription(atom.core.XmlElement)
   Description
 
 
Method resolution order:
+
YtDescription
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class YtDuration(atom.core.XmlElement)
   Video duration
 
 
Method resolution order:
+
YtDuration
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
seconds = 'seconds'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class YtFirstName(atom.core.XmlElement)
   User's first name
 
 
Method resolution order:
+
YtFirstName
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class YtGender(atom.core.XmlElement)
   User's gender
 
 
Method resolution order:
+
YtGender
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class YtHobbies(atom.core.XmlElement)
   User's hobbies
 
 
Method resolution order:
+
YtHobbies
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class YtHometown(atom.core.XmlElement)
   User's hometown
 
 
Method resolution order:
+
YtHometown
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class YtLastName(atom.core.XmlElement)
   User's last name
 
 
Method resolution order:
+
YtLastName
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class YtLocation(atom.core.XmlElement)
   Location
 
 
Method resolution order:
+
YtLocation
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class YtModerationStatus(atom.core.XmlElement)
   Moderation status
 
 
Method resolution order:
+
YtModerationStatus
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class YtMovies(atom.core.XmlElement)
   User's favorite movies
 
 
Method resolution order:
+
YtMovies
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class YtMusic(atom.core.XmlElement)
   User's favorite music
 
 
Method resolution order:
+
YtMusic
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class YtNoEmbed(atom.core.XmlElement)
   Disables embedding for the video
 
 
Method resolution order:
+
YtNoEmbed
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class YtOccupation(atom.core.XmlElement)
   User's occupation
 
 
Method resolution order:
+
YtOccupation
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class YtPlaylistId(atom.core.XmlElement)
   Playlist id
 
 
Method resolution order:
+
YtPlaylistId
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class YtPlaylistTitle(atom.core.XmlElement)
   Playlist title
 
 
Method resolution order:
+
YtPlaylistTitle
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class YtPosition(atom.core.XmlElement)
   Video position on the playlist
 
 
Method resolution order:
+
YtPosition
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class YtPrivate(atom.core.XmlElement)
   Flags the entry as private
 
 
Method resolution order:
+
YtPrivate
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class YtPublicationState(YtBasePublicationState)
   Status of an unpublished video
 
 
Method resolution order:
+
YtPublicationState
+
YtBasePublicationState
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
name = 'name'
+ +
reason_code = 'reasonCode'
+ +
+Data and other attributes inherited from YtBasePublicationState:
+
help_url = 'helpUrl'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class YtQueryString(atom.core.XmlElement)
   Keywords or query string associated with a subscription
 
 
Method resolution order:
+
YtQueryString
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class YtRacy(atom.core.XmlElement)
   Mature content
 
 
Method resolution order:
+
YtRacy
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class YtRecorded(atom.core.XmlElement)
   Date when the video was recorded
 
 
Method resolution order:
+
YtRecorded
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class YtRelationship(atom.core.XmlElement)
   User's relationship status
 
 
Method resolution order:
+
YtRelationship
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class YtSchool(atom.core.XmlElement)
   User's school
 
 
Method resolution order:
+
YtSchool
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class YtSpam(atom.core.XmlElement)
   Indicates that the entry probably contains spam
 
 
Method resolution order:
+
YtSpam
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class YtStatistics(atom.core.XmlElement)
   Video and user statistics
 
 
Method resolution order:
+
YtStatistics
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes defined here:
+
favorite_count = 'favoriteCount'
+ +
last_web_access = 'lastWebAccess'
+ +
subscriber_count = 'subscriberCount'
+ +
video_watch_count = 'videoWatchCount'
+ +
view_count = 'viewCount'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class YtStatus(atom.core.XmlElement)
   Status of a contact
 
 
Method resolution order:
+
YtStatus
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class YtUploaded(atom.core.XmlElement)
   Date/Time at which the video was uploaded
 
 
Method resolution order:
+
YtUploaded
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class YtUserProfileStatistics(YtStatistics)
   User statistics
 
 
Method resolution order:
+
YtUserProfileStatistics
+
YtStatistics
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes inherited from YtStatistics:
+
favorite_count = 'favoriteCount'
+ +
last_web_access = 'lastWebAccess'
+ +
subscriber_count = 'subscriberCount'
+ +
video_watch_count = 'videoWatchCount'
+ +
view_count = 'viewCount'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class YtUsername(atom.core.XmlElement)
   Youtube username
 
 
Method resolution order:
+
YtUsername
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class YtVideoId(atom.core.XmlElement)
   Video id
 
 
Method resolution order:
+
YtVideoId
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + + + +
 
+class YtVideoStatistics(YtStatistics)
   Video statistics
 
 
Method resolution order:
+
YtVideoStatistics
+
YtStatistics
+
atom.core.XmlElement
+
__builtin__.object
+
+
+Data and other attributes inherited from YtStatistics:
+
favorite_count = 'favoriteCount'
+ +
last_web_access = 'lastWebAccess'
+ +
subscriber_count = 'subscriberCount'
+ +
video_watch_count = 'videoWatchCount'
+ +
view_count = 'viewCount'
+ +
+Methods inherited from atom.core.XmlElement:
+
FindChildren = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
FindExtensions = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
GetAttributes = get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
GetElements = get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
ToString = to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
__init__(self, text=None, *args, **kwargs)
+ +
__str__(self)
+ +
get_attributes(self, tag=None, namespace=None, version=1)
Find all attributes which match the tag and namespace.

+To find all attributes in this object, call get_attributes with the tag
+and namespace both set to None (the default). This method searches
+through the object's members and the attributes stored in
+_other_attributes which did not fit any of the XML parsing rules for this
+class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching attributes.

+Returns:
+  A list of XmlAttribute objects for the matching attributes.
+ +
get_elements(self, tag=None, namespace=None, version=1)
Find all sub elements which match the tag and namespace.

+To find all elements in this object, call get_elements with the tag and
+namespace both set to None (the default). This method searches through
+the object's members and the elements stored in _other_elements which
+did not match any of the XML parsing rules for this class.

+Args:
+  tag: str
+  namespace: str
+  version: int Specifies the version of the XML rules to be used when
+           searching for matching elements.

+Returns:
+  A list of the matching XmlElements.
+ +
to_string(self, version=1, encoding=None)
Converts this object to XML.
+ +
+Data descriptors inherited from atom.core.XmlElement:
+
__dict__
+
dictionary for instance variables (if defined)
+
+
__weakref__
+
list of weak references to the object (if defined)
+
+
attributes
+
+
children
+
+
extension_attributes
+
+
extension_elements
+
+
namespace
+
+
tag
+
+
+Data and other attributes inherited from atom.core.XmlElement:
+
text = None
+ +

+ + + + + +
 
+Data
       YT_TEMPLATE = '{http://gdata.youtube.com/schemas/2007/}%s'
+__author__ = 'j.s@google.com (Jeff Scudder)'

+ + + + + +
 
+Author
       j.s@google.com (Jeff Scudder)
+ \ No newline at end of file diff -Nru python-gdata-1.2.4/pydocs/gdata.youtube.html python-gdata-2.0.8/pydocs/gdata.youtube.html --- python-gdata-1.2.4/pydocs/gdata.youtube.html 2008-10-16 00:01:57.000000000 +0100 +++ python-gdata-2.0.8/pydocs/gdata.youtube.html 2009-11-25 01:04:14.000000000 +0000 @@ -29,8 +29,9 @@ Package Contents

       
service
-

+

data
+
service
+

+      that match to the location entered.
+  feed: str (optional) The base URL which is the beginning of the query URL.
+        defaults to 'http://%s/feeds/videos' % (YOUTUBE_SERVER)
 
 
@@ -126,7 +127,7 @@ Methods inherited from atom.AtomBase:
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__init__(self, extension_elements=None, extension_attributes=None, text=None)
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
__str__(self)
@@ -175,7 +176,7 @@ Methods inherited from atom.AtomBase:
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__init__(self, extension_elements=None, extension_attributes=None, text=None)
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
__str__(self)
@@ -275,7 +276,7 @@ Methods inherited from atom.AtomBase:
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__init__(self, extension_elements=None, extension_attributes=None, text=None)
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
__str__(self)
@@ -324,7 +325,7 @@ Methods inherited from atom.AtomBase:
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__init__(self, extension_elements=None, extension_attributes=None, text=None)
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
__str__(self)
@@ -373,7 +374,7 @@ Methods inherited from atom.AtomBase:
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__init__(self, extension_elements=None, extension_attributes=None, text=None)
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
__str__(self)
@@ -422,7 +423,7 @@ Methods inherited from atom.AtomBase:
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__init__(self, extension_elements=None, extension_attributes=None, text=None)
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
__str__(self)
@@ -471,7 +472,7 @@ Methods inherited from atom.AtomBase:
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__init__(self, extension_elements=None, extension_attributes=None, text=None)
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
__str__(self)
@@ -520,7 +521,7 @@ Methods inherited from atom.AtomBase:
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__init__(self, extension_elements=None, extension_attributes=None, text=None)
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
__str__(self)
@@ -569,7 +570,7 @@ Methods inherited from atom.AtomBase:
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__init__(self, extension_elements=None, extension_attributes=None, text=None)
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
__str__(self)
@@ -618,7 +619,7 @@ Methods inherited from atom.AtomBase:
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__init__(self, extension_elements=None, extension_attributes=None, text=None)
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
__str__(self)
@@ -667,7 +668,7 @@ Methods inherited from atom.AtomBase:
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__init__(self, extension_elements=None, extension_attributes=None, text=None)
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
__str__(self)
@@ -716,7 +717,7 @@ Methods inherited from atom.AtomBase:
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__init__(self, extension_elements=None, extension_attributes=None, text=None)
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
__str__(self)
@@ -765,7 +766,7 @@ Methods inherited from atom.AtomBase:
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__init__(self, extension_elements=None, extension_attributes=None, text=None)
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
__str__(self)
@@ -814,7 +815,7 @@ Methods inherited from atom.AtomBase:
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__init__(self, extension_elements=None, extension_attributes=None, text=None)
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
__str__(self)
@@ -863,7 +864,7 @@ Methods inherited from atom.AtomBase:
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__init__(self, extension_elements=None, extension_attributes=None, text=None)
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
__str__(self)
@@ -912,7 +913,7 @@ Methods inherited from atom.AtomBase:
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__init__(self, extension_elements=None, extension_attributes=None, text=None)
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
__str__(self)
@@ -961,7 +962,7 @@ Methods inherited from atom.AtomBase:
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__init__(self, extension_elements=None, extension_attributes=None, text=None)
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
__str__(self)
@@ -1010,7 +1011,7 @@ Methods inherited from atom.AtomBase:
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__init__(self, extension_elements=None, extension_attributes=None, text=None)
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
__str__(self)
@@ -1110,7 +1111,7 @@ Methods inherited from atom.AtomBase:
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__init__(self, extension_elements=None, extension_attributes=None, text=None)
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
__str__(self)
@@ -1159,7 +1160,7 @@ Methods inherited from atom.AtomBase:
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__init__(self, extension_elements=None, extension_attributes=None, text=None)
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
__str__(self)
@@ -1208,7 +1209,7 @@ Methods inherited from atom.AtomBase:
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__init__(self, extension_elements=None, extension_attributes=None, text=None)
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
__str__(self)
@@ -1308,7 +1309,7 @@ Methods inherited from atom.AtomBase:
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__init__(self, extension_elements=None, extension_attributes=None, text=None)
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
__str__(self)
@@ -1357,7 +1358,7 @@ Methods inherited from atom.AtomBase:
ToString(self, string_encoding='UTF-8')
Converts the Atom object to a string containing XML.
-
__init__(self, extension_elements=None, extension_attributes=None, text=None)
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
__str__(self)
@@ -1522,23 +1523,23 @@       class.
  category: list (optional) A list of Category instances
  contributor: list (optional) A list on Contributor instances
-  generator: Generator (optional) 
-  icon: Icon (optional) 
+  generator: Generator (optional)
+  icon: Icon (optional)
  id: Id (optional) The entry's Id element
  link: list (optional) A list of Link instances
-  logo: Logo (optional) 
+  logo: Logo (optional)
  rights: Rights (optional) The entry's Rights element
  subtitle: Subtitle (optional) The entry's subtitle element
  title: Title (optional) the entry's title element
  updated: Updated (optional) the entry's updated element
-  entry: list (optional) A list of the Entry instances contained in the 
+  entry: list (optional) A list of the Entry instances contained in the
      feed.
-  text: String (optional) The text contents of the element. This is the 
-      contents of the Entry's XML text node. 
+  text: String (optional) The text contents of the element. This is the
+      contents of the Entry's XML text node.
      (Example: <foo>This is the text</foo>)
  extension_elements: list (optional) A list of ExtensionElement instances
      which are children of this element.
-  extension_attributes: dict (optional) A dictionary of strings which are 
+  extension_attributes: dict (optional) A dictionary of strings which are
      the values for additional XML attributes of this element.
@@ -1752,23 +1753,23 @@       class.
  category: list (optional) A list of Category instances
  contributor: list (optional) A list on Contributor instances
-  generator: Generator (optional) 
-  icon: Icon (optional) 
+  generator: Generator (optional)
+  icon: Icon (optional)
  id: Id (optional) The entry's Id element
  link: list (optional) A list of Link instances
-  logo: Logo (optional) 
+  logo: Logo (optional)
  rights: Rights (optional) The entry's Rights element
  subtitle: Subtitle (optional) The entry's subtitle element
  title: Title (optional) the entry's title element
  updated: Updated (optional) the entry's updated element
-  entry: list (optional) A list of the Entry instances contained in the 
+  entry: list (optional) A list of the Entry instances contained in the
      feed.
-  text: String (optional) The text contents of the element. This is the 
-      contents of the Entry's XML text node. 
+  text: String (optional) The text contents of the element. This is the
+      contents of the Entry's XML text node.
      (Example: <foo>This is the text</foo>)
  extension_elements: list (optional) A list of ExtensionElement instances
      which are children of this element.
-  extension_attributes: dict (optional) A dictionary of strings which are 
+  extension_attributes: dict (optional) A dictionary of strings which are
      the values for additional XML attributes of this element.
@@ -1982,23 +1983,23 @@       class.
  category: list (optional) A list of Category instances
  contributor: list (optional) A list on Contributor instances
-  generator: Generator (optional) 
-  icon: Icon (optional) 
+  generator: Generator (optional)
+  icon: Icon (optional)
  id: Id (optional) The entry's Id element
  link: list (optional) A list of Link instances
-  logo: Logo (optional) 
+  logo: Logo (optional)
  rights: Rights (optional) The entry's Rights element
  subtitle: Subtitle (optional) The entry's subtitle element
  title: Title (optional) the entry's title element
  updated: Updated (optional) the entry's updated element
-  entry: list (optional) A list of the Entry instances contained in the 
+  entry: list (optional) A list of the Entry instances contained in the
      feed.
-  text: String (optional) The text contents of the element. This is the 
-      contents of the Entry's XML text node. 
+  text: String (optional) The text contents of the element. This is the
+      contents of the Entry's XML text node.
      (Example: <foo>This is the text</foo>)
  extension_elements: list (optional) A list of ExtensionElement instances
      which are children of this element.
-  extension_attributes: dict (optional) A dictionary of strings which are 
+  extension_attributes: dict (optional) A dictionary of strings which are
      the values for additional XML attributes of this element.
@@ -2217,23 +2218,23 @@       class.
  category: list (optional) A list of Category instances
  contributor: list (optional) A list on Contributor instances
-  generator: Generator (optional) 
-  icon: Icon (optional) 
+  generator: Generator (optional)
+  icon: Icon (optional)
  id: Id (optional) The entry's Id element
  link: list (optional) A list of Link instances
-  logo: Logo (optional) 
+  logo: Logo (optional)
  rights: Rights (optional) The entry's Rights element
  subtitle: Subtitle (optional) The entry's subtitle element
  title: Title (optional) the entry's title element
  updated: Updated (optional) the entry's updated element
-  entry: list (optional) A list of the Entry instances contained in the 
+  entry: list (optional) A list of the Entry instances contained in the
      feed.
-  text: String (optional) The text contents of the element. This is the 
-      contents of the Entry's XML text node. 
+  text: String (optional) The text contents of the element. This is the
+      contents of the Entry's XML text node.
      (Example: <foo>This is the text</foo>)
  extension_elements: list (optional) A list of ExtensionElement instances
      which are children of this element.
-  extension_attributes: dict (optional) A dictionary of strings which are 
+  extension_attributes: dict (optional) A dictionary of strings which are
      the values for additional XML attributes of this element.
@@ -2450,29 +2451,7 @@
Methods inherited from atom.Entry:
-
__init__(self, author=None, category=None, content=None, contributor=None, atom_id=None, link=None, published=None, rights=None, source=None, summary=None, control=None, title=None, updated=None, extension_elements=None, extension_attributes=None, text=None)
Constructor for atom:entry

-Args:
-  author: list A list of Author instances which belong to this class.
-  category: list A list of Category instances
-  content: Content The entry's Content
-  contributor: list A list on Contributor instances
-  id: Id The entry's Id element
-  link: list A list of Link instances
-  published: Published The entry's Published element
-  rights: Rights The entry's Rights element
-  source: Source the entry's source element
-  summary: Summary the entry's summary element
-  title: Title the entry's title element
-  updated: Updated the entry's updated element
-  control: The entry's app:control element which can be used to mark an 
-      entry as a draft which should not be publicly viewable.
-  text: String The text contents of the element. This is the contents
-      of the Entry's XML text node. (Example: <foo>This is the text</foo>)
-  extension_elements: list A list of ExtensionElement instances which are
-      children of this element.
-  extension_attributes: dict A dictionary of strings which are the values
-      for additional XML attributes of this element.
+
__init__(*args, **kwargs)
# The deprecated_function wraps the actual call to f.

Methods inherited from atom.AtomBase:
@@ -2574,23 +2553,23 @@       class.
  category: list (optional) A list of Category instances
  contributor: list (optional) A list on Contributor instances
-  generator: Generator (optional) 
-  icon: Icon (optional) 
+  generator: Generator (optional)
+  icon: Icon (optional)
  id: Id (optional) The entry's Id element
  link: list (optional) A list of Link instances
-  logo: Logo (optional) 
+  logo: Logo (optional)
  rights: Rights (optional) The entry's Rights element
  subtitle: Subtitle (optional) The entry's subtitle element
  title: Title (optional) the entry's title element
  updated: Updated (optional) the entry's updated element
-  entry: list (optional) A list of the Entry instances contained in the 
+  entry: list (optional) A list of the Entry instances contained in the
      feed.
-  text: String (optional) The text contents of the element. This is the 
-      contents of the Entry's XML text node. 
+  text: String (optional) The text contents of the element. This is the
+      contents of the Entry's XML text node.
      (Example: <foo>This is the text</foo>)
  extension_elements: list (optional) A list of ExtensionElement instances
      which are children of this element.
-  extension_attributes: dict (optional) A dictionary of strings which are 
+  extension_attributes: dict (optional) A dictionary of strings which are
      the values for additional XML attributes of this element.
@@ -2827,23 +2806,23 @@       class.
  category: list (optional) A list of Category instances
  contributor: list (optional) A list on Contributor instances
-  generator: Generator (optional) 
-  icon: Icon (optional) 
+  generator: Generator (optional)
+  icon: Icon (optional)
  id: Id (optional) The entry's Id element
  link: list (optional) A list of Link instances
-  logo: Logo (optional) 
+  logo: Logo (optional)
  rights: Rights (optional) The entry's Rights element
  subtitle: Subtitle (optional) The entry's subtitle element
  title: Title (optional) the entry's title element
  updated: Updated (optional) the entry's updated element
-  entry: list (optional) A list of the Entry instances contained in the 
+  entry: list (optional) A list of the Entry instances contained in the
      feed.
-  text: String (optional) The text contents of the element. This is the 
-      contents of the Entry's XML text node. 
+  text: String (optional) The text contents of the element. This is the
+      contents of the Entry's XML text node.
      (Example: <foo>This is the text</foo>)
  extension_elements: list (optional) A list of ExtensionElement instances
      which are children of this element.
-  extension_attributes: dict (optional) A dictionary of strings which are 
+  extension_attributes: dict (optional) A dictionary of strings which are
      the values for additional XML attributes of this element.
@@ -3057,23 +3036,23 @@       class.
  category: list (optional) A list of Category instances
  contributor: list (optional) A list on Contributor instances
-  generator: Generator (optional) 
-  icon: Icon (optional) 
+  generator: Generator (optional)
+  icon: Icon (optional)
  id: Id (optional) The entry's Id element
  link: list (optional) A list of Link instances
-  logo: Logo (optional) 
+  logo: Logo (optional)
  rights: Rights (optional) The entry's Rights element
  subtitle: Subtitle (optional) The entry's subtitle element
  title: Title (optional) the entry's title element
  updated: Updated (optional) the entry's updated element
-  entry: list (optional) A list of the Entry instances contained in the 
+  entry: list (optional) A list of the Entry instances contained in the
      feed.
-  text: String (optional) The text contents of the element. This is the 
-      contents of the Entry's XML text node. 
+  text: String (optional) The text contents of the element. This is the
+      contents of the Entry's XML text node.
      (Example: <foo>This is the text</foo>)
  extension_elements: list (optional) A list of ExtensionElement instances
      which are children of this element.
-  extension_attributes: dict (optional) A dictionary of strings which are 
+  extension_attributes: dict (optional) A dictionary of strings which are
      the values for additional XML attributes of this element.
diff -Nru python-gdata-1.2.4/pydocs/gdata.youtube.service.html python-gdata-2.0.8/pydocs/gdata.youtube.service.html --- python-gdata-1.2.4/pydocs/gdata.youtube.service.html 2009-01-22 19:55:42.000000000 +0000 +++ python-gdata-2.0.8/pydocs/gdata.youtube.service.html 2010-02-26 23:16:48.000000000 +0000 @@ -17,7 +17,7 @@ +Modules
 
-Modules
       
xml.etree.cElementTree
@@ -89,7 +89,7 @@
Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
@@ -113,6 +113,8 @@
__str__(...)
x.__str__() <==> str(x)
+
__unicode__(...)
+
Data descriptors inherited from exceptions.BaseException:
__dict__
@@ -120,7 +122,6 @@
args
message
-
exception message

@@ -149,7 +150,7 @@
Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
@@ -173,6 +174,8 @@
__str__(...)
x.__str__() <==> str(x)
+
__unicode__(...)
+
Data descriptors inherited from exceptions.BaseException:
__dict__
@@ -180,7 +183,6 @@
args
message
-
exception message

@@ -209,7 +211,7 @@
Data and other attributes inherited from exceptions.Exception:
-
__new__ = <built-in method __new__ of type object at 0x722d20>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__new__ = <built-in method __new__ of type object at 0x74d100>
T.__new__(S, ...) -> a new object with type S, a subtype of T

Methods inherited from exceptions.BaseException:
@@ -233,6 +235,8 @@
__str__(...)
x.__str__() <==> str(x)
+
__unicode__(...)
+
Data descriptors inherited from exceptions.BaseException:
__dict__
@@ -240,7 +244,6 @@
args
message
-
exception message

@@ -351,8 +354,6 @@
__gt__(...)
x.__gt__(y) <==> x>y
-
__hash__(...)
x.__hash__() <==> hash(x)
-
__iter__(...)
x.__iter__() <==> iter(x)
__le__(...)
x.__le__(y) <==> x<=y
@@ -367,6 +368,8 @@
__setitem__(...)
x.__setitem__(i, y) <==> x[i]=y
+
__sizeof__(...)
D.__sizeof__() -> size of D in memory, in bytes
+
clear(...)
D.clear() -> None.  Remove all items from D.
copy(...)
D.copy() -> a shallow copy of D
@@ -400,9 +403,11 @@
Data and other attributes inherited from __builtin__.dict:
-
__new__ = <built-in method __new__ of type object at 0x72b260>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__hash__ = None
+ +
__new__ = <built-in method __new__ of type object at 0x7569a0>
T.__new__(S, ...) -> a new object with type S, a subtype of T
-
fromkeys = <built-in method fromkeys of type object at 0xd31ca0>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
+
fromkeys = <built-in method fromkeys of type object at 0xd3fa80>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
v defaults to None.

@@ -884,9 +889,11 @@   YouTubeError: You must provide at least a uri or a username to the
      GetYouTubeUserEntry() method.
-

GetYouTubeUserFeed(self, uri=None, username=None)
Retrieve a YouTubeUserFeed.
+
GetYouTubeUserFeed(self, uri=None, username=None)
Retrieve a YouTubeVideoFeed of user uploaded videos
 
-Either a uri or a username must be provided.
+Either a uri or a username must be provided.  This will retrieve list
+of videos uploaded by specified user.  The uri will be of format
+"http://gdata.youtube.com/feeds/api/users/{username}/uploads".
 
Args:
  uri: An optional string representing the URI of the user feed that is
@@ -1168,7 +1175,7 @@ Returns:
  True if the entry was deleted.
-
FetchOAuthRequestToken(self, scopes=None, extra_parameters=None, request_url='https://www.google.com/accounts/OAuthGetRequestToken')
Fetches OAuth request token and returns it.
+
FetchOAuthRequestToken(self, scopes=None, extra_parameters=None, request_url='https://www.google.com/accounts/OAuthGetRequestToken', oauth_callback=None)
Fetches and sets the OAuth request token and returns it.
 
Args:
  scopes: string or list of string base URL(s) of the service(s) to be
@@ -1183,10 +1190,14 @@       extra_parameters = {'oauth_version': '2.0'}
  request_url: Request token URL. The default is
      'https://www.google.com/accounts/OAuthGetRequestToken'.
-  
+  oauth_callback: str (optional) If set, it is assume the client is using
+      the OAuth v1.0a protocol where the callback url is sent in the
+      request token step.  If the oauth_callback is also set in
+      extra_params, this value will override that one.

Returns:
  The fetched request token as a gdata.auth.OAuthToken object.
-  

Raises:
  FetchingOAuthRequestTokenFailed if the server responded to the request
  with an error.
@@ -1318,7 +1329,7 @@ Returns:
  A GDataEntry built from the XML in the server's response.
-
GetFeed(self, uri, extra_headers=None, converter=<function GDataFeedFromString at 0x8ef1b8>)
Query the GData API with the given URI and receive a Feed.
+
GetFeed(self, uri, extra_headers=None, converter=<function GDataFeedFromString at 0x7fecff704d70>)
Query the GData API with the given URI and receive a Feed.
 
See also documentation for gdata.service.Get
 
@@ -1334,6 +1345,8 @@ Returns:
  A GDataFeed built from the XML in the server's response.
+
GetGeneratorFromLinkFinder(self, link_finder, func, num_retries=3, delay=1, backoff=2)
returns a generator for pagination
+
GetMedia(self, uri, extra_headers=None)
Returns a MediaSource containing media and its metadata from the given
URI string.
@@ -1352,6 +1365,26 @@   A new feed representing the next set of results in the server's feed.
  The type of this feed will match that of the feed argument.
+
GetOAuthInputParameters(self)
+ +
GetWithRetries(self, uri, extra_headers=None, redirects_remaining=4, encoding='UTF-8', converter=None, num_retries=3, delay=1, backoff=2, logger=None)
This is a wrapper method for Get with retring capability.

+To avoid various errors while retrieving bulk entities by retring
+specified times.

+Note this method relies on the time module and so may not be usable
+by default in Python2.2.

+Args:
+  num_retries: integer The retry count.
+  delay: integer The initial delay for retring.
+  backoff: integer how much the delay should lengthen after each failure.
+  logger: an object which has a debug(str) method to receive logging
+          messages. Recommended that you pass in the logging module.
+Raises:
+  ValueError if any of the parameters has an invalid value.
+  RanOutOfTries on failure after number of retries.
+
Post(self, data, uri, extra_headers=None, url_params=None, escape_params=True, redirects_remaining=4, media_source=None, converter=None)
Insert or update  data into a GData service at the given URI.
 
Args:
@@ -1512,7 +1545,7 @@ Args:
  token: string or instance of a ClientLoginToken.
-
SetOAuthInputParameters(self, signature_method, consumer_key, consumer_secret=None, rsa_key=None, two_legged_oauth=False)
Sets parameters required for using OAuth authentication mechanism.
+
SetOAuthInputParameters(self, signature_method, consumer_key, consumer_secret=None, rsa_key=None, two_legged_oauth=False, requestor_id=None)
Sets parameters required for using OAuth authentication mechanism.
 
NOTE: Though consumer_secret and rsa_key are optional, either of the two
is required depending on the value of the signature_method.
@@ -1529,7 +1562,10 @@       Required only for HMAC_SHA1 signature method.
  rsa_key: string (optional) Private key required for RSA_SHA1 signature
      method.
-  two_legged_oauth: string (default=False) Enables two-legged OAuth process.
+  two_legged_oauth: boolean (optional) Enables two-legged OAuth process.
+  requestor_id: string (optional) User email adress to make requests on
+      their behalf.  This parameter should only be set when two_legged_oauth
+      is True.
SetOAuthToken(self, oauth_token)
Attempts to set the current token and add it to the token store.
 
@@ -1543,18 +1579,24 @@ Args:
  request_token: gdata.auth.OAuthToken OAuth request token.
-
UpgradeToOAuthAccessToken(self, authorized_request_token=None, request_url='https://www.google.com/accounts/OAuthGetAccessToken', oauth_version='1.0')
Upgrades the authorized request token to an access token.
+
UpgradeToOAuthAccessToken(self, authorized_request_token=None, request_url='https://www.google.com/accounts/OAuthGetAccessToken', oauth_version='1.0', oauth_verifier=None)
Upgrades the authorized request token to an access token and returns it
 
Args:
  authorized_request_token: gdata.auth.OAuthToken (optional) OAuth request
      token. If not specified, then the current token will be used if it is
      of type <gdata.auth.OAuthToken>, else it is found by looking in the
      token_store by looking for a token for the current scope.
+  request_url: Access token URL. The default is
+      'https://www.google.com/accounts/OAuthGetAccessToken'.
  oauth_version: str (default='1.0') oauth_version parameter. All other
      'oauth_' parameters are added by default. This parameter too, is
      added by default but here you can override it's value.
-  request_url: Access token URL. The default is
-      'https://www.google.com/accounts/OAuthGetAccessToken'.
+  oauth_verifier: str (optional) If present, it is assumed that the client
+    will use the OAuth v1.0a protocol which includes passing the
+    oauth_verifier (as returned by the SP) in the access token step.

+Returns:
+  Access token
      
Raises:
  NonOAuthToken if the user's authorized request token is not an OAuth
@@ -1624,7 +1666,7 @@   username: str
  password: str
-
request(self, operation, url, data=None, headers=None, url_params=None)
+
request(*args, **kwargs)
# The deprecated_function wraps the actual call to f.
use_basic_auth(self, username, password, scopes=None)
@@ -1762,8 +1804,6 @@
__gt__(...)
x.__gt__(y) <==> x>y
-
__hash__(...)
x.__hash__() <==> hash(x)
-
__iter__(...)
x.__iter__() <==> iter(x)
__le__(...)
x.__le__(y) <==> x<=y
@@ -1778,6 +1818,8 @@
__setitem__(...)
x.__setitem__(i, y) <==> x[i]=y
+
__sizeof__(...)
D.__sizeof__() -> size of D in memory, in bytes
+
clear(...)
D.clear() -> None.  Remove all items from D.
copy(...)
D.copy() -> a shallow copy of D
@@ -1811,9 +1853,11 @@
Data and other attributes inherited from __builtin__.dict:
-
__new__ = <built-in method __new__ of type object at 0x72b260>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__hash__ = None
+ +
__new__ = <built-in method __new__ of type object at 0x7569a0>
T.__new__(S, ...) -> a new object with type S, a subtype of T
-
fromkeys = <built-in method fromkeys of type object at 0xd315b0>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
+
fromkeys = <built-in method fromkeys of type object at 0xd3f3a0>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
v defaults to None.

@@ -1855,7 +1899,9 @@       countries.
  location: A string of geo coordinates. Note that this is not used when the
      search is performed but rather to filter the returned videos for ones
-      that match to the location entered.
 

 
Method resolution order:
YouTubeVideoQuery
@@ -1865,7 +1911,7 @@

Methods defined here:
-
__init__(self, video_id=None, feed_type=None, text_query=None, params=None, categories=None)
+
__init__(self, video_id=None, feed_type=None, text_query=None, params=None, categories=None, feed=None)

Data descriptors defined here:
@@ -1952,8 +1998,6 @@
__gt__(...)
x.__gt__(y) <==> x>y
-
__hash__(...)
x.__hash__() <==> hash(x)
-
__iter__(...)
x.__iter__() <==> iter(x)
__le__(...)
x.__le__(y) <==> x<=y
@@ -1968,6 +2012,8 @@
__setitem__(...)
x.__setitem__(i, y) <==> x[i]=y
+
__sizeof__(...)
D.__sizeof__() -> size of D in memory, in bytes
+
clear(...)
D.clear() -> None.  Remove all items from D.
copy(...)
D.copy() -> a shallow copy of D
@@ -2001,9 +2047,11 @@
Data and other attributes inherited from __builtin__.dict:
-
__new__ = <built-in method __new__ of type object at 0x72b260>
T.__new__(S, ...) -> a new object with type S, a subtype of T
+
__hash__ = None
+ +
__new__ = <built-in method __new__ of type object at 0x7569a0>
T.__new__(S, ...) -> a new object with type S, a subtype of T
-
fromkeys = <built-in method fromkeys of type object at 0xd335c0>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
+
fromkeys = <built-in method fromkeys of type object at 0xd413d0>
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
v defaults to None.

@@ -2047,7 +2095,7 @@ YOUTUBE_STANDARD_TOP_RATED_URI = 'http://gdata.youtube.com/feeds/api/standardfeeds/top_rated'
YOUTUBE_STANDARD_WATCH_ON_MOBILE_URI = 'http://gdata.youtube.com/feeds/api/standardfeeds/watch_on_mobile'
YOUTUBE_SUBSCRIPTION_CATEGORY_SCHEME = 'http://gdata.youtube.com/schemas/subscriptiontypes.cat'
-YOUTUBE_SUPPORTED_UPLOAD_TYPES = ('mov', 'avi', 'wmv', 'mpg', 'quicktime', 'flv')
+YOUTUBE_SUPPORTED_UPLOAD_TYPES = ('mov', 'avi', 'wmv', 'mpg', 'quicktime', 'flv', 'mp4', 'x-flv')
YOUTUBE_UPLOAD_TOKEN_URI = 'http://gdata.youtube.com/action/GetUploadToken'
YOUTUBE_UPLOAD_URI = 'http://uploads.gdata.youtube.com/feeds/api/users'
YOUTUBE_USER_FEED_URI = 'http://gdata.youtube.com/feeds/api/users'
diff -Nru python-gdata-1.2.4/pydocs/generate_docs python-gdata-2.0.8/pydocs/generate_docs --- python-gdata-1.2.4/pydocs/generate_docs 2009-01-22 19:15:43.000000000 +0000 +++ python-gdata-2.0.8/pydocs/generate_docs 2010-01-26 21:48:42.000000000 +0000 @@ -3,6 +3,7 @@ pydoc -w atom.auth pydoc -w atom.client pydoc -w atom.core +pydoc -w atom.data pydoc -w atom.http pydoc -w atom.http_core pydoc -w atom.http_interface @@ -14,37 +15,82 @@ pydoc -w atom.url pydoc -w gdata pydoc -w gdata.auth -pydoc -w gdata.service pydoc -w gdata.client +pydoc -w gdata.data +pydoc -w gdata.gauth +pydoc -w gdata.service +pydoc -w gdata.test_config +pydoc -w gdata.test_config_template pydoc -w gdata.urlfetch pydoc -w gdata.alt.appengine +pydoc -w gdata.acl.data +pydoc -w gdata.analytics +pydoc -w gdata.analytics.service +pydoc -w gdata.analytics.data +pydoc -w gdata.analytics.client pydoc -w gdata.apps pydoc -w gdata.apps.service +pydoc -w gdata.apps.adminsettings +pydoc -w gdata.apps.adminsettings.service pydoc -w gdata.apps.emailsettings pydoc -w gdata.apps.emailsettings.service +pydoc -w gdata.apps.groups +pydoc -w gdata.apps.groups.service pydoc -w gdata.apps.migration pydoc -w gdata.apps.migration.service pydoc -w gdata.base pydoc -w gdata.base.service pydoc -w gdata.blogger pydoc -w gdata.blogger.service +pydoc -w gdata.blogger.data +pydoc -w gdata.blogger.client +pydoc -w gdata.books +pydoc -w gdata.books.service +pydoc -w gdata.books.data pydoc -w gdata.calendar pydoc -w gdata.calendar.service +pydoc -w gdata.calendar.data pydoc -w gdata.codesearch pydoc -w gdata.codesearch.service pydoc -w gdata.contacts pydoc -w gdata.contacts.service +pydoc -w gdata.contacts.data +pydoc -w gdata.contacts.client pydoc -w gdata.docs pydoc -w gdata.docs.service +pydoc -w gdata.docs.data +pydoc -w gdata.docs.client +pydoc -w gdata.dublincore.data pydoc -w gdata.exif +pydoc -w gdata.finance +pydoc -w gdata.finance.service +pydoc -w gdata.finance.data pydoc -w gdata.geo +pydoc -w gdata.geo.data +pydoc -w gdata.health +pydoc -w gdata.health.service pydoc -w gdata.media +pydoc -w gdata.media.data +pydoc -w gdata.maps.data +pydoc -w gdata.maps.client +pydoc -w gdata.notebook.data pydoc -w gdata.photos pydoc -w gdata.photos.service +pydoc -w gdata.projecthosting.data +pydoc -w gdata.projecthosting.client +pydoc -w gdata.sites.client +pydoc -w gdata.sites.data pydoc -w gdata.spreadsheet pydoc -w gdata.spreadsheet.service pydoc -w gdata.spreadsheet.text_db +pydoc -w gdata.spreadsheets.client +pydoc -w gdata.spreadsheets.data pydoc -w gdata.webmastertools pydoc -w gdata.webmastertools.service +pydoc -w gdata.webmastertools.data pydoc -w gdata.youtube pydoc -w gdata.youtube.service +pydoc -w gdata.youtube.data +pydoc -w gdata.opensearch.data +pydoc -w gdata.calendar_resource.data +pydoc -w gdata.calendar_resource.client diff -Nru python-gdata-1.2.4/README.txt python-gdata-2.0.8/README.txt --- python-gdata-1.2.4/README.txt 2007-05-05 01:20:31.000000000 +0100 +++ python-gdata-2.0.8/README.txt 2009-08-21 02:51:46.000000000 +0100 @@ -1,4 +1,4 @@ - Copyright (C) 2006 Google Inc. + Copyright (C) 2006-2009 Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff -Nru python-gdata-1.2.4/RELEASE_NOTES.txt python-gdata-2.0.8/RELEASE_NOTES.txt --- python-gdata-1.2.4/RELEASE_NOTES.txt 2009-01-22 19:40:21.000000000 +0000 +++ python-gdata-2.0.8/RELEASE_NOTES.txt 2010-02-26 23:30:26.000000000 +0000 @@ -1,3 +1,278 @@ +=== 2.0.8 === +February 26, 2010 (revision 960) + +- Added support for resumable uploads with a sample that shows it's use + with Google Docs. Thanks Eric! +- Added the publish element and copy() method to the DocsClient. Thanks Eric! +- Added support for the JSON-C data format recently released for the YouTube + API. +- Fixed import bug when using cryptomath with Python2.4 and lower. +- Modified gdata.gauth to be usable under Python2.3. +- Fixed errors which affect RetrieveAllEmailLists RetrieveEmailLists + RetrieveAllRecipients RetrieveAllNicknames RetrieveNicknames + RetrieveAllUsers in gdata.apps.service. Resolves issue 340 . Thanks + Aprotim! +- Fixed issues with contacts client returning a raw get and not a ContactEntry + and a few auth_tokens are not being passed into the HTTP request. Resolves + issue 332 . Thanks vinces! +- Fixed issue parsing worksheet feed, entry was the wrong type, corrected to + WorksheetEntry. Resolves issue 343. Thanks Igor! +- Fixed typo in gdata.spreadsheets.client (auth_service). Resolves issue 342. + Thanks to Igor once again! +- Fixed bug in Google Apps APIs UpdateSSOSettings. +- The gdata.data.LinkFinder now looks in both the link and feed_link members + for an ACL link. Resolves issue 339. +- Removed client side check on video type in YouTube service. Rely on the + server to provide an error if the format is not supported. Resolves + issue 338. +- Improved documentation for SpreadsheetsService's UpdateRow method to explain + the use case it addresses and recomment alternatives. +- Changed projecthosting to use the host member with relative URLs. +- Added a get_headers function to be used in Python2.2 and 2.3 since + httplib.HTTPResponse does not have getheaders in those versions of Python. + Resolves issue 335. +- Added a client smoke test to check version and auth related class members + which all gdata.x.client's should have. +- Updated the docs service_test.py to run as part of run_all_tests.py. + +=== 2.0.7 === +January 26, 2010 (revision 937) + +- Added gdata.calendar_resource.client to support the management of calendar + resources (like conference rooms) for Google Apps domains. Thanks Vic! +- Updated the sites API client to use version 1.1 of the sites API. +- Added support for 2 Legged OAuth to the GDClient and included a sample + app. Thanks Eric! +- Added a revoke_token method to GDClient to invalidate AuthSub or OAuth + tokens. +- Added a get_record method to the Spreadsheets client to fetch a single + record entry. +- Added includeSuspendedUsers parameter to the apps groups API. Thanks Will + Charles! +- Fixed a client login bug present in the Maps API client. Thanks Roman! +- The client_id property in the YouTube service object is now optional. +- Added optional 'feed' parameter to YouTube service's Query classes. + Resolves issue 323. +- Updated tlslite's use of sha1 to use hashlib if using python2.5 or higher. + Resolves issue 290 . Thanks Jay Lee! +- Added a deadline parameter to gdata.alt.appengine to allow the urlfetch + timeout to be modified to as high as 10 seconds. +- Added GetGeneratorFromLinkFinder to GDataService which simplifies pagination + across the entries in a feed. Resolves issue 325 . Thanks Aprotim! +- Removed the default value for the test domain option. +- Moved auth scopes to gdata.gauth from gdata.service. + +=== 2.0.6 === +December 17, 2009 (revision 914) + +- updated the Google Analytics Data Export API to v2. Thanks Nick! +- added support for batch operations on contacts and profiles. Thanks Julian! +- added a DocsQuery class for the Documents List v3 API. +- removed now obsolete ACL classes from gdata.docs.data in favor of using + classes in gdata.acl.data. Thanks Eric! +- fixed bug in querying group membership by email. Thanks Will Charles! +- removed import which are not present in Python2.2 from gdata.service to + maintain support for Python2.2. +- added additional debug information to MockHttpClient. + +=== 2.0.5 === +November 24, 2009 (revision 900) + +- added new gdata.contacts.client (and data) which uses version 3.0 of the + contacts API. Thanks Vince! +- added new gdata.docs.client which uses version 3.0 of the Documents List + API. Thanks Eric! +- added new v2 modules for the Analytics API (gdata.analytics.client). + Thanks Nick! +- added conditional get using etags on get_entry. Thanks Eric! +- fixed bug in how Calendar redirect headers are handled when using this + library in an App Engine app. +- added new Calendar XML elements to the gdata.calendar module. Thanks + Michael Ballbach! +- added v2 data model classes for finance, notebook, webmastertools, ACLs, + opensearch and youtube. +- fixed issues with contacts.service when editing profiles. Thanks Julian! +- fixed bug in GDClient's get_next method. +- improved usability in Python2.3, though tests do not run the src modules + should be Python2.3 compatible. + +=== 2.0.4 === +October 15, 2009 (revision 864) + +- Added support for the project hosting issue tracker API. Thanks Joe LaPenna! +- Added a get-with-retries method to the v1 service for use with the Google Apps + API to automatically retry. Thanks Takashi Matsuo! +- Revised Google Sites client to use text input when creating a page. Thanks Eric! +- Changed demo calendar in the Google Calendar API example. Thanks Trevor! + +=== 2.0.3 === +October 9, 2009 (revision 856) + +- Added support for Google Sites Data API. Thanks Eric! +- Added support for Google Contacts profiles. Thanks Julian Toledo and Pedro + Morais! +- Added support for the Spreadsheets v3 API Tables feed and Records feed. +- Added support for the Google Apps Admin Settings API. Thanks Jay Lee! +- New sample which illustrates use of the Blogger v1 API on App Engine using + OAuth. Thanks Wiktor Gworek! +- Added a new MediaSource for use with v2 data model classes. Thanks Eric! +- The v2 client classes can now force all requests to be made over SSL. + Thanks Eric! +- Revised the test config system to allow test settings to be specified as + command line arguments or prompt the user to enter them interactively. +- Fixed UTF encoding issue in unittest on big endian architectures. +- Fixed XML parsing bug in Spreadsheets data class. Thanks ppr.vitaly! +- Fixed bug in webmaster tools service verification method arguments. Thanks + eyepulp! +- Fixed download URL recognition in Document List Data API. +- Some progress made in re-adding support for Python2.3, not sure yet if + full Python2.3 support is completely feasible. Python 2.4-2.6 should work. + +=== 2.0.2 === +August 20, 2009 (revision 823) + +- Added support for the Google Maps Data API. Thanks Roman! +- Added data model classes for the v3 Spreadsheets API. This API is not + yet fully supported by the library and the gdata.spreadsheets package + should be considered experimental until the next release. The v1 + gdata.spreadsheet package is unchanged and should still work. +- Auth token lookups when running in App Engine are now memcached which + should improve efficiency. Thanks Marc! +- Fixed a bug with the v2 HTTP proxy client. If behind a proxy, the full + URL is now sent as the request selector. Thanks Dody! +- Removed the gdata.client.GDataClient class which had been deprecated. + +=== 2.0.1 === +July 23, 2009 (revision 805) + +- Added support for Secure AuthSub, OAuth with HMAC and with RSA to the + v2 auth code. +- Added v2 data model classes for all XML elements in the gd namespace. +- Usability improvements in the gdata.docs.service module, thanks Eric! +- Made the dependency on elementtree only required if you are using + Python 2.4 and lower. Thanks brosner! +- Setting the ssl member in atom.service.AtomService will now override a URL + which starts with http:. Many thanks to Michael Ballbach for the patch. +- Added a proxy HTTP client which will use proxy environment variables to + send all requests through the desired proxy server if present. +- Added user agent string indicating that this is from the gdata python v2 + library. +- Removed unneeded title parameter from the Blogger client's add_comment + method. +- Added an all_tests_local script which runs all tests except those which + would make HTTP requests to remote servers. +- Added the birthday element to contacts entry, the reminder element to + calendar events, and the method attribute to calendar's reminder class. + All with great thanks to Marc! +- The analytics GetData method no longer requires the dimensions argument. + Thanks Jim! + +=== 2.0.0 === +June 29, 2009 (revision 777) + +- Released support for version 2 of the Google Data APIs protocol. To use the + new version-aware code, use the gdata.client, atom.data, gdata.data + modules and classes that derive from them. For example, use + gdata.blogger.client.BloggerClient instead of + gdata.blogger.service.BloggerService. High level, service specific classes + are not available yet for other services, so feel free to migrate as they + become available. The v1 service classes are still included so your + existing code should be unaffected. +- Included new Blogger samples to illustrate v2 support, a command line demo + and an app for App Engine. +- Added OAuth sample app which uses App Engine. +- Added the gCal:sequence element to CalendarEventEntry (thanks Anton). +- Added two decorators to diaply warnings when deprecated methods are used. +- Added a login utility for command line samples to share to standardize the + auth process on in a sample program. +- Fixed a bug in v2 XML parsing which prevented multiversion XML classes from + correctly parsing and generating v2 code. +- Fixed v1 HTTP Host header settings, not default ports should now be + included in the Host header. +- Fixed pickle error when an OAuth-RSA token is saved to the App Engine + datastore. +- Fixed missing data in the Document List API unit tests. +- Improved backwards compatibility of v2 data model classes be adding aliases + to v1 functions. + +=== 1.3.3 === +June 5, 2009 (revision 724) + +- Added support for the Google Finance API. Thanks Swee Heng! +- The Google Data Service classes now support version 1.0a of the OAuth + protocol (Thanks Eric!). +- Fixed a naming bug in unit tests for atom.service which appeared when using + Python 2.6.x +- Fixed URL parameter propogation when calling GDataService.Delete. The URL + parameters are now preserved. +- Fixed incorrect return type for gdata.FeedLinkFromString. +- Added data model classes for the Atom and AtomPub XML elements which support + version 2 of the Google Data APIs (by means of dynamic AtomPub namespace + switching). The version 2 XML classes are much more backwards compatible + with v1 classes than in previous releases. + +=== 1.3.2 === +May 22, 2009 (revision 711) + +- Added support for the Google Analytics API. Thanks Sal Uryasev! +- Added support for the Google Book Search API. Thanks James Sams! +- Improved support for 2 legged OAuth and added a sample app. Thanks Eric + Bidelman! +- Simplified the way an XML response from the server is parsed into the + desired class for the version 2.0 API client (gdata.client.GDClient). + +=== 1.3.1 === +April 23, 2009 (revision 695) + +- Fixed issues with setting the developer key in the YouTubeService + constructor. +- For the Document List API (thanks Eric!): + - Added writersCanInvite element + - Fixed a small errors in Document Entry + - Added category label when creating different types of docs + - Fixed DownLoad helpers which shouldn't write a file if server returns + error. Fixes issue 240. + - Added DocumentListEntryFromString converter and using DocumentListEntry + class instead of GDataEntry class to create entries. +- URLs in HTTP requests can now be unicode strings. Resolves issue 233. +- Improvements for the upcoming version 2.0.0 release: + - The v2 auth code now support AuthSub and has been tested on App Engine. + - Unit tests for the v2 client code will default to not use the local file + cache but will make live requests unless cached responses is set to + True in the test configuration module. + - Older v1 unit tests can now use the v2 testing framework, migrated + contacts API tests as a proof of concept. This will come in handy when + testing backwards compatibility for the 2.0 release. + - Improved support for unicode and other character encodings in the v2 XML + core module. + +=== 1.3.0 === +Mar 20, 2009 (revision 665) + +- Added support for the Google Health API. (Thanks Eric Bidelman!) +- Added support for the groups management in the Google Apps Provisioning + API. (Thanks to Tony Chen and Oskar Casquero!) +- Added the following new features for the Google Documents List API: + (Thanks again to Eric Bidelman for adding all of these!) + - Folder create, move docs/folders in and out of other folders. (Thanks + Nizam Sayeed!) + - Suppport for modifications to Access Control Lists for documents. + - Export functionality for documents, spreadsheets, and presentations. + - Updated the docs_example.py sample app. + - New new XML elements: resourceID, lastViewed, and lastModifiedBy. +- Added ability to update web clip settings in the Google Apps email settigns + API. (Thanks Takashi Matsuo.) +- Fixed a bug in calendarExample that would cause execution to fail when an + event attendee does not have any attendeeStatus data. (Thanks Trevor + Johns!) +- Fixed AuthSub request URLs which should be https. (Yay Eric!) +- Fixed logic when changing email settings when using the Google Apps API to + only send properties which have been specified. (Thanks Jay Lee!) +- Includes a new and experimental client class (gdata.client.GDClient) which + can be used with version two of the Google Data API protocol. This class + may change in backwards incompatible ways before the 2.0.0 release, so + use at your own risk. + === 1.2.4 === Jan 22, 2009 (revision 603) diff -Nru python-gdata-1.2.4/samples/analytics/account_feed_demo.py python-gdata-2.0.8/samples/analytics/account_feed_demo.py --- python-gdata-1.2.4/samples/analytics/account_feed_demo.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/samples/analytics/account_feed_demo.py 2009-12-17 19:20:34.000000000 +0000 @@ -0,0 +1,189 @@ +#!/usr/bin/python +# +# Copyright 2009 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Sample Google Analytics Data Export API Account Feed application. + +This sample demonstrates how to retrieve the important data from the Google +Analytics Data Export API Account feed using the Python Client library. This +requires a Google Analytics username and password and uses the Client Login +authorization routine. + + Class AccountFeedDemo: Prints all the import Account Feed data. +""" + +__author__ = 'api.nickm@google.com (Nick Mihailovski)' + + +import gdata.analytics.client +import gdata.sample_util + +def main(): + """Main fucntion for the sample.""" + + demo = AccountFeedDemo() + demo.PrintFeedDetails() + demo.PrintAdvancedSegments() + demo.PrintCustomVarForOneEntry() + demo.PrintGoalsForOneEntry() + demo.PrintAccountEntries() + + +class AccountFeedDemo(object): + """Prints the Google Analytics account feed + + Attributes: + account_feed: Google Analytics AccountList returned form the API. + """ + + def __init__(self): + """Inits AccountFeedDemo.""" + + SOURCE_APP_NAME = 'Google-accountFeedDemoPython-v1' + my_client = gdata.analytics.client.AnalyticsClient(source=SOURCE_APP_NAME) + + try: + gdata.sample_util.authorize_client( + my_client, + service=my_client.auth_service, + source=SOURCE_APP_NAME, + scopes=['https://www.google.com/analytics/feeds/']) + except gdata.client.BadAuthentication: + exit('Invalid user credentials given.') + except gdata.client.Error: + exit('Login Error') + + account_query = gdata.analytics.client.AccountFeedQuery() + self.feed = my_client.GetAccountFeed(account_query) + + def PrintFeedDetails(self): + """Prints important Analytics related data found at the top of the feed.""" + + print '-------- Important Feed Data --------' + print 'Feed Title = ' + self.feed.title.text + print 'Feed Id = ' + self.feed.id.text + print 'Total Results Found = ' + self.feed.total_results.text + print 'Start Index = ' + self.feed.start_index.text + print 'Results Returned = ' + self.feed.items_per_page.text + + def PrintAdvancedSegments(self): + """Prints the advanced segments for this user.""" + + print '-------- Advances Segments --------' + if not self.feed.segment: + print 'No advanced segments found' + else: + for segment in self.feed.segment: + print 'Segment Name = ' + segment.name + print 'Segment Id = ' + segment.id + print 'Segment Definition = ' + segment.definition.text + + def PrintCustomVarForOneEntry(self): + """Prints custom variable information for the first profile that has + custom variable configured.""" + + print '-------- Custom Variables --------' + if not self.feed.entry: + print 'No entries found' + else: + for entry in self.feed.entry: + if entry.custom_Variable: + for custom_variable in entry.custom_variable: + print 'Custom Variable Index = ' + custom_variable.index + print 'Custom Variable Name = ' + custom_variable.name + print 'Custom Variable Scope = ' + custom_variable.scope + return + print 'No custom variables defined for this user' + + def PrintGoalsForOneEntry(self): + """Prints All the goal information for one profile.""" + + print '-------- Goal Configuration --------' + if not self.feed.entry: + print 'No entries found' + else: + for entry in self.feed.entry: + if entry.goal: + for goal in entry.goal: + print 'Goal Number = ' + goal.number + print 'Goal Name = ' + goal.name + print 'Goal Value = ' + goal.value + print 'Goal Active = ' + goal.active + + if goal.destination: + self.PrintDestinationGoal(goal.destination) + elif goal.engagement: + self.PrintEngagementGoal(goal.engagement) + return + + def PrintDestinationGoal(self, destination): + """Prints the important information for destination goals including all + the configured steps if they exist. + + Args: + destination: gdata.data.Destination The destination goal configuration. + """ + + print '----- Destination Goal -----' + print 'Expression = ' + destination.expression + print 'Match Type = ' + destination.match_type + print 'Step 1 Required = ' + destination.step1_required + print 'Case Sensitive = ' + destination.case_sensitive + + # Print goal steps. + if destination.step: + print '----- Destination Goal Steps -----' + for step in destination.step: + print 'Step Number = ' + step.number + print 'Step Name = ' + step.name + print 'Step Path = ' + step.path + + def PrintEngagementGoal(self, engagement): + """Prints the important information for engagement goals. + + Args: + engagement: gdata.data.Engagement The engagement goal configuration. + """ + + print '----- Engagement Goal -----' + print 'Goal Type = ' + engagement.type + print 'Goal Engagement = ' + engagement.comparison + print 'Goal Threshold = ' + engagement.threshold_value + + def PrintAccountEntries(self): + """Prints important Analytics data found in each account entry""" + + print '-------- First 1000 Profiles in Account Feed --------' + if not self.feed.entry: + print 'No entries found' + else: + for entry in self.feed.entry: + print 'Web Property ID = ' + entry.GetProperty('ga:webPropertyId').value + print 'Account Name = ' + entry.GetProperty('ga:accountName').value + print 'Account Id = ' + entry.GetProperty('ga:accountId').value + print 'Profile Name = ' + entry.title.text + print 'Profile ID = ' + entry.GetProperty('ga:profileId').value + print 'Table ID = ' + entry.table_id.text + print 'Currency = ' + entry.GetProperty('ga:currency').value + print 'TimeZone = ' + entry.GetProperty('ga:timezone').value + if entry.custom_variables: + print 'This profile has custom variables' + if entry.goal: + print 'This profile has goals' + + +if __name__ == '__main__': + main() + diff -Nru python-gdata-1.2.4/samples/analytics/data_feed_demo.py python-gdata-2.0.8/samples/analytics/data_feed_demo.py --- python-gdata-1.2.4/samples/analytics/data_feed_demo.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/samples/analytics/data_feed_demo.py 2009-12-17 19:20:34.000000000 +0000 @@ -0,0 +1,181 @@ +#!/usr/bin/python +# +# Copyright 2009 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Sample Google Analytics Data Export API Data Feed application. + +This sample demonstrates how to make requests and retrieve the important +information from the Google Analytics Data Export API Data Feed. This +sample requires a Google Analytics username and password and uses the +Client Login authorization routine. + + Class DataFeedDemo: Prints all the important Data Feed informantion. +""" + +__author__ = 'api.nickm@google.com (Nick Mihailovski)' + + +import gdata.analytics.client +import gdata.sample_util + +def main(): + """Main function for the sample.""" + + demo = DataFeedDemo() + demo.PrintFeedDetails() + demo.PrintDataSources() + demo.PrintFeedAggregates() + demo.PrintSegmentInfo() + demo.PrintOneEntry() + demo.PrintFeedTable() + + +class DataFeedDemo(object): + """Gets data from the Data Feed. + + Attributes: + data_feed: Google Analytics AccountList returned form the API. + """ + + def __init__(self): + """Inits DataFeedDemo.""" + + SOURCE_APP_NAME = 'Google-dataFeedDemoPython-v1' + my_client = gdata.analytics.client.AnalyticsClient(source=SOURCE_APP_NAME) + + try: + gdata.sample_util.authorize_client( + my_client, + service=my_client.auth_service, + source=SOURCE_APP_NAME, + scopes=['https://www.google.com/analytics/feeds/']) + except gdata.client.BadAuthentication: + exit('Invalid user credentials given.') + except gdata.client.Error: + exit('Login Error') + + table_id = gdata.sample_util.get_param( + name='table_id', + prompt='Please enter your Google Analytics Table id (format ga:xxxx)') + + # DataFeedQuery simplifies constructing API queries and uri encodes params. + data_query = gdata.analytics.client.DataFeedQuery({ + 'ids': table_id, + 'start-date': '2008-10-01', + 'end-date': '2008-10-30', + 'dimensions': 'ga:source,ga:medium', + 'metrics': 'ga:visits', + 'sort': '-ga:visits', + 'filters': 'ga:medium==referral', + 'max-results': '50'}) + + self.feed = my_client.GetDataFeed(data_query) + + def PrintFeedDetails(self): + """Prints important Analytics related data found at the top of the feed.""" + + print '\n-------- Feed Data --------' + print 'Feed Title = ' + self.feed.title.text + print 'Feed Id = ' + self.feed.id.text + print 'Total Results Found = ' + self.feed.total_results.text + print 'Start Index = ' + self.feed.start_index.text + print 'Results Returned = ' + self.feed.items_per_page.text + print 'Start Date = ' + self.feed.start_date.text + print 'End Date = ' + self.feed.end_date.text + + def PrintDataSources(self): + """Prints data found in the data source elements. + + This data has information about the Google Analytics account the referenced + table ID belongs to. Note there is currently exactly one data source in + the data feed. + """ + + data_source = self.feed.data_source[0] + + print '\n-------- Data Source Data --------' + print 'Table ID = ' + data_source.table_id.text + print 'Table Name = ' + data_source.table_name.text + print 'Web Property Id = ' + data_source.GetProperty('ga:webPropertyId').value + print 'Profile Id = ' + data_source.GetProperty('ga:profileId').value + print 'Account Name = ' + data_source.GetProperty('ga:accountName').value + + def PrintFeedAggregates(self): + """Prints data found in the aggregates elements. + + This contains the sum of all the metrics defined in the query across. + This sum spans all the rows matched in the feed.total_results property + and not just the rows returned by the response. + """ + + aggregates = self.feed.aggregates + + print '\n-------- Metric Aggregates --------' + for met in aggregates.metric: + print '' + print 'Metric Name = ' + met.name + print 'Metric Value = ' + met.value + print 'Metric Type = ' + met.type + print 'Metric CI = ' + met.confidence_interval + + def PrintSegmentInfo(self): + """Prints segment information if the query has advanced segments + defined.""" + + if self.feed.segment: + print '-------- Advanced Segments Information --------' + for segment in self.feed.segment: + print 'Segment Name = ' + segment.name + print 'Segment Id = ' + segment.id + print 'Segment Definition = ' + segment.definition.value + + def PrintOneEntry(self): + """Prints all the important Google Analytics data found in an entry""" + + print '\n-------- One Entry --------' + if len(self.feed.entry) == 0: + print 'No entries found' + return + + entry = self.feed.entry[0] + print 'ID = ' + entry.id.text + + for dim in entry.dimension: + print 'Dimension Name = ' + dim.name + print 'Dimension Value = ' + dim.value + + for met in entry.metric: + print 'Metric Name = ' + met.name + print 'Metric Value = ' + met.value + print 'Metric Type = ' + met.type + print 'Metric CI = ' + met.confidence_interval + + def PrintFeedTable(self): + """Prints all the entries as a table.""" + + print '\n-------- All Entries In a Table --------' + for entry in self.feed.entry: + for dim in entry.dimension: + print ('Dimension Name = %s \t Dimension Value = %s' + % (dim.name, dim.value)) + for met in entry.metric: + print ('Metric Name = %s \t Metric Value = %s' + % (dim.name, dim.value)) + print '---' + + +if __name__ == '__main__': + main() + diff -Nru python-gdata-1.2.4/samples/apps/adminsettings_example.py python-gdata-2.0.8/samples/apps/adminsettings_example.py --- python-gdata-1.2.4/samples/apps/adminsettings_example.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/samples/apps/adminsettings_example.py 2009-10-09 02:09:39.000000000 +0100 @@ -0,0 +1,151 @@ +#!/usr/bin/python +# +# Copyright 2009 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Contains a Sample for Google Apps Admin Settings. + + AdminSettingsSample: shows everything you ever wanted to know about + your Google Apps Domain but were afraid to ask. +""" + +__author__ = 'jlee@pbu.edu' + +import getopt +import getpass +import sys +import time + +import gdata.apps.service +import gdata.apps.adminsettings.service + +class AdminSettingsSample(object): + """AdminSettingsSample object demos Admin Settings API.""" + + def __init__(self, email, password, domain): + """Constructor for the AdminSettingsSample object. + + Takes an email and password corresponding to a google apps admin + account to demon the Admin Settings API. + + Args: + email: [string] The e-mail address of the account to use for the sample. + password: [string] The password corresponding to the account specified by + the email parameter. + domain: [string] The domain for the Profiles feed + """ + self.gd_client = gdata.apps.adminsettings.service.AdminSettingsService() + self.gd_client.domain = domain + self.gd_client.email = email + self.gd_client.password = password + self.gd_client.source = 'GoogleInc-AdminSettingsPythonSample-1' + self.gd_client.ProgrammaticLogin() + + def Run(self): + #pause 1 sec inbetween calls to prevent quota warning + print 'Google Apps Domain: ', self.gd_client.domain + time.sleep(1) + print 'Default Language: ', self.gd_client.GetDefaultLanguage() + time.sleep(1) + print 'Organization Name: ', self.gd_client.GetOrganizationName() + time.sleep(1) + print 'Maximum Users: ', self.gd_client.GetMaximumNumberOfUsers() + time.sleep(1) + print 'Current Users: ', self.gd_client.GetCurrentNumberOfUsers() + time.sleep(1) + print 'Domain is Verified: ',self.gd_client.IsDomainVerified() + time.sleep(1) + print 'Support PIN: ',self.gd_client.GetSupportPIN() + time.sleep(1) + print 'Domain Edition: ', self.gd_client.GetEdition() + time.sleep(1) + print 'Customer PIN: ', self.gd_client.GetCustomerPIN() + time.sleep(1) + print 'Domain Creation Time: ', self.gd_client.GetCreationTime() + time.sleep(1) + print 'Domain Country Code: ', self.gd_client.GetCountryCode() + time.sleep(1) + print 'Admin Secondary Email: ', self.gd_client.GetAdminSecondaryEmail() + time.sleep(1) + cnameverificationstatus = self.gd_client.GetCNAMEVerificationStatus() + print 'CNAME Verification Record Name: ', cnameverificationstatus['recordName'] + print 'CNAME Verification Verified: ', cnameverificationstatus['verified'] + print 'CNAME Verification Method: ', cnameverificationstatus['verificationMethod'] + time.sleep(1) + mxverificationstatus = self.gd_client.GetMXVerificationStatus() + print 'MX Verification Verified: ', mxverificationstatus['verified'] + print 'MX Verification Method: ', mxverificationstatus['verificationMethod'] + time.sleep(1) + ssosettings = self.gd_client.GetSSOSettings() + print 'SSO Enabled: ', ssosettings['enableSSO'] + print 'SSO Signon Page: ', ssosettings['samlSignonUri'] + print 'SSO Logout Page: ', ssosettings['samlLogoutUri'] + print 'SSO Password Page: ', ssosettings['changePasswordUri'] + print 'SSO Whitelist IPs: ', ssosettings['ssoWhitelist'] + print 'SSO Use Domain Specific Issuer: ', ssosettings['useDomainSpecificIssuer'] + time.sleep(1) + ssokey = self.gd_client.GetSSOKey() + print 'SSO Key Modulus: ', ssokey['modulus'] + print 'SSO Key Exponent: ', ssokey['exponent'] + print 'SSO Key Algorithm: ', ssokey['algorithm'] + print 'SSO Key Format: ', ssokey['format'] + print 'User Migration Enabled: ', self.gd_client.IsUserMigrationEnabled() + time.sleep(1) + outboundgatewaysettings = self.gd_client.GetOutboundGatewaySettings() + print 'Outbound Gateway Smart Host: ', outboundgatewaysettings['smartHost'] + print 'Outbound Gateway Mode: ', outboundgatewaysettings['smtpMode'] + +def main(): + """Demonstrates use of the Admin Settings API using the AdminSettingsSample object.""" + # Parse command line options + try: + opts, args = getopt.getopt(sys.argv[1:], '', ['user=', 'pw=', 'domain=']) + except getopt.error, msg: + print 'python adminsettings_example.py --user [username] --pw [password]' + print ' --domain [domain]' + sys.exit(2) + + user = '' + pw = '' + domain = '' + + # Process options + for option, arg in opts: + if option == '--user': + user = arg + elif option == '--pw': + pw = arg + elif option == '--domain': + domain = arg + + while not domain: + print 'NOTE: Please run these tests only with a test account.' + domain = raw_input('Please enter your apps domain: ') + while not user: + user = raw_input('Please enter a administrator account: ')+'@'+domain + while not pw: + pw = getpass.getpass('Please enter password: ') + if not pw: + print 'Password cannot be blank.' + + try: + sample = AdminSettingsSample(user, pw, domain) + except gdata.service.BadAuthentication: + print 'Invalid user credentials given.' + return + + sample.Run() + +if __name__ == '__main__': + main() diff -Nru python-gdata-1.2.4/samples/base/baseAttributesQueryExample.py python-gdata-2.0.8/samples/base/baseAttributesQueryExample.py --- python-gdata-1.2.4/samples/base/baseAttributesQueryExample.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/samples/base/baseAttributesQueryExample.py 2009-03-10 22:31:44.000000000 +0000 @@ -0,0 +1,47 @@ +#!/usr/bin/python +# +# Copyright (C) 2007 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +import gdata.base.service +import gdata.service +try: + from xml.etree import ElementTree +except ImportError: + from elementtree import ElementTree +import atom +import gdata.base + +# Demonstrates queries to the attributes feed + +gb_client = gdata.base.service.GBaseService() +q = gdata.base.service.BaseQuery() +q.feed = '/base/feeds/attributes' +q.bq = raw_input('Please item type to query for (ex: housing): ') + +print q.ToUri() +feed = gb_client.QueryAttributesFeed(q.ToUri()) + +print feed.title.text + +for entry in feed.entry: + for attr in entry.attribute: + display_str = 'attribute name:%s, type:%s' % (attr.name, attr.type) + values = '' + for value in attr.value: + values += '(' + value.text + ',' + value.count + ')' + if values != '': + display_str += ', values: %s' % values + print ' ' + display_str diff -Nru python-gdata-1.2.4/samples/base/baseItemTypesQueryExample.py python-gdata-2.0.8/samples/base/baseItemTypesQueryExample.py --- python-gdata-1.2.4/samples/base/baseItemTypesQueryExample.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/samples/base/baseItemTypesQueryExample.py 2009-03-10 22:31:44.000000000 +0000 @@ -0,0 +1,42 @@ +#!/usr/bin/python +# +# Copyright (C) 2007 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +import gdata.base.service +import gdata.service +try: + from xml.etree import ElementTree +except ImportError: + from elementtree import ElementTree +import atom +import gdata.base + +# Demonstrates queries to the itemtypes feed for specified locale. + +gb_client = gdata.base.service.GBaseService() +locale = raw_input('Please enter locale (ex: en_US): ') +q = gdata.base.service.BaseQuery() +q.feed = '/base/feeds/itemtypes/%s' % locale + +print q.ToUri() +feed = gb_client.QueryItemTypesFeed(q.ToUri()) + +print feed.title.text + +for entry in feed.entry: + print '\t' + entry.title.text + for attr in entry.attributes.attribute: + print '\t\tAttr name:%s, type:%s' % (attr.name, attr.type) diff -Nru python-gdata-1.2.4/samples/blogger/app/app.yaml python-gdata-2.0.8/samples/blogger/app/app.yaml --- python-gdata-1.2.4/samples/blogger/app/app.yaml 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/samples/blogger/app/app.yaml 2009-06-30 00:36:02.000000000 +0100 @@ -0,0 +1,14 @@ +application: your-app-id-here +version: 1 +runtime: python +api_version: 1 + +handlers: +- url: / + static_files: welcome.html + upload: welcome.html + + +- url: /.* + login: required + script: blogapp.py diff -Nru python-gdata-1.2.4/samples/blogger/app/auth_required.html python-gdata-2.0.8/samples/blogger/app/auth_required.html --- python-gdata-1.2.4/samples/blogger/app/auth_required.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/samples/blogger/app/auth_required.html 2009-06-26 00:51:19.000000000 +0100 @@ -0,0 +1,10 @@ + + + + Authorization Required + + +

Before this application can see your available blogs or post on a blog, you must allow this app to access your Blogger data. Please click here to authorize this application.

+

If you don't want to grant permission to this app, please sign out.

+ + diff -Nru python-gdata-1.2.4/samples/blogger/app/blogapp.py python-gdata-2.0.8/samples/blogger/app/blogapp.py --- python-gdata-1.2.4/samples/blogger/app/blogapp.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/samples/blogger/app/blogapp.py 2009-07-11 02:00:54.000000000 +0100 @@ -0,0 +1,137 @@ +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +__author__ = 'j.s@google.com (Jeff Scudder)' + + +import os +import wsgiref.handlers +from google.appengine.api import users +from google.appengine.ext import webapp +from google.appengine.ext.webapp import template +from google.appengine.ext.webapp.util import run_wsgi_app +import gdata.gauth +import gdata.data +import gdata.blogger.client + + +def get_auth_token(request): + """Retrieves the AuthSub token for the current user. + + Will first check the request URL for a token request parameter + indicating that the user has been sent to this page after + authorizing the app. Auto-upgrades to a session token. + + If the token was not in the URL, which will usually be the case, + looks for the token in the datastore. + + Returns: + The token object if one was found for the current user. If there + is no current user, it returns False, if there is a current user + but no AuthSub token, it returns None. + """ + current_user = users.get_current_user() + if current_user is None or current_user.user_id() is None: + return False + # Look for the token string in the current page's URL. + token_string, token_scopes = gdata.gauth.auth_sub_string_from_url( + request.url) + if token_string is None: + # Try to find a previously obtained session token. + return gdata.gauth.ae_load('blogger' + current_user.user_id()) + # If there was a new token in the current page's URL, convert it to + # to a long lived session token and persist it to be used in future + # requests. + single_use_token = gdata.gauth.AuthSubToken(token_string, token_scopes) + # Create a client to make the HTTP request to upgrade the single use token + # to a long lived session token. + client = gdata.client.GDClient() + session_token = client.upgrade_token(single_use_token) + gdata.gauth.ae_save(session_token, 'blogger' + current_user.user_id()) + return session_token + + +class ListBlogs(webapp.RequestHandler): + """Requests the list of the user's blogs from the Blogger API.""" + + def get(self): + template_values = { 'sign_out': users.create_logout_url('/') } + # See if we have an auth token for this user. + token = get_auth_token(self.request) + if token is None: + template_values['auth_url'] = gdata.gauth.generate_auth_sub_url( + self.request.url, ['http://www.blogger.com/feeds/']) + path = os.path.join(os.path.dirname(__file__), 'auth_required.html') + self.response.out.write(template.render(path, template_values)) + return + + elif token == False: + self.response.out.write( + 'You must sign in first' + '' % users.create_login_url('/blogs')) + return + + client = gdata.blogger.client.BloggerClient() + feed = client.get_blogs(auth_token=token) + template_values['feed'] = feed + path = os.path.join(os.path.dirname(__file__), 'list_blogs.html') + self.response.out.write(template.render(path, template_values)) + + +class WritePost(webapp.RequestHandler): + + def get(self): + template_values = { 'sign_out': users.create_logout_url('/'), + 'blog_id': self.request.get('id') } + # We should have an auth token for this user. + token = get_auth_token(self.request) + if not token: + self.redirect('/blogs') + return + path = os.path.join(os.path.dirname(__file__), 'post_editor.html') + self.response.out.write(template.render(path, template_values)) + + def post(self): + token = get_auth_token(self.request) + if not token: + self.redirect('/blogs') + return + draft = False + if self.request.get('draft') == 'true': + draft = True + client = gdata.blogger.client.BloggerClient() + new_post = client.add_post( + self.request.get('blog_id'), self.request.get('title'), + self.request.get('body'), draft=draft, auth_token=token) + if not draft: + self.response.out.write( + 'See your new post here.' % ( + new_post.find_alternate_link())) + else: + self.response.out.write( + 'This was a draft blog post, visit ' + 'blogger.com to publish') + + +def main(): + application = webapp.WSGIApplication([('/blogs', ListBlogs), + ('/write_post', WritePost)], + debug=True) + wsgiref.handlers.CGIHandler().run(application) + + +if __name__ == '__main__': + main() + diff -Nru python-gdata-1.2.4/samples/blogger/app/list_blogs.html python-gdata-2.0.8/samples/blogger/app/list_blogs.html --- python-gdata-1.2.4/samples/blogger/app/list_blogs.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/samples/blogger/app/list_blogs.html 2009-06-29 23:20:30.000000000 +0100 @@ -0,0 +1,15 @@ + + + + List of Your Blogs + + +

Here are the blogs you can post on. Click a link to bring up a blog post form to add a new post to the blog.

+ +

Done? Sign Out

+ + diff -Nru python-gdata-1.2.4/samples/blogger/app/post_editor.html python-gdata-2.0.8/samples/blogger/app/post_editor.html --- python-gdata-1.2.4/samples/blogger/app/post_editor.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/samples/blogger/app/post_editor.html 2009-06-29 23:50:07.000000000 +0100 @@ -0,0 +1,17 @@ + + + + List of Your Blogs + + +

Write a new post for your blog

+
+ +
+
+ Draft:
+
+
+

Done? Sign Out

+ + diff -Nru python-gdata-1.2.4/samples/blogger/app/welcome.html python-gdata-2.0.8/samples/blogger/app/welcome.html --- python-gdata-1.2.4/samples/blogger/app/welcome.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/samples/blogger/app/welcome.html 2009-06-30 00:34:31.000000000 +0100 @@ -0,0 +1,12 @@ + + + + Simple Blogger API sample. + + +

This simple example illustrates how to build an App Engine app which uses + the Blogger API to post on a user's blog.

+ +

To begin, view the list of your available blogs.

+ + diff -Nru python-gdata-1.2.4/samples/blogger/BloggerExample.py python-gdata-2.0.8/samples/blogger/BloggerExample.py --- python-gdata-1.2.4/samples/blogger/BloggerExample.py 2008-02-15 20:11:08.000000000 +0000 +++ python-gdata-2.0.8/samples/blogger/BloggerExample.py 2009-11-21 01:37:43.000000000 +0000 @@ -1,6 +1,6 @@ #!/usr/bin/python # -# Copyright (C) 2007 Google Inc. +# Copyright (C) 2009 Google Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -32,42 +32,37 @@ __author__ = 'lkeppler@google.com (Luke Keppler)' -from gdata import service -import gdata -import atom -import getopt -import sys +import gdata.blogger.client +import gdata.client +import gdata.sample_util +import gdata.data +import atom.data class BloggerExample: - def __init__(self, email, password): + def __init__(self): """Creates a GDataService and provides ClientLogin auth details to it. The email and password are required arguments for ClientLogin. The 'source' defined below is an arbitrary string, but should be used to reference your name or the name of your organization, the app name and version, with '-' between each of the three values.""" - # Authenticate using ClientLogin. - self.service = service.GDataService(email, password) - self.service.source = 'Blogger_Python_Sample-1.0' - self.service.service = 'blogger' - self.service.server = 'www.blogger.com' - self.service.ProgrammaticLogin() + # Authenticate using ClientLogin, AuthSub, or OAuth. + self.client = gdata.blogger.client.BloggerClient() + gdata.sample_util.authorize_client( + self.client, service='blogger', source='Blogger_Python_Sample-2.0', + scopes=['http://www.blogger.com/feeds/']) # Get the blog ID for the first blog. - feed = self.service.Get('/feeds/default/blogs') - self_link = feed.entry[0].GetSelfLink() - if self_link: - self.blog_id = self_link.href.split('/')[-1] + feed = self.client.get_blogs() + self.blog_id = feed.entry[0].get_blog_id() def PrintUserBlogTitles(self): """Prints a list of all the user's blogs.""" # Request the feed. - query = service.Query() - query.feed = '/feeds/default/blogs' - feed = self.service.Get(query.ToUri()) + feed = self.client.get_blogs() # Print the results. print feed.title.text @@ -75,7 +70,7 @@ print "\t" + entry.title.text print - def CreatePost(self, title, content, author_name, is_draft): + def CreatePost(self, title, content, is_draft): """This method creates a new post on a blog. The new post can be stored as a draft or published based on the value of the is_draft parameter. The method creates an GDataEntry for the new post using the title, content, @@ -84,20 +79,7 @@ GDataService to insert the new post. If the insertion is successful, the added post (GDataEntry) will be returned. """ - - # Create the entry to insert. - entry = gdata.GDataEntry() - entry.author.append(atom.Author(atom.Name(text=author_name))) - entry.title = atom.Title(title_type='xhtml', text=title) - entry.content = atom.Content(content_type='html', text=content) - if is_draft: - control = atom.Control() - control.draft = atom.Draft(text='yes') - entry.control = control - - # Ask the service to insert the new entry. - return self.service.Post(entry, - '/feeds/' + self.blog_id + '/posts/default') + return self.client.add_post(self.blog_id, title, content, draft=is_draft) def PrintAllPosts(self): """This method displays the titles of all the posts in a blog. First it @@ -105,7 +87,7 @@ """ # Request the feed. - feed = self.service.GetFeed('/feeds/' + self.blog_id + '/posts/default') + feed = self.client.get_posts(self.blog_id) # Print the results. print feed.title.text @@ -113,7 +95,7 @@ if not entry.title.text: print "\tNo Title" else: - print "\t" + entry.title.text + print "\t" + entry.title.text.encode('utf-8') print def PrintPostsInDateRange(self, start_time, end_time): @@ -131,12 +113,12 @@ """ # Create query and submit a request. - query = service.Query() - query.feed = '/feeds/' + self.blog_id + '/posts/default' - query.updated_min = start_time - query.updated_max = end_time - query.orderby = 'updated' - feed = self.service.Get(query.ToUri()) + query = gdata.blogger.client.Query(updated_min=start_time, + updated_max=end_time, + order_by='updated') + print query.updated_min + print query.order_by + feed = self.client.get_posts(self.blog_id, query=query) # Print the results. print feed.title.text + " posts between " + start_time + " and " + end_time @@ -162,12 +144,8 @@ """ # Set the new title in the Entry object - entry_to_update.title = atom.Title('xhtml', new_title) - - # Grab the edit URI - edit_uri = entry_to_update.GetEditLink().href - - return self.service.Put(entry_to_update, edit_uri) + entry_to_update.title = atom.data.Title(type='xhtml', text=new_title) + return self.client.update(entry_to_update) def CreateComment(self, post_id, comment_text): """This method adds a comment to the specified post. First the comment @@ -178,14 +156,7 @@ NOTE: This functionality is not officially supported yet. """ - - # Build the comment feed URI - feed_uri = '/feeds/' + self.blog_id + '/' + post_id + '/comments/default' - - # Create a new entry for the comment and submit it to the GDataService - entry = gdata.GDataEntry() - entry.content = atom.Content(content_type='xhtml', text=comment_text) - return self.service.Post(entry, feed_uri) + return self.client.add_comment(self.blog_id, post_id, comment_text) def PrintAllComments(self, post_id): """This method displays all the comments for the given post. First the @@ -194,9 +165,7 @@ of the post on which to view comments. """ - # Build comment feed URI and request comments on the specified post - feed_url = '/feeds/' + self.blog_id + '/comments/default' - feed = self.service.Get(feed_url) + feed = self.client.get_post_comments(self.blog_id, post_id) # Display the results print feed.title.text @@ -205,20 +174,18 @@ print "\t" + entry.updated.text print - def DeleteComment(self, post_id, comment_id): + def DeleteComment(self, comment_entry): """This method removes the comment specified by the given edit_link_href, the URI for editing the comment. """ - - feed_uri = '/feeds/' + self.blog_id + '/' + post_id + '/comments/default/' + comment_id - self.service.Delete(feed_uri) + self.client.delete(comment_entry) - def DeletePost(self, edit_link_href): + def DeletePost(self, post_entry): """This method removes the post specified by the given edit_link_href, the URI for editing the post. """ - self.service.Delete(edit_link_href) + self.client.delete(post_entry) def run(self): """Runs each of the example methods defined above, demonstrating how to @@ -229,15 +196,18 @@ self.PrintUserBlogTitles() # Demonstrate how to create a draft post. - draft_post = self.CreatePost("Snorkling in Aruba", - "

We had so much fun snorkling in Aruba

", - "Post author", True) - print "Successfully created draft post: \"" + draft_post.title.text + "\".\n" + draft_post = self.CreatePost('Snorkling in Aruba', + '

We had so much fun snorkling in Aruba

', + True) + print 'Successfully created draft post: "' + draft_post.title.text + '".\n' + + # Delete the draft blog post. + self.client.delete(draft_post) # Demonstrate how to publish a public post. public_post = self.CreatePost("Back from vacation", "

I didn't want to leave Aruba, but I ran out of money :(

", - "Post author", False) + False) print "Successfully created public post: \"" + public_post.title.text + "\".\n" # Demonstrate various feed queries. @@ -254,62 +224,36 @@ # Demonstrate how to retrieve the comments for a post. # Get the post ID and build the comments feed URI for the specified post - self_id = public_post.id.text - tokens = self_id.split("-") - post_id = tokens[-1] + post_id = public_post.get_post_id() print "Now posting a comment on the post titled: \"" + public_post.title.text + "\"." comment = self.CreateComment(post_id, "Did you see any sharks?") print "Successfully posted \"" + comment.content.text + "\" on the post titled: \"" + public_post.title.text + "\".\n" - comment_id = comment.GetEditLink().href.split("/")[-1] + comment_id = comment.GetCommentId() print "Now printing all comments" self.PrintAllComments(post_id) - + # Delete the comment we just posted print "Now deleting the comment we just posted" - self.DeleteComment(post_id, comment_id) + self.DeleteComment(comment) print "Successfully deleted comment." self.PrintAllComments(post_id) - # Get the post's edit URI - edit_uri = public_post.GetEditLink().href - # Demonstrate deleting posts. print "Now deleting the post titled: \"" + public_post.title.text + "\"." - self.DeletePost(edit_uri) + self.DeletePost(public_post) print "Successfully deleted post." self.PrintAllPosts() def main(): - """The main function runs the BloggerExample application with the provided - username and password values. Authentication credentials are required. - NOTE: It is recommended that you run this sample using a test account.""" - - # parse command line options - try: - opts, args = getopt.getopt(sys.argv[1:], "", ["email=", "password="]) - except getopt.error, msg: - print ('python BloggerExample.py --email [email] --password [password] ') - sys.exit(2) - - email = '' - password = '' - - # Process options - for o, a in opts: - if o == "--email": - email = a - elif o == "--password": - password = a - - if email == '' or password == '': - print ('python BloggerExample.py --email [email] --password [password]') - sys.exit(2) - - sample = BloggerExample(email, password) + """The main function runs the BloggerExample application. + + NOTE: It is recommended that you run this sample using a test account. + """ + sample = BloggerExample() sample.run() diff -Nru python-gdata-1.2.4/samples/blogger/BloggerExampleV1.py python-gdata-2.0.8/samples/blogger/BloggerExampleV1.py --- python-gdata-1.2.4/samples/blogger/BloggerExampleV1.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/samples/blogger/BloggerExampleV1.py 2009-06-20 00:02:43.000000000 +0100 @@ -0,0 +1,317 @@ +#!/usr/bin/python +# +# Copyright (C) 2007 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# This file demonstrates how to use the Google Data API's Python client library +# to interface with the Blogger service. There are examples for the following +# operations: +# +# * Retrieving the list of all the user's blogs +# * Retrieving all posts on a single blog +# * Performing a date-range query for posts on a blog +# * Creating draft posts and publishing posts +# * Updating posts +# * Retrieving comments +# * Creating comments +# * Deleting comments +# * Deleting posts + + +__author__ = 'lkeppler@google.com (Luke Keppler)' + + +from gdata import service +import gdata +import atom +import getopt +import sys + + +class BloggerExample: + + def __init__(self, email, password): + """Creates a GDataService and provides ClientLogin auth details to it. + The email and password are required arguments for ClientLogin. The + 'source' defined below is an arbitrary string, but should be used to + reference your name or the name of your organization, the app name and + version, with '-' between each of the three values.""" + + # Authenticate using ClientLogin. + self.service = service.GDataService(email, password) + self.service.source = 'Blogger_Python_Sample-1.0' + self.service.service = 'blogger' + self.service.server = 'www.blogger.com' + self.service.ProgrammaticLogin() + + # Get the blog ID for the first blog. + feed = self.service.Get('/feeds/default/blogs') + self_link = feed.entry[0].GetSelfLink() + if self_link: + self.blog_id = self_link.href.split('/')[-1] + + def PrintUserBlogTitles(self): + """Prints a list of all the user's blogs.""" + + # Request the feed. + query = service.Query() + query.feed = '/feeds/default/blogs' + feed = self.service.Get(query.ToUri()) + + # Print the results. + print feed.title.text + for entry in feed.entry: + print "\t" + entry.title.text + print + + def CreatePost(self, title, content, author_name, is_draft): + """This method creates a new post on a blog. The new post can be stored as + a draft or published based on the value of the is_draft parameter. The + method creates an GDataEntry for the new post using the title, content, + author_name and is_draft parameters. With is_draft, True saves the post as + a draft, while False publishes the post. Then it uses the given + GDataService to insert the new post. If the insertion is successful, the + added post (GDataEntry) will be returned. + """ + + # Create the entry to insert. + entry = gdata.GDataEntry() + entry.author.append(atom.Author(atom.Name(text=author_name))) + entry.title = atom.Title(title_type='xhtml', text=title) + entry.content = atom.Content(content_type='html', text=content) + if is_draft: + control = atom.Control() + control.draft = atom.Draft(text='yes') + entry.control = control + + # Ask the service to insert the new entry. + return self.service.Post(entry, + '/feeds/' + self.blog_id + '/posts/default') + + def PrintAllPosts(self): + """This method displays the titles of all the posts in a blog. First it + requests the posts feed for the blogs and then it prints the results. + """ + + # Request the feed. + feed = self.service.GetFeed('/feeds/' + self.blog_id + '/posts/default') + + # Print the results. + print feed.title.text + for entry in feed.entry: + if not entry.title.text: + print "\tNo Title" + else: + print "\t" + entry.title.text + print + + def PrintPostsInDateRange(self, start_time, end_time): + """This method displays the title and modification time for any posts that + have been created or updated in the period between the start_time and + end_time parameters. The method creates the query, submits it to the + GDataService, and then displays the results. + + Note that while the start_time is inclusive, the end_time is exclusive, so + specifying an end_time of '2007-07-01' will include those posts up until + 2007-6-30 11:59:59PM. + + The start_time specifies the beginning of the search period (inclusive), + while end_time specifies the end of the search period (exclusive). + """ + + # Create query and submit a request. + query = service.Query() + query.feed = '/feeds/' + self.blog_id + '/posts/default' + query.updated_min = start_time + query.updated_max = end_time + query.orderby = 'updated' + feed = self.service.Get(query.ToUri()) + + # Print the results. + print feed.title.text + " posts between " + start_time + " and " + end_time + print feed.title.text + for entry in feed.entry: + if not entry.title.text: + print "\tNo Title" + else: + print "\t" + entry.title.text + print + + def UpdatePostTitle(self, entry_to_update, new_title): + """This method updates the title of the given post. The GDataEntry object + is updated with the new title, then a request is sent to the GDataService. + If the insertion is successful, the updated post will be returned. + + Note that other characteristics of the post can also be modified by + updating the values of the entry object before submitting the request. + + The entry_to_update is a GDatEntry containing the post to update. + The new_title is the text to use for the post's new title. Returns: a + GDataEntry containing the newly-updated post. + """ + + # Set the new title in the Entry object + entry_to_update.title = atom.Title('xhtml', new_title) + + # Grab the edit URI + edit_uri = entry_to_update.GetEditLink().href + + return self.service.Put(entry_to_update, edit_uri) + + def CreateComment(self, post_id, comment_text): + """This method adds a comment to the specified post. First the comment + feed's URI is built using the given post ID. Then a GDataEntry is created + for the comment and submitted to the GDataService. The post_id is the ID + of the post on which to post comments. The comment_text is the text of the + comment to store. Returns: an entry containing the newly-created comment + + NOTE: This functionality is not officially supported yet. + """ + + # Build the comment feed URI + feed_uri = '/feeds/' + self.blog_id + '/' + post_id + '/comments/default' + + # Create a new entry for the comment and submit it to the GDataService + entry = gdata.GDataEntry() + entry.content = atom.Content(content_type='xhtml', text=comment_text) + return self.service.Post(entry, feed_uri) + + def PrintAllComments(self, post_id): + """This method displays all the comments for the given post. First the + comment feed's URI is built using the given post ID. Then the method + requests the comments feed and displays the results. Takes the post_id + of the post on which to view comments. + """ + + # Build comment feed URI and request comments on the specified post + feed_url = '/feeds/' + self.blog_id + '/comments/default' + feed = self.service.Get(feed_url) + + # Display the results + print feed.title.text + for entry in feed.entry: + print "\t" + entry.title.text + print "\t" + entry.updated.text + print + + def DeleteComment(self, post_id, comment_id): + """This method removes the comment specified by the given edit_link_href, the + URI for editing the comment. + """ + + feed_uri = '/feeds/' + self.blog_id + '/' + post_id + '/comments/default/' + comment_id + self.service.Delete(feed_uri) + + def DeletePost(self, edit_link_href): + """This method removes the post specified by the given edit_link_href, the + URI for editing the post. + """ + + self.service.Delete(edit_link_href) + + def run(self): + """Runs each of the example methods defined above, demonstrating how to + interface with the Blogger service. + """ + + # Demonstrate retrieving a list of the user's blogs. + self.PrintUserBlogTitles() + + # Demonstrate how to create a draft post. + draft_post = self.CreatePost("Snorkling in Aruba", + "

We had so much fun snorkling in Aruba

", + "Post author", True) + print "Successfully created draft post: \"" + draft_post.title.text + "\".\n" + + # Demonstrate how to publish a public post. + public_post = self.CreatePost("Back from vacation", + "

I didn't want to leave Aruba, but I ran out of money :(

", + "Post author", False) + print "Successfully created public post: \"" + public_post.title.text + "\".\n" + + # Demonstrate various feed queries. + print "Now listing all posts." + self.PrintAllPosts() + print "Now listing all posts between 2007-04-04 and 2007-04-23." + self.PrintPostsInDateRange("2007-04-04", "2007-04-23") + + # Demonstrate updating a post's title. + print "Now updating the title of the post we just created:" + public_post = self.UpdatePostTitle(public_post, "The party's over") + print "Successfully changed the post's title to \"" + public_post.title.text + "\".\n" + + # Demonstrate how to retrieve the comments for a post. + + # Get the post ID and build the comments feed URI for the specified post + self_id = public_post.id.text + tokens = self_id.split("-") + post_id = tokens[-1] + + print "Now posting a comment on the post titled: \"" + public_post.title.text + "\"." + comment = self.CreateComment(post_id, "Did you see any sharks?") + print "Successfully posted \"" + comment.content.text + "\" on the post titled: \"" + public_post.title.text + "\".\n" + + comment_id = comment.GetEditLink().href.split("/")[-1] + + print "Now printing all comments" + self.PrintAllComments(post_id) + + # Delete the comment we just posted + print "Now deleting the comment we just posted" + self.DeleteComment(post_id, comment_id) + print "Successfully deleted comment." + self.PrintAllComments(post_id) + + # Get the post's edit URI + edit_uri = public_post.GetEditLink().href + + # Demonstrate deleting posts. + print "Now deleting the post titled: \"" + public_post.title.text + "\"." + self.DeletePost(edit_uri) + print "Successfully deleted post." + self.PrintAllPosts() + + +def main(): + """The main function runs the BloggerExample application with the provided + username and password values. Authentication credentials are required. + NOTE: It is recommended that you run this sample using a test account.""" + + # parse command line options + try: + opts, args = getopt.getopt(sys.argv[1:], "", ["email=", "password="]) + except getopt.error, msg: + print ('python BloggerExample.py --email [email] --password [password] ') + sys.exit(2) + + email = '' + password = '' + + # Process options + for o, a in opts: + if o == "--email": + email = a + elif o == "--password": + password = a + + if email == '' or password == '': + print ('python BloggerExample.py --email [email] --password [password]') + sys.exit(2) + + sample = BloggerExample(email, password) + sample.run() + + +if __name__ == '__main__': + main() diff -Nru python-gdata-1.2.4/samples/blogger/oauth-appengine/app.yaml python-gdata-2.0.8/samples/blogger/oauth-appengine/app.yaml --- python-gdata-1.2.4/samples/blogger/oauth-appengine/app.yaml 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/samples/blogger/oauth-appengine/app.yaml 2009-10-07 01:12:13.000000000 +0100 @@ -0,0 +1,13 @@ +application: blogger-oauth-example +version: 1 +runtime: python +api_version: 1 + +handlers: +- url: /css + static_dir: css + +- url: /.* + script: main.py + login: required + diff -Nru python-gdata-1.2.4/samples/blogger/oauth-appengine/css/index.css python-gdata-2.0.8/samples/blogger/oauth-appengine/css/index.css --- python-gdata-1.2.4/samples/blogger/oauth-appengine/css/index.css 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/samples/blogger/oauth-appengine/css/index.css 2009-10-07 01:12:14.000000000 +0100 @@ -0,0 +1,65 @@ +* { + font-family: "HelveticaNeue-Light", "Helvetica Neue Light", + "Helvetica Neue", sans-serif; +} + +body { + padding-left:15px; + padding-right:15px; +} +a { + color:#6699ff; + text-decoration:none; +} +a:hover { + color:#666666; + text-decoration:underline; +} +#header { + color:#666666; + padding-bottom:10px; + margin-bottom:1em; + border-bottom:1px solid #666666; + height:25px; + text-align: center; +} +.left { + float: left; +} +.right { + float: right; +} + +div#status span.text { + background-color: #FFEEAA; + text-align: center; + padding: 5px; + font-size: 0.8em; + font-weight: bold; + -moz-border-radius: 6px; + -webkit-border-radius: 6px; + color: black; +} + +div.blog { + padding:10px 10px 10px 20px; + border-bottom:1px solid #eee; + float: left; + width: 90%; +} +div.blog:hover { + background-color:#fffccc; +} + +div.blog span.date { + font-size: 0.7em; +} + +.hidden { + display: none; +} + +.post-editor-wrapper { + text-align: right; +} + diff -Nru python-gdata-1.2.4/samples/blogger/oauth-appengine/index.html python-gdata-2.0.8/samples/blogger/oauth-appengine/index.html --- python-gdata-1.2.4/samples/blogger/oauth-appengine/index.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/samples/blogger/oauth-appengine/index.html 2009-10-07 01:12:14.000000000 +0100 @@ -0,0 +1,88 @@ + + + Blogger OAuth example + + + + + +{% if logged %} + +

+ +

Your blogs:

+{% for blog in blogs %} +
+
+ + {{ blog.title }} +
+ created: {{ blog.published }}
+ last updated: {{ blog.updated }} +
+
+ Write a post + +
+
+
+{% endfor %} + +{% else %} + +I could do automatic redirect but we all love welcome screens :).
+ +Ok, allow this app to access Blogger. + +{% endif %} + + + + diff -Nru python-gdata-1.2.4/samples/blogger/oauth-appengine/index.yaml python-gdata-2.0.8/samples/blogger/oauth-appengine/index.yaml --- python-gdata-1.2.4/samples/blogger/oauth-appengine/index.yaml 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/samples/blogger/oauth-appengine/index.yaml 2009-10-07 01:12:14.000000000 +0100 @@ -0,0 +1,11 @@ +indexes: + +# AUTOGENERATED + +# This index.yaml is automatically updated whenever the dev_appserver +# detects that a new type of query is run. If you want to manage the +# index.yaml file manually, remove the above marker line (the line +# saying "# AUTOGENERATED"). If you want to manage some indexes +# manually, move them above the marker line. The index.yaml file is +# automatically uploaded to the admin console when you next deploy +# your application using appcfg.py. diff -Nru python-gdata-1.2.4/samples/blogger/oauth-appengine/main.py python-gdata-2.0.8/samples/blogger/oauth-appengine/main.py --- python-gdata-1.2.4/samples/blogger/oauth-appengine/main.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/samples/blogger/oauth-appengine/main.py 2009-10-07 01:12:14.000000000 +0100 @@ -0,0 +1,59 @@ +__author__ = 'wiktorgworek@google.com (Wiktor Gworek)' + +import wsgiref.handlers + +import atom +import os +import cgi +import gdata.blogger.service + +from oauth import OAuthDanceHandler, OAuthHandler, requiresOAuth +from google.appengine.ext import webapp +from google.appengine.ext.webapp import template + + +class MainHandler(OAuthHandler): + """Main handler. If user is not logged in via OAuth it will display welcome + page. In other case user's blogs on Blogger will be displayed.""" + + def get(self): + try: + template_values = {'logged': self.client.has_access_token()} + + if template_values['logged']: + feed = self.client.blogger.GetBlogFeed() + blogs = [] + for entry in feed.entry: + blogs.append({ + 'id': entry.GetBlogId(), + 'title': entry.title.text, + 'link': entry.GetHtmlLink().href, + 'published': entry.published.text, + 'updated': entry.updated.text + }) + template_values['blogs'] = blogs + except gdata.service.RequestError, error: + template_values['logged'] = False + + path = os.path.join(os.path.dirname(__file__), 'index.html') + self.response.out.write(template.render(path, template_values)) + + +class NewPostHandler(OAuthHandler): + """Handles AJAX POST request to create a new post on a blog.""" + + @requiresOAuth + def post(self): + entry = atom.Entry(content=atom.Content(text=self.request.get('body'))) + self.client.blogger.AddPost(entry, blog_id=self.request.get('id')) + +def main(): + application = webapp.WSGIApplication([ + (r'/oauth/(.*)', OAuthDanceHandler), + ('/new_post', NewPostHandler), + ('/', MainHandler), + ], debug=True) + wsgiref.handlers.CGIHandler().run(application) + +if __name__ == '__main__': + main() diff -Nru python-gdata-1.2.4/samples/blogger/oauth-appengine/oauth.py python-gdata-2.0.8/samples/blogger/oauth-appengine/oauth.py --- python-gdata-1.2.4/samples/blogger/oauth-appengine/oauth.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/samples/blogger/oauth-appengine/oauth.py 2009-10-07 01:12:14.000000000 +0100 @@ -0,0 +1,174 @@ +"""Provides OAuth authorization. Main components are: + * OAuthClient - provides logic for 3-legged OAuth protocol, + * OAuthDanceHandler - wrapper for OAuthClient for handling OAuth requests, + * OAuthHandler - from this handler should inherit all other handlers that want + to be authenticated and have access to BloggerService. Be sure that you + added @requiredOAuth on top of your request method (i.e. post, get). + +Request tokens are stored in OAuthRequestToken (explicite) and access tokens are +stored in TokenCollection (implicit) provided by gdata.alt.appengine. + +Heavily used resources and ideas from: + * http://github.com/tav/tweetapp, + * Examples of OAuth from GData Python Client written by Eric Bidelman. +""" + +__author__ = ('wiktorgworek (Wiktor Gworek), ' + 'e.bidelman (Eric Bidelman)') + +import os +import gdata.auth +import gdata.client +import gdata.alt.appengine +import gdata.blogger.service + +from google.appengine.api import users +from google.appengine.ext import db +from google.appengine.ext import webapp +from google.appengine.ext.webapp import template + +SETTINGS = { + 'APP_NAME': 'YOUR_APPLICATION_NAME', + 'CONSUMER_KEY': 'YOUR_CONSUMER_KEY', + 'CONSUMER_SECRET': 'YOUR_CONSUMER_SECRET', + 'SIG_METHOD': gdata.auth.OAuthSignatureMethod.HMAC_SHA1, + 'SCOPES': gdata.service.CLIENT_LOGIN_SCOPES['blogger'] +} + +# ------------------------------------------------------------------------------ +# Data store models. +# ------------------------------------------------------------------------------ + +class OAuthRequestToken(db.Model): + """Stores OAuth request token.""" + + token_key = db.StringProperty(required=True) + token_secret = db.StringProperty(required=True) + created = db.DateTimeProperty(auto_now_add=True) + +# ------------------------------------------------------------------------------ +# OAuth client. +# ------------------------------------------------------------------------------ + +class OAuthClient(object): + + __public__ = ('request_token', 'callback', 'revoke_token') + + def __init__(self, handler): + self.handler = handler + self.blogger = gdata.blogger.service.BloggerService( + source=SETTINGS['APP_NAME']) + self.blogger.SetOAuthInputParameters(SETTINGS['SIG_METHOD'], + SETTINGS['CONSUMER_KEY'], consumer_secret=SETTINGS['CONSUMER_SECRET']) + gdata.alt.appengine.run_on_appengine(self.blogger) + + def has_access_token(self): + """Checks if there is an access token in token store.""" + access_token = self.blogger.token_store.find_token( + '%20'.join(SETTINGS['SCOPES'])) + return isinstance(access_token, gdata.auth.OAuthToken) + + def request_token(self): + """Fetches a request token and redirects the user to the approval page.""" + + if users.get_current_user(): + # 1.) REQUEST TOKEN STEP. Provide the data scope(s) and the page we'll + # be redirected back to after the user grants access on the approval page. + req_token = self.blogger.FetchOAuthRequestToken( + scopes=SETTINGS['SCOPES'], + oauth_callback=self.handler.request.uri.replace( + 'request_token', 'callback')) + + # When using HMAC, persist the token secret in order to re-create an + # OAuthToken object coming back from the approval page. + db_token = OAuthRequestToken(token_key = req_token.key, + token_secret=req_token.secret) + db_token.put() + + # 2.) APPROVAL STEP. Redirect to user to Google's OAuth approval page. + self.handler.redirect(self.blogger.GenerateOAuthAuthorizationURL()) + + def callback(self): + """Invoked after we're redirected back from the approval page.""" + + oauth_token = gdata.auth.OAuthTokenFromUrl(self.handler.request.uri) + if oauth_token: + # Find request token saved by put() method. + db_token = OAuthRequestToken.all().filter( + 'token_key =', oauth_token.key).fetch(1)[0] + oauth_token.secret = db_token.token_secret + oauth_token.oauth_input_params = self.blogger.GetOAuthInputParameters() + self.blogger.SetOAuthToken(oauth_token) + + # 3.) Exchange the authorized request token for an access token + oauth_verifier = self.handler.request.get( + 'oauth_verifier', default_value='') + access_token = self.blogger.UpgradeToOAuthAccessToken( + oauth_verifier=oauth_verifier) + + # Remember the access token in the current user's token store + if access_token and users.get_current_user(): + self.blogger.token_store.add_token(access_token) + elif access_token: + self.blogger.current_token = access_token + self.blogger.SetOAuthToken(access_token) + + self.handler.redirect('/') + + def revoke_token(self): + """Revokes the current user's OAuth access token.""" + + try: + self.blogger.RevokeOAuthToken() + except gdata.service.RevokingOAuthTokenFailed: + pass + except gdata.service.NonOAuthToken: + pass + + self.blogger.token_store.remove_all_tokens() + self.handler.redirect('/') + +# ------------------------------------------------------------------------------ +# Request handlers. +# ------------------------------------------------------------------------------ + +class OAuthDanceHandler(webapp.RequestHandler): + """Handler for the 3 legged OAuth dance. + + This handler is responsible for fetching an initial OAuth request token, + redirecting the user to the approval page. When the user grants access, they + will be redirected back to this GET handler and their authorized request token + will be exchanged for a long-lived access token.""" + + def __init__(self): + super(OAuthDanceHandler, self).__init__() + self.client = OAuthClient(self) + + def get(self, action=''): + if action in self.client.__public__: + self.response.out.write(getattr(self.client, action)()) + else: + self.response.out.write(self.client.request_token()) + +class OAuthHandler(webapp.RequestHandler): + """All handlers requiring OAuth should inherit from this class.""" + + def __init__(self): + super(OAuthHandler, self).__init__() + self.client = OAuthClient(self) + +def requiresOAuth(fun): + """Decorator for request handlers to gain authentication via OAuth. + Must be used in a handler that inherits from OAuthHandler.""" + def decorate(self, *args, **kwargs): + if self.client.has_access_token(): + try: + fun(self, *args, **kwargs) + except gdata.service.RequestError, error: + if error.code in [401, 403]: + self.redirect('/oauth/request_token') + else: + raise + else: + self.redirect('/oauth/request_token') + return decorate diff -Nru python-gdata-1.2.4/samples/calendar/calendarExample.py python-gdata-2.0.8/samples/calendar/calendarExample.py --- python-gdata-1.2.4/samples/calendar/calendarExample.py 2007-08-28 17:43:55.000000000 +0100 +++ python-gdata-2.0.8/samples/calendar/calendarExample.py 2009-10-16 06:33:48.000000000 +0100 @@ -1,6 +1,6 @@ #!/usr/bin/python # -# Copyright (C) 2007 Google Inc. +# Copyright (C) 2009 Google Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -96,7 +96,8 @@ for p, a_participant in zip(xrange(len(an_event.who)), an_event.who): print '\t\t%s. %s' % (p, a_participant.email,) print '\t\t\t%s' % (a_participant.name,) - print '\t\t\t%s' % (a_participant.attendee_status.value,) + if a_participant.attendee_status: + print '\t\t\t%s' % (a_participant.attendee_status.value,) def _FullTextQuery(self, text_query='Tennis'): """Retrieves events from the calendar which match the specified full-text @@ -188,7 +189,7 @@ print '\tUnexpected Error: %s' % msg[0]['body'] def _InsertSubscription(self, - id='c4o4i7m2lbamc4k26sc2vokh5g%40group.calendar.google.com'): + id='python.gcal.test%40gmail.com'): """Subscribes to the calendar with the specified ID.""" print 'Subscribing to the calendar with ID: %s' % id calendar = gdata.calendar.CalendarListEntry() @@ -197,7 +198,7 @@ return returned_calendar def _UpdateCalendarSubscription(self, - id='c4o4i7m2lbamc4k26sc2vokh5g%40group.calendar.google.com', + id='python.gcal.test%40gmail.com', color=None, hidden=None, selected=None): """Updates the subscription to the calendar with the specified ID.""" print 'Updating the calendar subscription with ID: %s' % id @@ -223,7 +224,7 @@ return updated_calendar def _DeleteCalendarSubscription(self, - id='c4o4i7m2lbamc4k26sc2vokh5g%40group.calendar.google.com'): + id='python.gcal.test%40gmail.com'): """Deletes the subscription to the calendar with the specified ID.""" print 'Deleting the calendar subscription with ID: %s' % id calendar_url = ( diff -Nru python-gdata-1.2.4/samples/codesearch/CodesearchExample.py python-gdata-2.0.8/samples/codesearch/CodesearchExample.py --- python-gdata-1.2.4/samples/codesearch/CodesearchExample.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/samples/codesearch/CodesearchExample.py 2009-03-10 22:31:43.000000000 +0000 @@ -0,0 +1,78 @@ +#!/usr/bin/python +# +# Copyright (C) 2007 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# This file demonstrates how to use the Google Data API's Python client library +# to interface with the Codesearch service. + + +__author__ = 'vbarathan@gmail.com (Prakash Barathan)' + + +from gdata import service +import gdata.codesearch.service +import gdata +import atom +import getopt +import sys + + +class CodesearchExample: + + def __init__(self): + """Creates a GData service instance to talk to Codesearch service.""" + self.service = gdata.codesearch.service.CodesearchService( + source='Codesearch_Python_Sample-1.0') + + def PrintCodeSnippets(self, query): + """Prints the codesearch results for given query.""" + feed = self.service.GetSnippetsFeed(query) + print feed.title.text + " Results for '" + query + "'" + print '============================================' + for entry in feed.entry: + print "" + entry.title.text + for match in entry.match: + print "\tline#" + match.line_number + ":" + match.text.replace('\n', '') + print + + +def main(): + """The main function runs the CodesearchExample application with user + specified query.""" + + # parse command line options + try: + opts, args = getopt.getopt(sys.argv[1:], "", ["query="]) + except getopt.error, msg: + print ('python CodesearchExample.py --query [query_text]') + sys.exit(2) + + query = '' + + # Process options + for o, a in opts: + if o == "--query": + query = a + + if query == '': + print ('python CodesearchExample.py --query [query]') + sys.exit(2) + + sample = CodesearchExample() + sample.PrintCodeSnippets(query) + + +if __name__ == '__main__': + main() diff -Nru python-gdata-1.2.4/samples/contacts/profiles_example.py python-gdata-2.0.8/samples/contacts/profiles_example.py --- python-gdata-1.2.4/samples/contacts/profiles_example.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/samples/contacts/profiles_example.py 2009-09-19 01:26:54.000000000 +0100 @@ -0,0 +1,262 @@ +#!/usr/bin/python2.4 +# +# Copyright 2009 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Contains a Sample for Google Profiles. + + ProfilesSample: demonstrates operations with the Profiles feed. +""" + +__author__ = 'jtoledo (Julian Toledo)' + + +import getopt +import getpass +import sys + +import gdata.contacts +import gdata.contacts.service + + +class ProfilesSample(object): + """ProfilesSample object demonstrates operations with the Profiles feed.""" + + def __init__(self, email, password, domain): + """Constructor for the ProfilesSample object. + + Takes an email and password corresponding to a gmail account to + demonstrate the functionality of the Profiles feed. + + Args: + email: [string] The e-mail address of the account to use for the sample. + password: [string] The password corresponding to the account specified by + the email parameter. + domain: [string] The domain for the Profiles feed + """ + self.gd_client = gdata.contacts.service.ContactsService( + contact_list=domain) + self.gd_client.email = email + self.gd_client.password = password + self.gd_client.source = 'GoogleInc-ProfilesPythonSample-1' + self.gd_client.ProgrammaticLogin() + + def PrintFeed(self, feed, ctr=0): + """Prints out the contents of a feed to the console. + + Args: + feed: A gdata.profiles.ProfilesFeed instance. + ctr: [int] The number of entries in this feed previously printed. This + allows continuous entry numbers when paging through a feed. + + Returns: + The number of entries printed, including those previously printed as + specified in ctr. This is for passing as an ar1gument to ctr on + successive calls to this method. + """ + if not feed.entry: + print '\nNo entries in feed.\n' + return 0 + for entry in feed.entry: + self.PrintEntry(entry) + return len(feed.entry) + ctr + + def PrintEntry(self, entry): + """Prints out the contents of a single Entry to the console. + + Args: + entry: A gdata.contacts.ProfilesEntry + """ + print '\n%s' % (entry.title.text) + for email in entry.email: + if email.primary == 'true': + print 'Email: %s (primary)' % (email.address) + else: + print 'Email: %s' % (email.address) + if entry.nickname: + print 'Nickname: %s' % (entry.nickname.text) + if entry.occupation: + print 'Occupation: %s' % (entry.occupation.text) + if entry.gender: + print 'Gender: %s' % (entry.gender.value) + if entry.birthday: + print 'Birthday: %s' % (entry.birthday.when) + for relation in entry.relation: + print 'Relation: %s %s' % (relation.rel, relation.text) + for user_defined_field in entry.user_defined_field: + print 'UserDefinedField: %s %s' % (user_defined_field.key, + user_defined_field.value) + for website in entry.website: + print 'Website: %s %s' % (website.href, website.rel) + for phone_number in entry.phone_number: + print 'Phone Number: %s' % phone_number.text + for organization in entry.organization: + print 'Organization:' + if organization.org_name: + print ' Name: %s' % (organization.org_name.text) + if organization.org_title: + print ' Title: %s' % (organization.org_title.text) + if organization.org_department: + print ' Department: %s' % (organization.org_department.text) + if organization.org_job_description: + print ' Job Desc: %s' % (organization.org_job_description.text) + + def PrintPaginatedFeed(self, feed, print_method): + """Print all pages of a paginated feed. + + This will iterate through a paginated feed, requesting each page and + printing the entries contained therein. + + Args: + feed: A gdata.contacts.ProfilesFeed instance. + print_method: The method which will be used to print each page of the + """ + ctr = 0 + while feed: + # Print contents of current feed + ctr = print_method(feed=feed, ctr=ctr) + # Prepare for next feed iteration + next = feed.GetNextLink() + feed = None + if next: + if self.PromptOperationShouldContinue(): + # Another feed is available, and the user has given us permission + # to fetch it + feed = self.gd_client.GetProfilesFeed(next.href) + else: + # User has asked us to terminate + feed = None + + def PromptOperationShouldContinue(self): + """Display a "Continue" prompt. + + This give is used to give users a chance to break out of a loop, just in + case they have too many profiles/groups. + + Returns: + A boolean value, True if the current operation should continue, False if + the current operation should terminate. + """ + while True: + key_input = raw_input('Continue [Y/n]? ') + if key_input is 'N' or key_input is 'n': + return False + elif key_input is 'Y' or key_input is 'y' or key_input is '': + return True + + def ListAllProfiles(self): + """Retrieves a list of profiles and displays name and primary email.""" + feed = self.gd_client.GetProfilesFeed() + self.PrintPaginatedFeed(feed, self.PrintFeed) + + def SelectProfile(self): + username = raw_input('Please enter your username for the profile: ') + entry_uri = self.gd_client.GetFeedUri('profiles')+'/'+username + try: + entry = self.gd_client.GetProfile(entry_uri) + self.PrintEntry(entry) + except gdata.service.RequestError: + print 'Invalid username for the profile.' + + def PrintMenu(self): + """Displays a menu of options for the user to choose from.""" + print ('\nProfiles Sample\n' + '1) List all of your Profiles.\n' + '2) Get a single Profile.\n' + '3) Exit.\n') + + def GetMenuChoice(self, maximum): + """Retrieves the menu selection from the user. + + Args: + maximum: [int] The maximum number of allowed choices (inclusive) + + Returns: + The integer of the menu item chosen by the user. + """ + while True: + key_input = raw_input('> ') + + try: + num = int(key_input) + except ValueError: + print 'Invalid choice. Please choose a value between 1 and', maximum + continue + + if num > maximum or num < 1: + print 'Invalid choice. Please choose a value between 1 and', maximum + else: + return num + + def Run(self): + """Prompts the user to choose funtionality to be demonstrated.""" + try: + while True: + self.PrintMenu() + choice = self.GetMenuChoice(3) + if choice == 1: + self.ListAllProfiles() + elif choice == 2: + self.SelectProfile() + elif choice == 3: + return + + except KeyboardInterrupt: + print '\nGoodbye.' + return + + +def main(): + """Demonstrates use of the Profiles using the ProfilesSample object.""" + # Parse command line options + try: + opts, args = getopt.getopt(sys.argv[1:], '', ['user=', 'pw=', 'domain=']) + except getopt.error, msg: + print 'python profiles_example.py --user [username] --pw [password]' + print ' --domain [domain]' + sys.exit(2) + + user = '' + pw = '' + domain = '' + + # Process options + for option, arg in opts: + if option == '--user': + user = arg + elif option == '--pw': + pw = arg + elif option == '--domain': + domain = arg + + while not user: + print 'NOTE: Please run these tests only with a test account.' + user = raw_input('Please enter your email: ') + while not pw: + pw = getpass.getpass('Please enter password: ') + if not pw: + print 'Password cannot be blank.' + while not domain: + domain = raw_input('Please enter your Apps domain: ') + + try: + sample = ProfilesSample(user, pw, domain) + except gdata.service.BadAuthentication: + print 'Invalid user credentials given.' + return + + sample.Run() + +if __name__ == '__main__': + main() diff -Nru python-gdata-1.2.4/samples/docs/docs_example.py python-gdata-2.0.8/samples/docs/docs_example.py --- python-gdata-1.2.4/samples/docs/docs_example.py 2008-03-20 18:32:52.000000000 +0000 +++ python-gdata-2.0.8/samples/docs/docs_example.py 2009-07-21 23:57:54.000000000 +0100 @@ -1,6 +1,6 @@ #!/usr/bin/python # -# Copyright (C) 2007 Google Inc. +# Copyright (C) 2007, 2009 Google Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -15,7 +15,8 @@ # limitations under the License. -__author__ = 'api.jfisher (Jeff Fisher)' +__author__ = ('api.jfisher (Jeff Fisher), ' + 'e.bidelman (Eric Bidelman)') import sys @@ -24,6 +25,14 @@ import getopt import getpass import gdata.docs.service +import gdata.spreadsheet.service + + +def truncate(content, length=15, suffix='...'): + if len(content) <= length: + return content + else: + return content[:length] + suffix class DocsSample(object): @@ -31,43 +40,48 @@ def __init__(self, email, password): """Constructor for the DocsSample object. - + Takes an email and password corresponding to a gmail account to demonstrate the functionality of the Document List feed. - + Args: email: [string] The e-mail address of the account to use for the sample. password: [string] The password corresponding to the account specified by the email parameter. - + Returns: A DocsSample object used to run the sample demonstrating the functionality of the Document List feed. """ + source = 'Document List Python Sample' self.gd_client = gdata.docs.service.DocsService() - self.gd_client.email = email - self.gd_client.password = password - self.gd_client.source = 'Document List Python Sample' - self.gd_client.ProgrammaticLogin() + self.gd_client.ClientLogin(email, password, source=source) + + # Setup a spreadsheets service for downloading spreadsheets + self.gs_client = gdata.spreadsheet.service.SpreadsheetsService() + self.gs_client.ClientLogin(email, password, source=source) def _PrintFeed(self, feed): """Prints out the contents of a feed to the console. - + Args: feed: A gdata.docs.DocumentListFeed instance. """ print '\n' if not feed.entry: print 'No entries in feed.\n' - for i, entry in enumerate(feed.entry): - print '%s %s\n' % (i+1, entry.title.text.encode('UTF-8')) + print '%-18s %-12s %s' % ('TITLE', 'TYPE', 'RESOURCE ID') + for entry in feed.entry: + print '%-18s %-12s %s' % (truncate(entry.title.text.encode('UTF-8')), + entry.GetDocumentType(), + entry.resourceId.text) def _GetFileExtension(self, file_name): """Returns the uppercase file extension for a file. - + Args: file_name: [string] The basename of a filename. - + Returns: A string containing the file extension of the file. """ @@ -86,7 +100,7 @@ elif not os.path.isfile(file_path): print 'Not a valid file.' return - + file_name = os.path.basename(file_path) ext = self._GetFileExtension(file_name) @@ -95,7 +109,7 @@ return else: content_type = gdata.docs.service.SUPPORTED_FILETYPES[ext] - + title = '' while not title: title = raw_input('Enter name for document: ') @@ -105,16 +119,15 @@ except IOError: print 'Problems reading file. Check permissions.' return - - if ext in ['CSV', 'ODS', 'XLS']: + + if ext in ['CSV', 'ODS', 'XLS', 'XLSX']: print 'Uploading spreadsheet...' - entry = self.gd_client.UploadSpreadsheet(ms, title) elif ext in ['PPT', 'PPS']: print 'Uploading presentation...' - entry = self.gd_client.UploadPresentation(ms, title) else: print 'Uploading word processor document...' - entry = self.gd_client.UploadDocument(ms, title) + + entry = self.gd_client.Upload(ms, title) if entry: print 'Upload successful!' @@ -122,32 +135,107 @@ else: print 'Upload error.' - def _ListAllDocuments(self): - """Retrieves a list of all of a user's documents and displays them.""" - feed = self.gd_client.GetDocumentListFeed() - self._PrintFeed(feed) + def _DownloadMenu(self): + """Prompts that enable a user to download a local copy of a document.""" + resource_id = '' + resource_id = raw_input('Enter an resource id: ') + file_path = '' + file_path = raw_input('Save file to: ') - def _ListAllSpreadsheets(self): - """Retrieves a list of a user's spreadsheets and displays them.""" - query = gdata.docs.service.DocumentQuery(categories=['spreadsheet']) - feed = self.gd_client.Query(query.ToUri()) - self._PrintFeed(feed) + if not file_path or not resource_id: + return - def _ListAllWPDocuments(self): - """Retrieves a list of a user's WP documents and displays them.""" - query = gdata.docs.service.DocumentQuery(categories=['document']) - feed = self.gd_client.Query(query.ToUri()) - self._PrintFeed(feed) + file_name = os.path.basename(file_path) + ext = self._GetFileExtension(file_name) + + if not ext or ext not in gdata.docs.service.SUPPORTED_FILETYPES: + print 'File type not supported. Check the file extension.' + return + else: + content_type = gdata.docs.service.SUPPORTED_FILETYPES[ext] + + doc_type = resource_id[:resource_id.find(':')] + + # When downloading a spreadsheet, the authenticated request needs to be + # sent with the spreadsheet service's auth token. + if doc_type == 'spreadsheet': + print 'Downloading spreadsheet to %s...' % (file_path,) + docs_token = self.gd_client.GetClientLoginToken() + self.gd_client.SetClientLoginToken(self.gs_client.GetClientLoginToken()) + self.gd_client.Export(resource_id, file_path, gid=0) + self.gd_client.SetClientLoginToken(docs_token) + else: + print 'Downloading document to %s...' % (file_path,) + self.gd_client.Export(resource_id, file_path) + + def _ListDocuments(self): + """Retrieves and displays a list of documents based on the user's choice.""" + print 'Retrieve (all/document/folder/presentation/spreadsheet/pdf): ' + category = raw_input('Enter a category: ') + + if category == 'all': + feed = self.gd_client.GetDocumentListFeed() + elif category == 'folder': + query = gdata.docs.service.DocumentQuery(categories=['folder'], + params={'showfolders': 'true'}) + feed = self.gd_client.Query(query.ToUri()) + else: + query = gdata.docs.service.DocumentQuery(categories=[category]) + feed = self.gd_client.Query(query.ToUri()) - def _ListAllPresentations(self): - """Retrieves a list of a user's presentations and displays them.""" - query = gdata.docs.service.DocumentQuery(categories=['presentation']) - feed = self.gd_client.Query(query.ToUri()) self._PrintFeed(feed) + def _ListAclPermissions(self): + """Retrieves a list of a user's folders and displays them.""" + resource_id = raw_input('Enter an resource id: ') + query = gdata.docs.service.DocumentAclQuery(resource_id) + print '\nListing document permissions:' + feed = self.gd_client.GetDocumentListAclFeed(query.ToUri()) + for acl_entry in feed.entry: + print '%s - %s (%s)' % (acl_entry.role.value, acl_entry.scope.value, + acl_entry.scope.type) + + def _ModifyAclPermissions(self): + """Create or updates the ACL entry on an existing document.""" + resource_id = raw_input('Enter an resource id: ') + email = raw_input('Enter an email address: ') + role_value = raw_input('Enter a permission (reader/writer/owner/remove): ') + + uri = gdata.docs.service.DocumentAclQuery(resource_id).ToUri() + acl_feed = self.gd_client.GetDocumentListAclFeed(uri) + + found_acl_entry = None + for acl_entry in acl_feed.entry: + if acl_entry.scope.value == email: + found_acl_entry = acl_entry + break + + if found_acl_entry: + if role_value == 'remove': + # delete ACL entry + self.gd_client.Delete(found_acl_entry.GetEditLink().href) + else: + # update ACL entry + found_acl_entry.role.value = role_value + updated_entry = self.gd_client.Put( + found_acl_entry, found_acl_entry.GetEditLink().href, + converter=gdata.docs.DocumentListAclEntryFromString) + else: + scope = gdata.docs.Scope(value=email, type='user') + role = gdata.docs.Role(value=role_value) + acl_entry = gdata.docs.DocumentListAclEntry(scope=scope, role=role) + inserted_entry = self.gd_client.Post( + acl_entry, uri, converter=gdata.docs.DocumentListAclEntryFromString) + + print '\nListing document permissions:' + acl_feed = self.gd_client.GetDocumentListAclFeed(uri) + for acl_entry in acl_feed.entry: + print '%s - %s (%s)' % (acl_entry.role.value, acl_entry.scope.value, + acl_entry.scope.type) + def _FullTextSearch(self): """Searches a user's documents for a text string. - + Provides prompts to search a user's documents and displays the results of such a search. The text_query parameter of the DocumentListQuery object corresponds to the contents of the q parameter in the feed. Note that this @@ -161,20 +249,20 @@ def _PrintMenu(self): """Displays a menu of options for the user to choose from.""" print ('\nDocument List Sample\n' - '1) List all of your documents.\n' - '2) List all of your spreadsheets.\n' - '3) List all of your word processor documents.\n' - '4) List all of your presentations.\n' - '5) Search your documents.\n' - '6) Upload a document.\n' + '1) List your documents.\n' + '2) Search your documents.\n' + '3) Upload a document.\n' + '4) Download a document.\n' + "5) List a document's permissions.\n" + "6) Add/change a document's permissions.\n" '7) Exit.\n') def _GetMenuChoice(self, max): """Retrieves the menu selection from the user. - + Args: max: [int] The maximum number of allowed choices (inclusive) - + Returns: The integer of the menu item chosen by the user. """ @@ -186,7 +274,7 @@ except ValueError: print 'Invalid choice. Please choose a value between 1 and', max continue - + if num > max or num < 1: print 'Invalid choice. Please choose a value between 1 and', max else: @@ -196,26 +284,24 @@ """Prompts the user to choose funtionality to be demonstrated.""" try: while True: - self._PrintMenu() - choice = self._GetMenuChoice(7) if choice == 1: - self._ListAllDocuments() + self._ListDocuments() elif choice == 2: - self._ListAllSpreadsheets() + self._FullTextSearch() elif choice == 3: - self._ListAllWPDocuments() + self._UploadMenu() elif choice == 4: - self._ListAllPresentations() + self._DownloadMenu() elif choice == 5: - self._FullTextSearch() + self._ListAclPermissions() elif choice == 6: - self._UploadMenu() + self._ModifyAclPermissions() elif choice == 7: + print '\nGoodbye.' return - except KeyboardInterrupt: print '\nGoodbye.' return @@ -227,7 +313,7 @@ try: opts, args = getopt.getopt(sys.argv[1:], '', ['user=', 'pw=']) except getopt.error, msg: - print 'python docsExample.py --user [username] --pw [password] ' + print 'python docs_example.py --user [username] --pw [password] ' sys.exit(2) user = '' diff -Nru python-gdata-1.2.4/samples/docs/resumable_upload_sample.py python-gdata-2.0.8/samples/docs/resumable_upload_sample.py --- python-gdata-1.2.4/samples/docs/resumable_upload_sample.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/samples/docs/resumable_upload_sample.py 2010-02-06 01:41:15.000000000 +0000 @@ -0,0 +1,221 @@ +#!/usr/bin/python +# +# Copyright 2009 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +__author__ = 'e.bidelman@google.com (Eric Bidelman)' + +import getopt +import mimetypes +import os.path +import sys +import atom.data +import gdata.client +import gdata.data +import gdata.gauth +import gdata.docs.client +import gdata.docs.data +import gdata.sample_util + + +APP_NAME = 'GDataResumableUploadPySample-v1.0' + + +def get_mimetype(filename): + file_ext = filename[filename.rfind('.'):] + if file_ext in mimetypes.types_map: + content_type = mimetypes.types_map[file_ext] + else: + content_type = raw_input( + "Unrecognized file extension. Please enter the file's content type: ") + return content_type + + +class ResumableUploadDemo(object): + """Helper class to setup a resumable upload, and upload a file.""" + + CREATE_SESSION_URI = '/feeds/upload/create-session/default/private/full' + + client = None # A gdata.client.GDClient object. + uploader = None # A gdata.client.ResumableUploader object. + + def __init__(self, filepath, chunk_size=None, convert=None, + host=None, ssl=False, debug=False): + self.client = gdata.docs.client.DocsClient(source=APP_NAME) + self.client.ssl = ssl + self.client.http_client.debug = debug + self.convert = convert + + if host: + self.client.host = host + + if chunk_size: + self.chunk_size = chunk_size + + # Authenticate the user with CLientLogin, OAuth, or AuthSub. + try: + gdata.sample_util.authorize_client( + self.client, service=self.client.auth_service, source=APP_NAME, + scopes=self.client.auth_scopes) + except gdata.client.BadAuthentication: + exit('Invalid user credentials given.') + except gdata.client.Error: + exit('Login Error') + + mimetypes.init() # Register common mimetypes on system. + + self.f = open(filepath) + content_type = get_mimetype(self.f.name) + file_size = os.path.getsize(self.f.name) + + self.uploader = gdata.client.ResumableUploader( + self.client, self.f, content_type, file_size, + chunk_size=self.chunk_size, desired_class=gdata.docs.data.DocsEntry) + + def __del__(self): + if self.uploader is not None: + self.uploader.file_handle.close() + + def UploadAutomaticChunks(self, new_entry): + """Uploads an entire file, handing the chunking for you. + + Args: + new_entry: gdata.data.docs.DocsEntry An object holding metadata to create + the document with. + + Returns: + A gdata.docs.data.DocsEntry of the created document on the server. + """ + uri = self.CREATE_SESSION_URI + + # If convert=false is used on the initial request to start a resumable + # upload, the document will be treated as arbitrary file upload. + if self.convert is not None: + uri += '?convert=' + self.convert + + return self.uploader.UploadFile(uri, entry=new_entry) + + def UploadInManualChunks(self, new_entry): + """Uploads a file, demonstrating manually chunking the file. + + Args: + new_entry: gdata.data.docs.DocsEntry An object holding metadata to create + the document with. + + Returns: + A gdata.docs.data.DocsEntry of the created document on the server. + """ + uri = self.CREATE_SESSION_URI + + # If convert=false is used on the initial request to start a resumable + # upload, the document will be treated as arbitrary file upload. + if self.convert is not None: + uri += '?convert=' + self.convert + + # Need to create the initial session manually. + self.uploader._InitSession(uri, entry=new_entry) + + start_byte = 0 + entry = None + + while not entry: + print 'Uploading bytes: %s-%s/%s' % (start_byte, + self.uploader.chunk_size - 1, + self.uploader.total_file_size) + entry = self.uploader.UploadChunk( + start_byte, self.uploader.file_handle.read(self.uploader.chunk_size)) + start_byte += self.uploader.chunk_size + + return entry + + def UploadUsingNormalPath(self): + """Uploads a file using the standard DocList API upload path. + + This method is included to show the difference between the standard upload + path and the resumable upload path. Also note, file uploads using this + normal upload method max out ~10MB. + + Returns: + A gdata.docs.data.DocsEntry of the created document on the server. + """ + ms = gdata.data.MediaSource( + file_handle=self.f, content_type=self.uploader.content_type, + content_length=self.uploader.total_file_size) + + uri = self.client.DOCLIST_FEED_URI + + # If convert=false is used on the initial request to start a resumable + # upload, the document will be treated as arbitrary file upload. + if self.convert is not None: + uri += '?convert=' + self.convert + + return self.client.Upload(ms, self.f.name, folder_or_uri=uri) + + +def main(): + try: + opts, args = getopt.getopt( + sys.argv[1:], '', ['filepath=', 'convert=', 'chunk_size=', + 'ssl', 'debug']) + except getopt.error, msg: + print '''python resumable_upload_sample.py + --filepath= [file to upload] + --convert= [document uploads will be converted to native Google Docs. + Possible values are 'true' and 'false'.] + --ssl [enables HTTPS if set] + --debug [prints debug info if set]''' + print ('Example usage: python resumable_upload_sample.py ' + '--filepath=/path/to/test.doc --convert=true --ssl') + sys.exit(2) + + filepath = None + convert = 'true' # Convert to Google Docs format by default + chunk_size = gdata.client.ResumableUploader.DEFAULT_CHUNK_SIZE + debug = False + ssl = False + + for option, arg in opts: + if option == '--filepath': + filepath = arg + elif option == '--convert': + convert = arg.lower() + elif option == '--chunk_size': + chunk_size = int(arg) + elif option == '--ssl': + ssl = True + elif option == '--debug': + debug = True + + if filepath is None: + filepath = raw_input('Enter path to a file: ') + + demo = ResumableUploadDemo(filepath, chunk_size=chunk_size, + convert=convert, ssl=ssl, debug=debug) + + title = raw_input('Enter title for the document: ') + + print 'Uploading %s ( %s ) @ %s bytes...' % (demo.uploader.file_handle.name, + demo.uploader.content_type, + demo.uploader.total_file_size) + + entry = demo.UploadInManualChunks( + gdata.docs.data.DocsEntry(title=atom.data.Title(text=title))) + print 'Done: %s' % demo.uploader.QueryUploadStatus() + print 'Document uploaded: ' + entry.title.text + print 'Quota used: %s' % entry.quota_bytes_used.text + + print 'file closed: %s' % demo.uploader.file_handle.closed + +if __name__ == '__main__': + main() diff -Nru python-gdata-1.2.4/samples/finance/test_finance.py python-gdata-2.0.8/samples/finance/test_finance.py --- python-gdata-1.2.4/samples/finance/test_finance.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/samples/finance/test_finance.py 2009-05-29 19:14:46.000000000 +0100 @@ -0,0 +1,301 @@ +#!/usr/bin/python +# +# Copyright (C) 2009 Tan Swee Heng +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +__author__ = 'thesweeheng@gmail.com' + + +from gdata.finance.service import \ + FinanceService, PortfolioQuery, PositionQuery +from gdata.finance import \ + PortfolioEntry, PortfolioData, TransactionEntry, TransactionData, \ + Price, Commission, Money +import datetime +import sys + + +def PrintReturns(pfx, d): + """Print returns.""" + print pfx, '%1.5f(1w) %1.5f(4w) %1.5f(3m) %1.5f(YTD)' % tuple( + float(i) for i in (d.return1w, d.return4w, d.return3m, d.returnYTD)) + pfx = ' ' * len(pfx) + print pfx, '%1.5f(1y) %1.5f(3y) %1.5f(5y) %1.5f(overall)' % tuple( + float(i) for i in (d.return1y, d.return3y, d.return5y, d.return_overall)) + + +PrRtn = PrintReturns + + +def PrintTransactions(transactions): + """Print transactions.""" + print " Transactions:" + fmt = ' %4s %-23s %-10s %6s %-11s %-11s' + print fmt % ('ID','Date','Type','Shares','Price','Commission') + for txn in transactions: + d = txn.transaction_data + print fmt % (txn.transaction_id, d.date or '----', d.type, + d.shares, d.price.money[0], d.commission.money[0]) + if d.notes: + print " Notes:", d.notes + print + + +def PrintPosition(pos, with_returns=False): + """Print single position.""" + print ' Position :', pos.position_title + print ' Ticker ID :', pos.ticker_id + print ' Symbol :', pos.symbol + print ' Last updated :', pos.updated.text + d = pos.position_data + print ' Shares :', d.shares + if with_returns: + print ' Gain % :', d.gain_percentage + PrRtn(' Returns :', d) + print ' Cost basis :', d.cost_basis + print ' Days gain :', d.days_gain + print ' Gain :', d.gain + print ' Market value :', d.market_value + print + if pos.transactions: + print " \n" + PrintTransactions(pos.transactions) + print " \n" + + +def PrintPositions(positions, with_returns=False): + for pos in positions: + PrintPosition(pos, with_returns) + + +def PrintPortfolio(pfl, with_returns=False): + """Print single portfolio.""" + print 'Portfolio Title :', pfl.portfolio_title + print 'Portfolio ID :', pfl.portfolio_id + print ' Last updated :', pfl.updated.text + d = pfl.portfolio_data + print ' Currency :', d.currency_code + if with_returns: + print ' Gain % :', d.gain_percentage + PrRtn(' Returns :', d) + print ' Cost basis :', d.cost_basis + print ' Days gain :', d.days_gain + print ' Gain :', d.gain + print ' Market value :', d.market_value + print + if pfl.positions: + print " \n" + PrintPositions(pfl.positions, with_returns) + print " \n" + + +def PrintPortfolios(portfolios, with_returns=False): + for pfl in portfolios: + PrintPortfolio(pfl, with_returns) + + +def ShowCallDetails(meth): + def wrap(*args, **kwargs): + print '@', meth.__name__, args[1:], kwargs + meth(*args, **kwargs) + return wrap + + +class FinanceTester(object): + + def __init__(self, email, password): + self.client = FinanceService(source='gdata-finance-test') + self.client.ClientLogin(email, password) + + def GetPortfolios(self, with_returns=False, inline_positions=False): + query = PortfolioQuery() + query.returns = with_returns + query.positions = inline_positions + return self.client.GetPortfolioFeed(query=query).entry + + def GetPositions(self, portfolio, with_returns=False, inline_transactions=False): + query = PositionQuery() + query.returns = with_returns + query.transactions = inline_transactions + return self.client.GetPositionFeed(portfolio, query=query).entry + + def GetTransactions(self, position=None, portfolio=None, ticker=None): + if position: + feed = self.client.GetTransactionFeed(position) + elif portfolio and ticker: + feed = self.client.GetTransactionFeed( + portfolio_id=portfolio.portfolio_id, ticker_id=ticker) + return feed.entry + + @ShowCallDetails + def TestShowDetails(self, with_returns=False, inline_positions=False, + inline_transactions=False): + portfolios = self.GetPortfolios(with_returns, inline_positions) + for pfl in portfolios: + PrintPortfolio(pfl, with_returns) + positions = self.GetPositions(pfl, with_returns, inline_transactions) + for pos in positions: + PrintPosition(pos, with_returns) + PrintTransactions(self.GetTransactions(pos)) + + def DeletePortfoliosByName(self, portfolio_titles): + for pfl in self.GetPortfolios(): + if pfl.portfolio_title in portfolio_titles: + self.client.DeletePortfolio(pfl) + + def AddPortfolio(self, portfolio_title, currency_code): + pfl = PortfolioEntry(portfolio_data=PortfolioData( + currency_code=currency_code)) + pfl.portfolio_title = portfolio_title + return self.client.AddPortfolio(pfl) + + def UpdatePortfolio(self, portfolio, + portfolio_title=None, currency_code=None): + if portfolio_title: + portfolio.portfolio_title = portfolio_title + if currency_code: + portfolio.portfolio_data.currency_code = currency_code + return self.client.UpdatePortfolio(portfolio) + + def DeletePortfolio(self, portfolio): + self.client.DeletePortfolio(portfolio) + + @ShowCallDetails + def TestManagePortfolios(self): + pfl_one = 'Portfolio Test: Emerging Markets 12345' + pfl_two = 'Portfolio Test: Renewable Energy 31415' + + print '---- Deleting portfolios ----' + self.DeletePortfoliosByName([pfl_one, pfl_two]) + PrintPortfolios(self.GetPortfolios()) + print '---- Adding new portfolio ----' + pfl = self.AddPortfolio(pfl_one, 'SGD') + PrintPortfolios(self.GetPortfolios()) + print '---- Changing portfolio title and currency code ----' + pfl = self.UpdatePortfolio(pfl, pfl_two, 'USD') + PrintPortfolios(self.GetPortfolios()) + print '---- Deleting portfolio ----' + self.DeletePortfolio(pfl) + PrintPortfolios(self.GetPortfolios()) + + def Transact(self, type, portfolio, ticker, date=None, shares=None, + notes=None, price=None, commission=None, currency_code=None): + if price is not None: + price = Price(money=[Money(amount=str(price), + currency_code=currency_code or + portfolio.portfolio_data.currency_code)]) + if commission is not None: + commission = Commission(money=[Money(amount=str(comission), + currency_code=currency_code or + portfolio.portfolio_data.currency_code)]) + if date is not None and isinstance(date, datetime.datetime): + date = date.isoformat() + if shares is not None: + shares = str(shares) + txn = TransactionEntry(transaction_data=TransactionData(type=type, + date=date, shares=shares, notes=notes, price=price, + commission=commission)) + return self.client.AddTransaction(txn, + portfolio_id=portfolio.portfolio_id, ticker_id=ticker) + + def Buy(self, portfolio, ticker, **kwargs): + return self.Transact('Buy', portfolio, ticker, **kwargs) + + def Sell(self, portfolio, ticker, **kwargs): + return self.Transact('Sell', portfolio, ticker, **kwargs) + + def GetPosition(self, portfolio, ticker, with_returns=False, inline_transactions=False): + query = PositionQuery() + query.returns = with_returns + query.transactions = inline_transactions + return self.client.GetPosition( + portfolio_id=portfolio.portfolio_id, ticker_id=ticker, query=query) + + def DeletePosition(self, position): + self.client.DeletePosition(position_entry=position) + + def UpdateTransaction(self, transaction): + self.client.UpdateTransaction(transaction) + + def DeleteTransaction(self, transaction): + self.client.DeleteTransaction(transaction) + + @ShowCallDetails + def TestManageTransactions(self): + pfl_title = 'Transaction Test: Technology 27182' + self.DeletePortfoliosByName([pfl_title]) + + print '---- Adding new portfolio ----' + pfl = self.AddPortfolio(pfl_title, 'USD') + PrintPortfolios(self.GetPortfolios()) + + print '---- Adding buy transactions ----' + tkr1 = 'NASDAQ:GOOG' + date = datetime.datetime(2009,04,01) + days = datetime.timedelta(1) + txn1 = self.Buy(pfl, tkr1, shares=500, price=321.00, date=date) + txn2 = self.Buy(pfl, tkr1, shares=150, price=312.00, date=date+15*days) + pos = self.GetPosition(portfolio=pfl, ticker=tkr1, with_returns=True) + PrintPosition(pos, with_returns=True) + PrintTransactions(self.GetTransactions(pos)) + + print '---- Adding sell transactions ----' + txn3 = self.Sell(pfl, tkr1, shares=400, price=322.00, date=date+30*days) + txn4 = self.Sell(pfl, tkr1, shares=200, price=330.00, date=date+45*days) + pos = self.GetPosition(portfolio=pfl, ticker=tkr1, with_returns=True) + PrintPosition(pos, with_returns=True) + PrintTransactions(self.GetTransactions(pos)) + + print "---- Modifying first and deleting third ----" + txn1.transaction_data.shares = '400.0' + self.UpdateTransaction(txn1) + self.DeleteTransaction(txn3) + pos = self.GetPosition(portfolio=pfl, ticker=tkr1, with_returns=True) + PrintPosition(pos, with_returns=True) + PrintTransactions(self.GetTransactions(pos)) + + print "---- Deleting position ----" + print "Number of positions (before):", len(self.GetPositions(pfl)) + self.DeletePosition(pos) + print "Number of positions (after) :", len(self.GetPositions(pfl)) + + print '---- Deleting portfolio ----' + self.DeletePortfolio(pfl) + PrintPortfolios(self.GetPortfolios()) + + +if __name__ == '__main__': + try: + email = sys.argv[1] + password = sys.argv[2] + cases = sys.argv[3:] + except IndexError: + print "Usage: test_finance account@google.com password [0 1 2...]" + sys.exit(1) + + tester = FinanceTester(email, password) + tests = [ + tester.TestShowDetails, + lambda: tester.TestShowDetails(with_returns=True), + tester.TestManagePortfolios, + tester.TestManageTransactions, + lambda: tester.TestShowDetails(with_returns=True, inline_positions=True), + lambda: tester.TestShowDetails(with_returns=True, inline_positions=True, + inline_transactions=True),] + if not cases: + cases = range(len(tests)) + for i in cases: + print "===== TEST CASE", i, "="*50 + tests[int(i)]() diff -Nru python-gdata-1.2.4/samples/maps/MapsExample.py python-gdata-2.0.8/samples/maps/MapsExample.py --- python-gdata-1.2.4/samples/maps/MapsExample.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/samples/maps/MapsExample.py 2010-01-22 01:44:09.000000000 +0000 @@ -0,0 +1,162 @@ +#!/usr/bin/python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +__author__ = 'api.roman.public@gmail.com (Roman Nurik)' + + +import gdata.maps.client +import gdata.client +import gdata.sample_util +import gdata.data +import atom.data + + +class MapsExample: + + def __init__(self): + """Creates a GDataService and provides ClientLogin auth details to it.""" + + # Authenticate using ClientLogin, AuthSub, or OAuth. + self.client = gdata.maps.client.MapsClient() + #self.client.http_client.debug = True + gdata.sample_util.authorize_client( + self.client, service='local', source='MapsData_Python_Sample-2.0', + scopes=['http://maps.google.com/maps/feeds/']) + + def PrintAllMaps(self): + """Prints a list of all the user's maps.""" + + # Request the feed. + feed = self.client.get_maps() + + # Print the results. + print feed.title.text + for entry in feed.entry: + print "\t%s (map id=%s)" % (entry.title.text, entry.get_map_id()) + print + + def CreateMap(self, title, description, is_unlisted): + """Creates a new map.""" + return self.client.create_map(title, description, unlisted=is_unlisted) + + def CreateFeature(self, map_id, title, content): + """Adds a feature with the given title and content to the map.""" + return self.client.add_feature(map_id, title, content) + + def PrintAllFeatures(self, map_id): + """Displays all features in a map.""" + + # Request the feed. + feed = self.client.get_features(map_id) + + # Print the results. + print feed.title.text + for entry in feed.entry: + if not entry.title.text: + print "\tNo Title" + else: + print "\t%s (feature id=%s)" % (entry.title.text.encode('utf-8'), + entry.get_feature_id()) + print + + def UpdateMapTitle(self, entry_to_update, new_title): + """Updates the title of the given entry. + + If the insertion is successful, the updated feature will be returned. + """ + + # Set the new title in the Entry object + entry_to_update.title = atom.data.Title(type='text', text=new_title) + return self.client.update(entry_to_update) + + def DeleteFeature(self, feature_entry): + """Removes the feature specified by the given edit_link_href.""" + + self.client.delete(feature_entry) + + def DeleteMap(self, map_entry): + """Removes the map specified by the given edit_link_href.""" + + self.client.delete(map_entry) + + def run(self): + """Runs each of the example methods defined above, demonstrating how to + interface with the Maps Data service. + """ + + # Demonstrate retrieving a list of the user's maps. + self.PrintAllMaps() + + # Demonstrate how to create an unlisted map. + unlisted_map = self.CreateMap('Whoa an unlisted map', 'a description', + is_unlisted=True) + print 'Successfully created unlisted map: %s' % unlisted_map.title.text + + # Delete the unlisted map. + self.client.delete(unlisted_map) + + # Demonstrate how to publish a public map. + public_map = self.CreateMap('Some cool new public map', 'a description', + is_unlisted=False) + print "Successfully created unlisted map: %s" % public_map.title.text + + # Demonstrate updating a map's title. + print "Now updating the title of the map we just created:" + public_map = self.UpdateMapTitle(public_map, 'GData sample public map') + print "Successfully changed the map's title to: %s" % public_map.title.text + + # Demonstrate how to retrieve the features for a map. + + # Get the map ID and build the feature feed URI for the specified map + map_id = public_map.get_map_id() + + print "Now adding a feature to the map titled: %s" % public_map.title.text + feature = self.CreateFeature(map_id, "A point feature", + 'Hello there!' + '-122,37') + print ("Successfully created feature '%s' on the map titled '%s'" + % (feature.title.text, public_map.title.text)) + + feature_id = feature.get_feature_id() + + print "Now printing all features" + self.PrintAllFeatures(map_id) + + # Delete the feature we just added + print "Now deleting the feature we just added" + self.DeleteFeature(feature) + print "Successfully deleted feature." + self.PrintAllFeatures(map_id) + + # Demonstrate deleting maps. + print "Now deleting the map titled: %s" % public_map.title.text + self.DeleteMap(public_map) + print "Successfully deleted map." + self.PrintAllMaps() + + +def main(): + """The main function runs the MapsExample application. + + NOTE: It is recommended that you run this sample using a test account. + """ + sample = MapsExample() + sample.run() + + +if __name__ == '__main__': + main() diff -Nru python-gdata-1.2.4/samples/oauth/2_legged_oauth.py python-gdata-2.0.8/samples/oauth/2_legged_oauth.py --- python-gdata-1.2.4/samples/oauth/2_legged_oauth.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/samples/oauth/2_legged_oauth.py 2009-05-29 19:32:12.000000000 +0100 @@ -0,0 +1,72 @@ +#!/usr/bin/python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +__author__ = 'e.bidelman (Eric Bidelman)' + +import gdata.contacts +import gdata.contacts.service +import gdata.docs +import gdata.docs.service + + +CONSUMER_KEY = 'yourdomain.com' +CONSUMER_SECRET = 'YOUR_CONSUMER_KEY' +SIG_METHOD = gdata.auth.OAuthSignatureMethod.HMAC_SHA1 + +requestor_id = 'any.user@yourdomain.com' + +# Contacts Data API ============================================================ +contacts = gdata.contacts.service.ContactsService() +contacts.SetOAuthInputParameters( + SIG_METHOD, CONSUMER_KEY, consumer_secret=CONSUMER_SECRET, + two_legged_oauth=True, requestor_id=requestor_id) + +# GET - fetch user's contact list +print "\nList of contacts for %s:" % (requestor_id,) +feed = contacts.GetContactsFeed() +for entry in feed.entry: + print entry.title.text + +# GET - fetch another user's contact list +requestor_id = 'another_user@yourdomain.com' +print "\nList of contacts for %s:" % (requestor_id,) +contacts.GetOAuthInputParameters().requestor_id = requestor_id +feed = contacts.GetContactsFeed() +for entry in feed.entry: + print entry.title.text + + +# Google Documents List Data API =============================================== +docs = gdata.docs.service.DocsService() +docs.SetOAuthInputParameters( + SIG_METHOD, CONSUMER_KEY, consumer_secret=CONSUMER_SECRET, + two_legged_oauth=True, requestor_id=requestor_id) + +# POST - upload a document +print "\nUploading document to %s's Google Documents account:" % (requestor_id,) +ms = gdata.MediaSource( + file_path='/path/to/test.txt', + content_type=gdata.docs.service.SUPPORTED_FILETYPES['TXT']) + +# GET - fetch user's document list +entry = docs.UploadDocument(ms, 'Company Perks') +print 'Document now accessible online at:', entry.GetAlternateLink().href + +print "\nList of Google Documents for %s" % (requestor_id,) +feed = docs.GetDocumentListFeed() +for entry in feed.entry: + print entry.title.text diff -Nru python-gdata-1.2.4/samples/oauth/oauth_on_appengine/appengine_utilities/cache.py python-gdata-2.0.8/samples/oauth/oauth_on_appengine/appengine_utilities/cache.py --- python-gdata-1.2.4/samples/oauth/oauth_on_appengine/appengine_utilities/cache.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/samples/oauth/oauth_on_appengine/appengine_utilities/cache.py 2009-06-09 00:43:33.000000000 +0100 @@ -0,0 +1,277 @@ +# -*- coding: utf-8 -*- +""" +Copyright (c) 2008, appengine-utilities project +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: +- Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. +- Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. +- Neither the name of the appengine-utilities project nor the names of its + contributors may be used to endorse or promote products derived from this + software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +""" + +# main python imports +import datetime +import pickle +import random +import __main__ + +# google appengine import +from google.appengine.ext import db +from google.appengine.api import memcache + +# settings +DEFAULT_TIMEOUT = 3600 # cache expires after one hour (3600 sec) +CLEAN_CHECK_PERCENT = 50 # 15% of all requests will clean the database +MAX_HITS_TO_CLEAN = 100 # the maximum number of cache hits to clean on attempt + + +class _AppEngineUtilities_Cache(db.Model): + # It's up to the application to determine the format of their keys + cachekey = db.StringProperty() + createTime = db.DateTimeProperty(auto_now_add=True) + timeout = db.DateTimeProperty() + value = db.BlobProperty() + + +class Cache(object): + """ + Cache is used for storing pregenerated output and/or objects in the Big + Table datastore to minimize the amount of queries needed for page + displays. The idea is that complex queries that generate the same + results really should only be run once. Cache can be used to store + pregenerated value made from queries (or other calls such as + urlFetch()), or the query objects themselves. + """ + + def __init__(self, clean_check_percent = CLEAN_CHECK_PERCENT, + max_hits_to_clean = MAX_HITS_TO_CLEAN, + default_timeout = DEFAULT_TIMEOUT): + """ + Initializer + + Args: + clean_check_percent: how often cache initialization should + run the cache cleanup + max_hits_to_clean: maximum number of stale hits to clean + default_timeout: default length a cache item is good for + """ + self.clean_check_percent = clean_check_percent + self.max_hits_to_clean = max_hits_to_clean + self.default_timeout = default_timeout + + if random.randint(1, 100) < self.clean_check_percent: + self._clean_cache() + + if 'AEU_Events' in __main__.__dict__: + __main__.AEU_Events.fire_event('cacheInitialized') + + def _clean_cache(self): + """ + _clean_cache is a routine that is run to find and delete cache + items that are old. This helps keep the size of your over all + datastore down. + """ + query = _AppEngineUtilities_Cache.all() + query.filter('timeout < ', datetime.datetime.now()) + results = query.fetch(self.max_hits_to_clean) + db.delete(results) + #for result in results: + # result.delete() + + def _validate_key(self, key): + if key == None: + raise KeyError + + def _validate_value(self, value): + if value == None: + raise ValueError + + def _validate_timeout(self, timeout): + if timeout == None: + timeout = datetime.datetime.now() +\ + datetime.timedelta(seconds=DEFAULT_TIMEOUT) + if type(timeout) == type(1): + timeout = datetime.datetime.now() + \ + datetime.timedelta(seconds = timeout) + if type(timeout) != datetime.datetime: + raise TypeError + if timeout < datetime.datetime.now(): + raise ValueError + + return timeout + + def add(self, key = None, value = None, timeout = None): + """ + add adds an entry to the cache, if one does not already + exist. + """ + self._validate_key(key) + self._validate_value(value) + timeout = self._validate_timeout(timeout) + + if key in self: + raise KeyError + + cacheEntry = _AppEngineUtilities_Cache() + cacheEntry.cachekey = key + cacheEntry.value = pickle.dumps(value) + cacheEntry.timeout = timeout + + # try to put the entry, if it fails silently pass + # failures may happen due to timeouts, the datastore being read + # only for maintenance or other applications. However, cache + # not being able to write to the datastore should not + # break the application + try: + cacheEntry.put() + except: + pass + + memcache_timeout = timeout - datetime.datetime.now() + memcache.set('cache-'+key, value, int(memcache_timeout.seconds)) + + if 'AEU_Events' in __main__.__dict__: + __main__.AEU_Events.fire_event('cacheAdded') + + def set(self, key = None, value = None, timeout = None): + """ + add adds an entry to the cache, overwriting an existing value + if one already exists. + """ + self._validate_key(key) + self._validate_value(value) + timeout = self._validate_timeout(timeout) + + cacheEntry = self._read(key) + if not cacheEntry: + cacheEntry = _AppEngineUtilities_Cache() + cacheEntry.cachekey = key + cacheEntry.value = pickle.dumps(value) + cacheEntry.timeout = timeout + + try: + cacheEntry.put() + except: + pass + + memcache_timeout = timeout - datetime.datetime.now() + memcache.set('cache-'+key, value, int(memcache_timeout.seconds)) + + if 'AEU_Events' in __main__.__dict__: + __main__.AEU_Events.fire_event('cacheSet') + + def _read(self, key = None): + """ + _read returns a cache object determined by the key. It's set + to private because it returns a db.Model object, and also + does not handle the unpickling of objects making it not the + best candidate for use. The special method __getitem__ is the + preferred access method for cache data. + """ + query = _AppEngineUtilities_Cache.all() + query.filter('cachekey', key) + query.filter('timeout > ', datetime.datetime.now()) + results = query.fetch(1) + if len(results) is 0: + return None + return results[0] + + if 'AEU_Events' in __main__.__dict__: + __main__.AEU_Events.fire_event('cacheReadFromDatastore') + if 'AEU_Events' in __main__.__dict__: + __main__.AEU_Events.fire_event('cacheRead') + + def delete(self, key = None): + """ + Deletes a cache object determined by the key. + """ + memcache.delete('cache-'+key) + result = self._read(key) + if result: + if 'AEU_Events' in __main__.__dict__: + __main__.AEU_Events.fire_event('cacheDeleted') + result.delete() + + def get(self, key): + """ + get is used to return the cache value associated with the key passed. + """ + mc = memcache.get('cache-'+key) + if mc: + if 'AEU_Events' in __main__.__dict__: + __main__.AEU_Events.fire_event('cacheReadFromMemcache') + if 'AEU_Events' in __main__.__dict__: + __main__.AEU_Events.fire_event('cacheRead') + return mc + result = self._read(key) + if result: + timeout = result.timeout - datetime.datetime.now() + # print timeout.seconds + memcache.set('cache-'+key, pickle.loads(result.value), + int(timeout.seconds)) + return pickle.loads(result.value) + else: + raise KeyError + + def get_many(self, keys): + """ + Returns a dict mapping each key in keys to its value. If the given + key is missing, it will be missing from the response dict. + """ + dict = {} + for key in keys: + value = self.get(key) + if value is not None: + dict[key] = val + return dict + + def __getitem__(self, key): + """ + __getitem__ is necessary for this object to emulate a container. + """ + return self.get(key) + + def __setitem__(self, key, value): + """ + __setitem__ is necessary for this object to emulate a container. + """ + return self.set(key, value) + + def __delitem__(self, key): + """ + Implement the 'del' keyword + """ + return self.delete(key) + + def __contains__(self, key): + """ + Implements "in" operator + """ + try: + r = self.__getitem__(key) + except KeyError: + return False + return True + + def has_key(self, keyname): + """ + Equivalent to k in a, use that form in new code + """ + return self.__contains__(keyname) diff -Nru python-gdata-1.2.4/samples/oauth/oauth_on_appengine/appengine_utilities/cron.py python-gdata-2.0.8/samples/oauth/oauth_on_appengine/appengine_utilities/cron.py --- python-gdata-1.2.4/samples/oauth/oauth_on_appengine/appengine_utilities/cron.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/samples/oauth/oauth_on_appengine/appengine_utilities/cron.py 2009-06-09 00:43:33.000000000 +0100 @@ -0,0 +1,498 @@ +""" +Copyright (c) 2008, appengine-utilities project +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: +- Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. +- Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. +- Neither the name of the appengine-utilities project nor the names of its + contributors may be used to endorse or promote products derived from this + software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +""" +import os +import cgi +import re +import datetime +import pickle +from google.appengine.ext import db +from google.appengine.api import urlfetch +from google.appengine.api import memcache + +APPLICATION_PORT = '8080' +CRON_PORT = '8081' + +class _AppEngineUtilities_Cron(db.Model): + """ + Model for the tasks in the datastore. This contains the scheduling and + url information, as well as a field that sets the next time the instance + should run. + """ + + cron_entry = db.StringProperty() + next_run = db.DateTimeProperty() + cron_compiled = db.BlobProperty() + url = db.LinkProperty() + +class Cron(object): + """ + Cron is a scheduling utility built for appengine, modeled after + crontab for unix systems. While true scheduled tasks are not + possible within the Appengine environment currently, this + is an attmempt to provide a request based alternate. You + configure the tasks in an included interface, and the import + the class on any request you want capable of running tasks. + + On each request where Cron is imported, the list of tasks + that need to be run will be pulled and run. A task is a url + within your application. It's important to make sure that these + requests fun quickly, or you could risk timing out the actual + request. + + See the documentation for more information on configuring + your application to support Cron and setting up tasks. + """ + + def __init__(self): + # Check if any tasks need to be run + query = _AppEngineUtilities_Cron.all() + query.filter('next_run <= ', datetime.datetime.now()) + results = query.fetch(1000) + if len(results) > 0: + one_second = datetime.timedelta(seconds = 1) + before = datetime.datetime.now() + for r in results: + if re.search(':' + APPLICATION_PORT, r.url): + r.url = re.sub(':' + APPLICATION_PORT, ':' + CRON_PORT, r.url) + #result = urlfetch.fetch(r.url) + diff = datetime.datetime.now() - before + if int(diff.seconds) < 1: + if memcache.add(str(r.key), "running"): + result = urlfetch.fetch(r.url) + r.next_run = self._get_next_run(pickle.loads(r.cron_compiled)) + r.put() + memcache.delete(str(r.key)) + else: + break + + def add_cron(self, cron_string): + cron = cron_string.split(" ") + if len(cron) is not 6: + raise ValueError, 'Invalid cron string. Format: * * * * * url' + cron = { + 'min': cron[0], + 'hour': cron[1], + 'day': cron[2], + 'mon': cron[3], + 'dow': cron[4], + 'url': cron[5], + } + cron_compiled = self._validate_cron(cron) + next_run = self._get_next_run(cron_compiled) + cron_entry = _AppEngineUtilities_Cron() + cron_entry.cron_entry = cron_string + cron_entry.next_run = next_run + cron_entry.cron_compiled = pickle.dumps(cron_compiled) + cron_entry.url = cron["url"] + cron_entry.put() + + def _validate_cron(self, cron): + """ + Parse the field to determine whether it is an integer or lists, + also converting strings to integers where necessary. If passed bad + values, raises a ValueError. + """ + parsers = { + 'dow': self._validate_dow, + 'mon': self._validate_mon, + 'day': self._validate_day, + 'hour': self._validate_hour, + 'min': self._validate_min, + 'url': self. _validate_url, + } + for el in cron: + parse = parsers[el] + cron[el] = parse(cron[el]) + return cron + + def _validate_type(self, v, t): + """ + Validates that the number (v) passed is in the correct range for the + type (t). Raise ValueError, if validation fails. + + Valid ranges: + day of week = 0-7 + month = 1-12 + day = 1-31 + hour = 0-23 + minute = 0-59 + + All can * which will then return the range for that entire type. + """ + if t == "dow": + if v >= 0 and v <= 7: + return [v] + elif v == "*": + return "*" + else: + raise ValueError, "Invalid day of week." + elif t == "mon": + if v >= 1 and v <= 12: + return [v] + elif v == "*": + return range(1, 12) + else: + raise ValueError, "Invalid month." + elif t == "day": + if v >= 1 and v <= 31: + return [v] + elif v == "*": + return range(1, 31) + else: + raise ValueError, "Invalid day." + elif t == "hour": + if v >= 0 and v <= 23: + return [v] + elif v == "*": + return range(0, 23) + else: + raise ValueError, "Invalid hour." + elif t == "min": + if v >= 0 and v <= 59: + return [v] + elif v == "*": + return range(0, 59) + else: + raise ValueError, "Invalid minute." + + def _validate_list(self, l, t): + """ + Validates a crontab list. Lists are numerical values seperated + by a comma with no spaces. Ex: 0,5,10,15 + + Arguments: + l: comma seperated list of numbers + t: type used for validation, valid values are + dow, mon, day, hour, min + """ + elements = l.split(",") + return_list = [] + # we have a list, validate all of them + for e in elements: + if "-" in e: + return_list.extend(self._validate_range(e, t)) + else: + try: + v = int(e) + self._validate_type(v, t) + return_list.append(v) + except: + raise ValueError, "Names are not allowed in lists." + # return a list of integers + return return_list + + def _validate_range(self, r, t): + """ + Validates a crontab range. Ranges are 2 numerical values seperated + by a dash with no spaces. Ex: 0-10 + + Arguments: + r: dash seperated list of 2 numbers + t: type used for validation, valid values are + dow, mon, day, hour, min + """ + elements = r.split('-') + # a range should be 2 elements + if len(elements) is not 2: + raise ValueError, "Invalid range passed: " + str(r) + # validate the minimum and maximum are valid for the type + for e in elements: + self._validate_type(int(e), t) + # return a list of the numbers in the range. + # +1 makes sure the end point is included in the return value + return range(int(elements[0]), int(elements[1]) + 1) + + def _validate_step(self, s, t): + """ + Validates a crontab step. Steps are complicated. They can + be based on a range 1-10/2 or just step through all valid + */2. When parsing times you should always check for step first + and see if it has a range or not, before checking for ranges because + this will handle steps of ranges returning the final list. Steps + of lists is not supported. + + Arguments: + s: slash seperated string + t: type used for validation, valid values are + dow, mon, day, hour, min + """ + elements = s.split('/') + # a range should be 2 elements + if len(elements) is not 2: + raise ValueError, "Invalid step passed: " + str(s) + try: + step = int(elements[1]) + except: + raise ValueError, "Invalid step provided " + str(s) + r_list = [] + # if the first element is *, use all valid numbers + if elements[0] is "*" or elements[0] is "": + r_list.extend(self._validate_type('*', t)) + # check and see if there is a list of ranges + elif "," in elements[0]: + ranges = elements[0].split(",") + for r in ranges: + # if it's a range, we need to manage that + if "-" in r: + r_list.extend(self._validate_range(r, t)) + else: + try: + r_list.extend(int(r)) + except: + raise ValueError, "Invalid step provided " + str(s) + elif "-" in elements[0]: + r_list.extend(self._validate_range(elements[0], t)) + return range(r_list[0], r_list[-1] + 1, step) + + def _validate_dow(self, dow): + """ + """ + # if dow is * return it. This is for date parsing where * does not mean + # every day for crontab entries. + if dow is "*": + return dow + days = { + 'mon': 1, + 'tue': 2, + 'wed': 3, + 'thu': 4, + 'fri': 5, + 'sat': 6, + # per man crontab sunday can be 0 or 7. + 'sun': [0, 7], + } + if dow in days: + dow = days[dow] + return [dow] + # if dow is * return it. This is for date parsing where * does not mean + # every day for crontab entries. + elif dow is "*": + return dow + elif "/" in dow: + return(self._validate_step(dow, "dow")) + elif "," in dow: + return(self._validate_list(dow, "dow")) + elif "-" in dow: + return(self._validate_range(dow, "dow")) + else: + valid_numbers = range(0, 8) + if not int(dow) in valid_numbers: + raise ValueError, "Invalid day of week " + str(dow) + else: + return [int(dow)] + + def _validate_mon(self, mon): + months = { + 'jan': 1, + 'feb': 2, + 'mar': 3, + 'apr': 4, + 'may': 5, + 'jun': 6, + 'jul': 7, + 'aug': 8, + 'sep': 9, + 'oct': 10, + 'nov': 11, + 'dec': 12, + } + if mon in months: + mon = months[mon] + return [mon] + elif mon is "*": + return range(1, 13) + elif "/" in mon: + return(self._validate_step(mon, "mon")) + elif "," in mon: + return(self._validate_list(mon, "mon")) + elif "-" in mon: + return(self._validate_range(mon, "mon")) + else: + valid_numbers = range(1, 13) + if not int(mon) in valid_numbers: + raise ValueError, "Invalid month " + str(mon) + else: + return [int(mon)] + + def _validate_day(self, day): + if day is "*": + return range(1, 32) + elif "/" in day: + return(self._validate_step(day, "day")) + elif "," in day: + return(self._validate_list(day, "day")) + elif "-" in day: + return(self._validate_range(day, "day")) + else: + valid_numbers = range(1, 31) + if not int(day) in valid_numbers: + raise ValueError, "Invalid day " + str(day) + else: + return [int(day)] + + def _validate_hour(self, hour): + if hour is "*": + return range(0, 24) + elif "/" in hour: + return(self._validate_step(hour, "hour")) + elif "," in hour: + return(self._validate_list(hour, "hour")) + elif "-" in hour: + return(self._validate_range(hour, "hour")) + else: + valid_numbers = range(0, 23) + if not int(hour) in valid_numbers: + raise ValueError, "Invalid hour " + str(hour) + else: + return [int(hour)] + + def _validate_min(self, min): + if min is "*": + return range(0, 60) + elif "/" in min: + return(self._validate_step(min, "min")) + elif "," in min: + return(self._validate_list(min, "min")) + elif "-" in min: + return(self._validate_range(min, "min")) + else: + valid_numbers = range(0, 59) + if not int(min) in valid_numbers: + raise ValueError, "Invalid min " + str(min) + else: + return [int(min)] + + def _validate_url(self, url): + # kludge for issue 842, right now we use request headers + # to set the host. + if url[0] is not "/": + url = "/" + url + url = 'http://' + str(os.environ['HTTP_HOST']) + url + return url + # content below is for when that issue gets fixed + #regex = re.compile("^(http|https):\/\/([a-z0-9-]\.+)*", re.IGNORECASE) + #if regex.match(url) is not None: + # return url + #else: + # raise ValueError, "Invalid url " + url + + def _calc_month(self, next_run, cron): + while True: + if cron["mon"][-1] < next_run.month: + next_run = next_run.replace(year=next_run.year+1, \ + month=cron["mon"][0], \ + day=1,hour=0,minute=0) + else: + if next_run.month in cron["mon"]: + return next_run + else: + one_month = datetime.timedelta(months=1) + next_run = next_run + one_month + + def _calc_day(self, next_run, cron): + # start with dow as per cron if dow and day are set + # then dow is used if it comes before day. If dow + # is *, then ignore it. + if str(cron["dow"]) != str("*"): + # convert any integers to lists in order to easily compare values + m = next_run.month + while True: + if next_run.month is not m: + next_run = next_run.replace(hour=0, minute=0) + next_run = self._calc_month(next_run, cron) + if next_run.weekday() in cron["dow"] or next_run.day in cron["day"]: + return next_run + else: + one_day = datetime.timedelta(days=1) + next_run = next_run + one_day + else: + m = next_run.month + while True: + if next_run.month is not m: + next_run = next_run.replace(hour=0, minute=0) + next_run = self._calc_month(next_run, cron) + # if cron["dow"] is next_run.weekday() or cron["day"] is next_run.day: + if next_run.day in cron["day"]: + return next_run + else: + one_day = datetime.timedelta(days=1) + next_run = next_run + one_day + + def _calc_hour(self, next_run, cron): + m = next_run.month + d = next_run.day + while True: + if next_run.month is not m: + next_run = next_run.replace(hour=0, minute=0) + next_run = self._calc_month(next_run, cron) + if next_run.day is not d: + next_run = next_run.replace(hour=0) + next_run = self._calc_day(next_run, cron) + if next_run.hour in cron["hour"]: + return next_run + else: + m = next_run.month + d = next_run.day + one_hour = datetime.timedelta(hours=1) + next_run = next_run + one_hour + + def _calc_minute(self, next_run, cron): + one_minute = datetime.timedelta(minutes=1) + + m = next_run.month + d = next_run.day + h = next_run.hour + while True: + if next_run.month is not m: + next_run = next_run.replace(minute=0) + next_run = self._calc_month(next_run, cron) + if next_run.day is not d: + next_run = next_run.replace(minute=0) + next_run = self._calc_day(next_run, cron) + if next_run.hour is not h: + next_run = next_run.replace(minute=0) + next_run = self._calc_day(next_run, cron) + if next_run.minute in cron["min"]: + return next_run + else: + m = next_run.month + d = next_run.day + h = next_run.hour + next_run = next_run + one_minute + + def _get_next_run(self, cron): + one_minute = datetime.timedelta(minutes=1) + # go up 1 minute because it shouldn't happen right when added + now = datetime.datetime.now() + one_minute + next_run = now.replace(second=0, microsecond=0) + + # start with month, which will also help calculate year + next_run = self._calc_month(next_run, cron) + next_run = self._calc_day(next_run, cron) + next_run = self._calc_hour(next_run, cron) + next_run = self._calc_minute(next_run, cron) + return next_run diff -Nru python-gdata-1.2.4/samples/oauth/oauth_on_appengine/appengine_utilities/event.py python-gdata-2.0.8/samples/oauth/oauth_on_appengine/appengine_utilities/event.py --- python-gdata-1.2.4/samples/oauth/oauth_on_appengine/appengine_utilities/event.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/samples/oauth/oauth_on_appengine/appengine_utilities/event.py 2009-06-09 00:43:33.000000000 +0100 @@ -0,0 +1,76 @@ +""" +Copyright (c) 2008, appengine-utilities project +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: +- Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. +- Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. +- Neither the name of the appengine-utilities project nor the names of its + contributors may be used to endorse or promote products derived from this + software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +""" +import __main__ + + +class Event(object): + """ + Event is a simple publish/subscribe based event dispatcher + It sets itself to the __main__ function. In order to use it, + you must import it and __main__ + """ + + def __init__(self): + self.events = [] + + def subscribe(self, event, callback, args = None): + """ + This method will subscribe a callback function to an event name. + """ + if not {"event": event, "callback": callback, "args": args, } \ + in self.events: + self.events.append({"event": event, "callback": callback, \ + "args": args, }) + + def unsubscribe(self, event, callback, args = None): + """ + This method will unsubscribe a callback from an event. + """ + if {"event": event, "callback": callback, "args": args, }\ + in self.events: + self.events.remove({"event": event, "callback": callback,\ + "args": args, }) + + def fire_event(self, event = None): + """ + This method is what a method uses to fire an event, + initiating all registered callbacks + """ + for e in self.events: + if e["event"] == event: + if type(e["args"]) == type([]): + e["callback"](*e["args"]) + elif type(e["args"]) == type({}): + e["callback"](**e["args"]) + elif e["args"] == None: + e["callback"]() + else: + e["callback"](e["args"]) +""" +Assign to the event class to __main__ +""" +__main__.AEU_Events = Event() diff -Nru python-gdata-1.2.4/samples/oauth/oauth_on_appengine/appengine_utilities/flash.py python-gdata-2.0.8/samples/oauth/oauth_on_appengine/appengine_utilities/flash.py --- python-gdata-1.2.4/samples/oauth/oauth_on_appengine/appengine_utilities/flash.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/samples/oauth/oauth_on_appengine/appengine_utilities/flash.py 2009-06-09 00:43:33.000000000 +0100 @@ -0,0 +1,119 @@ +""" +Copyright (c) 2008, appengine-utilities project +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: +- Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. +- Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. +- Neither the name of the appengine-utilities project nor the names of its + contributors may be used to endorse or promote products derived from this + software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +""" + +import os +import sys +import Cookie +import pickle +from time import strftime + +from django.utils import simplejson + +COOKIE_NAME = 'appengine-utilities-flash' + + +class Flash(object): + """ + Send messages to the user between pages. + + When you instantiate the class, the attribute 'msg' will be set from the + cookie, and the cookie will be deleted. If there is no flash cookie, 'msg' + will default to None. + + To set a flash message for the next page, simply set the 'msg' attribute. + + Example psuedocode: + + if new_entity.put(): + flash = Flash() + flash.msg = 'Your new entity has been created!' + return redirect_to_entity_list() + + Then in the template on the next page: + + {% if flash.msg %} +
{{ flash.msg }}
+ {% endif %} + """ + + def __init__(self, cookie=None): + """ + Load the flash message and clear the cookie. + """ + self.no_cache_headers() + # load cookie + if cookie is None: + browser_cookie = os.environ.get('HTTP_COOKIE', '') + self.cookie = Cookie.SimpleCookie() + self.cookie.load(browser_cookie) + else: + self.cookie = cookie + # check for flash data + if self.cookie.get(COOKIE_NAME): + # set 'msg' attribute + cookie_val = self.cookie[COOKIE_NAME].value + # we don't want to trigger __setattr__(), which creates a cookie + try: + self.__dict__['msg'] = simplejson.loads(cookie_val) + except: + # not able to load the json, so do not set message. This should + # catch for when the browser doesn't delete the cookie in time for + # the next request, and only blanks out the content. + pass + # clear the cookie + self.cookie[COOKIE_NAME] = '' + self.cookie[COOKIE_NAME]['path'] = '/' + self.cookie[COOKIE_NAME]['expires'] = 0 + print self.cookie[COOKIE_NAME] + else: + # default 'msg' attribute to None + self.__dict__['msg'] = None + + def __setattr__(self, name, value): + """ + Create a cookie when setting the 'msg' attribute. + """ + if name == 'cookie': + self.__dict__['cookie'] = value + elif name == 'msg': + self.__dict__['msg'] = value + self.__dict__['cookie'][COOKIE_NAME] = simplejson.dumps(value) + self.__dict__['cookie'][COOKIE_NAME]['path'] = '/' + print self.cookie + else: + raise ValueError('You can only set the "msg" attribute.') + + def no_cache_headers(self): + """ + Adds headers, avoiding any page caching in the browser. Useful for highly + dynamic sites. + """ + print "Expires: Tue, 03 Jul 2001 06:00:00 GMT" + print strftime("Last-Modified: %a, %d %b %y %H:%M:%S %Z") + print "Cache-Control: no-store, no-cache, must-revalidate, max-age=0" + print "Cache-Control: post-check=0, pre-check=0" + print "Pragma: no-cache" diff -Nru python-gdata-1.2.4/samples/oauth/oauth_on_appengine/appengine_utilities/paginator.py python-gdata-2.0.8/samples/oauth/oauth_on_appengine/appengine_utilities/paginator.py --- python-gdata-1.2.4/samples/oauth/oauth_on_appengine/appengine_utilities/paginator.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/samples/oauth/oauth_on_appengine/appengine_utilities/paginator.py 2009-06-09 00:43:33.000000000 +0100 @@ -0,0 +1,121 @@ +""" +Copyright (c) 2008, appengine-utilities project +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: +- Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. +- Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. +- Neither the name of the appengine-utilities project nor the names of its + contributors may be used to endorse or promote products derived from this + software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +""" + +from google.appengine.ext import db +from cache import Cache + +class Paginator(object): + """ + This class is used for maintaining pagination objects. + """ + + @classmethod + def get(cls, count=10, q_filters={}, search=None, start=None, model=None, \ + order='ASC', order_by='__key__'): + """ + get queries the database on model, starting with key, ordered by + order. It receives count + 1 items, returning count and setting a + next field to the count + 1 item key. It then reverses the sort, and + grabs count objects, returning the last as a the previous. + + Arguments: + count: The amount of entries to pull on query + q_filter: The filter value (optional) + search: Search is used for SearchableModel searches + start: The key to start the page from + model: The Model object to query against. This is not a + string, it must be a Model derived object. + order: The order in which to pull the values. + order_by: The attribute to order results by. This defaults to + __key__ + + Returns a dict: + { + 'next': next_key, + 'prev': prev_key, + 'items': entities_pulled + } + """ + + # argument validation + if model == None: + raise ValueError('You must pass a model to query') + + # a valid model object will have a gql method. + if callable(model.gql) == False: + raise TypeError('model must be a valid model object.') + + # cache check + cache_string = "gae_paginator_" + for q_filter in q_filters: + cache_string = cache_string + q_filter + "_" + q_filters[q_filter] + "_" + cache_string = cache_string + "index" + c = Cache() + if c.has_key(cache_string): + return c[cache_string] + + # build query + query = model.all() + if len(q_filters) > 0: + for q_filter in q_filters: + query.filter(q_filter + " = ", q_filters[q_filter]) + if start: + if order.lower() == "DESC".lower(): + query.filter(order_by + " <", start) + else: + query.filter(order_by + " >", start) + if search: + query.search(search) + if order.lower() == "DESC".lower(): + query.order("-" + order_by) + else: + query.order(order_by) + results = query.fetch(count + 1) + if len(results) == count + 1: + next = getattr(results[count - 1], order_by) + # reverse the query to get the value for previous + if start is not None: + rquery = model.all() + for q_filter in q_filters: + rquery.filter(q_filter + " = ", q_filters[q_filter]) + if search: + query.search(search) + if order.lower() == "DESC".lower(): + rquery.order(order_by) + else: + rquery.order("-" + order_by) + rresults = rquery.fetch(count) + previous = getattr(results[0], order_by) + else: + previous = None + else: + next = None + return { + "results": results, + "next": next, + "previous": previous + } diff -Nru python-gdata-1.2.4/samples/oauth/oauth_on_appengine/appengine_utilities/rotmodel.py python-gdata-2.0.8/samples/oauth/oauth_on_appengine/appengine_utilities/rotmodel.py --- python-gdata-1.2.4/samples/oauth/oauth_on_appengine/appengine_utilities/rotmodel.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/samples/oauth/oauth_on_appengine/appengine_utilities/rotmodel.py 2009-06-09 00:43:33.000000000 +0100 @@ -0,0 +1,46 @@ +""" +Copyright (c) 2008, appengine-utilities project +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: +- Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. +- Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. +- Neither the name of the appengine-utilities project nor the names of its + contributors may be used to endorse or promote products derived from this + software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +""" + +from google.appengine.ext import db + +class ROTModel(db.Model): + """ + ROTModel overrides the db.Model put function, having it retry + up to 3 times when it encounters a datastore timeout. This is + to try an maximize the chance the data makes it into the datastore + when attempted. If it fails, it raises the db.Timeout error and the + calling application will need to handle that. + """ + def put(self): + count = 0 + while count < 3: + try: + return db.Model.put(self) + except db.Timeout: + count += 1 + else: + raise db.Timeout() diff -Nru python-gdata-1.2.4/samples/oauth/oauth_on_appengine/appengine_utilities/sessions.py python-gdata-2.0.8/samples/oauth/oauth_on_appengine/appengine_utilities/sessions.py --- python-gdata-1.2.4/samples/oauth/oauth_on_appengine/appengine_utilities/sessions.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/samples/oauth/oauth_on_appengine/appengine_utilities/sessions.py 2009-06-09 00:43:33.000000000 +0100 @@ -0,0 +1,1000 @@ +# -*- coding: utf-8 -*- +""" +Copyright (c) 2008, appengine-utilities project +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: +- Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. +- Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. +- Neither the name of the appengine-utilities project nor the names of its + contributors may be used to endorse or promote products derived from this + software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +""" + +# main python imports +import os +import time +import datetime +import random +import md5 +import Cookie +import pickle +import __main__ +from time import strftime +import logging + +# google appengine imports +from google.appengine.ext import db +from google.appengine.api import memcache + +#django simplejson import, used for flash +from django.utils import simplejson + +from rotmodel import ROTModel + +# settings, if you have these set elsewhere, such as your django settings file, +# you'll need to adjust the values to pull from there. + + +class _AppEngineUtilities_Session(db.Model): + """ + Model for the sessions in the datastore. This contains the identifier and + validation information for the session. + """ + + sid = db.StringListProperty() + session_key = db.FloatProperty() + ip = db.StringProperty() + ua = db.StringProperty() + last_activity = db.DateTimeProperty() + dirty = db.BooleanProperty(default=False) + working = db.BooleanProperty(default=False) + deleted = db.BooleanProperty(default=False) # used for cases where + # datastore delete doesn't + # work + + def put(self): + """ + Extend put so that it writes vaules to memcache as well as the datastore, + and keeps them in sync, even when datastore writes fails. + """ + if self.session_key: + memcache.set("_AppEngineUtilities_Session_" + str(self.session_key), self) + else: + # new session, generate a new key, which will handle the put and set the memcache + self.create_key() + + self.last_activity = datetime.datetime.now() + + try: + self.dirty = False + logging.info("doing a put") + db.put(self) + memcache.set("_AppEngineUtilities_Session_" + str(self.session_key), self) + except: + self.dirty = True + memcache.set("_AppEngineUtilities_Session_" + str(self.session_key), self) + + return self + + @classmethod + def get_session(cls, session_obj=None): + """ + Uses the passed sid to get a session object from memcache, or datastore + if a valid one exists. + """ + if session_obj.sid == None: + return None + session_key = session_obj.sid.split('_')[0] + session = memcache.get("_AppEngineUtilities_Session_" + str(session_key)) + if session: + if session.deleted == True: + session.delete() + return None + if session.dirty == True and session.working != False: + # the working bit is used to make sure multiple requests, which can happen + # with ajax oriented sites, don't try to put at the same time + session.working = True + memcache.set("_AppEngineUtilities_Session_" + str(session_key), session) + session.put() + if session_obj.sid in session.sid: + logging.info('grabbed session from memcache') + sessionAge = datetime.datetime.now() - session.last_activity + if sessionAge.seconds > session_obj.session_expire_time: + session.delete() + return None + return session + else: + return None + + # Not in memcache, check datastore + query = _AppEngineUtilities_Session.all() + query.filter("sid = ", session_obj.sid) + results = query.fetch(1) + if len(results) > 0: + sessionAge = datetime.datetime.now() - results[0].last_activity + if sessionAge.seconds > self.session_expire_time: + results[0].delete() + return None + memcache.set("_AppEngineUtilities_Session_" + str(session_key), results[0]) + memcache.set("_AppEngineUtilities_SessionData_" + str(session_key), results[0].get_items_ds()) + logging.info('grabbed session from datastore') + return results[0] + else: + return None + + def get_items(self): + """ + Returns all the items stored in a session + """ + items = memcache.get("_AppEngineUtilities_SessionData_" + str(self.session_key)) + if items: + for item in items: + if item.deleted == True: + item.delete() + items.remove(item) + return items + + query = _AppEngineUtilities_SessionData.all() + query.filter('session_key', self.session_key) + results = query.fetch(1000) + return results + + def get_item(self, keyname = None): + """ + Returns a single item from the memcache or datastore + """ + mc = memcache.get("_AppEngineUtilities_SessionData_" + str(self.session_key)) + if mc: + for item in mc: + if item.keyname == keyname: + if item.deleted == True: + item.delete() + return None + return item + query = _AppEngineUtilities_SessionData.all() + query.filter("session_key = ", self.session_key) + query.filter("keyname = ", keyname) + results = query.fetch(1) + if len(results) > 0: + memcache.set("_AppEngineUtilities_SessionData_" + str(self.session_key), self.get_items_ds()) + return results[0] + return None + + def get_items_ds(self): + """ + This gets all the items straight from the datastore, does not + interact with the memcache. + """ + query = _AppEngineUtilities_SessionData.all() + query.filter('session_key', self.session_key) + results = query.fetch(1000) + return results + + def delete(self): + try: + query = _AppEngineUtilities_SessionData.all() + query.filter("session_key = ", self.session_key) + results = query.fetch(1000) + db.delete(results) + db.delete(self) + memcache.delete_multi(["_AppEngineUtilities_Session_" + str(self.session_key), "_AppEngineUtilities_SessionData_" + str(self.session_key)]) + except: + mc = memcache.get("_AppEngineUtilities_Session_" + str(self.session_key)) + mc.deleted = True + memcache.set("_AppEngineUtilities_Session_" + str(self.session_key), mc) + + def create_key(self): + """ + Creates a unique key for the session. + """ + self.session_key = time.time() + valid = False + while valid == False: + # verify session_key is unique + if memcache.get("_AppEngineUtilities_Session_" + str(self.session_key)): + self.session_key = self.session_key + 0.001 + else: + query = _AppEngineUtilities_Session.all() + query.filter("session_key = ", self.session_key) + results = query.fetch(1) + if len(results) > 0: + self.session_key = self.session_key + 0.001 + else: + try: + self.put() + memcache.set("_AppEngineUtilities_Session_" + str(self.session_key), self) + except: + self.dirty = True + memcache.set("_AppEngineUtilities_Session_" + str(self.session_key), self) + valid = True + +class _AppEngineUtilities_SessionData(db.Model): + """ + Model for the session data in the datastore. + """ + + session_key = db.FloatProperty() + keyname = db.StringProperty() + content = db.BlobProperty() + dirty = db.BooleanProperty(default=False) + deleted = db.BooleanProperty(default=False) + + def put(self): + """ + Adds a keyname/value for session to the datastore and memcache + """ + # update or insert in datastore + try: + db.put(self) + self.dirty = False + except: + self.dirty = True + + # update or insert in memcache + mc_items = memcache.get("_AppEngineUtilities_SessionData_" + str(self.session_key)) + if mc_items: + value_updated = False + for item in mc_items: + if value_updated == True: + break + if item.keyname == self.keyname: + logging.info("updating " + self.keyname) + item.content = self.content + memcache.set("_AppEngineUtilities_SessionData_" + str(self.session_key), mc_items) + value_updated = True + break + if value_updated == False: + #logging.info("adding " + self.keyname) + mc_items.append(self) + memcache.set("_AppEngineUtilities_SessionData_" + str(self.session_key), mc_items) + + def delete(self): + """ + Deletes an entity from the session in memcache and the datastore + """ + try: + db.delete(self) + except: + self.deleted = True + mc_items = memcache.get("_AppEngineUtilities_SessionData_" + str(self.session_key)) + value_handled = False + for item in mc_items: + if value_handled == True: + break + if item.keyname == self.keyname: + if self.deleted == True: + item.deleted = True + else: + mc_items.remove(item) + memcache.set("_AppEngineUtilities_SessionData_" + str(self.session_key), mc_items) + + +class _DatastoreWriter(object): + + def put(self, keyname, value, session): + """ + Insert a keyname/value pair into the datastore for the session. + + Args: + keyname: The keyname of the mapping. + value: The value of the mapping. + """ + keyname = session._validate_key(keyname) + if value is None: + raise ValueError('You must pass a value to put.') + + # datestore write trumps cookie. If there is a cookie value + # with this keyname, delete it so we don't have conflicting + # entries. + if session.cookie_vals.has_key(keyname): + del(session.cookie_vals[keyname]) + session.output_cookie[session.cookie_name + '_data'] = \ + simplejson.dumps(session.cookie_vals) + print session.output_cookie.output() + + sessdata = session._get(keyname=keyname) + if sessdata is None: + sessdata = _AppEngineUtilities_SessionData() + sessdata.session_key = session.session.session_key + sessdata.keyname = keyname + sessdata.content = pickle.dumps(value) + # UNPICKLING CACHE session.cache[keyname] = pickle.dumps(value) + session.cache[keyname] = value + sessdata.put() + # todo _set_memcache() should be going away when this is done + # session._set_memcache() + + +class _CookieWriter(object): + def put(self, keyname, value, session): + """ + Insert a keyname/value pair into the datastore for the session. + + Args: + keyname: The keyname of the mapping. + value: The value of the mapping. + """ + keyname = session._validate_key(keyname) + if value is None: + raise ValueError('You must pass a value to put.') + + # Use simplejson for cookies instead of pickle. + session.cookie_vals[keyname] = value + # update the requests session cache as well. + session.cache[keyname] = value + session.output_cookie[session.cookie_name + '_data'] = \ + simplejson.dumps(session.cookie_vals) + print session.output_cookie.output() + +class Session(object): + """ + Sessions used to maintain user presence between requests. + + Sessions store a unique id as a cookie in the browser and + referenced in a datastore object. This maintains user presence + by validating requests as visits from the same browser. + + You can add extra data to the session object by using it + as a dictionary object. Values can be any python object that + can be pickled. + + For extra performance, session objects are also store in + memcache and kept consistent with the datastore. This + increases the performance of read requests to session + data. + """ + + COOKIE_NAME = 'appengine-utilities-session-sid' # session token + DEFAULT_COOKIE_PATH = '/' + SESSION_EXPIRE_TIME = 7200 # sessions are valid for 7200 seconds (2 hours) + CLEAN_CHECK_PERCENT = 50 # By default, 50% of all requests will clean the database + INTEGRATE_FLASH = True # integrate functionality from flash module? + CHECK_IP = True # validate sessions by IP + CHECK_USER_AGENT = True # validate sessions by user agent + SET_COOKIE_EXPIRES = True # Set to True to add expiration field to cookie + SESSION_TOKEN_TTL = 5 # Number of seconds a session token is valid for. + UPDATE_LAST_ACTIVITY = 60 # Number of seconds that may pass before + # last_activity is updated + WRITER = "datastore" # Use the datastore writer by default. cookie is the + # other option. + + + def __init__(self, cookie_path=DEFAULT_COOKIE_PATH, + cookie_name=COOKIE_NAME, + session_expire_time=SESSION_EXPIRE_TIME, + clean_check_percent=CLEAN_CHECK_PERCENT, + integrate_flash=INTEGRATE_FLASH, check_ip=CHECK_IP, + check_user_agent=CHECK_USER_AGENT, + set_cookie_expires=SET_COOKIE_EXPIRES, + session_token_ttl=SESSION_TOKEN_TTL, + last_activity_update=UPDATE_LAST_ACTIVITY, + writer=WRITER): + """ + Initializer + + Args: + cookie_name: The name for the session cookie stored in the browser. + session_expire_time: The amount of time between requests before the + session expires. + clean_check_percent: The percentage of requests the will fire off a + cleaning routine that deletes stale session data. + integrate_flash: If appengine-utilities flash utility should be + integrated into the session object. + check_ip: If browser IP should be used for session validation + check_user_agent: If the browser user agent should be used for + sessoin validation. + set_cookie_expires: True adds an expires field to the cookie so + it saves even if the browser is closed. + session_token_ttl: Number of sessions a session token is valid + for before it should be regenerated. + """ + + self.cookie_path = cookie_path + self.cookie_name = cookie_name + self.session_expire_time = session_expire_time + self.integrate_flash = integrate_flash + self.check_user_agent = check_user_agent + self.check_ip = check_ip + self.set_cookie_expires = set_cookie_expires + self.session_token_ttl = session_token_ttl + self.last_activity_update = last_activity_update + self.writer = writer + + # make sure the page is not cached in the browser + self.no_cache_headers() + # Check the cookie and, if necessary, create a new one. + self.cache = {} + string_cookie = os.environ.get('HTTP_COOKIE', '') + self.cookie = Cookie.SimpleCookie() + self.output_cookie = Cookie.SimpleCookie() + self.cookie.load(string_cookie) + try: + self.cookie_vals = \ + simplejson.loads(self.cookie[self.cookie_name + '_data'].value) + # sync self.cache and self.cookie_vals which will make those + # values available for all gets immediately. + for k in self.cookie_vals: + self.cache[k] = self.cookie_vals[k] + self.output_cookie[self.cookie_name + '_data'] = self.cookie[self.cookie_name + '_data'] + # sync the input cookie with the output cookie + except: + self.cookie_vals = {} + + + if writer == "cookie": + pass + else: + self.sid = None + new_session = True + + # do_put is used to determine if a datastore write should + # happen on this request. + do_put = False + + # check for existing cookie + if self.cookie.get(cookie_name): + self.sid = self.cookie[cookie_name].value + self.session = _AppEngineUtilities_Session.get_session(self) # will return None if + # sid expired + if self.session: + new_session = False + + if new_session: + # start a new session + self.session = _AppEngineUtilities_Session() + self.session.put() + self.sid = self.new_sid() + if 'HTTP_USER_AGENT' in os.environ: + self.session.ua = os.environ['HTTP_USER_AGENT'] + else: + self.session.ua = None + if 'REMOTE_ADDR' in os.environ: + self.session.ip = os.environ['REMOTE_ADDR'] + else: + self.session.ip = None + self.session.sid = [self.sid] + # do put() here to get the session key + self.session.put() + else: + # check the age of the token to determine if a new one + # is required + duration = datetime.timedelta(seconds=self.session_token_ttl) + session_age_limit = datetime.datetime.now() - duration + if self.session.last_activity < session_age_limit: + logging.info("UPDATING SID LA = " + str(self.session.last_activity) + " - TL = " + str(session_age_limit)) + self.sid = self.new_sid() + if len(self.session.sid) > 2: + self.session.sid.remove(self.session.sid[0]) + self.session.sid.append(self.sid) + do_put = True + else: + self.sid = self.session.sid[-1] + # check if last_activity needs updated + ula = datetime.timedelta(seconds=self.last_activity_update) + if datetime.datetime.now() > self.session.last_activity + ula: + do_put = True + + self.output_cookie[cookie_name] = self.sid + self.output_cookie[cookie_name]['path'] = cookie_path + + # UNPICKLING CACHE self.cache['sid'] = pickle.dumps(self.sid) + self.cache['sid'] = self.sid + + if do_put: + if self.sid != None or self.sid != "": + logging.info("doing put") + self.session.put() + + if self.set_cookie_expires: + if not self.output_cookie.has_key(cookie_name + '_data'): + self.output_cookie[cookie_name + '_data'] = "" + self.output_cookie[cookie_name + '_data']['expires'] = \ + self.session_expire_time + print self.output_cookie.output() + + # fire up a Flash object if integration is enabled + if self.integrate_flash: + import flash + self.flash = flash.Flash(cookie=self.cookie) + + # randomly delete old stale sessions in the datastore (see + # CLEAN_CHECK_PERCENT variable) + if random.randint(1, 100) < clean_check_percent: + self._clean_old_sessions() + + def new_sid(self): + """ + Create a new session id. + """ + sid = str(self.session.session_key) + "_" +md5.new(repr(time.time()) + \ + str(random.random())).hexdigest() + return sid + + ''' + # removed as model now has get_session classmethod + def _get_session(self): + """ + Get the user's session from the datastore + """ + query = _AppEngineUtilities_Session.all() + query.filter('sid', self.sid) + if self.check_user_agent: + query.filter('ua', os.environ['HTTP_USER_AGENT']) + if self.check_ip: + query.filter('ip', os.environ['REMOTE_ADDR']) + results = query.fetch(1) + if len(results) is 0: + return None + else: + sessionAge = datetime.datetime.now() - results[0].last_activity + if sessionAge.seconds > self.session_expire_time: + results[0].delete() + return None + return results[0] + ''' + def _get(self, keyname=None): + """ + Return all of the SessionData object data from the datastore onlye, + unless keyname is specified, in which case only that instance of + SessionData is returned. + Important: This does not interact with memcache and pulls directly + from the datastore. This also does not get items from the cookie + store. + + Args: + keyname: The keyname of the value you are trying to retrieve. + """ + if keyname != None: + return self.session.get_item(keyname) + return self.session.get_items() + """ + OLD + query = _AppEngineUtilities_SessionData.all() + query.filter('session', self.session) + if keyname != None: + query.filter('keyname =', keyname) + results = query.fetch(1000) + + if len(results) is 0: + return None + if keyname != None: + return results[0] + return results + """ + + def _validate_key(self, keyname): + """ + Validate the keyname, making sure it is set and not a reserved name. + """ + if keyname is None: + raise ValueError('You must pass a keyname for the session' + \ + ' data content.') + elif keyname in ('sid', 'flash'): + raise ValueError(keyname + ' is a reserved keyname.') + + if type(keyname) != type([str, unicode]): + return str(keyname) + return keyname + + def _put(self, keyname, value): + """ + Insert a keyname/value pair into the datastore for the session. + + Args: + keyname: The keyname of the mapping. + value: The value of the mapping. + """ + if self.writer == "datastore": + writer = _DatastoreWriter() + else: + writer = _CookieWriter() + + writer.put(keyname, value, self) + + def _delete_session(self): + """ + Delete the session and all session data. + """ + if hasattr(self, "session"): + self.session.delete() + self.cookie_vals = {} + self.cache = {} + self.output_cookie[self.cookie_name + '_data'] = \ + simplejson.dumps(self.cookie_vals) + print self.output_cookie.output() + """ + OLD + if hasattr(self, "session"): + sessiondata = self._get() + # delete from datastore + if sessiondata is not None: + for sd in sessiondata: + sd.delete() + # delete from memcache + memcache.delete('sid-'+str(self.session.key())) + # delete the session now that all items that reference it are deleted. + self.session.delete() + # unset any cookie values that may exist + self.cookie_vals = {} + self.cache = {} + self.output_cookie[self.cookie_name + '_data'] = \ + simplejson.dumps(self.cookie_vals) + print self.output_cookie.output() + """ + # if the event class has been loaded, fire off the sessionDeleted event + if 'AEU_Events' in __main__.__dict__: + __main__.AEU_Events.fire_event('sessionDelete') + + def delete(self): + """ + Delete the current session and start a new one. + + This is useful for when you need to get rid of all data tied to a + current session, such as when you are logging out a user. + """ + self._delete_session() + + @classmethod + def delete_all_sessions(cls): + """ + Deletes all sessions and session data from the data store and memcache: + + NOTE: This is not fully developed. It also will not delete any cookie + data as this does not work for each incoming request. Keep this in mind + if you are using the cookie writer. + """ + all_sessions_deleted = False + all_data_deleted = False + + while not all_sessions_deleted: + query = _AppEngineUtilities_Session.all() + results = query.fetch(75) + if len(results) is 0: + all_sessions_deleted = True + else: + for result in results: + result.delete() + + + def _clean_old_sessions(self): + """ + Delete expired sessions from the datastore. + + This is only called for CLEAN_CHECK_PERCENT percent of requests because + it could be rather intensive. + """ + duration = datetime.timedelta(seconds=self.session_expire_time) + session_age = datetime.datetime.now() - duration + query = _AppEngineUtilities_Session.all() + query.filter('last_activity <', session_age) + results = query.fetch(50) + for result in results: + """ + OLD + data_query = _AppEngineUtilities_SessionData.all() + data_query.filter('session', result) + data_results = data_query.fetch(1000) + for data_result in data_results: + data_result.delete() + memcache.delete('sid-'+str(result.key())) + """ + result.delete() + + # Implement Python container methods + + def __getitem__(self, keyname): + """ + Get item from session data. + + keyname: The keyname of the mapping. + """ + # flash messages don't go in the datastore + + if self.integrate_flash and (keyname == 'flash'): + return self.flash.msg + if keyname in self.cache: + # UNPICKLING CACHE return pickle.loads(str(self.cache[keyname])) + return self.cache[keyname] + if keyname in self.cookie_vals: + return self.cookie_vals[keyname] + if hasattr(self, "session"): + data = self._get(keyname) + if data: + #UNPICKLING CACHE self.cache[keyname] = data.content + self.cache[keyname] = pickle.loads(data.content) + return pickle.loads(data.content) + else: + raise KeyError(str(keyname)) + raise KeyError(str(keyname)) + + def __setitem__(self, keyname, value): + """ + Set item in session data. + + Args: + keyname: They keyname of the mapping. + value: The value of mapping. + """ + + if self.integrate_flash and (keyname == 'flash'): + self.flash.msg = value + else: + keyname = self._validate_key(keyname) + self.cache[keyname] = value + # self._set_memcache() # commented out because this is done in the datestore put + return self._put(keyname, value) + + def delete_item(self, keyname, throw_exception=False): + """ + Delete item from session data, ignoring exceptions if + necessary. + + Args: + keyname: The keyname of the object to delete. + throw_exception: false if exceptions are to be ignored. + Returns: + Nothing. + """ + if throw_exception: + self.__delitem__(keyname) + return None + else: + try: + self.__delitem__(keyname) + except KeyError: + return None + + def __delitem__(self, keyname): + """ + Delete item from session data. + + Args: + keyname: The keyname of the object to delete. + """ + bad_key = False + sessdata = self._get(keyname = keyname) + if sessdata is None: + bad_key = True + else: + sessdata.delete() + if keyname in self.cookie_vals: + del self.cookie_vals[keyname] + bad_key = False + self.output_cookie[self.cookie_name + '_data'] = \ + simplejson.dumps(self.cookie_vals) + print self.output_cookie.output() + if bad_key: + raise KeyError(str(keyname)) + if keyname in self.cache: + del self.cache[keyname] + + def __len__(self): + """ + Return size of session. + """ + # check memcache first + if hasattr(self, "session"): + results = self._get() + if results is not None: + return len(results) + len(self.cookie_vals) + else: + return 0 + return len(self.cookie_vals) + + def __contains__(self, keyname): + """ + Check if an item is in the session data. + + Args: + keyname: The keyname being searched. + """ + try: + r = self.__getitem__(keyname) + except KeyError: + return False + return True + + def __iter__(self): + """ + Iterate over the keys in the session data. + """ + # try memcache first + if hasattr(self, "session"): + for k in self._get(): + yield k.keyname + for k in self.cookie_vals: + yield k + + def __str__(self): + """ + Return string representation. + """ + + #if self._get(): + return '{' + ', '.join(['"%s" = "%s"' % (k, self[k]) for k in self]) + '}' + #else: + # return [] + + ''' + OLD + def _set_memcache(self): + """ + Set a memcache object with all the session data. Optionally you can + add a key and value to the memcache for put operations. + """ + # Pull directly from the datastore in order to ensure that the + # information is as up to date as possible. + if self.writer == "datastore": + data = {} + sessiondata = self._get() + if sessiondata is not None: + for sd in sessiondata: + data[sd.keyname] = pickle.loads(sd.content) + + memcache.set('sid-'+str(self.session.key()), data, \ + self.session_expire_time) + ''' + + def cycle_key(self): + """ + Changes the session id. + """ + self.sid = self.new_sid() + if len(self.session.sid) > 2: + self.session.sid.remove(self.session.sid[0]) + self.session.sid.append(self.sid) + + def flush(self): + """ + Delete's the current session, creating a new one. + """ + self._delete_session() + self.__init__() + + def no_cache_headers(self): + """ + Adds headers, avoiding any page caching in the browser. Useful for highly + dynamic sites. + """ + print "Expires: Tue, 03 Jul 2001 06:00:00 GMT" + print strftime("Last-Modified: %a, %d %b %y %H:%M:%S %Z") + print "Cache-Control: no-store, no-cache, must-revalidate, max-age=0" + print "Cache-Control: post-check=0, pre-check=0" + print "Pragma: no-cache" + + def clear(self): + """ + Remove all items + """ + sessiondata = self._get() + # delete from datastore + if sessiondata is not None: + for sd in sessiondata: + sd.delete() + # delete from memcache + self.cache = {} + self.cookie_vals = {} + self.output_cookie[self.cookie_name + '_data'] = \ + simplejson.dumps(self.cookie_vals) + print self.output_cookie.output() + + def has_key(self, keyname): + """ + Equivalent to k in a, use that form in new code + """ + return self.__contains__(keyname) + + def items(self): + """ + A copy of list of (key, value) pairs + """ + op = {} + for k in self: + op[k] = self[k] + return op + + def keys(self): + """ + List of keys. + """ + l = [] + for k in self: + l.append(k) + return l + + def update(*dicts): + """ + Updates with key/value pairs from b, overwriting existing keys, returns None + """ + for dict in dicts: + for k in dict: + self._put(k, dict[k]) + return None + + def values(self): + """ + A copy list of values. + """ + v = [] + for k in self: + v.append(self[k]) + return v + + def get(self, keyname, default = None): + """ + a[k] if k in a, else x + """ + try: + return self.__getitem__(keyname) + except KeyError: + if default is not None: + return default + return None + + def setdefault(self, keyname, default = None): + """ + a[k] if k in a, else x (also setting it) + """ + try: + return self.__getitem__(keyname) + except KeyError: + if default is not None: + self.__setitem__(keyname, default) + return default + return None + + @classmethod + def check_token(cls, cookie_name=COOKIE_NAME, delete_invalid=True): + """ + Retrieves the token from a cookie and validates that it is + a valid token for an existing cookie. Cookie validation is based + on the token existing on a session that has not expired. + + This is useful for determining if datastore or cookie writer + should be used in hybrid implementations. + + Args: + cookie_name: Name of the cookie to check for a token. + delete_invalid: If the token is not valid, delete the session + cookie, to avoid datastore queries on future + requests. + + Returns True/False + + NOTE: TODO This currently only works when the datastore is working, which of course + is pointless for applications using the django middleware. This needs to be resolved + before merging back into the main project. + """ + + string_cookie = os.environ.get('HTTP_COOKIE', '') + cookie = Cookie.SimpleCookie() + cookie.load(string_cookie) + if cookie.has_key(cookie_name): + query = _AppEngineUtilities_Session.all() + query.filter('sid', cookie[cookie_name].value) + results = query.fetch(1) + if len(results) > 0: + return True + else: + if delete_invalid: + output_cookie = Cookie.SimpleCookie() + output_cookie[cookie_name] = cookie[cookie_name] + output_cookie[cookie_name]['expires'] = 0 + print output_cookie.output() + return False diff -Nru python-gdata-1.2.4/samples/oauth/oauth_on_appengine/app.yaml python-gdata-2.0.8/samples/oauth/oauth_on_appengine/app.yaml --- python-gdata-1.2.4/samples/oauth/oauth_on_appengine/app.yaml 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/samples/oauth/oauth_on_appengine/app.yaml 2009-06-09 00:43:34.000000000 +0100 @@ -0,0 +1,17 @@ +application: oauth +version: 1 +runtime: python +api_version: 1 + +handlers: +- url: /css + static_dir: css + +- url: /images + static_dir: images + +- url: /js + static_dir: js + +- url: /.* + script: main_hmac.py diff -Nru python-gdata-1.2.4/samples/oauth/oauth_on_appengine/css/index.css python-gdata-2.0.8/samples/oauth/oauth_on_appengine/css/index.css --- python-gdata-1.2.4/samples/oauth/oauth_on_appengine/css/index.css 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/samples/oauth/oauth_on_appengine/css/index.css 2009-06-09 00:43:33.000000000 +0100 @@ -0,0 +1,91 @@ +* { + margin:0; + padding:0; + font-family:'Myriad Pro', 'Tw Cen MT', Arial, Verdana; +} +body { + padding-left:15px; + padding-right:15px; +} +a { + color:#6699ff; + text-decoration:none; +} +a:hover { + color:#666666; + text-decoration:underline; +} +table#fill { + width:100%; + height:100%; + text-align:center; +} +.button { + outline: none; + cursor: pointer; + white-space: nowrap; + vertical-align: middle; /* or top */ + display: -moz-inline-box; + display: inline-block; + overflow: visible; /* IE6 form button fix */ + font-weight:bold; + font-size:20px; + background-color:#a3c2ff; + padding:2.5em 1em; + /*height:125px;*/ +} +.button:hover { + /*background-color:#6699ff;*/ + text-decoration:none; +} +#loading { + font-weight:bold; + text-align:center; + color:#fff; + background-color:red; + width:150px; + padding:5px 10px 5px 10px; + display:none; +} +#header { + color:#666666; + padding-bottom:10px; + margin-bottom:1em; + border-bottom:1px solid #666666; + height:35px; +} +#header table { + width:100%; +} +#oauth_stats { + margin-bottom:1em; +} +#oauth_stats table td { + vertical-align:top; +} +#data { + clear:both; + border:1px solid #ccc; + width:600px; + height:500px; + margin-bottom:1em; + overflow:auto; + text-align:left; +} +#data li { + padding:10px 10px 10px 20px; + border-bottom:1px solid #eee; + cursor:hand; +} +#data li:hover { + background-color:#fffccc; +} +.info_box { + display:none; + margin-top:10px; +} +.right_margin { + clear:both; + width:125px; + float:left; +} \ No newline at end of file Binary files /tmp/loBuQrup0L/python-gdata-1.2.4/samples/oauth/oauth_on_appengine/images/icon_document.gif and /tmp/agbj2XxMCT/python-gdata-2.0.8/samples/oauth/oauth_on_appengine/images/icon_document.gif differ Binary files /tmp/loBuQrup0L/python-gdata-1.2.4/samples/oauth/oauth_on_appengine/images/icon_folder.gif and /tmp/agbj2XxMCT/python-gdata-2.0.8/samples/oauth/oauth_on_appengine/images/icon_folder.gif differ Binary files /tmp/loBuQrup0L/python-gdata-1.2.4/samples/oauth/oauth_on_appengine/images/icon_pdf.gif and /tmp/agbj2XxMCT/python-gdata-2.0.8/samples/oauth/oauth_on_appengine/images/icon_pdf.gif differ Binary files /tmp/loBuQrup0L/python-gdata-1.2.4/samples/oauth/oauth_on_appengine/images/icon_presentation.gif and /tmp/agbj2XxMCT/python-gdata-2.0.8/samples/oauth/oauth_on_appengine/images/icon_presentation.gif differ Binary files /tmp/loBuQrup0L/python-gdata-1.2.4/samples/oauth/oauth_on_appengine/images/icon_spreadsheet.gif and /tmp/agbj2XxMCT/python-gdata-2.0.8/samples/oauth/oauth_on_appengine/images/icon_spreadsheet.gif differ Binary files /tmp/loBuQrup0L/python-gdata-1.2.4/samples/oauth/oauth_on_appengine/images/icon_starred.png and /tmp/agbj2XxMCT/python-gdata-2.0.8/samples/oauth/oauth_on_appengine/images/icon_starred.png differ Binary files /tmp/loBuQrup0L/python-gdata-1.2.4/samples/oauth/oauth_on_appengine/images/icon_trashed.png and /tmp/agbj2XxMCT/python-gdata-2.0.8/samples/oauth/oauth_on_appengine/images/icon_trashed.png differ diff -Nru python-gdata-1.2.4/samples/oauth/oauth_on_appengine/index.html python-gdata-2.0.8/samples/oauth/oauth_on_appengine/index.html --- python-gdata-1.2.4/samples/oauth/oauth_on_appengine/index.html 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/samples/oauth/oauth_on_appengine/index.html 2009-06-09 00:43:34.000000000 +0100 @@ -0,0 +1,131 @@ + + + + + + + + + + + + + + +{% if revoke_token_link %} +
+

OAuth Stats:

+ + + + +
oauth_signature_method:{{ sig_method }}
oauth_consumer_key:{{ consumer.key }}
oauth_token:{{ oauth_token.key }}
( oauth_token_secret: {{ oauth_token.secret }} )
+
+ +
+toggle all +
+ + +
+ +{% else %} +
+
+

+ Use my Google Apps domain:   +
+
+{% endif %} + + + \ No newline at end of file diff -Nru python-gdata-1.2.4/samples/oauth/oauth_on_appengine/index.yaml python-gdata-2.0.8/samples/oauth/oauth_on_appengine/index.yaml --- python-gdata-1.2.4/samples/oauth/oauth_on_appengine/index.yaml 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/samples/oauth/oauth_on_appengine/index.yaml 2009-06-09 00:43:34.000000000 +0100 @@ -0,0 +1,11 @@ +indexes: + +# AUTOGENERATED + +# This index.yaml is automatically updated whenever the dev_appserver +# detects that a new type of query is run. If you want to manage the +# index.yaml file manually, remove the above marker line (the line +# saying "# AUTOGENERATED"). If you want to manage some indexes +# manually, move them above the marker line. The index.yaml file is +# automatically uploaded to the admin console when you next deploy +# your application using appcfg.py. diff -Nru python-gdata-1.2.4/samples/oauth/oauth_on_appengine/js/jquery.corners.min.js python-gdata-2.0.8/samples/oauth/oauth_on_appengine/js/jquery.corners.min.js --- python-gdata-1.2.4/samples/oauth/oauth_on_appengine/js/jquery.corners.min.js 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/samples/oauth/oauth_on_appengine/js/jquery.corners.min.js 2009-06-09 00:43:34.000000000 +0100 @@ -0,0 +1,7 @@ +/* + * jQuery Corners 0.3 + * Copyright (c) 2008 David Turnbull, Steven Wittens + * Dual licensed under the MIT (MIT-LICENSE.txt) + * and GPL (GPL-LICENSE.txt) licenses. + */ +jQuery.fn.corners=function(C){var N="rounded_by_jQuery_corners";var V=B(C);var F=false;try{F=(document.body.style.WebkitBorderRadius!==undefined);var Y=navigator.userAgent.indexOf("Chrome");if(Y>=0){F=false}}catch(E){}var W=false;try{W=(document.body.style.MozBorderRadius!==undefined);var Y=navigator.userAgent.indexOf("Firefox");if(Y>=0&&parseInt(navigator.userAgent.substring(Y+8))<3){W=false}}catch(E){}return this.each(function(b,h){$e=jQuery(h);if($e.hasClass(N)){return }$e.addClass(N);var a=/{(.*)}/.exec(h.className);var c=a?B(a[1],V):V;var j=h.nodeName.toLowerCase();if(j=="input"){h=O(h)}if(F&&c.webkit){K(h,c)}else{if(W&&c.mozilla&&(c.sizex==c.sizey)){M(h,c)}else{var d=D(h.parentNode);var f=D(h);switch(j){case"a":case"input":Z(h,c,d,f);break;default:R(h,c,d,f);break}}}});function K(d,c){var a=""+c.sizex+"px "+c.sizey+"px";var b=jQuery(d);if(c.tl){b.css("WebkitBorderTopLeftRadius",a)}if(c.tr){b.css("WebkitBorderTopRightRadius",a)}if(c.bl){b.css("WebkitBorderBottomLeftRadius",a)}if(c.br){b.css("WebkitBorderBottomRightRadius",a)}}function M(d,c){var a=""+c.sizex+"px";var b=jQuery(d);if(c.tl){b.css("-moz-border-radius-topleft",a)}if(c.tr){b.css("-moz-border-radius-topright",a)}if(c.bl){b.css("-moz-border-radius-bottomleft",a)}if(c.br){b.css("-moz-border-radius-bottomright",a)}}function Z(k,n,l,a){var m=S("table");var i=S("tbody");m.appendChild(i);var j=S("tr");var d=S("td","top");j.appendChild(d);var h=S("tr");var c=T(k,n,S("td"));h.appendChild(c);var f=S("tr");var b=S("td","bottom");f.appendChild(b);if(n.tl||n.tr){i.appendChild(j);X(d,n,l,a,true)}i.appendChild(h);if(n.bl||n.br){i.appendChild(f);X(b,n,l,a,false)}k.appendChild(m);if(jQuery.browser.msie){m.onclick=Q}k.style.overflow="hidden"}function Q(){if(!this.parentNode.onclick){this.parentNode.click()}}function O(c){var b=document.createElement("a");b.id=c.id;b.className=c.className;if(c.onclick){b.href="javascript:";b.onclick=c.onclick}else{jQuery(c).parent("form").each(function(){b.href=this.action});b.onclick=I}var a=document.createTextNode(c.value);b.appendChild(a);c.parentNode.replaceChild(b,c);return b}function I(){jQuery(this).parent("form").each(function(){this.submit()});return false}function R(d,a,b,c){var f=T(d,a,document.createElement("div"));d.appendChild(f);if(a.tl||a.tr){X(d,a,b,c,true)}if(a.bl||a.br){X(d,a,b,c,false)}}function T(j,i,k){var b=jQuery(j);var l;while(l=j.firstChild){k.appendChild(l)}if(j.style.height){var f=parseInt(b.css("height"));k.style.height=f+"px";f+=parseInt(b.css("padding-top"))+parseInt(b.css("padding-bottom"));j.style.height=f+"px"}if(j.style.width){var a=parseInt(b.css("width"));k.style.width=a+"px";a+=parseInt(b.css("padding-left"))+parseInt(b.css("padding-right"));j.style.width=a+"px"}k.style.paddingLeft=b.css("padding-left");k.style.paddingRight=b.css("padding-right");if(i.tl||i.tr){k.style.paddingTop=U(j,i,b.css("padding-top"),true)}else{k.style.paddingTop=b.css("padding-top")}if(i.bl||i.br){k.style.paddingBottom=U(j,i,b.css("padding-bottom"),false)}else{k.style.paddingBottom=b.css("padding-bottom")}j.style.padding=0;return k}function U(f,a,d,c){if(d.indexOf("px")<0){try{console.error("%s padding not in pixels",(c?"top":"bottom"),f)}catch(b){}d=a.sizey+"px"}d=parseInt(d);if(d-a.sizey<0){try{console.error("%s padding is %ipx for %ipx corner:",(c?"top":"bottom"),d,a.sizey,f)}catch(b){}d=a.sizey}return d-a.sizey+"px"}function S(b,a){var c=document.createElement(b);c.style.border="none";c.style.borderCollapse="collapse";c.style.borderSpacing=0;c.style.padding=0;c.style.margin=0;if(a){c.style.verticalAlign=a}return c}function D(b){try{var d=jQuery.css(b,"background-color");if(d.match(/^(transparent|rgba\(0,\s*0,\s*0,\s*0\))$/i)&&b.parentNode){return D(b.parentNode)}if(d==null){return"#ffffff"}if(d.indexOf("rgb")>-1){d=A(d)}if(d.length==4){d=L(d)}return d}catch(a){return"#ffffff"}}function L(a){return"#"+a.substring(1,2)+a.substring(1,2)+a.substring(2,3)+a.substring(2,3)+a.substring(3,4)+a.substring(3,4)}function A(h){var a=255;var d="";var b;var e=/([0-9]+)[, ]+([0-9]+)[, ]+([0-9]+)/;var f=e.exec(h);for(b=1;b<4;b++){d+=("0"+parseInt(f[b]).toString(16)).slice(-2)}return"#"+d}function B(b,d){var b=b||"";var c={sizex:5,sizey:5,tl:false,tr:false,bl:false,br:false,webkit:true,mozilla:true,transparent:false};if(d){c.sizex=d.sizex;c.sizey=d.sizey;c.webkit=d.webkit;c.transparent=d.transparent;c.mozilla=d.mozilla}var a=false;var e=false;jQuery.each(b.split(" "),function(f,j){j=j.toLowerCase();var h=parseInt(j);if(h>0&&j==h+"px"){c.sizey=h;if(!a){c.sizex=h}a=true}else{switch(j){case"no-native":c.webkit=c.mozilla=false;break;case"webkit":c.webkit=true;break;case"no-webkit":c.webkit=false;break;case"mozilla":c.mozilla=true;break;case"no-mozilla":c.mozilla=false;break;case"anti-alias":c.transparent=false;break;case"transparent":c.transparent=true;break;case"top":e=c.tl=c.tr=true;break;case"right":e=c.tr=c.br=true;break;case"bottom":e=c.bl=c.br=true;break;case"left":e=c.tl=c.bl=true;break;case"top-left":e=c.tl=true;break;case"top-right":e=c.tr=true;break;case"bottom-left":e=c.bl=true;break;case"bottom-right":e=c.br=true;break}}});if(!e){if(!d){c.tl=c.tr=c.bl=c.br=true}else{c.tl=d.tl;c.tr=d.tr;c.bl=d.bl;c.br=d.br}}return c}function P(f,d,h){var e=Array(parseInt("0x"+f.substring(1,3)),parseInt("0x"+f.substring(3,5)),parseInt("0x"+f.substring(5,7)));var c=Array(parseInt("0x"+d.substring(1,3)),parseInt("0x"+d.substring(3,5)),parseInt("0x"+d.substring(5,7)));r="0"+Math.round(e[0]+(c[0]-e[0])*h).toString(16);g="0"+Math.round(e[1]+(c[1]-e[1])*h).toString(16);d="0"+Math.round(e[2]+(c[2]-e[2])*h).toString(16);return"#"+r.substring(r.length-2)+g.substring(g.length-2)+d.substring(d.length-2)}function X(f,a,b,d,c){if(a.transparent){G(f,a,b,c)}else{J(f,a,b,d,c)}}function J(k,z,p,a,n){var h,f;var l=document.createElement("div");l.style.fontSize="1px";l.style.backgroundColor=p;var b=0;for(h=1;h<=z.sizey;h++){var u,t,q;arc=Math.sqrt(1-Math.pow(1-h/z.sizey,2))*z.sizex;var c=z.sizex-Math.ceil(arc);var w=Math.floor(b);var v=z.sizex-c-w;var o=document.createElement("div");var m=l;o.style.margin="0px "+c+"px";o.style.height="1px";o.style.overflow="hidden";for(f=1;f<=v;f++){if(f==1){if(f==v){u=((arc+b)*0.5)-w}else{t=Math.sqrt(1-Math.pow(1-(c+1)/z.sizex,2))*z.sizey;u=(t-(z.sizey-h))*(arc-w-v+1)*0.5}}else{if(f==v){t=Math.sqrt(1-Math.pow((z.sizex-c-f+1)/z.sizex,2))*z.sizey;u=1-(1-(t-(z.sizey-h)))*(1-(b-w))*0.5}else{q=Math.sqrt(1-Math.pow((z.sizex-c-f)/z.sizex,2))*z.sizey;t=Math.sqrt(1-Math.pow((z.sizex-c-f+1)/z.sizex,2))*z.sizey;u=((t+q)*0.5)-(z.sizey-h)}}H(z,o,m,n,P(p,a,u));m=o;var o=m.cloneNode(false);o.style.margin="0px 1px"}H(z,o,m,n,a);b=arc}if(n){k.insertBefore(l,k.firstChild)}else{k.appendChild(l)}}function H(c,a,e,d,b){if(d&&!c.tl){a.style.marginLeft=0}if(d&&!c.tr){a.style.marginRight=0}if(!d&&!c.bl){a.style.marginLeft=0}if(!d&&!c.br){a.style.marginRight=0}a.style.backgroundColor=b;if(d){e.appendChild(a)}else{e.insertBefore(a,e.firstChild)}}function G(c,o,l,h){var f=document.createElement("div");f.style.fontSize="1px";var a=document.createElement("div");a.style.overflow="hidden";a.style.height="1px";a.style.borderColor=l;a.style.borderStyle="none solid";var m=o.sizex-1;var j=o.sizey-1;if(!j){j=1}for(var b=0;b Settings' + print '================================' + print '\n'.join(SETTINGS_MENU) + print '================================\n' + + def GetMenuChoice(self, menu): + """Retrieves the menu selection from the user. + + Args: + menu: list The menu to get a selection from. + + Returns: + The integer of the menu item chosen by the user. + """ + max_choice = len(menu) + while True: + user_input = raw_input(': ') + + try: + num = int(user_input) + except ValueError: + continue + + if num <= max_choice and num > 0: + return num + + def PromptSiteName(self): + site_name = '' + while not site_name: + site_name = raw_input('site name: ') + if not site_name: + print 'Please enter the name of your Google Site.' + return site_name + + def PromptDomain(self): + return raw_input(('If your Site is hosted on a Google Apps domain, ' + 'enter it (e.g. example.com): ')) or 'site' + + def GetChoiceSelection(self, feed, message): + for i, entry in enumerate(feed.entry): + print '%d.) %s' % (i + 1, entry.title.text) + choice = 0 + while not choice or not 0 <= choice <= len(feed.entry): + choice = int(raw_input(message)) + print + return choice + + def PrintEntry(self, entry): + print '%s [%s]' % (entry.title.text, entry.Kind()) + if entry.page_name: + print ' page name:\t%s' % entry.page_name.text + if entry.content: + print ' content\t%s...' % str(entry.content.html)[0:100] + + def PrintListItem(self, entry): + print '%s [%s]' % (entry.title.text, entry.Kind()) + for col in entry.field: + print ' %s %s\t%s' % (col.index, col.name, col.text) + + def PrintListPage(self, entry): + print '%s [%s]' % (entry.title.text, entry.Kind()) + for col in entry.data.column: + print ' %s %s' % (col.index, col.name) + + def PrintFileCabinetPage(self, entry): + print '%s [%s]' % (entry.title.text, entry.Kind()) + print ' page name:\t%s' % entry.page_name.text + print ' content\t%s...' % str(entry.content.html)[0:100] + + def PrintAttachment(self, entry): + print '%s [%s]' % (entry.title.text, entry.Kind()) + if entry.summary is not None: + print ' description:\t%s' % entry.summary.text + print ' content\t%s, %s' % (entry.content.type, entry.content.src) + + def PrintWebAttachment(self, entry): + print '%s [%s]' % (entry.title.text, entry.Kind()) + if entry.summary.text is not None: + print ' description:\t%s' % entry.summary.text + print ' content src\t%s' % entry.content.src + + def Run(self): + """Executes the demo application.""" + + try: + while True: + self.PrintMainMenu() + choice = self.GetMenuChoice(MAIN_MENU) + + if choice == 1: + kind_choice = raw_input('What kind (all|%s)?: ' % '|'.join( + gdata.sites.data.SUPPORT_KINDS)) + if kind_choice in gdata.sites.data.SUPPORT_KINDS: + uri = '%s?kind=%s' % (self.client.make_content_feed_uri(), + kind_choice) + feed = self.client.GetContentFeed(uri=uri) + else: + feed = self.client.GetContentFeed() + + print "\nFetching content feed of '%s'...\n" % self.client.site + + for entry in feed.entry: + kind = entry.Kind() + + if kind == 'attachment': + self.PrintAttachment(entry) + elif kind == 'webattachment': + self.PrintWebAttachment(entry) + elif kind == 'filecabinet': + self.PrintFileCabinetPage(entry) + elif kind == 'listitem': + self.PrintListItem(entry) + elif kind == 'listpage': + self.PrintListPage(entry) + else: + self.PrintEntry(entry) + + print ' revision:\t%s' % entry.revision.text + print ' updated:\t%s' % entry.updated.text + + parent_link = entry.FindParentLink() + if parent_link: + print ' parent link:\t%s' % parent_link + + if entry.GetAlternateLink(): + print ' view in Sites:\t%s' % entry.GetAlternateLink().href + + if entry.feed_link: + print ' feed of items:\t%s' % entry.feed_link.href + + if entry.IsDeleted(): + print ' deleted:\t%s' % entry.IsDeleted() + + if entry.in_reply_to: + print ' in reply to:\t%s' % entry.in_reply_to.href + + print + + elif choice == 2: + print "\nFetching activity feed of '%s'..." % self.client.site + feed = self.client.GetActivityFeed() + for entry in feed.entry: + print ' %s [%s on %s]' % (entry.title.text, entry.Kind(), + entry.updated.text) + + elif choice == 3: + print "\nFetching content feed of '%s'...\n" % self.client.site + + feed = self.client.GetContentFeed() + try: + selection = self.GetChoiceSelection( + feed, 'Select a page to fetch revisions for: ') + except TypeError: + continue + except ValueError: + continue + + feed = self.client.GetRevisionFeed( + feed.entry[selection - 1].GetNodeId()) + for entry in feed.entry: + print entry.title.text + print ' new version on:\t%s' % entry.updated.text + print ' view changes:\t%s' % entry.GetAlternateLink().href + print ' current version:\t%s...' % str(entry.content.html)[0:100] + print + + elif choice == 4: + print "\nFetching content feed of '%s'...\n" % self.client.site + + feed = self.client.GetContentFeed() + try: + selection = self.GetChoiceSelection( + feed, 'Select a parent to upload to (or hit ENTER for none): ') + except ValueError: + selection = None + + page_title = raw_input('Enter a page title: ') + + parent = None + if selection is not None: + parent = feed.entry[selection - 1] + + new_entry = self.client.CreatePage( + 'webpage', page_title, 'Your html content', + parent=parent) + if new_entry.GetAlternateLink(): + print 'Created. View it at: %s' % new_entry.GetAlternateLink().href + + elif choice == 5: + print "\nFetching filecabinets on '%s'...\n" % self.client.site + + uri = '%s?kind=%s' % (self.client.make_content_feed_uri(), + 'filecabinet') + feed = self.client.GetContentFeed(uri=uri) + + selection = self.GetChoiceSelection( + feed, 'Select a filecabinet to create the web attachment on: ') + + url = raw_input('Enter the URL of the attachment: ') + content_type = raw_input("Enter the attachment's mime type: ") + title = raw_input('Enter a title for the web attachment: ') + description = raw_input('Enter a description: ') + + parent_entry = None + if selection is not None: + parent_entry = feed.entry[selection - 1] + + self.client.CreateWebAttachment(url, content_type, title, + parent_entry, description=description) + print 'Created!' + + elif choice == 6: + print "\nFetching filecainets on '%s'...\n" % self.client.site + + uri = '%s?kind=%s' % (self.client.make_content_feed_uri(), + 'filecabinet') + feed = self.client.GetContentFeed(uri=uri) + + selection = self.GetChoiceSelection( + feed, 'Select a filecabinet to upload to: ') + + filepath = raw_input('Enter a filename: ') + page_title = raw_input('Enter a title for the file: ') + description = raw_input('Enter a description: ') + + filename = os.path.basename(filepath) + file_ex = filename[filename.rfind('.'):] + if not file_ex in mimetypes.types_map: + content_type = raw_input( + 'Unrecognized file extension. Please enter the mime type: ') + else: + content_type = mimetypes.types_map[file_ex] + + entry = None + if selection is not None: + entry = feed.entry[selection - 1] + + new_entry = self.client.UploadAttachment( + filepath, entry, content_type=content_type, title=page_title, + description=description) + print 'Uploaded. View it at: %s' % new_entry.GetAlternateLink().href + + elif choice == 7: + print "\nFetching all attachments on '%s'...\n" % self.client.site + + uri = '%s?kind=%s' % (self.client.make_content_feed_uri(), + 'attachment') + feed = self.client.GetContentFeed(uri=uri) + + selection = self.GetChoiceSelection( + feed, 'Select an attachment to download: ') + + filepath = raw_input('Save as: ') + + entry = None + if selection is not None: + entry = feed.entry[selection - 1] + + self.client.DownloadAttachment(entry, filepath) + print 'Downloaded.' + + elif choice == 8: + print "\nFetching content feed of '%s'...\n" % self.client.site + + feed = self.client.GetContentFeed() + selection = self.GetChoiceSelection(feed, 'Select a page to delete: ') + + entry = None + if selection is not None: + entry = feed.entry[selection - 1] + + self.client.Delete(entry) + print 'Removed!' + + elif choice == 9: + print ('\nFetching your list of sites for domain: %s...\n' + % self.client.domain) + + feed = self.client.GetSiteFeed() + for entry in feed.entry: + print entry.title.text + print ' site name: ' + entry.site_name.text + if entry.summary.text: + print ' summary: ' + entry.summary.text + if entry.FindSourceLink(): + print ' copied from site: ' + entry.FindSourceLink() + print ' acl feed: %s\n' % entry.FindAclLink() + + elif choice == 10: + title = raw_input('Enter a title: ') + summary = raw_input('Enter a description: ') + theme = raw_input('Theme name (ex. "default"): ') + + new_entry = self.client.CreateSite( + title, description=summary, theme=theme) + print 'Site created! View it at: ' + new_entry.GetAlternateLink().href + + elif choice == 11: + print "\nFetching acl permissions of '%s'...\n" % self.client.site + + feed = self.client.GetAclFeed() + for entry in feed.entry: + print '%s (%s) - %s' % (entry.scope.value, entry.scope.type, + entry.role.value) + + elif choice == 12: + self.PrintSettingsMenu() + settings_choice = self.GetMenuChoice(SETTINGS_MENU) + + if settings_choice == 1: + self.client.site = self.PromptSiteName() + elif settings_choice == 2: + self.client.domain = self.PromptDomain() + + elif choice == 13: + print 'Later!\n' + return + + except gdata.client.RequestError, error: + print error + except KeyboardInterrupt: + return + + +def main(): + """The main function runs the SitesExample application.""" + + print 'NOTE: Please run these tests only with a test account.\n' + + try: + opts, args = getopt.getopt(sys.argv[1:], '', + ['site=', 'domain=', 'ssl', 'debug']) + except getopt.error, msg: + print """python sites_sample.py --site [sitename] + --domain [domain or "site"] + --ssl [enables https if set] + --debug [prints debug info if set]""" + sys.exit(2) + + site = None + domain = None + debug = False + ssl = False + + for option, arg in opts: + if option == '--site': + site = arg + elif option == '--domain': + domain = arg + elif option == '--ssl': + ssl = True + elif option == '--debug': + debug = True + + sample = SitesExample(site, domain, ssl=ssl, debug=debug) + sample.Run() + + +if __name__ == '__main__': + main() diff -Nru python-gdata-1.2.4/setup.py python-gdata-2.0.8/setup.py --- python-gdata-1.2.4/setup.py 2009-01-22 19:03:45.000000000 +0000 +++ python-gdata-2.0.8/setup.py 2010-02-26 21:40:42.000000000 +0000 @@ -1,6 +1,6 @@ #!/usr/bin/python # -# Copyright (C) 2008 Google Inc. +# Copyright (C) 2009 Google Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -15,12 +15,17 @@ # limitations under the License. +import sys from distutils.core import setup +required = [] + +if sys.version_info[:3] < (2, 5, 0): + required.append('elementtree') setup( - name='gdata.py', - version='1.2.4', + name='gdata', + version='2.0.8', description='Python client library for Google data APIs', long_description = """\ The Google data Python client library makes it easy to interact with @@ -39,25 +44,36 @@ - YouTube Data API - Google Webmaster Tools Data API - Blogger Data API +- Google Health API +- Google Book Search API +- Google Analytics API +- Google Finance API +- Google Maps Data API +- Google Sites Data API - core Google data API functionality The core Google data code provides sufficient functionality to use this library with any Google data API (even if a module hasn't been written for -it yet). For example, this client can be used with the Notebook API and the -Google Health API. This library may also be used with any Atom Publishing -Protocol service. +it yet). For example, this client can be used with the Notebook API. This +library may also be used with any Atom Publishing Protocol service (AtomPub). """, author='Jeffrey Scudder', - author_email='api.jscudder@gmail.com', + author_email='j.s@google.com', license='Apache 2.0', url='http://code.google.com/p/gdata-python-client/', packages=['atom', 'gdata', 'gdata.calendar', 'gdata.base', 'gdata.spreadsheet', 'gdata.apps', 'gdata.apps.emailsettings', - 'gdata.apps.migration', 'gdata.docs', 'gdata.codesearch', + 'gdata.apps.migration', 'gdata.apps.groups', + 'gdata.docs', 'gdata.codesearch', 'gdata.books', 'gdata.photos', 'gdata.exif', 'gdata.geo', 'gdata.media', 'gdata.contacts', 'gdata.youtube', 'gdata.webmastertools', 'gdata.blogger', 'gdata.alt', 'gdata.oauth', 'gdata.tlslite', 'gdata.Crypto', 'gdata.Crypto.Cipher', 'gdata.Crypto.Hash', 'gdata.Crypto.Protocol', 'gdata.Crypto.PublicKey', 'gdata.Crypto.Util', - 'gdata.tlslite.utils', 'gdata.tlslite.integration'], - package_dir = {'gdata':'src/gdata', 'atom':'src/atom'} + 'gdata.tlslite.utils', 'gdata.tlslite.integration', 'gdata.health', + 'gdata.analytics', 'gdata.finance', 'gdata.spreadsheets', 'gdata.maps', + 'gdata.sites', 'gdata.apps.adminsettings', 'gdata.projecthosting', + 'gdata.dublincore', 'gdata.acl', 'gdata.notebook', 'gdata.opensearch', + 'gdata.calendar_resource'], + package_dir = {'gdata':'src/gdata', 'atom':'src/atom'}, + install_requires=required ) diff -Nru python-gdata-1.2.4/src/atom/auth.py python-gdata-2.0.8/src/atom/auth.py --- python-gdata-1.2.4/src/atom/auth.py 2009-01-12 23:52:51.000000000 +0000 +++ python-gdata-2.0.8/src/atom/auth.py 2009-06-12 21:43:10.000000000 +0100 @@ -35,3 +35,9 @@ http_request.headers['Authorization'] = 'Basic %s' % self.basic_cookie ModifyRequest = modify_request + + +class NoAuth(object): + + def modify_request(self, http_request): + pass diff -Nru python-gdata-1.2.4/src/atom/client.py python-gdata-2.0.8/src/atom/client.py --- python-gdata-1.2.4/src/atom/client.py 2009-01-15 00:49:59.000000000 +0000 +++ python-gdata-2.0.8/src/atom/client.py 2010-02-26 21:41:07.000000000 +0000 @@ -25,16 +25,42 @@ import atom.http_core +class Error(Exception): + pass + + +class MissingHost(Error): + pass + + class AtomPubClient(object): host = None auth_token = None + ssl = False # Whether to force all requests over https + + def __init__(self, http_client=None, host=None, + auth_token=None, source=None, **kwargs): + """Creates a new AtomPubClient instance. - def __init__(self, http_client=None, host=None, auth_token=None, **kwargs): - self.http_client = http_client or atom.http_core.HttpClient() + Args: + source: The name of your application. + http_client: An object capable of performing HTTP requests through a + request method. This object is used to perform the request + when the AtomPubClient's request method is called. Used to + allow HTTP requests to be directed to a mock server, or use + an alternate library instead of the default of httplib to + make HTTP requests. + host: str The default host name to use if a host is not specified in the + requested URI. + auth_token: An object which sets the HTTP Authorization header when its + modify_request method is called. + """ + self.http_client = http_client or atom.http_core.ProxiedHttpClient() if host is not None: self.host = host if auth_token is not None: self.auth_token = auth_token + self.source = source def request(self, method=None, uri=None, auth_token=None, http_request=None, **kwargs): @@ -45,21 +71,20 @@ Args: method: The HTTP method as a string, usually one of 'GET', 'POST', 'PUT', or 'DELETE' - uri: The URI desired as a string or atom.http_core.Uri. - http_request: + uri: The URI desired as a string or atom.http_core.Uri. + http_request: auth_token: An authorization token object whose modify_request method sets the HTTP Authorization header. + + Returns: + The results of calling self.http_client.request. With the default + http_client, this is an HTTP response object. """ - if http_request is None: - http_request = atom.http_core.HttpRequest() - # If the http_request didn't specify the target host, use the client's - # default host (if set). - if self.host is not None and http_request.host is None: - http_request.host = self.host # Modify the request based on the AtomPubClient settings and parameters # passed in to the request. + http_request = self.modify_request(http_request) if isinstance(uri, (str, unicode)): - uri = atom.http_core.parse_uri(uri) + uri = atom.http_core.Uri.parse_uri(uri) if uri is not None: uri.modify_request(http_request) if isinstance(method, (str, unicode)): @@ -70,42 +95,88 @@ if value is not None: value.modify_request(http_request) # Default to an http request if the protocol scheme is not set. - if http_request.scheme is None: - http_request.scheme = 'http' + if http_request.uri.scheme is None: + http_request.uri.scheme = 'http' + # Override scheme. Force requests over https. + if self.ssl: + http_request.uri.scheme = 'https' + if http_request.uri.path is None: + http_request.uri.path = '/' # Add the Authorization header at the very end. The Authorization header # value may need to be calculated using information in the request. if auth_token: auth_token.modify_request(http_request) elif self.auth_token: self.auth_token.modify_request(http_request) - # Perform the fully specified request using the http_client instance. + # Check to make sure there is a host in the http_request. + if http_request.uri.host is None: + raise MissingHost('No host provided in request %s %s' % ( + http_request.method, str(http_request.uri))) + # Perform the fully specified request using the http_client instance. # Sends the request to the server and returns the server's response. return self.http_client.request(http_request) Request = request def get(self, uri=None, auth_token=None, http_request=None, **kwargs): - return self.request(method='GET', uri=uri, auth_token=auth_token, + """Performs a request using the GET method, returns an HTTP response.""" + return self.request(method='GET', uri=uri, auth_token=auth_token, http_request=http_request, **kwargs) Get = get - def post(self, uri=None, data=None, auth_token=None, http_request=None, + def post(self, uri=None, data=None, auth_token=None, http_request=None, **kwargs): - return self.request(method='POST', uri=uri, auth_token=auth_token, + """Sends data using the POST method, returns an HTTP response.""" + return self.request(method='POST', uri=uri, auth_token=auth_token, http_request=http_request, data=data, **kwargs) Post = post - def put(self, uri=None, data=None, auth_token=None, http_request=None, + def put(self, uri=None, data=None, auth_token=None, http_request=None, **kwargs): - return self.request(method='PUT', uri=uri, auth_token=auth_token, + """Sends data using the PUT method, returns an HTTP response.""" + return self.request(method='PUT', uri=uri, auth_token=auth_token, http_request=http_request, data=data, **kwargs) Put = put def delete(self, uri=None, auth_token=None, http_request=None, **kwargs): - return self.request(method='DELETE', uri=uri, auth_token=auth_token, + """Performs a request using the DELETE method, returns an HTTP response.""" + return self.request(method='DELETE', uri=uri, auth_token=auth_token, http_request=http_request, **kwargs) Delete = delete + + def modify_request(self, http_request): + """Changes the HTTP request before sending it to the server. + + Sets the User-Agent HTTP header and fills in the HTTP host portion + of the URL if one was not included in the request (for this it uses + the self.host member if one is set). This method is called in + self.request. + + Args: + http_request: An atom.http_core.HttpRequest() (optional) If one is + not provided, a new HttpRequest is instantiated. + + Returns: + An atom.http_core.HttpRequest() with the User-Agent header set and + if this client has a value in its host member, the host in the request + URL is set. + """ + if http_request is None: + http_request = atom.http_core.HttpRequest() + + if self.host is not None and http_request.uri.host is None: + http_request.uri.host = self.host + + # Set the user agent header for logging purposes. + if self.source: + http_request.headers['User-Agent'] = '%s gdata-py/2.0.8' % self.source + else: + http_request.headers['User-Agent'] = 'gdata-py/2.0.8' + + return http_request + + ModifyRequest = modify_request diff -Nru python-gdata-1.2.4/src/atom/core.py python-gdata-2.0.8/src/atom/core.py --- python-gdata-1.2.4/src/atom/core.py 2009-01-22 19:01:10.000000000 +0000 +++ python-gdata-2.0.8/src/atom/core.py 2010-02-05 23:02:35.000000000 +0000 @@ -16,7 +16,6 @@ # This module is used for version 2 of the Google Data APIs. -# TODO: handle UTF-8 and unicode as done in src/atom/__init__.py __author__ = 'j.s@google.com (Jeff Scudder)' @@ -35,16 +34,25 @@ from elementtree import ElementTree +STRING_ENCODING = 'utf-8' + + class XmlElement(object): + """Represents an element node in an XML document. + + The text member is a UTF-8 encoded str or unicode. + """ _qname = None _other_elements = None _other_attributes = None + # The rule set contains mappings for XML qnames to child members and the + # appropriate member classes. _rule_set = None _members = None text = None - + def __init__(self, text=None, *args, **kwargs): - if ('_members' not in self.__class__.__dict__ + if ('_members' not in self.__class__.__dict__ or self.__class__._members is None): self.__class__._members = tuple(self.__class__._list_xml_members()) for member_name, member_type in self.__class__._members: @@ -59,17 +67,17 @@ self._other_attributes = {} if text is not None: self.text = text - + def _list_xml_members(cls): """Generator listing all members which are XML elements or attributes. - + The following members would be considered XML members: foo = 'abc' - indicates an XML attribute with the qname abc foo = SomeElement - indicates an XML child element foo = [AnElement] - indicates a repeating XML child element, each instance will be stored in a list in this member foo = ('att1', '{http://example.com/namespace}att2') - indicates an XML - attribute which has different parsing rules in different versions of + attribute which has different parsing rules in different versions of the protocol. Version 1 of the XML parsing rules will look for an attribute with the qname 'att1' but verion 2 of the parsing rules will look for a namespaced attribute with the local name of 'att2' and an @@ -79,9 +87,9 @@ for pair in inspect.getmembers(cls): if not pair[0].startswith('_') and pair[0] != 'text': member_type = pair[1] - if (isinstance(member_type, tuple) or isinstance(member_type, list) - or isinstance(member_type, (str, unicode)) - or (inspect.isclass(member_type) + if (isinstance(member_type, tuple) or isinstance(member_type, list) + or isinstance(member_type, (str, unicode)) + or (inspect.isclass(member_type) and issubclass(member_type, XmlElement))): members.append(pair) return members @@ -89,9 +97,36 @@ _list_xml_members = classmethod(_list_xml_members) def _get_rules(cls, version): + """Initializes the _rule_set for the class which is used when parsing XML. + + This method is used internally for parsing and generating XML for an + XmlElement. It is not recommended that you call this method directly. + + Returns: + A tuple containing the XML parsing rules for the appropriate version. + + The tuple looks like: + (qname, {sub_element_qname: (member_name, member_class, repeating), ..}, + {attribute_qname: member_name}) + + To give a couple of concrete example, the atom.data.Control _get_rules + with version of 2 will return: + ('{http://www.w3.org/2007/app}control', + {'{http://www.w3.org/2007/app}draft': ('draft', + , + False)}, + {}) + Calling _get_rules with version 1 on gdata.data.FeedLink will produce: + ('{http://schemas.google.com/g/2005}feedLink', + {'{http://www.w3.org/2005/Atom}feed': ('feed', + , + False)}, + {'href': 'href', 'readOnly': 'read_only', 'countHint': 'count_hint', + 'rel': 'rel'}) + """ # Initialize the _rule_set to make sure there is a slot available to store # the parsing rules for this version of the XML schema. - # Look for rule set in the class __dict__ proxy so that only the + # Look for rule set in the class __dict__ proxy so that only the # _rule_set for this class will be found. By using the dict proxy # we avoid finding rule_sets defined in superclasses. # The four lines below provide support for any number of versions, but it @@ -110,12 +145,12 @@ # 2 is currently the highest supported version. if version > 2: return cls._get_rules(2) - # Check the dict proxy for the rule set to avoid finding any rule sets + # Check the dict proxy for the rule set to avoid finding any rule sets # which belong to the superclass. We only want rule sets for this class. if cls._rule_set[version-1] is None: - # The rule set for each version consists of the qname for this element - # ('{namespace}tag'), a dictionary (elements) for looking up the - # corresponding class member when given a child element's qname, and a + # The rule set for each version consists of the qname for this element + # ('{namespace}tag'), a dictionary (elements) for looking up the + # corresponding class member when given a child element's qname, and a # dictionary (attributes) for looking up the corresponding class member # when given an XML attribute's qname. elements = {} @@ -125,7 +160,7 @@ for member_name, target in cls._members: if isinstance(target, list): # This member points to a repeating element. - elements[_get_qname(target[0], version)] = (member_name, target[0], + elements[_get_qname(target[0], version)] = (member_name, target[0], True) elif isinstance(target, tuple): # This member points to a versioned XML attribute. @@ -146,7 +181,7 @@ return cls._rule_set[version-1] _get_rules = classmethod(_get_rules) - + def get_elements(self, tag=None, namespace=None, version=1): """Find all sub elements which match the tag and namespace. @@ -158,7 +193,7 @@ Args: tag: str namespace: str - version: int Specifies the version of the XML rules to be used when + version: int Specifies the version of the XML rules to be used when searching for matching elements. Returns: @@ -172,7 +207,7 @@ if member: if _qname_matches(tag, namespace, qname): if element_def[2]: - # If this is a repeating element, copy all instances into the + # If this is a repeating element, copy all instances into the # result list. matches.extend(member) else: @@ -183,20 +218,28 @@ return matches GetElements = get_elements - + # FindExtensions and FindChildren are provided for backwards compatibility + # to the atom.AtomBase class. + # However, FindExtensions may return more results than the v1 atom.AtomBase + # method does, because get_elements searches both the expected children + # and the unexpected "other elements". The old AtomBase.FindExtensions + # method searched only "other elements" AKA extension_elements. + FindExtensions = get_elements + FindChildren = get_elements + def get_attributes(self, tag=None, namespace=None, version=1): """Find all attributes which match the tag and namespace. To find all attributes in this object, call get_attributes with the tag - and namespace both set to None (the default). This method searches - through the object's members and the attributes stored in + and namespace both set to None (the default). This method searches + through the object's members and the attributes stored in _other_attributes which did not fit any of the XML parsing rules for this class. Args: tag: str namespace: str - version: int Specifies the version of the XML rules to be used when + version: int Specifies the version of the XML rules to be used when searching for matching attributes. Returns: @@ -206,7 +249,11 @@ ignored1, ignored2, attributes = self.__class__._get_rules(version) if attributes: for qname, attribute_def in attributes.iteritems(): - member = getattr(self, attribute_def[0]) + if isinstance(attribute_def, (list, tuple)): + attribute_def = attribute_def[0] + member = getattr(self, attribute_def) + # TODO: ensure this hasn't broken existing behavior. + #member = getattr(self, attribute_def[0]) if member: if _qname_matches(tag, namespace, qname): matches.append(XmlAttribute(qname, member)) @@ -216,25 +263,26 @@ return matches GetAttributes = get_attributes - + def _harvest_tree(self, tree, version=1): """Populates object members from the data in the tree Element.""" qname, elements, attributes = self.__class__._get_rules(version) for element in tree: if elements and element.tag in elements: definition = elements[element.tag] - # If this is a repeating element, make sure the member is set to a + # If this is a repeating element, make sure the member is set to a # list. if definition[2]: if getattr(self, definition[0]) is None: setattr(self, definition[0], []) getattr(self, definition[0]).append(_xml_element_from_tree(element, - definition[1])) + definition[1], version)) else: - setattr(self, definition[0], _xml_element_from_tree(element, - definition[1])) + setattr(self, definition[0], _xml_element_from_tree(element, + definition[1], version)) else: - self._other_elements.append(_xml_element_from_tree(element, XmlElement)) + self._other_elements.append(_xml_element_from_tree(element, XmlElement, + version)) for attrib, value in tree.attrib.iteritems(): if attributes and attrib in attributes: setattr(self, attributes[attrib], value) @@ -243,24 +291,26 @@ if tree.text: self.text = tree.text - def _to_tree(self, version=1): + def _to_tree(self, version=1, encoding=None): new_tree = ElementTree.Element(_get_qname(self, version)) - self._attach_members(new_tree, version) + self._attach_members(new_tree, version, encoding) return new_tree - def _attach_members(self, tree, version=1): + def _attach_members(self, tree, version=1, encoding=None): """Convert members to XML elements/attributes and add them to the tree. - + Args: tree: An ElementTree.Element which will be modified. The members of - this object will be added as child elements or attributes - according to the rules described in _expected_elements and + this object will be added as child elements or attributes + according to the rules described in _expected_elements and _expected_attributes. The elements and attributes stored in other_attributes and other_elements are also added a children of this tree. version: int Ingnored in this method but used by VersionedElement. + encoding: str (optional) """ qname, elements, attributes = self.__class__._get_rules(version) + encoding = encoding or STRING_ENCODING # Add the expected elements and attributes to the tree. if elements: for tag, element_def in elements.iteritems(): @@ -280,16 +330,26 @@ for element in self._other_elements: element._become_child(tree, version) for key, value in self._other_attributes.iteritems(): + # I'm not sure if unicode can be used in the attribute name, so for now + # we assume the encoding is correct for the attribute name. + if not isinstance(value, unicode): + value = value.decode(encoding) tree.attrib[key] = value if self.text: - tree.text = self.text + if isinstance(self.text, unicode): + tree.text = self.text + else: + tree.text = self.text.decode(encoding) - def to_string(self, version=1): + def to_string(self, version=1, encoding=None): """Converts this object to XML.""" - return ElementTree.tostring(self._to_tree(version)) + return ElementTree.tostring(self._to_tree(version, encoding)) ToString = to_string + def __str__(self): + return self.to_string() + def _become_child(self, tree, version=1): """Adds a child element to tree with the XML data in self.""" new_child = ElementTree.Element('') @@ -297,6 +357,73 @@ new_child.tag = _get_qname(self, version) self._attach_members(new_child, version) + def __get_extension_elements(self): + return self._other_elements + + def __set_extension_elements(self, elements): + self._other_elements = elements + + extension_elements = property(__get_extension_elements, + __set_extension_elements, + """Provides backwards compatibility for v1 atom.AtomBase classes.""") + + def __get_extension_attributes(self): + return self._other_attributes + + def __set_extension_attributes(self, attributes): + self._other_attributes = attributes + + extension_attributes = property(__get_extension_attributes, + __set_extension_attributes, + """Provides backwards compatibility for v1 atom.AtomBase classes.""") + + def _get_tag(self, version=1): + qname = _get_qname(self, version) + return qname[qname.find('}')+1:] + + def _get_namespace(self, version=1): + qname = _get_qname(self, version) + if qname.startswith('{'): + return qname[1:qname.find('}')] + else: + return None + + def _set_tag(self, tag): + if isinstance(self._qname, tuple): + self._qname = self._qname.copy() + if self._qname[0].startswith('{'): + self._qname[0] = '{%s}%s' % (self._get_namespace(1), tag) + else: + self._qname[0] = tag + else: + if self._qname.startswith('{'): + self._qname = '{%s}%s' % (self._get_namespace(), tag) + else: + self._qname = tag + + def _set_namespace(self, namespace): + if isinstance(self._qname, tuple): + self._qname = self._qname.copy() + if namespace: + self._qname[0] = '{%s}%s' % (namespace, self._get_tag(1)) + else: + self._qname[0] = self._get_tag(1) + else: + if namespace: + self._qname = '{%s}%s' % (namespace, self._get_tag(1)) + else: + self._qname = self._get_tag(1) + + tag = property(_get_tag, _set_tag, + """Provides backwards compatibility for v1 atom.AtomBase classes.""") + + namespace = property(_get_namespace, _set_namespace, + """Provides backwards compatibility for v1 atom.AtomBase classes.""") + + # Provided for backwards compatibility to atom.ExtensionElement + children = extension_elements + attributes = extension_attributes + def _get_qname(element, version): if isinstance(element._qname, tuple): @@ -310,17 +437,17 @@ def _qname_matches(tag, namespace, qname): """Logic determines if a QName matches the desired local tag and namespace. - + This is used in XmlElement.get_elements and XmlElement.get_attributes to find matches in the element's members (among all expected-and-unexpected elements-and-attributes). - + Args: expected_tag: string expected_namespace: string qname: string in the form '{xml_namespace}localtag' or 'tag' if there is no namespace. - + Returns: boolean True if the member's tag and namespace fit the expected tag and namespace. @@ -355,20 +482,31 @@ and member_namespace is None)) -def xml_element_from_string(xml_string, target_class, - version=1, encoding='UTF-8'): +def parse(xml_string, target_class=None, version=1, encoding=None): """Parses the XML string according to the rules for the target_class. Args: xml_string: str or unicode - target_class: XmlElement or a subclass. + target_class: XmlElement or a subclass. If None is specified, the + XmlElement class is used. version: int (optional) The version of the schema which should be used when - converting the XML into an object. The default is 1. + converting the XML into an object. The default is 1. + encoding: str (optional) The character encoding of the bytes in the + xml_string. Default is 'UTF-8'. """ + if target_class is None: + target_class = XmlElement + if isinstance(xml_string, unicode): + if encoding is None: + xml_string = xml_string.encode(STRING_ENCODING) + else: + xml_string = xml_string.encode(encoding) tree = ElementTree.fromstring(xml_string) return _xml_element_from_tree(tree, target_class, version) +Parse = parse +xml_element_from_string = parse XmlElementFromString = xml_element_from_string @@ -379,9 +517,9 @@ instance._harvest_tree(tree, version) return instance # TODO handle the namespace-only case - # Namespace only will be used with Google Spreadsheets rows and + # Namespace only will be used with Google Spreadsheets rows and # Google Base item attributes. - elif tree.tag == target_class._qname: + elif tree.tag == _get_qname(target_class, version): instance = target_class() instance._harvest_tree(tree, version) return instance @@ -393,3 +531,4 @@ def __init__(self, qname, value): self._qname = qname self.value = value + diff -Nru python-gdata-1.2.4/src/atom/data.py python-gdata-2.0.8/src/atom/data.py --- python-gdata-1.2.4/src/atom/data.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/atom/data.py 2010-02-05 01:31:34.000000000 +0000 @@ -0,0 +1,339 @@ +#!/usr/bin/env python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +# This module is used for version 2 of the Google Data APIs. + + +__author__ = 'j.s@google.com (Jeff Scudder)' + + +import atom.core + + +ATOM_TEMPLATE = '{http://www.w3.org/2005/Atom}%s' +APP_TEMPLATE_V1 = '{http://purl.org/atom/app#}%s' +APP_TEMPLATE_V2 = '{http://www.w3.org/2007/app}%s' + + +class Name(atom.core.XmlElement): + """The atom:name element.""" + _qname = ATOM_TEMPLATE % 'name' + + +class Email(atom.core.XmlElement): + """The atom:email element.""" + _qname = ATOM_TEMPLATE % 'email' + + +class Uri(atom.core.XmlElement): + """The atom:uri element.""" + _qname = ATOM_TEMPLATE % 'uri' + + +class Person(atom.core.XmlElement): + """A foundation class which atom:author and atom:contributor extend. + + A person contains information like name, email address, and web page URI for + an author or contributor to an Atom feed. + """ + name = Name + email = Email + uri = Uri + + +class Author(Person): + """The atom:author element. + + An author is a required element in Feed unless each Entry contains an Author. + """ + _qname = ATOM_TEMPLATE % 'author' + + +class Contributor(Person): + """The atom:contributor element.""" + _qname = ATOM_TEMPLATE % 'contributor' + + +class Link(atom.core.XmlElement): + """The atom:link element.""" + _qname = ATOM_TEMPLATE % 'link' + href = 'href' + rel = 'rel' + type = 'type' + hreflang = 'hreflang' + title = 'title' + length = 'length' + + +class Generator(atom.core.XmlElement): + """The atom:generator element.""" + _qname = ATOM_TEMPLATE % 'generator' + uri = 'uri' + version = 'version' + + +class Text(atom.core.XmlElement): + """A foundation class from which atom:title, summary, etc. extend. + + This class should never be instantiated. + """ + type = 'type' + + +class Title(Text): + """The atom:title element.""" + _qname = ATOM_TEMPLATE % 'title' + + +class Subtitle(Text): + """The atom:subtitle element.""" + _qname = ATOM_TEMPLATE % 'subtitle' + + +class Rights(Text): + """The atom:rights element.""" + _qname = ATOM_TEMPLATE % 'rights' + + +class Summary(Text): + """The atom:summary element.""" + _qname = ATOM_TEMPLATE % 'summary' + + +class Content(Text): + """The atom:content element.""" + _qname = ATOM_TEMPLATE % 'content' + src = 'src' + + +class Category(atom.core.XmlElement): + """The atom:category element.""" + _qname = ATOM_TEMPLATE % 'category' + term = 'term' + scheme = 'scheme' + label = 'label' + + +class Id(atom.core.XmlElement): + """The atom:id element.""" + _qname = ATOM_TEMPLATE % 'id' + + +class Icon(atom.core.XmlElement): + """The atom:icon element.""" + _qname = ATOM_TEMPLATE % 'icon' + + +class Logo(atom.core.XmlElement): + """The atom:logo element.""" + _qname = ATOM_TEMPLATE % 'logo' + + +class Draft(atom.core.XmlElement): + """The app:draft element which indicates if this entry should be public.""" + _qname = (APP_TEMPLATE_V1 % 'draft', APP_TEMPLATE_V2 % 'draft') + + +class Control(atom.core.XmlElement): + """The app:control element indicating restrictions on publication. + + The APP control element may contain a draft element indicating whether or + not this entry should be publicly available. + """ + _qname = (APP_TEMPLATE_V1 % 'control', APP_TEMPLATE_V2 % 'control') + draft = Draft + + +class Date(atom.core.XmlElement): + """A parent class for atom:updated, published, etc.""" + + +class Updated(Date): + """The atom:updated element.""" + _qname = ATOM_TEMPLATE % 'updated' + + +class Published(Date): + """The atom:published element.""" + _qname = ATOM_TEMPLATE % 'published' + + +class LinkFinder(object): + """An "interface" providing methods to find link elements + + Entry elements often contain multiple links which differ in the rel + attribute or content type. Often, developers are interested in a specific + type of link so this class provides methods to find specific classes of + links. + + This class is used as a mixin in Atom entries and feeds. + """ + + def find_url(self, rel): + """Returns the URL in a link with the desired rel value.""" + for link in self.link: + if link.rel == rel and link.href: + return link.href + return None + + FindUrl = find_url + + def get_link(self, rel): + """Returns a link object which has the desired rel value. + + If you are interested in the URL instead of the link object, + consider using find_url instead. + """ + for link in self.link: + if link.rel == rel and link.href: + return link + return None + + GetLink = get_link + + def find_self_link(self): + """Find the first link with rel set to 'self' + + Returns: + A str containing the link's href or None if none of the links had rel + equal to 'self' + """ + return self.find_url('self') + + FindSelfLink = find_self_link + + def get_self_link(self): + return self.get_link('self') + + GetSelfLink = get_self_link + + def find_edit_link(self): + return self.find_url('edit') + + FindEditLink = find_edit_link + + def get_edit_link(self): + return self.get_link('edit') + + GetEditLink = get_edit_link + + def find_edit_media_link(self): + link = self.find_url('edit-media') + # Search for media-edit as well since Picasa API used media-edit instead. + if link is None: + return self.find_url('media-edit') + return link + + FindEditMediaLink = find_edit_media_link + + def get_edit_media_link(self): + link = self.get_link('edit-media') + if link is None: + return self.get_link('media-edit') + return link + + GetEditMediaLink = get_edit_media_link + + def find_next_link(self): + return self.find_url('next') + + FindNextLink = find_next_link + + def get_next_link(self): + return self.get_link('next') + + GetNextLink = get_next_link + + def find_license_link(self): + return self.find_url('license') + + FindLicenseLink = find_license_link + + def get_license_link(self): + return self.get_link('license') + + GetLicenseLink = get_license_link + + def find_alternate_link(self): + return self.find_url('alternate') + + FindAlternateLink = find_alternate_link + + def get_alternate_link(self): + return self.get_link('alternate') + + GetAlternateLink = get_alternate_link + + +class FeedEntryParent(atom.core.XmlElement, LinkFinder): + """A super class for atom:feed and entry, contains shared attributes""" + author = [Author] + category = [Category] + contributor = [Contributor] + id = Id + link = [Link] + rights = Rights + title = Title + updated = Updated + + def __init__(self, atom_id=None, text=None, *args, **kwargs): + if atom_id is not None: + self.id = atom_id + atom.core.XmlElement.__init__(self, text=text, *args, **kwargs) + + +class Source(FeedEntryParent): + """The atom:source element.""" + _qname = ATOM_TEMPLATE % 'source' + generator = Generator + icon = Icon + logo = Logo + subtitle = Subtitle + + +class Entry(FeedEntryParent): + """The atom:entry element.""" + _qname = ATOM_TEMPLATE % 'entry' + content = Content + published = Published + source = Source + summary = Summary + control = Control + + +class Feed(Source): + """The atom:feed element which contains entries.""" + _qname = ATOM_TEMPLATE % 'feed' + entry = [Entry] + + +class ExtensionElement(atom.core.XmlElement): + """Provided for backwards compatibility to the v1 atom.ExtensionElement.""" + + def __init__(self, tag=None, namespace=None, attributes=None, + children=None, text=None, *args, **kwargs): + if namespace: + self._qname = '{%s}%s' % (namespace, tag) + else: + self._qname = tag + self.children = children or [] + self.attributes = attributes or {} + self.text = text + + _BecomeChildElement = atom.core.XmlElement._become_child + + diff -Nru python-gdata-1.2.4/src/atom/http_core.py python-gdata-2.0.8/src/atom/http_core.py --- python-gdata-1.2.4/src/atom/http_core.py 2009-01-15 00:49:56.000000000 +0000 +++ python-gdata-2.0.8/src/atom/http_core.py 2010-02-12 02:22:13.000000000 +0000 @@ -22,10 +22,17 @@ __author__ = 'j.s@google.com (Jeff Scudder)' +import os import StringIO import urlparse import urllib import httplib +ssl = None +try: + import ssl +except ImportError: + pass + class Error(Exception): @@ -36,51 +43,68 @@ pass +class ProxyError(Error): + pass + + MIME_BOUNDARY = 'END_OF_PART' +def get_headers(http_response): + """Retrieves all HTTP headers from an HTTP response from the server. + + This method is provided for backwards compatibility for Python2.2 and 2.3. + The httplib.HTTPResponse object in 2.2 and 2.3 does not have a getheaders + method so this function will use getheaders if available, but if not it + will retrieve a few using getheader. + """ + if hasattr(http_response, 'getheaders'): + return http_response.getheaders() + else: + headers = [] + for header in ( + 'location', 'content-type', 'content-length', 'age', 'allow', + 'cache-control', 'content-location', 'content-encoding', 'date', + 'etag', 'expires', 'last-modified', 'pragma', 'server', + 'set-cookie', 'transfer-encoding', 'vary', 'via', 'warning', + 'www-authenticate', 'gdata-version'): + value = http_response.getheader(header, None) + if value is not None: + headers.append((header, value)) + return headers + + class HttpRequest(object): """Contains all of the parameters for an HTTP 1.1 request. - + The HTTP headers are represented by a dictionary, and it is the responsibility of the user to ensure that duplicate field names are combined into one header value according to the rules in section 4.2 of RFC 2616. """ - scheme = None - host = None - port = None method = None uri = None - - def __init__(self, scheme=None, host=None, port=None, method=None, uri=None, - headers=None): + + def __init__(self, uri=None, method=None, headers=None): """Construct an HTTP request. Args: - scheme: str The protocol to be used, usually this is 'http' or 'https' - host: str The name or IP address string of the server. - port: int The port number to connect to on the server. + uri: The full path or partial path as a Uri object or a string. method: The HTTP method for the request, examples include 'GET', 'POST', etc. - uri: str The relative path inclusing escaped query parameters. headers: dict of strings The HTTP headers to include in the request. """ self.headers = headers or {} self._body_parts = [] - if scheme is not None: - self.scheme = scheme - if host is not None: - self.host = host - if port is not None: - self.port = port if method is not None: self.method = method - if uri is not None: - self.uri = uri + if isinstance(uri, (str, unicode)): + uri = Uri.parse_uri(uri) + self.uri = uri or Uri() + def add_body_part(self, data, mime_type, size=None): """Adds data to the HTTP request body. - + If more than one part is added, this is assumed to be a mime-multipart request. This method is designed to create MIME 1.0 requests as specified in RFC 1341. @@ -152,25 +176,55 @@ def add_form_inputs(self, form_data, mime_type='application/x-www-form-urlencoded'): + """Form-encodes and adds data to the request body. + + Args: + form_data: dict or sequnce or two member tuples which contains the + form keys and values. + mime_type: str The MIME type of the form data being sent. Defaults + to 'application/x-www-form-urlencoded'. + """ body = urllib.urlencode(form_data) self.add_body_part(body, mime_type) AddFormInputs = add_form_inputs def _copy(self): - new_request = HttpRequest(scheme=self.scheme, host=self.host, - port=self.port, method=self.method, uri=self.uri, - headers=self.headers.copy()) + """Creates a deep copy of this request.""" + copied_uri = Uri(self.uri.scheme, self.uri.host, self.uri.port, + self.uri.path, self.uri.query.copy()) + new_request = HttpRequest(uri=copied_uri, method=self.method, + headers=self.headers.copy()) new_request._body_parts = self._body_parts[:] return new_request + def _dump(self): + """Converts to a printable string for debugging purposes. + + In order to preserve the request, it does not read from file-like objects + in the body. + """ + output = 'HTTP Request\n method: %s\n url: %s\n headers:\n' % ( + self.method, str(self.uri)) + for header, value in self.headers.iteritems(): + output += ' %s: %s\n' % (header, value) + output += ' body sections:\n' + i = 0 + for part in self._body_parts: + if isinstance(part, (str, unicode)): + output += ' %s: %s\n' % (i, part) + else: + output += ' %s: \n' % i + i += 1 + return output + def _apply_defaults(http_request): - if http_request.scheme is None: - if http_request.port == 443: - http_request.scheme = 'https' + if http_request.uri.scheme is None: + if http_request.uri.port == 443: + http_request.uri.scheme = 'https' else: - http_request.scheme = 'http' + http_request.uri.scheme = 'http' class Uri(object): @@ -179,16 +233,20 @@ host = None port = None path = None - + def __init__(self, scheme=None, host=None, port=None, path=None, query=None): """Constructor for a URI. Args: scheme: str This is usually 'http' or 'https'. - ... TODO + host: str The host name or IP address of the desired server. + post: int The server's port number. + path: str The path of the resource following the host. This begins with + a /, example: '/calendar/feeds/default/allcalendars/full' query: dict of strings The URL query parameters. The keys and values are both escaped so this dict should contain the unescaped values. - + For example {'my key': 'val', 'second': '!!!'} will become + '?my+key=val&second=%21%21%21' which is appended to the path. """ self.query = query or {} if scheme is not None: @@ -199,7 +257,7 @@ self.port = port if path: self.path = path - + def _get_query_string(self): param_pairs = [] for key, value in self.query.iteritems(): @@ -218,7 +276,7 @@ return '?'.join([path, param_string]) else: return path - + def _to_string(self): if self.scheme is None and self.port == 443: scheme = 'https' @@ -235,68 +293,77 @@ else: return '%s://%s:%s%s' % (scheme, self.host, str(self.port), self._get_relative_path()) - + + def __str__(self): + return self._to_string() + def modify_request(self, http_request=None): """Sets HTTP request components based on the URI.""" if http_request is None: http_request = HttpRequest() + if http_request.uri is None: + http_request.uri = Uri() # Determine the correct scheme. if self.scheme: - http_request.scheme = self.scheme + http_request.uri.scheme = self.scheme if self.port: - http_request.port = self.port + http_request.uri.port = self.port if self.host: - http_request.host = self.host + http_request.uri.host = self.host # Set the relative uri path if self.path: - http_request.uri = self._get_relative_path() - elif not self.path and self.query: - http_request.uri = '/%s' % self._get_relative_path() - elif not self.path and not self.query and not http_request.uri: - http_request.uri = '/' + http_request.uri.path = self.path + if self.query: + http_request.uri.query = self.query.copy() return http_request ModifyRequest = modify_request - -def parse_uri(uri_string): - """Creates a Uri object which corresponds to the URI string. - - This method can accept partial URIs, but it will leave missing - members of the Uri unset. - """ - parts = urlparse.urlparse(uri_string) - uri = Uri() - if parts[0]: - uri.scheme = parts[0] - if parts[1]: - host_parts = parts[1].split(':') - if host_parts[0]: - uri.host = host_parts[0] - if len(host_parts) > 1: - uri.port = int(host_parts[1]) - if parts[2]: - uri.path = parts[2] - if parts[4]: - param_pairs = parts[4].split('&') - for pair in param_pairs: - pair_parts = pair.split('=') - if len(pair_parts) > 1: - uri.query[urllib.unquote_plus(pair_parts[0])] = ( - urllib.unquote_plus(pair_parts[1])) - elif len(pair_parts) == 1: - uri.query[urllib.unquote_plus(pair_parts[0])] = None - return uri + def parse_uri(uri_string): + """Creates a Uri object which corresponds to the URI string. + + This method can accept partial URIs, but it will leave missing + members of the Uri unset. + """ + parts = urlparse.urlparse(uri_string) + uri = Uri() + if parts[0]: + uri.scheme = parts[0] + if parts[1]: + host_parts = parts[1].split(':') + if host_parts[0]: + uri.host = host_parts[0] + if len(host_parts) > 1: + uri.port = int(host_parts[1]) + if parts[2]: + uri.path = parts[2] + if parts[4]: + param_pairs = parts[4].split('&') + for pair in param_pairs: + pair_parts = pair.split('=') + if len(pair_parts) > 1: + uri.query[urllib.unquote_plus(pair_parts[0])] = ( + urllib.unquote_plus(pair_parts[1])) + elif len(pair_parts) == 1: + uri.query[urllib.unquote_plus(pair_parts[0])] = None + return uri + + parse_uri = staticmethod(parse_uri) + + ParseUri = parse_uri + +parse_uri = Uri.parse_uri -ParseUri = parse_uri + +ParseUri = Uri.parse_uri class HttpResponse(object): status = None reason = None _body = None - + def __init__(self, status=None, reason=None, headers=None, body=None): self._headers = headers or {} if status is not None: @@ -308,64 +375,108 @@ self._body = body else: self._body = StringIO.StringIO(body) - + def getheader(self, name, default=None): if name in self._headers: return self._headers[name] else: return default - + + def getheaders(self): + return self._headers + def read(self, amt=None): + if self._body is None: + return None if not amt: return self._body.read() else: return self._body.read(amt) +def _dump_response(http_response): + """Converts to a string for printing debug messages. + + Does not read the body since that may consume the content. + """ + output = 'HttpResponse\n status: %s\n reason: %s\n headers:' % ( + http_response.status, http_response.reason) + headers = get_headers(http_response) + if isinstance(headers, dict): + for header, value in headers.iteritems(): + output += ' %s: %s\n' % (header, value) + else: + for pair in headers: + output += ' %s: %s\n' % (pair[0], pair[1]) + return output + + class HttpClient(object): """Performs HTTP requests using httplib.""" debug = None - + def request(self, http_request): - return self._http_request(http_request.host, http_request.method, - http_request.uri, http_request.scheme, http_request.port, - http_request.headers, http_request._body_parts) + return self._http_request(http_request.method, http_request.uri, + http_request.headers, http_request._body_parts) Request = request - - def _http_request(self, host, method, uri, scheme=None, port=None, - headers=None, body_parts=None): - """Makes an HTTP request using httplib. - + + def _get_connection(self, uri, headers=None): + """Opens a socket connection to the server to set up an HTTP request. + Args: - uri: str + uri: The full URL for the request as a Uri object. + headers: A dict of string pairs containing the HTTP headers for the + request. """ - if scheme == 'https': - if not port: - connection = httplib.HTTPSConnection(host) + connection = None + if uri.scheme == 'https': + if not uri.port: + connection = httplib.HTTPSConnection(uri.host) else: - connection = httplib.HTTPSConnection(host, int(port)) + connection = httplib.HTTPSConnection(uri.host, int(uri.port)) else: - if not port: - connection = httplib.HTTPConnection(host) + if not uri.port: + connection = httplib.HTTPConnection(uri.host) else: - connection = httplib.HTTPConnection(host, int(port)) - + connection = httplib.HTTPConnection(uri.host, int(uri.port)) + return connection + + def _http_request(self, method, uri, headers=None, body_parts=None): + """Makes an HTTP request using httplib. + + Args: + method: str example: 'GET', 'POST', 'PUT', 'DELETE', etc. + uri: str or atom.http_core.Uri + headers: dict of strings mapping to strings which will be sent as HTTP + headers in the request. + body_parts: list of strings, objects with a read method, or objects + which can be converted to strings using str. Each of these + will be sent in order as the body of the HTTP request. + """ + if isinstance(uri, (str, unicode)): + uri = Uri.parse_uri(uri) + + connection = self._get_connection(uri, headers=headers) + if self.debug: connection.debuglevel = 1 - connection.putrequest(method, uri) + if connection.host != uri.host: + connection.putrequest(method, str(uri)) + else: + connection.putrequest(method, uri._get_relative_path()) # Overcome a bug in Python 2.4 and 2.5 # httplib.HTTPConnection.putrequest adding # HTTP request header 'Host: www.google.com:443' instead of # 'Host: www.google.com', and thus resulting the error message # 'Token invalid - AuthSub token has wrong scope' in the HTTP response. - if (scheme == 'https' and int(port or 443) == 443 and + if (uri.scheme == 'https' and int(uri.port or 443) == 443 and hasattr(connection, '_buffer') and isinstance(connection._buffer, list)): - header_line = 'Host: %s:443' % host - replacement_header_line = 'Host: %s' % host + header_line = 'Host: %s:443' % uri.host + replacement_header_line = 'Host: %s' % uri.host try: connection._buffer[connection._buffer.index(header_line)] = ( replacement_header_line) @@ -381,7 +492,7 @@ if body_parts: for part in body_parts: _send_data_part(part, connection) - + # Return the HTTP Response from the server. return connection.getresponse() @@ -405,3 +516,82 @@ connection.send(str(data)) return + +class ProxiedHttpClient(HttpClient): + + def _get_connection(self, uri, headers=None): + # Check to see if there are proxy settings required for this request. + proxy = None + if uri.scheme == 'https': + proxy = os.environ.get('https_proxy') + elif uri.scheme == 'http': + proxy = os.environ.get('http_proxy') + if not proxy: + return HttpClient._get_connection(self, uri, headers=headers) + # Now we have the URL of the appropriate proxy server. + # Get a username and password for the proxy if required. + proxy_auth = _get_proxy_auth() + if uri.scheme == 'https': + import socket + if proxy_auth: + proxy_auth = 'Proxy-authorization: %s' % proxy_auth + # Construct the proxy connect command. + port = uri.port + if not port: + port = 443 + proxy_connect = 'CONNECT %s:%s HTTP/1.0\r\n' % (uri.host, port) + # Set the user agent to send to the proxy + user_agent = '' + if headers and 'User-Agent' in headers: + user_agent = 'User-Agent: %s\r\n' % (headers['User-Agent']) + proxy_pieces = '%s%s%s\r\n' % (proxy_connect, proxy_auth, user_agent) + # Find the proxy host and port. + proxy_uri = Uri.parse_uri(proxy) + if not proxy_uri.port: + proxy_uri.port = '80' + # Connect to the proxy server, very simple recv and error checking + p_sock = socket.socket(socket.AF_INET,socket.SOCK_STREAM) + p_sock.connect((proxy_uri.host, int(proxy_uri.port))) + p_sock.sendall(proxy_pieces) + response = '' + # Wait for the full response. + while response.find("\r\n\r\n") == -1: + response += p_sock.recv(8192) + p_status = response.split()[1] + if p_status != str(200): + raise ProxyError('Error status=%s' % str(p_status)) + # Trivial setup for ssl socket. + sslobj = None + if ssl is not None: + sslobj = ssl.wrap_socket(p_sock, None, None) + else: + sock_ssl = socket.ssl(p_sock, None, Nonesock_) + sslobj = httplib.FakeSocket(p_sock, sock_ssl) + # Initalize httplib and replace with the proxy socket. + connection = httplib.HTTPConnection(proxy_uri.host) + connection.sock = sslobj + return connection + elif uri.scheme == 'http': + proxy_uri = Uri.parse_uri(proxy) + if not proxy_uri.port: + proxy_uri.port = '80' + if proxy_auth: + headers['Proxy-Authorization'] = proxy_auth.strip() + return httplib.HTTPConnection(proxy_uri.host, int(proxy_uri.port)) + return None + + +def _get_proxy_auth(): + import base64 + proxy_username = os.environ.get('proxy-username') + if not proxy_username: + proxy_username = os.environ.get('proxy_username') + proxy_password = os.environ.get('proxy-password') + if not proxy_password: + proxy_password = os.environ.get('proxy_password') + if proxy_username: + user_auth = base64.b64encode('%s:%s' % (proxy_username, + proxy_password)) + return 'Basic %s\r\n' % (user_auth.strip()) + else: + return '' diff -Nru python-gdata-1.2.4/src/atom/http_interface.py python-gdata-2.0.8/src/atom/http_interface.py --- python-gdata-1.2.4/src/atom/http_interface.py 2008-10-16 00:09:36.000000000 +0100 +++ python-gdata-2.0.8/src/atom/http_interface.py 2009-08-21 02:45:55.000000000 +0100 @@ -36,7 +36,7 @@ import StringIO -USER_AGENT = '%s GData-Python/1.2.2' +USER_AGENT = '%s GData-Python/2.0.2' class Error(Exception): diff -Nru python-gdata-1.2.4/src/atom/http.py python-gdata-2.0.8/src/atom/http.py --- python-gdata-1.2.4/src/atom/http.py 2008-12-03 18:10:13.000000000 +0000 +++ python-gdata-2.0.8/src/atom/http.py 2009-10-09 00:13:45.000000000 +0100 @@ -42,16 +42,33 @@ import atom.http_interface import socket import base64 +import atom.http_core +ssl_imported = False +ssl = None +try: + import ssl + ssl_imported = True +except ImportError: + pass + class ProxyError(atom.http_interface.Error): pass +class TestConfigurationError(Exception): + pass + + DEFAULT_CONTENT_TYPE = 'application/atom+xml' class HttpClient(atom.http_interface.GenericHttpClient): + # Added to allow old v1 HttpClient objects to use the new + # http_code.HttpClient. Used in unit tests to inject a mock client. + v2_http_client = None + def __init__(self, headers=None): self.debug = False self.headers = headers or {} @@ -79,6 +96,32 @@ headers: dict of strings. HTTP headers which should be sent in the request. """ + all_headers = self.headers.copy() + if headers: + all_headers.update(headers) + + # If the list of headers does not include a Content-Length, attempt to + # calculate it based on the data object. + if data and 'Content-Length' not in all_headers: + if isinstance(data, types.StringTypes): + all_headers['Content-Length'] = str(len(data)) + else: + raise atom.http_interface.ContentLengthRequired('Unable to calculate ' + 'the length of the data parameter. Specify a value for ' + 'Content-Length') + + # Set the content type to the default value if none was set. + if 'Content-Type' not in all_headers: + all_headers['Content-Type'] = DEFAULT_CONTENT_TYPE + + if self.v2_http_client is not None: + http_request = atom.http_core.HttpRequest(method=operation) + atom.http_core.Uri.parse_uri(str(url)).modify_request(http_request) + http_request.headers = all_headers + if data: + http_request._body_parts.append(data) + return self.v2_http_client.request(http_request=http_request) + if not isinstance(url, atom.url.Url): if isinstance(url, types.StringTypes): url = atom.url.parse_url(url) @@ -86,10 +129,6 @@ raise atom.http_interface.UnparsableUrlObject('Unable to parse url ' 'parameter because it was not a string or atom.url.Url') - all_headers = self.headers.copy() - if headers: - all_headers.update(headers) - connection = self._prepare_connection(url, all_headers) if self.debug: @@ -97,7 +136,10 @@ connection.putrequest(operation, self._get_access_url(url), skip_host=True) - connection.putheader('Host', url.host) + if url.port is not None: + connection.putheader('Host', '%s:%s' % (url.host, url.port)) + else: + connection.putheader('Host', url.host) # Overcome a bug in Python 2.4 and 2.5 # httplib.HTTPConnection.putrequest adding @@ -115,20 +157,6 @@ except ValueError: # header_line missing from connection._buffer pass - # If the list of headers does not include a Content-Length, attempt to - # calculate it based on the data object. - if data and 'Content-Length' not in all_headers: - if isinstance(data, types.StringTypes): - all_headers['Content-Length'] = len(data) - else: - raise atom.http_interface.ContentLengthRequired('Unable to calculate ' - 'the length of the data parameter. Specify a value for ' - 'Content-Length') - - # Set the content type to the default value if none was set. - if 'Content-Type' not in all_headers: - all_headers['Content-Type'] = DEFAULT_CONTENT_TYPE - # Send the HTTP headers. for header_name in all_headers: connection.putheader(header_name, all_headers[header_name]) @@ -222,12 +250,16 @@ raise ProxyError('Error status=%s' % str(p_status)) # Trivial setup for ssl socket. - ssl = socket.ssl(p_sock, None, None) - fake_sock = httplib.FakeSocket(p_sock, ssl) + sslobj = None + if ssl_imported: + sslobj = ssl.wrap_socket(p_sock, None, None) + else: + sock_ssl = socket.ssl(p_sock, None, None) + sslobj = httplib.FakeSocket(p_sock, sock_ssl) # Initalize httplib and replace with the proxy socket. connection = httplib.HTTPConnection(proxy_url.host) - connection.sock=fake_sock + connection.sock = sslobj return connection else: # The request was HTTPS, but there was no https_proxy set. diff -Nru python-gdata-1.2.4/src/atom/__init__.py python-gdata-2.0.8/src/atom/__init__.py --- python-gdata-1.2.4/src/atom/__init__.py 2008-12-10 18:53:46.000000000 +0000 +++ python-gdata-2.0.8/src/atom/__init__.py 2009-12-17 18:49:39.000000000 +0000 @@ -18,23 +18,23 @@ """Contains classes representing Atom elements. Module objective: provide data classes for Atom constructs. These classes hide - the XML-ness of Atom and provide a set of native Python classes to interact + the XML-ness of Atom and provide a set of native Python classes to interact with. Conversions to and from XML should only be necessary when the Atom classes - "touch the wire" and are sent over HTTP. For this reason this module + "touch the wire" and are sent over HTTP. For this reason this module provides methods and functions to convert Atom classes to and from strings. - For more information on the Atom data model, see RFC 4287 + For more information on the Atom data model, see RFC 4287 (http://www.ietf.org/rfc/rfc4287.txt) - AtomBase: A foundation class on which Atom classes are built. It + AtomBase: A foundation class on which Atom classes are built. It handles the parsing of attributes and children which are common to all - Atom classes. By default, the AtomBase class translates all XML child + Atom classes. By default, the AtomBase class translates all XML child nodes into ExtensionElements. - ExtensionElement: Atom allows Atom objects to contain XML which is not part - of the Atom specification, these are called extension elements. If a + ExtensionElement: Atom allows Atom objects to contain XML which is not part + of the Atom specification, these are called extension elements. If a classes parser encounters an unexpected XML construct, it is translated into an ExtensionElement instance. ExtensionElement is designed to fully capture the information in the XML. Child nodes in an XML extension are @@ -54,6 +54,7 @@ from xml.etree import ElementTree except ImportError: from elementtree import ElementTree +import warnings # XML namespaces which are often used in Atom entities. @@ -65,15 +66,44 @@ # This encoding is used for converting strings before translating the XML # into an object. XML_STRING_ENCODING = 'utf-8' -# The desired string encoding for object members. set or monkey-patch to +# The desired string encoding for object members. set or monkey-patch to # unicode if you want object members to be Python unicode strings, instead of # encoded strings MEMBER_STRING_ENCODING = 'utf-8' #MEMBER_STRING_ENCODING = unicode +# If True, all methods which are exclusive to v1 will raise a +# DeprecationWarning +ENABLE_V1_WARNINGS = False + + +def v1_deprecated(warning=None): + """Shows a warning if ENABLE_V1_WARNINGS is True. + + Function decorator used to mark methods used in v1 classes which + may be removed in future versions of the library. + """ + warning = warning or '' + # This closure is what is returned from the deprecated function. + def mark_deprecated(f): + # The deprecated_function wraps the actual call to f. + def optional_warn_function(*args, **kwargs): + if ENABLE_V1_WARNINGS: + warnings.warn(warning, DeprecationWarning, stacklevel=2) + return f(*args, **kwargs) + # Preserve the original name to avoid masking all decorated functions as + # 'deprecated_function' + try: + optional_warn_function.func_name = f.func_name + except TypeError: + pass # In Python2.3 we can't set the func_name + return optional_warn_function + return mark_deprecated + + def CreateClassFromXMLString(target_class, xml_string, string_encoding=None): """Creates an instance of the target class from the string contents. - + Args: target_class: class The class which will be instantiated and populated with the contents of the XML. This class must have a _tag and a @@ -82,7 +112,7 @@ of the XML string should match the tag and namespace of the desired class. string_encoding: str The character encoding which the xml_string should - be converted to before it is interpreted and translated into + be converted to before it is interpreted and translated into objects. The default is None in which case the string encoding is not changed. @@ -98,6 +128,11 @@ return _CreateClassFromElementTree(target_class, tree) +CreateClassFromXMLString = v1_deprecated( + 'Please use atom.core.parse with atom.data classes instead.')( + CreateClassFromXMLString) + + def _CreateClassFromElementTree(target_class, tree, namespace=None, tag=None): """Instantiates the class and populates members according to the tree. @@ -110,14 +145,14 @@ tree: ElementTree An element tree whose contents will be converted into members of the new target_class instance. namespace: str (optional) The namespace which the XML tree's root node must - match. If omitted, the namespace defaults to the _namespace of the + match. If omitted, the namespace defaults to the _namespace of the target class. tag: str (optional) The tag which the XML tree's root node must match. If - omitted, the tag defaults to the _tag class member of the target + omitted, the tag defaults to the _tag class member of the target class. Returns: - An instance of the target class - or None if the tag and namespace of + An instance of the target class - or None if the tag and namespace of the XML tree's root node did not match the desired namespace and tag. """ if namespace is None: @@ -133,13 +168,17 @@ class ExtensionContainer(object): - + def __init__(self, extension_elements=None, extension_attributes=None, text=None): self.extension_elements = extension_elements or [] self.extension_attributes = extension_attributes or {} self.text = text - + + __init__ = v1_deprecated( + 'Please use data model classes in atom.data instead.')( + __init__) + # Three methods to create an object from an ElementTree def _HarvestElementTree(self, tree): # Fill in the instance members from the contents of the XML tree. @@ -153,7 +192,7 @@ self.text = tree.text else: self.text = tree.text.encode(MEMBER_STRING_ENCODING) - + def _ConvertElementTreeToMember(self, child_tree, current_class=None): self.extension_elements.append(_ExtensionElementFromElementTree( child_tree)) @@ -165,7 +204,7 @@ self.extension_attributes[attribute] = value else: self.extension_attributes[attribute] = value.encode( - MEMBER_STRING_ENCODING) + MEMBER_STRING_ENCODING) # One method to create an ElementTree from an object def _AddMembersToElementTree(self, tree): @@ -180,7 +219,7 @@ tree.attrib[attribute] = value.decode(MEMBER_STRING_ENCODING) if self.text: if isinstance(self.text, unicode) or MEMBER_STRING_ENCODING is unicode: - tree.text = self.text + tree.text = self.text else: tree.text = self.text.decode(MEMBER_STRING_ENCODING) @@ -221,7 +260,7 @@ results.append(element) return results - + class AtomBase(ExtensionContainer): @@ -233,7 +272,11 @@ self.extension_elements = extension_elements or [] self.extension_attributes = extension_attributes or {} self.text = text - + + __init__ = v1_deprecated( + 'Please use data model classes in atom.data instead.')( + __init__) + def _ConvertElementTreeToMember(self, child_tree): # Find the element's tag in this class's list of child members if self.__class__._children.has_key(child_tree.tag): @@ -248,13 +291,13 @@ getattr(self, member_name).append(_CreateClassFromElementTree( member_class[0], child_tree)) else: - setattr(self, member_name, + setattr(self, member_name, _CreateClassFromElementTree(member_class, child_tree)) else: - ExtensionContainer._ConvertElementTreeToMember(self, child_tree) + ExtensionContainer._ConvertElementTreeToMember(self, child_tree) def _ConvertElementAttributeToMember(self, attribute, value): - # Find the attribute in this class's list of attributes. + # Find the attribute in this class's list of attributes. if self.__class__._attributes.has_key(attribute): # Find the member of this class which corresponds to the XML attribute # (lookup in current_class._attributes) and set this member to the @@ -264,18 +307,18 @@ if MEMBER_STRING_ENCODING is unicode: setattr(self, self.__class__._attributes[attribute], value) else: - setattr(self, self.__class__._attributes[attribute], - value.encode(MEMBER_STRING_ENCODING)) + setattr(self, self.__class__._attributes[attribute], + value.encode(MEMBER_STRING_ENCODING)) else: - ExtensionContainer._ConvertElementAttributeToMember(self, attribute, - value) + ExtensionContainer._ConvertElementAttributeToMember( + self, attribute, value) # Three methods to create an ElementTree from an object def _AddMembersToElementTree(self, tree): - # Convert the members of this class which are XML child nodes. + # Convert the members of this class which are XML child nodes. # This uses the class's _children dictionary to find the members which # should become XML child nodes. - member_node_names = [values[0] for tag, values in + member_node_names = [values[0] for tag, values in self.__class__._children.iteritems()] for member_name in member_node_names: member = getattr(self, member_name) @@ -294,29 +337,29 @@ tree.attrib[xml_attribute] = member else: tree.attrib[xml_attribute] = member.decode(MEMBER_STRING_ENCODING) - # Lastly, call the ExtensionContainers's _AddMembersToElementTree to + # Lastly, call the ExtensionContainers's _AddMembersToElementTree to # convert any extension attributes. ExtensionContainer._AddMembersToElementTree(self, tree) - - + + def _BecomeChildElement(self, tree): """ - Note: Only for use with classes that have a _tag and _namespace class + Note: Only for use with classes that have a _tag and _namespace class member. It is in AtomBase so that it can be inherited but it should not be called on instances of AtomBase. - + """ new_child = ElementTree.Element('') tree.append(new_child) - new_child.tag = '{%s}%s' % (self.__class__._namespace, + new_child.tag = '{%s}%s' % (self.__class__._namespace, self.__class__._tag) self._AddMembersToElementTree(new_child) def _ToElementTree(self): """ - Note, this method is designed to be used only with classes that have a + Note, this method is designed to be used only with classes that have a _tag and _namespace. It is placed in AtomBase for inheritance but should not be called on this class. @@ -333,7 +376,7 @@ def __str__(self): return self.ToString() - + class Name(AtomBase): """The atom:name element""" @@ -368,7 +411,7 @@ _namespace = ATOM_NAMESPACE _children = AtomBase._children.copy() _attributes = AtomBase._attributes.copy() - + def __init__(self, text=None, extension_elements=None, extension_attributes=None): """Constructor for Email @@ -414,12 +457,12 @@ def UriFromString(xml_string): return CreateClassFromXMLString(Uri, xml_string) - + class Person(AtomBase): """A foundation class from which atom:author and atom:contributor extend. - + A person contains information like name, email address, and web page URI for - an author or contributor to an Atom feed. + an author or contributor to an Atom feed. """ _children = AtomBase._children.copy() @@ -457,8 +500,8 @@ class Author(Person): """The atom:author element - - An author is a required element in Feed. + + An author is a required element in Feed. """ _tag = 'author' @@ -468,10 +511,10 @@ #_children = {} #_attributes = {} - def __init__(self, name=None, email=None, uri=None, + def __init__(self, name=None, email=None, uri=None, extension_elements=None, extension_attributes=None, text=None): """Constructor for Author - + Args: name: Name email: Email @@ -480,7 +523,7 @@ extension_attributes: dict A dictionary of attribute value string pairs text: str The text data in the this element """ - + self.name = name self.email = email self.uri = uri @@ -488,10 +531,10 @@ self.extension_attributes = extension_attributes or {} self.text = text - + def AuthorFromString(xml_string): return CreateClassFromXMLString(Author, xml_string) - + class Contributor(Person): """The atom:contributor element""" @@ -504,7 +547,7 @@ def __init__(self, name=None, email=None, uri=None, extension_elements=None, extension_attributes=None, text=None): """Constructor for Contributor - + Args: name: Name email: Email @@ -524,8 +567,8 @@ def ContributorFromString(xml_string): return CreateClassFromXMLString(Contributor, xml_string) - - + + class Link(AtomBase): """The atom:link element""" @@ -539,12 +582,12 @@ _attributes['title'] = 'title' _attributes['length'] = 'length' _attributes['hreflang'] = 'hreflang' - - def __init__(self, href=None, rel=None, link_type=None, hreflang=None, - title=None, length=None, text=None, extension_elements=None, + + def __init__(self, href=None, rel=None, link_type=None, hreflang=None, + title=None, length=None, text=None, extension_elements=None, extension_attributes=None): """Constructor for Link - + Args: href: string The href attribute of the link rel: string @@ -570,7 +613,7 @@ def LinkFromString(xml_string): return CreateClassFromXMLString(Link, xml_string) - + class Generator(AtomBase): """The atom:generator element""" @@ -582,10 +625,10 @@ _attributes['uri'] = 'uri' _attributes['version'] = 'version' - def __init__(self, uri=None, version=None, text=None, + def __init__(self, uri=None, version=None, text=None, extension_elements=None, extension_attributes=None): """Constructor for Generator - + Args: uri: string version: string @@ -606,7 +649,7 @@ class Text(AtomBase): """A foundation class from which atom:title, summary, etc. extend. - + This class should never be instantiated. """ @@ -617,14 +660,14 @@ def __init__(self, text_type=None, text=None, extension_elements=None, extension_attributes=None): """Constructor for Text - + Args: text_type: string text: str The text data in the this element extension_elements: list A list of ExtensionElement instances extension_attributes: dict A dictionary of attribute value string pairs """ - + self.type = text_type self.text = text self.extension_elements = extension_elements or [] @@ -642,7 +685,7 @@ def __init__(self, title_type=None, text=None, extension_elements=None, extension_attributes=None): """Constructor for Title - + Args: title_type: string text: str The text data in the this element @@ -671,7 +714,7 @@ def __init__(self, subtitle_type=None, text=None, extension_elements=None, extension_attributes=None): """Constructor for Subtitle - + Args: subtitle_type: string text: str The text data in the this element @@ -700,7 +743,7 @@ def __init__(self, rights_type=None, text=None, extension_elements=None, extension_attributes=None): """Constructor for Rights - + Args: rights_type: string text: str The text data in the this element @@ -729,7 +772,7 @@ def __init__(self, summary_type=None, text=None, extension_elements=None, extension_attributes=None): """Constructor for Summary - + Args: summary_type: string text: str The text data in the this element @@ -756,10 +799,10 @@ _attributes = Text._attributes.copy() _attributes['src'] = 'src' - def __init__(self, content_type=None, src=None, text=None, + def __init__(self, content_type=None, src=None, text=None, extension_elements=None, extension_attributes=None): """Constructor for Content - + Args: content_type: string src: string @@ -767,7 +810,7 @@ extension_elements: list A list of ExtensionElement instances extension_attributes: dict A dictionary of attribute value string pairs """ - + self.type = content_type self.src = src self.text = text @@ -789,10 +832,10 @@ _attributes['scheme'] = 'scheme' _attributes['label'] = 'label' - def __init__(self, term=None, scheme=None, label=None, text=None, + def __init__(self, term=None, scheme=None, label=None, text=None, extension_elements=None, extension_attributes=None): """Constructor for Category - + Args: term: str scheme: str @@ -801,7 +844,7 @@ extension_elements: list A list of ExtensionElement instances extension_attributes: dict A dictionary of attribute value string pairs """ - + self.term = term self.scheme = scheme self.label = label @@ -825,7 +868,7 @@ def __init__(self, text=None, extension_elements=None, extension_attributes=None): """Constructor for Id - + Args: text: str The text data in the this element extension_elements: list A list of ExtensionElement instances @@ -843,7 +886,7 @@ class Icon(AtomBase): """The atom:icon element.""" - + _tag = 'icon' _namespace = ATOM_NAMESPACE _children = AtomBase._children.copy() @@ -852,7 +895,7 @@ def __init__(self, text=None, extension_elements=None, extension_attributes=None): """Constructor for Icon - + Args: text: str The text data in the this element extension_elements: list A list of ExtensionElement instances @@ -879,13 +922,13 @@ def __init__(self, text=None, extension_elements=None, extension_attributes=None): """Constructor for Logo - + Args: text: str The text data in the this element extension_elements: list A list of ExtensionElement instances extension_attributes: dict A dictionary of attribute value string pairs """ - + self.text = text self.extension_elements = extension_elements or [] self.extension_attributes = extension_attributes or {} @@ -924,7 +967,7 @@ class Control(AtomBase): """The app:control element indicating restrictions on publication. - + The APP control element may contain a draft element indicating whether or not this entry should be publicly available. """ @@ -938,7 +981,7 @@ def __init__(self, draft=None, text=None, extension_elements=None, extension_attributes=None): """Constructor for app:control""" - + self.draft = draft self.text = text self.extension_elements = extension_elements or [] @@ -976,7 +1019,7 @@ def __init__(self, text=None, extension_elements=None, extension_attributes=None): """Constructor for Updated - + Args: text: str The text data in the this element extension_elements: list A list of ExtensionElement instances @@ -1003,7 +1046,7 @@ def __init__(self, text=None, extension_elements=None, extension_attributes=None): """Constructor for Published - + Args: text: str The text data in the this element extension_elements: list A list of ExtensionElement instances @@ -1048,6 +1091,12 @@ return a_link return None + def GetEditMediaLink(self): + for a_link in self.link: + if a_link.rel == 'edit-media': + return a_link + return None + def GetNextLink(self): for a_link in self.link: if a_link.rel == 'next': @@ -1065,8 +1114,8 @@ if a_link.rel == 'alternate': return a_link return None - - + + class FeedEntryParent(AtomBase, LinkFinder): """A super class for atom:feed and entry, contains shared attributes""" @@ -1081,8 +1130,8 @@ _children['{%s}title' % ATOM_NAMESPACE] = ('title', Title) _children['{%s}updated' % ATOM_NAMESPACE] = ('updated', Updated) - def __init__(self, author=None, category=None, contributor=None, - atom_id=None, link=None, rights=None, title=None, updated=None, + def __init__(self, author=None, category=None, contributor=None, + atom_id=None, link=None, rights=None, title=None, updated=None, text=None, extension_elements=None, extension_attributes=None): self.author = author or [] self.category = category or [] @@ -1110,7 +1159,7 @@ _children['{%s}subtitle' % ATOM_NAMESPACE] = ('subtitle', Subtitle) def __init__(self, author=None, category=None, contributor=None, - generator=None, icon=None, atom_id=None, link=None, logo=None, + generator=None, icon=None, atom_id=None, link=None, logo=None, rights=None, subtitle=None, title=None, updated=None, text=None, extension_elements=None, extension_attributes=None): """Constructor for Source @@ -1172,7 +1221,7 @@ _children['{%s}summary' % ATOM_NAMESPACE] = ('summary', Summary) _children['{%s}control' % APP_NAMESPACE] = ('control', Control) - def __init__(self, author=None, category=None, content=None, + def __init__(self, author=None, category=None, content=None, contributor=None, atom_id=None, link=None, published=None, rights=None, source=None, summary=None, control=None, title=None, updated=None, extension_elements=None, extension_attributes=None, text=None): @@ -1191,7 +1240,7 @@ summary: Summary the entry's summary element title: Title the entry's title element updated: Updated the entry's updated element - control: The entry's app:control element which can be used to mark an + control: The entry's app:control element which can be used to mark an entry as a draft which should not be publicly viewable. text: String The text contents of the element. This is the contents of the Entry's XML text node. (Example: This is the text) @@ -1218,6 +1267,8 @@ self.extension_elements = extension_elements or [] self.extension_attributes = extension_attributes or {} + __init__ = v1_deprecated('Please use atom.data.Entry instead.')(__init__) + def EntryFromString(xml_string): return CreateClassFromXMLString(Entry, xml_string) @@ -1233,33 +1284,33 @@ _children['{%s}entry' % ATOM_NAMESPACE] = ('entry', [Entry]) def __init__(self, author=None, category=None, contributor=None, - generator=None, icon=None, atom_id=None, link=None, logo=None, - rights=None, subtitle=None, title=None, updated=None, entry=None, + generator=None, icon=None, atom_id=None, link=None, logo=None, + rights=None, subtitle=None, title=None, updated=None, entry=None, text=None, extension_elements=None, extension_attributes=None): """Constructor for Source - + Args: author: list (optional) A list of Author instances which belong to this class. category: list (optional) A list of Category instances contributor: list (optional) A list on Contributor instances - generator: Generator (optional) - icon: Icon (optional) + generator: Generator (optional) + icon: Icon (optional) id: Id (optional) The entry's Id element link: list (optional) A list of Link instances - logo: Logo (optional) + logo: Logo (optional) rights: Rights (optional) The entry's Rights element subtitle: Subtitle (optional) The entry's subtitle element title: Title (optional) the entry's title element updated: Updated (optional) the entry's updated element - entry: list (optional) A list of the Entry instances contained in the + entry: list (optional) A list of the Entry instances contained in the feed. - text: String (optional) The text contents of the element. This is the - contents of the Entry's XML text node. + text: String (optional) The text contents of the element. This is the + contents of the Entry's XML text node. (Example: This is the text) extension_elements: list (optional) A list of ExtensionElement instances which are children of this element. - extension_attributes: dict (optional) A dictionary of strings which are + extension_attributes: dict (optional) A dictionary of strings which are the values for additional XML attributes of this element. """ @@ -1280,15 +1331,17 @@ self.extension_elements = extension_elements or [] self.extension_attributes = extension_attributes or {} + __init__ = v1_deprecated('Please use atom.data.Feed instead.')(__init__) + def FeedFromString(xml_string): return CreateClassFromXMLString(Feed, xml_string) - - + + class ExtensionElement(object): """Represents extra XML elements contained in Atom classes.""" - - def __init__(self, tag, namespace=None, attributes=None, + + def __init__(self, tag, namespace=None, attributes=None, children=None, text=None): """Constructor for EtensionElement @@ -1297,9 +1350,9 @@ tag: string (optional) The tag (without the namespace qualifier) for this element. To reconstruct the full qualified name of the element, combine this tag with the namespace. - attributes: dict (optinal) The attribute value string pairs for the XML + attributes: dict (optinal) The attribute value string pairs for the XML attributes of this element. - children: list (optional) A list of ExtensionElements which represent + children: list (optional) A list of ExtensionElements which represent the XML child nodes of this element. """ @@ -1308,28 +1361,28 @@ self.attributes = attributes or {} self.children = children or [] self.text = text - + def ToString(self): element_tree = self._TransferToElementTree(ElementTree.Element('')) return ElementTree.tostring(element_tree, encoding="UTF-8") - + def _TransferToElementTree(self, element_tree): if self.tag is None: return None - + if self.namespace is not None: element_tree.tag = '{%s}%s' % (self.namespace, self.tag) else: element_tree.tag = self.tag - + for key, value in self.attributes.iteritems(): element_tree.attrib[key] = value - + for child in self.children: child._BecomeChildElement(element_tree) - + element_tree.text = self.text - + return element_tree def _BecomeChildElement(self, element_tree): @@ -1383,8 +1436,8 @@ results.append(element) return results - - + + def ExtensionElementFromString(xml_string): element_tree = ElementTree.fromstring(xml_string) return _ExtensionElementFromElementTree(element_tree) @@ -1395,7 +1448,7 @@ if '}' in element_tag: namespace = element_tag[1:element_tag.index('}')] tag = element_tag[element_tag.index('}')+1:] - else: + else: namespace = None tag = element_tag extension = ExtensionElement(namespace=namespace, tag=tag) @@ -1405,3 +1458,27 @@ extension.children.append(_ExtensionElementFromElementTree(child)) extension.text = element_tree.text return extension + + +def deprecated(warning=None): + """Decorator to raise warning each time the function is called. + + Args: + warning: The warning message to be displayed as a string (optinoal). + """ + warning = warning or '' + # This closure is what is returned from the deprecated function. + def mark_deprecated(f): + # The deprecated_function wraps the actual call to f. + def deprecated_function(*args, **kwargs): + warnings.warn(warning, DeprecationWarning, stacklevel=2) + return f(*args, **kwargs) + # Preserve the original name to avoid masking all decorated functions as + # 'deprecated_function' + try: + deprecated_function.func_name = f.func_name + except TypeError: + # Setting the func_name is not allowed in Python2.3. + pass + return deprecated_function + return mark_deprecated diff -Nru python-gdata-1.2.4/src/atom/mock_http_core.py python-gdata-2.0.8/src/atom/mock_http_core.py --- python-gdata-1.2.4/src/atom/mock_http_core.py 2009-01-12 23:53:04.000000000 +0000 +++ python-gdata-2.0.8/src/atom/mock_http_core.py 2010-02-12 02:11:05.000000000 +0000 @@ -28,59 +28,89 @@ import atom.http_core -class MockHttpClient(object): +class Error(Exception): + pass + +class NoRecordingFound(Error): + pass + + +class MockHttpClient(object): + debug = None real_client = None + last_request_was_live = False + + # The following members are used to construct the session cache temp file + # name. + # These are combined to form the file name + # /tmp/cache_prefix.cache_case_name.cache_test_name + cache_name_prefix = 'gdata_live_test' + cache_case_name = '' + cache_test_name = '' def __init__(self, recordings=None, real_client=None): self._recordings = recordings or [] if real_client is not None: self.real_client = real_client - def add_response(self, http_request, status, reason, headers=None, + def add_response(self, http_request, status, reason, headers=None, body=None): - if body is not None: - if hasattr(body, 'read'): - copied_body = body.read() - else: - copied_body = body - response = atom.http_core.HttpResponse(status, reason, headers, - copied_body) + response = MockHttpResponse(status, reason, headers, body) # TODO Scrub the request and the response. self._recordings.append((http_request._copy(), response)) - + + AddResponse = add_response + def request(self, http_request): """Provide a recorded response, or record a response for replay. If the real_client is set, the request will be made using the real_client, and the response from the server will be recorded. If the real_client is None (the default), this method will examine - the recordings and find the first which matches. + the recordings and find the first which matches. """ request = http_request._copy() _scrub_request(request) if self.real_client is None: + self.last_request_was_live = False for recording in self._recordings: if _match_request(recording[0], request): return recording[1] else: + # Pass along the debug settings to the real client. + self.real_client.debug = self.debug + # Make an actual request since we can use the real HTTP client. + self.last_request_was_live = True response = self.real_client.request(http_request) - _scrub_response(response) - self.add_response(request, response.status, response.reason, - dict(response.getheaders()), response.read()) + scrubbed_response = _scrub_response(response) + self.add_response(request, scrubbed_response.status, + scrubbed_response.reason, + dict(atom.http_core.get_headers(scrubbed_response)), + scrubbed_response.read()) # Return the recording which we just added. return self._recordings[-1][1] - return None - + raise NoRecordingFound('No recoding was found for request: %s %s' % ( + request.method, str(request.uri))) + + Request = request + def _save_recordings(self, filename): - recording_file = open(os.path.join(tempfile.gettempdir(), filename), + recording_file = open(os.path.join(tempfile.gettempdir(), filename), 'wb') pickle.dump(self._recordings, recording_file) + recording_file.close() def _load_recordings(self, filename): - recording_file = open(os.path.join(tempfile.gettempdir(), filename), + recording_file = open(os.path.join(tempfile.gettempdir(), filename), 'rb') self._recordings = pickle.load(recording_file) + recording_file.close() + + def _delete_recordings(self, filename): + full_path = os.path.join(tempfile.gettempdir(), filename) + if os.path.exists(full_path): + os.remove(full_path) def _load_or_use_client(self, filename, http_client): if os.path.exists(os.path.join(tempfile.gettempdir(), filename)): @@ -88,18 +118,118 @@ else: self.real_client = http_client + def use_cached_session(self, name=None, real_http_client=None): + """Attempts to load recordings from a previous live request. + + If a temp file with the recordings exists, then it is used to fulfill + requests. If the file does not exist, then a real client is used to + actually make the desired HTTP requests. Requests and responses are + recorded and will be written to the desired temprary cache file when + close_session is called. + + Args: + name: str (optional) The file name of session file to be used. The file + is loaded from the temporary directory of this machine. If no name + is passed in, a default name will be constructed using the + cache_name_prefix, cache_case_name, and cache_test_name of this + object. + real_http_client: atom.http_core.HttpClient the real client to be used + if the cached recordings are not found. If the default + value is used, this will be an + atom.http_core.HttpClient. + """ + if real_http_client is None: + real_http_client = atom.http_core.HttpClient() + if name is None: + self._recordings_cache_name = self.get_cache_file_name() + else: + self._recordings_cache_name = name + self._load_or_use_client(self._recordings_cache_name, real_http_client) + + def close_session(self): + """Saves recordings in the temporary file named in use_cached_session.""" + if self.real_client is not None: + self._save_recordings(self._recordings_cache_name) + + def delete_session(self, name=None): + """Removes recordings from a previous live request.""" + if name is None: + self._delete_recordings(self._recordings_cache_name) + else: + self._delete_recordings(name) + + def get_cache_file_name(self): + return '%s.%s.%s' % (self.cache_name_prefix, self.cache_case_name, + self.cache_test_name) + + def _dump(self): + """Provides debug information in a string.""" + output = 'MockHttpClient\n real_client: %s\n cache file name: %s\n' % ( + self.real_client, self.get_cache_file_name()) + output += ' recordings:\n' + i = 0 + for recording in self._recordings: + output += ' recording %i is for: %s %s\n' % ( + i, recording[0].method, str(recording[0].uri)) + i += 1 + return output + + def _match_request(http_request, stored_request): - """Determines whether a request is similar enough to a stored request + """Determines whether a request is similar enough to a stored request to cause the stored response to be returned.""" + # Check to see if the host names match. + if (http_request.uri.host is not None + and http_request.uri.host != stored_request.uri.host): + return False + # Check the request path in the URL (/feeds/private/full/x) + elif http_request.uri.path != stored_request.uri.path: + return False + # Check the method used in the request (GET, POST, etc.) + elif http_request.method != stored_request.method: + return False + # If there is a gsession ID in either request, make sure that it is matched + # exactly. + elif ('gsessionid' in http_request.uri.query + or 'gsessionid' in stored_request.uri.query): + if 'gsessionid' not in stored_request.uri.query: + return False + elif 'gsessionid' not in http_request.uri.query: + return False + elif (http_request.uri.query['gsessionid'] + != stored_request.uri.query['gsessionid']): + return False + # Ignores differences in the query params (?start-index=5&max-results=20), + # the body of the request, the port number, HTTP headers, just to name a + # few. return True + def _scrub_request(http_request): - pass + """ Removes email address and password from a client login request. + + Since the mock server saves the request and response in plantext, sensitive + information like the password should be removed before saving the + recordings. At the moment only requests sent to a ClientLogin url are + scrubbed. + """ + if (http_request and http_request.uri and http_request.uri.path and + http_request.uri.path.endswith('ClientLogin')): + # Remove the email and password from a ClientLogin request. + http_request._body_parts = [] + http_request.add_form_inputs( + {'form_data': 'client login request has been scrubbed'}) + else: + # We can remove the body of the post from the recorded request, since + # the request body is not used when finding a matching recording. + http_request._body_parts = [] + return http_request + def _scrub_response(http_response): - pass + return http_response + - class EchoHttpClient(object): """Sends the request data back in the response. @@ -114,23 +244,25 @@ 'Echo-Scheme': The beginning of the URL, usually 'http' or 'https' 'Echo-Method': The HTTP method being used, 'GET', 'POST', 'PUT', etc. """ - + def request(self, http_request): - return self._http_request(http_request.host, http_request.method, - http_request.uri, http_request.scheme, http_request.port, - http_request.headers, http_request._body_parts) + return self._http_request(http_request.uri, http_request.method, + http_request.headers, http_request._body_parts) - def _http_request(self, host, method, uri, scheme=None, port=None, - headers=None, body_parts=None): + def _http_request(self, uri, method, headers=None, body_parts=None): body = StringIO.StringIO() response = atom.http_core.HttpResponse(status=200, reason='OK', body=body) if headers is None: response._headers = {} else: - response._headers = headers.copy() - response._headers['Echo-Host'] = '%s:%s' % (host, str(port)) - response._headers['Echo-Uri'] = uri - response._headers['Echo-Scheme'] = scheme + # Copy headers from the request to the response but convert values to + # strings. Server response headers always come in as strings, so an int + # should be converted to a corresponding string when echoing. + for header, value in headers.iteritems(): + response._headers[header] = str(value) + response._headers['Echo-Host'] = '%s:%s' % (uri.host, str(uri.port)) + response._headers['Echo-Uri'] = uri._get_relative_path() + response._headers['Echo-Scheme'] = uri.scheme response._headers['Echo-Method'] = method for part in body_parts: if isinstance(part, str): @@ -139,3 +271,53 @@ body.write(part.read()) body.seek(0) return response + + +class SettableHttpClient(object): + """An HTTP Client which responds with the data given in set_response.""" + + def __init__(self, status, reason, body, headers): + """Configures the response for the server. + + See set_response for details on the arguments to the constructor. + """ + self.set_response(status, reason, body, headers) + self.last_request = None + + def set_response(self, status, reason, body, headers): + """Determines the response which will be sent for each request. + + Args: + status: An int for the HTTP status code, example: 200, 404, etc. + reason: String for the HTTP reason, example: OK, NOT FOUND, etc. + body: The body of the HTTP response as a string or a file-like + object (something with a read method). + headers: dict of strings containing the HTTP headers in the response. + """ + self.response = atom.http_core.HttpResponse(status=status, reason=reason, + body=body) + self.response._headers = headers.copy() + + def request(self, http_request): + self.last_request = http_request + return self.response + + +class MockHttpResponse(atom.http_core.HttpResponse): + + def __init__(self, status=None, reason=None, headers=None, body=None): + self._headers = headers or {} + if status is not None: + self.status = status + if reason is not None: + self.reason = reason + if body is not None: + # Instead of using a file-like object for the body, store as a string + # so that reads can be repeated. + if hasattr(body, 'read'): + self._body = body.read() + else: + self._body = body + + def read(self): + return self._body diff -Nru python-gdata-1.2.4/src/atom/service.py python-gdata-2.0.8/src/atom/service.py --- python-gdata-1.2.4/src/atom/service.py 2008-10-17 22:04:43.000000000 +0100 +++ python-gdata-2.0.8/src/atom/service.py 2010-02-05 00:40:58.000000000 +0000 @@ -52,6 +52,7 @@ from xml.etree import ElementTree except ImportError: from elementtree import ElementTree +import atom class AtomService(object): @@ -77,6 +78,7 @@ override_token = property(_get_override_token, _set_override_token) + #@atom.v1_deprecated('Please use atom.client.AtomPubClient instead.') def __init__(self, server=None, additional_headers=None, application_name='', http_client=None, token_store=None): """Creates a new AtomService client. @@ -104,6 +106,10 @@ # If debug is True, the HTTPConnection will display debug information self._set_debug(False) + __init__ = atom.v1_deprecated( + 'Please use atom.client.AtomPubClient instead.')( + __init__) + def _get_debug(self): return self.http_client.debug @@ -142,10 +148,14 @@ """ self.use_basic_auth(username, password) + #@atom.v1_deprecated('Please use atom.client.AtomPubClient for requests.') def request(self, operation, url, data=None, headers=None, url_params=None): - if isinstance(url, str): - if not url.startswith('http') and self.ssl: + if isinstance(url, (str, unicode)): + if url.startswith('http:') and self.ssl: + # Force all requests to be https if self.ssl is True. + url = atom.url.parse_url('https:' + url[5:]) + elif not url.startswith('http') and self.ssl: url = atom.url.parse_url('https://%s%s' % (self.server, url)) elif not url.startswith('http'): url = atom.url.parse_url('http://%s%s' % (self.server, url)) @@ -175,6 +185,10 @@ return auth_token.perform_request(self.http_client, operation, url, data=data, headers=all_headers) + request = atom.v1_deprecated( + 'Please use atom.client.AtomPubClient for requests.')( + request) + # CRUD operations def Get(self, uri, extra_headers=None, url_params=None, escape_params=True): """Query the APP server with the given URI diff -Nru python-gdata-1.2.4/src/gdata/acl/data.py python-gdata-2.0.8/src/gdata/acl/data.py --- python-gdata-1.2.4/src/gdata/acl/data.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/acl/data.py 2009-12-17 19:20:33.000000000 +0000 @@ -0,0 +1,55 @@ +#!/usr/bin/python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Contains the data classes of the Google Access Control List (ACL) Extension""" + + +__author__ = 'j.s@google.com (Jeff Scudder)' + + +import atom.core +import atom.data +import gdata.data +import gdata.opensearch.data + + +GACL_TEMPLATE = '{http://schemas.google.com/acl/2007}%s' + + +class AclRole(atom.core.XmlElement): + """Describes the role of an entry in an access control list.""" + _qname = GACL_TEMPLATE % 'role' + value = 'value' + + +class AclScope(atom.core.XmlElement): + """Describes the scope of an entry in an access control list.""" + _qname = GACL_TEMPLATE % 'scope' + type = 'type' + value = 'value' + + +class AclEntry(gdata.data.GDEntry): + """Describes an entry in a feed of an access control list (ACL).""" + scope = AclScope + role = AclRole + + +class AclFeed(gdata.data.GDFeed): + """Describes a feed of an access control list (ACL).""" + entry = [AclEntry] + + diff -Nru python-gdata-1.2.4/src/gdata/acl/__init__.py python-gdata-2.0.8/src/gdata/acl/__init__.py --- python-gdata-1.2.4/src/gdata/acl/__init__.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/acl/__init__.py 2009-12-02 01:58:26.000000000 +0000 @@ -0,0 +1,15 @@ +#!/usr/bin/python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. diff -Nru python-gdata-1.2.4/src/gdata/alt/app_engine.py python-gdata-2.0.8/src/gdata/alt/app_engine.py --- python-gdata-1.2.4/src/gdata/alt/app_engine.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/alt/app_engine.py 2009-12-12 02:54:50.000000000 +0000 @@ -0,0 +1,101 @@ +#!/usr/bin/python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +"""Provides functions to persist serialized auth tokens in the datastore. + +The get_token and set_token functions should be used in conjunction with +gdata.gauth's token_from_blob and token_to_blob to allow auth token objects +to be reused across requests. It is up to your own code to ensure that the +token key's are unique. +""" + +__author__ = 'j.s@google.com (Jeff Scudder)' + + +from google.appengine.ext import db +from google.appengine.api import memcache + + +class Token(db.Model): + """Datastore Model which stores a serialized auth token.""" + t = db.BlobProperty() + + +def get_token(unique_key): + """Searches for a stored token with the desired key. + + Checks memcache and then the datastore if required. + + Args: + unique_key: str which uniquely identifies the desired auth token. + + Returns: + A string encoding the auth token data. Use gdata.gauth.token_from_blob to + convert back into a usable token object. None if the token was not found + in memcache or the datastore. + """ + token_string = memcache.get(unique_key) + if token_string is None: + # The token wasn't in memcache, so look in the datastore. + token = Token.get_by_key_name(unique_key) + if token is None: + return None + return token.t + return token_string + + +def set_token(unique_key, token_str): + """Saves the serialized auth token in the datastore. + + The token is also stored in memcache to speed up retrieval on a cache hit. + + Args: + unique_key: The unique name for this token as a string. It is up to your + code to ensure that this token value is unique in your application. + Previous values will be silently overwitten. + token_str: A serialized auth token as a string. I expect that this string + will be generated by gdata.gauth.token_to_blob. + + Returns: + True if the token was stored sucessfully, False if the token could not be + safely cached (if an old value could not be cleared). If the token was + set in memcache, but not in the datastore, this function will return None. + However, in that situation an exception will likely be raised. + + Raises: + Datastore exceptions may be raised from the App Engine SDK in the event of + failure. + """ + # First try to save in memcache. + result = memcache.set(unique_key, token_str) + # If memcache fails to save the value, clear the cached value. + if not result: + result = memcache.delete(unique_key) + # If we could not clear the cached value for this token, refuse to save. + if result == 0: + return False + # Save to the datastore. + if Token(key_name=unique_key, t=token_str).put(): + return True + return None + + +def delete_token(unique_key): + # Clear from memcache. + memcache.delete(unique_key) + # Clear from the datastore. + Token(key_name=unique_key).delete() diff -Nru python-gdata-1.2.4/src/gdata/alt/appengine.py python-gdata-2.0.8/src/gdata/alt/appengine.py --- python-gdata-1.2.4/src/gdata/alt/appengine.py 2008-10-11 01:59:48.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/alt/appengine.py 2010-01-13 22:04:30.000000000 +0000 @@ -43,7 +43,7 @@ def run_on_appengine(gdata_service, store_tokens=True, - single_user_mode=False): + single_user_mode=False, deadline=None): """Modifies a GDataService object to allow it to run on App Engine. Args: @@ -68,8 +68,13 @@ be stored in the datastore and they should not be stored in the gdata_service object. This will make it impossible to make requests which require authorization. + deadline: int (optional) The number of seconds to wait for a response + before timing out on the HTTP request. If no deadline is + specified, the deafault deadline for HTTP requests from App + Engine is used. The maximum is currently 10 (for 10 seconds). + The default deadline for App Engine is 5 seconds. """ - gdata_service.http_client = AppEngineHttpClient() + gdata_service.http_client = AppEngineHttpClient(deadline=deadline) gdata_service.token_store = AppEngineTokenStore() gdata_service.auto_store_tokens = store_tokens gdata_service.auto_set_current_token = single_user_mode @@ -77,9 +82,10 @@ class AppEngineHttpClient(atom.http_interface.GenericHttpClient): - def __init__(self, headers=None): + def __init__(self, headers=None, deadline=None): self.debug = False self.headers = headers or {} + self.deadline = deadline def request(self, operation, url, data=None, headers=None): """Performs an HTTP call to the server, supports GET, POST, PUT, and @@ -140,8 +146,12 @@ method = urlfetch.DELETE else: method = None + if self.deadline is None: + return HttpResponse(urlfetch.Fetch(url=str(url), payload=data_str, + method=method, headers=all_headers, follow_redirects=False)) return HttpResponse(urlfetch.Fetch(url=str(url), payload=data_str, - method=method, headers=all_headers, follow_redirects=False)) + method=method, headers=all_headers, follow_redirects=False, + deadline=self.deadline)) def _convert_data_part(data): @@ -193,7 +203,7 @@ users.get_current_user() returns a user object). """ def __init__(self): - pass + self.user = None def add_token(self, token): """Associates the token with the current user and stores it. @@ -203,12 +213,12 @@ Returns: False if the token was not stored. """ - tokens = load_auth_tokens() + tokens = load_auth_tokens(self.user) if not hasattr(token, 'scopes') or not token.scopes: return False for scope in token.scopes: tokens[str(scope)] = token - key = save_auth_tokens(tokens) + key = save_auth_tokens(tokens, self.user) if key: return True return False @@ -226,14 +236,14 @@ return None if isinstance(url, (str, unicode)): url = atom.url.parse_url(url) - tokens = load_auth_tokens() + tokens = load_auth_tokens(self.user) if url in tokens: token = tokens[url] if token.valid_for_scope(url): return token else: del tokens[url] - save_auth_tokens(tokens) + save_auth_tokens(tokens, self.user) for scope, token in tokens.iteritems(): if token.valid_for_scope(url): return token @@ -248,7 +258,7 @@ """ token_found = False scopes_to_delete = [] - tokens = load_auth_tokens() + tokens = load_auth_tokens(self.user) for scope, stored_token in tokens.iteritems(): if stored_token == token: scopes_to_delete.append(scope) @@ -256,15 +266,15 @@ for scope in scopes_to_delete: del tokens[scope] if token_found: - save_auth_tokens(tokens) + save_auth_tokens(tokens, self.user) return token_found def remove_all_tokens(self): """Removes all of the current user's tokens from the datastore.""" - save_auth_tokens({}) + save_auth_tokens({}, self.user) -def save_auth_tokens(token_dict): +def save_auth_tokens(token_dict, user=None): """Associates the tokens with the current user and writes to the datastore. If there us no current user, the tokens are not written and this function @@ -274,29 +284,38 @@ The key of the datastore entity containing the user's tokens, or None if there was no current user. """ - if users.get_current_user() is None: + if user is None: + user = users.get_current_user() + if user is None: return None - user_tokens = TokenCollection.all().filter('user =', users.get_current_user()).get() + memcache.set('gdata_pickled_tokens:%s' % user, pickle.dumps(token_dict)) + user_tokens = TokenCollection.all().filter('user =', user).get() if user_tokens: user_tokens.pickled_tokens = pickle.dumps(token_dict) return user_tokens.put() else: user_tokens = TokenCollection( - user=users.get_current_user(), + user=user, pickled_tokens=pickle.dumps(token_dict)) return user_tokens.put() -def load_auth_tokens(): +def load_auth_tokens(user=None): """Reads a dictionary of the current user's tokens from the datastore. If there is no current user (a user is not signed in to the app) or the user does not have any tokens, an empty dictionary is returned. """ - if users.get_current_user() is None: + if user is None: + user = users.get_current_user() + if user is None: return {} - user_tokens = TokenCollection.all().filter('user =', users.get_current_user()).get() + pickled_tokens = memcache.get('gdata_pickled_tokens:%s' % user) + if pickled_tokens: + return pickle.loads(pickled_tokens) + user_tokens = TokenCollection.all().filter('user =', user).get() if user_tokens: + memcache.set('gdata_pickled_tokens:%s' % user, user_tokens.pickled_tokens) return pickle.loads(user_tokens.pickled_tokens) return {} diff -Nru python-gdata-1.2.4/src/gdata/analytics/client.py python-gdata-2.0.8/src/gdata/analytics/client.py --- python-gdata-1.2.4/src/gdata/analytics/client.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/analytics/client.py 2009-12-18 23:14:40.000000000 +0000 @@ -0,0 +1,130 @@ +#!/usr/bin/python +# +# Copyright 2009 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""AnalyticsClient extends gdata.client.GDClient to streamline +Google Analytics Data Export API calls.""" + +__author__ = 'api.nickm@google.com (Nick Mihailovski)' + + +import atom.data +import gdata.client +import gdata.analytics.data +import gdata.gauth + + +class AnalyticsClient(gdata.client.GDClient): + """Client extension for the Google Analytics API service.""" + + api_version = '2' + auth_service = 'analytics' + auth_scopes = gdata.gauth.AUTH_SCOPES['analytics'] + account_type = 'GOOGLE' + + def __init__(self, auth_token=None, **kwargs): + """Constructs a new client for the Google Analytics Data Export API. + + Args: + auth_token: gdata.gauth.ClientLoginToken, AuthSubToken, or + OAuthToken (optional) Authorizes this client to edit the user's data. + kwargs: The other parameters to pass to gdata.client.GDClient + constructor. + """ + + gdata.client.GDClient.__init__(self, auth_token=auth_token, **kwargs) + + def get_account_feed(self, feed_uri, auth_token=None, **kwargs): + """Makes a request to the Analytics API Account Feed. + + Args: + feed_uri: str or gdata.analytics.AccountFeedQuery The Analytics Account + Feed uri to define what data to retrieve from the API. Can also be + used with a gdata.analytics.AccountFeedQuery object. + """ + + return self.get_feed(feed_uri, + desired_class=gdata.analytics.data.AccountFeed, + auth_token=auth_token, + **kwargs) + + GetAccountFeed = get_account_feed + + def get_data_feed(self, feed_uri, auth_token=None, **kwargs): + """Makes a request to the Analytics API Data Feed. + + Args: + feed_uri: str or gdata.analytics.AccountFeedQuery The Analytics Data + Feed uri to define what data to retrieve from the API. Can also be + used with a gdata.analytics.AccountFeedQuery object. + """ + + return self.get_feed(feed_uri, + desired_class=gdata.analytics.data.DataFeed, + auth_token=auth_token, + **kwargs) + + GetDataFeed = get_data_feed + + +class AccountFeedQuery(gdata.client.GDQuery): + """Account Feed query class to simplify constructing Account Feed Urls. + + To use this class, you can either pass a dict in the constructor that has + all the data feed query parameters as keys. + queryUrl = DataFeedQuery({'max-results': '10000'}) + + Alternatively you can add new parameters directly to the query object. + queryUrl = DataFeedQuery() + queryUrl.query['max-results'] = '10000' + + Args: + query: dict (optional) Contains all the GA Data Feed query parameters + as keys. + """ + + scheme = 'https' + host = 'www.google.com' + path = '/analytics/feeds/accounts/default' + + def __init__(self, query=None, **kwargs): + self.query = query or {} + gdata.client.GDQuery(self, **kwargs) + + +class DataFeedQuery(gdata.client.GDQuery): + """Data Feed query class to simplify constructing Data Feed Urls. + + To use this class, you can either pass a dict in the constructor that has + all the data feed query parameters as keys. + queryUrl = DataFeedQuery({'start-date': '2008-10-01'}) + + Alternatively you can add new parameters directly to the query object. + queryUrl = DataFeedQuery() + queryUrl.query['start-date'] = '2008-10-01' + + Args: + query: dict (optional) Contains all the GA Data Feed query parameters + as keys. + """ + + scheme = 'https' + host = 'www.google.com' + path = '/analytics/feeds/data' + + def __init__(self, query=None, **kwargs): + self.query = query or {} + gdata.client.GDQuery(self, **kwargs) + diff -Nru python-gdata-1.2.4/src/gdata/analytics/data.py python-gdata-2.0.8/src/gdata/analytics/data.py --- python-gdata-1.2.4/src/gdata/analytics/data.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/analytics/data.py 2009-12-17 19:20:33.000000000 +0000 @@ -0,0 +1,273 @@ +#!/usr/bin/python +# +# Copyright 2009 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Data model classes for parsing and generating XML for the +Google Analytics Data Export API.""" + +__author__ = 'api.nickm@google.com (Nick Mihailovski)' + + +import gdata.data +import atom.core + + +# XML Namespace used in Google Analytics API entities. +DXP_NS = '{http://schemas.google.com/analytics/2009}%s' +GA_NS = '{http://schemas.google.com/ga/2009}%s' + + +class GetProperty(object): + """Utility class to simplify retrieving Property objects.""" + + def get_property(self, name): + """Helper method to return a propery object by its name attribute. + + Args: + name: string The name of the element to retrieve. + + Returns: + A property object corresponding to the matching element. + if no property is found, None is returned. + """ + + for prop in self.property: + if prop.name == name: + return prop + + return None + + GetProperty = get_property + + +class GetMetric(object): + """Utility class to simplify retrieving Metric objects.""" + + def get_metric(self, name): + """Helper method to return a propery value by its name attribute + + Args: + name: string The name of the element to retrieve. + + Returns: + A property object corresponding to the matching element. + if no property is found, None is returned. + """ + + for met in self.metric: + if met.name == name: + return met + + return None + + GetMetric = get_metric + + +class GetDimension(object): + """Utility class to simplify retrieving Dimension objects.""" + + def get_dimension(self, name): + """Helper method to return a dimention object by its name attribute + + Args: + name: string The name of the element to retrieve. + + Returns: + A dimension object corresponding to the matching element. + if no dimension is found, None is returned. + """ + + for dim in self.dimension: + if dim.name == name: + return dim + + return None + + GetDimension = get_dimension + + +class StartDate(atom.core.XmlElement): + """Analytics Feed """ + _qname = DXP_NS % 'startDate' + + +class EndDate(atom.core.XmlElement): + """Analytics Feed """ + _qname = DXP_NS % 'endDate' + + +class Metric(atom.core.XmlElement): + """Analytics Feed """ + _qname = DXP_NS % 'metric' + name = 'name' + type = 'type' + value = 'value' + confidence_interval = 'confidenceInterval' + + +class Aggregates(atom.core.XmlElement, GetMetric): + """Analytics Data Feed """ + _qname = DXP_NS % 'aggregates' + metric = [Metric] + + +class TableId(atom.core.XmlElement): + """Analytics Feed """ + _qname = DXP_NS % 'tableId' + + +class TableName(atom.core.XmlElement): + """Analytics Feed """ + _qname = DXP_NS % 'tableName' + + +class Property(atom.core.XmlElement): + """Analytics Feed """ + _qname = DXP_NS % 'property' + name = 'name' + value = 'value' + + +class Definition(atom.core.XmlElement): + """Analytics Feed """ + _qname = DXP_NS % 'definition' + + +class Segment(atom.core.XmlElement): + """Analytics Feed """ + _qname = DXP_NS % 'segment' + id = 'id' + name = 'name' + definition = Definition + + +class Engagement(atom.core.XmlElement): + """Analytics Feed """ + _qname = GA_NS % 'engagement' + type = 'type' + comparison = 'comparison' + threshold_value = 'thresholdValue' + + +class Step(atom.core.XmlElement): + """Analytics Feed """ + _qname = GA_NS % 'step' + number = 'number' + name = 'name' + path = 'path' + + +class Destination(atom.core.XmlElement): + """Analytics Feed """ + _qname = GA_NS % 'destination' + step = [Step] + expression = 'expression' + case_sensitive = 'caseSensitive' + match_type = 'matchType' + step1_required = 'step1Required' + + +class Goal(atom.core.XmlElement): + """Analytics Feed """ + _qname = GA_NS % 'goal' + destination = Destination + engagement = Engagement + number = 'number' + name = 'name' + value = 'value' + active = 'active' + + +class CustomVariable(atom.core.XmlElement): + """Analytics Data Feed """ + _qname = GA_NS % 'customVariable' + index = 'index' + name = 'name' + scope = 'scope' + + +class DataSource(atom.core.XmlElement, GetProperty): + """Analytics Data Feed """ + _qname = DXP_NS % 'dataSource' + table_id = TableId + table_name = TableName + property = [Property] + + +class Dimension(atom.core.XmlElement): + """Analytics Feed """ + _qname = DXP_NS % 'dimension' + name = 'name' + value = 'value' + + +# Account Feed. +class AccountEntry(gdata.data.GDEntry, GetProperty): + """Analytics Account Feed """ + _qname = atom.data.ATOM_TEMPLATE % 'entry' + table_id = TableId + property = [Property] + goal = [Goal] + custom_variable = [CustomVariable] + + +class AccountFeed(gdata.data.GDFeed): + """Analytics Account Feed """ + _qname = atom.data.ATOM_TEMPLATE % 'feed' + segment = [Segment] + entry = [AccountEntry] + + +# Data Feed. +class DataEntry(gdata.data.GDEntry, GetMetric, GetDimension): + """Analytics Data Feed """ + _qname = atom.data.ATOM_TEMPLATE % 'entry' + dimension = [Dimension] + metric = [Metric] + + def get_object(self, name): + """Returns either a Dimension or Metric object with the same name as the + name parameter. + + Args: + name: string The name of the object to retrieve. + + Returns: + Either a Dimension or Object that has the same as the name parameter. + """ + + output = self.GetDimension(name) + if not output: + output = self.GetMetric(name) + + return output + + GetObject = get_object + + +class DataFeed(gdata.data.GDFeed): + """Analytics Data Feed . Althrough there is only one datasource, it is + stored in an array to replicate the design of the Java client library and + ensure backwards compatibility if new data sources are added in the future. + """ + + _qname = atom.data.ATOM_TEMPLATE % 'feed' + start_date = StartDate + end_date = EndDate + aggregates = Aggregates + data_source = [DataSource] + entry = [DataEntry] + segment = Segment + diff -Nru python-gdata-1.2.4/src/gdata/analytics/__init__.py python-gdata-2.0.8/src/gdata/analytics/__init__.py --- python-gdata-1.2.4/src/gdata/analytics/__init__.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/analytics/__init__.py 2009-07-24 00:08:02.000000000 +0100 @@ -0,0 +1,223 @@ +#!/usr/bin/python +# +# Original Copyright (C) 2006 Google Inc. +# Refactored in 2009 to work for Google Analytics by Sal Uryasev at Juice Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Note that this module will not function without specifically adding +# 'analytics': [ #Google Analytics +# 'https://www.google.com/analytics/feeds/'], +# to CLIENT_LOGIN_SCOPES in the gdata/service.py file + +"""Contains extensions to Atom objects used with Google Analytics.""" + +__author__ = 'api.suryasev (Sal Uryasev)' + +import atom +import gdata + +GAN_NAMESPACE = 'http://schemas.google.com/analytics/2009' + +class TableId(gdata.GDataEntry): + """tableId element.""" + _tag = 'tableId' + _namespace = GAN_NAMESPACE + +class Property(gdata.GDataEntry): + _tag = 'property' + _namespace = GAN_NAMESPACE + _children = gdata.GDataEntry._children.copy() + _attributes = gdata.GDataEntry._attributes.copy() + + _attributes['name'] = 'name' + _attributes['value'] = 'value' + + def __init__(self, name=None, value=None, *args, **kwargs): + self.name = name + self.value = value + super(Property, self).__init__(*args, **kwargs) + + def __str__(self): + return self.value + + def __repr__(self): + return self.value + +class AccountListEntry(gdata.GDataEntry): + """The Google Documents version of an Atom Entry""" + + _tag = 'entry' + _namespace = atom.ATOM_NAMESPACE + _children = gdata.GDataEntry._children.copy() + _attributes = gdata.GDataEntry._attributes.copy() + _children['{%s}tableId' % GAN_NAMESPACE] = ('tableId', + [TableId]) + _children['{%s}property' % GAN_NAMESPACE] = ('property', + [Property]) + + def __init__(self, tableId=None, property=None, + *args, **kwargs): + self.tableId = tableId + self.property = property + super(AccountListEntry, self).__init__(*args, **kwargs) + + +def AccountListEntryFromString(xml_string): + """Converts an XML string into an AccountListEntry object. + + Args: + xml_string: string The XML describing a Document List feed entry. + + Returns: + A AccountListEntry object corresponding to the given XML. + """ + return atom.CreateClassFromXMLString(AccountListEntry, xml_string) + + +class AccountListFeed(gdata.GDataFeed): + """A feed containing a list of Google Documents Items""" + + _tag = 'feed' + _namespace = atom.ATOM_NAMESPACE + _children = gdata.GDataFeed._children.copy() + _attributes = gdata.GDataFeed._attributes.copy() + _children['{%s}entry' % atom.ATOM_NAMESPACE] = ('entry', + [AccountListEntry]) + + +def AccountListFeedFromString(xml_string): + """Converts an XML string into an AccountListFeed object. + + Args: + xml_string: string The XML describing an AccountList feed. + + Returns: + An AccountListFeed object corresponding to the given XML. + All properties are also linked to with a direct reference + from each entry object for convenience. (e.g. entry.AccountName) + """ + feed = atom.CreateClassFromXMLString(AccountListFeed, xml_string) + for entry in feed.entry: + for pro in entry.property: + entry.__dict__[pro.name.replace('ga:','')] = pro + for td in entry.tableId: + td.__dict__['value'] = td.text + return feed + +class Dimension(gdata.GDataEntry): + _tag = 'dimension' + _namespace = GAN_NAMESPACE + _children = gdata.GDataEntry._children.copy() + _attributes = gdata.GDataEntry._attributes.copy() + + _attributes['name'] = 'name' + _attributes['value'] = 'value' + _attributes['type'] = 'type' + _attributes['confidenceInterval'] = 'confidence_interval' + + def __init__(self, name=None, value=None, type=None, + confidence_interval = None, *args, **kwargs): + self.name = name + self.value = value + self.type = type + self.confidence_interval = confidence_interval + super(Dimension, self).__init__(*args, **kwargs) + + def __str__(self): + return self.value + + def __repr__(self): + return self.value + +class Metric(gdata.GDataEntry): + _tag = 'metric' + _namespace = GAN_NAMESPACE + _children = gdata.GDataEntry._children.copy() + _attributes = gdata.GDataEntry._attributes.copy() + + _attributes['name'] = 'name' + _attributes['value'] = 'value' + _attributes['type'] = 'type' + _attributes['confidenceInterval'] = 'confidence_interval' + + def __init__(self, name=None, value=None, type=None, + confidence_interval = None, *args, **kwargs): + self.name = name + self.value = value + self.type = type + self.confidence_interval = confidence_interval + super(Metric, self).__init__(*args, **kwargs) + + def __str__(self): + return self.value + + def __repr__(self): + return self.value + +class AnalyticsDataEntry(gdata.GDataEntry): + """The Google Analytics version of an Atom Entry""" + + _tag = 'entry' + _namespace = atom.ATOM_NAMESPACE + _children = gdata.GDataEntry._children.copy() + _attributes = gdata.GDataEntry._attributes.copy() + + _children['{%s}dimension' % GAN_NAMESPACE] = ('dimension', + [Dimension]) + + _children['{%s}metric' % GAN_NAMESPACE] = ('metric', + [Metric]) + + def __init__(self, dimension=None, metric=None, *args, **kwargs): + self.dimension = dimension + self.metric = metric + + super(AnalyticsDataEntry, self).__init__(*args, **kwargs) + +class AnalyticsDataFeed(gdata.GDataFeed): + """A feed containing a list of Google Analytics Data Feed""" + + _tag = 'feed' + _namespace = atom.ATOM_NAMESPACE + _children = gdata.GDataFeed._children.copy() + _attributes = gdata.GDataFeed._attributes.copy() + _children['{%s}entry' % atom.ATOM_NAMESPACE] = ('entry', + [AnalyticsDataEntry]) + + +""" +Data Feed +""" + +def AnalyticsDataFeedFromString(xml_string): + """Converts an XML string into an AccountListFeed object. + + Args: + xml_string: string The XML describing an AccountList feed. + + Returns: + An AccountListFeed object corresponding to the given XML. + Each metric and dimension is also referenced directly from + the entry for easier access. (e.g. entry.keyword.value) + """ + feed = atom.CreateClassFromXMLString(AnalyticsDataFeed, xml_string) + if feed.entry: + for entry in feed.entry: + for met in entry.metric: + entry.__dict__[met.name.replace('ga:','')] = met + if entry.dimension is not None: + for dim in entry.dimension: + entry.__dict__[dim.name.replace('ga:','')] = dim + + return feed diff -Nru python-gdata-1.2.4/src/gdata/analytics/service.py python-gdata-2.0.8/src/gdata/analytics/service.py --- python-gdata-1.2.4/src/gdata/analytics/service.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/analytics/service.py 2009-05-18 21:15:17.000000000 +0100 @@ -0,0 +1,331 @@ +#!/usr/bin/python +# +# Copyright (C) 2006 Google Inc. +# Refactored in 2009 to work for Google Analytics by Sal Uryasev at Juice Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +""" + AccountsService extends the GDataService to streamline Google Analytics + account information operations. + + AnalyticsDataService: Provides methods to query google analytics data feeds. + Extends GDataService. + + DataQuery: Queries a Google Analytics Data list feed. + + AccountQuery: Queries a Google Analytics Account list feed. +""" + + +__author__ = 'api.suryasev (Sal Uryasev)' + + +import urllib +import atom +import gdata.service +import gdata.analytics + + +class AccountsService(gdata.service.GDataService): + + """Client extension for the Google Analytics Account List feed.""" + + def __init__(self, email="", password=None, source=None, + server='www.google.com/analytics', additional_headers=None, + **kwargs): + """Creates a client for the Google Analytics service. + + Args: + email: string (optional) The user's email address, used for + authentication. + password: string (optional) The user's password. + source: string (optional) The name of the user's application. + server: string (optional) The name of the server to which a connection + will be opened. + **kwargs: The other parameters to pass to gdata.service.GDataService + constructor. + """ + + gdata.service.GDataService.__init__( + self, email=email, password=password, service='analytics', + source=source, server=server, additional_headers=additional_headers, + **kwargs) + + def QueryAccountListFeed(self, uri): + """Retrieves an AccountListFeed by retrieving a URI based off the Document + List feed, including any query parameters. An AccountListFeed object + can be used to construct these parameters. + + Args: + uri: string The URI of the feed being retrieved possibly with query + parameters. + + Returns: + An AccountListFeed object representing the feed returned by the server. + """ + return self.Get(uri, converter=gdata.analytics.AccountListFeedFromString) + + def GetAccountListEntry(self, uri): + """Retrieves a particular AccountListEntry by its unique URI. + + Args: + uri: string The unique URI of an entry in an Account List feed. + + Returns: + An AccountLisFeed object representing the retrieved entry. + """ + return self.Get(uri, converter=gdata.analytics.AccountListEntryFromString) + + def GetAccountList(self, max_results=1000, text_query=None, + params=None, categories=None): + """Retrieves a feed containing all of a user's accounts and profiles.""" + q = gdata.analytics.service.AccountQuery(max_results=max_results, + text_query=text_query, + params=params, + categories=categories); + return self.QueryAccountListFeed(q.ToUri()) + + + + +class AnalyticsDataService(gdata.service.GDataService): + + """Client extension for the Google Analytics service Data List feed.""" + + def __init__(self, email=None, password=None, source=None, + server='www.google.com/analytics', additional_headers=None, + **kwargs): + """Creates a client for the Google Analytics service. + + Args: + email: string (optional) The user's email address, used for + authentication. + password: string (optional) The user's password. + source: string (optional) The name of the user's application. + server: string (optional) The name of the server to which a connection + will be opened. Default value: 'docs.google.com'. + **kwargs: The other parameters to pass to gdata.service.GDataService + constructor. + """ + + gdata.service.GDataService.__init__(self, + email=email, password=password, service='analytics', source=source, + server=server, additional_headers=additional_headers, **kwargs) + + def GetData(self, ids='', dimensions='', metrics='', + sort='', filters='', start_date='', + end_date='', start_index='', + max_results=''): + """Retrieves a feed containing a user's data + + ids: comma-separated string of analytics accounts. + dimensions: comma-separated string of dimensions. + metrics: comma-separated string of metrics. + sort: comma-separated string of dimensions and metrics for sorting. + This may be previxed with a minus to sort in reverse order. + (e.g. '-ga:keyword') + If ommited, the first dimension passed in will be used. + filters: comma-separated string of filter parameters. + (e.g. 'ga:keyword==google') + start_date: start date for data pull. + end_date: end date for data pull. + start_index: used in combination with max_results to pull more than 1000 + entries. This defaults to 1. + max_results: maximum results that the pull will return. This defaults + to, and maxes out at 1000. + """ + q = gdata.analytics.service.DataQuery(ids=ids, + dimensions=dimensions, + metrics=metrics, + filters=filters, + sort=sort, + start_date=start_date, + end_date=end_date, + start_index=start_index, + max_results=max_results); + return self.AnalyticsDataFeed(q.ToUri()) + + def AnalyticsDataFeed(self, uri): + """Retrieves an AnalyticsListFeed by retrieving a URI based off the + Document List feed, including any query parameters. An + AnalyticsListFeed object can be used to construct these parameters. + + Args: + uri: string The URI of the feed being retrieved possibly with query + parameters. + + Returns: + An AnalyticsListFeed object representing the feed returned by the + server. + """ + return self.Get(uri, + converter=gdata.analytics.AnalyticsDataFeedFromString) + + """ + Account Fetching + """ + + def QueryAccountListFeed(self, uri): + """Retrieves an Account ListFeed by retrieving a URI based off the Account + List feed, including any query parameters. A AccountQuery object can + be used to construct these parameters. + + Args: + uri: string The URI of the feed being retrieved possibly with query + parameters. + + Returns: + An AccountListFeed object representing the feed returned by the server. + """ + return self.Get(uri, converter=gdata.analytics.AccountListFeedFromString) + + def GetAccountListEntry(self, uri): + """Retrieves a particular AccountListEntry by its unique URI. + + Args: + uri: string The unique URI of an entry in an Account List feed. + + Returns: + An AccountListEntry object representing the retrieved entry. + """ + return self.Get(uri, converter=gdata.analytics.AccountListEntryFromString) + + def GetAccountList(self, username="default", max_results=1000, + start_index=1): + """Retrieves a feed containing all of a user's accounts and profiles. + The username parameter is soon to be deprecated, with 'default' + becoming the only allowed parameter. + """ + if not username: + raise Exception("username is a required parameter") + q = gdata.analytics.service.AccountQuery(username=username, + max_results=max_results, + start_index=start_index); + return self.QueryAccountListFeed(q.ToUri()) + +class DataQuery(gdata.service.Query): + """Object used to construct a URI to a data feed""" + def __init__(self, feed='/feeds/data', text_query=None, + params=None, categories=None, ids="", + dimensions="", metrics="", sort="", filters="", + start_date="", end_date="", start_index="", + max_results=""): + """Constructor for Analytics List Query + + Args: + feed: string (optional) The path for the feed. (e.g. '/feeds/data') + + text_query: string (optional) The contents of the q query parameter. + This string is URL escaped upon conversion to a URI. + params: dict (optional) Parameter value string pairs which become URL + params when translated to a URI. These parameters are added to + the query's items. + categories: list (optional) List of category strings which should be + included as query categories. See gdata.service.Query for + additional documentation. + ids: comma-separated string of analytics accounts. + dimensions: comma-separated string of dimensions. + metrics: comma-separated string of metrics. + sort: comma-separated string of dimensions and metrics. + This may be previxed with a minus to sort in reverse order + (e.g. '-ga:keyword'). + If ommited, the first dimension passed in will be used. + filters: comma-separated string of filter parameters + (e.g. 'ga:keyword==google'). + start_date: start date for data pull. + end_date: end date for data pull. + start_index: used in combination with max_results to pull more than 1000 + entries. This defaults to 1. + max_results: maximum results that the pull will return. This defaults + to, and maxes out at 1000. + + Yields: + A DocumentQuery object used to construct a URI based on the Document + List feed. + """ + self.elements = {'ids': ids, + 'dimensions': dimensions, + 'metrics': metrics, + 'sort': sort, + 'filters': filters, + 'start-date': start_date, + 'end-date': end_date, + 'start-index': start_index, + 'max-results': max_results} + + gdata.service.Query.__init__(self, feed, text_query, params, categories) + + def ToUri(self): + """Generates a URI from the query parameters set in the object. + + Returns: + A string containing the URI used to retrieve entries from the Analytics + List feed. + """ + old_feed = self.feed + self.feed = '/'.join([old_feed]) + '?' + \ + urllib.urlencode(dict([(key, value) for key, value in \ + self.elements.iteritems() if value])) + new_feed = gdata.service.Query.ToUri(self) + self.feed = old_feed + return new_feed + + +class AccountQuery(gdata.service.Query): + """Object used to construct a URI to query the Google Account List feed""" + def __init__(self, feed='/feeds/accounts', start_index=1, + max_results=1000, username='default', text_query=None, + params=None, categories=None): + """Constructor for Account List Query + + Args: + feed: string (optional) The path for the feed. (e.g. '/feeds/documents') + visibility: string (optional) The visibility chosen for the current + feed. + projection: string (optional) The projection chosen for the current + feed. + text_query: string (optional) The contents of the q query parameter. + This string is URL escaped upon conversion to a URI. + params: dict (optional) Parameter value string pairs which become URL + params when translated to a URI. These parameters are added to + the query's items. + categories: list (optional) List of category strings which should be + included as query categories. See gdata.service.Query for + additional documentation. + username: string (deprecated) This value should now always be passed as + 'default'. + + Yields: + A DocumentQuery object used to construct a URI based on the Document + List feed. + """ + self.max_results = max_results + self.start_index = start_index + self.username = username + gdata.service.Query.__init__(self, feed, text_query, params, categories) + + def ToUri(self): + """Generates a URI from the query parameters set in the object. + + Returns: + A string containing the URI used to retrieve entries from the Account + List feed. + """ + old_feed = self.feed + self.feed = '/'.join([old_feed, self.username]) + '?' + \ + '&'.join(['max-results=' + str(self.max_results), + 'start-index=' + str(self.start_index)]) + new_feed = self.feed + self.feed = old_feed + return new_feed diff -Nru python-gdata-1.2.4/src/gdata/apps/adminsettings/__init__.py python-gdata-2.0.8/src/gdata/apps/adminsettings/__init__.py --- python-gdata-1.2.4/src/gdata/apps/adminsettings/__init__.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/apps/adminsettings/__init__.py 2009-10-09 02:09:39.000000000 +0100 @@ -0,0 +1,16 @@ +#!/usr/bin/python +# +# Copyright (C) 2008 Google +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + diff -Nru python-gdata-1.2.4/src/gdata/apps/adminsettings/service.py python-gdata-2.0.8/src/gdata/apps/adminsettings/service.py --- python-gdata-1.2.4/src/gdata/apps/adminsettings/service.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/apps/adminsettings/service.py 2010-02-17 18:51:33.000000000 +0000 @@ -0,0 +1,471 @@ +#!/usr/bin/python +# +# Copyright (C) 2008 Google, Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Allow Google Apps domain administrators to set domain admin settings. + + AdminSettingsService: Set admin settings.""" + +__author__ = 'jlee@pbu.edu' + + +import gdata.apps +import gdata.apps.service +import gdata.service + + +API_VER='2.0' + +class AdminSettingsService(gdata.apps.service.PropertyService): + """Client for the Google Apps Admin Settings service.""" + + def _serviceUrl(self, setting_id, domain=None): + if domain is None: + domain = self.domain + return '/a/feeds/domain/%s/%s/%s' % (API_VER, domain, setting_id) + + def genericGet(self, location): + """Generic HTTP Get Wrapper + + Args: + location: relative uri to Get + + Returns: + A dict containing the result of the get operation.""" + + uri = self._serviceUrl(location) + try: + return self._GetProperties(uri) + except gdata.service.RequestError, e: + raise AppsForYourDomainException(e.args[0]) + + def GetDefaultLanguage(self): + """Gets Domain Default Language + + Args: + None + + Returns: + Default Language as a string. All possible values are listed at: + http://code.google.com/apis/apps/email_settings/developers_guide_protocol.html#GA_email_language_tags""" + + result = self.genericGet('general/defaultLanguage') + return result['defaultLanguage'] + + def UpdateDefaultLanguage(self, defaultLanguage): + """Updates Domain Default Language + + Args: + defaultLanguage: Domain Language to set + possible values are at: + http://code.google.com/apis/apps/email_settings/developers_guide_protocol.html#GA_email_language_tags + + Returns: + A dict containing the result of the put operation""" + + uri = self._serviceUrl('general/defaultLanguage') + properties = {'defaultLanguage': defaultLanguage} + return self._PutProperties(uri, properties) + + def GetOrganizationName(self): + """Gets Domain Default Language + + Args: + None + + Returns: + Organization Name as a string.""" + + result = self.genericGet('general/organizationName') + return result['organizationName'] + + + def UpdateOrganizationName(self, organizationName): + """Updates Organization Name + + Args: + organizationName: Name of organization + + Returns: + A dict containing the result of the put operation""" + + uri = self._serviceUrl('general/organizationName') + properties = {'organizationName': organizationName} + return self._PutProperties(uri, properties) + + def GetMaximumNumberOfUsers(self): + """Gets Maximum Number of Users Allowed + + Args: + None + + Returns: An integer, the maximum number of users""" + + result = self.genericGet('general/maximumNumberOfUsers') + return int(result['maximumNumberOfUsers']) + + def GetCurrentNumberOfUsers(self): + """Gets Current Number of Users + + Args: + None + + Returns: An integer, the current number of users""" + + result = self.genericGet('general/currentNumberOfUsers') + return int(result['currentNumberOfUsers']) + + def IsDomainVerified(self): + """Is the domain verified + + Args: + None + + Returns: Boolean, is domain verified""" + + result = self.genericGet('accountInformation/isVerified') + if result['isVerified'] == 'true': + return True + else: + return False + + def GetSupportPIN(self): + """Gets Support PIN + + Args: + None + + Returns: A string, the Support PIN""" + + result = self.genericGet('accountInformation/supportPIN') + return result['supportPIN'] + + def GetEdition(self): + """Gets Google Apps Domain Edition + + Args: + None + + Returns: A string, the domain's edition (premier, education, partner)""" + + result = self.genericGet('accountInformation/edition') + return result['edition'] + + def GetCustomerPIN(self): + """Gets Customer PIN + + Args: + None + + Returns: A string, the customer PIN""" + + result = self.genericGet('accountInformation/customerPIN') + return result['customerPIN'] + + def GetCreationTime(self): + """Gets Domain Creation Time + + Args: + None + + Returns: A string, the domain's creation time""" + + result = self.genericGet('accountInformation/creationTime') + return result['creationTime'] + + def GetCountryCode(self): + """Gets Domain Country Code + + Args: + None + + Returns: A string, the domain's country code. Possible values at: + http://www.iso.org/iso/country_codes/iso_3166_code_lists/english_country_names_and_code_elements.htm""" + + result = self.genericGet('accountInformation/countryCode') + return result['countryCode'] + + def GetAdminSecondaryEmail(self): + """Gets Domain Admin Secondary Email Address + + Args: + None + + Returns: A string, the secondary email address for domain admin""" + + result = self.genericGet('accountInformation/adminSecondaryEmail') + return result['adminSecondaryEmail'] + + def UpdateAdminSecondaryEmail(self, adminSecondaryEmail): + """Gets Domain Creation Time + + Args: + adminSecondaryEmail: string, secondary email address of admin + + Returns: A dict containing the result of the put operation""" + + uri = self._serviceUrl('accountInformation/adminSecondaryEmail') + properties = {'adminSecondaryEmail': adminSecondaryEmail} + return self._PutProperties(uri, properties) + + def GetDomainLogo(self): + """Gets Domain Logo + + This function does not make use of the Google Apps Admin Settings API, + it does an HTTP Get of a url specific to the Google Apps domain. It is + included for completeness sake. + + Args: + None + + Returns: binary image file""" + + import urllib + url = 'http://www.google.com/a/cpanel/'+self.domain+'/images/logo.gif' + response = urllib.urlopen(url) + return response.read() + + def UpdateDomainLogo(self, logoImage): + """Update Domain's Custom Logo + + Args: + logoImage: binary image data + + Returns: A dict containing the result of the put operation""" + + from base64 import base64encode + uri = self._serviceUrl('appearance/customLogo') + properties = {'logoImage': base64encode(logoImage)} + return self._PutProperties(uri, properties) + + def GetCNAMEVerificationStatus(self): + """Gets Domain CNAME Verification Status + + Args: + None + + Returns: A dict {recordName, verified, verifiedMethod}""" + + return self.genericGet('verification/cname') + + def UpdateCNAMEVerificationStatus(self, verified): + """Updates CNAME Verification Status + + Args: + verified: boolean, True will retry verification process + + Returns: A dict containing the result of the put operation""" + + uri = self._serviceUrl('verification/cname') + properties = self.GetCNAMEVerificationStatus() + properties['verified'] = verified + return self._PutProperties(uri, properties) + + def GetMXVerificationStatus(self): + """Gets Domain MX Verification Status + + Args: + None + + Returns: A dict {verified, verifiedMethod}""" + + return self.genericGet('verification/mx') + + def UpdateMXVerificationStatus(self, verified): + """Updates MX Verification Status + + Args: + verified: boolean, True will retry verification process + + Returns: A dict containing the result of the put operation""" + + uri = self._serviceUrl('verification/mx') + properties = self.GetMXVerificationStatus() + properties['verified'] = verified + return self._PutProperties(uri, properties) + + def GetSSOSettings(self): + """Gets Domain Single Sign-On Settings + + Args: + None + + Returns: A dict {samlSignonUri, samlLogoutUri, changePasswordUri, enableSSO, ssoWhitelist, useDomainSpecificIssuer}""" + + return self.genericGet('sso/general') + + def UpdateSSOSettings(self, enableSSO=None, samlSignonUri=None, + samlLogoutUri=None, changePasswordUri=None, + ssoWhitelist=None, useDomainSpecificIssuer=None): + """Update SSO Settings. + + Args: + enableSSO: boolean, SSO Master on/off switch + samlSignonUri: string, SSO Login Page + samlLogoutUri: string, SSO Logout Page + samlPasswordUri: string, SSO Password Change Page + ssoWhitelist: string, Range of IP Addresses which will see SSO + useDomainSpecificIssuer: boolean, Include Google Apps Domain in Issuer + + Returns: + A dict containing the result of the update operation. + """ + uri = self._serviceUrl('sso/general') + + #Get current settings, replace Nones with '' + properties = self.GetSSOSettings() + if properties['samlSignonUri'] == None: + properties['samlSignonUri'] = '' + if properties['samlLogoutUri'] == None: + properties['samlLogoutUri'] = '' + if properties['changePasswordUri'] == None: + properties['changePasswordUri'] = '' + if properties['ssoWhitelist'] == None: + properties['ssoWhitelist'] = '' + + #update only the values we were passed + if enableSSO != None: + properties['enableSSO'] = gdata.apps.service._bool2str(enableSSO) + if samlSignonUri != None: + properties['samlSignonUri'] = samlSignonUri + if samlLogoutUri != None: + properties['samlLogoutUri'] = samlLogoutUri + if changePasswordUri != None: + properties['changePasswordUri'] = changePasswordUri + if ssoWhitelist != None: + properties['ssoWhitelist'] = ssoWhitelist + if useDomainSpecificIssuer != None: + properties['useDomainSpecificIssuer'] = gdata.apps.service._bool2str(useDomainSpecificIssuer) + + return self._PutProperties(uri, properties) + + def GetSSOKey(self): + """Gets Domain Single Sign-On Signing Key + + Args: + None + + Returns: A dict {modulus, exponent, algorithm, format}""" + + return self.genericGet('sso/signingkey') + + def UpdateSSOKey(self, signingKey): + """Update SSO Settings. + + Args: + signingKey: string, public key to be uploaded + + Returns: + A dict containing the result of the update operation.""" + + uri = self._serviceUrl('sso/signingkey') + properties = {'signingKey': signingKey} + return self._PutProperties(uri, properties) + + def IsUserMigrationEnabled(self): + """Is User Migration Enabled + + Args: + None + + Returns: + boolean, is user migration enabled""" + + result = self.genericGet('email/migration') + if result['enableUserMigration'] == 'true': + return True + else: + return False + + def UpdateUserMigrationStatus(self, enableUserMigration): + """Update User Migration Status + + Args: + enableUserMigration: boolean, user migration enable/disable + + Returns: + A dict containing the result of the update operation.""" + + uri = self._serviceUrl('email/migration') + properties = {'enableUserMigration': enableUserMigration} + return self._PutProperties(uri, properties) + + def GetOutboundGatewaySettings(self): + """Get Outbound Gateway Settings + + Args: + None + + Returns: + A dict {smartHost, smtpMode}""" + + uri = self._serviceUrl('email/gateway') + try: + return self._GetProperties(uri) + except gdata.service.RequestError, e: + raise AppsForYourDomainException(e.args[0]) + except TypeError: + #if no outbound gateway is set, we get a TypeError, + #catch it and return nothing... + return {'smartHost': None, 'smtpMode': None} + + def UpdateOutboundGatewaySettings(self, smartHost=None, smtpMode=None): + """Update Outbound Gateway Settings + + Args: + smartHost: string, ip address or hostname of outbound gateway + smtpMode: string, SMTP or SMTP_TLS + + Returns: + A dict containing the result of the update operation.""" + + uri = self._serviceUrl('email/gateway') + + #Get current settings, replace Nones with '' + properties = GetOutboundGatewaySettings() + if properties['smartHost'] == None: + properties['smartHost'] = '' + if properties['smtpMode'] == None: + properties['smtpMode'] = '' + + #If we were passed new values for smartHost or smtpMode, update them + if smartHost != None: + properties['smartHost'] = smartHost + if smtpMode != None: + properties['smtpMode'] = smtpMode + + return self._PutProperties(uri, properties) + + def AddEmailRoute(self, routeDestination, routeRewriteTo, routeEnabled, bounceNotifications, accountHandling): + """Adds Domain Email Route + + Args: + routeDestination: string, destination ip address or hostname + routeRewriteTo: boolean, rewrite smtp envelop To: + routeEnabled: boolean, enable disable email routing + bounceNotifications: boolean, send bound notificiations to sender + accountHandling: string, which to route, "allAccounts", "provisionedAccounts", "unknownAccounts" + + Returns: + A dict containing the result of the update operation.""" + + uri = self._serviceUrl('emailrouting') + properties = {} + properties['routeDestination'] = routeDestination + properties['routeRewriteTo'] = gdata.apps.service._bool2str(routeRewriteTo) + properties['routeEnabled'] = gdata.apps.service._bool2str(routeEnabled) + properties['bounceNotifications'] = gdata.apps.service._bool2str(bounceNotifications) + properties['accountHandling'] = accountHandling + return self._PostProperties(uri, properties) diff -Nru python-gdata-1.2.4/src/gdata/apps/emailsettings/service.py python-gdata-2.0.8/src/gdata/apps/emailsettings/service.py --- python-gdata-1.2.4/src/gdata/apps/emailsettings/service.py 2008-10-09 21:49:18.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/apps/emailsettings/service.py 2010-02-17 18:53:11.000000000 +0000 @@ -45,11 +45,6 @@ return '/a/feeds/emailsettings/%s/%s/%s/%s' % (API_VER, domain, username, setting_id) - def _bool2str(self, b): - if b is None: - return None - return str(b is True).lower() - def CreateLabel(self, username, label): """Create a label. @@ -92,10 +87,10 @@ properties['subject'] = subject properties['hasTheWord'] = has_the_word properties['doesNotHaveTheWord'] = does_not_have_the_word - properties['hasAttachment'] = self._bool2str(has_attachment) + properties['hasAttachment'] = gdata.apps.service._bool2str(has_attachment) properties['label'] = label - properties['shouldMarkAsRead'] = self._bool2str(should_mark_as_read) - properties['shouldArchive'] = self._bool2str(should_archive) + properties['shouldMarkAsRead'] = gdata.apps.service._bool2str(should_mark_as_read) + properties['shouldArchive'] = gdata.apps.service._bool2str(should_archive) return self._PostProperties(uri, properties) def CreateSendAsAlias(self, username, name, address, reply_to=None, @@ -117,9 +112,23 @@ properties['name'] = name properties['address'] = address properties['replyTo'] = reply_to - properties['makeDefault'] = self._bool2str(make_default) + properties['makeDefault'] = gdata.apps.service._bool2str(make_default) return self._PostProperties(uri, properties) + def UpdateWebClipSettings(self, username, enable): + """Update WebClip Settings + + Args: + username: User to update forwarding for. + enable: Boolean whether to enable Web Clip. + Returns: + A dict containing the result of the update operation. + """ + uri = self._serviceUrl('webclip', username) + properties = {} + properties['enable'] = gdata.apps.service._bool2str(enable) + return self._PutProperties(uri, properties) + def UpdateForwarding(self, username, enable, forward_to=None, action=None): """Update forwarding settings. @@ -134,7 +143,7 @@ """ uri = self._serviceUrl('forwarding', username) properties = {} - properties['enable'] = self._bool2str(enable) + properties['enable'] = gdata.apps.service._bool2str(enable) if enable is True: properties['forwardTo'] = forward_to properties['action'] = action @@ -154,7 +163,7 @@ """ uri = self._serviceUrl('pop', username) properties = {} - properties['enable'] = self._bool2str(enable) + properties['enable'] = gdata.apps.service._bool2str(enable) if enable is True: properties['enableFor'] = enable_for properties['action'] = action @@ -171,7 +180,7 @@ A dict containing the result of the update operation. """ uri = self._serviceUrl('imap', username) - properties = {'enable': self._bool2str(enable)} + properties = {'enable': gdata.apps.service._bool2str(enable)} return self._PutProperties(uri, properties) def UpdateVacation(self, username, enable, subject=None, message=None, @@ -190,11 +199,11 @@ """ uri = self._serviceUrl('vacation', username) properties = {} - properties['enable'] = self._bool2str(enable) + properties['enable'] = gdata.apps.service._bool2str(enable) if enable is True: properties['subject'] = subject properties['message'] = message - properties['contactsOnly'] = self._bool2str(contacts_only) + properties['contactsOnly'] = gdata.apps.service._bool2str(contacts_only) return self._PutProperties(uri, properties) def UpdateSignature(self, username, signature): @@ -242,9 +251,14 @@ """ uri = self._serviceUrl('general', username) properties = {} - properties['pageSize'] = str(page_size) - properties['shortcuts'] = self._bool2str(shortcuts) - properties['arrows'] = self._bool2str(arrows) - properties['snippets'] = self._bool2str(snippets) - properties['unicode'] = self._bool2str(unicode) + if page_size != None: + properties['pageSize'] = str(page_size) + if shortcuts != None: + properties['shortcuts'] = gdata.apps.service._bool2str(shortcuts) + if arrows != None: + properties['arrows'] = gdata.apps.service._bool2str(arrows) + if snippets != None: + properties['snippets'] = gdata.apps.service._bool2str(snippets) + if unicode != None: + properties['unicode'] = gdata.apps.service._bool2str(unicode) return self._PutProperties(uri, properties) diff -Nru python-gdata-1.2.4/src/gdata/apps/groups/service.py python-gdata-2.0.8/src/gdata/apps/groups/service.py --- python-gdata-1.2.4/src/gdata/apps/groups/service.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/apps/groups/service.py 2010-01-04 22:14:02.000000000 +0000 @@ -0,0 +1,327 @@ +#!/usr/bin/python +# +# Copyright (C) 2008 Google, Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Allow Google Apps domain administrators to manage groups, group members and group owners. + + GroupsService: Provides methods to manage groups, members and owners. +""" + +__author__ = 'google-apps-apis@googlegroups.com' + + +import urllib +import gdata.apps +import gdata.apps.service +import gdata.service + + +API_VER = '2.0' +BASE_URL = '/a/feeds/group/' + API_VER + '/%s' +GROUP_MEMBER_URL = BASE_URL + '?member=%s' +GROUP_MEMBER_DIRECT_URL = GROUP_MEMBER_URL + '&directOnly=%s' +GROUP_ID_URL = BASE_URL + '/%s' +MEMBER_URL = BASE_URL + '/%s/member' +MEMBER_WITH_SUSPENDED_URL = MEMBER_URL + '?includeSuspendedUsers=%s' +MEMBER_ID_URL = MEMBER_URL + '/%s' +OWNER_URL = BASE_URL + '/%s/owner' +OWNER_WITH_SUSPENDED_URL = OWNER_URL + '?includeSuspendedUsers=%s' +OWNER_ID_URL = OWNER_URL + '/%s' + +PERMISSION_OWNER = 'Owner' +PERMISSION_MEMBER = 'Member' +PERMISSION_DOMAIN = 'Domain' +PERMISSION_ANYONE = 'Anyone' + + +class GroupsService(gdata.apps.service.PropertyService): + """Client for the Google Apps Groups service.""" + + def _ServiceUrl(self, service_type, is_existed, group_id, member_id, owner_email, + direct_only=False, domain=None, suspended_users=False): + if domain is None: + domain = self.domain + + if service_type == 'group': + if group_id != '' and is_existed: + return GROUP_ID_URL % (domain, group_id) + elif member_id != '': + if direct_only: + return GROUP_MEMBER_DIRECT_URL % (domain, urllib.quote_plus(member_id), + self._Bool2Str(direct_only)) + else: + return GROUP_MEMBER_URL % (domain, urllib.quote_plus(member_id)) + else: + return BASE_URL % (domain) + + if service_type == 'member': + if member_id != '' and is_existed: + return MEMBER_ID_URL % (domain, group_id, urllib.quote_plus(member_id)) + elif suspended_users: + return MEMBER_WITH_SUSPENDED_URL % (domain, group_id, + self._Bool2Str(suspended_users)) + else: + return MEMBER_URL % (domain, group_id) + + if service_type == 'owner': + if owner_email != '' and is_existed: + return OWNER_ID_URL % (domain, group_id, urllib.quote_plus(owner_email)) + elif suspended_users: + return OWNER_WITH_SUSPENDED_URL % (domain, group_id, + self._Bool2Str(suspended_users)) + else: + return OWNER_URL % (domain, group_id) + + def _Bool2Str(self, b): + if b is None: + return None + return str(b is True).lower() + + def _IsExisted(self, uri): + try: + self._GetProperties(uri) + return True + except gdata.apps.service.AppsForYourDomainException, e: + if e.error_code == gdata.apps.service.ENTITY_DOES_NOT_EXIST: + return False + else: + raise e + + def CreateGroup(self, group_id, group_name, description, email_permission): + """Create a group. + + Args: + group_id: The ID of the group (e.g. us-sales). + group_name: The name of the group. + description: A description of the group + email_permission: The subscription permission of the group. + + Returns: + A dict containing the result of the create operation. + """ + uri = self._ServiceUrl('group', False, group_id, '', '') + properties = {} + properties['groupId'] = group_id + properties['groupName'] = group_name + properties['description'] = description + properties['emailPermission'] = email_permission + return self._PostProperties(uri, properties) + + def UpdateGroup(self, group_id, group_name, description, email_permission): + """Update a group's name, description and/or permission. + + Args: + group_id: The ID of the group (e.g. us-sales). + group_name: The name of the group. + description: A description of the group + email_permission: The subscription permission of the group. + + Returns: + A dict containing the result of the update operation. + """ + uri = self._ServiceUrl('group', True, group_id, '', '') + properties = {} + properties['groupId'] = group_id + properties['groupName'] = group_name + properties['description'] = description + properties['emailPermission'] = email_permission + return self._PutProperties(uri, properties) + + def RetrieveGroup(self, group_id): + """Retrieve a group based on its ID. + + Args: + group_id: The ID of the group (e.g. us-sales). + + Returns: + A dict containing the result of the retrieve operation. + """ + uri = self._ServiceUrl('group', True, group_id, '', '') + return self._GetProperties(uri) + + def RetrieveAllGroups(self): + """Retrieve all groups in the domain. + + Args: + None + + Returns: + A list containing the result of the retrieve operation. + """ + uri = self._ServiceUrl('group', True, '', '', '') + return self._GetPropertiesList(uri) + + def RetrieveGroups(self, member_id, direct_only=False): + """Retrieve all groups that belong to the given member_id. + + Args: + member_id: The member's email address (e.g. member@example.com). + direct_only: Boolean whether only return groups that this member directly belongs to. + + Returns: + A list containing the result of the retrieve operation. + """ + uri = self._ServiceUrl('group', True, '', member_id, '', direct_only=direct_only) + return self._GetPropertiesList(uri) + + def DeleteGroup(self, group_id): + """Delete a group based on its ID. + + Args: + group_id: The ID of the group (e.g. us-sales). + + Returns: + A dict containing the result of the delete operation. + """ + uri = self._ServiceUrl('group', True, group_id, '', '') + return self._DeleteProperties(uri) + + def AddMemberToGroup(self, member_id, group_id): + """Add a member to a group. + + Args: + member_id: The member's email address (e.g. member@example.com). + group_id: The ID of the group (e.g. us-sales). + + Returns: + A dict containing the result of the add operation. + """ + uri = self._ServiceUrl('member', False, group_id, member_id, '') + properties = {} + properties['memberId'] = member_id + return self._PostProperties(uri, properties) + + def IsMember(self, member_id, group_id): + """Check whether the given member already exists in the given group. + + Args: + member_id: The member's email address (e.g. member@example.com). + group_id: The ID of the group (e.g. us-sales). + + Returns: + True if the member exists in the group. False otherwise. + """ + uri = self._ServiceUrl('member', True, group_id, member_id, '') + return self._IsExisted(uri) + + def RetrieveMember(self, member_id, group_id): + """Retrieve the given member in the given group. + + Args: + member_id: The member's email address (e.g. member@example.com). + group_id: The ID of the group (e.g. us-sales). + + Returns: + A dict containing the result of the retrieve operation. + """ + uri = self._ServiceUrl('member', True, group_id, member_id, '') + return self._GetProperties(uri) + + def RetrieveAllMembers(self, group_id, suspended_users=False): + """Retrieve all members in the given group. + + Args: + group_id: The ID of the group (e.g. us-sales). + suspended_users: A boolean; should we include any suspended users in + the membership list returned? + + Returns: + A list containing the result of the retrieve operation. + """ + uri = self._ServiceUrl('member', True, group_id, '', '', + suspended_users=suspended_users) + return self._GetPropertiesList(uri) + + def RemoveMemberFromGroup(self, member_id, group_id): + """Remove the given member from the given group. + + Args: + member_id: The member's email address (e.g. member@example.com). + group_id: The ID of the group (e.g. us-sales). + + Returns: + A dict containing the result of the remove operation. + """ + uri = self._ServiceUrl('member', True, group_id, member_id, '') + return self._DeleteProperties(uri) + + def AddOwnerToGroup(self, owner_email, group_id): + """Add an owner to a group. + + Args: + owner_email: The email address of a group owner. + group_id: The ID of the group (e.g. us-sales). + + Returns: + A dict containing the result of the add operation. + """ + uri = self._ServiceUrl('owner', False, group_id, '', owner_email) + properties = {} + properties['email'] = owner_email + return self._PostProperties(uri, properties) + + def IsOwner(self, owner_email, group_id): + """Check whether the given member an owner of the given group. + + Args: + owner_email: The email address of a group owner. + group_id: The ID of the group (e.g. us-sales). + + Returns: + True if the member is an owner of the given group. False otherwise. + """ + uri = self._ServiceUrl('owner', True, group_id, '', owner_email) + return self._IsExisted(uri) + + def RetrieveOwner(self, owner_email, group_id): + """Retrieve the given owner in the given group. + + Args: + owner_email: The email address of a group owner. + group_id: The ID of the group (e.g. us-sales). + + Returns: + A dict containing the result of the retrieve operation. + """ + uri = self._ServiceUrl('owner', True, group_id, '', owner_email) + return self._GetProperties(uri) + + def RetrieveAllOwners(self, group_id, suspended_users=False): + """Retrieve all owners of the given group. + + Args: + group_id: The ID of the group (e.g. us-sales). + suspended_users: A boolean; should we include any suspended users in + the ownership list returned? + + Returns: + A list containing the result of the retrieve operation. + """ + uri = self._ServiceUrl('owner', True, group_id, '', '', + suspended_users=suspended_users) + return self._GetPropertiesList(uri) + + def RemoveOwnerFromGroup(self, owner_email, group_id): + """Remove the given owner from the given group. + + Args: + owner_email: The email address of a group owner. + group_id: The ID of the group (e.g. us-sales). + + Returns: + A dict containing the result of the remove operation. + """ + uri = self._ServiceUrl('owner', True, group_id, '', owner_email) + return self._DeleteProperties(uri) diff -Nru python-gdata-1.2.4/src/gdata/apps/__init__.py python-gdata-2.0.8/src/gdata/apps/__init__.py --- python-gdata-1.2.4/src/gdata/apps/__init__.py 2008-10-09 21:46:17.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/apps/__init__.py 2009-03-20 21:11:11.000000000 +0000 @@ -494,3 +494,33 @@ def PropertyEntryFromString(xml_string): return atom.CreateClassFromXMLString(PropertyEntry, xml_string) + +class PropertyFeed(gdata.GDataFeed, gdata.LinkFinder): + """A Google Apps Property feed flavor of an Atom Feed""" + + _tag = 'feed' + _namespace = atom.ATOM_NAMESPACE + _children = gdata.GDataFeed._children.copy() + _attributes = gdata.GDataFeed._attributes.copy() + _children['{%s}entry' % atom.ATOM_NAMESPACE] = ('entry', [PropertyEntry]) + + def __init__(self, author=None, category=None, contributor=None, + generator=None, icon=None, atom_id=None, link=None, logo=None, + rights=None, subtitle=None, title=None, updated=None, + entry=None, total_results=None, start_index=None, + items_per_page=None, extension_elements=None, + extension_attributes=None, text=None): + gdata.GDataFeed.__init__(self, author=author, category=category, + contributor=contributor, generator=generator, + icon=icon, atom_id=atom_id, link=link, + logo=logo, rights=rights, subtitle=subtitle, + title=title, updated=updated, entry=entry, + total_results=total_results, + start_index=start_index, + items_per_page=items_per_page, + extension_elements=extension_elements, + extension_attributes=extension_attributes, + text=text) + +def PropertyFeedFromString(xml_string): + return atom.CreateClassFromXMLString(PropertyFeed, xml_string) diff -Nru python-gdata-1.2.4/src/gdata/apps/service.py python-gdata-2.0.8/src/gdata/apps/service.py --- python-gdata-1.2.4/src/gdata/apps/service.py 2009-01-22 19:17:14.000000000 +0000 +++ python-gdata-2.0.8/src/gdata/apps/service.py 2010-02-17 18:50:07.000000000 +0000 @@ -59,9 +59,11 @@ DEFAULT_QUOTA_LIMIT='2048' + class Error(Exception): pass + class AppsForYourDomainException(Error): def __init__(self, response): @@ -75,6 +77,7 @@ except: self.error_code = UNKOWN_ERROR + class AppsService(gdata.service.GDataService): """Client for the Google Apps Provisioning service.""" @@ -104,36 +107,41 @@ def _baseURL(self): return "/a/feeds/%s" % self.domain - def GetGeneratorFromLinkFinder(self, link_finder, func): - """returns a generator for pagination""" - yield link_finder - next = link_finder.GetNextLink() - while next is not None: - next_feed = func(str(self.Get(next.href))) - yield next_feed - next = next_feed.GetNextLink() - def AddAllElementsFromAllPages(self, link_finder, func): """retrieve all pages and add all elements""" next = link_finder.GetNextLink() while next is not None: - next_feed = func(str(self.Get(next.href))) + next_feed = self.Get(next.href, converter=func) for a_entry in next_feed.entry: link_finder.entry.append(a_entry) next = next_feed.GetNextLink() return link_finder - def RetrievePageOfEmailLists(self, start_email_list_name=None): + def RetrievePageOfEmailLists(self, start_email_list_name=None, + num_retries=gdata.service.DEFAULT_NUM_RETRIES, + delay=gdata.service.DEFAULT_DELAY, + backoff=gdata.service.DEFAULT_BACKOFF): """Retrieve one page of email list""" - uri = "%s/emailList/%s" % (self._baseURL(), API_VER) if start_email_list_name is not None: uri += "?startEmailListName=%s" % start_email_list_name try: - return gdata.apps.EmailListFeedFromString(str(self.Get(uri))) + return gdata.apps.EmailListFeedFromString(str(self.GetWithRetries( + uri, num_retries=num_retries, delay=delay, backoff=backoff))) except gdata.service.RequestError, e: raise AppsForYourDomainException(e.args[0]) + def GetGeneratorForAllEmailLists( + self, num_retries=gdata.service.DEFAULT_NUM_RETRIES, + delay=gdata.service.DEFAULT_DELAY, backoff=gdata.service.DEFAULT_BACKOFF): + """Retrieve a generator for all emaillists in this domain.""" + first_page = self.RetrievePageOfEmailLists(num_retries=num_retries, + delay=delay, + backoff=backoff) + return self.GetGeneratorFromLinkFinder( + first_page, gdata.apps.EmailListRecipientFeedFromString, + num_retries=num_retries, delay=delay, backoff=backoff) + def RetrieveAllEmailLists(self): """Retrieve all email list of a domain.""" @@ -176,7 +184,10 @@ except gdata.service.RequestError, e: raise AppsForYourDomainException(e.args[0]) - def RetrievePageOfRecipients(self, list_name, start_recipient=None): + def RetrievePageOfRecipients(self, list_name, start_recipient=None, + num_retries=gdata.service.DEFAULT_NUM_RETRIES, + delay=gdata.service.DEFAULT_DELAY, + backoff=gdata.service.DEFAULT_BACKOFF): """Retrieve one page of recipient of an email list. """ uri = "%s/emailList/%s/%s/recipient" % ( @@ -185,10 +196,24 @@ if start_recipient is not None: uri += "?startRecipient=%s" % start_recipient try: - return gdata.apps.EmailListRecipientFeedFromString(str(self.Get(uri))) + return gdata.apps.EmailListRecipientFeedFromString(str( + self.GetWithRetries( + uri, num_retries=num_retries, delay=delay, backoff=backoff))) except gdata.service.RequestError, e: raise AppsForYourDomainException(e.args[0]) + def GetGeneratorForAllRecipients( + self, list_name, num_retries=gdata.service.DEFAULT_NUM_RETRIES, + delay=gdata.service.DEFAULT_DELAY, backoff=gdata.service.DEFAULT_BACKOFF): + """Retrieve a generator for all recipients of a particular emaillist.""" + first_page = self.RetrievePageOfRecipients(list_name, + num_retries=num_retries, + delay=delay, + backoff=backoff) + return self.GetGeneratorFromLinkFinder( + first_page, gdata.apps.EmailListRecipientFeedFromString, + num_retries=num_retries, delay=delay, backoff=backoff) + def RetrieveAllRecipients(self, list_name): """Retrieve all recipient of an email list.""" @@ -241,17 +266,32 @@ except gdata.service.RequestError, e: raise AppsForYourDomainException(e.args[0]) - def RetrievePageOfNicknames(self, start_nickname=None): + def RetrievePageOfNicknames(self, start_nickname=None, + num_retries=gdata.service.DEFAULT_NUM_RETRIES, + delay=gdata.service.DEFAULT_DELAY, + backoff=gdata.service.DEFAULT_BACKOFF): """Retrieve one page of nicknames in the domain""" uri = "%s/nickname/%s" % (self._baseURL(), API_VER) if start_nickname is not None: uri += "?startNickname=%s" % start_nickname try: - return gdata.apps.NicknameFeedFromString(str(self.Get(uri))) + return gdata.apps.NicknameFeedFromString(str(self.GetWithRetries( + uri, num_retries=num_retries, delay=delay, backoff=backoff))) except gdata.service.RequestError, e: raise AppsForYourDomainException(e.args[0]) + def GetGeneratorForAllNicknames( + self, num_retries=gdata.service.DEFAULT_NUM_RETRIES, + delay=gdata.service.DEFAULT_DELAY, backoff=gdata.service.DEFAULT_BACKOFF): + """Retrieve a generator for all nicknames in this domain.""" + first_page = self.RetrievePageOfNicknames(num_retries=num_retries, + delay=delay, + backoff=backoff) + return self.GetGeneratorFromLinkFinder( + first_page, gdata.apps.NicknameFeedFromString, num_retries=num_retries, + delay=delay, backoff=backoff) + def RetrieveAllNicknames(self): """Retrieve all nicknames in the domain""" @@ -260,6 +300,20 @@ return self.AddAllElementsFromAllPages( ret, gdata.apps.NicknameFeedFromString) + def GetGeneratorForAllNicknamesOfAUser( + self, user_name, num_retries=gdata.service.DEFAULT_NUM_RETRIES, + delay=gdata.service.DEFAULT_DELAY, backoff=gdata.service.DEFAULT_BACKOFF): + """Retrieve a generator for all nicknames of a particular user.""" + uri = "%s/nickname/%s?username=%s" % (self._baseURL(), API_VER, user_name) + try: + first_page = gdata.apps.NicknameFeedFromString(str(self.GetWithRetries( + uri, num_retries=num_retries, delay=delay, backoff=backoff))) + except gdata.service.RequestError, e: + raise AppsForYourDomainException(e.args[0]) + return self.GetGeneratorFromLinkFinder( + first_page, gdata.apps.NicknameFeedFromString, num_retries=num_retries, + delay=delay, backoff=backoff) + def RetrieveNicknames(self, user_name): """Retrieve nicknames of the user""" @@ -371,22 +425,31 @@ except gdata.service.RequestError, e: raise AppsForYourDomainException(e.args[0]) - def RetrievePageOfUsers(self, start_username=None): + def RetrievePageOfUsers(self, start_username=None, + num_retries=gdata.service.DEFAULT_NUM_RETRIES, + delay=gdata.service.DEFAULT_DELAY, + backoff=gdata.service.DEFAULT_BACKOFF): """Retrieve one page of users in this domain.""" uri = "%s/user/%s" % (self._baseURL(), API_VER) if start_username is not None: uri += "?startUsername=%s" % start_username try: - return gdata.apps.UserFeedFromString(str(self.Get(uri))) + return gdata.apps.UserFeedFromString(str(self.GetWithRetries( + uri, num_retries=num_retries, delay=delay, backoff=backoff))) except gdata.service.RequestError, e: raise AppsForYourDomainException(e.args[0]) - def GetGeneratorForAllUsers(self): + def GetGeneratorForAllUsers(self, + num_retries=gdata.service.DEFAULT_NUM_RETRIES, + delay=gdata.service.DEFAULT_DELAY, + backoff=gdata.service.DEFAULT_BACKOFF): """Retrieve a generator for all users in this domain.""" - first_page = self.RetrievePageOfUsers() - return self.GetGeneratorFromLinkFinder(first_page, - gdata.apps.UserFeedFromString) + first_page = self.RetrievePageOfUsers(num_retries=num_retries, delay=delay, + backoff=backoff) + return self.GetGeneratorFromLinkFinder( + first_page, gdata.apps.UserFeedFromString, num_retries=num_retries, + delay=delay, backoff=backoff) def RetrieveAllUsers(self): """Retrieve all users in this domain. OBSOLETE""" @@ -410,6 +473,16 @@ self.port = 443 self.domain = domain + def AddAllElementsFromAllPages(self, link_finder, func): + """retrieve all pages and add all elements""" + next = link_finder.GetNextLink() + while next is not None: + next_feed = self.Get(next.href, converter=func) + for a_entry in next_feed.entry: + link_finder.entry.append(a_entry) + next = next_feed.GetNextLink() + return link_finder + def _GetPropertyEntry(self, properties): property_entry = gdata.apps.PropertyEntry() property = [] @@ -425,6 +498,22 @@ properties[property.name] = property.value return properties + def _GetPropertyFeed(self, uri): + try: + return gdata.apps.PropertyFeedFromString(str(self.Get(uri))) + except gdata.service.RequestError, e: + raise gdata.apps.service.AppsForYourDomainException(e.args[0]) + + def _GetPropertiesList(self, uri): + property_feed = self._GetPropertyFeed(uri) + # pagination + property_feed = self.AddAllElementsFromAllPages( + property_feed, gdata.apps.PropertyFeedFromString) + properties_list = [] + for property_entry in property_feed.entry: + properties_list.append(self._PropertyEntry2Dict(property_entry)) + return properties_list + def _GetProperties(self, uri): try: return self._PropertyEntry2Dict(gdata.apps.PropertyEntryFromString( @@ -447,3 +536,15 @@ str(self.Put(property_entry, uri)))) except gdata.service.RequestError, e: raise gdata.apps.service.AppsForYourDomainException(e.args[0]) + + def _DeleteProperties(self, uri): + try: + self.Delete(uri) + except gdata.service.RequestError, e: + raise gdata.apps.service.AppsForYourDomainException(e.args[0]) + + +def _bool2str(b): + if b is None: + return None + return str(b is True).lower() diff -Nru python-gdata-1.2.4/src/gdata/auth.py python-gdata-2.0.8/src/gdata/auth.py --- python-gdata-1.2.4/src/gdata/auth.py 2008-12-04 00:14:28.000000000 +0000 +++ python-gdata-2.0.8/src/gdata/auth.py 2009-07-02 00:51:30.000000000 +0100 @@ -1,6 +1,6 @@ #!/usr/bin/python # -# Copyright (C) 2007, 2008 Google Inc. +# Copyright (C) 2007 - 2009 Google Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -30,6 +30,8 @@ import gdata.tlslite.utils.keyfactory as keyfactory import gdata.tlslite.utils.cryptomath as cryptomath +import gdata.gauth + __author__ = 'api.jscudder (Jeff Scudder)' @@ -90,18 +92,8 @@ Returns: The HTTP body to send in a request for a client login token. """ - # Create a POST body containing the user's credentials. - request_fields = {'Email': email, - 'Passwd': password, - 'accountType': account_type, - 'service': service, - 'source': source} - if captcha_token and captcha_response: - # Send the captcha token and response as part of the POST body if the - # user is responding to a captch challenge. - request_fields['logintoken'] = captcha_token - request_fields['logincaptcha'] = captcha_response - return urllib.urlencode(request_fields) + return gdata.gauth.generate_client_login_request_body(email, password, + service, source, account_type, captcha_token, captcha_response) GenerateClientLoginRequestBody = generate_client_login_request_body @@ -139,11 +131,7 @@ Returns: The token value string for a ClientLoginToken. """ - for response_line in http_body.splitlines(): - if response_line.startswith('Auth='): - # Strip off the leading Auth= and return the Authorization value. - return response_line[5:] - return None + return gdata.gauth.get_client_login_token_string(http_body) def extract_client_login_token(http_body, scopes): @@ -189,21 +177,7 @@ 'url': string containing the URL of the image} Returns None if there was no CAPTCHA challenge in the response. """ - contains_captcha_challenge = False - captcha_parameters = {} - for response_line in http_body.splitlines(): - if response_line.startswith('Error=CaptchaRequired'): - contains_captcha_challenge = True - elif response_line.startswith('CaptchaToken='): - # Strip off the leading CaptchaToken= - captcha_parameters['token'] = response_line[13:] - elif response_line.startswith('CaptchaUrl='): - captcha_parameters['url'] = '%s%s' % (captcha_base_url, - response_line[11:]) - if contains_captcha_challenge: - return captcha_parameters - else: - return None + return gdata.gauth.get_captcha_challenge(http_body, captcha_base_url) GetCaptchaChallenge = get_captcha_challenge @@ -295,7 +269,8 @@ authorized_request_token, oauth_input_params, access_token_url='https://www.google.com/accounts/OAuthGetAccessToken', - oauth_version='1.0'): + oauth_version='1.0', + oauth_verifier=None): """Generates URL at which user will login to authorize the request token. Args: @@ -306,15 +281,21 @@ normally 'https://www.google.com/accounts/OAuthGetAccessToken' or '/accounts/OAuthGetAccessToken' oauth_version: str (default='1.0') oauth_version parameter. + oauth_verifier: str (optional) If present, it is assumed that the client + will use the OAuth v1.0a protocol which includes passing the + oauth_verifier (as returned by the SP) in the access token step. Returns: atom.url.Url OAuth access token URL. """ oauth_token = oauth.OAuthToken(authorized_request_token.key, authorized_request_token.secret) + parameters = {'oauth_version': oauth_version} + if oauth_verifier is not None: + parameters['oauth_verifier'] = oauth_verifier oauth_request = oauth.OAuthRequest.from_consumer_and_token( oauth_input_params.GetConsumer(), token=oauth_token, - http_url=access_token_url, parameters={'oauth_version': oauth_version}) + http_url=access_token_url, parameters=parameters) oauth_request.sign_request(oauth_input_params.GetSignatureMethod(), oauth_input_params.GetConsumer(), oauth_token) return atom.url.parse_url(oauth_request.to_url()) @@ -628,7 +609,7 @@ """ def __init__(self, signature_method, consumer_key, consumer_secret=None, - rsa_key=None): + rsa_key=None, requestor_id=None): """Initializes object with parameters required for using OAuth mechanism. NOTE: Though consumer_secret and rsa_key are optional, either of the two @@ -640,19 +621,59 @@ signing each request. Valid implementations are provided as the constants defined by gdata.auth.OAuthSignatureMethod. Currently they are gdata.auth.OAuthSignatureMethod.RSA_SHA1 and - gdata.auth.OAuthSignatureMethod.HMAC_SHA1 + gdata.auth.OAuthSignatureMethod.HMAC_SHA1. Instead of passing in + the strategy class, you may pass in a string for 'RSA_SHA1' or + 'HMAC_SHA1'. If you plan to use OAuth on App Engine (or another + WSGI environment) I recommend specifying signature method using a + string (the only options are 'RSA_SHA1' and 'HMAC_SHA1'). In these + environments there are sometimes issues with pickling an object in + which a member references a class or function. Storing a string to + refer to the signature method mitigates complications when + pickling. consumer_key: string Domain identifying third_party web application. consumer_secret: string (optional) Secret generated during registration. Required only for HMAC_SHA1 signature method. rsa_key: string (optional) Private key required for RSA_SHA1 signature method. + requestor_id: string (optional) User email adress to make requests on + their behalf. This parameter should only be set when performing + 2 legged OAuth requests. """ - if signature_method == OAuthSignatureMethod.RSA_SHA1: - self._signature_method = signature_method(rsa_key, None) + if (signature_method == OAuthSignatureMethod.RSA_SHA1 + or signature_method == 'RSA_SHA1'): + self.__signature_strategy = 'RSA_SHA1' + elif (signature_method == OAuthSignatureMethod.HMAC_SHA1 + or signature_method == 'HMAC_SHA1'): + self.__signature_strategy = 'HMAC_SHA1' else: - self._signature_method = signature_method() + self.__signature_strategy = signature_method + self.rsa_key = rsa_key self._consumer = oauth.OAuthConsumer(consumer_key, consumer_secret) - + self.requestor_id = requestor_id + + def __get_signature_method(self): + if self.__signature_strategy == 'RSA_SHA1': + return OAuthSignatureMethod.RSA_SHA1(self.rsa_key, None) + elif self.__signature_strategy == 'HMAC_SHA1': + return OAuthSignatureMethod.HMAC_SHA1() + else: + return self.__signature_strategy() + + def __set_signature_method(self, signature_method): + if (signature_method == OAuthSignatureMethod.RSA_SHA1 + or signature_method == 'RSA_SHA1'): + self.__signature_strategy = 'RSA_SHA1' + elif (signature_method == OAuthSignatureMethod.HMAC_SHA1 + or signature_method == 'HMAC_SHA1'): + self.__signature_strategy = 'HMAC_SHA1' + else: + self.__signature_strategy = signature_method + + _signature_method = property(__get_signature_method, __set_signature_method, + doc="""Returns object capable of signing the request using RSA of HMAC. + + Replaces the _signature_method member to avoid pickle errors.""") + def GetSignatureMethod(self): """Gets the OAuth signature method. @@ -660,10 +681,10 @@ object of supertype """ return self._signature_method - + def GetConsumer(self): """Gets the OAuth consumer. - + Returns: object of type """ @@ -836,11 +857,13 @@ header['Authorization'] = header['Authorization'].replace('+', '%2B') return header - def perform_request(self, http_client, operation, url, data=None, + def perform_request(self, http_client, operation, url, data=None, headers=None): """Sets the Authorization header and makes the HTTP request.""" if not headers: headers = {} + if self.oauth_input_params.requestor_id: + url.params['xoauth_requestor_id'] = self.oauth_input_params.requestor_id headers.update(self.GetAuthHeader(operation, url)) return http_client.request(operation, url, data=data, headers=headers) diff -Nru python-gdata-1.2.4/src/gdata/blogger/client.py python-gdata-2.0.8/src/gdata/blogger/client.py --- python-gdata-1.2.4/src/gdata/blogger/client.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/blogger/client.py 2010-02-19 00:15:41.000000000 +0000 @@ -0,0 +1,154 @@ +#!/usr/bin/env python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +"""Contains a client to communicate with the Blogger servers. + +For documentation on the Blogger API, see: +http://code.google.com/apis/blogger/ +""" + + +__author__ = 'j.s@google.com (Jeff Scudder)' + + +import gdata.client +import gdata.gauth +import gdata.blogger.data +import atom.data +import atom.http_core + + +# List user's blogs, takes a user ID, or 'default'. +BLOGS_URL = 'http://www.blogger.com/feeds/%s/blogs' +# Takes a blog ID. +BLOG_POST_URL = 'http://www.blogger.com/feeds/%s/posts/default' +# Takes a blog ID and post ID. +BLOG_POST_COMMENTS_URL = 'http://www.blogger.com/feeds/%s/%s/comments/default' +# Takes a blog ID. +BLOG_COMMENTS_URL = 'http://www.blogger.com/feeds/%s/comments/default' +# Takes a blog ID. +BLOG_ARCHIVE_URL = 'http://www.blogger.com/feeds/%s/archive/full' + + +class BloggerClient(gdata.client.GDClient): + api_version = '2' + auth_service = 'blogger' + auth_scopes = gdata.gauth.AUTH_SCOPES['blogger'] + + def get_blogs(self, user_id='default', auth_token=None, + desired_class=gdata.blogger.data.BlogFeed, **kwargs): + return self.get_feed(BLOGS_URL % user_id, auth_token=auth_token, + desired_class=desired_class, **kwargs) + + GetBlogs = get_blogs + + def get_posts(self, blog_id, auth_token=None, + desired_class=gdata.blogger.data.BlogPostFeed, query=None, + **kwargs): + return self.get_feed(BLOG_POST_URL % blog_id, auth_token=auth_token, + desired_class=desired_class, query=query, **kwargs) + + GetPosts = get_posts + + def get_post_comments(self, blog_id, post_id, auth_token=None, + desired_class=gdata.blogger.data.CommentFeed, + query=None, **kwargs): + return self.get_feed(BLOG_POST_COMMENTS_URL % (blog_id, post_id), + auth_token=auth_token, desired_class=desired_class, + query=query, **kwargs) + + GetPostComments = get_post_comments + + def get_blog_comments(self, blog_id, auth_token=None, + desired_class=gdata.blogger.data.CommentFeed, + query=None, **kwargs): + return self.get_feed(BLOG_COMMENTS_URL % blog_id, auth_token=auth_token, + desired_class=desired_class, query=query, **kwargs) + + GetBlogComments = get_blog_comments + + def get_blog_archive(self, blog_id, auth_token=None, **kwargs): + return self.get_feed(BLOG_ARCHIVE_URL % blog_id, auth_token=auth_token, + **kwargs) + + GetBlogArchive = get_blog_archive + + def add_post(self, blog_id, title, body, labels=None, draft=False, + auth_token=None, title_type='text', body_type='html', **kwargs): + # Construct an atom Entry for the blog post to be sent to the server. + new_entry = gdata.blogger.data.BlogPost( + title=atom.data.Title(text=title, type=title_type), + content=atom.data.Content(text=body, type=body_type)) + if labels: + for label in labels: + new_entry.add_label(label) + if draft: + new_entry.control = atom.data.Control(draft=atom.data.Draft(text='yes')) + return self.post(new_entry, BLOG_POST_URL % blog_id, auth_token=auth_token, **kwargs) + + AddPost = add_post + + def add_comment(self, blog_id, post_id, body, auth_token=None, + title_type='text', body_type='html', **kwargs): + new_entry = gdata.blogger.data.Comment( + content=atom.data.Content(text=body, type=body_type)) + return self.post(new_entry, BLOG_POST_COMMENTS_URL % (blog_id, post_id), + auth_token=auth_token, **kwargs) + + AddComment = add_comment + + def update(self, entry, auth_token=None, **kwargs): + # The Blogger API does not currently support ETags, so for now remove + # the ETag before performing an update. + old_etag = entry.etag + entry.etag = None + response = gdata.client.GDClient.update(self, entry, + auth_token=auth_token, **kwargs) + entry.etag = old_etag + return response + + Update = update + + def delete(self, entry_or_uri, auth_token=None, **kwargs): + if isinstance(entry_or_uri, (str, unicode, atom.http_core.Uri)): + return gdata.client.GDClient.delete(self, entry_or_uri, + auth_token=auth_token, **kwargs) + # The Blogger API does not currently support ETags, so for now remove + # the ETag before performing a delete. + old_etag = entry_or_uri.etag + entry_or_uri.etag = None + response = gdata.client.GDClient.delete(self, entry_or_uri, + auth_token=auth_token, **kwargs) + # TODO: if GDClient.delete raises and exception, the entry's etag may be + # left as None. Should revisit this logic. + entry_or_uri.etag = old_etag + return response + + Delete = delete + + +class Query(gdata.client.Query): + + def __init__(self, order_by=None, **kwargs): + gdata.client.Query.__init__(self, **kwargs) + self.order_by = order_by + + def modify_request(self, http_request): + gdata.client._add_query_param('orderby', self.order_by, http_request) + gdata.client.Query.modify_request(self, http_request) + + ModifyRequest = modify_request diff -Nru python-gdata-1.2.4/src/gdata/blogger/data.py python-gdata-2.0.8/src/gdata/blogger/data.py --- python-gdata-1.2.4/src/gdata/blogger/data.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/blogger/data.py 2009-10-30 18:25:26.000000000 +0000 @@ -0,0 +1,146 @@ +#!/usr/bin/env python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +"""Data model classes for parsing and generating XML for the Blogger API.""" + + +__author__ = 'j.s@google.com (Jeff Scudder)' + + +import re +import atom.core +import gdata.data + + +LABEL_SCHEME = 'http://www.blogger.com/atom/ns#' +THR_TEMPLATE = '{http://purl.org/syndication/thread/1.0}%s' + +BLOG_NAME_PATTERN = re.compile('(http://)(\w*)') +BLOG_ID_PATTERN = re.compile('(tag:blogger.com,1999:blog-)(\w*)') +BLOG_ID2_PATTERN = re.compile('tag:blogger.com,1999:user-(\d+)\.blog-(\d+)') +POST_ID_PATTERN = re.compile( + '(tag:blogger.com,1999:blog-)(\w*)(.post-)(\w*)') +COMMENT_ID_PATTERN = re.compile('.*-(\w*)$') + + +class BloggerEntry(gdata.data.GDEntry): + """Adds convenience methods inherited by all Blogger entries.""" + + def get_blog_id(self): + """Extracts the Blogger id of this blog. + + This method is useful when contructing URLs by hand. The blog id is + often used in blogger operation URLs. This should not be confused with + the id member of a BloggerBlog. The id element is the Atom id XML element. + The blog id which this method returns is a part of the Atom id. + + Returns: + The blog's unique id as a string. + """ + if self.id.text: + match = BLOG_ID_PATTERN.match(self.id.text) + if match: + return match.group(2) + else: + return BLOG_ID2_PATTERN.match(self.id.text).group(2) + return None + + GetBlogId = get_blog_id + + def get_blog_name(self): + """Finds the name of this blog as used in the 'alternate' URL. + + An alternate URL is in the form 'http://blogName.blogspot.com/'. For an + entry representing the above example, this method would return 'blogName'. + + Returns: + The blog's URL name component as a string. + """ + for link in self.link: + if link.rel == 'alternate': + return BLOG_NAME_PATTERN.match(link.href).group(2) + return None + + GetBlogName = get_blog_name + + +class Blog(BloggerEntry): + """Represents a blog which belongs to the user.""" + + +class BlogFeed(gdata.data.GDFeed): + entry = [Blog] + + +class BlogPost(BloggerEntry): + """Represents a single post on a blog.""" + + def add_label(self, label): + """Adds a label to the blog post. + + The label is represented by an Atom category element, so this method + is shorthand for appending a new atom.Category object. + + Args: + label: str + """ + self.category.append(atom.data.Category(scheme=LABEL_SCHEME, term=label)) + + AddLabel = add_label + + def get_post_id(self): + """Extracts the postID string from the entry's Atom id. + + Returns: A string of digits which identify this post within the blog. + """ + if self.id.text: + return POST_ID_PATTERN.match(self.id.text).group(4) + return None + + GetPostId = get_post_id + + +class BlogPostFeed(gdata.data.GDFeed): + entry = [BlogPost] + + +class InReplyTo(atom.core.XmlElement): + _qname = THR_TEMPLATE % 'in-reply-to' + href = 'href' + ref = 'ref' + source = 'source' + type = 'type' + + +class Comment(BloggerEntry): + """Blog post comment entry in a feed listing comments on a post or blog.""" + in_reply_to = InReplyTo + + def get_comment_id(self): + """Extracts the commentID string from the entry's Atom id. + + Returns: A string of digits which identify this post within the blog. + """ + if self.id.text: + return COMMENT_ID_PATTERN.match(self.id.text).group(1) + return None + + GetCommentId = get_comment_id + + +class CommentFeed(gdata.data.GDFeed): + entry = [Comment] diff -Nru python-gdata-1.2.4/src/gdata/blogger/__init__.py python-gdata-2.0.8/src/gdata/blogger/__init__.py --- python-gdata-1.2.4/src/gdata/blogger/__init__.py 2008-12-03 18:01:34.000000000 +0000 +++ python-gdata-2.0.8/src/gdata/blogger/__init__.py 2009-10-30 18:25:21.000000000 +0000 @@ -32,11 +32,11 @@ class BloggerEntry(gdata.GDataEntry): """Adds convenience methods inherited by all Blogger entries.""" - + blog_name_pattern = re.compile('(http://)(\w*)') blog_id_pattern = re.compile('(tag:blogger.com,1999:blog-)(\w*)') blog_id2_pattern = re.compile('tag:blogger.com,1999:user-(\d+)\.blog-(\d+)') - + def GetBlogId(self): """Extracts the Blogger id of this blog. This method is useful when contructing URLs by hand. The blog id is @@ -82,7 +82,7 @@ _children = gdata.GDataFeed._children.copy() _children['{%s}entry' % atom.ATOM_NAMESPACE] = ('entry', [BlogEntry]) - + def BlogFeedFromString(xml_string): return atom.CreateClassFromXMLString(BlogFeed, xml_string) @@ -92,9 +92,9 @@ """Describes a blog post entry in the feed of a blog's posts.""" post_id_pattern = re.compile('(tag:blogger.com,1999:blog-)(\w*)(.post-)(\w*)') - + def AddLabel(self, label): - """Adds a label to the blog post. + """Adds a label to the blog post. The label is represented by an Atom category element, so this method is shorthand for appending a new atom.Category object. @@ -106,7 +106,7 @@ def GetPostId(self): """Extracts the postID string from the entry's Atom id. - + Returns: A string of digits which identify this post within the blog. """ if self.id.text: @@ -120,7 +120,7 @@ class BlogPostFeed(gdata.GDataFeed): """Describes a feed of a blog's posts.""" - + _children = gdata.GDataFeed._children.copy() _children['{%s}entry' % atom.ATOM_NAMESPACE] = ('entry', [BlogPostEntry]) @@ -138,7 +138,7 @@ _attributes['source'] = 'source' _attributes['type'] = 'type' - def __init__(self, href=None, ref=None, source=None, type=None, + def __init__(self, href=None, ref=None, source=None, type=None, extension_elements=None, extension_attributes=None, text=None): self.href = href self.ref = ref @@ -154,7 +154,7 @@ class CommentEntry(BloggerEntry): - """Describes a blog post comment entry in the feed of a blog post's + """Describes a blog post comment entry in the feed of a blog post's comments.""" _children = BloggerEntry._children.copy() @@ -162,28 +162,28 @@ comment_id_pattern = re.compile('.*-(\w*)$') - def __init__(self, author=None, category=None, content=None, + def __init__(self, author=None, category=None, content=None, contributor=None, atom_id=None, link=None, published=None, rights=None, source=None, summary=None, control=None, title=None, updated=None, - in_reply_to=None, extension_elements=None, extension_attributes=None, + in_reply_to=None, extension_elements=None, extension_attributes=None, text=None): - BloggerEntry.__init__(self, author=author, category=category, + BloggerEntry.__init__(self, author=author, category=category, content=content, contributor=contributor, atom_id=atom_id, link=link, - published=published, rights=rights, source=source, summary=summary, - control=control, title=title, updated=updated, - extension_elements=extension_elements, + published=published, rights=rights, source=source, summary=summary, + control=control, title=title, updated=updated, + extension_elements=extension_elements, extension_attributes=extension_attributes, text=text) self.in_reply_to = in_reply_to def GetCommentId(self): """Extracts the commentID string from the entry's Atom id. - + Returns: A string of digits which identify this post within the blog. """ if self.id.text: return self.comment_id_pattern.match(self.id.text).group(1) return None - + def CommentEntryFromString(xml_string): return atom.CreateClassFromXMLString(CommentEntry, xml_string) diff -Nru python-gdata-1.2.4/src/gdata/books/data.py python-gdata-2.0.8/src/gdata/books/data.py --- python-gdata-1.2.4/src/gdata/books/data.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/books/data.py 2009-12-02 01:58:26.000000000 +0000 @@ -0,0 +1,90 @@ +#!/usr/bin/python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Contains the data classes of the Google Book Search Data API""" + + +__author__ = 'j.s@google.com (Jeff Scudder)' + + +import atom.core +import atom.data +import gdata.data +import gdata.dublincore.data +import gdata.opensearch.data + + +GBS_TEMPLATE = '{http://schemas.google.com/books/2008/}%s' + + +class CollectionEntry(gdata.data.GDEntry): + """Describes an entry in a feed of collections.""" + + +class CollectionFeed(gdata.data.BatchFeed): + """Describes a Book Search collection feed.""" + entry = [CollectionEntry] + + +class Embeddability(atom.core.XmlElement): + """Describes an embeddability.""" + _qname = GBS_TEMPLATE % 'embeddability' + value = 'value' + + +class OpenAccess(atom.core.XmlElement): + """Describes an open access.""" + _qname = GBS_TEMPLATE % 'openAccess' + value = 'value' + + +class Review(atom.core.XmlElement): + """User-provided review.""" + _qname = GBS_TEMPLATE % 'review' + lang = 'lang' + type = 'type' + + +class Viewability(atom.core.XmlElement): + """Describes a viewability.""" + _qname = GBS_TEMPLATE % 'viewability' + value = 'value' + + +class VolumeEntry(gdata.data.GDEntry): + """Describes an entry in a feed of Book Search volumes.""" + comments = gdata.data.Comments + language = [gdata.dublincore.data.Language] + open_access = OpenAccess + format = [gdata.dublincore.data.Format] + dc_title = [gdata.dublincore.data.Title] + viewability = Viewability + embeddability = Embeddability + creator = [gdata.dublincore.data.Creator] + rating = gdata.data.Rating + description = [gdata.dublincore.data.Description] + publisher = [gdata.dublincore.data.Publisher] + date = [gdata.dublincore.data.Date] + subject = [gdata.dublincore.data.Subject] + identifier = [gdata.dublincore.data.Identifier] + review = Review + + +class VolumeFeed(gdata.data.BatchFeed): + """Describes a Book Search volume feed.""" + entry = [VolumeEntry] + + diff -Nru python-gdata-1.2.4/src/gdata/books/__init__.py python-gdata-2.0.8/src/gdata/books/__init__.py --- python-gdata-1.2.4/src/gdata/books/__init__.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/books/__init__.py 2009-11-18 23:26:18.000000000 +0000 @@ -0,0 +1,473 @@ +#!/usr/bin/python + +""" + Data Models for books.service + + All classes can be instantiated from an xml string using their FromString + class method. + + Notes: + * Book.title displays the first dc:title because the returned XML + repeats that datum as atom:title. + There is an undocumented gbs:openAccess element that is not parsed. +""" + +__author__ = "James Sams " +__copyright__ = "Apache License v2.0" + +import atom +import gdata + + +BOOK_SEARCH_NAMESPACE = 'http://schemas.google.com/books/2008' +DC_NAMESPACE = 'http://purl.org/dc/terms' +ANNOTATION_REL = "http://schemas.google.com/books/2008/annotation" +INFO_REL = "http://schemas.google.com/books/2008/info" +LABEL_SCHEME = "http://schemas.google.com/books/2008/labels" +PREVIEW_REL = "http://schemas.google.com/books/2008/preview" +THUMBNAIL_REL = "http://schemas.google.com/books/2008/thumbnail" +FULL_VIEW = "http://schemas.google.com/books/2008#view_all_pages" +PARTIAL_VIEW = "http://schemas.google.com/books/2008#view_partial" +NO_VIEW = "http://schemas.google.com/books/2008#view_no_pages" +UNKNOWN_VIEW = "http://schemas.google.com/books/2008#view_unknown" +EMBEDDABLE = "http://schemas.google.com/books/2008#embeddable" +NOT_EMBEDDABLE = "http://schemas.google.com/books/2008#not_embeddable" + + + +class _AtomFromString(atom.AtomBase): + + #@classmethod + def FromString(cls, s): + return atom.CreateClassFromXMLString(cls, s) + + FromString = classmethod(FromString) + + +class Creator(_AtomFromString): + """ + The element identifies an author-or more generally, an entity + responsible for creating the volume in question. Examples of a creator + include a person, an organization, or a service. In the case of + anthologies, proceedings, or other edited works, this field may be used to + indicate editors or other entities responsible for collecting the volume's + contents. + + This element appears as a child of . If there are multiple authors or + contributors to the book, there may be multiple elements in the + volume entry (one for each creator or contributor). + """ + + _tag = 'creator' + _namespace = DC_NAMESPACE + + +class Date(_AtomFromString): #iso 8601 / W3CDTF profile + """ + The element indicates the publication date of the specific volume + in question. If the book is a reprint, this is the reprint date, not the + original publication date. The date is encoded according to the ISO-8601 + standard (and more specifically, the W3CDTF profile). + + The element can appear only as a child of . + + Usually only the year or the year and the month are given. + + YYYY-MM-DDThh:mm:ssTZD TZD = -hh:mm or +hh:mm + """ + + _tag = 'date' + _namespace = DC_NAMESPACE + + +class Description(_AtomFromString): + """ + The element includes text that describes a book or book + result. In a search result feed, this may be a search result "snippet" that + contains the words around the user's search term. For a single volume feed, + this element may contain a synopsis of the book. + + The element can appear only as a child of + """ + + _tag = 'description' + _namespace = DC_NAMESPACE + + +class Format(_AtomFromString): + """ + The element describes the physical properties of the volume. + Currently, it indicates the number of pages in the book, but more + information may be added to this field in the future. + + This element can appear only as a child of . + """ + + _tag = 'format' + _namespace = DC_NAMESPACE + + +class Identifier(_AtomFromString): + """ + The element provides an unambiguous reference to a + particular book. + * Every contains at least one child. + * The first identifier is always the unique string Book Search has assigned + to the volume (such as s1gVAAAAYAAJ). This is the ID that appears in the + book's URL in the Book Search GUI, as well as in the URL of that book's + single item feed. + * Many books contain additional elements. These provide + alternate, external identifiers to the volume. Such identifiers may + include the ISBNs, ISSNs, Library of Congress Control Numbers (LCCNs), + and OCLC numbers; they are prepended with a corresponding namespace + prefix (such as "ISBN:"). + * Any can be passed to the Dynamic Links, used to + instantiate an Embedded Viewer, or even used to construct static links to + Book Search. + The element can appear only as a child of . + """ + + _tag = 'identifier' + _namespace = DC_NAMESPACE + + +class Publisher(_AtomFromString): + """ + The element contains the name of the entity responsible for + producing and distributing the volume (usually the specific edition of this + book). Examples of a publisher include a person, an organization, or a + service. + + This element can appear only as a child of . If there is more than + one publisher, multiple elements may appear. + """ + + _tag = 'publisher' + _namespace = DC_NAMESPACE + + +class Subject(_AtomFromString): + """ + The element identifies the topic of the book. Usually this is + a Library of Congress Subject Heading (LCSH) or Book Industry Standards + and Communications Subject Heading (BISAC). + + The element can appear only as a child of . There may + be multiple elements per entry. + """ + + _tag = 'subject' + _namespace = DC_NAMESPACE + + +class Title(_AtomFromString): + """ + The element contains the title of a book as it was published. If + a book has a subtitle, it appears as a second element in the book + result's . + """ + + _tag = 'title' + _namespace = DC_NAMESPACE + + +class Viewability(_AtomFromString): + """ + Google Book Search respects the user's local copyright restrictions. As a + result, previews or full views of some books are not available in all + locations. The element indicates whether a book is fully + viewable, can be previewed, or only has "about the book" information. These + three "viewability modes" are the same ones returned by the Dynamic Links + API. + + The element can appear only as a child of . + + The value attribute will take the form of the following URIs to represent + the relevant viewing capability: + + Full View: http://schemas.google.com/books/2008#view_all_pages + Limited Preview: http://schemas.google.com/books/2008#view_partial + Snippet View/No Preview: http://schemas.google.com/books/2008#view_no_pages + Unknown view: http://schemas.google.com/books/2008#view_unknown + """ + + _tag = 'viewability' + _namespace = BOOK_SEARCH_NAMESPACE + _attributes = atom.AtomBase._attributes.copy() + _attributes['value'] = 'value' + + def __init__(self, value=None, text=None, + extension_elements=None, extension_attributes=None): + self.value = value + _AtomFromString.__init__(self, extension_elements=extension_elements, + extension_attributes=extension_attributes, text=text) + + +class Embeddability(_AtomFromString): + """ + Many of the books found on Google Book Search can be embedded on third-party + sites using the Embedded Viewer. The element indicates + whether a particular book result is available for embedding. By definition, + a book that cannot be previewed on Book Search cannot be embedded on third- + party sites. + + The element can appear only as a child of . + + The value attribute will take on one of the following URIs: + embeddable: http://schemas.google.com/books/2008#embeddable + not embeddable: http://schemas.google.com/books/2008#not_embeddable + """ + + _tag = 'embeddability' + _namespace = BOOK_SEARCH_NAMESPACE + _attributes = atom.AtomBase._attributes.copy() + _attributes['value'] = 'value' + + def __init__(self, value=None, text=None, extension_elements=None, + extension_attributes=None): + self.value = value + _AtomFromString.__init__(self, extension_elements=extension_elements, + extension_attributes=extension_attributes, text=text) + + +class Review(_AtomFromString): + """ + When present, the element contains a user-generated review for + a given book. This element currently appears only in the user library and + user annotation feeds, as a child of . + + type: text, html, xhtml + xml:lang: id of the language, a guess, (always two letters?) + """ + + _tag = 'review' + _namespace = BOOK_SEARCH_NAMESPACE + _attributes = atom.AtomBase._attributes.copy() + _attributes['type'] = 'type' + _attributes['{http://www.w3.org/XML/1998/namespace}lang'] = 'lang' + + def __init__(self, type=None, lang=None, text=None, + extension_elements=None, extension_attributes=None): + self.type = type + self.lang = lang + _AtomFromString.__init__(self, extension_elements=extension_elements, + extension_attributes=extension_attributes, text=text) + + +class Rating(_AtomFromString): + """All attributes must take an integral string between 1 and 5. + The min, max, and average attributes represent 'community' ratings. The + value attribute is the user's (of the feed from which the item is fetched, + not necessarily the authenticated user) rating of the book. + """ + + _tag = 'rating' + _namespace = gdata.GDATA_NAMESPACE + _attributes = atom.AtomBase._attributes.copy() + _attributes['min'] = 'min' + _attributes['max'] = 'max' + _attributes['average'] = 'average' + _attributes['value'] = 'value' + + def __init__(self, min=None, max=None, average=None, value=None, text=None, + extension_elements=None, extension_attributes=None): + self.min = min + self.max = max + self.average = average + self.value = value + _AtomFromString.__init__(self, extension_elements=extension_elements, + extension_attributes=extension_attributes, text=text) + + +class Book(_AtomFromString, gdata.GDataEntry): + """ + Represents an from either a search, annotation, library, or single + item feed. Note that dc_title attribute is the proper title of the volume, + title is an atom element and may not represent the full title. + """ + + _tag = 'entry' + _namespace = atom.ATOM_NAMESPACE + _children = gdata.GDataEntry._children.copy() + for i in (Creator, Identifier, Publisher, Subject,): + _children['{%s}%s' % (i._namespace, i._tag)] = (i._tag, [i]) + for i in (Date, Description, Format, Viewability, Embeddability, + Review, Rating): # Review, Rating maybe only in anno/lib entrys + _children['{%s}%s' % (i._namespace, i._tag)] = (i._tag, i) + # there is an atom title as well, should we clobber that? + del(i) + _children['{%s}%s' % (Title._namespace, Title._tag)] = ('dc_title', [Title]) + + def to_dict(self): + """Returns a dictionary of the book's available metadata. If the data + cannot be discovered, it is not included as a key in the returned dict. + The possible keys are: authors, embeddability, date, description, + format, identifiers, publishers, rating, review, subjects, title, and + viewability. + + Notes: + * Plural keys will be lists + * Singular keys will be strings + * Title, despite usually being a list, joins the title and subtitle + with a space as a single string. + * embeddability and viewability only return the portion of the URI + after # + * identifiers is a list of tuples, where the first item of each tuple + is the type of identifier and the second item is the identifying + string. Note that while doing dict() on this tuple may be possible, + some items may have multiple of the same identifier and converting + to a dict may resulted in collisions/dropped data. + * Rating returns only the user's rating. See Rating class for precise + definition. + """ + d = {} + if self.GetAnnotationLink(): + d['annotation'] = self.GetAnnotationLink().href + if self.creator: + d['authors'] = [x.text for x in self.creator] + if self.embeddability: + d['embeddability'] = self.embeddability.value.split('#')[-1] + if self.date: + d['date'] = self.date.text + if self.description: + d['description'] = self.description.text + if self.format: + d['format'] = self.format.text + if self.identifier: + d['identifiers'] = [('google_id', self.identifier[0].text)] + for x in self.identifier[1:]: + l = x.text.split(':') # should we lower the case of the ids? + d['identifiers'].append((l[0], ':'.join(l[1:]))) + if self.GetInfoLink(): + d['info'] = self.GetInfoLink().href + if self.GetPreviewLink(): + d['preview'] = self.GetPreviewLink().href + if self.publisher: + d['publishers'] = [x.text for x in self.publisher] + if self.rating: + d['rating'] = self.rating.value + if self.review: + d['review'] = self.review.text + if self.subject: + d['subjects'] = [x.text for x in self.subject] + if self.GetThumbnailLink(): + d['thumbnail'] = self.GetThumbnailLink().href + if self.dc_title: + d['title'] = ' '.join([x.text for x in self.dc_title]) + if self.viewability: + d['viewability'] = self.viewability.value.split('#')[-1] + return d + + def __init__(self, creator=None, date=None, + description=None, format=None, author=None, identifier=None, + publisher=None, subject=None, dc_title=None, viewability=None, + embeddability=None, review=None, rating=None, category=None, + content=None, contributor=None, atom_id=None, link=None, + published=None, rights=None, source=None, summary=None, + title=None, control=None, updated=None, text=None, + extension_elements=None, extension_attributes=None): + self.creator = creator + self.date = date + self.description = description + self.format = format + self.identifier = identifier + self.publisher = publisher + self.subject = subject + self.dc_title = dc_title or [] + self.viewability = viewability + self.embeddability = embeddability + self.review = review + self.rating = rating + gdata.GDataEntry.__init__(self, author=author, category=category, + content=content, contributor=contributor, atom_id=atom_id, + link=link, published=published, rights=rights, source=source, + summary=summary, title=title, control=control, updated=updated, + text=text, extension_elements=extension_elements, + extension_attributes=extension_attributes) + + def GetThumbnailLink(self): + """Returns the atom.Link object representing the thumbnail URI.""" + for i in self.link: + if i.rel == THUMBNAIL_REL: + return i + + def GetInfoLink(self): + """ + Returns the atom.Link object representing the human-readable info URI. + """ + for i in self.link: + if i.rel == INFO_REL: + return i + + def GetPreviewLink(self): + """Returns the atom.Link object representing the preview URI.""" + for i in self.link: + if i.rel == PREVIEW_REL: + return i + + def GetAnnotationLink(self): + """ + Returns the atom.Link object representing the Annotation URI. + Note that the use of www.books in the href of this link seems to make + this information useless. Using books.service.ANNOTATION_FEED and + BOOK_SERVER to construct your URI seems to work better. + """ + for i in self.link: + if i.rel == ANNOTATION_REL: + return i + + def set_rating(self, value): + """Set user's rating. Must be an integral string between 1 nad 5""" + assert (value in ('1','2','3','4','5')) + if not isinstance(self.rating, Rating): + self.rating = Rating() + self.rating.value = value + + def set_review(self, text, type='text', lang='en'): + """Set user's review text""" + self.review = Review(text=text, type=type, lang=lang) + + def get_label(self): + """Get users label for the item as a string""" + for i in self.category: + if i.scheme == LABEL_SCHEME: + return i.term + + def set_label(self, term): + """Clear pre-existing label for the item and set term as the label.""" + self.remove_label() + self.category.append(atom.Category(term=term, scheme=LABEL_SCHEME)) + + def remove_label(self): + """Clear the user's label for the item""" + ln = len(self.category) + for i, j in enumerate(self.category[::-1]): + if j.scheme == LABEL_SCHEME: + del(self.category[ln-1-i]) + + def clean_annotations(self): + """Clear all annotations from an item. Useful for taking an item from + another user's library/annotation feed and adding it to the + authenticated user's library without adopting annotations.""" + self.remove_label() + self.review = None + self.rating = None + + + def get_google_id(self): + """Get Google's ID of the item.""" + return self.id.text.split('/')[-1] + + +class BookFeed(_AtomFromString, gdata.GDataFeed): + """Represents a feed of entries from a search.""" + + _tag = 'feed' + _namespace = atom.ATOM_NAMESPACE + _children = gdata.GDataFeed._children.copy() + _children['{%s}%s' % (Book._namespace, Book._tag)] = (Book._tag, [Book]) + + +if __name__ == '__main__': + import doctest + doctest.testfile('datamodels.txt') diff -Nru python-gdata-1.2.4/src/gdata/books/service.py python-gdata-2.0.8/src/gdata/books/service.py --- python-gdata-1.2.4/src/gdata/books/service.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/books/service.py 2009-10-09 01:59:07.000000000 +0100 @@ -0,0 +1,266 @@ +#!/usr/bin/python + +""" + Extend gdata.service.GDataService to support authenticated CRUD ops on + Books API + + http://code.google.com/apis/books/docs/getting-started.html + http://code.google.com/apis/books/docs/gdata/developers_guide_protocol.html + + TODO: (here and __init__) + * search based on label, review, or other annotations (possible?) + * edit (specifically, Put requests) seem to fail effect a change + + Problems With API: + * Adding a book with a review to the library adds a note, not a review. + This does not get included in the returned item. You see this by + looking at My Library through the website. + * Editing a review never edits a review (unless it is freshly added, but + see above). More generally, + * a Put request with changed annotations (label/rating/review) does NOT + change the data. Note: Put requests only work on the href from + GetEditLink (as per the spec). Do not try to PUT to the annotate or + library feeds, this will cause a 400 Invalid URI Bad Request response. + Attempting to Post to one of the feeds with the updated annotations + does not update them. See the following for (hopefully) a follow up: + google.com/support/forum/p/booksearch-apis/thread?tid=27fd7f68de438fc8 + * Attempts to workaround the edit problem continue to fail. For example, + removing the item, editing the data, readding the item, gives us only + our originally added data (annotations). This occurs even if we + completely shut python down, refetch the book from the public feed, + and re-add it. There is some kind of persistence going on that I + cannot change. This is likely due to the annotations being cached in + the annotation feed and the inability to edit (see Put, above) + * GetAnnotationLink has www.books.... as the server, but hitting www... + results in a bad URI error. + * Spec indicates there may be multiple labels, but there does not seem + to be a way to get the server to accept multiple labels, nor does the + web interface have an obvious way to have multiple labels. Multiple + labels are never returned. +""" + +__author__ = "James Sams " +__copyright__ = "Apache License v2.0" + +from shlex import split + +import gdata.service +try: + import books +except ImportError: + import gdata.books as books + + +BOOK_SERVER = "books.google.com" +GENERAL_FEED = "/books/feeds/volumes" +ITEM_FEED = "/books/feeds/volumes/" +LIBRARY_FEED = "/books/feeds/users/%s/collections/library/volumes" +ANNOTATION_FEED = "/books/feeds/users/%s/volumes" +PARTNER_FEED = "/books/feeds/p/%s/volumes" +BOOK_SERVICE = "print" +ACCOUNT_TYPE = "HOSTED_OR_GOOGLE" + + +class BookService(gdata.service.GDataService): + + def __init__(self, email=None, password=None, source=None, + server=BOOK_SERVER, account_type=ACCOUNT_TYPE, + exception_handlers=tuple(), **kwargs): + """source should be of form 'ProgramCompany - ProgramName - Version'""" + + gdata.service.GDataService.__init__(self, email=email, + password=password, service=BOOK_SERVICE, source=source, + server=server, **kwargs) + self.exception_handlers = exception_handlers + + def search(self, q, start_index="1", max_results="10", + min_viewability="none", feed=GENERAL_FEED, + converter=books.BookFeed.FromString): + """ + Query the Public search feed. q is either a search string or a + gdata.service.Query instance with a query set. + + min_viewability must be "none", "partial", or "full". + + If you change the feed to a single item feed, note that you will + probably need to change the converter to be Book.FromString + """ + + if not isinstance(q, gdata.service.Query): + q = gdata.service.Query(text_query=q) + if feed: + q.feed = feed + q['start-index'] = start_index + q['max-results'] = max_results + q['min-viewability'] = min_viewability + return self.Get(uri=q.ToUri(),converter=converter) + + def search_by_keyword(self, q='', feed=GENERAL_FEED, start_index="1", + max_results="10", min_viewability="none", **kwargs): + """ + Query the Public Search Feed by keyword. Non-keyword strings can be + set in q. This is quite fragile. Is there a function somewhere in + the Google library that will parse a query the same way that Google + does? + + Legal Identifiers are listed below and correspond to their meaning + at http://books.google.com/advanced_book_search: + all_words + exact_phrase + at_least_one + without_words + title + author + publisher + subject + isbn + lccn + oclc + seemingly unsupported: + publication_date: a sequence of two, two tuples: + ((min_month,min_year),(max_month,max_year)) + where month is one/two digit month, year is 4 digit, eg: + (('1','2000'),('10','2003')). Lower bound is inclusive, + upper bound is exclusive + """ + + for k, v in kwargs.items(): + if not v: + continue + k = k.lower() + if k == 'all_words': + q = "%s %s" % (q, v) + elif k == 'exact_phrase': + q = '%s "%s"' % (q, v.strip('"')) + elif k == 'at_least_one': + q = '%s %s' % (q, ' '.join(['OR "%s"' % x for x in split(v)])) + elif k == 'without_words': + q = '%s %s' % (q, ' '.join(['-"%s"' % x for x in split(v)])) + elif k in ('author','title', 'publisher'): + q = '%s %s' % (q, ' '.join(['in%s:"%s"'%(k,x) for x in split(v)])) + elif k == 'subject': + q = '%s %s' % (q, ' '.join(['%s:"%s"' % (k,x) for x in split(v)])) + elif k == 'isbn': + q = '%s ISBN%s' % (q, v) + elif k == 'issn': + q = '%s ISSN%s' % (q,v) + elif k == 'oclc': + q = '%s OCLC%s' % (q,v) + else: + raise ValueError("Unsupported search keyword") + return self.search(q.strip(),start_index=start_index, feed=feed, + max_results=max_results, + min_viewability=min_viewability) + + def search_library(self, q, id='me', **kwargs): + """Like search, but in a library feed. Default is the authenticated + user's feed. Change by setting id.""" + + if 'feed' in kwargs: + raise ValueError("kwarg 'feed' conflicts with library_id") + feed = LIBRARY_FEED % id + return self.search(q, feed=feed, **kwargs) + + def search_library_by_keyword(self, id='me', **kwargs): + """Hybrid of search_by_keyword and search_library + """ + + if 'feed' in kwargs: + raise ValueError("kwarg 'feed' conflicts with library_id") + feed = LIBRARY_FEED % id + return self.search_by_keyword(feed=feed,**kwargs) + + def search_annotations(self, q, id='me', **kwargs): + """Like search, but in an annotation feed. Default is the authenticated + user's feed. Change by setting id.""" + + if 'feed' in kwargs: + raise ValueError("kwarg 'feed' conflicts with library_id") + feed = ANNOTATION_FEED % id + return self.search(q, feed=feed, **kwargs) + + def search_annotations_by_keyword(self, id='me', **kwargs): + """Hybrid of search_by_keyword and search_annotations + """ + + if 'feed' in kwargs: + raise ValueError("kwarg 'feed' conflicts with library_id") + feed = ANNOTATION_FEED % id + return self.search_by_keyword(feed=feed,**kwargs) + + def add_item_to_library(self, item): + """Add the item, either an XML string or books.Book instance, to the + user's library feed""" + + feed = LIBRARY_FEED % 'me' + return self.Post(data=item, uri=feed, converter=books.Book.FromString) + + def remove_item_from_library(self, item): + """ + Remove the item, a books.Book instance, from the authenticated user's + library feed. Using an item retrieved from a public search will fail. + """ + + return self.Delete(item.GetEditLink().href) + + def add_annotation(self, item): + """ + Add the item, either an XML string or books.Book instance, to the + user's annotation feed. + """ + # do not use GetAnnotationLink, results in 400 Bad URI due to www + return self.Post(data=item, uri=ANNOTATION_FEED % 'me', + converter=books.Book.FromString) + + def edit_annotation(self, item): + """ + Send an edited item, a books.Book instance, to the user's annotation + feed. Note that whereas extra annotations in add_annotations, minus + ratings which are immutable once set, are simply added to the item in + the annotation feed, if an annotation has been removed from the item, + sending an edit request will remove that annotation. This should not + happen with add_annotation. + """ + + return self.Put(data=item, uri=item.GetEditLink().href, + converter=books.Book.FromString) + + def get_by_google_id(self, id): + return self.Get(ITEM_FEED + id, converter=books.Book.FromString) + + def get_library(self, id='me',feed=LIBRARY_FEED, start_index="1", + max_results="100", min_viewability="none", + converter=books.BookFeed.FromString): + """ + Return a generator object that will return gbook.Book instances until + the search feed no longer returns an item from the GetNextLink method. + Thus max_results is not the maximum number of items that will be + returned, but rather the number of items per page of searches. This has + been set high to reduce the required number of network requests. + """ + + q = gdata.service.Query() + q.feed = feed % id + q['start-index'] = start_index + q['max-results'] = max_results + q['min-viewability'] = min_viewability + x = self.Get(uri=q.ToUri(), converter=converter) + while 1: + for entry in x.entry: + yield entry + else: + l = x.GetNextLink() + if l: # hope the server preserves our preferences + x = self.Get(uri=l.href, converter=converter) + else: + break + + def get_annotations(self, id='me', start_index="1", max_results="100", + min_viewability="none", converter=books.BookFeed.FromString): + """ + Like get_library, but for the annotation feed + """ + + return self.get_library(id=id, feed=ANNOTATION_FEED, + max_results=max_results, min_viewability = min_viewability, + converter=converter) diff -Nru python-gdata-1.2.4/src/gdata/calendar/data.py python-gdata-2.0.8/src/gdata/calendar/data.py --- python-gdata-1.2.4/src/gdata/calendar/data.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/calendar/data.py 2009-11-21 02:10:02.000000000 +0000 @@ -0,0 +1,300 @@ +#!/usr/bin/python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +"""Contains the data classes of the Google Calendar Data API""" + + +__author__ = 'j.s@google.com (Jeff Scudder)' + + +import atom.core +import atom.data +import gdata.acl.data +import gdata.data +import gdata.geo.data +import gdata.opensearch.data + + +GCAL_TEMPLATE = '{http://schemas.google.com/gCal/2005/}%s' + + +class AccessLevelProperty(atom.core.XmlElement): + """Describes how much a given user may do with an event or calendar""" + _qname = GCAL_TEMPLATE % 'accesslevel' + value = 'value' + + +class AllowGSync2Property(atom.core.XmlElement): + """Whether the user is permitted to run Google Apps Sync""" + _qname = GCAL_TEMPLATE % 'allowGSync2' + value = 'value' + + +class AllowGSyncProperty(atom.core.XmlElement): + """Whether the user is permitted to run Google Apps Sync""" + _qname = GCAL_TEMPLATE % 'allowGSync' + value = 'value' + + +class AnyoneCanAddSelfProperty(atom.core.XmlElement): + """Whether anyone can add self as attendee""" + _qname = GCAL_TEMPLATE % 'anyoneCanAddSelf' + value = 'value' + + +class CalendarAclRole(gdata.acl.data.AclRole): + """Describes the Calendar roles of an entry in the Calendar access control list""" + _qname = gdata.acl.data.GACL_TEMPLATE % 'role' + + +class CalendarCommentEntry(gdata.data.GDEntry): + """Describes an entry in a feed of a Calendar event's comments""" + + +class CalendarCommentFeed(gdata.data.GDFeed): + """Describes feed of a Calendar event's comments""" + entry = [CalendarCommentEntry] + + +class CalendarComments(gdata.data.Comments): + """Describes a container of a feed link for Calendar comment entries""" + _qname = gdata.data.GD_TEMPLATE % 'comments' + + +class CalendarExtendedProperty(gdata.data.ExtendedProperty): + """Defines a value for the realm attribute that is used only in the calendar API""" + _qname = gdata.data.GD_TEMPLATE % 'extendedProperty' + + +class CalendarWhere(gdata.data.Where): + """Extends the base Where class with Calendar extensions""" + _qname = gdata.data.GD_TEMPLATE % 'where' + + +class ColorProperty(atom.core.XmlElement): + """Describes the color of a calendar""" + _qname = GCAL_TEMPLATE % 'color' + value = 'value' + + +class GuestsCanInviteOthersProperty(atom.core.XmlElement): + """Whether guests can invite others to the event""" + _qname = GCAL_TEMPLATE % 'guestsCanInviteOthers' + value = 'value' + + +class GuestsCanModifyProperty(atom.core.XmlElement): + """Whether guests can modify event""" + _qname = GCAL_TEMPLATE % 'guestsCanModify' + value = 'value' + + +class GuestsCanSeeGuestsProperty(atom.core.XmlElement): + """Whether guests can see other attendees""" + _qname = GCAL_TEMPLATE % 'guestsCanSeeGuests' + value = 'value' + + +class HiddenProperty(atom.core.XmlElement): + """Describes whether a calendar is hidden""" + _qname = GCAL_TEMPLATE % 'hidden' + value = 'value' + + +class IcalUIDProperty(atom.core.XmlElement): + """Describes the UID in the ical export of the event""" + _qname = GCAL_TEMPLATE % 'uid' + value = 'value' + + +class OverrideNameProperty(atom.core.XmlElement): + """Describes the override name property of a calendar""" + _qname = GCAL_TEMPLATE % 'overridename' + value = 'value' + + +class PrivateCopyProperty(atom.core.XmlElement): + """Indicates whether this is a private copy of the event, changes to which should not be sent to other calendars""" + _qname = GCAL_TEMPLATE % 'privateCopy' + value = 'value' + + +class QuickAddProperty(atom.core.XmlElement): + """Describes whether gd:content is for quick-add processing""" + _qname = GCAL_TEMPLATE % 'quickadd' + value = 'value' + + +class ResourceProperty(atom.core.XmlElement): + """Describes whether gd:who is a resource such as a conference room""" + _qname = GCAL_TEMPLATE % 'resource' + value = 'value' + id = 'id' + + +class EventWho(gdata.data.Who): + """Extends the base Who class with Calendar extensions""" + _qname = gdata.data.GD_TEMPLATE % 'who' + resource = ResourceProperty + + +class SelectedProperty(atom.core.XmlElement): + """Describes whether a calendar is selected""" + _qname = GCAL_TEMPLATE % 'selected' + value = 'value' + + +class SendAclNotificationsProperty(atom.core.XmlElement): + """Describes whether to send ACL notifications to grantees""" + _qname = GCAL_TEMPLATE % 'sendAclNotifications' + value = 'value' + + +class CalendarAclEntry(gdata.data.GDEntry): + """Describes an entry in a feed of a Calendar access control list (ACL)""" + send_acl_notifications = SendAclNotificationsProperty + + +class CalendarAclFeed(gdata.data.GDFeed): + """Describes a Calendar access contorl list (ACL) feed""" + entry = [CalendarAclEntry] + + +class SendEventNotificationsProperty(atom.core.XmlElement): + """Describes whether to send event notifications to other participants of the event""" + _qname = GCAL_TEMPLATE % 'sendEventNotifications' + value = 'value' + + +class SequenceNumberProperty(atom.core.XmlElement): + """Describes sequence number of an event""" + _qname = GCAL_TEMPLATE % 'sequence' + value = 'value' + + +class CalendarRecurrenceExceptionEntry(gdata.data.GDEntry): + """Describes an entry used by a Calendar recurrence exception entry link""" + uid = IcalUIDProperty + sequence = SequenceNumberProperty + + +class CalendarRecurrenceException(gdata.data.RecurrenceException): + """Describes an exception to a recurring Calendar event""" + _qname = gdata.data.GD_TEMPLATE % 'recurrenceException' + + +class SettingsProperty(atom.core.XmlElement): + """User preference name-value pair""" + _qname = GCAL_TEMPLATE % 'settingsProperty' + name = 'name' + value = 'value' + + +class SettingsEntry(gdata.data.GDEntry): + """Describes a Calendar Settings property entry""" + settings_property = SettingsProperty + + +class CalendarSettingsFeed(gdata.data.GDFeed): + """Personal settings for Calendar application""" + entry = [SettingsEntry] + + +class SuppressReplyNotificationsProperty(atom.core.XmlElement): + """Lists notification methods to be suppressed for this reply""" + _qname = GCAL_TEMPLATE % 'suppressReplyNotifications' + methods = 'methods' + + +class SyncEventProperty(atom.core.XmlElement): + """Describes whether this is a sync scenario where the Ical UID and Sequence number are honored during inserts and updates""" + _qname = GCAL_TEMPLATE % 'syncEvent' + value = 'value' + + +class CalendarEventEntry(gdata.data.BatchEntry): + """Describes a Calendar event entry""" + quickadd = QuickAddProperty + send_event_notifications = SendEventNotificationsProperty + sync_event = SyncEventProperty + anyone_can_add_self = AnyoneCanAddSelfProperty + extended_property = [CalendarExtendedProperty] + sequence = SequenceNumberProperty + guests_can_invite_others = GuestsCanInviteOthersProperty + guests_can_modify = GuestsCanModifyProperty + guests_can_see_guests = GuestsCanSeeGuestsProperty + georss_where = gdata.geo.data.GeoRssWhere + private_copy = PrivateCopyProperty + suppress_reply_notifications = SuppressReplyNotificationsProperty + uid = IcalUIDProperty + + +class TimeZoneProperty(atom.core.XmlElement): + """Describes the time zone of a calendar""" + _qname = GCAL_TEMPLATE % 'timezone' + value = 'value' + + +class TimesCleanedProperty(atom.core.XmlElement): + """Describes how many times calendar was cleaned via Manage Calendars""" + _qname = GCAL_TEMPLATE % 'timesCleaned' + value = 'value' + + +class CalendarEntry(gdata.data.GDEntry): + """Describes a Calendar entry in the feed of a user's calendars""" + timezone = TimeZoneProperty + overridename = OverrideNameProperty + hidden = HiddenProperty + selected = SelectedProperty + times_cleaned = TimesCleanedProperty + color = ColorProperty + where = [CalendarWhere] + accesslevel = AccessLevelProperty + + +class CalendarEventFeed(gdata.data.BatchFeed): + """Describes a Calendar event feed""" + allow_g_sync2 = AllowGSync2Property + timezone = TimeZoneProperty + entry = [CalendarEventEntry] + times_cleaned = TimesCleanedProperty + allow_g_sync = AllowGSyncProperty + + +class CalendarFeed(gdata.data.GDFeed): + """Describes a feed of Calendars""" + entry = [CalendarEntry] + + +class WebContentGadgetPref(atom.core.XmlElement): + """Describes a single web content gadget preference""" + _qname = GCAL_TEMPLATE % 'webContentGadgetPref' + name = 'name' + value = 'value' + + +class WebContent(atom.core.XmlElement): + """Describes a "web content" extension""" + _qname = GCAL_TEMPLATE % 'webContent' + height = 'height' + width = 'width' + web_content_gadget_pref = [WebContentGadgetPref] + url = 'url' + display = 'display' + + diff -Nru python-gdata-1.2.4/src/gdata/calendar/__init__.py python-gdata-2.0.8/src/gdata/calendar/__init__.py --- python-gdata-1.2.4/src/gdata/calendar/__init__.py 2008-09-27 00:17:27.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/calendar/__init__.py 2009-12-17 18:54:33.000000000 +0000 @@ -68,7 +68,7 @@ _namespace = GCAL_NAMESPACE _children = ValueAttributeContainer._children.copy() _attributes = ValueAttributeContainer._attributes.copy() - + class AccessLevel(ValueAttributeContainer): @@ -78,7 +78,7 @@ _namespace = GCAL_NAMESPACE _children = ValueAttributeContainer._children.copy() _attributes = ValueAttributeContainer._attributes.copy() - + class Hidden(ValueAttributeContainer): """The Google Calendar hidden element""" @@ -87,7 +87,7 @@ _namespace = GCAL_NAMESPACE _children = ValueAttributeContainer._children.copy() _attributes = ValueAttributeContainer._attributes.copy() - + class Selected(ValueAttributeContainer): """The Google Calendar selected element""" @@ -118,7 +118,7 @@ def __init__(self, value_string=None, extension_elements=None, extension_attributes=None, text=None): - self.value_string = value_string + self.value_string = value_string self.text = text self.extension_elements = extension_elements or [] self.extension_attributes = extension_attributes or {} @@ -132,31 +132,31 @@ _children = gdata.GDataEntry._children.copy() _attributes = gdata.GDataEntry._attributes.copy() _children['{%s}color' % GCAL_NAMESPACE] = ('color', Color) - _children['{%s}accesslevel' % GCAL_NAMESPACE] = ('access_level', + _children['{%s}accesslevel' % GCAL_NAMESPACE] = ('access_level', AccessLevel) _children['{%s}hidden' % GCAL_NAMESPACE] = ('hidden', Hidden) _children['{%s}selected' % GCAL_NAMESPACE] = ('selected', Selected) _children['{%s}timezone' % GCAL_NAMESPACE] = ('timezone', Timezone) _children['{%s}where' % gdata.GDATA_NAMESPACE] = ('where', Where) - + def __init__(self, author=None, category=None, content=None, - atom_id=None, link=None, published=None, - title=None, updated=None, + atom_id=None, link=None, published=None, + title=None, updated=None, color=None, access_level=None, hidden=None, timezone=None, selected=None, where=None, extension_elements=None, extension_attributes=None, text=None): - gdata.GDataEntry.__init__(self, author=author, category=category, - content=content, atom_id=atom_id, link=link, - published=published, title=title, + gdata.GDataEntry.__init__(self, author=author, category=category, + content=content, atom_id=atom_id, link=link, + published=published, title=title, updated=updated, text=None) self.color = color self.access_level = access_level - self.hidden = hidden + self.hidden = hidden self.selected = selected self.timezone = timezone - self.where = where + self.where = where class CalendarListFeed(gdata.GDataFeed, gdata.LinkFinder): @@ -178,7 +178,7 @@ _attributes = atom.AtomBase._attributes.copy() _attributes['value'] = 'value' _attributes['type'] = 'type' - + def __init__(self, extension_elements=None, value=None, scope_type=None, extension_attributes=None, text=None): self.value = value @@ -206,15 +206,15 @@ _attributes = gdata.GDataEntry._attributes.copy() _children['{%s}scope' % GACL_NAMESPACE] = ('scope', Scope) _children['{%s}role' % GACL_NAMESPACE] = ('role', Role) - + def __init__(self, author=None, category=None, content=None, - atom_id=None, link=None, published=None, + atom_id=None, link=None, published=None, title=None, updated=None, scope=None, role=None, extension_elements=None, extension_attributes=None, text=None): - gdata.GDataEntry.__init__(self, author=author, category=category, - content=content, atom_id=atom_id, link=link, - published=published, title=title, + gdata.GDataEntry.__init__(self, author=author, category=category, + content=content, atom_id=atom_id, link=link, + published=published, title=title, updated=updated, text=None) self.scope = scope self.role = role @@ -246,7 +246,7 @@ _namespace = gdata.GDataFeed._namespace _children = gdata.GDataFeed._children.copy() _attributes = gdata.GDataFeed._attributes.copy() - _children['{%s}entry' % atom.ATOM_NAMESPACE] = ('entry', + _children['{%s}entry' % atom.ATOM_NAMESPACE] = ('entry', [CalendarEventCommentEntry]) @@ -254,10 +254,10 @@ """A transparent subclass of gdata.ExtendedProperty added to this module for backwards compatibility.""" - + class Reminder(atom.AtomBase): """The Google Calendar reminder element""" - + _tag = 'reminder' _namespace = gdata.GDATA_NAMESPACE _children = atom.AtomBase._children.copy() @@ -266,13 +266,14 @@ _attributes['days'] = 'days' _attributes['hours'] = 'hours' _attributes['minutes'] = 'minutes' + _attributes['method'] = 'method' def __init__(self, absolute_time=None, - days=None, hours=None, minutes=None, + days=None, hours=None, minutes=None, method=None, extension_elements=None, extension_attributes=None, text=None): self.absolute_time = absolute_time - if days is not None: + if days is not None: self.days = str(days) else: self.days = None @@ -284,10 +285,11 @@ self.minutes = str(minutes) else: self.minutes = None + self.method = method self.text = text self.extension_elements = extension_elements or [] self.extension_attributes = extension_attributes or {} - + class When(atom.AtomBase): """The Google Calendar When element""" @@ -300,10 +302,10 @@ _attributes['startTime'] = 'start_time' _attributes['endTime'] = 'end_time' - def __init__(self, start_time=None, end_time=None, reminder=None, + def __init__(self, start_time=None, end_time=None, reminder=None, extension_elements=None, extension_attributes=None, text=None): - self.start_time = start_time - self.end_time = end_time + self.start_time = start_time + self.end_time = end_time self.reminder = reminder or [] self.text = text self.extension_elements = extension_elements or [] @@ -318,13 +320,13 @@ _children = atom.AtomBase._children.copy() _attributes = atom.AtomBase._attributes.copy() - + class UriEnumElement(atom.AtomBase): _children = atom.AtomBase._children.copy() _attributes = atom.AtomBase._attributes.copy() - def __init__(self, tag, enum_map, attrib_name='value', + def __init__(self, tag, enum_map, attrib_name='value', extension_elements=None, extension_attributes=None, text=None): self.tag=tag self.enum_map=enum_map @@ -333,7 +335,7 @@ self.text=text self.extension_elements = extension_elements or [] self.extension_attributes = extension_attributes or {} - + def findKey(self, value): res=[item[0] for item in self.enum_map.items() if item[1] == value] if res is None or len(res) == 0: @@ -353,10 +355,10 @@ setattr(self, self.__class__._attributes[attribute], value) else: # The current class doesn't map this attribute, so try to parent class. - atom.ExtensionContainer._ConvertElementAttributeToMember(self, + atom.ExtensionContainer._ConvertElementAttributeToMember(self, attribute, value) - + def _AddMembersToElementTree(self, tree): # Convert the members of this class which are XML child nodes. # This uses the class's _children dictionary to find the members which @@ -384,46 +386,46 @@ # Lastly, call the parent's _AddMembersToElementTree to get any # extension elements. atom.ExtensionContainer._AddMembersToElementTree(self, tree) - - + + class AttendeeStatus(UriEnumElement): """The Google Calendar attendeeStatus element""" - + _tag = 'attendeeStatus' _namespace = gdata.GDATA_NAMESPACE _children = UriEnumElement._children.copy() _attributes = UriEnumElement._attributes.copy() - - attendee_enum = { + + attendee_enum = { 'http://schemas.google.com/g/2005#event.accepted' : 'ACCEPTED', 'http://schemas.google.com/g/2005#event.declined' : 'DECLINED', 'http://schemas.google.com/g/2005#event.invited' : 'INVITED', 'http://schemas.google.com/g/2005#event.tentative' : 'TENTATIVE'} - - def __init__(self, extension_elements=None, + + def __init__(self, extension_elements=None, extension_attributes=None, text=None): UriEnumElement.__init__(self, 'attendeeStatus', AttendeeStatus.attendee_enum, extension_elements=extension_elements, - extension_attributes=extension_attributes, + extension_attributes=extension_attributes, text=text) class AttendeeType(UriEnumElement): """The Google Calendar attendeeType element""" - + _tag = 'attendeeType' _namespace = gdata.GDATA_NAMESPACE _children = UriEnumElement._children.copy() _attributes = UriEnumElement._attributes.copy() - - attendee_type_enum = { + + attendee_type_enum = { 'http://schemas.google.com/g/2005#event.optional' : 'OPTIONAL', 'http://schemas.google.com/g/2005#event.required' : 'REQUIRED' } - + def __init__(self, extension_elements=None, extension_attributes=None, text=None): - UriEnumElement.__init__(self, 'attendeeType', + UriEnumElement.__init__(self, 'attendeeType', AttendeeType.attendee_type_enum, extension_elements=extension_elements, extension_attributes=extension_attributes,text=text) @@ -431,13 +433,13 @@ class Visibility(UriEnumElement): """The Google Calendar Visibility element""" - + _tag = 'visibility' _namespace = gdata.GDATA_NAMESPACE _children = UriEnumElement._children.copy() _attributes = UriEnumElement._attributes.copy() - - visibility_enum = { + + visibility_enum = { 'http://schemas.google.com/g/2005#event.confidential' : 'CONFIDENTIAL', 'http://schemas.google.com/g/2005#event.default' : 'DEFAULT', 'http://schemas.google.com/g/2005#event.private' : 'PRIVATE', @@ -447,45 +449,45 @@ extension_attributes=None, text=None): UriEnumElement.__init__(self, 'visibility', Visibility.visibility_enum, extension_elements=extension_elements, - extension_attributes=extension_attributes, + extension_attributes=extension_attributes, text=text) class Transparency(UriEnumElement): """The Google Calendar Transparency element""" - + _tag = 'transparency' _namespace = gdata.GDATA_NAMESPACE _children = UriEnumElement._children.copy() _attributes = UriEnumElement._attributes.copy() - - transparency_enum = { + + transparency_enum = { 'http://schemas.google.com/g/2005#event.opaque' : 'OPAQUE', 'http://schemas.google.com/g/2005#event.transparent' : 'TRANSPARENT' } - + def __init__(self, extension_elements=None, extension_attributes=None, text=None): - UriEnumElement.__init__(self, tag='transparency', + UriEnumElement.__init__(self, tag='transparency', enum_map=Transparency.transparency_enum, extension_elements=extension_elements, - extension_attributes=extension_attributes, + extension_attributes=extension_attributes, text=text) class Comments(atom.AtomBase): """The Google Calendar comments element""" - + _tag = 'comments' _namespace = gdata.GDATA_NAMESPACE _children = atom.AtomBase._children.copy() _attributes = atom.AtomBase._attributes.copy() - _children['{%s}feedLink' % gdata.GDATA_NAMESPACE] = ('feed_link', + _children['{%s}feedLink' % gdata.GDATA_NAMESPACE] = ('feed_link', gdata.FeedLink) _attributes['rel'] = 'rel' def __init__(self, rel=None, feed_link=None, extension_elements=None, extension_attributes=None, text=None): - self.rel = rel + self.rel = rel self.feed_link = feed_link self.text = text self.extension_elements = extension_elements or [] @@ -494,24 +496,25 @@ class EventStatus(UriEnumElement): """The Google Calendar eventStatus element""" - + _tag = 'eventStatus' _namespace = gdata.GDATA_NAMESPACE _children = UriEnumElement._children.copy() _attributes = UriEnumElement._attributes.copy() - + status_enum = { 'http://schemas.google.com/g/2005#event.canceled' : 'CANCELED', 'http://schemas.google.com/g/2005#event.confirmed' : 'CONFIRMED', 'http://schemas.google.com/g/2005#event.tentative' : 'TENTATIVE'} - + def __init__(self, extension_elements=None, extension_attributes=None, text=None): - UriEnumElement.__init__(self, tag='eventStatus', + UriEnumElement.__init__(self, tag='eventStatus', enum_map=EventStatus.status_enum, extension_elements=extension_elements, - extension_attributes=extension_attributes, + extension_attributes=extension_attributes, text=text) - + + class Who(UriEnumElement): """The Google Calendar Who element""" @@ -535,13 +538,13 @@ 'http://schemas.google.com/g/2005#message.from' : 'FROM', 'http://schemas.google.com/g/2005#message.reply-to' : 'REPLY_TO', 'http://schemas.google.com/g/2005#message.to' : 'TO' } - - def __init__(self, name=None, email=None, attendee_status=None, - attendee_type=None, rel=None, extension_elements=None, + + def __init__(self, name=None, email=None, attendee_status=None, + attendee_type=None, rel=None, extension_elements=None, extension_attributes=None, text=None): UriEnumElement.__init__(self, 'who', Who.relEnum, attrib_name='rel', extension_elements=extension_elements, - extension_attributes=extension_attributes, + extension_attributes=extension_attributes, text=text) self.name = name self.email = email @@ -552,7 +555,7 @@ class OriginalEvent(atom.AtomBase): """The Google Calendar OriginalEvent element""" - + _tag = 'originalEvent' _namespace = gdata.GDATA_NAMESPACE _children = atom.AtomBase._children.copy() @@ -562,24 +565,25 @@ _attributes['id'] = 'id' _attributes['href'] = 'href' - def __init__(self, id=None, href=None, when=None, + def __init__(self, id=None, href=None, when=None, extension_elements=None, extension_attributes=None, text=None): self.id = id - self.href = href + self.href = href self.when = when self.text = text self.extension_elements = extension_elements or [] - self.extension_attributes = extension_attributes or {} - + self.extension_attributes = extension_attributes or {} + def GetCalendarEventEntryClass(): return CalendarEventEntry - + + # This class is not completely defined here, because of a circular reference # in which CalendarEventEntryLink and CalendarEventEntry refer to one another. class CalendarEventEntryLink(gdata.EntryLink): """An entryLink which contains a calendar event entry - + Within an event's recurranceExceptions, an entry link points to a calendar event entry. This class exists to capture the calendar specific extensions in the entry. @@ -593,7 +597,7 @@ # that class hasn't been defined yet, so we will wait until after defining # CalendarEventEntry to list it in _children. - + class RecurrenceException(atom.AtomBase): """The Google Calendar RecurrenceException element""" @@ -601,14 +605,14 @@ _namespace = gdata.GDATA_NAMESPACE _children = atom.AtomBase._children.copy() _attributes = atom.AtomBase._attributes.copy() - _children['{%s}entryLink' % gdata.GDATA_NAMESPACE] = ('entry_link', + _children['{%s}entryLink' % gdata.GDATA_NAMESPACE] = ('entry_link', CalendarEventEntryLink) _children['{%s}originalEvent' % gdata.GDATA_NAMESPACE] = ('original_event', OriginalEvent) _attributes['specialized'] = 'specialized' - - def __init__(self, specialized=None, entry_link=None, - original_event=None, extension_elements=None, + + def __init__(self, specialized=None, entry_link=None, + original_event=None, extension_elements=None, extension_attributes=None, text=None): self.specialized = specialized self.entry_link = entry_link @@ -616,11 +620,11 @@ self.text = text self.extension_elements = extension_elements or [] self.extension_attributes = extension_attributes or {} - - + + class SendEventNotifications(atom.AtomBase): """The Google Calendar sendEventNotifications element""" - + _tag = 'sendEventNotifications' _namespace = GCAL_NAMESPACE _children = atom.AtomBase._children.copy() @@ -633,10 +637,11 @@ self.text = text self.extension_elements = extension_elements or [] self.extension_attributes = extension_attributes or {} - + + class QuickAdd(atom.AtomBase): """The Google Calendar quickadd element""" - + _tag = 'quickadd' _namespace = GCAL_NAMESPACE _children = atom.AtomBase._children.copy() @@ -662,10 +667,55 @@ self.value = element_tree.attrib[attribute] del element_tree.attrib[attribute] else: - atom.AtomBase._TakeAttributeFromElementTree(self, attribute, + atom.AtomBase._TakeAttributeFromElementTree(self, attribute, element_tree) - + +class SyncEvent(atom.AtomBase): + _tag = 'syncEvent' + _namespace = GCAL_NAMESPACE + _children = atom.AtomBase._children.copy() + _attributes = atom.AtomBase._attributes.copy() + _attributes['value'] = 'value' + + def __init__(self, value='false', extension_elements=None, + extension_attributes=None, text=None): + self.value = value + self.text = text + self.extension_elements = extension_elements or [] + self.extension_attributes = extension_attributes or {} + + +class UID(atom.AtomBase): + _tag = 'uid' + _namespace = GCAL_NAMESPACE + _children = atom.AtomBase._children.copy() + _attributes = atom.AtomBase._attributes.copy() + _attributes['value'] = 'value' + + def __init__(self, value=None, extension_elements=None, + extension_attributes=None, text=None): + self.value = value + self.text = text + self.extension_elements = extension_elements or [] + self.extension_attributes = extension_attributes or {} + + +class Sequence(atom.AtomBase): + _tag = 'sequence' + _namespace = GCAL_NAMESPACE + _children = atom.AtomBase._children.copy() + _attributes = atom.AtomBase._attributes.copy() + _attributes['value'] = 'value' + + def __init__(self, value=None, extension_elements=None, + extension_attributes=None, text=None): + self.value = value + self.text = text + self.extension_elements = extension_elements or [] + self.extension_attributes = extension_attributes or {} + + class WebContentGadgetPref(atom.AtomBase): _tag = 'webContentGadgetPref' @@ -683,16 +733,16 @@ self.value = value self.text = text self.extension_elements = extension_elements or [] - self.extension_attributes = extension_attributes or {} - - + self.extension_attributes = extension_attributes or {} + + class WebContent(atom.AtomBase): _tag = 'webContent' _namespace = GCAL_NAMESPACE _children = atom.AtomBase._children.copy() _attributes = atom.AtomBase._attributes.copy() - _children['{%s}webContentGadgetPref' % GCAL_NAMESPACE] = ('gadget_pref', + _children['{%s}webContentGadgetPref' % GCAL_NAMESPACE] = ('gadget_pref', [WebContentGadgetPref]) _attributes['url'] = 'url' _attributes['width'] = 'width' @@ -706,9 +756,9 @@ self.text = text self.gadget_pref = gadget_pref or [] self.extension_elements = extension_elements or [] - self.extension_attributes = extension_attributes or {} + self.extension_attributes = extension_attributes or {} + - class WebContentLink(atom.Link): _tag = 'link' @@ -716,14 +766,81 @@ _children = atom.Link._children.copy() _attributes = atom.Link._attributes.copy() _children['{%s}webContent' % GCAL_NAMESPACE] = ('web_content', WebContent) - - def __init__(self, title=None, href=None, link_type=None, + + def __init__(self, title=None, href=None, link_type=None, web_content=None): - atom.Link.__init__(self, rel=WEB_CONTENT_LINK_REL, title=title, href=href, + atom.Link.__init__(self, rel=WEB_CONTENT_LINK_REL, title=title, href=href, link_type=link_type) self.web_content = web_content +class GuestsCanInviteOthers(atom.AtomBase): + """Indicates whether event attendees may invite others to the event. + + This element may only be changed by the organizer of the event. If not + included as part of the event entry, this element will default to true + during a POST request, and will inherit its previous value during a PUT + request. + """ + _tag = 'guestsCanInviteOthers' + _namespace = GCAL_NAMESPACE + _attributes = atom.AtomBase._attributes.copy() + _attributes['value'] = 'value' + + def __init__(self, value='true', *args, **kwargs): + atom.AtomBase.__init__(self, *args, **kwargs) + self.value = value + + +class GuestsCanSeeGuests(atom.AtomBase): + """Indicates whether attendees can see other people invited to the event. + + The organizer always sees all attendees. Guests always see themselves. This + property affects what attendees see in the event's guest list via both the + Calendar UI and API feeds. + + This element may only be changed by the organizer of the event. + + If not included as part of the event entry, this element will default to + true during a POST request, and will inherit its previous value during a + PUT request. + """ + _tag = 'guestsCanSeeGuests' + _namespace = GCAL_NAMESPACE + _attributes = atom.AtomBase._attributes.copy() + _attributes['value'] = 'value' + + def __init__(self, value='true', *args, **kwargs): + atom.AtomBase.__init__(self, *args, **kwargs) + self.value = value + + +class GuestsCanModify(atom.AtomBase): + """Indicates whether event attendees may modify the original event. + + If yes, changes are visible to organizer and other attendees. Otherwise, + any changes made by attendees will be restricted to that attendee's + calendar. + + This element may only be changed by the organizer of the event, and may + be set to 'true' only if both gCal:guestsCanInviteOthers and + gCal:guestsCanSeeGuests are set to true in the same PUT/POST request. + Otherwise, request fails with HTTP error code 400 (Bad Request). + + If not included as part of the event entry, this element will default to + false during a POST request, and will inherit its previous value during a + PUT request.""" + _tag = 'guestsCanModify' + _namespace = GCAL_NAMESPACE + _attributes = atom.AtomBase._attributes.copy() + _attributes['value'] = 'value' + + def __init__(self, value='false', *args, **kwargs): + atom.AtomBase.__init__(self, *args, **kwargs) + self.value = value + + + class CalendarEventEntry(gdata.BatchEntry): """A Google Calendar flavor of an Atom Entry """ @@ -737,14 +854,14 @@ _children['{%s}when' % gdata.GDATA_NAMESPACE] = ('when', [When]) _children['{%s}who' % gdata.GDATA_NAMESPACE] = ('who', [Who]) _children['{%s}extendedProperty' % gdata.GDATA_NAMESPACE] = ( - 'extended_property', [ExtendedProperty]) - _children['{%s}visibility' % gdata.GDATA_NAMESPACE] = ('visibility', + 'extended_property', [ExtendedProperty]) + _children['{%s}visibility' % gdata.GDATA_NAMESPACE] = ('visibility', Visibility) - _children['{%s}transparency' % gdata.GDATA_NAMESPACE] = ('transparency', + _children['{%s}transparency' % gdata.GDATA_NAMESPACE] = ('transparency', Transparency) - _children['{%s}eventStatus' % gdata.GDATA_NAMESPACE] = ('event_status', + _children['{%s}eventStatus' % gdata.GDATA_NAMESPACE] = ('event_status', EventStatus) - _children['{%s}recurrence' % gdata.GDATA_NAMESPACE] = ('recurrence', + _children['{%s}recurrence' % gdata.GDATA_NAMESPACE] = ('recurrence', Recurrence) _children['{%s}recurrenceException' % gdata.GDATA_NAMESPACE] = ( 'recurrence_exception', [RecurrenceException]) @@ -754,31 +871,44 @@ _children['{%s}comments' % gdata.GDATA_NAMESPACE] = ('comments', Comments) _children['{%s}originalEvent' % gdata.GDATA_NAMESPACE] = ('original_event', OriginalEvent) - + _children['{%s}sequence' % GCAL_NAMESPACE] = ('sequence', Sequence) + _children['{%s}reminder' % gdata.GDATA_NAMESPACE] = ('reminder', [Reminder]) + _children['{%s}syncEvent' % GCAL_NAMESPACE] = ('sync_event', SyncEvent) + _children['{%s}uid' % GCAL_NAMESPACE] = ('uid', UID) + _children['{%s}guestsCanInviteOthers' % GCAL_NAMESPACE] = ( + 'guests_can_invite_others', GuestsCanInviteOthers) + _children['{%s}guestsCanModify' % GCAL_NAMESPACE] = ( + 'guests_can_modify', GuestsCanModify) + _children['{%s}guestsCanSeeGuests' % GCAL_NAMESPACE] = ( + 'guests_can_see_guests', GuestsCanSeeGuests) + def __init__(self, author=None, category=None, content=None, - atom_id=None, link=None, published=None, - title=None, updated=None, + atom_id=None, link=None, published=None, + title=None, updated=None, transparency=None, comments=None, event_status=None, send_event_notifications=None, visibility=None, recurrence=None, recurrence_exception=None, where=None, when=None, who=None, quick_add=None, extended_property=None, original_event=None, batch_operation=None, batch_id=None, batch_status=None, + sequence=None, reminder=None, sync_event=None, uid=None, + guests_can_invite_others=None, guests_can_modify=None, + guests_can_see_guests=None, extension_elements=None, extension_attributes=None, text=None): - gdata.BatchEntry.__init__(self, author=author, category=category, + gdata.BatchEntry.__init__(self, author=author, category=category, content=content, atom_id=atom_id, link=link, published=published, - batch_operation=batch_operation, batch_id=batch_id, + batch_operation=batch_operation, batch_id=batch_id, batch_status=batch_status, title=title, updated=updated) - - self.transparency = transparency + + self.transparency = transparency self.comments = comments - self.event_status = event_status + self.event_status = event_status self.send_event_notifications = send_event_notifications self.visibility = visibility - self.recurrence = recurrence + self.recurrence = recurrence self.recurrence_exception = recurrence_exception or [] self.where = where or [] self.when = when or [] @@ -786,20 +916,27 @@ self.quick_add = quick_add self.extended_property = extended_property or [] self.original_event = original_event + self.sequence = sequence + self.reminder = reminder or [] + self.sync_event = sync_event + self.uid = uid self.text = text + self.guests_can_invite_others = guests_can_invite_others + self.guests_can_modify = guests_can_modify + self.guests_can_see_guests = guests_can_see_guests self.extension_elements = extension_elements or [] self.extension_attributes = extension_attributes or {} # We needed to add special logic to _ConvertElementTreeToMember because we - # want to make links with a rel of WEB_CONTENT_LINK_REL into a + # want to make links with a rel of WEB_CONTENT_LINK_REL into a # WebContentLink def _ConvertElementTreeToMember(self, child_tree): # Special logic to handle Web Content links - if (child_tree.tag == '{%s}link' % atom.ATOM_NAMESPACE and + if (child_tree.tag == '{%s}link' % atom.ATOM_NAMESPACE and child_tree.attrib['rel'] == WEB_CONTENT_LINK_REL): if self.link is None: self.link = [] - self.link.append(atom._CreateClassFromElementTree(WebContentLink, + self.link.append(atom._CreateClassFromElementTree(WebContentLink, child_tree)) return # Find the element's tag in this class's list of child members @@ -819,13 +956,13 @@ atom._CreateClassFromElementTree(member_class, child_tree)) else: atom.ExtensionContainer._ConvertElementTreeToMember(self, child_tree) - + def GetWebContentLink(self): """Finds the first link with rel set to WEB_CONTENT_REL Returns: - A gdata.calendar.WebContentLink or none if none of the links had rel + A gdata.calendar.WebContentLink or none if none of the links had rel equal to WEB_CONTENT_REL """ @@ -833,7 +970,7 @@ if a_link.rel == WEB_CONTENT_LINK_REL: return a_link return None - + def CalendarEventEntryFromString(xml_string): return atom.CreateClassFromXMLString(CalendarEventEntry, xml_string) @@ -841,11 +978,11 @@ def CalendarEventCommentEntryFromString(xml_string): return atom.CreateClassFromXMLString(CalendarEventCommentEntry, xml_string) - -CalendarEventEntryLink._children = {'{%s}entry' % atom.ATOM_NAMESPACE: + +CalendarEventEntryLink._children = {'{%s}entry' % atom.ATOM_NAMESPACE: ('entry', CalendarEventEntry)} - + def CalendarEventEntryLinkFromString(xml_string): return atom.CreateClassFromXMLString(CalendarEventEntryLink, xml_string) @@ -858,13 +995,13 @@ _namespace = gdata.BatchFeed._namespace _children = gdata.BatchFeed._children.copy() _attributes = gdata.BatchFeed._attributes.copy() - _children['{%s}entry' % atom.ATOM_NAMESPACE] = ('entry', + _children['{%s}entry' % atom.ATOM_NAMESPACE] = ('entry', [CalendarEventEntry]) _children['{%s}timezone' % GCAL_NAMESPACE] = ('timezone', Timezone) def __init__(self, author=None, category=None, contributor=None, - generator=None, icon=None, atom_id=None, link=None, logo=None, - rights=None, subtitle=None, title=None, updated=None, entry=None, + generator=None, icon=None, atom_id=None, link=None, logo=None, + rights=None, subtitle=None, title=None, updated=None, entry=None, total_results=None, start_index=None, items_per_page=None, interrupted=None, timezone=None, extension_elements=None, extension_attributes=None, text=None): @@ -893,8 +1030,8 @@ def CalendarListFeedFromString(xml_string): return atom.CreateClassFromXMLString(CalendarListFeed, xml_string) - - + + def CalendarAclFeedFromString(xml_string): return atom.CreateClassFromXMLString(CalendarAclFeed, xml_string) @@ -902,6 +1039,6 @@ def CalendarEventFeedFromString(xml_string): return atom.CreateClassFromXMLString(CalendarEventFeed, xml_string) - + def CalendarEventCommentFeedFromString(xml_string): return atom.CreateClassFromXMLString(CalendarEventCommentFeed, xml_string) diff -Nru python-gdata-1.2.4/src/gdata/calendar_resource/client.py python-gdata-2.0.8/src/gdata/calendar_resource/client.py --- python-gdata-1.2.4/src/gdata/calendar_resource/client.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/calendar_resource/client.py 2010-02-18 19:40:18.000000000 +0000 @@ -0,0 +1,186 @@ +#!/usr/bin/python +# +# Copyright 2009 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""CalendarResourceClient simplifies Calendar Resources API calls. + +CalendarResourceClient extends gdata.client.GDClient to ease interaction with +the Google Apps Calendar Resources API. These interactions include the ability +to create, retrieve, update, and delete calendar resources in a Google Apps +domain. +""" + + +__author__ = 'Vic Fryzel ' + + +import urllib +import atom.data +import gdata.client +import gdata.calendar_resource.data + + +# Feed URI template. This must end with a / +RESOURCE_FEED_TEMPLATE = '/a/feeds/calendar/resource/%s/%s/' + + +class CalendarResourceClient(gdata.client.GDClient): + """Client extension for the Google Calendar Resource API service. + + Attributes: + host: string The hostname for the Calendar Resouce API service. + api_version: string The version of the Calendar Resource API. + """ + + host = 'apps-apis.google.com' + api_version = '2.0' + auth_service = 'apps' + auth_scopes = gdata.gauth.AUTH_SCOPES['apps'] + + def __init__(self, domain, auth_token=None, **kwargs): + """Constructs a new client for the Calendar Resource API. + + Args: + domain: string The Google Apps domain with Calendar Resources. + auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or + OAuthToken which authorizes this client to edit the calendar resource + data. + kwargs: The other parameters to pass to gdata.client.GDClient constructor. + """ + gdata.client.GDClient.__init__(self, auth_token=auth_token, **kwargs) + self.domain = domain + + def make_resource_feed_uri(self, resource_id=None, params=None): + """Creates a resource feed URI for the Calendar Resource API. + + Using this client's Google Apps domain, create a feed URI for calendar + resources in that domain. If a resource_id is provided, return a URI + for that specific resource. If params are provided, append them as GET + params. + + Args: + resource_id: string (optional) The ID of the calendar resource for which + to make a feed URI. + params: dict (optional) key -> value params to append as GET vars to the + URI. Example: params={'start': 'my-resource-id'} + Returns: + A string giving the URI for calendar resources for this client's Google + Apps domain. + """ + uri = RESOURCE_FEED_TEMPLATE % (self.api_version, self.domain) + if resource_id: + uri += resource_id + if params: + uri += '?' + urllib.urlencode(params) + return uri + + MakeResourceFeedUri = make_resource_feed_uri + + def get_resource_feed(self, uri=None, **kwargs): + """Fetches a ResourceFeed of calendar resources at the given URI. + + Args: + uri: string The URI of the feed to pull. + + Returns: + A ResourceFeed object representing the feed at the given URI. + """ + + if uri is None: + uri = self.MakeResourceFeedUri() + return self.get_feed(uri, + desired_class=gdata.calendar_resource.data.CalendarResourceFeed, + **kwargs) + + GetResourceFeed = get_resource_feed + + def get_resource(self, uri=None, resource_id=None, **kwargs): + """Fetches a single calendar resource by resource ID. + + Args: + uri: string The base URI of the feed from which to fetch the resource. + resource_id: string The string ID of the Resource to fetch. + + Returns: + A Resource object representing the calendar resource with the given + base URI and resource ID. + """ + + if uri is None: + uri = self.MakeResourceUri(resource_id) + return self.get_entry(uri, + desired_class=gdata.calendar_resource.data.CalendarResourceEntry, + **kwargs) + + GetResource = get_resource + + def create_resource(self, resource_id, resource_common_name=None, + resource_description=None, resource_type=None, **kwargs): + """Creates a calendar resource with the given properties. + + Args: + resource_id: string The resource ID of the calendar resource. + resource_common_name: string (optional) The common name of the resource. + resource_description: string (optional) The description of the resource. + resource_type: string (optional) The type of the resource. + + Returns: + gdata.calendar_resource.data.CalendarResourceEntry of the new resource. + """ + new_resource = gdata.calendar_resource.data.CalendarResourceEntry( + resource_id=resource_id, resource_common_name=resource_common_name, + resource_description=resource_description, resource_type=resource_type) + return self.post(new_resource, self.MakeResourceFeedUri(), **kwargs) + + CreateResource = create_resource + + def update_resource(self, resource_id, resource_common_name=None, + resource_description=None, resource_type=None, **kwargs): + """Updates the calendar resource with the given resource ID. + + Args: + resource_id: string The resource ID of the calendar resource to update. + resource_common_name: string (optional) The common name to give the + resource. + resource_description: string (optional) The description to give the + resource. + resource_type: string (optional) The type to give the resource. + + Returns: + gdata.calendar_resource.data.CalendarResourceEntry of the updated resource. + """ + new_resource = gdata.calendar_resource.data.CalendarResourceEntry( + resource_id=resource_id, resource_common_name=resource_common_name, + resource_description=resource_description, resource_type=resource_type) + return self.update(new_resource, + self.MakeResourceFeedUri(resource_id), **kwargs) + + UpdateResource = update_resource + + def delete_resource(self, resource_id, **kwargs): + """Deletes the calendar resource with the given resource ID. + + Args: + resource_id: string The resource ID of the calendar resource to delete. + kwargs: Other parameters to pass to gdata.client.delete() + + Returns: + An HTTP response object. See gdata.client.request(). + """ + + return self.delete(self.MakeResourceFeedUri(resource_id), + **kwargs) + + DeleteResource = delete_resource diff -Nru python-gdata-1.2.4/src/gdata/calendar_resource/data.py python-gdata-2.0.8/src/gdata/calendar_resource/data.py --- python-gdata-1.2.4/src/gdata/calendar_resource/data.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/calendar_resource/data.py 2010-01-26 18:29:05.000000000 +0000 @@ -0,0 +1,202 @@ +#!/usr/bin/python +# +# Copyright 2009 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Data model classes for parsing and generating XML for the Calendar +Resource API.""" + + +__author__ = 'Vic Fryzel ' + + +import atom.core +import atom.data +import gdata.apps +import gdata.data + + +# This is required to work around a naming conflict between the Google +# Spreadsheets API and Python's built-in property function +pyproperty = property + + +# The apps:property name of the resourceId property +RESOURCE_ID_NAME = 'resourceId' +# The apps:property name of the resourceCommonName property +RESOURCE_COMMON_NAME_NAME = 'resourceCommonName' +# The apps:property name of the resourceDescription property +RESOURCE_DESCRIPTION_NAME = 'resourceDescription' +# The apps:property name of the resourceType property +RESOURCE_TYPE_NAME = 'resourceType' + + +class AppsProperty(atom.core.XmlElement): + """Represents an element in a Calendar Resource feed.""" + _qname = gdata.apps.APPS_TEMPLATE % 'property' + name = 'name' + value = 'value' + + +class CalendarResourceEntry(gdata.data.GDEntry): + """Represents a Calendar Resource entry in object form.""" + + property = [AppsProperty] + + def _GetProperty(self, name): + """Get the apps:property value with the given name. + + Args: + name: string Name of the apps:property value to get. + + Returns: + The apps:property value with the given name, or None if the name was + invalid. + """ + + value = None + for p in self.property: + if p.name == name: + value = p.value + break + return value + + def _SetProperty(self, name, value): + """Set the apps:property value with the given name to the given value. + + Args: + name: string Name of the apps:property value to set. + value: string Value to give the apps:property value with the given name. + """ + + found = False + for i in range(len(self.property)): + if self.property[i].name == name: + self.property[i].value = value + found = True + break + if not found: + self.property.append(AppsProperty(name=name, value=value)) + + def GetResourceId(self): + """Get the resource ID of this Calendar Resource object. + + Returns: + The resource ID of this Calendar Resource object as a string or None. + """ + + return self._GetProperty(RESOURCE_ID_NAME) + + def SetResourceId(self, value): + """Set the resource ID of this Calendar Resource object. + + Args: + value: string The new resource ID value to give this object. + """ + + self._SetProperty(RESOURCE_ID_NAME, value) + + resource_id = pyproperty(GetResourceId, SetResourceId) + + def GetResourceCommonName(self): + """Get the common name of this Calendar Resource object. + + Returns: + The common name of this Calendar Resource object as a string or None. + """ + + return self._GetProperty(RESOURCE_COMMON_NAME_NAME) + + def SetResourceCommonName(self, value): + """Set the common name of this Calendar Resource object. + + Args: + value: string The new common name value to give this object. + """ + + self._SetProperty(RESOURCE_COMMON_NAME_NAME, value) + + resource_common_name = pyproperty(GetResourceCommonName, + SetResourceCommonName) + + def GetResourceDescription(self): + """Get the description of this Calendar Resource object. + + Returns: + The description of this Calendar Resource object as a string or None. + """ + + return self._GetProperty(RESOURCE_DESCRIPTION_NAME) + + def SetResourceDescription(self, value): + """Set the description of this Calendar Resource object. + + Args: + value: string The new description value to give this object. + """ + + self._SetProperty(RESOURCE_DESCRIPTION_NAME, value) + + resource_description = pyproperty(GetResourceDescription, + SetResourceDescription) + + def GetResourceType(self): + """Get the type of this Calendar Resource object. + + Returns: + The type of this Calendar Resource object as a string or None. + """ + + return self._GetProperty(RESOURCE_TYPE_NAME) + + def SetResourceType(self, value): + """Set the type value of this Calendar Resource object. + + Args: + value: string The new type value to give this object. + """ + + self._SetProperty(RESOURCE_TYPE_NAME, value) + + resource_type = pyproperty(GetResourceType, SetResourceType) + + def __init__(self, resource_id=None, resource_common_name=None, + resource_description=None, resource_type=None, *args, **kwargs): + """Constructs a new CalendarResourceEntry object with the given arguments. + + Args: + resource_id: string (optional) The resource ID to give this new object. + resource_common_name: string (optional) The common name to give this new + object. + resource_description: string (optional) The description to give this new + object. + resource_type: string (optional) The type to give this new object. + args: The other parameters to pass to gdata.entry.GDEntry constructor. + kwargs: The other parameters to pass to gdata.entry.GDEntry constructor. + """ + super(CalendarResourceEntry, self).__init__(*args, **kwargs) + if resource_id: + self.resource_id = resource_id + if resource_common_name: + self.resource_common_name = resource_common_name + if resource_description: + self.resource_description = resource_description + if resource_type: + self.resource_type = resource_type + + +class CalendarResourceFeed(gdata.data.GDFeed): + """Represents a feed of CalendarResourceEntry objects.""" + + entry = [CalendarResourceEntry] diff -Nru python-gdata-1.2.4/src/gdata/calendar_resource/__init__.py python-gdata-2.0.8/src/gdata/calendar_resource/__init__.py --- python-gdata-1.2.4/src/gdata/calendar_resource/__init__.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/calendar_resource/__init__.py 2010-01-26 18:29:05.000000000 +0000 @@ -0,0 +1 @@ + diff -Nru python-gdata-1.2.4/src/gdata/client.py python-gdata-2.0.8/src/gdata/client.py --- python-gdata-1.2.4/src/gdata/client.py 2009-01-22 18:28:06.000000000 +0000 +++ python-gdata-2.0.8/src/gdata/client.py 2010-02-12 02:11:45.000000000 +0000 @@ -1,6 +1,6 @@ -#!/usr/bin/python +#!/usr/bin/env python # -# Copyright (C) 2008 Google Inc. +# Copyright (C) 2008, 2009 Google Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -15,87 +15,1112 @@ # limitations under the License. +# This module is used for version 2 of the Google Data APIs. + + +"""Provides a client to interact with Google Data API servers. + +This module is used for version 2 of the Google Data APIs. The primary class +in this module is GDClient. + + GDClient: handles auth and CRUD operations when communicating with servers. + GDataClient: deprecated client for version one services. Will be removed. +""" + + __author__ = 'j.s@google.com (Jeff Scudder)' +import re import atom.client +import atom.core +import atom.http_core +import gdata.gauth +import gdata.data + +class Error(Exception): + pass -# Old imports -import urllib -import urlparse -import gdata.auth -import gdata.service -import atom.service +class RequestError(Error): + status = None + reason = None + body = None + headers = None -class GDClient(atom.client.AtomPubClient): + +class RedirectError(RequestError): + pass + + +class CaptchaChallenge(RequestError): + captcha_url = None + captcha_token = None + + +class ClientLoginTokenMissing(Error): + pass + + +class MissingOAuthParameters(Error): + pass + + +class ClientLoginFailed(RequestError): pass -SCOPE_URL_PARAM_NAME = gdata.service.SCOPE_URL_PARAM_NAME -# Maps the service names used in ClientLogin to scope URLs. -CLIENT_LOGIN_SCOPES = gdata.service.CLIENT_LOGIN_SCOPES +class UnableToUpgradeToken(RequestError): + pass + + +class Unauthorized(Error): + pass + + +class BadAuthenticationServiceURL(RedirectError): + pass -class AuthorizationRequired(gdata.service.Error): +class BadAuthentication(RequestError): pass -class GDataClient(gdata.service.GDataService): - """This class is deprecated. - - All functionality has been migrated to gdata.service.GDataService. +class NotModified(RequestError): + pass + +class NotImplemented(RequestError): + pass + + +def error_from_response(message, http_response, error_class, + response_body=None): + + """Creates a new exception and sets the HTTP information in the error. + + Args: + message: str human readable message to be displayed if the exception is + not caught. + http_response: The response from the server, contains error information. + error_class: The exception to be instantiated and populated with + information from the http_response + response_body: str (optional) specify if the response has already been read + from the http_response object. """ - def __init__(self, application_name=None, tokens=None): - gdata.service.GDataService.__init__(self, source=application_name, - tokens=tokens) + if response_body is None: + body = http_response.read() + else: + body = response_body + error = error_class('%s: %i, %s' % (message, http_response.status, body)) + error.status = http_response.status + error.reason = http_response.reason + error.body = body + error.headers = atom.http_core.get_headers(http_response) + return error + + +def get_xml_version(version): + """Determines which XML schema to use based on the client API version. + + Args: + version: string which is converted to an int. The version string is in + the form 'Major.Minor.x.y.z' and only the major version number + is considered. If None is provided assume version 1. + """ + if version is None: + return 1 + return int(version.split('.')[0]) + + +class GDClient(atom.client.AtomPubClient): + """Communicates with Google Data servers to perform CRUD operations. + + This class is currently experimental and may change in backwards + incompatible ways. + + This class exists to simplify the following three areas involved in using + the Google Data APIs. + + CRUD Operations: - def ClientLogin(self, username, password, service_name, source=None, - account_type=None, auth_url=None, login_token=None, login_captcha=None): - gdata.service.GDataService.ClientLogin(self, username=username, - password=password, account_type=account_type, service=service_name, - auth_service_url=auth_url, source=source, captcha_token=login_token, - captcha_response=login_captcha) + The client provides a generic 'request' method for making HTTP requests. + There are a number of convenience methods which are built on top of + request, which include get_feed, get_entry, get_next, post, update, and + delete. These methods contact the Google Data servers. - def Get(self, url, parser): - """Simplified interface for Get. + Auth: - Requires a parser function which takes the server response's body as - the only argument. + Reading user-specific private data requires authorization from the user as + do any changes to user data. An auth_token object can be passed into any + of the HTTP requests to set the Authorization header in the request. + + You may also want to set the auth_token member to a an object which can + use modify_request to set the Authorization header in the HTTP request. + + If you are authenticating using the email address and password, you can + use the client_login method to obtain an auth token and set the + auth_token member. + + If you are using browser redirects, specifically AuthSub, you will want + to use gdata.gauth.AuthSubToken.from_url to obtain the token after the + redirect, and you will probably want to updgrade this since use token + to a multiple use (session) token using the upgrade_token method. + + API Versions: + + This client is multi-version capable and can be used with Google Data API + version 1 and version 2. The version should be specified by setting the + api_version member to a string, either '1' or '2'. + """ + + # The gsessionid is used by Google Calendar to prevent redirects. + __gsessionid = None + api_version = None + # Name of the Google Data service when making a ClientLogin request. + auth_service = None + # URL prefixes which should be requested for AuthSub and OAuth. + auth_scopes = None + + def request(self, method=None, uri=None, auth_token=None, + http_request=None, converter=None, desired_class=None, + redirects_remaining=4, **kwargs): + """Make an HTTP request to the server. + + See also documentation for atom.client.AtomPubClient.request. + + If a 302 redirect is sent from the server to the client, this client + assumes that the redirect is in the form used by the Google Calendar API. + The same request URI and method will be used as in the original request, + but a gsessionid URL parameter will be added to the request URI with + the value provided in the server's 302 redirect response. If the 302 + redirect is not in the format specified by the Google Calendar API, a + RedirectError will be raised containing the body of the server's + response. + + The method calls the client's modify_request method to make any changes + required by the client before the request is made. For example, a + version 2 client could add a GData-Version: 2 header to the request in + its modify_request method. Args: - url: A string or something that can be converted to a string using str. - The URL of the requested resource. - parser: A function which takes the HTTP body from the server as it's - only result. Common values would include str, - gdata.GDataEntryFromString, and gdata.GDataFeedFromString. + method: str The HTTP verb for this request, usually 'GET', 'POST', + 'PUT', or 'DELETE' + uri: atom.http_core.Uri, str, or unicode The URL being requested. + auth_token: An object which sets the Authorization HTTP header in its + modify_request method. Recommended classes include + gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken + among others. + http_request: (optional) atom.http_core.HttpRequest + converter: function which takes the body of the response as it's only + argument and returns the desired object. + desired_class: class descended from atom.core.XmlElement to which a + successful response should be converted. If there is no + converter function specified (converter=None) then the + desired_class will be used in calling the + atom.core.parse function. If neither + the desired_class nor the converter is specified, an + HTTP reponse object will be returned. + redirects_remaining: (optional) int, if this number is 0 and the + server sends a 302 redirect, the request method + will raise an exception. This parameter is used in + recursive request calls to avoid an infinite loop. + + Any additional arguments are passed through to + atom.client.AtomPubClient.request. + + Returns: + An HTTP response object (see atom.http_core.HttpResponse for a + description of the object's interface) if no converter was + specified and no desired_class was specified. If a converter function + was provided, the results of calling the converter are returned. If no + converter was specified but a desired_class was provided, the response + body will be converted to the class using + atom.core.parse. + """ + if isinstance(uri, (str, unicode)): + uri = atom.http_core.Uri.parse_uri(uri) + + # Add the gsession ID to the URL to prevent further redirects. + # TODO: If different sessions are using the same client, there will be a + # multitude of redirects and session ID shuffling. + # If the gsession ID is in the URL, adopt it as the standard location. + if uri is not None and uri.query is not None and 'gsessionid' in uri.query: + self.__gsessionid = uri.query['gsessionid'] + # The gsession ID could also be in the HTTP request. + elif (http_request is not None and http_request.uri is not None + and http_request.uri.query is not None + and 'gsessionid' in http_request.uri.query): + self.__gsessionid = http_request.uri.query['gsessionid'] + # If the gsession ID is stored in the client, and was not present in the + # URI then add it to the URI. + elif self.__gsessionid is not None: + uri.query['gsessionid'] = self.__gsessionid + + # The AtomPubClient should call this class' modify_request before + # performing the HTTP request. + #http_request = self.modify_request(http_request) + + response = atom.client.AtomPubClient.request(self, method=method, + uri=uri, auth_token=auth_token, http_request=http_request, **kwargs) + # On success, convert the response body using the desired converter + # function if present. + if response is None: + return None + if response.status == 200 or response.status == 201: + if converter is not None: + return converter(response) + elif desired_class is not None: + if self.api_version is not None: + return atom.core.parse(response.read(), desired_class, + version=get_xml_version(self.api_version)) + else: + # No API version was specified, so allow parse to + # use the default version. + return atom.core.parse(response.read(), desired_class) + else: + return response + # TODO: move the redirect logic into the Google Calendar client once it + # exists since the redirects are only used in the calendar API. + elif response.status == 302: + if redirects_remaining > 0: + location = (response.getheader('Location') + or response.getheader('location')) + if location is not None: + m = re.compile('[\?\&]gsessionid=(\w*)').search(location) + if m is not None: + self.__gsessionid = m.group(1) + # Make a recursive call with the gsession ID in the URI to follow + # the redirect. + return self.request(method=method, uri=uri, auth_token=auth_token, + http_request=http_request, converter=converter, + desired_class=desired_class, + redirects_remaining=redirects_remaining-1, + **kwargs) + else: + raise error_from_response('302 received without Location header', + response, RedirectError) + else: + raise error_from_response('Too many redirects from server', + response, RedirectError) + elif response.status == 401: + raise error_from_response('Unauthorized - Server responded with', + response, Unauthorized) + elif response.status == 304: + raise error_from_response('Entry Not Modified - Server responded with', + response, NotModified) + elif response.status == 501: + raise error_from_response( + 'This API operation is not implemented. - Server responded with', + response, NotImplemented) + # If the server's response was not a 200, 201, 302, 304, 401, or 501, raise + # an exception. + else: + raise error_from_response('Server responded with', response, + RequestError) + + Request = request + + def request_client_login_token( + self, email, password, source, service=None, + account_type='HOSTED_OR_GOOGLE', + auth_url=atom.http_core.Uri.parse_uri( + 'https://www.google.com/accounts/ClientLogin'), + captcha_token=None, captcha_response=None): + service = service or self.auth_service + # Set the target URL. + http_request = atom.http_core.HttpRequest(uri=auth_url, method='POST') + http_request.add_body_part( + gdata.gauth.generate_client_login_request_body(email=email, + password=password, service=service, source=source, + account_type=account_type, captcha_token=captcha_token, + captcha_response=captcha_response), + 'application/x-www-form-urlencoded') + + # Use the underlying http_client to make the request. + response = self.http_client.request(http_request) + + response_body = response.read() + if response.status == 200: + token_string = gdata.gauth.get_client_login_token_string(response_body) + if token_string is not None: + return gdata.gauth.ClientLoginToken(token_string) + else: + raise ClientLoginTokenMissing( + 'Recieved a 200 response to client login request,' + ' but no token was present. %s' % (response_body,)) + elif response.status == 403: + captcha_challenge = gdata.gauth.get_captcha_challenge(response_body) + if captcha_challenge: + challenge = CaptchaChallenge('CAPTCHA required') + challenge.captcha_url = captcha_challenge['url'] + challenge.captcha_token = captcha_challenge['token'] + raise challenge + elif response_body.splitlines()[0] == 'Error=BadAuthentication': + raise BadAuthentication('Incorrect username or password') + else: + raise error_from_response('Server responded with a 403 code', + response, RequestError, response_body) + elif response.status == 302: + # Google tries to redirect all bad URLs back to + # http://www.google.. If a redirect + # attempt is made, assume the user has supplied an incorrect + # authentication URL + raise error_from_response('Server responded with a redirect', + response, BadAuthenticationServiceURL, + response_body) + else: + raise error_from_response('Server responded to ClientLogin request', + response, ClientLoginFailed, response_body) + + RequestClientLoginToken = request_client_login_token + + def client_login(self, email, password, source, service=None, + account_type='HOSTED_OR_GOOGLE', + auth_url=atom.http_core.Uri.parse_uri( + 'https://www.google.com/accounts/ClientLogin'), + captcha_token=None, captcha_response=None): + """Performs an auth request using the user's email address and password. + + In order to modify user specific data and read user private data, your + application must be authorized by the user. One way to demonstrage + authorization is by including a Client Login token in the Authorization + HTTP header of all requests. This method requests the Client Login token + by sending the user's email address, password, the name of the + application, and the service code for the service which will be accessed + by the application. If the username and password are correct, the server + will respond with the client login code and a new ClientLoginToken + object will be set in the client's auth_token member. With the auth_token + set, future requests from this client will include the Client Login + token. + + For a list of service names, see + http://code.google.com/apis/gdata/faq.html#clientlogin + For more information on Client Login, see: + http://code.google.com/apis/accounts/docs/AuthForInstalledApps.html - Returns: The result of calling parser(http_response_body). + Args: + email: str The user's email address or username. + password: str The password for the user's account. + source: str The name of your application. This can be anything you + like but should should give some indication of which app is + making the request. + service: str The service code for the service you would like to access. + For example, 'cp' for contacts, 'cl' for calendar. For a full + list see + http://code.google.com/apis/gdata/faq.html#clientlogin + If you are using a subclass of the gdata.client.GDClient, the + service will usually be filled in for you so you do not need + to specify it. For example see BloggerClient, + SpreadsheetsClient, etc. + account_type: str (optional) The type of account which is being + authenticated. This can be either 'GOOGLE' for a Google + Account, 'HOSTED' for a Google Apps Account, or the + default 'HOSTED_OR_GOOGLE' which will select the Google + Apps Account if the same email address is used for both + a Google Account and a Google Apps Account. + auth_url: str (optional) The URL to which the login request should be + sent. + captcha_token: str (optional) If a previous login attempt was reponded + to with a CAPTCHA challenge, this is the token which + identifies the challenge (from the CAPTCHA's URL). + captcha_response: str (optional) If a previous login attempt was + reponded to with a CAPTCHA challenge, this is the + response text which was contained in the challenge. + + Returns: + None + + Raises: + A RequestError or one of its suclasses: BadAuthentication, + BadAuthenticationServiceURL, ClientLoginFailed, + ClientLoginTokenMissing, or CaptchaChallenge """ - return gdata.service.GDataService.Get(self, uri=url, converter=parser) + service = service or self.auth_service + self.auth_token = self.request_client_login_token(email, password, + source, service=service, account_type=account_type, auth_url=auth_url, + captcha_token=captcha_token, captcha_response=captcha_response) + + ClientLogin = client_login + + def upgrade_token(self, token=None, url=atom.http_core.Uri.parse_uri( + 'https://www.google.com/accounts/AuthSubSessionToken')): + """Asks the Google auth server for a multi-use AuthSub token. - def Post(self, data, url, parser, media_source=None): - """Streamlined version of Post. + For details on AuthSub, see: + http://code.google.com/apis/accounts/docs/AuthSub.html - Requires a parser function which takes the server response's body as - the only argument. + Args: + token: gdata.gauth.AuthSubToken or gdata.gauth.SecureAuthSubToken + (optional) If no token is passed in, the client's auth_token member + is used to request the new token. The token object will be modified + to contain the new session token string. + url: str or atom.http_core.Uri (optional) The URL to which the token + upgrade request should be sent. Defaults to: + https://www.google.com/accounts/AuthSubSessionToken + + Returns: + The upgraded gdata.gauth.AuthSubToken object. """ - return gdata.service.GDataService.Post(self, data=data, uri=url, - media_source=media_source, converter=parser) + # Default to using the auth_token member if no token is provided. + if token is None: + token = self.auth_token + # We cannot upgrade a None token. + if token is None: + raise UnableToUpgradeToken('No token was provided.') + if not isinstance(token, gdata.gauth.AuthSubToken): + raise UnableToUpgradeToken( + 'Cannot upgrade the token because it is not an AuthSubToken object.') + http_request = atom.http_core.HttpRequest(uri=url, method='GET') + token.modify_request(http_request) + # Use the lower level HttpClient to make the request. + response = self.http_client.request(http_request) + if response.status == 200: + token._upgrade_token(response.read()) + return token + else: + raise UnableToUpgradeToken( + 'Server responded to token upgrade request with %s: %s' % ( + response.status, response.read())) + + UpgradeToken = upgrade_token + + def revoke_token(self, token=None, url=atom.http_core.Uri.parse_uri( + 'https://www.google.com/accounts/AuthSubRevokeToken')): + """Requests that the token be invalidated. + + This method can be used for both AuthSub and OAuth tokens (to invalidate + a ClientLogin token, the user must change their password). - def Put(self, data, url, parser, media_source=None): - """Streamlined version of Put. + Returns: + True if the server responded with a 200. - Requires a parser function which takes the server response's body as - the only argument. + Raises: + A RequestError if the server responds with a non-200 status. """ - return gdata.service.GDataService.Put(self, data=data, uri=url, - media_source=media_source, converter=parser) + # Default to using the auth_token member if no token is provided. + if token is None: + token = self.auth_token + + http_request = atom.http_core.HttpRequest(uri=url, method='GET') + token.modify_request(http_request) + response = self.http_client.request(http_request) + if response.status != 200: + raise error_from_response('Server sent non-200 to revoke token', + response, RequestError, response_body) + + return True + + RevokeToken = revoke_token + + def get_oauth_token(self, scopes, next, consumer_key, consumer_secret=None, + rsa_private_key=None, + url=gdata.gauth.REQUEST_TOKEN_URL): + """Obtains an OAuth request token to allow the user to authorize this app. + + Once this client has a request token, the user can authorize the request + token by visiting the authorization URL in their browser. After being + redirected back to this app at the 'next' URL, this app can then exchange + the authorized request token for an access token. - def Delete(self, url): - return gdata.service.GDataService.Delete(self, uri=url) + For more information see the documentation on Google Accounts with OAuth: + http://code.google.com/apis/accounts/docs/OAuth.html#AuthProcess + Args: + scopes: list of strings or atom.http_core.Uri objects which specify the + URL prefixes which this app will be accessing. For example, to access + the Google Calendar API, you would want to use scopes: + ['https://www.google.com/calendar/feeds/', + 'http://www.google.com/calendar/feeds/'] + next: str or atom.http_core.Uri object, The URL which the user's browser + should be sent to after they authorize access to their data. This + should be a URL in your application which will read the token + information from the URL and upgrade the request token to an access + token. + consumer_key: str This is the identifier for this application which you + should have received when you registered your application with Google + to use OAuth. + consumer_secret: str (optional) The shared secret between your app and + Google which provides evidence that this request is coming from you + application and not another app. If present, this libraries assumes + you want to use an HMAC signature to verify requests. Keep this data + a secret. + rsa_private_key: str (optional) The RSA private key which is used to + generate a digital signature which is checked by Google's server. If + present, this library assumes that you want to use an RSA signature + to verify requests. Keep this data a secret. + url: The URL to which a request for a token should be made. The default + is Google's OAuth request token provider. + """ + http_request = None + if rsa_private_key is not None: + http_request = gdata.gauth.generate_request_for_request_token( + consumer_key, gdata.gauth.RSA_SHA1, scopes, + rsa_key=rsa_private_key, auth_server_url=url, next=next) + elif consumer_secret is not None: + http_request = gdata.gauth.generate_request_for_request_token( + consumer_key, gdata.gauth.HMAC_SHA1, scopes, + consumer_secret=consumer_secret, auth_server_url=url, next=next) + else: + raise MissingOAuthParameters( + 'To request an OAuth token, you must provide your consumer secret' + ' or your private RSA key.') + + response = self.http_client.request(http_request) + response_body = response.read() + + if response.status != 200: + raise error_from_response('Unable to obtain OAuth request token', + response, RequestError, response_body) + + if rsa_private_key is not None: + return gdata.gauth.rsa_token_from_body(response_body, consumer_key, + rsa_private_key, + gdata.gauth.REQUEST_TOKEN) + elif consumer_secret is not None: + return gdata.gauth.hmac_token_from_body(response_body, consumer_key, + consumer_secret, + gdata.gauth.REQUEST_TOKEN) + + GetOAuthToken = get_oauth_token + + def get_access_token(self, request_token, + url=gdata.gauth.ACCESS_TOKEN_URL): + """Exchanges an authorized OAuth request token for an access token. + + Contacts the Google OAuth server to upgrade a previously authorized + request token. Once the request token is upgraded to an access token, + the access token may be used to access the user's data. + + For more details, see the Google Accounts OAuth documentation: + http://code.google.com/apis/accounts/docs/OAuth.html#AccessToken + + Args: + request_token: An OAuth token which has been authorized by the user. + url: (optional) The URL to which the upgrade request should be sent. + Defaults to: https://www.google.com/accounts/OAuthAuthorizeToken + """ + http_request = gdata.gauth.generate_request_for_access_token( + request_token, auth_server_url=url) + response = self.http_client.request(http_request) + response_body = response.read() + if response.status != 200: + raise error_from_response( + 'Unable to upgrade OAuth request token to access token', + response, RequestError, response_body) + + return gdata.gauth.upgrade_to_access_token(request_token, response_body) + + GetAccessToken = get_access_token + + def modify_request(self, http_request): + """Adds or changes request before making the HTTP request. + + This client will add the API version if it is specified. + Subclasses may override this method to add their own request + modifications before the request is made. + """ + http_request = atom.client.AtomPubClient.modify_request(self, + http_request) + if self.api_version is not None: + http_request.headers['GData-Version'] = self.api_version + return http_request + + ModifyRequest = modify_request + + def get_feed(self, uri, auth_token=None, converter=None, + desired_class=gdata.data.GDFeed, **kwargs): + return self.request(method='GET', uri=uri, auth_token=auth_token, + converter=converter, desired_class=desired_class, + **kwargs) + + GetFeed = get_feed + + def get_entry(self, uri, auth_token=None, converter=None, + desired_class=gdata.data.GDEntry, etag=None, **kwargs): + http_request = atom.http_core.HttpRequest() + # Conditional retrieval + if etag is not None: + http_request.headers['If-None-Match'] = etag + return self.request(method='GET', uri=uri, auth_token=auth_token, + http_request=http_request, converter=converter, + desired_class=desired_class, **kwargs) + + GetEntry = get_entry + + def get_next(self, feed, auth_token=None, converter=None, + desired_class=None, **kwargs): + """Fetches the next set of results from the feed. + + When requesting a feed, the number of entries returned is capped at a + service specific default limit (often 25 entries). You can specify your + own entry-count cap using the max-results URL query parameter. If there + are more results than could fit under max-results, the feed will contain + a next link. This method performs a GET against this next results URL. + + Returns: + A new feed object containing the next set of entries in this feed. + """ + if converter is None and desired_class is None: + desired_class = feed.__class__ + return self.get_feed(feed.find_next_link(), auth_token=auth_token, + converter=converter, desired_class=desired_class, + **kwargs) + + GetNext = get_next + + # TODO: add a refresh method to re-fetch the entry/feed from the server + # if it has been updated. + + def post(self, entry, uri, auth_token=None, converter=None, + desired_class=None, **kwargs): + if converter is None and desired_class is None: + desired_class = entry.__class__ + http_request = atom.http_core.HttpRequest() + http_request.add_body_part( + entry.to_string(get_xml_version(self.api_version)), + 'application/atom+xml') + return self.request(method='POST', uri=uri, auth_token=auth_token, + http_request=http_request, converter=converter, + desired_class=desired_class, **kwargs) + + Post = post + + def update(self, entry, auth_token=None, force=False, **kwargs): + """Edits the entry on the server by sending the XML for this entry. + + Performs a PUT and converts the response to a new entry object with a + matching class to the entry passed in. + + Args: + entry: + auth_token: + force: boolean stating whether an update should be forced. Defaults to + False. Normally, if a change has been made since the passed in + entry was obtained, the server will not overwrite the entry since + the changes were based on an obsolete version of the entry. + Setting force to True will cause the update to silently + overwrite whatever version is present. + + Returns: + A new Entry object of a matching type to the entry which was passed in. + """ + http_request = atom.http_core.HttpRequest() + http_request.add_body_part( + entry.to_string(get_xml_version(self.api_version)), + 'application/atom+xml') + # Include the ETag in the request if present. + if force: + http_request.headers['If-Match'] = '*' + elif hasattr(entry, 'etag') and entry.etag: + http_request.headers['If-Match'] = entry.etag + + return self.request(method='PUT', uri=entry.find_edit_link(), + auth_token=auth_token, http_request=http_request, + desired_class=entry.__class__, **kwargs) + + Update = update + + def delete(self, entry_or_uri, auth_token=None, force=False, **kwargs): + http_request = atom.http_core.HttpRequest() + + # Include the ETag in the request if present. + if force: + http_request.headers['If-Match'] = '*' + elif hasattr(entry_or_uri, 'etag') and entry_or_uri.etag: + http_request.headers['If-Match'] = entry_or_uri.etag + + # If the user passes in a URL, just delete directly, may not work as + # the service might require an ETag. + if isinstance(entry_or_uri, (str, unicode, atom.http_core.Uri)): + return self.request(method='DELETE', uri=entry_or_uri, + http_request=http_request, auth_token=auth_token, + **kwargs) + + return self.request(method='DELETE', uri=entry_or_uri.find_edit_link(), + http_request=http_request, auth_token=auth_token, + **kwargs) + + Delete = delete + + #TODO: implement batch requests. + #def batch(feed, uri, auth_token=None, converter=None, **kwargs): + # pass + + # TODO: add a refresh method to request a conditional update to an entry + # or feed. + + +def _add_query_param(param_string, value, http_request): + if value: + http_request.uri.query[param_string] = value + + +class Query(object): + + def __init__(self, text_query=None, categories=None, author=None, alt=None, + updated_min=None, updated_max=None, pretty_print=False, + published_min=None, published_max=None, start_index=None, + max_results=None, strict=False): + """Constructs a Google Data Query to filter feed contents serverside. + + Args: + text_query: Full text search str (optional) + categories: list of strings (optional). Each string is a required + category. To include an 'or' query, put a | in the string between + terms. For example, to find everything in the Fitz category and + the Laurie or Jane category (Fitz and (Laurie or Jane)) you would + set categories to ['Fitz', 'Laurie|Jane']. + author: str (optional) The service returns entries where the author + name and/or email address match your query string. + alt: str (optional) for the Alternative representation type you'd like + the feed in. If you don't specify an alt parameter, the service + returns an Atom feed. This is equivalent to alt='atom'. + alt='rss' returns an RSS 2.0 result feed. + alt='json' returns a JSON representation of the feed. + alt='json-in-script' Requests a response that wraps JSON in a script + tag. + alt='atom-in-script' Requests an Atom response that wraps an XML + string in a script tag. + alt='rss-in-script' Requests an RSS response that wraps an XML + string in a script tag. + updated_min: str (optional), RFC 3339 timestamp format, lower bounds. + For example: 2005-08-09T10:57:00-08:00 + updated_max: str (optional) updated time must be earlier than timestamp. + pretty_print: boolean (optional) If True the server's XML response will + be indented to make it more human readable. Defaults to False. + published_min: str (optional), Similar to updated_min but for published + time. + published_max: str (optional), Similar to updated_max but for published + time. + start_index: int or str (optional) 1-based index of the first result to + be retrieved. Note that this isn't a general cursoring mechanism. + If you first send a query with ?start-index=1&max-results=10 and + then send another query with ?start-index=11&max-results=10, the + service cannot guarantee that the results are equivalent to + ?start-index=1&max-results=20, because insertions and deletions + could have taken place in between the two queries. + max_results: int or str (optional) Maximum number of results to be + retrieved. Each service has a default max (usually 25) which can + vary from service to service. There is also a service-specific + limit to the max_results you can fetch in a request. + strict: boolean (optional) If True, the server will return an error if + the server does not recognize any of the parameters in the request + URL. Defaults to False. + """ + self.text_query = text_query + self.categories = categories or [] + self.author = author + self.alt = alt + self.updated_min = updated_min + self.updated_max = updated_max + self.pretty_print = pretty_print + self.published_min = published_min + self.published_max = published_max + self.start_index = start_index + self.max_results = max_results + self.strict = strict + + def modify_request(self, http_request): + _add_query_param('q', self.text_query, http_request) + if self.categories: + http_request.uri.query['categories'] = ','.join(self.categories) + _add_query_param('author', self.author, http_request) + _add_query_param('alt', self.alt, http_request) + _add_query_param('updated-min', self.updated_min, http_request) + _add_query_param('updated-max', self.updated_max, http_request) + if self.pretty_print: + http_request.uri.query['prettyprint'] = 'true' + _add_query_param('published-min', self.published_min, http_request) + _add_query_param('published-max', self.published_max, http_request) + if self.start_index is not None: + http_request.uri.query['start-index'] = str(self.start_index) + if self.max_results is not None: + http_request.uri.query['max-results'] = str(self.max_results) + if self.strict: + http_request.uri.query['strict'] = 'true' + + + ModifyRequest = modify_request + + +class GDQuery(atom.http_core.Uri): + + def _get_text_query(self): + return self.query['q'] + + def _set_text_query(self, value): + self.query['q'] = value + + text_query = property(_get_text_query, _set_text_query, + doc='The q parameter for searching for an exact text match on content') + + +class ResumableUploader(object): + """Resumable upload helper for the Google Data protocol.""" + + DEFAULT_CHUNK_SIZE = 5242880 # 5MB + + def __init__(self, client, file_handle, content_type, total_file_size, + chunk_size=None, desired_class=None): + """Starts a resumable upload to a service that supports the protocol. + + Args: + client: gdata.client.GDClient A Google Data API service. + file_handle: object A file-like object containing the file to upload. + content_type: str The mimetype of the file to upload. + total_file_size: int The file's total size in bytes. + chunk_size: int The size of each upload chunk. If None, the + DEFAULT_CHUNK_SIZE will be used. + desired_class: object (optional) The type of gdata.data.GDEntry to parse + the completed entry as. This should be specific to the API. + """ + self.client = client + self.file_handle = file_handle + self.content_type = content_type + self.total_file_size = total_file_size + self.chunk_size = chunk_size or self.DEFAULT_CHUNK_SIZE + self.desired_class = desired_class or gdata.data.GDEntry + self.upload_uri = None + + # Send the entire file if the chunk size is less than fize's total size. + if self.total_file_size <= self.chunk_size: + self.chunk_size = total_file_size + + def _init_session(self, resumable_media_link, entry=None, headers=None, + auth_token=None): + """Starts a new resumable upload to a service that supports the protocol. + + The method makes a request to initiate a new upload session. The unique + upload uri returned by the server (and set in this method) should be used + to send upload chunks to the server. + + Args: + resumable_media_link: str The full URL for the #resumable-create-media or + #resumable-edit-media link for starting a resumable upload request or + updating media using a resumable PUT. + entry: A (optional) gdata.data.GDEntry containging metadata to create the + upload from. + headers: dict (optional) Additional headers to send in the initial request + to create the resumable upload request. These headers will override + any default headers sent in the request. For example: + headers={'Slug': 'MyTitle'}. + auth_token: (optional) An object which sets the Authorization HTTP header + in its modify_request method. Recommended classes include + gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken + among others. + + Returns: + The final Atom entry as created on the server. The entry will be + parsed accoring to the class specified in self.desired_class. + + Raises: + RequestError if the unique upload uri is not set or the + server returns something other than an HTTP 308 when the upload is + incomplete. + """ + http_request = atom.http_core.HttpRequest() + + # Send empty POST if Atom XML wasn't specified. + if entry is None: + http_request.add_body_part('', self.content_type, size=0) + else: + http_request.add_body_part(str(entry), 'application/atom+xml', + size=len(str(entry))) + http_request.headers['X-Upload-Content-Type'] = self.content_type + http_request.headers['X-Upload-Content-Length'] = self.total_file_size + + if headers is not None: + http_request.headers.update(headers) + + response = self.client.request(method='POST', + uri=resumable_media_link, + auth_token=auth_token, + http_request=http_request) + + self.upload_uri = (response.getheader('location') or + response.getheader('Location')) + + _InitSession = _init_session + + def upload_chunk(self, start_byte, content_bytes): + """Uploads a byte range (chunk) to the resumable upload server. + + Args: + start_byte: int The byte offset of the total file where the byte range + passed in lives. + content_bytes: str The file contents of this chunk. + + Returns: + The final Atom entry created on the server. The entry object's type will + be the class specified in self.desired_class. + + Raises: + RequestError if the unique upload uri is not set or the + server returns something other than an HTTP 308 when the upload is + incomplete. + """ + if self.upload_uri is None: + raise RequestError('Resumable upload request not initialized.') + + # Adjustment if last byte range is less than defined chunk size. + chunk_size = self.chunk_size + if len(content_bytes) <= chunk_size: + chunk_size = len(content_bytes) + + http_request = atom.http_core.HttpRequest() + http_request.add_body_part(content_bytes, self.content_type, + size=len(content_bytes)) + http_request.headers['Content-Range'] = ('bytes %s-%s/%s' + % (start_byte, + start_byte + chunk_size - 1, + self.total_file_size)) + + try: + response = self.client.request(method='POST', uri=self.upload_uri, + http_request=http_request, + desired_class=self.desired_class) + return response + except RequestError, error: + if error.status == 308: + return None + else: + raise error + + UploadChunk = upload_chunk + + def upload_file(self, resumable_media_link, entry=None, headers=None, + auth_token=None): + """Uploads an entire file in chunks using the resumable upload protocol. + + If you are interested in pausing an upload or controlling the chunking + yourself, use the upload_chunk() method instead. + + Args: + resumable_media_link: str The full URL for the #resumable-create-media for + starting a resumable upload request. + entry: A (optional) gdata.data.GDEntry containging metadata to create the + upload from. + headers: dict Additional headers to send in the initial request to create + the resumable upload request. These headers will override any default + headers sent in the request. For example: headers={'Slug': 'MyTitle'}. + auth_token: (optional) An object which sets the Authorization HTTP header + in its modify_request method. Recommended classes include + gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken + among others. + + Returns: + The final Atom entry created on the server. The entry object's type will + be the class specified in self.desired_class. + + Raises: + RequestError if anything other than a HTTP 308 is returned + when the request raises an exception. + """ + self._init_session(resumable_media_link, headers=headers, + auth_token=auth_token, entry=entry) + + start_byte = 0 + entry = None + + while not entry: + entry = self.upload_chunk( + start_byte, self.file_handle.read(self.chunk_size)) + start_byte += self.chunk_size + + return entry + + UploadFile = upload_file + + def update_file(self, entry_or_resumable_edit_link, headers=None, force=False, + auth_token=None): + """Updates the contents of an existing file using the resumable protocol. + + If you are interested in pausing an upload or controlling the chunking + yourself, use the upload_chunk() method instead. + + Args: + entry_or_resumable_edit_link: object or string A gdata.data.GDEntry for + the entry/file to update or the full uri of the link with rel + #resumable-edit-media. + headers: dict Additional headers to send in the initial request to create + the resumable upload request. These headers will override any default + headers sent in the request. For example: headers={'Slug': 'MyTitle'}. + force boolean (optional) True to force an update and set the If-Match + header to '*'. If False and entry_or_resumable_edit_link is a + gdata.data.GDEntry object, its etag value is used. Otherwise this + parameter should be set to True to force the update. + auth_token: (optional) An object which sets the Authorization HTTP header + in its modify_request method. Recommended classes include + gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken + among others. + + Returns: + The final Atom entry created on the server. The entry object's type will + be the class specified in self.desired_class. + + Raises: + RequestError if anything other than a HTTP 308 is returned + when the request raises an exception. + """ + # Need to override the POST request for a resumable update (required). + customer_headers = {'X-HTTP-Method-Override': 'PUT'} + + if headers is not None: + customer_headers.update(headers) + + if isinstance(entry_or_resumable_edit_link, gdata.data.GDEntry): + resumable_edit_link = entry_or_resumable_edit_link.find_url( + 'http://schemas.google.com/g/2005#resumable-edit-media') + customer_headers['If-Match'] = entry_or_resumable_edit_link.etag + else: + resumable_edit_link = entry_or_resumable_edit_link + + if force: + customer_headers['If-Match'] = '*' + + return self.upload_file(resumable_edit_link, headers=customer_headers, + auth_token=auth_token) + + UpdateFile = update_file + + def query_upload_status(self, uri=None): + """Queries the current status of a resumable upload request. + + Args: + uri: str (optional) A resumable upload uri to query and override the one + that is set in this object. + + Returns: + An integer representing the file position (byte) to resume the upload from + or True if the upload is complete. + + Raises: + RequestError if anything other than a HTTP 308 is returned + when the request raises an exception. + """ + # Override object's unique upload uri. + if uri is None: + uri = self.upload_uri + + http_request = atom.http_core.HttpRequest() + http_request.headers['Content-Length'] = '0' + http_request.headers['Content-Range'] = 'bytes */%s' % self.total_file_size + + try: + response = self.client.request( + method='POST', uri=uri, http_request=http_request) + if response.status == 201: + return True + else: + raise error_from_response( + '%s returned by server' % response.status, response, RequestError) + except RequestError, error: + if error.status == 308: + for pair in error.headers: + if pair[0].capitalize() == 'Range': + return int(pair[1].split('-')[1]) + 1 + else: + raise error -ExtractToken = gdata.service.ExtractToken -GenerateAuthSubRequestUrl = gdata.service.GenerateAuthSubRequestUrl + QueryUploadStatus = query_upload_status diff -Nru python-gdata-1.2.4/src/gdata/contacts/client.py python-gdata-2.0.8/src/gdata/contacts/client.py --- python-gdata-1.2.4/src/gdata/contacts/client.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/contacts/client.py 2010-01-30 01:25:04.000000000 +0000 @@ -0,0 +1,474 @@ +#!/usr/bin/env python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +from types import ListType, DictionaryType + + +"""Contains a client to communicate with the Contacts servers. + +For documentation on the Contacts API, see: +http://code.google.com/apis/contatcs/ +""" + +__author__ = 'vinces1979@gmail.com (Vince Spicer)' + + +import gdata.client +import gdata.contacts.data +import atom.data +import atom.http_core +import gdata.gauth + + +class ContactsClient(gdata.client.GDClient): + api_version = '3' + auth_service = 'cp' + server = "www.google.com" + contact_list = "default" + auth_scopes = gdata.gauth.AUTH_SCOPES['cp'] + + def get_feed_uri(self, kind='contacts', contact_list=None, projection='full', + scheme="http"): + """Builds a feed URI. + + Args: + kind: The type of feed to return, typically 'groups' or 'contacts'. + Default value: 'contacts'. + contact_list: The contact list to return a feed for. + Default value: self.contact_list. + projection: The projection to apply to the feed contents, for example + 'full', 'base', 'base/12345', 'full/batch'. Default value: 'full'. + scheme: The URL scheme such as 'http' or 'https', None to return a + relative URI without hostname. + + Returns: + A feed URI using the given kind, contact list, and projection. + Example: '/m8/feeds/contacts/default/full'. + """ + contact_list = contact_list or self.contact_list + if kind == 'profiles': + contact_list = 'domain/%s' % contact_list + prefix = scheme and '%s://%s' % (scheme, self.server) or '' + return '%s/m8/feeds/%s/%s/%s' % (prefix, kind, contact_list, projection) + + GetFeedUri = get_feed_uri + + def get_contact(self, uri, desired_class=gdata.contacts.data.ContactEntry, + auth_token=None, **kwargs): + return self.get_feed(uri, auth_token=auth_token, + desired_class=desired_class, **kwargs) + + + GetContact = get_contact + + + def create_contact(self, new_contact, insert_uri=None, auth_token=None, **kwargs): + """Adds an new contact to Google Contacts. + + Args: + new_contact: atom.Entry or subclass A new contact which is to be added to + Google Contacts. + insert_uri: the URL to post new contacts to the feed + url_params: dict (optional) Additional URL parameters to be included + in the insertion request. + escape_params: boolean (optional) If true, the url_parameters will be + escaped before they are included in the request. + + Returns: + On successful insert, an entry containing the contact created + On failure, a RequestError is raised of the form: + {'status': HTTP status code from server, + 'reason': HTTP reason from the server, + 'body': HTTP body of the server's response} + """ + insert_uri = insert_uri or self.GetFeedUri() + return self.Post(new_contact, insert_uri, + auth_token=auth_token, **kwargs) + + CreateContact = create_contact + + def add_contact(self, new_contact, insert_uri=None, auth_token=None, + billing_information=None, birthday=None, calendar_link=None, **kwargs): + """Adds an new contact to Google Contacts. + + Args: + new_contact: atom.Entry or subclass A new contact which is to be added to + Google Contacts. + insert_uri: the URL to post new contacts to the feed + url_params: dict (optional) Additional URL parameters to be included + in the insertion request. + escape_params: boolean (optional) If true, the url_parameters will be + escaped before they are included in the request. + + Returns: + On successful insert, an entry containing the contact created + On failure, a RequestError is raised of the form: + {'status': HTTP status code from server, + 'reason': HTTP reason from the server, + 'body': HTTP body of the server's response} + """ + + contact = gdata.contacts.data.ContactEntry() + + if billing_information is not None: + if not isinstance(billing_information, gdata.contacts.data.BillingInformation): + billing_information = gdata.contacts.data.BillingInformation(text=billing_information) + + contact.billing_information = billing_information + + if birthday is not None: + if not isinstance(birthday, gdata.contacts.data.Birthday): + birthday = gdata.contacts.data.Birthday(when=birthday) + + contact.birthday = birthday + + if calendar_link is not None: + if type(calendar_link) is not ListType: + calendar_link = [calendar_link] + + for link in calendar_link: + if not isinstance(link, gdata.contacts.data.CalendarLink): + if type(link) is not DictionaryType: + raise TypeError, "calendar_link Requires dictionary not %s" % type(link) + + link = gdata.contacts.data.CalendarLink( + rel=link.get("rel", None), + label=link.get("label", None), + primary=link.get("primary", None), + href=link.get("href", None), + ) + + contact.calendar_link.append(link) + + insert_uri = insert_uri or self.GetFeedUri() + return self.Post(contact, insert_uri, + auth_token=auth_token, **kwargs) + + AddContact = add_contact + + def get_contacts(self, desired_class=gdata.contacts.data.ContactsFeed, + auth_token=None, **kwargs): + """Obtains a feed with the contacts belonging to the current user. + + Args: + auth_token: An object which sets the Authorization HTTP header in its + modify_request method. Recommended classes include + gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken + among others. Represents the current user. Defaults to None + and if None, this method will look for a value in the + auth_token member of SpreadsheetsClient. + desired_class: class descended from atom.core.XmlElement to which a + successful response should be converted. If there is no + converter function specified (desired_class=None) then the + desired_class will be used in calling the + atom.core.parse function. If neither + the desired_class nor the converter is specified, an + HTTP reponse object will be returned. Defaults to + gdata.spreadsheets.data.SpreadsheetsFeed. + """ + return self.get_feed(self.GetFeedUri(), auth_token=auth_token, + desired_class=desired_class, **kwargs) + + GetContacts = get_contacts + + def get_group(self, uri=None, desired_class=gdata.contacts.data.GroupEntry, + auth_token=None, **kwargs): + """ Get a single groups details + Args: + uri: the group uri or id + """ + return self.get(uri, desired_class=desired_class, auth_token=auth_token, **kwargs) + + GetGroup = get_group + + def get_groups(self, uri=None, desired_class=gdata.contacts.data.GroupsFeed, + auth_token=None, **kwargs): + uri = uri or self.GetFeedUri('groups') + return self.get_feed(uri, desired_class=desired_class, auth_token=auth_token, **kwargs) + + GetGroups = get_groups + + def create_group(self, new_group, insert_uri=None, url_params=None, + desired_class=None): + insert_uri = insert_uri or self.GetFeedUri('groups') + return self.Post(new_group, insert_uri, url_params=url_params, + desired_class=desired_class) + + CreateGroup = create_group + + def update_group(self, edit_uri, updated_group, url_params=None, + escape_params=True, desired_class=None): + return self.Put(updated_group, self._CleanUri(edit_uri), + url_params=url_params, + escape_params=escape_params, + desired_class=desired_class) + + UpdateGroup = update_group + + def delete_group(self, edit_uri, extra_headers=None, + url_params=None, escape_params=True): + return self.Delete(self._CleanUri(edit_uri), + url_params=url_params, escape_params=escape_params) + + DeleteGroup = delete_group + + def change_photo(self, media, contact_entry_or_url, content_type=None, + content_length=None): + """Change the photo for the contact by uploading a new photo. + + Performs a PUT against the photo edit URL to send the binary data for the + photo. + + Args: + media: filename, file-like-object, or a gdata.MediaSource object to send. + contact_entry_or_url: ContactEntry or str If it is a ContactEntry, this + method will search for an edit photo link URL and + perform a PUT to the URL. + content_type: str (optional) the mime type for the photo data. This is + necessary if media is a file or file name, but if media + is a MediaSource object then the media object can contain + the mime type. If media_type is set, it will override the + mime type in the media object. + content_length: int or str (optional) Specifying the content length is + only required if media is a file-like object. If media + is a filename, the length is determined using + os.path.getsize. If media is a MediaSource object, it is + assumed that it already contains the content length. + """ + if isinstance(contact_entry_or_url, gdata.contacts.data.ContactEntry): + url = contact_entry_or_url.GetPhotoEditLink().href + else: + url = contact_entry_or_url + if isinstance(media, gdata.MediaSource): + payload = media + # If the media object is a file-like object, then use it as the file + # handle in the in the MediaSource. + elif hasattr(media, 'read'): + payload = gdata.MediaSource(file_handle=media, + content_type=content_type, content_length=content_length) + # Assume that the media object is a file name. + else: + payload = gdata.MediaSource(content_type=content_type, + content_length=content_length, file_path=media) + return self.Put(payload, url) + + ChangePhoto = change_photo + + def get_photo(self, contact_entry_or_url): + """Retrives the binary data for the contact's profile photo as a string. + + Args: + contact_entry_or_url: a gdata.contacts.ContactEntry objecr or a string + containing the photo link's URL. If the contact entry does not + contain a photo link, the image will not be fetched and this method + will return None. + """ + # TODO: add the ability to write out the binary image data to a file, + # reading and writing a chunk at a time to avoid potentially using up + # large amounts of memory. + url = None + if isinstance(contact_entry_or_url, gdata.contacts.data.ContactEntry): + photo_link = contact_entry_or_url.GetPhotoLink() + if photo_link: + url = photo_link.href + else: + url = contact_entry_or_url + if url: + return self.Get(url, desired_class=str) + else: + return None + + GetPhoto = get_photo + + def delete_photo(self, contact_entry_or_url): + url = None + if isinstance(contact_entry_or_url, gdata.contacts.data.ContactEntry): + url = contact_entry_or_url.GetPhotoEditLink().href + else: + url = contact_entry_or_url + if url: + self.Delete(url) + + DeletePhoto = delete_photo + + def get_profiles_feed(self, uri=None): + """Retrieves a feed containing all domain's profiles. + + Args: + uri: string (optional) the URL to retrieve the profiles feed, + for example /m8/feeds/profiles/default/full + + Returns: + On success, a ProfilesFeed containing the profiles. + On failure, raises a RequestError. + """ + + uri = uri or self.GetFeedUri('profiles') + return self.Get(uri, + desired_class=gdata.contacts.data.ProfilesFeedFromString) + + GetProfilesFeed = get_profiles_feed + + def get_profile(self, uri): + """Retrieves a domain's profile for the user. + + Args: + uri: string the URL to retrieve the profiles feed, + for example /m8/feeds/profiles/default/full/username + + Returns: + On success, a ProfileEntry containing the profile for the user. + On failure, raises a RequestError + """ + return self.Get(uri, + desired_class=gdata.contacts.data.ProfileEntryFromString) + + GetProfile = get_profile + + def update_profile(self, edit_uri, updated_profile, auth_token=None, **kwargs): + """Updates an existing profile. + + Args: + edit_uri: string The edit link URI for the element being updated + updated_profile: string atom.Entry or subclass containing + the Atom Entry which will replace the profile which is + stored at the edit_url. + url_params: dict (optional) Additional URL parameters to be included + in the update request. + escape_params: boolean (optional) If true, the url_params will be + escaped before they are included in the request. + + Returns: + On successful update, a httplib.HTTPResponse containing the server's + response to the PUT request. + On failure, raises a RequestError. + """ + return self.Put(updated_profile, self._CleanUri(edit_uri), + desired_class=gdata.contacts.data.ProfileEntryFromString) + + UpdateProfile = update_profile + + def execute_batch(self, batch_feed, url, desired_class=None): + """Sends a batch request feed to the server. + + Args: + batch_feed: gdata.contacts.ContactFeed A feed containing batch + request entries. Each entry contains the operation to be performed + on the data contained in the entry. For example an entry with an + operation type of insert will be used as if the individual entry + had been inserted. + url: str The batch URL to which these operations should be applied. + converter: Function (optional) The function used to convert the server's + response to an object. + + Returns: + The results of the batch request's execution on the server. If the + default converter is used, this is stored in a ContactsFeed. + """ + return self.Post(batch_feed, url, desired_class=desired_class) + + ExecuteBatch = execute_batch + + def execute_batch_profiles(self, batch_feed, url, + desired_class=gdata.contacts.data.ProfilesFeedFromString): + """Sends a batch request feed to the server. + + Args: + batch_feed: gdata.profiles.ProfilesFeed A feed containing batch + request entries. Each entry contains the operation to be performed + on the data contained in the entry. For example an entry with an + operation type of insert will be used as if the individual entry + had been inserted. + url: string The batch URL to which these operations should be applied. + converter: Function (optional) The function used to convert the server's + response to an object. The default value is + gdata.profiles.ProfilesFeedFromString. + + Returns: + The results of the batch request's execution on the server. If the + default converter is used, this is stored in a ProfilesFeed. + """ + return self.Post(batch_feed, url, desired_class=desired_class) + + ExecuteBatchProfiles = execute_batch_profiles + + +class ContactsQuery(gdata.client.Query): + """ + Create a custom Contacts Query + + Full specs can be found at: U{Contacts query parameters reference + } + """ + + def __init__(self, feed=None, group=None, orderby=None, showdeleted=None, + sortorder=None, requirealldeleted=None, **kwargs): + """ + @param max_results: The maximum number of entries to return. If you want + to receive all of the contacts, rather than only the default maximum, you + can specify a very large number for max-results. + @param start-index: The 1-based index of the first result to be retrieved. + @param updated-min: The lower bound on entry update dates. + @param group: Constrains the results to only the contacts belonging to the + group specified. Value of this parameter specifies group ID + @param orderby: Sorting criterion. The only supported value is + lastmodified. + @param showdeleted: Include deleted contacts in the returned contacts feed + @pram sortorder: Sorting order direction. Can be either ascending or + descending. + @param requirealldeleted: Only relevant if showdeleted and updated-min + are also provided. It dictates the behavior of the server in case it + detects that placeholders of some entries deleted since the point in + time specified as updated-min may have been lost. + """ + gdata.client.Query.__init__(self, **kwargs) + self.group = group + self.orderby = orderby + self.sortorder = sortorder + self.showdeleted = showdeleted + + def modify_request(self, http_request): + if self.group: + gdata.client._add_query_param('group', self.group, http_request) + if self.orderby: + gdata.client._add_query_param('orderby', self.orderby, http_request) + if self.sortorder: + gdata.client._add_query_param('sortorder', self.sortorder, http_request) + if self.showdeleted: + gdata.client._add_query_param('showdeleted', self.showdeleted, http_request) + gdata.client.Query.modify_request(self, http_request) + + ModifyRequest = modify_request + + +class ProfilesQuery(gdata.client.Query): + def __init__(self, feed=None): + self.feed = feed or 'http://www.google.com/m8/feeds/profiles/default/full' + + + def _CleanUri(self, uri): + """Sanitizes a feed URI. + + Args: + uri: The URI to sanitize, can be relative or absolute. + + Returns: + The given URI without its http://server prefix, if any. + Keeps the leading slash of the URI. + """ + url_prefix = 'http://%s' % self.server + if uri.startswith(url_prefix): + uri = uri[len(url_prefix):] + return uri diff -Nru python-gdata-1.2.4/src/gdata/contacts/data.py python-gdata-2.0.8/src/gdata/contacts/data.py --- python-gdata-1.2.4/src/gdata/contacts/data.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/contacts/data.py 2009-12-17 19:20:33.000000000 +0000 @@ -0,0 +1,474 @@ +#!/usr/bin/env python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Data model classes for parsing and generating XML for the Contacts API.""" + + +__author__ = 'vinces1979@gmail.com (Vince Spicer)' + + +import atom.core +import gdata +import gdata.data + + +PHOTO_LINK_REL = 'http://schemas.google.com/contacts/2008/rel#photo' +PHOTO_EDIT_LINK_REL = 'http://schemas.google.com/contacts/2008/rel#edit-photo' + +EXTERNAL_ID_ORGANIZATION = 'organization' + +RELATION_MANAGER = 'manager' + +CONTACTS_NAMESPACE = 'http://schemas.google.com/contact/2008' +CONTACTS_TEMPLATE = '{%s}%%s' % CONTACTS_NAMESPACE + + +class BillingInformation(atom.core.XmlElement): + """ + gContact:billingInformation + Specifies billing information of the entity represented by the contact. The element cannot be repeated. + """ + + _qname = CONTACTS_TEMPLATE % 'billingInformation' + + +class Birthday(atom.core.XmlElement): + """ + Stores birthday date of the person represented by the contact. The element cannot be repeated. + """ + + _qname = CONTACTS_TEMPLATE % 'birthday' + when = 'when' + + +class CalendarLink(atom.core.XmlElement): + """ + Storage for URL of the contact's calendar. The element can be repeated. + """ + + _qname = CONTACTS_TEMPLATE % 'calendarLink' + rel = 'rel' + label = 'label' + primary = 'primary' + href = 'href' + + +class DirectoryServer(atom.core.XmlElement): + """ + A directory server associated with this contact. + May not be repeated. + """ + + _qname = CONTACTS_TEMPLATE % 'directoryServer' + + +class Event(atom.core.XmlElement): + """ + These elements describe events associated with a contact. + They may be repeated + """ + + _qname = CONTACTS_TEMPLATE % 'event' + label = 'label' + rel = 'rel' + when = gdata.data.When + + +class ExternalId(atom.core.XmlElement): + """ + Describes an ID of the contact in an external system of some kind. + This element may be repeated. + """ + + _qname = CONTACTS_TEMPLATE % 'externalId' + + +def ExternalIdFromString(xml_string): + return atom.core.parse(ExternalId, xml_string) + + +class Gender(atom.core.XmlElement): + """ + Specifies the gender of the person represented by the contact. + The element cannot be repeated. + """ + + _qname = CONTACTS_TEMPLATE % 'directoryServer' + value = 'value' + + +class Hobby(atom.core.XmlElement): + """ + Describes an ID of the contact in an external system of some kind. + This element may be repeated. + """ + + _qname = CONTACTS_TEMPLATE % 'hobby' + + +class Initials(atom.core.XmlElement): + """ Specifies the initials of the person represented by the contact. The + element cannot be repeated. """ + + _qname = CONTACTS_TEMPLATE % 'initials' + + +class Jot(atom.core.XmlElement): + """ + Storage for arbitrary pieces of information about the contact. Each jot + has a type specified by the rel attribute and a text value. + The element can be repeated. + """ + + _qname = CONTACTS_TEMPLATE % 'jot' + rel = 'rel' + + +class Language(atom.core.XmlElement): + """ + Specifies the preferred languages of the contact. + The element can be repeated. + + The language must be specified using one of two mutually exclusive methods: + using the freeform @label attribute, or using the @code attribute, whose value + must conform to the IETF BCP 47 specification. + """ + + _qname = CONTACTS_TEMPLATE % 'language' + code = 'code' + label = 'label' + + +class MaidenName(atom.core.XmlElement): + """ + Specifies maiden name of the person represented by the contact. + The element cannot be repeated. + """ + + _qname = CONTACTS_TEMPLATE % 'maidenName' + + +class Mileage(atom.core.XmlElement): + """ + Specifies the mileage for the entity represented by the contact. + Can be used for example to document distance needed for reimbursement + purposes. The value is not interpreted. The element cannot be repeated. + """ + + _qname = CONTACTS_TEMPLATE % 'mileage' + + +class NickName(atom.core.XmlElement): + """ + Specifies the nickname of the person represented by the contact. + The element cannot be repeated. + """ + + _qname = CONTACTS_TEMPLATE % 'nickname' + + +class Occupation(atom.core.XmlElement): + """ + Specifies the occupation/profession of the person specified by the contact. + The element cannot be repeated. + """ + + _qname = CONTACTS_TEMPLATE % 'occupation' + + +class Priority(atom.core.XmlElement): + """ + Classifies importance of the contact into 3 categories: + * Low + * Normal + * High + + The priority element cannot be repeated. + """ + + _qname = CONTACTS_TEMPLATE % 'priority' + + +class Relation(atom.core.XmlElement): + """ + This element describe another entity (usually a person) that is in a + relation of some kind with the contact. + """ + + _qname = CONTACTS_TEMPLATE % 'relation' + rel = 'rel' + label = 'label' + + +class Sensitivity(atom.core.XmlElement): + """ + Classifies sensitivity of the contact into the following categories: + * Confidential + * Normal + * Personal + * Private + + The sensitivity element cannot be repeated. + """ + + _qname = CONTACTS_TEMPLATE % 'sensitivity' + rel = 'rel' + + +class UserDefinedField(atom.core.XmlElement): + """ + Represents an arbitrary key-value pair attached to the contact. + """ + + _qname = CONTACTS_TEMPLATE % 'userDefinedField' + key = 'key' + value = 'value' + + +def UserDefinedFieldFromString(xml_string): + return atom.core.parse(UserDefinedField, xml_string) + + +class Website(atom.core.XmlElement): + """ + Describes websites associated with the contact, including links. + May be repeated. + """ + + _qname = CONTACTS_TEMPLATE % 'website' + + href = 'href' + label = 'label' + primary = 'primary' + rel = 'rel' + + +def WebsiteFromString(xml_string): + return atom.core.parse(Website, xml_string) + + +class HouseName(atom.core.XmlElement): + """ + Used in places where houses or buildings have names (and + not necessarily numbers), eg. "The Pillars". + """ + + _qname = CONTACTS_TEMPLATE % 'housename' + + +class Street(atom.core.XmlElement): + """ + Can be street, avenue, road, etc. This element also includes the house + number and room/apartment/flat/floor number. + """ + + _qname = CONTACTS_TEMPLATE % 'street' + + +class POBox(atom.core.XmlElement): + """ + Covers actual P.O. boxes, drawers, locked bags, etc. This is usually but not + always mutually exclusive with street + """ + + _qname = CONTACTS_TEMPLATE % 'pobox' + + +class Neighborhood(atom.core.XmlElement): + """ + This is used to disambiguate a street address when a city contains more than + one street with the same name, or to specify a small place whose mail is + routed through a larger postal town. In China it could be a county or a + minor city. + """ + + _qname = CONTACTS_TEMPLATE % 'neighborhood' + + +class City(atom.core.XmlElement): + """ + Can be city, village, town, borough, etc. This is the postal town and not + necessarily the place of residence or place of business. + """ + + _qname = CONTACTS_TEMPLATE % 'city' + + +class SubRegion(atom.core.XmlElement): + """ + Handles administrative districts such as U.S. or U.K. counties that are not + used for mail addressing purposes. Subregion is not intended for + delivery addresses. + """ + + _qname = CONTACTS_TEMPLATE % 'subregion' + + +class Region(atom.core.XmlElement): + """ + A state, province, county (in Ireland), Land (in Germany), + departement (in France), etc. + """ + + _qname = CONTACTS_TEMPLATE % 'region' + + +class PostalCode(atom.core.XmlElement): + """ + Postal code. Usually country-wide, but sometimes specific to the + city (e.g. "2" in "Dublin 2, Ireland" addresses). + """ + + _qname = CONTACTS_TEMPLATE % 'postcode' + + +class Country(atom.core.XmlElement): + """ The name or code of the country. """ + + _qname = CONTACTS_TEMPLATE % 'country' + + +class PersonEntry(gdata.data.BatchEntry): + """Represents a google contact""" + + billing_information = BillingInformation + birthday = Birthday + calendar_link = [CalendarLink] + directory_server = DirectoryServer + event = [Event] + external_id = [ExternalId] + gender = Gender + hobby = [Hobby] + initals = Initials + jot = [Jot] + language= [Language] + maiden_name = MaidenName + mileage = Mileage + nickname = NickName + occupation = Occupation + priority = Priority + relation = [Relation] + sensitivity = Sensitivity + user_defined_field = [UserDefinedField] + website = [Website] + + name = gdata.data.Name + phone_number = [gdata.data.PhoneNumber] + organization = gdata.data.Organization + postal_address = [gdata.data.PostalAddress] + email = [gdata.data.Email] + im = [gdata.data.Im] + structured_postal_address = [gdata.data.StructuredPostalAddress] + extended_property = [gdata.data.ExtendedProperty] + + +class Deleted(atom.core.XmlElement): + """If present, indicates that this contact has been deleted.""" + _qname = gdata.GDATA_TEMPLATE % 'deleted' + + +class GroupMembershipInfo(atom.core.XmlElement): + """ + Identifies the group to which the contact belongs or belonged. + The group is referenced by its id. + """ + + _qname = CONTACTS_TEMPLATE % 'groupMembershipInfo' + + href = 'href' + deleted = 'deleted' + + +class ContactEntry(PersonEntry): + """A Google Contacts flavor of an Atom Entry.""" + + deleted = Deleted + group_membership_info = [GroupMembershipInfo] + organization = gdata.data.Organization + + def GetPhotoLink(self): + for a_link in self.link: + if a_link.rel == PHOTO_LINK_REL: + return a_link + return None + + def GetPhotoEditLink(self): + for a_link in self.link: + if a_link.rel == PHOTO_EDIT_LINK_REL: + return a_link + return None + + +class ContactsFeed(gdata.data.BatchFeed): + """A collection of Contacts.""" + entry = [ContactEntry] + + +class SystemGroup(atom.core.XmlElement): + """The contacts systemGroup element. + + When used within a contact group entry, indicates that the group in + question is one of the predefined system groups.""" + + _qname = CONTACTS_TEMPLATE % 'systemGroup' + id = 'id' + + +class GroupEntry(gdata.data.BatchEntry): + """Represents a contact group.""" + extended_property = [gdata.data.ExtendedProperty] + system_group = SystemGroup + + +class GroupsFeed(gdata.data.BatchFeed): + """A Google contact groups feed flavor of an Atom Feed.""" + entry = [GroupEntry] + + +class ProfileEntry(PersonEntry): + """A Google Profiles flavor of an Atom Entry.""" + + +def ProfileEntryFromString(xml_string): + """Converts an XML string into a ProfileEntry object. + + Args: + xml_string: string The XML describing a Profile entry. + + Returns: + A ProfileEntry object corresponding to the given XML. + """ + return atom.core.parse(ProfileEntry, xml_string) + + +class ProfilesFeed(gdata.data.BatchFeed): + """A Google Profiles feed flavor of an Atom Feed.""" + _qname = atom.data.ATOM_TEMPLATE % 'feed' + entry = [ProfileEntry] + + +def ProfilesFeedFromString(xml_string): + """Converts an XML string into a ProfilesFeed object. + + Args: + xml_string: string The XML describing a Profiles feed. + + Returns: + A ProfilesFeed object corresponding to the given XML. + """ + return atom.core.parse(ProfilesFeed, xml_string) + + diff -Nru python-gdata-1.2.4/src/gdata/contacts/__init__.py python-gdata-2.0.8/src/gdata/contacts/__init__.py --- python-gdata-1.2.4/src/gdata/contacts/__init__.py 2008-12-03 17:52:39.000000000 +0000 +++ python-gdata-2.0.8/src/gdata/contacts/__init__.py 2009-10-09 23:32:15.000000000 +0100 @@ -1,6 +1,6 @@ -#!/usr/bin/python +#!/usr/bin/python2.4 # -# Copyright (C) 2008 Google Inc. +# Copyright 2009 Google Inc. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -28,250 +28,581 @@ REL_WORK = 'http://schemas.google.com/g/2005#work' REL_OTHER = 'http://schemas.google.com/g/2005#other' - -IM_AIM = 'http://schemas.google.com/g/2005#AIM' # AOL Instant Messenger protocol -IM_MSN = 'http://schemas.google.com/g/2005#MSN' # MSN Messenger protocol -IM_YAHOO = 'http://schemas.google.com/g/2005#YAHOO' # Yahoo Messenger protocol -IM_SKYPE = 'http://schemas.google.com/g/2005#SKYPE' # Skype protocol -IM_QQ = 'http://schemas.google.com/g/2005#QQ' # QQ protocol +# AOL Instant Messenger protocol +IM_AIM = 'http://schemas.google.com/g/2005#AIM' +IM_MSN = 'http://schemas.google.com/g/2005#MSN' # MSN Messenger protocol +IM_YAHOO = 'http://schemas.google.com/g/2005#YAHOO' # Yahoo Messenger protocol +IM_SKYPE = 'http://schemas.google.com/g/2005#SKYPE' # Skype protocol +IM_QQ = 'http://schemas.google.com/g/2005#QQ' # QQ protocol # Google Talk protocol IM_GOOGLE_TALK = 'http://schemas.google.com/g/2005#GOOGLE_TALK' -IM_ICQ = 'http://schemas.google.com/g/2005#ICQ' # ICQ protocol -IM_JABBER = 'http://schemas.google.com/g/2005#JABBER' # Jabber protocol - +IM_ICQ = 'http://schemas.google.com/g/2005#ICQ' # ICQ protocol +IM_JABBER = 'http://schemas.google.com/g/2005#JABBER' # Jabber protocol +IM_NETMEETING = 'http://schemas.google.com/g/2005#netmeeting' # NetMeeting PHOTO_LINK_REL = 'http://schemas.google.com/contacts/2008/rel#photo' PHOTO_EDIT_LINK_REL = 'http://schemas.google.com/contacts/2008/rel#edit-photo' - -PHONE_CAR = 'http://schemas.google.com/g/2005#car' # Number of a car phone. +# Different phone types, for moro info see: +# http://code.google.com/apis/gdata/docs/2.0/elements.html#gdPhoneNumber +PHONE_CAR = 'http://schemas.google.com/g/2005#car' PHONE_FAX = 'http://schemas.google.com/g/2005#fax' -# Unknown or unspecified type, such as a business phone number that doesn't -# belong to a particular person. PHONE_GENERAL = 'http://schemas.google.com/g/2005#general' PHONE_HOME = REL_HOME -PHONE_HOME_FAX = 'http://schemas.google.com/g/2005#home_fax' -# Phone number that makes sense only in a context known to the user (such as -# an enterprise PBX). +PHONE_HOME_FAX = 'http://schemas.google.com/g/2005#home_fax' PHONE_INTERNAL = 'http://schemas.google.com/g/2005#internal-extension' -PHONE_MOBILE = 'http://schemas.google.com/g/2005#mobile' -# A special type of number for which no other rel value makes sense. -# For example, a TTY device. label can be used to indicate the actual type. +PHONE_MOBILE = 'http://schemas.google.com/g/2005#mobile' PHONE_OTHER = REL_OTHER PHONE_PAGER = 'http://schemas.google.com/g/2005#pager' PHONE_SATELLITE = 'http://schemas.google.com/g/2005#satellite' PHONE_VOIP = 'http://schemas.google.com/g/2005#voip' PHONE_WORK = REL_WORK PHONE_WORK_FAX = 'http://schemas.google.com/g/2005#work_fax' +PHONE_WORK_MOBILE = 'http://schemas.google.com/g/2005#work_mobile' +PHONE_WORK_PAGER = 'http://schemas.google.com/g/2005#work_pager' +PHONE_MAIN = 'http://schemas.google.com/g/2005#main' +PHONE_ASSISTANT = 'http://schemas.google.com/g/2005#assistant' +PHONE_CALLBACK = 'http://schemas.google.com/g/2005#callback' +PHONE_COMPANY_MAIN = 'http://schemas.google.com/g/2005#company_main' +PHONE_ISDN = 'http://schemas.google.com/g/2005#isdn' +PHONE_OTHER_FAX = 'http://schemas.google.com/g/2005#other_fax' +PHONE_RADIO = 'http://schemas.google.com/g/2005#radio' +PHONE_TELEX = 'http://schemas.google.com/g/2005#telex' +PHONE_TTY_TDD = 'http://schemas.google.com/g/2005#tty_tdd' + +EXTERNAL_ID_ORGANIZATION = 'organization' +RELATION_MANAGER = 'manager' CONTACTS_NAMESPACE = 'http://schemas.google.com/contact/2008' -class OrgName(atom.AtomBase): - _tag = 'orgName' +class GDataBase(atom.AtomBase): + """The Google Contacts intermediate class from atom.AtomBase.""" + _namespace = gdata.GDATA_NAMESPACE _children = atom.AtomBase._children.copy() _attributes = atom.AtomBase._attributes.copy() - def __init__(self, text=None, - extension_elements=None, extension_attributes=None): + def __init__(self, text=None, + extension_elements=None, extension_attributes=None): self.text = text self.extension_elements = extension_elements or [] self.extension_attributes = extension_attributes or {} -class OrgTitle(atom.AtomBase): +class ContactsBase(GDataBase): + """The Google Contacts intermediate class for Contacts namespace.""" + + _namespace = CONTACTS_NAMESPACE + + +class OrgName(GDataBase): + """The Google Contacts OrgName element.""" + + _tag = 'orgName' + + +class OrgTitle(GDataBase): + """The Google Contacts OrgTitle element.""" + _tag = 'orgTitle' - _namespace = gdata.GDATA_NAMESPACE - _children = atom.AtomBase._children.copy() - _attributes = atom.AtomBase._attributes.copy() - def __init__(self, text=None, - extension_elements=None, extension_attributes=None): - self.text = text - self.extension_elements = extension_elements or [] - self.extension_attributes = extension_attributes or {} +class OrgDepartment(GDataBase): + """The Google Contacts OrgDepartment element.""" -class Organization(atom.AtomBase): - _tag = 'organization' - _namespace = gdata.GDATA_NAMESPACE - _children = atom.AtomBase._children.copy() - _attributes = atom.AtomBase._attributes.copy() + _tag = 'orgDepartment' + + +class OrgJobDescription(GDataBase): + """The Google Contacts OrgJobDescription element.""" + + _tag = 'orgJobDescription' + +class Where(GDataBase): + """The Google Contacts Where element.""" + + _tag = 'where' + _children = GDataBase._children.copy() + _attributes = GDataBase._attributes.copy() _attributes['rel'] = 'rel' _attributes['label'] = 'label' + _attributes['valueString'] = 'value_string' + + def __init__(self, value_string=None, rel=None, label=None, + text=None, extension_elements=None, extension_attributes=None): + GDataBase.__init__(self, text=text, extension_elements=extension_elements, + extension_attributes=extension_attributes) + self.rel = rel + self.label = label + self.value_string = value_string + + +class When(GDataBase): + """The Google Contacts When element.""" + + _tag = 'when' + _children = GDataBase._children.copy() + _attributes = GDataBase._attributes.copy() + _attributes['startTime'] = 'start_time' + _attributes['endTime'] = 'end_time' + _attributes['label'] = 'label' + + def __init__(self, start_time=None, end_time=None, label=None, + text=None, extension_elements=None, extension_attributes=None): + GDataBase.__init__(self, text=text, extension_elements=extension_elements, + extension_attributes=extension_attributes) + self.start_time = start_time + self.end_time = end_time + self.label = label + + +class Organization(GDataBase): + """The Google Contacts Organization element.""" + + _tag = 'organization' + _children = GDataBase._children.copy() + _attributes = GDataBase._attributes.copy() + _attributes['label'] = 'label' + _attributes['rel'] = 'rel' _attributes['primary'] = 'primary' - - _children['{%s}orgName' % gdata.GDATA_NAMESPACE] = ('org_name', OrgName) - _children['{%s}orgTitle' % gdata.GDATA_NAMESPACE] = ('org_title', OrgTitle) - - def __init__(self, rel=None, primary='false', org_name=None, org_title=None, - label=None, text=None, extension_elements=None, - extension_attributes=None): + _children['{%s}orgName' % GDataBase._namespace] = ( + 'org_name', OrgName) + _children['{%s}orgTitle' % GDataBase._namespace] = ( + 'org_title', OrgTitle) + _children['{%s}orgDepartment' % GDataBase._namespace] = ( + 'org_department', OrgDepartment) + _children['{%s}orgJobDescription' % GDataBase._namespace] = ( + 'org_job_description', OrgJobDescription) + #_children['{%s}where' % GDataBase._namespace] = ('where', Where) + + def __init__(self, label=None, rel=None, primary='false', org_name=None, + org_title=None, org_department=None, org_job_description=None, + where=None, text=None, + extension_elements=None, extension_attributes=None): + GDataBase.__init__(self, text=text, extension_elements=extension_elements, + extension_attributes=extension_attributes) + self.label = label self.rel = rel or REL_OTHER self.primary = primary self.org_name = org_name self.org_title = org_title - self.label = label - self.text = text - self.extension_elements = extension_elements or [] - self.extension_attributes = extension_attributes or {} + self.org_department = org_department + self.org_job_description = org_job_description + self.where = where -class PostalAddress(atom.AtomBase): - _tag = 'postalAddress' - _namespace = gdata.GDATA_NAMESPACE - _children = atom.AtomBase._children.copy() - _attributes = atom.AtomBase._attributes.copy() +class PostalAddress(GDataBase): + """The Google Contacts PostalAddress element.""" - _attributes['primary'] = 'primary' + _tag = 'postalAddress' + _children = GDataBase._children.copy() + _attributes = GDataBase._attributes.copy() _attributes['rel'] = 'rel' + _attributes['primary'] = 'primary' - def __init__(self, primary=None, rel=None, text=None, - extension_elements=None, extension_attributes=None): + def __init__(self, primary=None, rel=None, text=None, + extension_elements=None, extension_attributes=None): + GDataBase.__init__(self, text=text, extension_elements=extension_elements, + extension_attributes=extension_attributes) + self.rel = rel or REL_OTHER self.primary = primary + + +class FormattedAddress(GDataBase): + """The Google Contacts FormattedAddress element.""" + + _tag = 'formattedAddress' + + +class StructuredPostalAddress(GDataBase): + """The Google Contacts StructuredPostalAddress element.""" + + _tag = 'structuredPostalAddress' + _children = GDataBase._children.copy() + _attributes = GDataBase._attributes.copy() + _attributes['rel'] = 'rel' + _attributes['primary'] = 'primary' + _children['{%s}formattedAddress' % GDataBase._namespace] = ( + 'formatted_address', FormattedAddress) + + def __init__(self, rel=None, primary=None, + formatted_address=None, text=None, + extension_elements=None, extension_attributes=None): + GDataBase.__init__(self, text=text, extension_elements=extension_elements, + extension_attributes=extension_attributes) self.rel = rel or REL_OTHER - self.text = text - self.extension_elements = extension_elements or [] - self.extension_attributes = extension_attributes or {} + self.primary = primary + self.formatted_address = formatted_address -class IM(atom.AtomBase): - _tag = 'im' - _namespace = gdata.GDATA_NAMESPACE - _children = atom.AtomBase._children.copy() - _attributes = atom.AtomBase._attributes.copy() +class IM(GDataBase): + """The Google Contacts IM element.""" + _tag = 'im' + _children = GDataBase._children.copy() + _attributes = GDataBase._attributes.copy() _attributes['address'] = 'address' _attributes['primary'] = 'primary' _attributes['protocol'] = 'protocol' _attributes['label'] = 'label' _attributes['rel'] = 'rel' - def __init__(self, primary=None, rel=None, address=None, protocol=None, - label=None, text=None, extension_elements=None, - extension_attributes=None): + def __init__(self, primary='false', rel=None, address=None, protocol=None, + label=None, text=None, + extension_elements=None, extension_attributes=None): + GDataBase.__init__(self, text=text, extension_elements=extension_elements, + extension_attributes=extension_attributes) self.protocol = protocol self.address = address self.primary = primary self.rel = rel or REL_OTHER self.label = label - self.text = text - self.extension_elements = extension_elements or [] - self.extension_attributes = extension_attributes or {} -class Email(atom.AtomBase): - _tag = 'email' - _namespace = gdata.GDATA_NAMESPACE - _children = atom.AtomBase._children.copy() - _attributes = atom.AtomBase._attributes.copy() +class Email(GDataBase): + """The Google Contacts Email element.""" + _tag = 'email' + _children = GDataBase._children.copy() + _attributes = GDataBase._attributes.copy() _attributes['address'] = 'address' _attributes['primary'] = 'primary' _attributes['rel'] = 'rel' _attributes['label'] = 'label' - def __init__(self, primary=None, rel=None, address=None, text=None, - label=None, extension_elements=None, extension_attributes=None): + def __init__(self, label=None, rel=None, address=None, primary='false', + text=None, extension_elements=None, extension_attributes=None): + GDataBase.__init__(self, text=text, extension_elements=extension_elements, + extension_attributes=extension_attributes) + self.label = label + self.rel = rel or REL_OTHER self.address = address self.primary = primary + + +class PhoneNumber(GDataBase): + """The Google Contacts PhoneNumber element.""" + + _tag = 'phoneNumber' + _children = GDataBase._children.copy() + _attributes = GDataBase._attributes.copy() + _attributes['label'] = 'label' + _attributes['rel'] = 'rel' + _attributes['uri'] = 'uri' + _attributes['primary'] = 'primary' + + def __init__(self, label=None, rel=None, uri=None, primary='false', + text=None, extension_elements=None, extension_attributes=None): + GDataBase.__init__(self, text=text, extension_elements=extension_elements, + extension_attributes=extension_attributes) + self.label = label self.rel = rel or REL_OTHER + self.uri = uri + self.primary = primary + + +class Nickname(ContactsBase): + """The Google Contacts Nickname element.""" + + _tag = 'nickname' + + +class Occupation(ContactsBase): + """The Google Contacts Occupation element.""" + + _tag = 'occupation' + + +class Gender(ContactsBase): + """The Google Contacts Gender element.""" + + _tag = 'gender' + _children = ContactsBase._children.copy() + _attributes = ContactsBase._attributes.copy() + _attributes['value'] = 'value' + + def __init__(self, value=None, + text=None, extension_elements=None, extension_attributes=None): + ContactsBase.__init__(self, text=text, + extension_elements=extension_elements, + extension_attributes=extension_attributes) + self.value = value + + +class Birthday(ContactsBase): + """The Google Contacts Birthday element.""" + + _tag = 'birthday' + _children = ContactsBase._children.copy() + _attributes = ContactsBase._attributes.copy() + _attributes['when'] = 'when' + + def __init__(self, when=None, + text=None, extension_elements=None, extension_attributes=None): + ContactsBase.__init__(self, text=text, + extension_elements=extension_elements, + extension_attributes=extension_attributes) + self.when = when + + +class Relation(ContactsBase): + """The Google Contacts Relation element.""" + + _tag = 'relation' + _children = ContactsBase._children.copy() + _attributes = ContactsBase._attributes.copy() + _attributes['label'] = 'label' + _attributes['rel'] = 'rel' + + def __init__(self, label=None, rel=None, + text=None, extension_elements=None, extension_attributes=None): + ContactsBase.__init__(self, text=text, + extension_elements=extension_elements, + extension_attributes=extension_attributes) self.label = label - self.text = text - self.extension_elements = extension_elements or [] - self.extension_attributes = extension_attributes or {} + self.rel = rel -class PhoneNumber(atom.AtomBase): - _tag = 'phoneNumber' - _namespace = gdata.GDATA_NAMESPACE - _children = atom.AtomBase._children.copy() - _attributes = atom.AtomBase._attributes.copy() +def RelationFromString(xml_string): + return atom.CreateClassFromXMLString(Relation, xml_string) + + +class UserDefinedField(ContactsBase): + """The Google Contacts UserDefinedField element.""" + _tag = 'userDefinedField' + _children = ContactsBase._children.copy() + _attributes = ContactsBase._attributes.copy() + _attributes['key'] = 'key' + _attributes['value'] = 'value' + + def __init__(self, key=None, value=None, + text=None, extension_elements=None, extension_attributes=None): + ContactsBase.__init__(self, text=text, + extension_elements=extension_elements, + extension_attributes=extension_attributes) + self.key = key + self.value = value + + +def UserDefinedFieldFromString(xml_string): + return atom.CreateClassFromXMLString(UserDefinedField, xml_string) + + +class Website(ContactsBase): + """The Google Contacts Website element.""" + + _tag = 'website' + _children = ContactsBase._children.copy() + _attributes = ContactsBase._attributes.copy() + _attributes['href'] = 'href' + _attributes['label'] = 'label' _attributes['primary'] = 'primary' _attributes['rel'] = 'rel' - def __init__(self, primary=None, rel=None, text=None, - extension_elements=None, extension_attributes=None): + def __init__(self, href=None, label=None, primary='false', rel=None, + text=None, extension_elements=None, extension_attributes=None): + ContactsBase.__init__(self, text=text, + extension_elements=extension_elements, + extension_attributes=extension_attributes) + self.href = href + self.label = label self.primary = primary - self.rel = rel or REL_OTHER - self.text = text - self.extension_elements = extension_elements or [] - self.extension_attributes = extension_attributes or {} + self.rel = rel -class Deleted(atom.AtomBase): +def WebsiteFromString(xml_string): + return atom.CreateClassFromXMLString(Website, xml_string) + + +class ExternalId(ContactsBase): + """The Google Contacts ExternalId element.""" + + _tag = 'externalId' + _children = ContactsBase._children.copy() + _attributes = ContactsBase._attributes.copy() + _attributes['label'] = 'label' + _attributes['rel'] = 'rel' + _attributes['value'] = 'value' + + def __init__(self, label=None, rel=None, value=None, + text=None, extension_elements=None, extension_attributes=None): + ContactsBase.__init__(self, text=text, + extension_elements=extension_elements, + extension_attributes=extension_attributes) + self.label = label + self.rel = rel + self.value = value + + +def ExternalIdFromString(xml_string): + return atom.CreateClassFromXMLString(ExternalId, xml_string) + + +class Event(ContactsBase): + """The Google Contacts Event element.""" + + _tag = 'event' + _children = ContactsBase._children.copy() + _attributes = ContactsBase._attributes.copy() + _attributes['label'] = 'label' + _attributes['rel'] = 'rel' + _children['{%s}when' % ContactsBase._namespace] = ('when', When) + + def __init__(self, label=None, rel=None, when=None, + text=None, extension_elements=None, extension_attributes=None): + ContactsBase.__init__(self, text=text, + extension_elements=extension_elements, + extension_attributes=extension_attributes) + self.label = label + self.rel = rel + self.when = when + + +def EventFromString(xml_string): + return atom.CreateClassFromXMLString(Event, xml_string) + + +class Deleted(GDataBase): + """The Google Contacts Deleted element.""" + _tag = 'deleted' - _namespace = gdata.GDATA_NAMESPACE - def __init__(self, text=None, - extension_elements=None, extension_attributes=None): - self.text = text - self.extension_elements = extension_elements or [] - self.extension_attributes = extension_attributes or {} +class GroupMembershipInfo(ContactsBase): + """The Google Contacts GroupMembershipInfo element.""" -class GroupMembershipInfo(atom.AtomBase): _tag = 'groupMembershipInfo' - _namespace = CONTACTS_NAMESPACE - _attributes = atom.AtomBase._attributes.copy() + _children = ContactsBase._children.copy() + _attributes = ContactsBase._attributes.copy() _attributes['deleted'] = 'deleted' _attributes['href'] = 'href' def __init__(self, deleted=None, href=None, text=None, - extension_elements=None, extension_attributes=None): + extension_elements=None, extension_attributes=None): + ContactsBase.__init__(self, text=text, + extension_elements=extension_elements, + extension_attributes=extension_attributes) self.deleted = deleted self.href = href - self.text = text - self.extension_elements = extension_elements or [] - self.extension_attributes = extension_attributes or {} -class ContactEntry(gdata.BatchEntry): - """A Google Contact flavor of an Atom Entry """ +class PersonEntry(gdata.BatchEntry): + """Base class for ContactEntry and ProfileEntry.""" _children = gdata.BatchEntry._children.copy() - + _children['{%s}organization' % gdata.GDATA_NAMESPACE] = ( + 'organization', [Organization]) + _children['{%s}phoneNumber' % gdata.GDATA_NAMESPACE] = ( + 'phone_number', [PhoneNumber]) + _children['{%s}nickname' % CONTACTS_NAMESPACE] = ('nickname', Nickname) + _children['{%s}occupation' % CONTACTS_NAMESPACE] = ('occupation', Occupation) + _children['{%s}gender' % CONTACTS_NAMESPACE] = ('gender', Gender) + _children['{%s}birthday' % CONTACTS_NAMESPACE] = ('birthday', Birthday) _children['{%s}postalAddress' % gdata.GDATA_NAMESPACE] = ('postal_address', - [PostalAddress]) - _children['{%s}phoneNumber' % gdata.GDATA_NAMESPACE] = ('phone_number', - [PhoneNumber]) - _children['{%s}organization' % gdata.GDATA_NAMESPACE] = ('organization', - Organization) + [PostalAddress]) + _children['{%s}structuredPostalAddress' % gdata.GDATA_NAMESPACE] = ( + 'structured_pstal_address', [StructuredPostalAddress]) _children['{%s}email' % gdata.GDATA_NAMESPACE] = ('email', [Email]) _children['{%s}im' % gdata.GDATA_NAMESPACE] = ('im', [IM]) + _children['{%s}relation' % CONTACTS_NAMESPACE] = ('relation', [Relation]) + _children['{%s}userDefinedField' % CONTACTS_NAMESPACE] = ( + 'user_defined_field', [UserDefinedField]) + _children['{%s}website' % CONTACTS_NAMESPACE] = ('website', [Website]) + _children['{%s}externalId' % CONTACTS_NAMESPACE] = ( + 'external_id', [ExternalId]) + _children['{%s}event' % CONTACTS_NAMESPACE] = ('event', [Event]) + # The following line should be removed once the Python support + # for GData 2.0 is mature. + _attributes = gdata.BatchEntry._attributes.copy() + _attributes['{%s}etag' % gdata.GDATA_NAMESPACE] = 'etag' + + def __init__(self, author=None, category=None, content=None, + atom_id=None, link=None, published=None, + title=None, updated=None, organization=None, phone_number=None, + nickname=None, occupation=None, gender=None, birthday=None, + postal_address=None, structured_pstal_address=None, email=None, + im=None, relation=None, user_defined_field=None, website=None, + external_id=None, event=None, batch_operation=None, + batch_id=None, batch_status=None, text=None, + extension_elements=None, extension_attributes=None, etag=None): + gdata.BatchEntry.__init__(self, author=author, category=category, + content=content, atom_id=atom_id, link=link, + published=published, + batch_operation=batch_operation, + batch_id=batch_id, batch_status=batch_status, + title=title, updated=updated) + self.organization = organization or [] + self.phone_number = phone_number or [] + self.nickname = nickname + self.occupation = occupation + self.gender = gender + self.birthday = birthday + self.postal_address = postal_address or [] + self.structured_pstal_address = structured_pstal_address or [] + self.email = email or [] + self.im = im or [] + self.relation = relation or [] + self.user_defined_field = user_defined_field or [] + self.website = website or [] + self.external_id = external_id or [] + self.event = event or [] + self.text = text + self.extension_elements = extension_elements or [] + self.extension_attributes = extension_attributes or {} + # The following line should be removed once the Python support + # for GData 2.0 is mature. + self.etag = etag + + +class ContactEntry(PersonEntry): + """A Google Contact flavor of an Atom Entry.""" + + _children = PersonEntry._children.copy() + _children['{%s}deleted' % gdata.GDATA_NAMESPACE] = ('deleted', Deleted) _children['{%s}groupMembershipInfo' % CONTACTS_NAMESPACE] = ( 'group_membership_info', [GroupMembershipInfo]) _children['{%s}extendedProperty' % gdata.GDATA_NAMESPACE] = ( 'extended_property', [gdata.ExtendedProperty]) - + # Overwrite the organization rule in PersonEntry so that a ContactEntry + # may only contain one element. + _children['{%s}organization' % gdata.GDATA_NAMESPACE] = ( + 'organization', Organization) + def __init__(self, author=None, category=None, content=None, - atom_id=None, link=None, published=None, - title=None, updated=None, email=None, postal_address=None, - deleted=None, organization=None, phone_number=None, im=None, - extended_property=None, group_membership_info=None, - batch_operation=None, batch_id=None, batch_status=None, - extension_elements=None, extension_attributes=None, text=None): - gdata.BatchEntry.__init__(self, author=author, category=category, - content=content, atom_id=atom_id, link=link, published=published, - batch_operation=batch_operation, batch_id=batch_id, - batch_status=batch_status, title=title, updated=updated) - self.organization = organization + atom_id=None, link=None, published=None, + title=None, updated=None, organization=None, phone_number=None, + nickname=None, occupation=None, gender=None, birthday=None, + postal_address=None, structured_pstal_address=None, email=None, + im=None, relation=None, user_defined_field=None, website=None, + external_id=None, event=None, batch_operation=None, + batch_id=None, batch_status=None, text=None, + extension_elements=None, extension_attributes=None, etag=None, + deleted=None, extended_property=None, + group_membership_info=None): + PersonEntry.__init__(self, author=author, category=category, + content=content, atom_id=atom_id, link=link, + published=published, title=title, updated=updated, + organization=organization, phone_number=phone_number, + nickname=nickname, occupation=occupation, + gender=gender, birthday=birthday, + postal_address=postal_address, + structured_pstal_address=structured_pstal_address, + email=email, im=im, relation=relation, + user_defined_field=user_defined_field, + website=website, external_id=external_id, event=event, + batch_operation=batch_operation, batch_id=batch_id, + batch_status=batch_status, text=text, + extension_elements=extension_elements, + extension_attributes=extension_attributes, etag=etag) self.deleted = deleted - self.phone_number = phone_number or [] - self.postal_address = postal_address or [] - self.im = im or [] self.extended_property = extended_property or [] - self.email = email or [] self.group_membership_info = group_membership_info or [] - self.text = text - self.extension_elements = extension_elements or [] - self.extension_attributes = extension_attributes or {} def GetPhotoLink(self): for a_link in self.link: @@ -291,21 +622,21 @@ class ContactsFeed(gdata.BatchFeed, gdata.LinkFinder): - """A Google Contacts feed flavor of an Atom Feed""" + """A Google Contacts feed flavor of an Atom Feed.""" _children = gdata.BatchFeed._children.copy() _children['{%s}entry' % atom.ATOM_NAMESPACE] = ('entry', [ContactEntry]) def __init__(self, author=None, category=None, contributor=None, - generator=None, icon=None, atom_id=None, link=None, logo=None, + generator=None, icon=None, atom_id=None, link=None, logo=None, rights=None, subtitle=None, title=None, updated=None, entry=None, total_results=None, start_index=None, items_per_page=None, extension_elements=None, extension_attributes=None, text=None): gdata.BatchFeed.__init__(self, author=author, category=category, contributor=contributor, generator=generator, - icon=icon, atom_id=atom_id, link=link, + icon=icon, atom_id=atom_id, link=link, logo=logo, rights=rights, subtitle=subtitle, title=title, updated=updated, entry=entry, total_results=total_results, @@ -314,7 +645,7 @@ extension_elements=extension_elements, extension_attributes=extension_attributes, text=text) - + def ContactsFeedFromString(xml_string): return atom.CreateClassFromXMLString(ContactsFeed, xml_string) @@ -327,17 +658,18 @@ 'extended_property', [gdata.ExtendedProperty]) def __init__(self, author=None, category=None, content=None, - contributor=None, atom_id=None, link=None, published=None, rights=None, - source=None, summary=None, control=None, title=None, updated=None, - extended_property=None, batch_operation=None, batch_id=None, - batch_status=None, - extension_elements=None, extension_attributes=None, text=None): - gdata.BatchEntry.__init__(self, author=author, category=category, - content=content, - atom_id=atom_id, link=link, published=published, - batch_operation=batch_operation, batch_id=batch_id, - batch_status=batch_status, - title=title, updated=updated) + contributor=None, atom_id=None, link=None, published=None, + rights=None, source=None, summary=None, control=None, + title=None, updated=None, + extended_property=None, batch_operation=None, batch_id=None, + batch_status=None, + extension_elements=None, extension_attributes=None, text=None): + gdata.BatchEntry.__init__(self, author=author, category=category, + content=content, + atom_id=atom_id, link=link, published=published, + batch_operation=batch_operation, + batch_id=batch_id, batch_status=batch_status, + title=title, updated=updated) self.extended_property = extended_property or [] @@ -346,10 +678,64 @@ class GroupsFeed(gdata.BatchFeed): - """A Google contact groups feed flavor of an Atom Feed""" + """A Google contact groups feed flavor of an Atom Feed.""" _children = gdata.BatchFeed._children.copy() _children['{%s}entry' % atom.ATOM_NAMESPACE] = ('entry', [GroupEntry]) def GroupsFeedFromString(xml_string): return atom.CreateClassFromXMLString(GroupsFeed, xml_string) + + +class ProfileEntry(PersonEntry): + """A Google Profiles flavor of an Atom Entry.""" + + +def ProfileEntryFromString(xml_string): + """Converts an XML string into a ProfileEntry object. + + Args: + xml_string: string The XML describing a Profile entry. + + Returns: + A ProfileEntry object corresponding to the given XML. + """ + return atom.CreateClassFromXMLString(ProfileEntry, xml_string) + + +class ProfilesFeed(gdata.BatchFeed, gdata.LinkFinder): + """A Google Profiles feed flavor of an Atom Feed.""" + + _children = gdata.BatchFeed._children.copy() + _children['{%s}entry' % atom.ATOM_NAMESPACE] = ('entry', [ProfileEntry]) + + def __init__(self, author=None, category=None, contributor=None, + generator=None, icon=None, atom_id=None, link=None, logo=None, + rights=None, subtitle=None, title=None, updated=None, + entry=None, total_results=None, start_index=None, + items_per_page=None, extension_elements=None, + extension_attributes=None, text=None): + gdata.BatchFeed.__init__(self, author=author, category=category, + contributor=contributor, generator=generator, + icon=icon, atom_id=atom_id, link=link, + logo=logo, rights=rights, subtitle=subtitle, + title=title, updated=updated, entry=entry, + total_results=total_results, + start_index=start_index, + items_per_page=items_per_page, + extension_elements=extension_elements, + extension_attributes=extension_attributes, + text=text) + + +def ProfilesFeedFromString(xml_string): + """Converts an XML string into a ProfilesFeed object. + + Args: + xml_string: string The XML describing a Profiles feed. + + Returns: + A ProfilesFeed object corresponding to the given XML. + """ + return atom.CreateClassFromXMLString(ProfilesFeed, xml_string) + diff -Nru python-gdata-1.2.4/src/gdata/contacts/service.py python-gdata-2.0.8/src/gdata/contacts/service.py --- python-gdata-1.2.4/src/gdata/contacts/service.py 2009-01-22 19:17:15.000000000 +0000 +++ python-gdata-2.0.8/src/gdata/contacts/service.py 2009-10-24 02:44:00.000000000 +0100 @@ -1,6 +1,6 @@ -#!/usr/bin/python +#!/usr/bin/python2.4 # -# Copyright (C) 2008 Google Inc. +# Copyright 2009 Google Inc. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -14,13 +14,13 @@ # See the License for the specific language governing permissions and # limitations under the License. -"""ContactsService extends the GDataService to streamline Google Contacts operations. +"""ContactsService extends the GDataService for Google Contacts operations. - ContactsService: Provides methods to query feeds and manipulate items. Extends - GDataService. + ContactsService: Provides methods to query feeds and manipulate items. + Extends GDataService. - DictionaryToParamList: Function which converts a dictionary into a list of - URL arguments (represented as strings). This is a + DictionaryToParamList: Function which converts a dictionary into a list of + URL arguments (represented as strings). This is a utility function used in CRUD operations. """ @@ -28,20 +28,26 @@ import gdata -import atom.service -import gdata.service import gdata.calendar -import atom +import gdata.service + DEFAULT_BATCH_URL = ('http://www.google.com/m8/feeds/contacts/default/full' '/batch') +DEFAULT_PROFILES_BATCH_URL = ('http://www.google.com' + '/m8/feeds/profiles/default/full/batch') + +GDATA_VER_HEADER = 'GData-Version' + class Error(Exception): pass + class RequestError(Error): pass + class ContactsService(gdata.service.GDataService): """Client for the Google Contacts service.""" @@ -63,6 +69,7 @@ **kwargs: The other parameters to pass to gdata.service.GDataService constructor. """ + self.contact_list = contact_list gdata.service.GDataService.__init__( self, email=email, password=password, service='cp', source=source, @@ -87,6 +94,8 @@ Example: '/m8/feeds/contacts/default/full'. """ contact_list = contact_list or self.contact_list + if kind == 'profiles': + contact_list = 'domain/%s' % contact_list prefix = scheme and '%s://%s' % (scheme, self.server) or '' return '%s/m8/feeds/%s/%s/%s' % (prefix, kind, contact_list, projection) @@ -101,37 +110,36 @@ escape_params=True): """Adds an new contact to Google Contacts. - Args: + Args: new_contact: atom.Entry or subclass A new contact which is to be added to Google Contacts. insert_uri: the URL to post new contacts to the feed url_params: dict (optional) Additional URL parameters to be included - in the insertion request. + in the insertion request. escape_params: boolean (optional) If true, the url_parameters will be escaped before they are included in the request. Returns: On successful insert, an entry containing the contact created On failure, a RequestError is raised of the form: - {'status': HTTP status code from server, - 'reason': HTTP reason from the server, + {'status': HTTP status code from server, + 'reason': HTTP reason from the server, 'body': HTTP body of the server's response} """ insert_uri = insert_uri or self.GetFeedUri() return self.Post(new_contact, insert_uri, url_params=url_params, - escape_params=escape_params, - converter=gdata.contacts.ContactEntryFromString) + escape_params=escape_params, + converter=gdata.contacts.ContactEntryFromString) - - def UpdateContact(self, edit_uri, updated_contact, url_params=None, + def UpdateContact(self, edit_uri, updated_contact, url_params=None, escape_params=True): """Updates an existing contact. Args: edit_uri: string The edit link URI for the element being updated updated_contact: string, atom.Entry or subclass containing - the Atom Entry which will replace the contact which is - stored at the edit_url + the Atom Entry which will replace the contact which is + stored at the edit_url url_params: dict (optional) Additional URL parameters to be included in the update request. escape_params: boolean (optional) If true, the url_parameters will be @@ -141,8 +149,8 @@ On successful update, a httplib.HTTPResponse containing the server's response to the PUT request. On failure, a RequestError is raised of the form: - {'status': HTTP status code from server, - 'reason': HTTP reason from the server, + {'status': HTTP status code from server, + 'reason': HTTP reason from the server, 'body': HTTP body of the server's response} """ return self.Put(updated_contact, self._CleanUri(edit_uri), @@ -150,7 +158,7 @@ escape_params=escape_params, converter=gdata.contacts.ContactEntryFromString) - def DeleteContact(self, edit_uri, extra_headers=None, + def DeleteContact(self, edit_uri, extra_headers=None, url_params=None, escape_params=True): """Removes an contact with the specified ID from Google Contacts. @@ -166,8 +174,8 @@ On successful delete, a httplib.HTTPResponse containing the server's response to the DELETE request. On failure, a RequestError is raised of the form: - {'status': HTTP status code from server, - 'reason': HTTP reason from the server, + {'status': HTTP status code from server, + 'reason': HTTP reason from the server, 'body': HTTP body of the server's response} """ return self.Delete(self._CleanUri(edit_uri), @@ -184,20 +192,20 @@ escape_params=escape_params, converter=gdata.contacts.GroupEntryFromString) - def UpdateGroup(self, edit_uri, updated_group, url_params=None, + def UpdateGroup(self, edit_uri, updated_group, url_params=None, escape_params=True): return self.Put(updated_group, self._CleanUri(edit_uri), url_params=url_params, escape_params=escape_params, converter=gdata.contacts.GroupEntryFromString) - def DeleteGroup(self, edit_uri, extra_headers=None, - url_params=None, escape_params=True): + def DeleteGroup(self, edit_uri, extra_headers=None, + url_params=None, escape_params=True): return self.Delete(self._CleanUri(edit_uri), url_params=url_params, escape_params=escape_params) def ChangePhoto(self, media, contact_entry_or_url, content_type=None, - content_length=None): + content_length=None): """Change the photo for the contact by uploading a new photo. Performs a PUT against the photo edit URL to send the binary data for the @@ -215,7 +223,7 @@ mime type in the media object. content_length: int or str (optional) Specifying the content length is only required if media is a file-like object. If media - is a filename, the length is determined using + is a filename, the length is determined using os.path.getsize. If media is a MediaSource object, it is assumed that it already contains the content length. """ @@ -269,6 +277,59 @@ if url: self.Delete(url) + def GetProfilesFeed(self, uri=None): + """Retrieves a feed containing all domain's profiles. + + Args: + uri: string (optional) the URL to retrieve the profiles feed, + for example /m8/feeds/profiles/default/full + + Returns: + On success, a ProfilesFeed containing the profiles. + On failure, raises a RequestError. + """ + + uri = uri or self.GetFeedUri('profiles') + return self.Get(uri, + converter=gdata.contacts.ProfilesFeedFromString) + + def GetProfile(self, uri): + """Retrieves a domain's profile for the user. + + Args: + uri: string the URL to retrieve the profiles feed, + for example /m8/feeds/profiles/default/full/username + + Returns: + On success, a ProfileEntry containing the profile for the user. + On failure, raises a RequestError + """ + return self.Get(uri, + converter=gdata.contacts.ProfileEntryFromString) + + def UpdateProfile(self, edit_uri, updated_profile, url_params=None, + escape_params=True): + """Updates an existing profile. + + Args: + edit_uri: string The edit link URI for the element being updated + updated_profile: string atom.Entry or subclass containing + the Atom Entry which will replace the profile which is + stored at the edit_url. + url_params: dict (optional) Additional URL parameters to be included + in the update request. + escape_params: boolean (optional) If true, the url_params will be + escaped before they are included in the request. + + Returns: + On successful update, a httplib.HTTPResponse containing the server's + response to the PUT request. + On failure, raises a RequestError. + """ + return self.Put(updated_profile, self._CleanUri(edit_uri), + url_params=url_params, escape_params=escape_params, + converter=gdata.contacts.ProfileEntryFromString) + def ExecuteBatch(self, batch_feed, url, converter=gdata.contacts.ContactsFeedFromString): """Sends a batch request feed to the server. @@ -288,6 +349,27 @@ default converter is used, this is stored in a ContactsFeed. """ return self.Post(batch_feed, url, converter=converter) + + def ExecuteBatchProfiles(self, batch_feed, url, + converter=gdata.contacts.ProfilesFeedFromString): + """Sends a batch request feed to the server. + + Args: + batch_feed: gdata.profiles.ProfilesFeed A feed containing batch + request entries. Each entry contains the operation to be performed + on the data contained in the entry. For example an entry with an + operation type of insert will be used as if the individual entry + had been inserted. + url: string The batch URL to which these operations should be applied. + converter: Function (optional) The function used to convert the server's + response to an object. The default value is + gdata.profiles.ProfilesFeedFromString. + + Returns: + The results of the batch request's execution on the server. If the + default converter is used, this is stored in a ProfilesFeed. + """ + return self.Post(batch_feed, url, converter=converter) def _CleanUri(self, uri): """Sanitizes a feed URI. @@ -333,3 +415,13 @@ self.feed = feed or '/m8/feeds/groups/default/full' gdata.service.Query.__init__(self, feed=self.feed, text_query=text_query, params=params, categories=categories) + + +class ProfilesQuery(gdata.service.Query): + """Constructs a query object for the profiles feed.""" + + def __init__(self, feed=None, text_query=None, params=None, + categories=None): + self.feed = feed or '/m8/feeds/profiles/default/full' + gdata.service.Query.__init__(self, feed=self.feed, text_query=text_query, + params=params, categories=categories) diff -Nru python-gdata-1.2.4/src/gdata/core.py python-gdata-2.0.8/src/gdata/core.py --- python-gdata-1.2.4/src/gdata/core.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/core.py 2010-02-10 00:29:40.000000000 +0000 @@ -0,0 +1,275 @@ +#!/usr/bin/env python +# +# Copyright (C) 2010 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +# This module is used for version 2 of the Google Data APIs. + + +__author__ = 'j.s@google.com (Jeff Scudder)' + + +"""Provides classes and methods for working with JSON-C. + +This module is experimental and subject to backwards incompatible changes. + + Jsonc: Class which represents JSON-C data and provides pythonic member + access which is a bit cleaner than working with plain old dicts. + parse_json: Converts a JSON-C string into a Jsonc object. + jsonc_to_string: Converts a Jsonc object into a string of JSON-C. +""" + + +try: + import simplejson +except ImportError: + try: + # Try to import from django, should work on App Engine + from django.utils import simplejson + except ImportError: + # Should work for Python2.6 and higher. + import json as simplejson + + +def _convert_to_jsonc(x): + """Builds a Jsonc objects which wraps the argument's members.""" + + if isinstance(x, dict): + jsonc_obj = Jsonc() + # Recursively transform all members of the dict. + # When converting a dict, we do not convert _name items into private + # Jsonc members. + for key, value in x.iteritems(): + jsonc_obj._dict[key] = _convert_to_jsonc(value) + return jsonc_obj + elif isinstance(x, list): + # Recursively transform all members of the list. + members = [] + for item in x: + members.append(_convert_to_jsonc(item)) + return members + else: + # Return the base object. + return x + + +def parse_json(json_string): + """Converts a JSON-C string into a Jsonc object. + + Args: + json_string: str or unicode The JSON to be parsed. + + Returns: + A new Jsonc object. + """ + + return _convert_to_jsonc(simplejson.loads(json_string)) + + +def jsonc_to_string(jsonc_obj): + """Converts a Jsonc object into a string of JSON-C.""" + + return simplejson.dumps(_convert_to_object(jsonc_obj)) + + +def prettify_jsonc(jsonc_obj, indentation=2): + """Converts a Jsonc object to a pretified (intented) JSON string.""" + + return simplejson.dumps(_convert_to_object(jsonc_obj), indent=indentation) + + + +def _convert_to_object(jsonc_obj): + """Creates a new dict or list which has the data in the Jsonc object. + + Used to convert the Jsonc object to a plain old Python object to simplify + conversion to a JSON-C string. + + Args: + jsonc_obj: A Jsonc object to be converted into simple Python objects + (dicts, lists, etc.) + + Returns: + Either a dict, list, or other object with members converted from Jsonc + objects to the corresponding simple Python object. + """ + + if isinstance(jsonc_obj, Jsonc): + plain = {} + for key, value in jsonc_obj._dict.iteritems(): + plain[key] = _convert_to_object(value) + return plain + elif isinstance(jsonc_obj, list): + plain = [] + for item in jsonc_obj: + plain.append(_convert_to_object(item)) + return plain + else: + return jsonc_obj + + +def _to_jsonc_name(member_name): + """Converts a Python style member name to a JSON-C style name. + + JSON-C uses camelCaseWithLower while Python tends to use + lower_with_underscores so this method converts as follows: + + spam becomes spam + spam_and_eggs becomes spamAndEggs + + Args: + member_name: str or unicode The Python syle name which should be + converted to JSON-C style. + + Returns: + The JSON-C style name as a str or unicode. + """ + + characters = [] + uppercase_next = False + for character in member_name: + if character == '_': + uppercase_next = True + elif uppercase_next: + characters.append(character.upper()) + uppercase_next = False + else: + characters.append(character) + return ''.join(characters) + + +class Jsonc(object): + """Represents JSON-C data in an easy to access object format. + + To access the members of a JSON structure which looks like this: + { + "data": { + "totalItems": 800, + "items": [ + { + "content": { + "1": "rtsp://v5.cache3.c.youtube.com/CiILENy.../0/0/0/video.3gp" + }, + "viewCount": 220101, + "commentCount": 22, + "favoriteCount": 201 + } + ] + }, + "apiVersion": "2.0" + } + + You would do the following: + x = gdata.core.parse_json(the_above_string) + # Gives you 800 + x.data.total_items + # Should be 22 + x.data.items[0].comment_count + # The apiVersion is '2.0' + x.api_version + + To create a Jsonc object which would produce the above JSON, you would do: + gdata.core.Jsonc( + api_version='2.0', + data=gdata.core.Jsonc( + total_items=800, + items=[ + gdata.core.Jsonc( + view_count=220101, + comment_count=22, + favorite_count=201, + content={ + '1': ('rtsp://v5.cache3.c.youtube.com' + '/CiILENy.../0/0/0/video.3gp')})])) + or + x = gdata.core.Jsonc() + x.api_version = '2.0' + x.data = gdata.core.Jsonc() + x.data.total_items = 800 + x.data.items = [] + # etc. + + How it works: + The JSON-C data is stored in an internal dictionary (._dict) and the + getattr, setattr, and delattr methods rewrite the name which you provide + to mirror the expected format in JSON-C. (For more details on name + conversion see _to_jsonc_name.) You may also access members using + getitem, setitem, delitem as you would for a dictionary. For example + x.data.total_items is equivalent to x['data']['totalItems'] + (Not all dict methods are supported so if you need something other than + the item operations, then you will want to use the ._dict member). + + You may need to use getitem or the _dict member to access certain + properties in cases where the JSON-C syntax does not map neatly to Python + objects. For example the YouTube Video feed has some JSON like this: + "content": {"1": "rtsp://v5.cache3.c.youtube.com..."...} + You cannot do x.content.1 in Python, so you would use the getitem as + follows: + x.content['1'] + or you could use the _dict member as follows: + x.content._dict['1'] + + If you need to create a new object with such a mapping you could use. + + x.content = gdata.core.Jsonc(_dict={'1': 'rtsp://cache3.c.youtube.com...'}) + """ + + def __init__(self, _dict=None, **kwargs): + json = _dict or {} + for key, value in kwargs.iteritems(): + if key.startswith('_'): + object.__setattr__(self, key, value) + else: + json[_to_jsonc_name(key)] = _convert_to_jsonc(value) + + object.__setattr__(self, '_dict', json) + + def __setattr__(self, name, value): + if name.startswith('_'): + object.__setattr__(self, name, value) + else: + object.__getattribute__( + self, '_dict')[_to_jsonc_name(name)] = _convert_to_jsonc(value) + + def __getattr__(self, name): + if name.startswith('_'): + object.__getattribute__(self, name) + else: + try: + return object.__getattribute__(self, '_dict')[_to_jsonc_name(name)] + except KeyError: + raise AttributeError( + 'No member for %s or [\'%s\']' % (name, _to_jsonc_name(name))) + + + def __delattr__(self, name): + if name.startswith('_'): + object.__delattr__(self, name) + else: + try: + del object.__getattribute__(self, '_dict')[_to_jsonc_name(name)] + except KeyError: + raise AttributeError( + 'No member for %s (or [\'%s\'])' % (name, _to_jsonc_name(name))) + + # For container methods pass-through to the underlying dict. + def __getitem__(self, key): + return self._dict[key] + + def __setitem__(self, key, value): + self._dict[key] = value + + def __delitem__(self, key): + del self._dict[key] diff -Nru python-gdata-1.2.4/src/gdata/data.py python-gdata-2.0.8/src/gdata/data.py --- python-gdata-1.2.4/src/gdata/data.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/data.py 2010-02-26 21:34:20.000000000 +0000 @@ -0,0 +1,1186 @@ +#!/usr/bin/env python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +# This module is used for version 2 of the Google Data APIs. + + +"""Provides classes and constants for the XML in the Google Data namespace. + +Documentation for the raw XML which these classes represent can be found here: +http://code.google.com/apis/gdata/docs/2.0/elements.html +""" + + +__author__ = 'j.s@google.com (Jeff Scudder)' + + +import os +import atom.core +import atom.data + + +GDATA_TEMPLATE = '{http://schemas.google.com/g/2005}%s' +GD_TEMPLATE = GDATA_TEMPLATE +OPENSEARCH_TEMPLATE_V1 = '{http://a9.com/-/spec/opensearchrss/1.0/}%s' +OPENSEARCH_TEMPLATE_V2 = '{http://a9.com/-/spec/opensearch/1.1/}%s' +BATCH_TEMPLATE = '{http://schemas.google.com/gdata/batch}%s' + + +# Labels used in batch request entries to specify the desired CRUD operation. +BATCH_INSERT = 'insert' +BATCH_UPDATE = 'update' +BATCH_DELETE = 'delete' +BATCH_QUERY = 'query' + +EVENT_LOCATION = 'http://schemas.google.com/g/2005#event' +ALTERNATE_LOCATION = 'http://schemas.google.com/g/2005#event.alternate' +PARKING_LOCATION = 'http://schemas.google.com/g/2005#event.parking' + +CANCELED_EVENT = 'http://schemas.google.com/g/2005#event.canceled' +CONFIRMED_EVENT = 'http://schemas.google.com/g/2005#event.confirmed' +TENTATIVE_EVENT = 'http://schemas.google.com/g/2005#event.tentative' + +CONFIDENTIAL_EVENT = 'http://schemas.google.com/g/2005#event.confidential' +DEFAULT_EVENT = 'http://schemas.google.com/g/2005#event.default' +PRIVATE_EVENT = 'http://schemas.google.com/g/2005#event.private' +PUBLIC_EVENT = 'http://schemas.google.com/g/2005#event.public' + +OPAQUE_EVENT = 'http://schemas.google.com/g/2005#event.opaque' +TRANSPARENT_EVENT = 'http://schemas.google.com/g/2005#event.transparent' + +CHAT_MESSAGE = 'http://schemas.google.com/g/2005#message.chat' +INBOX_MESSAGE = 'http://schemas.google.com/g/2005#message.inbox' +SENT_MESSAGE = 'http://schemas.google.com/g/2005#message.sent' +SPAM_MESSAGE = 'http://schemas.google.com/g/2005#message.spam' +STARRED_MESSAGE = 'http://schemas.google.com/g/2005#message.starred' +UNREAD_MESSAGE = 'http://schemas.google.com/g/2005#message.unread' + +BCC_RECIPIENT = 'http://schemas.google.com/g/2005#message.bcc' +CC_RECIPIENT = 'http://schemas.google.com/g/2005#message.cc' +SENDER = 'http://schemas.google.com/g/2005#message.from' +REPLY_TO = 'http://schemas.google.com/g/2005#message.reply-to' +TO_RECIPIENT = 'http://schemas.google.com/g/2005#message.to' + +ASSISTANT_REL = 'http://schemas.google.com/g/2005#assistant' +CALLBACK_REL = 'http://schemas.google.com/g/2005#callback' +CAR_REL = 'http://schemas.google.com/g/2005#car' +COMPANY_MAIN_REL = 'http://schemas.google.com/g/2005#company_main' +FAX_REL = 'http://schemas.google.com/g/2005#fax' +HOME_REL = 'http://schemas.google.com/g/2005#home' +HOME_FAX_REL = 'http://schemas.google.com/g/2005#home_fax' +ISDN_REL = 'http://schemas.google.com/g/2005#isdn' +MAIN_REL = 'http://schemas.google.com/g/2005#main' +MOBILE_REL = 'http://schemas.google.com/g/2005#mobile' +OTHER_REL = 'http://schemas.google.com/g/2005#other' +OTHER_FAX_REL = 'http://schemas.google.com/g/2005#other_fax' +PAGER_REL = 'http://schemas.google.com/g/2005#pager' +RADIO_REL = 'http://schemas.google.com/g/2005#radio' +TELEX_REL = 'http://schemas.google.com/g/2005#telex' +TTL_TDD_REL = 'http://schemas.google.com/g/2005#tty_tdd' +WORK_REL = 'http://schemas.google.com/g/2005#work' +WORK_FAX_REL = 'http://schemas.google.com/g/2005#work_fax' +WORK_MOBILE_REL = 'http://schemas.google.com/g/2005#work_mobile' +WORK_PAGER_REL = 'http://schemas.google.com/g/2005#work_pager' +NETMEETING_REL = 'http://schemas.google.com/g/2005#netmeeting' +OVERALL_REL = 'http://schemas.google.com/g/2005#overall' +PRICE_REL = 'http://schemas.google.com/g/2005#price' +QUALITY_REL = 'http://schemas.google.com/g/2005#quality' +EVENT_REL = 'http://schemas.google.com/g/2005#event' +EVENT_ALTERNATE_REL = 'http://schemas.google.com/g/2005#event.alternate' +EVENT_PARKING_REL = 'http://schemas.google.com/g/2005#event.parking' + +AIM_PROTOCOL = 'http://schemas.google.com/g/2005#AIM' +MSN_PROTOCOL = 'http://schemas.google.com/g/2005#MSN' +YAHOO_MESSENGER_PROTOCOL = 'http://schemas.google.com/g/2005#YAHOO' +SKYPE_PROTOCOL = 'http://schemas.google.com/g/2005#SKYPE' +QQ_PROTOCOL = 'http://schemas.google.com/g/2005#QQ' +GOOGLE_TALK_PROTOCOL = 'http://schemas.google.com/g/2005#GOOGLE_TALK' +ICQ_PROTOCOL = 'http://schemas.google.com/g/2005#ICQ' +JABBER_PROTOCOL = 'http://schemas.google.com/g/2005#JABBER' + +REGULAR_COMMENTS = 'http://schemas.google.com/g/2005#regular' +REVIEW_COMMENTS = 'http://schemas.google.com/g/2005#reviews' + +MAIL_BOTH = 'http://schemas.google.com/g/2005#both' +MAIL_LETTERS = 'http://schemas.google.com/g/2005#letters' +MAIL_PARCELS = 'http://schemas.google.com/g/2005#parcels' +MAIL_NEITHER = 'http://schemas.google.com/g/2005#neither' + +GENERAL_ADDRESS = 'http://schemas.google.com/g/2005#general' +LOCAL_ADDRESS = 'http://schemas.google.com/g/2005#local' + +OPTIONAL_ATENDEE = 'http://schemas.google.com/g/2005#event.optional' +REQUIRED_ATENDEE = 'http://schemas.google.com/g/2005#event.required' + +ATTENDEE_ACCEPTED = 'http://schemas.google.com/g/2005#event.accepted' +ATTENDEE_DECLINED = 'http://schemas.google.com/g/2005#event.declined' +ATTENDEE_INVITED = 'http://schemas.google.com/g/2005#event.invited' +ATTENDEE_TENTATIVE = 'http://schemas.google.com/g/2005#event.tentative' + +FULL_PROJECTION = 'full' +VALUES_PROJECTION = 'values' +BASIC_PROJECTION = 'basic' + +PRIVATE_VISIBILITY = 'private' +PUBLIC_VISIBILITY = 'public' + +ACL_REL = 'http://schemas.google.com/acl/2007#accessControlList' + + +class Error(Exception): + pass + + +class MissingRequiredParameters(Error): + pass + + +class LinkFinder(atom.data.LinkFinder): + """Mixin used in Feed and Entry classes to simplify link lookups by type. + + Provides lookup methods for edit, edit-media, post, ACL and other special + links which are common across Google Data APIs. + """ + + def find_html_link(self): + """Finds the first link with rel of alternate and type of text/html.""" + for link in self.link: + if link.rel == 'alternate' and link.type == 'text/html': + return link.href + return None + + FindHtmlLink = find_html_link + + def get_html_link(self): + for a_link in self.link: + if a_link.rel == 'alternate' and a_link.type == 'text/html': + return a_link + return None + + GetHtmlLink = get_html_link + + def find_post_link(self): + """Get the URL to which new entries should be POSTed. + + The POST target URL is used to insert new entries. + + Returns: + A str for the URL in the link with a rel matching the POST type. + """ + return self.find_url('http://schemas.google.com/g/2005#post') + + FindPostLink = find_post_link + + def get_post_link(self): + return self.get_link('http://schemas.google.com/g/2005#post') + + GetPostLink = get_post_link + + def find_acl_link(self): + acl_link = self.get_acl_link() + if acl_link: + return acl_link.href + + return None + + FindAclLink = find_acl_link + + def get_acl_link(self): + """Searches for a link or feed_link (if present) with the rel for ACL.""" + + acl_link = self.get_link(ACL_REL) + if acl_link: + return acl_link + elif hasattr(self, 'feed_link'): + for a_feed_link in self.feed_link: + if a_feed_link.rel == ACL_REL: + return a_feed_link + + return None + + GetAclLink = get_acl_link + + def find_feed_link(self): + return self.find_url('http://schemas.google.com/g/2005#feed') + + FindFeedLink = find_feed_link + + def get_feed_link(self): + return self.get_link('http://schemas.google.com/g/2005#feed') + + GetFeedLink = get_feed_link + + def find_previous_link(self): + return self.find_url('previous') + + FindPreviousLink = find_previous_link + + def get_previous_link(self): + return self.get_link('previous') + + GetPreviousLink = get_previous_link + + +class TotalResults(atom.core.XmlElement): + """opensearch:TotalResults for a GData feed.""" + _qname = (OPENSEARCH_TEMPLATE_V1 % 'totalResults', + OPENSEARCH_TEMPLATE_V2 % 'totalResults') + + +class StartIndex(atom.core.XmlElement): + """The opensearch:startIndex element in GData feed.""" + _qname = (OPENSEARCH_TEMPLATE_V1 % 'startIndex', + OPENSEARCH_TEMPLATE_V2 % 'startIndex') + + +class ItemsPerPage(atom.core.XmlElement): + """The opensearch:itemsPerPage element in GData feed.""" + _qname = (OPENSEARCH_TEMPLATE_V1 % 'itemsPerPage', + OPENSEARCH_TEMPLATE_V2 % 'itemsPerPage') + + +class ExtendedProperty(atom.core.XmlElement): + """The Google Data extendedProperty element. + + Used to store arbitrary key-value information specific to your + application. The value can either be a text string stored as an XML + attribute (.value), or an XML node (XmlBlob) as a child element. + + This element is used in the Google Calendar data API and the Google + Contacts data API. + """ + _qname = GDATA_TEMPLATE % 'extendedProperty' + name = 'name' + value = 'value' + + def get_xml_blob(self): + """Returns the XML blob as an atom.core.XmlElement. + + Returns: + An XmlElement representing the blob's XML, or None if no + blob was set. + """ + if self._other_elements: + return self._other_elements[0] + else: + return None + + GetXmlBlob = get_xml_blob + + def set_xml_blob(self, blob): + """Sets the contents of the extendedProperty to XML as a child node. + + Since the extendedProperty is only allowed one child element as an XML + blob, setting the XML blob will erase any preexisting member elements + in this object. + + Args: + blob: str or atom.core.XmlElement representing the XML blob stored in + the extendedProperty. + """ + # Erase any existing extension_elements, clears the child nodes from the + # extendedProperty. + if isinstance(blob, atom.core.XmlElement): + self._other_elements = [blob] + else: + self._other_elements = [atom.core.parse(str(blob))] + + SetXmlBlob = set_xml_blob + + +class GDEntry(atom.data.Entry, LinkFinder): + """Extends Atom Entry to provide data processing""" + etag = '{http://schemas.google.com/g/2005}etag' + + def get_id(self): + if self.id is not None and self.id.text is not None: + return self.id.text.strip() + return None + + GetId = get_id + + def is_media(self): + if self.find_media_edit_link(): + return True + return False + + IsMedia = is_media + + def find_media_link(self): + """Returns the URL to the media content, if the entry is a media entry. + Otherwise returns None. + """ + if self.is_media(): + return self.content.src + return None + + FindMediaLink = find_media_link + + +class GDFeed(atom.data.Feed, LinkFinder): + """A Feed from a GData service.""" + etag = '{http://schemas.google.com/g/2005}etag' + total_results = TotalResults + start_index = StartIndex + items_per_page = ItemsPerPage + entry = [GDEntry] + + def get_id(self): + if self.id is not None and self.id.text is not None: + return self.id.text.strip() + return None + + GetId = get_id + + def get_generator(self): + if self.generator and self.generator.text: + return self.generator.text.strip() + return None + + +class BatchId(atom.core.XmlElement): + """Identifies a single operation in a batch request.""" + _qname = BATCH_TEMPLATE % 'id' + + +class BatchOperation(atom.core.XmlElement): + """The CRUD operation which this batch entry represents.""" + _qname = BATCH_TEMPLATE % 'operation' + type = 'type' + + +class BatchStatus(atom.core.XmlElement): + """The batch:status element present in a batch response entry. + + A status element contains the code (HTTP response code) and + reason as elements. In a single request these fields would + be part of the HTTP response, but in a batch request each + Entry operation has a corresponding Entry in the response + feed which includes status information. + + See http://code.google.com/apis/gdata/batch.html#Handling_Errors + """ + _qname = BATCH_TEMPLATE % 'status' + code = 'code' + reason = 'reason' + content_type = 'content-type' + + +class BatchEntry(GDEntry): + """An atom:entry for use in batch requests. + + The BatchEntry contains additional members to specify the operation to be + performed on this entry and a batch ID so that the server can reference + individual operations in the response feed. For more information, see: + http://code.google.com/apis/gdata/batch.html + """ + batch_operation = BatchOperation + batch_id = BatchId + batch_status = BatchStatus + + +class BatchInterrupted(atom.core.XmlElement): + """The batch:interrupted element sent if batch request was interrupted. + + Only appears in a feed if some of the batch entries could not be processed. + See: http://code.google.com/apis/gdata/batch.html#Handling_Errors + """ + _qname = BATCH_TEMPLATE % 'interrupted' + reason = 'reason' + success = 'success' + failures = 'failures' + parsed = 'parsed' + + +class BatchFeed(GDFeed): + """A feed containing a list of batch request entries.""" + interrupted = BatchInterrupted + entry = [BatchEntry] + + def add_batch_entry(self, entry=None, id_url_string=None, + batch_id_string=None, operation_string=None): + """Logic for populating members of a BatchEntry and adding to the feed. + + If the entry is not a BatchEntry, it is converted to a BatchEntry so + that the batch specific members will be present. + + The id_url_string can be used in place of an entry if the batch operation + applies to a URL. For example query and delete operations require just + the URL of an entry, no body is sent in the HTTP request. If an + id_url_string is sent instead of an entry, a BatchEntry is created and + added to the feed. + + This method also assigns the desired batch id to the entry so that it + can be referenced in the server's response. If the batch_id_string is + None, this method will assign a batch_id to be the index at which this + entry will be in the feed's entry list. + + Args: + entry: BatchEntry, atom.data.Entry, or another Entry flavor (optional) + The entry which will be sent to the server as part of the batch + request. The item must have a valid atom id so that the server + knows which entry this request references. + id_url_string: str (optional) The URL of the entry to be acted on. You + can find this URL in the text member of the atom id for an entry. + If an entry is not sent, this id will be used to construct a new + BatchEntry which will be added to the request feed. + batch_id_string: str (optional) The batch ID to be used to reference + this batch operation in the results feed. If this parameter is None, + the current length of the feed's entry array will be used as a + count. Note that batch_ids should either always be specified or + never, mixing could potentially result in duplicate batch ids. + operation_string: str (optional) The desired batch operation which will + set the batch_operation.type member of the entry. Options are + 'insert', 'update', 'delete', and 'query' + + Raises: + MissingRequiredParameters: Raised if neither an id_ url_string nor an + entry are provided in the request. + + Returns: + The added entry. + """ + if entry is None and id_url_string is None: + raise MissingRequiredParameters('supply either an entry or URL string') + if entry is None and id_url_string is not None: + entry = BatchEntry(id=atom.data.Id(text=id_url_string)) + if batch_id_string is not None: + entry.batch_id = BatchId(text=batch_id_string) + elif entry.batch_id is None or entry.batch_id.text is None: + entry.batch_id = BatchId(text=str(len(self.entry))) + if operation_string is not None: + entry.batch_operation = BatchOperation(type=operation_string) + self.entry.append(entry) + return entry + + AddBatchEntry = add_batch_entry + + def add_insert(self, entry, batch_id_string=None): + """Add an insert request to the operations in this batch request feed. + + If the entry doesn't yet have an operation or a batch id, these will + be set to the insert operation and a batch_id specified as a parameter. + + Args: + entry: BatchEntry The entry which will be sent in the batch feed as an + insert request. + batch_id_string: str (optional) The batch ID to be used to reference + this batch operation in the results feed. If this parameter is None, + the current length of the feed's entry array will be used as a + count. Note that batch_ids should either always be specified or + never, mixing could potentially result in duplicate batch ids. + """ + self.add_batch_entry(entry=entry, batch_id_string=batch_id_string, + operation_string=BATCH_INSERT) + + AddInsert = add_insert + + def add_update(self, entry, batch_id_string=None): + """Add an update request to the list of batch operations in this feed. + + Sets the operation type of the entry to insert if it is not already set + and assigns the desired batch id to the entry so that it can be + referenced in the server's response. + + Args: + entry: BatchEntry The entry which will be sent to the server as an + update (HTTP PUT) request. The item must have a valid atom id + so that the server knows which entry to replace. + batch_id_string: str (optional) The batch ID to be used to reference + this batch operation in the results feed. If this parameter is None, + the current length of the feed's entry array will be used as a + count. See also comments for AddInsert. + """ + self.add_batch_entry(entry=entry, batch_id_string=batch_id_string, + operation_string=BATCH_UPDATE) + + AddUpdate = add_update + + def add_delete(self, url_string=None, entry=None, batch_id_string=None): + """Adds a delete request to the batch request feed. + + This method takes either the url_string which is the atom id of the item + to be deleted, or the entry itself. The atom id of the entry must be + present so that the server knows which entry should be deleted. + + Args: + url_string: str (optional) The URL of the entry to be deleted. You can + find this URL in the text member of the atom id for an entry. + entry: BatchEntry (optional) The entry to be deleted. + batch_id_string: str (optional) + + Raises: + MissingRequiredParameters: Raised if neither a url_string nor an entry + are provided in the request. + """ + self.add_batch_entry(entry=entry, id_url_string=url_string, + batch_id_string=batch_id_string, operation_string=BATCH_DELETE) + + AddDelete = add_delete + + def add_query(self, url_string=None, entry=None, batch_id_string=None): + """Adds a query request to the batch request feed. + + This method takes either the url_string which is the query URL + whose results will be added to the result feed. The query URL will + be encapsulated in a BatchEntry, and you may pass in the BatchEntry + with a query URL instead of sending a url_string. + + Args: + url_string: str (optional) + entry: BatchEntry (optional) + batch_id_string: str (optional) + + Raises: + MissingRequiredParameters + """ + self.add_batch_entry(entry=entry, id_url_string=url_string, + batch_id_string=batch_id_string, operation_string=BATCH_QUERY) + + AddQuery = add_query + + def find_batch_link(self): + return self.find_url('http://schemas.google.com/g/2005#batch') + + FindBatchLink = find_batch_link + + +class EntryLink(atom.core.XmlElement): + """The gd:entryLink element. + + Represents a logically nested entry. For example, a + representing a contact might have a nested entry from a contact feed. + """ + _qname = GDATA_TEMPLATE % 'entryLink' + entry = GDEntry + rel = 'rel' + read_only = 'readOnly' + href = 'href' + + +class FeedLink(atom.core.XmlElement): + """The gd:feedLink element. + + Represents a logically nested feed. For example, a calendar feed might + have a nested feed representing all comments on entries. + """ + _qname = GDATA_TEMPLATE % 'feedLink' + feed = GDFeed + rel = 'rel' + read_only = 'readOnly' + count_hint = 'countHint' + href = 'href' + + +class AdditionalName(atom.core.XmlElement): + """The gd:additionalName element. + + Specifies additional (eg. middle) name of the person. + Contains an attribute for the phonetic representaton of the name. + """ + _qname = GDATA_TEMPLATE % 'additionalName' + yomi = 'yomi' + + +class Comments(atom.core.XmlElement): + """The gd:comments element. + + Contains a comments feed for the enclosing entry (such as a calendar event). + """ + _qname = GDATA_TEMPLATE % 'comments' + rel = 'rel' + feed_link = FeedLink + + +class Country(atom.core.XmlElement): + """The gd:country element. + + Country name along with optional country code. The country code is + given in accordance with ISO 3166-1 alpha-2: + http://www.iso.org/iso/iso-3166-1_decoding_table + """ + _qname = GDATA_TEMPLATE % 'country' + code = 'code' + + +class EmailImParent(atom.core.XmlElement): + address = 'address' + label = 'label' + rel = 'rel' + primary = 'primary' + + +class Email(EmailImParent): + """The gd:email element. + + An email address associated with the containing entity (which is + usually an entity representing a person or a location). + """ + _qname = GDATA_TEMPLATE % 'email' + display_name = 'displayName' + + +class FamilyName(atom.core.XmlElement): + """The gd:familyName element. + + Specifies family name of the person, eg. "Smith". + """ + _qname = GDATA_TEMPLATE % 'familyName' + yomi = 'yomi' + + +class Im(EmailImParent): + """The gd:im element. + + An instant messaging address associated with the containing entity. + """ + _qname = GDATA_TEMPLATE % 'im' + protocol = 'protocol' + + +class GivenName(atom.core.XmlElement): + """The gd:givenName element. + + Specifies given name of the person, eg. "John". + """ + _qname = GDATA_TEMPLATE % 'givenName' + yomi = 'yomi' + + +class NamePrefix(atom.core.XmlElement): + """The gd:namePrefix element. + + Honorific prefix, eg. 'Mr' or 'Mrs'. + """ + _qname = GDATA_TEMPLATE % 'namePrefix' + + +class NameSuffix(atom.core.XmlElement): + """The gd:nameSuffix element. + + Honorific suffix, eg. 'san' or 'III'. + """ + _qname = GDATA_TEMPLATE % 'nameSuffix' + + +class FullName(atom.core.XmlElement): + """The gd:fullName element. + + Unstructured representation of the name. + """ + _qname = GDATA_TEMPLATE % 'fullName' + + +class Name(atom.core.XmlElement): + """The gd:name element. + + Allows storing person's name in a structured way. Consists of + given name, additional name, family name, prefix, suffix and full name. + """ + _qname = GDATA_TEMPLATE % 'name' + given_name = GivenName + additional_name = AdditionalName + family_name = FamilyName + name_prefix = NamePrefix + name_suffix = NameSuffix + full_name = FullName + + +class OrgDepartment(atom.core.XmlElement): + """The gd:orgDepartment element. + + Describes a department within an organization. Must appear within a + gd:organization element. + """ + _qname = GDATA_TEMPLATE % 'orgDepartment' + + +class OrgJobDescription(atom.core.XmlElement): + """The gd:orgJobDescription element. + + Describes a job within an organization. Must appear within a + gd:organization element. + """ + _qname = GDATA_TEMPLATE % 'orgJobDescription' + + +class OrgName(atom.core.XmlElement): + """The gd:orgName element. + + The name of the organization. Must appear within a gd:organization + element. + + Contains a Yomigana attribute (Japanese reading aid) for the + organization name. + """ + _qname = GDATA_TEMPLATE % 'orgName' + yomi = 'yomi' + + +class OrgSymbol(atom.core.XmlElement): + """The gd:orgSymbol element. + + Provides a symbol of an organization. Must appear within a + gd:organization element. + """ + _qname = GDATA_TEMPLATE % 'orgSymbol' + + +class OrgTitle(atom.core.XmlElement): + """The gd:orgTitle element. + + The title of a person within an organization. Must appear within a + gd:organization element. + """ + _qname = GDATA_TEMPLATE % 'orgTitle' + + +class Organization(atom.core.XmlElement): + """The gd:organization element. + + An organization, typically associated with a contact. + """ + _qname = GDATA_TEMPLATE % 'organization' + label = 'label' + primary = 'primary' + rel = 'rel' + department = OrgDepartment + job_description = OrgJobDescription + name = OrgName + symbol = OrgSymbol + title = OrgTitle + + +class When(atom.core.XmlElement): + """The gd:when element. + + Represents a period of time or an instant. + """ + _qname = GDATA_TEMPLATE % 'when' + end = 'endTime' + start = 'startTime' + value = 'valueString' + + +class OriginalEvent(atom.core.XmlElement): + """The gd:originalEvent element. + + Equivalent to the Recurrence ID property specified in section 4.8.4.4 + of RFC 2445. Appears in every instance of a recurring event, to identify + the original event. + + Contains a element specifying the original start time of the + instance that has become an exception. + """ + _qname = GDATA_TEMPLATE % 'originalEvent' + id = 'id' + href = 'href' + when = When + + +class PhoneNumber(atom.core.XmlElement): + """The gd:phoneNumber element. + + A phone number associated with the containing entity (which is usually + an entity representing a person or a location). + """ + _qname = GDATA_TEMPLATE % 'phoneNumber' + label = 'label' + rel = 'rel' + uri = 'uri' + primary = 'primary' + + +class PostalAddress(atom.core.XmlElement): + """The gd:postalAddress element.""" + _qname = GDATA_TEMPLATE % 'postalAddress' + label = 'label' + rel = 'rel' + uri = 'uri' + primary = 'primary' + + +class Rating(atom.core.XmlElement): + """The gd:rating element. + + Represents a numeric rating of the enclosing entity, such as a + comment. Each rating supplies its own scale, although it may be + normalized by a service; for example, some services might convert all + ratings to a scale from 1 to 5. + """ + _qname = GDATA_TEMPLATE % 'rating' + average = 'average' + max = 'max' + min = 'min' + num_raters = 'numRaters' + rel = 'rel' + value = 'value' + + +class Recurrence(atom.core.XmlElement): + """The gd:recurrence element. + + Represents the dates and times when a recurring event takes place. + + The string that defines the recurrence consists of a set of properties, + each of which is defined in the iCalendar standard (RFC 2445). + + Specifically, the string usually begins with a DTSTART property that + indicates the starting time of the first instance of the event, and + often a DTEND property or a DURATION property to indicate when the + first instance ends. Next come RRULE, RDATE, EXRULE, and/or EXDATE + properties, which collectively define a recurring event and its + exceptions (but see below). (See section 4.8.5 of RFC 2445 for more + information about these recurrence component properties.) Last comes a + VTIMEZONE component, providing detailed timezone rules for any timezone + ID mentioned in the preceding properties. + + Google services like Google Calendar don't generally generate EXRULE + and EXDATE properties to represent exceptions to recurring events; + instead, they generate elements. However, + Google services may include EXRULE and/or EXDATE properties anyway; + for example, users can import events and exceptions into Calendar, and + if those imported events contain EXRULE or EXDATE properties, then + Calendar will provide those properties when it sends a + element. + + Note the the use of means that you can't be + sure just from examining a element whether there are + any exceptions to the recurrence description. To ensure that you find + all exceptions, look for elements in the feed, + and use their elements to match them up with + elements. + """ + _qname = GDATA_TEMPLATE % 'recurrence' + + +class RecurrenceException(atom.core.XmlElement): + """The gd:recurrenceException element. + + Represents an event that's an exception to a recurring event-that is, + an instance of a recurring event in which one or more aspects of the + recurring event (such as attendance list, time, or location) have been + changed. + + Contains a element that specifies the original + recurring event that this event is an exception to. + + When you change an instance of a recurring event, that instance becomes + an exception. Depending on what change you made to it, the exception + behaves in either of two different ways when the original recurring + event is changed: + + - If you add, change, or remove comments, attendees, or attendee + responses, then the exception remains tied to the original event, and + changes to the original event also change the exception. + - If you make any other changes to the exception (such as changing the + time or location) then the instance becomes "specialized," which means + that it's no longer as tightly tied to the original event. If you + change the original event, specialized exceptions don't change. But + see below. + + For example, say you have a meeting every Tuesday and Thursday at + 2:00 p.m. If you change the attendance list for this Thursday's meeting + (but not for the regularly scheduled meeting), then it becomes an + exception. If you change the time for this Thursday's meeting (but not + for the regularly scheduled meeting), then it becomes specialized. + + Regardless of whether an exception is specialized or not, if you do + something that deletes the instance that the exception was derived from, + then the exception is deleted. Note that changing the day or time of a + recurring event deletes all instances, and creates new ones. + + For example, after you've specialized this Thursday's meeting, say you + change the recurring meeting to happen on Monday, Wednesday, and Friday. + That change deletes all of the recurring instances of the + Tuesday/Thursday meeting, including the specialized one. + + If a particular instance of a recurring event is deleted, then that + instance appears as a containing a + that has its set to + "http://schemas.google.com/g/2005#event.canceled". (For more + information about canceled events, see RFC 2445.) + """ + _qname = GDATA_TEMPLATE % 'recurrenceException' + specialized = 'specialized' + entry_link = EntryLink + original_event = OriginalEvent + + +class Reminder(atom.core.XmlElement): + """The gd:reminder element. + + A time interval, indicating how long before the containing entity's start + time or due time attribute a reminder should be issued. Alternatively, + may specify an absolute time at which a reminder should be issued. Also + specifies a notification method, indicating what medium the system + should use to remind the user. + """ + _qname = GDATA_TEMPLATE % 'reminder' + absolute_time = 'absoluteTime' + method = 'method' + days = 'days' + hours = 'hours' + minutes = 'minutes' + + +class Agent(atom.core.XmlElement): + """The gd:agent element. + + The agent who actually receives the mail. Used in work addresses. + Also for 'in care of' or 'c/o'. + """ + _qname = GDATA_TEMPLATE % 'agent' + + +class HouseName(atom.core.XmlElement): + """The gd:housename element. + + Used in places where houses or buildings have names (and not + necessarily numbers), eg. "The Pillars". + """ + _qname = GDATA_TEMPLATE % 'housename' + + +class Street(atom.core.XmlElement): + """The gd:street element. + + Can be street, avenue, road, etc. This element also includes the + house number and room/apartment/flat/floor number. + """ + _qname = GDATA_TEMPLATE % 'street' + + +class PoBox(atom.core.XmlElement): + """The gd:pobox element. + + Covers actual P.O. boxes, drawers, locked bags, etc. This is usually + but not always mutually exclusive with street. + """ + _qname = GDATA_TEMPLATE % 'pobox' + + +class Neighborhood(atom.core.XmlElement): + """The gd:neighborhood element. + + This is used to disambiguate a street address when a city contains more + than one street with the same name, or to specify a small place whose + mail is routed through a larger postal town. In China it could be a + county or a minor city. + """ + _qname = GDATA_TEMPLATE % 'neighborhood' + + +class City(atom.core.XmlElement): + """The gd:city element. + + Can be city, village, town, borough, etc. This is the postal town and + not necessarily the place of residence or place of business. + """ + _qname = GDATA_TEMPLATE % 'city' + + +class Subregion(atom.core.XmlElement): + """The gd:subregion element. + + Handles administrative districts such as U.S. or U.K. counties that are + not used for mail addressing purposes. Subregion is not intended for + delivery addresses. + """ + _qname = GDATA_TEMPLATE % 'subregion' + + +class Region(atom.core.XmlElement): + """The gd:region element. + + A state, province, county (in Ireland), Land (in Germany), + departement (in France), etc. + """ + _qname = GDATA_TEMPLATE % 'region' + + +class Postcode(atom.core.XmlElement): + """The gd:postcode element. + + Postal code. Usually country-wide, but sometimes specific to the + city (e.g. "2" in "Dublin 2, Ireland" addresses). + """ + _qname = GDATA_TEMPLATE % 'postcode' + + +class Country(atom.core.XmlElement): + """The gd:country element. + + The name or code of the country. + """ + _qname = GDATA_TEMPLATE % 'country' + + +class FormattedAddress(atom.core.XmlElement): + """The gd:formattedAddress element. + + The full, unstructured postal address. + """ + _qname = GDATA_TEMPLATE % 'formattedAddress' + + +class StructuredPostalAddress(atom.core.XmlElement): + """The gd:structuredPostalAddress element. + + Postal address split into components. It allows to store the address + in locale independent format. The fields can be interpreted and used + to generate formatted, locale dependent address. The following elements + reperesent parts of the address: agent, house name, street, P.O. box, + neighborhood, city, subregion, region, postal code, country. The + subregion element is not used for postal addresses, it is provided for + extended uses of addresses only. In order to store postal address in an + unstructured form formatted address field is provided. + """ + _qname = GDATA_TEMPLATE % 'structuredPostalAddress' + rel = 'rel' + mail_class = 'mailClass' + usage = 'usage' + label = 'label' + primary = 'primary' + agent = Agent + house_name = HouseName + street = Street + po_box = PoBox + neighborhood = Neighborhood + city = City + subregion = Subregion + region = Region + postcode = Postcode + country = Country + formatted_address = FormattedAddress + + +class Where(atom.core.XmlElement): + """The gd:where element. + + A place (such as an event location) associated with the containing + entity. The type of the association is determined by the rel attribute; + the details of the location are contained in an embedded or linked-to + Contact entry. + + A element is more general than a element. The + former identifies a place using a text description and/or a Contact + entry, while the latter identifies a place using a specific geographic + location. + """ + _qname = GDATA_TEMPLATE % 'where' + label = 'label' + rel = 'rel' + value = 'valueString' + entry_link = EntryLink + + +class AttendeeType(atom.core.XmlElement): + """The gd:attendeeType element.""" + _qname = GDATA_TEMPLATE % 'attendeeType' + value = 'value' + + +class AttendeeStatus(atom.core.XmlElement): + """The gd:attendeeStatus element.""" + _qname = GDATA_TEMPLATE % 'attendeeStatus' + value = 'value' + + +class Who(atom.core.XmlElement): + """The gd:who element. + + A person associated with the containing entity. The type of the + association is determined by the rel attribute; the details about the + person are contained in an embedded or linked-to Contact entry. + + The element can be used to specify email senders and + recipients, calendar event organizers, and so on. + """ + _qname = GDATA_TEMPLATE % 'who' + email = 'email' + rel = 'rel' + value = 'valueString' + attendee_status = AttendeeStatus + attendee_type = AttendeeType + entry_link = EntryLink + + +class Deleted(atom.core.XmlElement): + """gd:deleted when present, indicates the containing entry is deleted.""" + _qname = GD_TEMPLATE % 'deleted' + + +class Money(atom.core.XmlElement): + """Describes money""" + _qname = GD_TEMPLATE % 'money' + amount = 'amount' + currency_code = 'currencyCode' + + +class MediaSource(object): + """GData Entries can refer to media sources, so this class provides a + place to store references to these objects along with some metadata. + """ + + def __init__(self, file_handle=None, content_type=None, content_length=None, + file_path=None, file_name=None): + """Creates an object of type MediaSource. + + Args: + file_handle: A file handle pointing to the file to be encapsulated in the + MediaSource. + content_type: string The MIME type of the file. Required if a file_handle + is given. + content_length: int The size of the file. Required if a file_handle is + given. + file_path: string (optional) A full path name to the file. Used in + place of a file_handle. + file_name: string The name of the file without any path information. + Required if a file_handle is given. + """ + self.file_handle = file_handle + self.content_type = content_type + self.content_length = content_length + self.file_name = file_name + + if (file_handle is None and content_type is not None and + file_path is not None): + self.set_file_handle(file_path, content_type) + + def set_file_handle(self, file_name, content_type): + """A helper function which can create a file handle from a given filename + and set the content type and length all at once. + + Args: + file_name: string The path and file name to the file containing the media + content_type: string A MIME type representing the type of the media + """ + + self.file_handle = open(file_name, 'rb') + self.content_type = content_type + self.content_length = os.path.getsize(file_name) + self.file_name = os.path.basename(file_name) + + SetFileHandle = set_file_handle + + def modify_request(self, http_request): + http_request.add_body_part(self.file_handle, self.content_type, + self.content_length) + return http_request + + ModifyRequest = modify_request diff -Nru python-gdata-1.2.4/src/gdata/docs/client.py python-gdata-2.0.8/src/gdata/docs/client.py --- python-gdata-1.2.4/src/gdata/docs/client.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/docs/client.py 2010-01-29 00:59:20.000000000 +0000 @@ -0,0 +1,608 @@ +#!/usr/bin/python +# +# Copyright 2009 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""DocsClient extends gdata.client.GDClient to streamline DocList API calls.""" + + +__author__ = 'e.bidelman (Eric Bidelman)' + +import mimetypes +import urllib +import atom.data +import atom.http_core +import gdata.client +import gdata.docs.data +import gdata.gauth + + +# Feed URI templates +DOCLIST_FEED_URI = '/feeds/default/private/full/' +FOLDERS_FEED_TEMPLATE = DOCLIST_FEED_URI + '%s/contents' +ACL_FEED_TEMPLATE = DOCLIST_FEED_URI + '%s/acl' +REVISIONS_FEED_TEMPLATE = DOCLIST_FEED_URI + '%s/revisions' + + +class DocsClient(gdata.client.GDClient): + """Client extension for the Google Documents List API.""" + + host = 'docs.google.com' # default server for the API + api_version = '3.0' # default major version for the service. + auth_service = 'writely' + auth_scopes = gdata.gauth.AUTH_SCOPES['writely'] + + def __init__(self, auth_token=None, **kwargs): + """Constructs a new client for the DocList API. + + Args: + auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or + OAuthToken which authorizes this client to edit the user's data. + kwargs: The other parameters to pass to gdata.client.GDClient constructor. + """ + gdata.client.GDClient.__init__(self, auth_token=auth_token, **kwargs) + + def get_file_content(self, uri, auth_token=None, **kwargs): + """Fetches the file content from the specified uri. + + This method is useful for downloading/exporting a file within enviornments + like Google App Engine, where the user does not have the ability to write + the file to a local disk. + + Args: + uri: str The full URL to fetch the file contents from. + auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or + OAuthToken which authorizes this client to edit the user's data. + kwargs: Other parameters to pass to self.request(). + + Returns: + The binary file content. + + Raises: + gdata.client.RequestError: on error response from server. + """ + server_response = self.request('GET', uri, auth_token=auth_token, **kwargs) + if server_response.status != 200: + raise gdata.client.RequestError, {'status': server_response.status, + 'reason': server_response.reason, + 'body': server_response.read()} + return server_response.read() + + GetFileContent = get_file_content + + def _download_file(self, uri, file_path, auth_token=None, **kwargs): + """Downloads a file to disk from the specified URI. + + Note: to download a file in memory, use the GetFileContent() method. + + Args: + uri: str The full URL to download the file from. + file_path: str The full path to save the file to. + auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or + OAuthToken which authorizes this client to edit the user's data. + kwargs: Other parameters to pass to self.get_file_content(). + + Raises: + gdata.client.RequestError: on error response from server. + """ + f = open(file_path, 'wb') + try: + f.write(self.get_file_content(uri, auth_token=auth_token, **kwargs)) + except gdata.client.RequestError, e: + f.close() + raise e + f.flush() + f.close() + + _DownloadFile = _download_file + + def get_doclist(self, uri=None, limit=None, auth_token=None, **kwargs): + """Retrieves the main doclist feed containing the user's items. + + Args: + uri: str (optional) A URI to query the doclist feed. + limit: int (optional) A maximum cap for the number of results to + return in the feed. By default, the API returns a maximum of 100 + per page. Thus, if you set limit=5000, you will get <= 5000 + documents (guarenteed no more than 5000), and will need to follow the + feed's next links (feed.GetNextLink()) to the rest. See + get_everything(). Similarly, if you set limit=50, only <= 50 + documents are returned. Note: if the max-results parameter is set in + the uri parameter, it is chosen over a value set for limit. + auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or + OAuthToken which authorizes this client to edit the user's data. + kwargs: Other parameters to pass to self.get_feed(). + + Returns: + gdata.docs.data.DocList feed. + """ + if uri is None: + uri = DOCLIST_FEED_URI + + if isinstance(uri, (str, unicode)): + uri = atom.http_core.Uri.parse_uri(uri) + + # Add max-results param if it wasn't included in the uri. + if limit is not None and not 'max-results' in uri.query: + uri.query['max-results'] = limit + + return self.get_feed(uri, desired_class=gdata.docs.data.DocList, + auth_token=auth_token, **kwargs) + + GetDocList = get_doclist + + def get_doc(self, resource_id, etag=None, auth_token=None, **kwargs): + """Retrieves a particular document given by its resource id. + + Args: + resource_id: str The document/item's resource id. Example spreadsheet: + 'spreadsheet%3A0A1234567890'. + etag: str (optional) The document/item's etag value to be used in a + conditional GET. See http://code.google.com/apis/documents/docs/3.0/ + developers_guide_protocol.html#RetrievingCached. + auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or + OAuthToken which authorizes this client to edit the user's data. + kwargs: Other parameters to pass to self.get_entry(). + + Returns: + A gdata.docs.data.DocsEntry object representing the retrieved entry. + + Raises: + ValueError if the resource_id is not a valid format. + """ + match = gdata.docs.data.RESOURCE_ID_PATTERN.match(resource_id) + if match is None: + raise ValueError, 'Invalid resource id: %s' % resource_id + return self.get_entry( + DOCLIST_FEED_URI + resource_id, etag=etag, + desired_class=gdata.docs.data.DocsEntry, + auth_token=auth_token, **kwargs) + + GetDoc = get_doc + + def get_everything(self, uri=None, auth_token=None, **kwargs): + """Retrieves the user's entire doc list. + + The method makes multiple HTTP requests (by following the feed's next links) + in order to fetch the user's entire document list. + + Args: + uri: str (optional) A URI to query the doclist feed with. + auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or + OAuthToken which authorizes this client to edit the user's data. + kwargs: Other parameters to pass to self.GetDocList(). + + Returns: + A list of gdata.docs.data.DocsEntry objects representing the retrieved + entries. + """ + if uri is None: + uri = DOCLIST_FEED_URI + + feed = self.GetDocList(uri=uri, auth_token=auth_token, **kwargs) + entries = feed.entry + + while feed.GetNextLink() is not None: + feed = self.GetDocList( + feed.GetNextLink().href, auth_token=auth_token, **kwargs) + entries.extend(feed.entry) + + return entries + + GetEverything = get_everything + + def get_acl_permissions(self, resource_id, auth_token=None, **kwargs): + """Retrieves a the ACL sharing permissions for a document. + + Args: + resource_id: str The document/item's resource id. Example for pdf: + 'pdf%3A0A1234567890'. + auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or + OAuthToken which authorizes this client to edit the user's data. + kwargs: Other parameters to pass to self.get_feed(). + + Returns: + A gdata.docs.data.AclFeed object representing the document's ACL entries. + + Raises: + ValueError if the resource_id is not a valid format. + """ + match = gdata.docs.data.RESOURCE_ID_PATTERN.match(resource_id) + if match is None: + raise ValueError, 'Invalid resource id: %s' % resource_id + + return self.get_feed( + ACL_FEED_TEMPLATE % resource_id, desired_class=gdata.docs.data.AclFeed, + auth_token=auth_token, **kwargs) + + GetAclPermissions = get_acl_permissions + + def get_revisions(self, resource_id, auth_token=None, **kwargs): + """Retrieves the revision history for a document. + + Args: + resource_id: str The document/item's resource id. Example for pdf: + 'pdf%3A0A1234567890'. + auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or + OAuthToken which authorizes this client to edit the user's data. + kwargs: Other parameters to pass to self.get_feed(). + + Returns: + A gdata.docs.data.RevisionFeed representing the document's revisions. + + Raises: + ValueError if the resource_id is not a valid format. + """ + match = gdata.docs.data.RESOURCE_ID_PATTERN.match(resource_id) + if match is None: + raise ValueError, 'Invalid resource id: %s' % resource_id + + return self.get_feed( + REVISIONS_FEED_TEMPLATE % resource_id, + desired_class=gdata.docs.data.RevisionFeed, auth_token=auth_token, + **kwargs) + + GetRevisions = get_revisions + + def create(self, doc_type, title, folder_or_id=None, writers_can_invite=None, + auth_token=None, **kwargs): + """Creates a new item in the user's doclist. + + Args: + doc_type: str The type of object to create. For example: 'document', + 'spreadsheet', 'folder', 'presentation'. + title: str A title for the document. + folder_or_id: gdata.docs.data.DocsEntry or str (optional) Folder entry or + the resouce id of a folder to create the object under. Note: A valid + resource id for a folder is of the form: folder%3Afolder_id. + writers_can_invite: bool (optional) False prevents collaborators from + being able to invite others to edit or view the document. + auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or + OAuthToken which authorizes this client to edit the user's data. + kwargs: Other parameters to pass to self.post(). + + Returns: + gdata.docs.data.DocsEntry containing information newly created item. + """ + entry = gdata.docs.data.DocsEntry(title=atom.data.Title(text=title)) + entry.category.append(gdata.docs.data.make_kind_category(doc_type)) + + if isinstance(writers_can_invite, gdata.docs.data.WritersCanInvite): + entry.writers_can_invite = writers_can_invite + elif isinstance(writers_can_invite, bool): + entry.writers_can_invite = gdata.docs.data.WritersCanInvite( + value=str(writers_can_invite).lower()) + + uri = DOCLIST_FEED_URI + + if folder_or_id is not None: + if isinstance(folder_or_id, gdata.docs.data.DocsEntry): + # Verify that we're uploading the resource into to a folder. + if folder_or_id.get_document_type() == gdata.docs.data.FOLDER_LABEL: + uri = folder_or_id.content.src + else: + raise gdata.client.Error, 'Trying to upload item to a non-folder.' + else: + uri = FOLDERS_FEED_TEMPLATE % folder_or_id + + return self.post(entry, uri, auth_token=auth_token, **kwargs) + + Create = create + + def copy(self, source_entry, title, auth_token=None, **kwargs): + """Copies a native Google document, spreadsheet, or presentation. + + Note: arbitrary file types and PDFs do not support this feature. + + Args: + source_entry: gdata.docs.data.DocsEntry An object representing the source + document/folder. + title: str A title for the new document. + auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or + OAuthToken which authorizes this client to edit the user's data. + kwargs: Other parameters to pass to self.post(). + + Returns: + A gdata.docs.data.DocsEntry of the duplicated document. + """ + entry = gdata.docs.data.DocsEntry( + title=atom.data.Title(text=title), + id=atom.data.Id(text=source_entry.GetSelfLink().href)) + return self.post(entry, DOCLIST_FEED_URI, auth_token=auth_token, **kwargs) + + Copy = copy + + def move(self, source_entry, folder_entry=None, + keep_in_folders=False, auth_token=None, **kwargs): + """Moves an item into a different folder (or to the root document list). + + Args: + source_entry: gdata.docs.data.DocsEntry An object representing the source + document/folder. + folder_entry: gdata.docs.data.DocsEntry (optional) An object representing + the destination folder. If None, set keep_in_folders to + True to remove the item from all parent folders. + keep_in_folders: boolean (optional) If True, the source entry + is not removed from any existing parent folders it is in. + auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or + OAuthToken which authorizes this client to edit the user's data. + kwargs: Other parameters to pass to self.post(). + + Returns: + A gdata.docs.data.DocsEntry of the moved entry or True if just moving the + item out of all folders (e.g. Move(source_entry)). + """ + entry = gdata.docs.data.DocsEntry(id=source_entry.id) + + # Remove the item from any folders it is already in. + if not keep_in_folders: + for folder in source_entry.InFolders(): + self.delete( + '%s/contents/%s' % (folder.href, source_entry.resource_id.text), + force=True) + + # If we're moving the resource into a folder, verify it is a folder entry. + if folder_entry is not None: + if folder_entry.get_document_type() == gdata.docs.data.FOLDER_LABEL: + return self.post(entry, folder_entry.content.src, + auth_token=auth_token, **kwargs) + else: + raise gdata.client.Error, 'Trying to move item into a non-folder.' + + return True + + Move = move + + def upload(self, media, title, folder_or_uri=None, content_type=None, + auth_token=None, **kwargs): + """Uploads a file to Google Docs. + + Args: + media: A gdata.data.MediaSource object containing the file to be + uploaded or a string of the filepath. + title: str The title of the document on the server after being + uploaded. + folder_or_uri: gdata.docs.data.DocsEntry or str (optional) An object with + a link to the folder or the uri to upload the file to. + Note: A valid uri for a folder is of the form: + /feeds/default/private/full/folder%3Afolder_id/contents + content_type: str (optional) The file's mimetype. If not provided, the + one in the media source object is used or the mimetype is inferred + from the filename (if media is a string). When media is a filename, + it is always recommended to pass in a content type. + auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or + OAuthToken which authorizes this client to edit the user's data. + kwargs: Other parameters to pass to self.post(). + + Returns: + A gdata.docs.data.DocsEntry containing information about uploaded doc. + """ + uri = None + if folder_or_uri is not None: + if isinstance(folder_or_uri, gdata.docs.data.DocsEntry): + # Verify that we're uploading the resource into to a folder. + if folder_or_uri.get_document_type() == gdata.docs.data.FOLDER_LABEL: + uri = folder_or_uri.content.src + else: + raise gdata.client.Error, 'Trying to upload item to a non-folder.' + else: + uri = folder_or_uri + else: + uri = DOCLIST_FEED_URI + + # Create media source if media is a filepath. + if isinstance(media, (str, unicode)): + mimetype = mimetypes.guess_type(media)[0] + if mimetype is None and content_type is None: + raise ValueError, ("Unknown mimetype. Please pass in the file's " + "content_type") + else: + media = gdata.data.MediaSource(file_path=media, + content_type=content_type) + + entry = gdata.docs.data.DocsEntry(title=atom.data.Title(text=title)) + + return self.post(entry, uri, media_source=media, + desired_class=gdata.docs.data.DocsEntry, + auth_token=auth_token, **kwargs) + + Upload = upload + + def download(self, entry_or_id_or_url, file_path, extra_params=None, + auth_token=None, **kwargs): + """Downloads a file from the Document List to local disk. + + Note: to download a file in memory, use the GetFileContent() method. + + Args: + entry_or_id_or_url: gdata.docs.data.DocsEntry or string representing a + resource id or URL to download the document from (such as the content + src link). + file_path: str The full path to save the file to. + extra_params: dict (optional) A map of any further parameters to control + how the document is downloaded/exported. For example, exporting a + spreadsheet as a .csv: extra_params={'gid': 0, 'exportFormat': 'csv'} + auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or + OAuthToken which authorizes this client to edit the user's data. + kwargs: Other parameters to pass to self._download_file(). + + Raises: + gdata.client.RequestError if the download URL is malformed or the server's + response was not successful. + ValueError if entry_or_id_or_url was a resource id for a filetype + in which the download link cannot be manually constructed (e.g. pdf). + """ + if isinstance(entry_or_id_or_url, gdata.docs.data.DocsEntry): + url = entry_or_id_or_url.content.src + else: + if gdata.docs.data.RESOURCE_ID_PATTERN.match(entry_or_id_or_url): + url = gdata.docs.data.make_content_link_from_resource_id( + entry_or_id_or_url) + else: + url = entry_or_id_or_url + + if extra_params is not None: + if 'exportFormat' in extra_params and url.find('/Export?') == -1: + raise gdata.client.Error, ('This entry type cannot be exported ' + 'as a different format.') + + if 'gid' in extra_params and url.find('spreadsheets') == -1: + raise gdata.client.Error, 'gid param is not valid for this doc type.' + + url += '&' + urllib.urlencode(extra_params) + + self._download_file(url, file_path, auth_token=auth_token, **kwargs) + + Download = download + + def export(self, entry_or_id_or_url, file_path, gid=None, auth_token=None, + **kwargs): + """Exports a document from the Document List in a different format. + + Args: + entry_or_id_or_url: gdata.docs.data.DocsEntry or string representing a + resource id or URL to download the document from (such as the content + src link). + file_path: str The full path to save the file to. The export + format is inferred from the the file extension. + gid: str (optional) grid id for downloading a single grid of a + spreadsheet. The param should only be used for .csv and .tsv + spreadsheet exports. + auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or + OAuthToken which authorizes this client to edit the user's data. + kwargs: Other parameters to pass to self.download(). + + Raises: + gdata.client.RequestError if the download URL is malformed or the server's + response was not successful. + """ + extra_params = {} + + match = gdata.docs.data.FILE_EXT_PATTERN.match(file_path) + if match: + extra_params['exportFormat'] = match.group(1) + + if gid is not None: + extra_params['gid'] = gid + + self.download(entry_or_id_or_url, file_path, extra_params, + auth_token=auth_token, **kwargs) + + Export = export + + +class DocsQuery(gdata.client.Query): + + def __init__(self, title=None, title_exact=None, opened_min=None, + opened_max=None, edited_min=None, edited_max=None, owner=None, + writer=None, reader=None, show_folders=None, + show_deleted=None, ocr=None, target_language=None, + source_language=None, convert=None, **kwargs): + """Constructs a query URL for the Google Documents List API. + + Args: + title: str (optional) Specifies the search terms for the title of a + document. This parameter used without title_exact will only + submit partial queries, not exact queries. + title_exact: str (optional) Meaningless without title. Possible values + are 'true' and 'false'. Note: Matches are case-insensitive. + opened_min: str (optional) Lower bound on the last time a document was + opened by the current user. Use the RFC 3339 timestamp + format. For example: opened_min='2005-08-09T09:57:00-08:00'. + opened_max: str (optional) Upper bound on the last time a document was + opened by the current user. (See also opened_min.) + edited_min: str (optional) Lower bound on the last time a document was + edited by the current user. This value corresponds to the + edited.text value in the doc's entry object, which + represents changes to the document's content or metadata. + Use the RFC 3339 timestamp format. For example: + edited_min='2005-08-09T09:57:00-08:00' + edited_max: str (optional) Upper bound on the last time a document was + edited by the user. (See also edited_min.) + owner: str (optional) Searches for documents with a specific owner. Use + the email address of the owner. For example: + owner='user@gmail.com' + writer: str (optional) Searches for documents which can be written to + by specific users. Use a single email address or a comma + separated list of email addresses. For example: + writer='user1@gmail.com,user@example.com' + reader: str (optional) Searches for documents which can be read by + specific users. (See also writer.) + show_folders: str (optional) Specifies whether the query should return + folders as well as documents. Possible values are 'true' + and 'false'. Default is false. + show_deleted: str (optional) Specifies whether the query should return + documents which are in the trash as well as other + documents. Possible values are 'true' and 'false'. + Default is false. + ocr: str (optional) Specifies whether to attempt OCR on a .jpg, .png, or + .gif upload. Possible values are 'true' and 'false'. Default is + false. See OCR in the Protocol Guide: + http://code.google.com/apis/documents/docs/3.0/developers_guide_protocol.html#OCR + target_language: str (optional) Specifies the language to translate a + document into. See Document Translation in the Protocol + Guide for a table of possible values: + http://code.google.com/apis/documents/docs/3.0/developers_guide_protocol.html#DocumentTranslation + source_language: str (optional) Specifies the source language of the + original document. Optional when using the translation + service. If not provided, Google will attempt to + auto-detect the source language. See Document + Translation in the Protocol Guide for a table of + possible values (link in target_language). + convert: str (optional) Used when uploading arbitrary file types to + specity if document-type uploads should convert to a native + Google Docs format. Possible values are 'true' and 'false'. + The default is 'true'. + """ + gdata.client.Query.__init__(self, **kwargs) + self.convert = convert + self.title = title + self.title_exact = title_exact + self.opened_min = opened_min + self.opened_max = opened_max + self.edited_min = edited_min + self.edited_max = edited_max + self.owner = owner + self.writer = writer + self.reader = reader + self.show_folders = show_folders + self.show_deleted = show_deleted + self.ocr = ocr + self.target_language = target_language + self.source_language = source_language + + def modify_request(self, http_request): + gdata.client._add_query_param('convert', self.convert, http_request) + gdata.client._add_query_param('title', self.title, http_request) + gdata.client._add_query_param('title-exact', self.title_exact, + http_request) + gdata.client._add_query_param('opened-min', self.opened_min, http_request) + gdata.client._add_query_param('opened-max', self.opened_max, http_request) + gdata.client._add_query_param('edited-min', self.edited_min, http_request) + gdata.client._add_query_param('edited-max', self.edited_max, http_request) + gdata.client._add_query_param('owner', self.owner, http_request) + gdata.client._add_query_param('writer', self.writer, http_request) + gdata.client._add_query_param('reader', self.reader, http_request) + gdata.client._add_query_param('showfolders', self.show_folders, + http_request) + gdata.client._add_query_param('showdeleted', self.show_deleted, + http_request) + gdata.client._add_query_param('ocr', self.ocr, http_request) + gdata.client._add_query_param('targetLanguage', self.target_language, + http_request) + gdata.client._add_query_param('sourceLanguage', self.source_language, + http_request) + gdata.client.Query.modify_request(self, http_request) + + ModifyRequest = modify_request diff -Nru python-gdata-1.2.4/src/gdata/docs/data.py python-gdata-2.0.8/src/gdata/docs/data.py --- python-gdata-1.2.4/src/gdata/docs/data.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/docs/data.py 2010-01-29 00:59:20.000000000 +0000 @@ -0,0 +1,280 @@ +#!/usr/bin/python +# +# Copyright 2009 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Data model classes for parsing and generating XML for the DocList Data API""" + +__author__ = 'e.bidelman (Eric Bidelman)' + + +import re +import atom.core +import atom.data +import gdata.acl.data +import gdata.data + +DOCUMENTS_NS = 'http://schemas.google.com/docs/2007' +DOCUMENTS_TEMPLATE = '{http://schemas.google.com/docs/2007}%s' +ACL_FEEDLINK_REL = 'http://schemas.google.com/acl/2007#accessControlList' +REVISION_FEEDLINK_REL = DOCUMENTS_NS + '/revisions' + +# XML Namespaces used in Google Documents entities. +DATA_KIND_SCHEME = 'http://schemas.google.com/g/2005#kind' +DOCUMENT_LABEL = 'document' +SPREADSHEET_LABEL = 'spreadsheet' +PRESENTATION_LABEL = 'presentation' +FOLDER_LABEL = 'folder' +PDF_LABEL = 'pdf' + +LABEL_SCHEME = 'http://schemas.google.com/g/2005/labels' +STARRED_LABEL_TERM = LABEL_SCHEME + '#starred' +TRASHED_LABEL_TERM = LABEL_SCHEME + '#trashed' +HIDDEN_LABEL_TERM = LABEL_SCHEME + '#hidden' +MINE_LABEL_TERM = LABEL_SCHEME + '#mine' +PRIVATE_LABEL_TERM = LABEL_SCHEME + '#private' +SHARED_WITH_DOMAIN_LABEL_TERM = LABEL_SCHEME + '#shared-with-domain' +VIEWED_LABEL_TERM = LABEL_SCHEME + '#viewed' + +DOCS_PARENT_LINK_REL = DOCUMENTS_NS + '#parent' +DOCS_PUBLISH_LINK_REL = DOCUMENTS_NS + '#publish' + +FILE_EXT_PATTERN = re.compile('.*\.([a-zA-Z]{3,}$)') +RESOURCE_ID_PATTERN = re.compile('^([a-z]*)(:|%3A)([\w-]*)$') + +# File extension/mimetype pairs of common format. +MIMETYPES = { + 'CSV': 'text/csv', + 'TSV': 'text/tab-separated-values', + 'TAB': 'text/tab-separated-values', + 'DOC': 'application/msword', + 'DOCX': ('application/vnd.openxmlformats-officedocument.' + 'wordprocessingml.document'), + 'ODS': 'application/x-vnd.oasis.opendocument.spreadsheet', + 'ODT': 'application/vnd.oasis.opendocument.text', + 'RTF': 'application/rtf', + 'SXW': 'application/vnd.sun.xml.writer', + 'TXT': 'text/plain', + 'XLS': 'application/vnd.ms-excel', + 'XLSX': 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet', + 'PDF': 'application/pdf', + 'PNG': 'image/png', + 'PPT': 'application/vnd.ms-powerpoint', + 'PPS': 'application/vnd.ms-powerpoint', + 'HTM': 'text/html', + 'HTML': 'text/html', + 'ZIP': 'application/zip', + 'SWF': 'application/x-shockwave-flash' + } + + +def make_kind_category(label): + """Builds the appropriate atom.data.Category for the label passed in. + + Args: + label: str The value for the category entry. + + Returns: + An atom.data.Category or None if label is None. + """ + if label is None: + return None + + return atom.data.Category( + scheme=DATA_KIND_SCHEME, term='%s#%s' % (DOCUMENTS_NS, label), label=label) + +MakeKindCategory = make_kind_category + +def make_content_link_from_resource_id(resource_id): + """Constructs export URL for a given resource. + + Args: + resource_id: str The document/item's resource id. Example presentation: + 'presentation%3A0A1234567890'. + + Raises: + gdata.client.ValueError if the resource_id is not a valid format. + """ + match = RESOURCE_ID_PATTERN.match(resource_id) + + if match: + label = match.group(1) + doc_id = match.group(3) + if label == DOCUMENT_LABEL: + return '/feeds/download/documents/Export?docId=%s' % doc_id + if label == PRESENTATION_LABEL: + return '/feeds/download/presentations/Export?docId=%s' % doc_id + if label == SPREADSHEET_LABEL: + return ('http://spreadsheets.google.com/feeds/download/spreadsheets/' + 'Export?key=%s' % doc_id) + raise ValueError, ('Invalid resource id: %s, or manually creating the ' + 'download url for this type of doc is not possible' + % resource_id) + +MakeContentLinkFromResourceId = make_content_link_from_resource_id + + +class ResourceId(atom.core.XmlElement): + """The DocList gd:resourceId element.""" + _qname = gdata.data.GDATA_TEMPLATE % 'resourceId' + + +class LastModifiedBy(atom.data.Person): + """The DocList gd:lastModifiedBy element.""" + _qname = gdata.data.GDATA_TEMPLATE % 'lastModifiedBy' + + +class LastViewed(atom.data.Person): + """The DocList gd:lastViewed element.""" + _qname = gdata.data.GDATA_TEMPLATE % 'lastViewed' + + +class WritersCanInvite(atom.core.XmlElement): + """The DocList docs:writersCanInvite element.""" + _qname = DOCUMENTS_TEMPLATE % 'writersCanInvite' + value = 'value' + + +class QuotaBytesUsed(atom.core.XmlElement): + """The DocList gd:quotaBytesUsed element.""" + _qname = gdata.data.GDATA_TEMPLATE % 'quotaBytesUsed' + + +class Publish(atom.core.XmlElement): + """The DocList docs:publish element.""" + _qname = DOCUMENTS_TEMPLATE % 'publish' + value = 'value' + + +class PublishAuto(atom.core.XmlElement): + """The DocList docs:publishAuto element.""" + _qname = DOCUMENTS_TEMPLATE % 'publishAuto' + value = 'value' + + +class PublishOutsideDomain(atom.core.XmlElement): + """The DocList docs:publishOutsideDomain element.""" + _qname = DOCUMENTS_TEMPLATE % 'publishOutsideDomain' + value = 'value' + + +class DocsEntry(gdata.data.GDEntry): + """A DocList version of an Atom Entry.""" + + last_viewed = LastViewed + last_modified_by = LastModifiedBy + resource_id = ResourceId + writers_can_invite = WritersCanInvite + quota_bytes_used = QuotaBytesUsed + feed_link = [gdata.data.FeedLink] + + def get_document_type(self): + """Extracts the type of document this DocsEntry is. + + This method returns the type of document the DocsEntry represents. Possible + values are document, presentation, spreadsheet, folder, or pdf. + + Returns: + A string representing the type of document. + """ + if self.category: + for category in self.category: + if category.scheme == DATA_KIND_SCHEME: + return category.label + else: + return None + + GetDocumentType = get_document_type + + def get_acl_feed_link(self): + """Extracts the DocsEntry's ACL feed . + + Returns: + A gdata.data.FeedLink object. + """ + for feed_link in self.feed_link: + if feed_link.rel == ACL_FEEDLINK_REL: + return feed_link + return None + + GetAclFeedLink = get_acl_feed_link + + def get_revisions_feed_link(self): + """Extracts the DocsEntry's revisions feed . + + Returns: + A gdata.data.FeedLink object. + """ + for feed_link in self.feed_link: + if feed_link.rel == REVISION_FEEDLINK_REL: + return feed_link + return None + + GetRevisionsFeedLink = get_revisions_feed_link + + def in_folders(self): + """Returns the parents link(s) (folders) of this entry.""" + links = [] + for link in self.link: + if link.rel == DOCS_PARENT_LINK_REL and link.href: + links.append(link) + return links + + InFolders = in_folders + + +class Acl(gdata.acl.data.AclEntry): + """A document ACL entry.""" + + +class DocList(gdata.data.GDFeed): + """The main DocList feed containing a list of Google Documents.""" + entry = [DocsEntry] + + +class AclFeed(gdata.acl.data.AclFeed): + """A DocList ACL feed.""" + entry = [Acl] + + +class Revision(gdata.data.GDEntry): + """A document Revision entry.""" + publish = Publish + publish_auto = PublishAuto + publish_outside_domain = PublishOutsideDomain + + def find_publish_link(self): + """Get the link that points to the published document on the web. + + Returns: + A str for the URL in the link with a rel ending in #publish. + """ + return self.find_url(DOCS_PUBLISH_LINK_REL) + + FindPublishLink = find_publish_link + + def get_publish_link(self): + """Get the link that points to the published document on the web. + + Returns: + A gdata.data.Link for the link with a rel ending in #publish. + """ + return self.get_link(DOCS_PUBLISH_LINK_REL) + + GetPublishLink = get_publish_link + + +class RevisionFeed(gdata.data.GDFeed): + """A DocList Revision feed.""" + entry = [Revision] diff -Nru python-gdata-1.2.4/src/gdata/docs/__init__.py python-gdata-2.0.8/src/gdata/docs/__init__.py --- python-gdata-1.2.4/src/gdata/docs/__init__.py 2007-12-06 22:23:55.000000000 +0000 +++ python-gdata-2.0.8/src/gdata/docs/__init__.py 2009-04-18 01:16:48.000000000 +0100 @@ -1,6 +1,6 @@ #!/usr/bin/python # -# Copyright (C) 2006 Google Inc. +# Copyright 2009 Google Inc. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -16,19 +16,166 @@ """Contains extensions to Atom objects used with Google Documents.""" -__author__ = 'api.jfisher (Jeff Fisher)' +__author__ = ('api.jfisher (Jeff Fisher), ' + 'api.eric@google.com (Eric Bidelman)') import atom import gdata +DOCUMENTS_NAMESPACE = 'http://schemas.google.com/docs/2007' + + +class Scope(atom.AtomBase): + """The DocList ACL scope element""" + + _tag = 'scope' + _namespace = gdata.GACL_NAMESPACE + _children = atom.AtomBase._children.copy() + _attributes = atom.AtomBase._attributes.copy() + _attributes['value'] = 'value' + _attributes['type'] = 'type' + + def __init__(self, value=None, type=None, extension_elements=None, + extension_attributes=None, text=None): + self.value = value + self.type = type + self.text = text + self.extension_elements = extension_elements or [] + self.extension_attributes = extension_attributes or {} + + +class Role(atom.AtomBase): + """The DocList ACL role element""" + + _tag = 'role' + _namespace = gdata.GACL_NAMESPACE + _children = atom.AtomBase._children.copy() + _attributes = atom.AtomBase._attributes.copy() + _attributes['value'] = 'value' + + def __init__(self, value=None, extension_elements=None, + extension_attributes=None, text=None): + self.value = value + self.text = text + self.extension_elements = extension_elements or [] + self.extension_attributes = extension_attributes or {} + + +class FeedLink(atom.AtomBase): + """The DocList gd:feedLink element""" + + _tag = 'feedLink' + _namespace = gdata.GDATA_NAMESPACE + _attributes = atom.AtomBase._attributes.copy() + _attributes['rel'] = 'rel' + _attributes['href'] = 'href' + + def __init__(self, href=None, rel=None, text=None, extension_elements=None, + extension_attributes=None): + self.href = href + self.rel = rel + atom.AtomBase.__init__(self, extension_elements=extension_elements, + extension_attributes=extension_attributes, text=text) + + +class ResourceId(atom.AtomBase): + """The DocList gd:resourceId element""" + + _tag = 'resourceId' + _namespace = gdata.GDATA_NAMESPACE + _children = atom.AtomBase._children.copy() + _attributes = atom.AtomBase._attributes.copy() + _attributes['value'] = 'value' + + def __init__(self, value=None, extension_elements=None, + extension_attributes=None, text=None): + self.value = value + self.text = text + self.extension_elements = extension_elements or [] + self.extension_attributes = extension_attributes or {} + + +class LastModifiedBy(atom.Person): + """The DocList gd:lastModifiedBy element""" + + _tag = 'lastModifiedBy' + _namespace = gdata.GDATA_NAMESPACE + + +class LastViewed(atom.Person): + """The DocList gd:lastViewed element""" + + _tag = 'lastViewed' + _namespace = gdata.GDATA_NAMESPACE + + +class WritersCanInvite(atom.AtomBase): + """The DocList docs:writersCanInvite element""" + + _tag = 'writersCanInvite' + _namespace = DOCUMENTS_NAMESPACE + _attributes = atom.AtomBase._attributes.copy() + _attributes['value'] = 'value' + + class DocumentListEntry(gdata.GDataEntry): """The Google Documents version of an Atom Entry""" - - _tag = 'entry' + + _tag = gdata.GDataEntry._tag _namespace = atom.ATOM_NAMESPACE _children = gdata.GDataEntry._children.copy() _attributes = gdata.GDataEntry._attributes.copy() + _children['{%s}feedLink' % gdata.GDATA_NAMESPACE] = ('feedLink', FeedLink) + _children['{%s}resourceId' % gdata.GDATA_NAMESPACE] = ('resourceId', + ResourceId) + _children['{%s}lastModifiedBy' % gdata.GDATA_NAMESPACE] = ('lastModifiedBy', + LastModifiedBy) + _children['{%s}lastViewed' % gdata.GDATA_NAMESPACE] = ('lastViewed', + LastViewed) + _children['{%s}writersCanInvite' % DOCUMENTS_NAMESPACE] = ( + 'writersCanInvite', WritersCanInvite) + + def __init__(self, resourceId=None, feedLink=None, lastViewed=None, + lastModifiedBy=None, writersCanInvite=None, author=None, + category=None, content=None, atom_id=None, link=None, + published=None, title=None, updated=None, text=None, + extension_elements=None, extension_attributes=None): + self.feedLink = feedLink + self.lastViewed = lastViewed + self.lastModifiedBy = lastModifiedBy + self.resourceId = resourceId + self.writersCanInvite = writersCanInvite + gdata.GDataEntry.__init__( + self, author=author, category=category, content=content, + atom_id=atom_id, link=link, published=published, title=title, + updated=updated, extension_elements=extension_elements, + extension_attributes=extension_attributes, text=text) + + def GetAclLink(self): + """Extracts the DocListEntry's . + + Returns: + A FeedLink object. + """ + return self.feedLink + + def GetDocumentType(self): + """Extracts the type of document from the DocListEntry. + + This method returns the type of document the DocListEntry + represents. Possible values are document, presentation, + spreadsheet, folder, or pdf. + + Returns: + A string representing the type of document. + """ + if self.category: + for category in self.category: + if category.scheme == gdata.GDATA_NAMESPACE + '#kind': + return category.label + else: + return None def DocumentListEntryFromString(xml_string): @@ -43,14 +190,47 @@ return atom.CreateClassFromXMLString(DocumentListEntry, xml_string) +class DocumentListAclEntry(gdata.GDataEntry): + """A DocList ACL Entry flavor of an Atom Entry""" + + _tag = gdata.GDataEntry._tag + _namespace = gdata.GDataEntry._namespace + _children = gdata.GDataEntry._children.copy() + _attributes = gdata.GDataEntry._attributes.copy() + _children['{%s}scope' % gdata.GACL_NAMESPACE] = ('scope', Scope) + _children['{%s}role' % gdata.GACL_NAMESPACE] = ('role', Role) + + def __init__(self, category=None, atom_id=None, link=None, + title=None, updated=None, scope=None, role=None, + extension_elements=None, extension_attributes=None, text=None): + gdata.GDataEntry.__init__(self, author=None, category=category, + content=None, atom_id=atom_id, link=link, + published=None, title=title, + updated=updated, text=None) + self.scope = scope + self.role = role + + +def DocumentListAclEntryFromString(xml_string): + """Converts an XML string into a DocumentListAclEntry object. + + Args: + xml_string: string The XML describing a Document List ACL feed entry. + + Returns: + A DocumentListAclEntry object corresponding to the given XML. + """ + return atom.CreateClassFromXMLString(DocumentListAclEntry, xml_string) + + class DocumentListFeed(gdata.GDataFeed): """A feed containing a list of Google Documents Items""" - - _tag = 'feed' + + _tag = gdata.GDataFeed._tag _namespace = atom.ATOM_NAMESPACE _children = gdata.GDataFeed._children.copy() _attributes = gdata.GDataFeed._attributes.copy() - _children['{%s}entry' % atom.ATOM_NAMESPACE] = ('entry', + _children['{%s}entry' % atom.ATOM_NAMESPACE] = ('entry', [DocumentListEntry]) @@ -64,3 +244,26 @@ A DocumentListFeed object corresponding to the given XML. """ return atom.CreateClassFromXMLString(DocumentListFeed, xml_string) + + +class DocumentListAclFeed(gdata.GDataFeed): + """A DocList ACL feed flavor of a Atom feed""" + + _tag = gdata.GDataFeed._tag + _namespace = atom.ATOM_NAMESPACE + _children = gdata.GDataFeed._children.copy() + _attributes = gdata.GDataFeed._attributes.copy() + _children['{%s}entry' % atom.ATOM_NAMESPACE] = ('entry', + [DocumentListAclEntry]) + + +def DocumentListAclFeedFromString(xml_string): + """Converts an XML string into a DocumentListAclFeed object. + + Args: + xml_string: string The XML describing a DocumentList feed. + + Returns: + A DocumentListFeed object corresponding to the given XML. + """ + return atom.CreateClassFromXMLString(DocumentListAclFeed, xml_string) diff -Nru python-gdata-1.2.4/src/gdata/docs/service.py python-gdata-2.0.8/src/gdata/docs/service.py --- python-gdata-1.2.4/src/gdata/docs/service.py 2009-01-22 19:17:13.000000000 +0000 +++ python-gdata-2.0.8/src/gdata/docs/service.py 2009-11-18 23:30:40.000000000 +0000 @@ -1,6 +1,6 @@ #!/usr/bin/python # -# Copyright (C) 2006 Google Inc. +# Copyright 2009 Google Inc. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -21,45 +21,72 @@ Extends GDataService. DocumentQuery: Queries a Google Document list feed. -""" + DocumentAclQuery: Queries a Google Document Acl feed. +""" -__author__ = 'api.jfisher (Jeff Fisher)' +__author__ = ('api.jfisher (Jeff Fisher), ' + 'e.bidelman (Eric Bidelman)') -import urllib +import re import atom import gdata.service import gdata.docs - +import urllib # XML Namespaces used in Google Documents entities. -DATA_KIND_SCHEME = 'http://schemas.google.com/g/2005#kind' -DOCUMENT_KIND_TERM = 'http://schemas.google.com/docs/2007#document' -SPREADSHEET_KIND_TERM = 'http://schemas.google.com/docs/2007#spreadsheet' -PRESENTATION_KIND_TERM = 'http://schemas.google.com/docs/2007#presentation' -# File extensions of documents that are permitted to be uploaded. +DATA_KIND_SCHEME = gdata.GDATA_NAMESPACE + '#kind' +DOCUMENT_LABEL = 'document' +SPREADSHEET_LABEL = 'spreadsheet' +PRESENTATION_LABEL = 'presentation' +FOLDER_LABEL = 'folder' +PDF_LABEL = 'pdf' + +LABEL_SCHEME = gdata.GDATA_NAMESPACE + '/labels' +STARRED_LABEL_TERM = LABEL_SCHEME + '#starred' +TRASHED_LABEL_TERM = LABEL_SCHEME + '#trashed' +HIDDEN_LABEL_TERM = LABEL_SCHEME + '#hidden' +MINE_LABEL_TERM = LABEL_SCHEME + '#mine' +PRIVATE_LABEL_TERM = LABEL_SCHEME + '#private' +SHARED_WITH_DOMAIN_LABEL_TERM = LABEL_SCHEME + '#shared-with-domain' +VIEWED_LABEL_TERM = LABEL_SCHEME + '#viewed' + +FOLDERS_SCHEME_PREFIX = gdata.docs.DOCUMENTS_NAMESPACE + '/folders/' + +# File extensions of documents that are permitted to be uploaded or downloaded. SUPPORTED_FILETYPES = { 'CSV': 'text/csv', 'TSV': 'text/tab-separated-values', 'TAB': 'text/tab-separated-values', 'DOC': 'application/msword', + 'DOCX': ('application/vnd.openxmlformats-officedocument.' + 'wordprocessingml.document'), 'ODS': 'application/x-vnd.oasis.opendocument.spreadsheet', 'ODT': 'application/vnd.oasis.opendocument.text', 'RTF': 'application/rtf', 'SXW': 'application/vnd.sun.xml.writer', 'TXT': 'text/plain', 'XLS': 'application/vnd.ms-excel', + 'XLSX': 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet', + 'PDF': 'application/pdf', + 'PNG': 'image/png', 'PPT': 'application/vnd.ms-powerpoint', 'PPS': 'application/vnd.ms-powerpoint', 'HTM': 'text/html', - 'HTML' : 'text/html'} + 'HTML': 'text/html', + 'ZIP': 'application/zip', + 'SWF': 'application/x-shockwave-flash' + } class DocsService(gdata.service.GDataService): """Client extension for the Google Documents service Document List feed.""" + __FILE_EXT_PATTERN = re.compile('.*\.([a-zA-Z]{3,}$)') + __RESOURCE_ID_PATTERN = re.compile('^([a-z]*)(:|%3A)([\w-]*)$') + def __init__(self, email=None, password=None, source=None, server='docs.google.com', additional_headers=None, **kwargs): """Creates a client for the Google Documents service. @@ -78,20 +105,115 @@ self, email=email, password=password, service='writely', source=source, server=server, additional_headers=additional_headers, **kwargs) + def _MakeKindCategory(self, label): + if label is None: + return None + return atom.Category(scheme=DATA_KIND_SCHEME, + term=gdata.docs.DOCUMENTS_NAMESPACE + '#' + label, label=label) + + def _MakeContentLinkFromId(self, resource_id): + match = self.__RESOURCE_ID_PATTERN.match(resource_id) + label = match.group(1) + doc_id = match.group(3) + if label == DOCUMENT_LABEL: + return '/feeds/download/documents/Export?docId=%s' % doc_id + if label == PRESENTATION_LABEL: + return '/feeds/download/presentations/Export?docId=%s' % doc_id + if label == SPREADSHEET_LABEL: + return ('http://spreadsheets.google.com/feeds/download/spreadsheets/' + 'Export?key=%s' % doc_id) + raise ValueError, 'Invalid resource id: %s' % resource_id + + def _UploadFile(self, media_source, title, category, folder_or_uri=None): + """Uploads a file to the Document List feed. + + Args: + media_source: A gdata.MediaSource object containing the file to be + uploaded. + title: string The title of the document on the server after being + uploaded. + category: An atom.Category object specifying the appropriate document + type. + folder_or_uri: DocumentListEntry or string (optional) An object with a + link to a folder or a uri to a folder to upload to. + Note: A valid uri for a folder is of the form: + /feeds/folders/private/full/folder%3Afolder_id + + Returns: + A DocumentListEntry containing information about the document created on + the Google Documents service. + """ + if folder_or_uri: + try: + uri = folder_or_uri.content.src + except AttributeError: + uri = folder_or_uri + else: + uri = '/feeds/documents/private/full' + + entry = gdata.docs.DocumentListEntry() + entry.title = atom.Title(text=title) + if category is not None: + entry.category.append(category) + entry = self.Post(entry, uri, media_source=media_source, + extra_headers={'Slug': media_source.file_name}, + converter=gdata.docs.DocumentListEntryFromString) + return entry + + def _DownloadFile(self, uri, file_path): + """Downloads a file. + + Args: + uri: string The full Export URL to download the file from. + file_path: string The full path to save the file to. + + Raises: + RequestError: on error response from server. + """ + server_response = self.request('GET', uri) + response_body = server_response.read() + if server_response.status != 200: + raise gdata.service.RequestError, {'status': server_response.status, + 'reason': server_response.reason, + 'body': response_body} + f = open(file_path, 'wb') + f.write(response_body) + f.flush() + f.close() + + def MoveIntoFolder(self, source_entry, folder_entry): + """Moves a document into a folder in the Document List Feed. + + Args: + source_entry: DocumentListEntry An object representing the source + document/folder. + folder_entry: DocumentListEntry An object with a link to the destination + folder. + + Returns: + A DocumentListEntry containing information about the document created on + the Google Documents service. + """ + entry = gdata.docs.DocumentListEntry() + entry.id = source_entry.id + entry = self.Post(entry, folder_entry.content.src, + converter=gdata.docs.DocumentListEntryFromString) + return entry + def Query(self, uri, converter=gdata.docs.DocumentListFeedFromString): """Queries the Document List feed and returns the resulting feed of entries. Args: uri: string The full URI to be queried. This can contain query - parameters, a hostname, or simply the relative path to a Document - List feed. The DocumentQuery object is useful when constructing - query parameters. + parameters, a hostname, or simply the relative path to a Document + List feed. The DocumentQuery object is useful when constructing + query parameters. converter: func (optional) A function which will be executed on the - retrieved item, generally to render it into a Python object. - By default the DocumentListFeedFromString function is used to - return a DocumentListFeed object. This is because most feed - queries will result in a feed and not a single entry. + retrieved item, generally to render it into a Python object. + By default the DocumentListFeedFromString function is used to + return a DocumentListFeed object. This is because most feed + queries will result in a feed and not a single entry. """ return self.Get(uri, converter=converter) @@ -102,7 +224,7 @@ Args: uri: string The URI of the feed being retrieved possibly with query - parameters. + parameters. Returns: A DocumentListFeed object representing the feed returned by the server. @@ -117,94 +239,274 @@ Returns: A DocumentListEntry object representing the retrieved entry. - """ + """ return self.Get(uri, converter=gdata.docs.DocumentListEntryFromString) - def GetDocumentListFeed(self): - """Retrieves a feed containing all of a user's documents.""" - q = gdata.docs.service.DocumentQuery(); - return self.QueryDocumentListFeed(q.ToUri()) + def GetDocumentListFeed(self, uri=None): + """Retrieves a feed containing all of a user's documents. + + Args: + uri: string A full URI to query the Document List feed. + """ + if not uri: + uri = gdata.docs.service.DocumentQuery().ToUri() + return self.QueryDocumentListFeed(uri) + + def GetDocumentListAclEntry(self, uri): + """Retrieves a particular DocumentListAclEntry by its unique URI. + + Args: + uri: string The unique URI of an entry in a Document List feed. + + Returns: + A DocumentListAclEntry object representing the retrieved entry. + """ + return self.Get(uri, converter=gdata.docs.DocumentListAclEntryFromString) + + def GetDocumentListAclFeed(self, uri): + """Retrieves a feed containing all of a user's documents. + + Args: + uri: string The URI of a document's Acl feed to retrieve. + + Returns: + A DocumentListAclFeed object representing the ACL feed + returned by the server. + """ + return self.Get(uri, converter=gdata.docs.DocumentListAclFeedFromString) + + def Upload(self, media_source, title, folder_or_uri=None, label=None): + """Uploads a document inside of a MediaSource object to the Document List + feed with the given title. + + Args: + media_source: MediaSource The gdata.MediaSource object containing a + document file to be uploaded. + title: string The title of the document on the server after being + uploaded. + folder_or_uri: DocumentListEntry or string (optional) An object with a + link to a folder or a uri to a folder to upload to. + Note: A valid uri for a folder is of the form: + /feeds/folders/private/full/folder%3Afolder_id + label: optional label describing the type of the document to be created. + + Returns: + A DocumentListEntry containing information about the document created + on the Google Documents service. + """ - def UploadPresentation(self, media_source, title): + return self._UploadFile(media_source, title, self._MakeKindCategory(label), + folder_or_uri) + + def Download(self, entry_or_id_or_url, file_path, export_format=None, + gid=None, extra_params=None): + """Downloads a document from the Document List. + + Args: + entry_or_id_or_url: a DocumentListEntry, or the resource id of an entry, + or a url to download from (such as the content src). + file_path: string The full path to save the file to. + export_format: the format to convert to, if conversion is required. + gid: grid id, for downloading a single grid of a spreadsheet + extra_params: a map of any further parameters to control how the document + is downloaded + + Raises: + RequestError if the service does not respond with success + """ + + if isinstance(entry_or_id_or_url, gdata.docs.DocumentListEntry): + url = entry_or_id_or_url.content.src + else: + if self.__RESOURCE_ID_PATTERN.match(entry_or_id_or_url): + url = self._MakeContentLinkFromId(entry_or_id_or_url) + else: + url = entry_or_id_or_url + + if export_format is not None: + if url.find('/Export?') == -1: + raise gdata.service.Error, ('This entry cannot be exported ' + 'as a different format') + url += '&exportFormat=%s' % export_format + + if gid is not None: + if url.find('spreadsheets') == -1: + raise gdata.service.Error, 'grid id param is not valid for this entry' + url += '&gid=%s' % gid + + if extra_params: + url += '&' + urllib.urlencode(extra_params) + + self._DownloadFile(url, file_path) + + def Export(self, entry_or_id_or_url, file_path, gid=None, extra_params=None): + """Downloads a document from the Document List in a different format. + + Args: + entry_or_id_or_url: a DocumentListEntry, or the resource id of an entry, + or a url to download from (such as the content src). + file_path: string The full path to save the file to. The export + format is inferred from the the file extension. + gid: grid id, for downloading a single grid of a spreadsheet + extra_params: a map of any further parameters to control how the document + is downloaded + + Raises: + RequestError if the service does not respond with success + """ + ext = None + match = self.__FILE_EXT_PATTERN.match(file_path) + if match: + ext = match.group(1) + self.Download(entry_or_id_or_url, file_path, ext, gid, extra_params) + + def CreateFolder(self, title, folder_or_uri=None): + """Creates a folder in the Document List feed. + + Args: + title: string The title of the folder on the server after being created. + folder_or_uri: DocumentListEntry or string (optional) An object with a + link to a folder or a uri to a folder to upload to. + Note: A valid uri for a folder is of the form: + /feeds/folders/private/full/folder%3Afolder_id + + Returns: + A DocumentListEntry containing information about the folder created on + the Google Documents service. + """ + if folder_or_uri: + try: + uri = folder_or_uri.content.src + except AttributeError: + uri = folder_or_uri + else: + uri = '/feeds/documents/private/full' + + folder_entry = gdata.docs.DocumentListEntry() + folder_entry.title = atom.Title(text=title) + folder_entry.category.append(self._MakeKindCategory(FOLDER_LABEL)) + folder_entry = self.Post(folder_entry, uri, + converter=gdata.docs.DocumentListEntryFromString) + + return folder_entry + + + def MoveOutOfFolder(self, source_entry): + """Moves a document into a folder in the Document List Feed. + + Args: + source_entry: DocumentListEntry An object representing the source + document/folder. + + Returns: + True if the entry was moved out. + """ + return self.Delete(source_entry.GetEditLink().href) + + # Deprecated methods + + #@atom.deprecated('Please use Upload instead') + def UploadPresentation(self, media_source, title, folder_or_uri=None): """Uploads a presentation inside of a MediaSource object to the Document List feed with the given title. + This method is deprecated, use Upload instead. + Args: media_source: MediaSource The MediaSource object containing a presentation file to be uploaded. title: string The title of the presentation on the server after being uploaded. + folder_or_uri: DocumentListEntry or string (optional) An object with a + link to a folder or a uri to a folder to upload to. + Note: A valid uri for a folder is of the form: + /feeds/folders/private/full/folder%3Afolder_id Returns: - A GDataEntry containing information about the presentation created on the - Google Documents service. + A DocumentListEntry containing information about the presentation created + on the Google Documents service. """ - category = atom.Category(scheme=DATA_KIND_SCHEME, - term=PRESENTATION_KIND_TERM) - return self._UploadFile(media_source, title, category) + return self._UploadFile( + media_source, title, self._MakeKindCategory(PRESENTATION_LABEL), + folder_or_uri=folder_or_uri) - def UploadSpreadsheet(self, media_source, title): + UploadPresentation = atom.deprecated('Please use Upload instead')( + UploadPresentation) + + #@atom.deprecated('Please use Upload instead') + def UploadSpreadsheet(self, media_source, title, folder_or_uri=None): """Uploads a spreadsheet inside of a MediaSource object to the Document List feed with the given title. + + This method is deprecated, use Upload instead. Args: media_source: MediaSource The MediaSource object containing a spreadsheet - file to be uploaded. + file to be uploaded. title: string The title of the spreadsheet on the server after being - uploaded. + uploaded. + folder_or_uri: DocumentListEntry or string (optional) An object with a + link to a folder or a uri to a folder to upload to. + Note: A valid uri for a folder is of the form: + /feeds/folders/private/full/folder%3Afolder_id Returns: - A GDataEntry containing information about the spreadsheet created on the - Google Documents service. + A DocumentListEntry containing information about the spreadsheet created + on the Google Documents service. """ - category = atom.Category(scheme=DATA_KIND_SCHEME, - term=SPREADSHEET_KIND_TERM) - return self._UploadFile(media_source, title, category) + return self._UploadFile( + media_source, title, self._MakeKindCategory(SPREADSHEET_LABEL), + folder_or_uri=folder_or_uri) - def UploadDocument(self, media_source, title): + UploadSpreadsheet = atom.deprecated('Please use Upload instead')( + UploadSpreadsheet) + + #@atom.deprecated('Please use Upload instead') + def UploadDocument(self, media_source, title, folder_or_uri=None): """Uploads a document inside of a MediaSource object to the Document List feed with the given title. + + This method is deprecated, use Upload instead. Args: media_source: MediaSource The gdata.MediaSource object containing a - document file to be uploaded. + document file to be uploaded. title: string The title of the document on the server after being - uploaded. + uploaded. + folder_or_uri: DocumentListEntry or string (optional) An object with a + link to a folder or a uri to a folder to upload to. + Note: A valid uri for a folder is of the form: + /feeds/folders/private/full/folder%3Afolder_id Returns: - A GDataEntry containing information about the document created on the - Google Documents service. + A DocumentListEntry containing information about the document created + on the Google Documents service. """ - category = atom.Category(scheme=DATA_KIND_SCHEME, - term=DOCUMENT_KIND_TERM) - return self._UploadFile(media_source, title, category) - - def _UploadFile(self, media_source, title, category): - """Uploads a file to the Document List feed. - - Args: - media_source: A gdata.MediaSource object containing the file to be - uploaded. - title: string The title of the document on the server after being - uploaded. - category: An atom.Category object specifying the appropriate document - type - Returns: - A GDataEntry containing information about the document created on - the Google Documents service. - """ - media_entry = gdata.GDataEntry() - media_entry.title = atom.Title(text=title) - media_entry.category.append(category) - media_entry = self.Post(media_entry, '/feeds/documents/private/full', - media_source = media_source, - extra_headers = {'Slug' : media_source.file_name }) - - return media_entry + return self._UploadFile( + media_source, title, self._MakeKindCategory(DOCUMENT_LABEL), + folder_or_uri=folder_or_uri) + + UploadDocument = atom.deprecated('Please use Upload instead')( + UploadDocument) + + """Calling any of these functions is the same as calling Export""" + DownloadDocument = atom.deprecated('Please use Export instead')(Export) + DownloadPresentation = atom.deprecated('Please use Export instead')(Export) + DownloadSpreadsheet = atom.deprecated('Please use Export instead')(Export) + + """Calling any of these functions is the same as calling MoveIntoFolder""" + MoveDocumentIntoFolder = atom.deprecated( + 'Please use MoveIntoFolder instead')(MoveIntoFolder) + MovePresentationIntoFolder = atom.deprecated( + 'Please use MoveIntoFolder instead')(MoveIntoFolder) + MoveSpreadsheetIntoFolder = atom.deprecated( + 'Please use MoveIntoFolder instead')(MoveIntoFolder) + MoveFolderIntoFolder = atom.deprecated( + 'Please use MoveIntoFolder instead')(MoveIntoFolder) class DocumentQuery(gdata.service.Query): - + """Object used to construct a URI to query the Google Document List feed""" def __init__(self, feed='/feeds/documents', visibility='private', @@ -219,11 +521,11 @@ text_query: string (optional) The contents of the q query parameter. This string is URL escaped upon conversion to a URI. params: dict (optional) Parameter value string pairs which become URL - params when translated to a URI. These parameters are added to - the query's items. + params when translated to a URI. These parameters are added to + the query's items. categories: list (optional) List of category strings which should be - included as query categories. See gdata.service.Query for - additional documentation. + included as query categories. See gdata.service.Query for + additional documentation. Yields: A DocumentQuery object used to construct a URI based on the Document @@ -260,11 +562,8 @@ The string of the category that was added to the object. """ - category = '{http://schemas.google.com/docs/2007/folders/' - category += email + '}' + folder_name - + category = '{%s%s}%s' % (FOLDERS_SCHEME_PREFIX, email, folder_name) self.categories.append(category) - return category def RemoveNamedFolder(self, email, folder_name): @@ -277,10 +576,36 @@ Returns: The string of the category that was removed to the object. """ + category = '{%s%s}%s' % (FOLDERS_SCHEME_PREFIX, email, folder_name) + self.categories.remove(category) + return category - category = '{http://schemas.google.com/docs/2007/folders/' - category += email + '}' + folder_name - self.categories.remove(category) +class DocumentAclQuery(gdata.service.Query): - return category + """Object used to construct a URI to query a Document's ACL feed""" + + def __init__(self, resource_id, feed='/feeds/acl/private/full'): + """Constructor for Document ACL Query + + Args: + resource_id: string The resource id. (e.g. 'document%3Adocument_id', + 'spreadsheet%3Aspreadsheet_id', etc.) + feed: string (optional) The path for the feed. + (e.g. '/feeds/acl/private/full') + + Yields: + A DocumentAclQuery object used to construct a URI based on the Document + ACL feed. + """ + self.resource_id = resource_id + gdata.service.Query.__init__(self, feed) + + def ToUri(self): + """Generates a URI from the query parameters set in the object. + + Returns: + A string containing the URI used to retrieve entries from the Document + ACL feed. + """ + return '%s/%s' % (gdata.service.Query.ToUri(self), self.resource_id) diff -Nru python-gdata-1.2.4/src/gdata/dublincore/data.py python-gdata-2.0.8/src/gdata/dublincore/data.py --- python-gdata-1.2.4/src/gdata/dublincore/data.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/dublincore/data.py 2009-12-02 01:58:26.000000000 +0000 @@ -0,0 +1,78 @@ +#!/usr/bin/python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Contains the data classes of the Dublin Core Metadata Initiative (DCMI) Extension""" + + +__author__ = 'j.s@google.com (Jeff Scudder)' + + +import atom.core + + +DC_TEMPLATE = '{http://purl.org/dc/terms/}%s' + + +class Creator(atom.core.XmlElement): + """Entity primarily responsible for making the resource.""" + _qname = DC_TEMPLATE % 'creator' + + +class Date(atom.core.XmlElement): + """Point or period of time associated with an event in the lifecycle of the resource.""" + _qname = DC_TEMPLATE % 'date' + + +class Description(atom.core.XmlElement): + """Account of the resource.""" + _qname = DC_TEMPLATE % 'description' + + +class Format(atom.core.XmlElement): + """File format, physical medium, or dimensions of the resource.""" + _qname = DC_TEMPLATE % 'format' + + +class Identifier(atom.core.XmlElement): + """An unambiguous reference to the resource within a given context.""" + _qname = DC_TEMPLATE % 'identifier' + + +class Language(atom.core.XmlElement): + """Language of the resource.""" + _qname = DC_TEMPLATE % 'language' + + +class Publisher(atom.core.XmlElement): + """Entity responsible for making the resource available.""" + _qname = DC_TEMPLATE % 'publisher' + + +class Rights(atom.core.XmlElement): + """Information about rights held in and over the resource.""" + _qname = DC_TEMPLATE % 'rights' + + +class Subject(atom.core.XmlElement): + """Topic of the resource.""" + _qname = DC_TEMPLATE % 'subject' + + +class Title(atom.core.XmlElement): + """Name given to the resource.""" + _qname = DC_TEMPLATE % 'title' + + diff -Nru python-gdata-1.2.4/src/gdata/dublincore/__init__.py python-gdata-2.0.8/src/gdata/dublincore/__init__.py --- python-gdata-1.2.4/src/gdata/dublincore/__init__.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/dublincore/__init__.py 2009-12-02 01:58:26.000000000 +0000 @@ -0,0 +1,15 @@ +#!/usr/bin/python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. diff -Nru python-gdata-1.2.4/src/gdata/finance/data.py python-gdata-2.0.8/src/gdata/finance/data.py --- python-gdata-1.2.4/src/gdata/finance/data.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/finance/data.py 2009-11-21 02:25:36.000000000 +0000 @@ -0,0 +1,156 @@ +#!/usr/bin/python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +"""Contains the data classes of the Google Finance Portfolio Data API""" + + +__author__ = 'j.s@google.com (Jeff Scudder)' + + +import atom.core +import atom.data +import gdata.data +import gdata.opensearch.data + + +GF_TEMPLATE = '{http://schemas.google.com/finance/2007/}%s' + + +class Commission(atom.core.XmlElement): + """Commission for the transaction""" + _qname = GF_TEMPLATE % 'commission' + money = [gdata.data.Money] + + +class CostBasis(atom.core.XmlElement): + """Cost basis for the portfolio or position""" + _qname = GF_TEMPLATE % 'costBasis' + money = [gdata.data.Money] + + +class DaysGain(atom.core.XmlElement): + """Today's gain for the portfolio or position""" + _qname = GF_TEMPLATE % 'daysGain' + money = [gdata.data.Money] + + +class Gain(atom.core.XmlElement): + """Total gain for the portfolio or position""" + _qname = GF_TEMPLATE % 'gain' + money = [gdata.data.Money] + + +class MarketValue(atom.core.XmlElement): + """Market value for the portfolio or position""" + _qname = GF_TEMPLATE % 'marketValue' + money = [gdata.data.Money] + + +class PortfolioData(atom.core.XmlElement): + """Data for the portfolio""" + _qname = GF_TEMPLATE % 'portfolioData' + return_overall = 'returnOverall' + currency_code = 'currencyCode' + return3y = 'return3y' + return4w = 'return4w' + market_value = MarketValue + return_y_t_d = 'returnYTD' + cost_basis = CostBasis + gain_percentage = 'gainPercentage' + days_gain = DaysGain + return3m = 'return3m' + return5y = 'return5y' + return1w = 'return1w' + gain = Gain + return1y = 'return1y' + + +class PortfolioEntry(gdata.data.GDEntry): + """Describes an entry in a feed of Finance portfolios""" + portfolio_data = PortfolioData + + +class PortfolioFeed(gdata.data.GDFeed): + """Describes a Finance portfolio feed""" + entry = [PortfolioEntry] + + +class PositionData(atom.core.XmlElement): + """Data for the position""" + _qname = GF_TEMPLATE % 'positionData' + return_y_t_d = 'returnYTD' + return5y = 'return5y' + return_overall = 'returnOverall' + cost_basis = CostBasis + return3y = 'return3y' + return1y = 'return1y' + return4w = 'return4w' + shares = 'shares' + days_gain = DaysGain + gain_percentage = 'gainPercentage' + market_value = MarketValue + gain = Gain + return3m = 'return3m' + return1w = 'return1w' + + +class Price(atom.core.XmlElement): + """Price of the transaction""" + _qname = GF_TEMPLATE % 'price' + money = [gdata.data.Money] + + +class Symbol(atom.core.XmlElement): + """Stock symbol for the company""" + _qname = GF_TEMPLATE % 'symbol' + symbol = 'symbol' + exchange = 'exchange' + full_name = 'fullName' + + +class PositionEntry(gdata.data.GDEntry): + """Describes an entry in a feed of Finance positions""" + symbol = Symbol + position_data = PositionData + + +class PositionFeed(gdata.data.GDFeed): + """Describes a Finance position feed""" + entry = [PositionEntry] + + +class TransactionData(atom.core.XmlElement): + """Data for the transction""" + _qname = GF_TEMPLATE % 'transactionData' + shares = 'shares' + notes = 'notes' + date = 'date' + type = 'type' + commission = Commission + price = Price + + +class TransactionEntry(gdata.data.GDEntry): + """Describes an entry in a feed of Finance transactions""" + transaction_data = TransactionData + + +class TransactionFeed(gdata.data.GDFeed): + """Describes a Finance transaction feed""" + entry = [TransactionEntry] + + diff -Nru python-gdata-1.2.4/src/gdata/finance/__init__.py python-gdata-2.0.8/src/gdata/finance/__init__.py --- python-gdata-1.2.4/src/gdata/finance/__init__.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/finance/__init__.py 2009-11-18 23:31:58.000000000 +0000 @@ -0,0 +1,486 @@ +#!/usr/bin/python +# +# Copyright (C) 2009 Tan Swee Heng +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +"""Contains extensions to Atom objects used with Google Finance.""" + + +__author__ = 'thesweeheng@gmail.com' + + +import atom +import gdata + + +GD_NAMESPACE = 'http://schemas.google.com/g/2005' +GF_NAMESPACE = 'http://schemas.google.com/finance/2007' + + +class Money(atom.AtomBase): + """The element.""" + _tag = 'money' + _namespace = GD_NAMESPACE + _attributes = atom.AtomBase._attributes.copy() + _attributes['amount'] = 'amount' + _attributes['currencyCode'] = 'currency_code' + + def __init__(self, amount=None, currency_code=None, **kwargs): + self.amount = amount + self.currency_code = currency_code + atom.AtomBase.__init__(self, **kwargs) + + def __str__(self): + return "%s %s" % (self.amount, self.currency_code) + + +def MoneyFromString(xml_string): + return atom.CreateClassFromXMLString(Money, xml_string) + + +class _Monies(atom.AtomBase): + """An element containing multiple in multiple currencies.""" + _namespace = GF_NAMESPACE + _children = atom.AtomBase._children.copy() + _children['{%s}money' % GD_NAMESPACE] = ('money', [Money]) + + def __init__(self, money=None, **kwargs): + self.money = money or [] + atom.AtomBase.__init__(self, **kwargs) + + def __str__(self): + return " / ".join(["%s" % i for i in self.money]) + + +class CostBasis(_Monies): + """The element.""" + _tag = 'costBasis' + + +def CostBasisFromString(xml_string): + return atom.CreateClassFromXMLString(CostBasis, xml_string) + + +class DaysGain(_Monies): + """The element.""" + _tag = 'daysGain' + + +def DaysGainFromString(xml_string): + return atom.CreateClassFromXMLString(DaysGain, xml_string) + + +class Gain(_Monies): + """The element.""" + _tag = 'gain' + + +def GainFromString(xml_string): + return atom.CreateClassFromXMLString(Gain, xml_string) + + +class MarketValue(_Monies): + """The element.""" + _tag = 'gain' + _tag = 'marketValue' + + +def MarketValueFromString(xml_string): + return atom.CreateClassFromXMLString(MarketValue, xml_string) + + +class Commission(_Monies): + """The element.""" + _tag = 'commission' + + +def CommissionFromString(xml_string): + return atom.CreateClassFromXMLString(Commission, xml_string) + + +class Price(_Monies): + """The element.""" + _tag = 'price' + + +def PriceFromString(xml_string): + return atom.CreateClassFromXMLString(Price, xml_string) + + +class Symbol(atom.AtomBase): + """The element.""" + _tag = 'symbol' + _namespace = GF_NAMESPACE + _attributes = atom.AtomBase._attributes.copy() + _attributes['fullName'] = 'full_name' + _attributes['exchange'] = 'exchange' + _attributes['symbol'] = 'symbol' + + def __init__(self, full_name=None, exchange=None, symbol=None, **kwargs): + self.full_name = full_name + self.exchange = exchange + self.symbol = symbol + atom.AtomBase.__init__(self, **kwargs) + + def __str__(self): + return "%s:%s (%s)" % (self.exchange, self.symbol, self.full_name) + + +def SymbolFromString(xml_string): + return atom.CreateClassFromXMLString(Symbol, xml_string) + + +class TransactionData(atom.AtomBase): + """The element.""" + _tag = 'transactionData' + _namespace = GF_NAMESPACE + _attributes = atom.AtomBase._attributes.copy() + _attributes['type'] = 'type' + _attributes['date'] = 'date' + _attributes['shares'] = 'shares' + _attributes['notes'] = 'notes' + _children = atom.AtomBase._children.copy() + _children['{%s}commission' % GF_NAMESPACE] = ('commission', Commission) + _children['{%s}price' % GF_NAMESPACE] = ('price', Price) + + def __init__(self, type=None, date=None, shares=None, + notes=None, commission=None, price=None, **kwargs): + self.type = type + self.date = date + self.shares = shares + self.notes = notes + self.commission = commission + self.price = price + atom.AtomBase.__init__(self, **kwargs) + + +def TransactionDataFromString(xml_string): + return atom.CreateClassFromXMLString(TransactionData, xml_string) + + +class TransactionEntry(gdata.GDataEntry): + """An entry of the transaction feed. + + A TransactionEntry contains TransactionData such as the transaction + type (Buy, Sell, Sell Short, or Buy to Cover), the number of units, + the date, the price, any commission, and any notes. + """ + _tag = 'entry' + _namespace = atom.ATOM_NAMESPACE + _children = gdata.GDataEntry._children.copy() + _children['{%s}transactionData' % GF_NAMESPACE] = ( + 'transaction_data', TransactionData) + + def __init__(self, transaction_data=None, **kwargs): + self.transaction_data = transaction_data + gdata.GDataEntry.__init__(self, **kwargs) + + def transaction_id(self): + return self.id.text.split("/")[-1] + + transaction_id = property(transaction_id, doc='The transaction ID.') + + +def TransactionEntryFromString(xml_string): + return atom.CreateClassFromXMLString(TransactionEntry, xml_string) + + +class TransactionFeed(gdata.GDataFeed): + """A feed that lists all of the transactions that have been recorded for + a particular position. + + A transaction is a collection of information about an instance of + buying or selling a particular security. The TransactionFeed lists all + of the transactions that have been recorded for a particular position + as a list of TransactionEntries. + """ + _tag = 'feed' + _namespace = atom.ATOM_NAMESPACE + _children = gdata.GDataFeed._children.copy() + _children['{%s}entry' % atom.ATOM_NAMESPACE] = ('entry', [TransactionEntry]) + + +def TransactionFeedFromString(xml_string): + return atom.CreateClassFromXMLString(TransactionFeed, xml_string) + + +class TransactionFeedLink(atom.AtomBase): + """Link to TransactionFeed embedded in PositionEntry. + + If a PositionFeed is queried with transactions='true', TransactionFeeds + are inlined in the returned PositionEntries. These TransactionFeeds are + accessible via TransactionFeedLink's feed attribute. + """ + _tag = 'feedLink' + _namespace = GD_NAMESPACE + _attributes = atom.AtomBase._attributes.copy() + _attributes['href'] = 'href' + _children = atom.AtomBase._children.copy() + _children['{%s}feed' % atom.ATOM_NAMESPACE] = ( + 'feed', TransactionFeed) + + def __init__(self, href=None, feed=None, **kwargs): + self.href = href + self.feed = feed + atom.AtomBase.__init__(self, **kwargs) + + +class PositionData(atom.AtomBase): + """The element.""" + _tag = 'positionData' + _namespace = GF_NAMESPACE + _attributes = atom.AtomBase._attributes.copy() + _attributes['gainPercentage'] = 'gain_percentage' + _attributes['return1w'] = 'return1w' + _attributes['return4w'] = 'return4w' + _attributes['return3m'] = 'return3m' + _attributes['returnYTD'] = 'returnYTD' + _attributes['return1y'] = 'return1y' + _attributes['return3y'] = 'return3y' + _attributes['return5y'] = 'return5y' + _attributes['returnOverall'] = 'return_overall' + _attributes['shares'] = 'shares' + _children = atom.AtomBase._children.copy() + _children['{%s}costBasis' % GF_NAMESPACE] = ('cost_basis', CostBasis) + _children['{%s}daysGain' % GF_NAMESPACE] = ('days_gain', DaysGain) + _children['{%s}gain' % GF_NAMESPACE] = ('gain', Gain) + _children['{%s}marketValue' % GF_NAMESPACE] = ('market_value', MarketValue) + + def __init__(self, gain_percentage=None, + return1w=None, return4w=None, return3m=None, returnYTD=None, + return1y=None, return3y=None, return5y=None, return_overall=None, + shares=None, cost_basis=None, days_gain=None, + gain=None, market_value=None, **kwargs): + self.gain_percentage = gain_percentage + self.return1w = return1w + self.return4w = return4w + self.return3m = return3m + self.returnYTD = returnYTD + self.return1y = return1y + self.return3y = return3y + self.return5y = return5y + self.return_overall = return_overall + self.shares = shares + self.cost_basis = cost_basis + self.days_gain = days_gain + self.gain = gain + self.market_value = market_value + atom.AtomBase.__init__(self, **kwargs) + + +def PositionDataFromString(xml_string): + return atom.CreateClassFromXMLString(PositionData, xml_string) + + +class PositionEntry(gdata.GDataEntry): + """An entry of the position feed. + + A PositionEntry contains the ticker exchange and Symbol for a stock, + mutual fund, or other security, along with PositionData such as the + number of units of that security that the user holds, and performance + statistics. + """ + _tag = 'entry' + _namespace = atom.ATOM_NAMESPACE + _children = gdata.GDataEntry._children.copy() + _children['{%s}positionData' % GF_NAMESPACE] = ( + 'position_data', PositionData) + _children['{%s}symbol' % GF_NAMESPACE] = ('symbol', Symbol) + _children['{%s}feedLink' % GD_NAMESPACE] = ( + 'feed_link', TransactionFeedLink) + + def __init__(self, position_data=None, symbol=None, feed_link=None, + **kwargs): + self.position_data = position_data + self.symbol = symbol + self.feed_link = feed_link + gdata.GDataEntry.__init__(self, **kwargs) + + def position_title(self): + return self.title.text + + position_title = property(position_title, + doc='The position title as a string (i.e. position.title.text).') + + def ticker_id(self): + return self.id.text.split("/")[-1] + + ticker_id = property(ticker_id, doc='The position TICKER ID.') + + def transactions(self): + if self.feed_link.feed: + return self.feed_link.feed.entry + else: + return None + + transactions = property(transactions, doc=""" + Inlined TransactionEntries are returned if PositionFeed is queried + with transactions='true'.""") + + +def PositionEntryFromString(xml_string): + return atom.CreateClassFromXMLString(PositionEntry, xml_string) + + +class PositionFeed(gdata.GDataFeed): + """A feed that lists all of the positions in a particular portfolio. + + A position is a collection of information about a security that the + user holds. The PositionFeed lists all of the positions in a particular + portfolio as a list of PositionEntries. + """ + _tag = 'feed' + _namespace = atom.ATOM_NAMESPACE + _children = gdata.GDataFeed._children.copy() + _children['{%s}entry' % atom.ATOM_NAMESPACE] = ('entry', [PositionEntry]) + + +def PositionFeedFromString(xml_string): + return atom.CreateClassFromXMLString(PositionFeed, xml_string) + + +class PositionFeedLink(atom.AtomBase): + """Link to PositionFeed embedded in PortfolioEntry. + + If a PortfolioFeed is queried with positions='true', the PositionFeeds + are inlined in the returned PortfolioEntries. These PositionFeeds are + accessible via PositionFeedLink's feed attribute. + """ + _tag = 'feedLink' + _namespace = GD_NAMESPACE + _attributes = atom.AtomBase._attributes.copy() + _attributes['href'] = 'href' + _children = atom.AtomBase._children.copy() + _children['{%s}feed' % atom.ATOM_NAMESPACE] = ( + 'feed', PositionFeed) + + def __init__(self, href=None, feed=None, **kwargs): + self.href = href + self.feed = feed + atom.AtomBase.__init__(self, **kwargs) + + +class PortfolioData(atom.AtomBase): + """The element.""" + _tag = 'portfolioData' + _namespace = GF_NAMESPACE + _attributes = atom.AtomBase._attributes.copy() + _attributes['currencyCode'] = 'currency_code' + _attributes['gainPercentage'] = 'gain_percentage' + _attributes['return1w'] = 'return1w' + _attributes['return4w'] = 'return4w' + _attributes['return3m'] = 'return3m' + _attributes['returnYTD'] = 'returnYTD' + _attributes['return1y'] = 'return1y' + _attributes['return3y'] = 'return3y' + _attributes['return5y'] = 'return5y' + _attributes['returnOverall'] = 'return_overall' + _children = atom.AtomBase._children.copy() + _children['{%s}costBasis' % GF_NAMESPACE] = ('cost_basis', CostBasis) + _children['{%s}daysGain' % GF_NAMESPACE] = ('days_gain', DaysGain) + _children['{%s}gain' % GF_NAMESPACE] = ('gain', Gain) + _children['{%s}marketValue' % GF_NAMESPACE] = ('market_value', MarketValue) + + def __init__(self, currency_code=None, gain_percentage=None, + return1w=None, return4w=None, return3m=None, returnYTD=None, + return1y=None, return3y=None, return5y=None, return_overall=None, + cost_basis=None, days_gain=None, gain=None, market_value=None, **kwargs): + self.currency_code = currency_code + self.gain_percentage = gain_percentage + self.return1w = return1w + self.return4w = return4w + self.return3m = return3m + self.returnYTD = returnYTD + self.return1y = return1y + self.return3y = return3y + self.return5y = return5y + self.return_overall = return_overall + self.cost_basis = cost_basis + self.days_gain = days_gain + self.gain = gain + self.market_value = market_value + atom.AtomBase.__init__(self, **kwargs) + + +def PortfolioDataFromString(xml_string): + return atom.CreateClassFromXMLString(PortfolioData, xml_string) + + +class PortfolioEntry(gdata.GDataEntry): + """An entry of the PortfolioFeed. + + A PortfolioEntry contains the portfolio's title along with PortfolioData + such as currency, total market value, and overall performance statistics. + """ + _tag = 'entry' + _namespace = atom.ATOM_NAMESPACE + _children = gdata.GDataEntry._children.copy() + _children['{%s}portfolioData' % GF_NAMESPACE] = ( + 'portfolio_data', PortfolioData) + _children['{%s}feedLink' % GD_NAMESPACE] = ( + 'feed_link', PositionFeedLink) + + def __init__(self, portfolio_data=None, feed_link=None, **kwargs): + self.portfolio_data = portfolio_data + self.feed_link = feed_link + gdata.GDataEntry.__init__(self, **kwargs) + + def portfolio_title(self): + return self.title.text + + def set_portfolio_title(self, portfolio_title): + self.title = atom.Title(text=portfolio_title, title_type='text') + + portfolio_title = property(portfolio_title, set_portfolio_title, + doc='The portfolio title as a string (i.e. portfolio.title.text).') + + def portfolio_id(self): + return self.id.text.split("/")[-1] + + portfolio_id = property(portfolio_id, + doc='The portfolio ID. Do not confuse with portfolio.id.') + + def positions(self): + if self.feed_link.feed: + return self.feed_link.feed.entry + else: + return None + + positions = property(positions, doc=""" + Inlined PositionEntries are returned if PortfolioFeed was queried + with positions='true'.""") + + +def PortfolioEntryFromString(xml_string): + return atom.CreateClassFromXMLString(PortfolioEntry, xml_string) + + +class PortfolioFeed(gdata.GDataFeed): + """A feed that lists all of the user's portfolios. + + A portfolio is a collection of positions that the user holds in various + securities, plus metadata. The PortfolioFeed lists all of the user's + portfolios as a list of PortfolioEntries. + """ + _tag = 'feed' + _namespace = atom.ATOM_NAMESPACE + _children = gdata.GDataFeed._children.copy() + _children['{%s}entry' % atom.ATOM_NAMESPACE] = ('entry', [PortfolioEntry]) + + +def PortfolioFeedFromString(xml_string): + return atom.CreateClassFromXMLString(PortfolioFeed, xml_string) + + diff -Nru python-gdata-1.2.4/src/gdata/finance/service.py python-gdata-2.0.8/src/gdata/finance/service.py --- python-gdata-1.2.4/src/gdata/finance/service.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/finance/service.py 2009-05-29 19:30:40.000000000 +0100 @@ -0,0 +1,243 @@ +#!/usr/bin/python +# +# Copyright (C) 2009 Tan Swee Heng +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +"""Classes to interact with the Google Finance server.""" + + +__author__ = 'thesweeheng@gmail.com' + + +import gdata.service +import gdata.finance +import atom + + +class PortfolioQuery(gdata.service.Query): + """A query object for the list of a user's portfolios.""" + + def returns(self): + return self.get('returns', False) + + def set_returns(self, value): + if value is 'true' or value is True: + self['returns'] = 'true' + + returns = property(returns, set_returns, doc="The returns query parameter") + + def positions(self): + return self.get('positions', False) + + def set_positions(self, value): + if value is 'true' or value is True: + self['positions'] = 'true' + + positions = property(positions, set_positions, + doc="The positions query parameter") + + +class PositionQuery(gdata.service.Query): + """A query object for the list of a user's positions in a portfolio.""" + + def returns(self): + return self.get('returns', False) + + def set_returns(self, value): + if value is 'true' or value is True: + self['returns'] = 'true' + + returns = property(returns, set_returns, + doc="The returns query parameter") + + def transactions(self): + return self.get('transactions', False) + + def set_transactions(self, value): + if value is 'true' or value is True: + self['transactions'] = 'true' + + transactions = property(transactions, set_transactions, + doc="The transactions query parameter") + + +class FinanceService(gdata.service.GDataService): + + def __init__(self, email=None, password=None, source=None, + server='finance.google.com', **kwargs): + """Creates a client for the Finance service. + + Args: + email: string (optional) The user's email address, used for + authentication. + password: string (optional) The user's password. + source: string (optional) The name of the user's application. + server: string (optional) The name of the server to which a connection + will be opened. Default value: 'finance.google.com'. + **kwargs: The other parameters to pass to gdata.service.GDataService + constructor. + """ + gdata.service.GDataService.__init__(self, + email=email, password=password, service='finance', server=server, + **kwargs) + + def GetPortfolioFeed(self, query=None): + uri = '/finance/feeds/default/portfolios' + if query: + uri = PortfolioQuery(feed=uri, params=query).ToUri() + return self.Get(uri, converter=gdata.finance.PortfolioFeedFromString) + + def GetPositionFeed(self, portfolio_entry=None, portfolio_id=None, + query=None): + """ + Args: + portfolio_entry: PortfolioEntry (optional; see Notes) + portfolio_id: string (optional; see Notes) This may be obtained + from a PortfolioEntry's portfolio_id attribute. + query: PortfolioQuery (optional) + + Notes: + Either a PortfolioEntry OR a portfolio ID must be provided. + """ + if portfolio_entry: + uri = portfolio_entry.GetSelfLink().href + '/positions' + elif portfolio_id: + uri = '/finance/feeds/default/portfolios/%s/positions' % portfolio_id + if query: + uri = PositionQuery(feed=uri, params=query).ToUri() + return self.Get(uri, converter=gdata.finance.PositionFeedFromString) + + def GetTransactionFeed(self, position_entry=None, + portfolio_id=None, ticker_id=None): + """ + Args: + position_entry: PositionEntry (optional; see Notes) + portfolio_id: string (optional; see Notes) This may be obtained + from a PortfolioEntry's portfolio_id attribute. + ticker_id: string (optional; see Notes) This may be obtained from + a PositionEntry's ticker_id attribute. Alternatively it can + be constructed using the security's exchange and symbol, + e.g. 'NASDAQ:GOOG' + + Notes: + Either a PositionEntry OR (a portfolio ID AND ticker ID) must + be provided. + """ + if position_entry: + uri = position_entry.GetSelfLink().href + '/transactions' + elif portfolio_id and ticker_id: + uri = '/finance/feeds/default/portfolios/%s/positions/%s/transactions' \ + % (portfolio_id, ticker_id) + return self.Get(uri, converter=gdata.finance.TransactionFeedFromString) + + def GetPortfolio(self, portfolio_id=None, query=None): + uri = '/finance/feeds/default/portfolios/%s' % portfolio_id + if query: + uri = PortfolioQuery(feed=uri, params=query).ToUri() + return self.Get(uri, converter=gdata.finance.PortfolioEntryFromString) + + def AddPortfolio(self, portfolio_entry=None): + uri = '/finance/feeds/default/portfolios' + return self.Post(portfolio_entry, uri, + converter=gdata.finance.PortfolioEntryFromString) + + def UpdatePortfolio(self, portfolio_entry=None): + uri = portfolio_entry.GetEditLink().href + return self.Put(portfolio_entry, uri, + converter=gdata.finance.PortfolioEntryFromString) + + def DeletePortfolio(self, portfolio_entry=None): + uri = portfolio_entry.GetEditLink().href + return self.Delete(uri) + + def GetPosition(self, portfolio_id=None, ticker_id=None, query=None): + uri = '/finance/feeds/default/portfolios/%s/positions/%s' \ + % (portfolio_id, ticker_id) + if query: + uri = PositionQuery(feed=uri, params=query).ToUri() + return self.Get(uri, converter=gdata.finance.PositionEntryFromString) + + def DeletePosition(self, position_entry=None, + portfolio_id=None, ticker_id=None, transaction_feed=None): + """A position is deleted by deleting all its transactions. + + Args: + position_entry: PositionEntry (optional; see Notes) + portfolio_id: string (optional; see Notes) This may be obtained + from a PortfolioEntry's portfolio_id attribute. + ticker_id: string (optional; see Notes) This may be obtained from + a PositionEntry's ticker_id attribute. Alternatively it can + be constructed using the security's exchange and symbol, + e.g. 'NASDAQ:GOOG' + transaction_feed: TransactionFeed (optional; see Notes) + + Notes: + Either a PositionEntry OR (a portfolio ID AND ticker ID) OR + a TransactionFeed must be provided. + """ + if transaction_feed: + feed = transaction_feed + else: + if position_entry: + feed = self.GetTransactionFeed(position_entry=position_entry) + elif portfolio_id and ticker_id: + feed = self.GetTransactionFeed( + portfolio_id=portfolio_id, ticker_id=ticker_id) + for txn in feed.entry: + self.DeleteTransaction(txn) + return True + + def GetTransaction(self, portfolio_id=None, ticker_id=None, + transaction_id=None): + uri = '/finance/feeds/default/portfolios/%s/positions/%s/transactions/%s' \ + % (portfolio_id, ticker_id, transaction_id) + return self.Get(uri, converter=gdata.finance.TransactionEntryFromString) + + def AddTransaction(self, transaction_entry=None, transaction_feed = None, + position_entry=None, portfolio_id=None, ticker_id=None): + """ + Args: + transaction_entry: TransactionEntry (required) + transaction_feed: TransactionFeed (optional; see Notes) + position_entry: PositionEntry (optional; see Notes) + portfolio_id: string (optional; see Notes) This may be obtained + from a PortfolioEntry's portfolio_id attribute. + ticker_id: string (optional; see Notes) This may be obtained from + a PositionEntry's ticker_id attribute. Alternatively it can + be constructed using the security's exchange and symbol, + e.g. 'NASDAQ:GOOG' + + Notes: + Either a TransactionFeed OR a PositionEntry OR (a portfolio ID AND + ticker ID) must be provided. + """ + if transaction_feed: + uri = transaction_feed.GetPostLink().href + elif position_entry: + uri = position_entry.GetSelfLink().href + '/transactions' + elif portfolio_id and ticker_id: + uri = '/finance/feeds/default/portfolios/%s/positions/%s/transactions' \ + % (portfolio_id, ticker_id) + return self.Post(transaction_entry, uri, + converter=gdata.finance.TransactionEntryFromString) + + def UpdateTransaction(self, transaction_entry=None): + uri = transaction_entry.GetEditLink().href + return self.Put(transaction_entry, uri, + converter=gdata.finance.TransactionEntryFromString) + + def DeleteTransaction(self, transaction_entry=None): + uri = transaction_entry.GetEditLink().href + return self.Delete(uri) diff -Nru python-gdata-1.2.4/src/gdata/gauth.py python-gdata-2.0.8/src/gdata/gauth.py --- python-gdata-1.2.4/src/gdata/gauth.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/gauth.py 2010-02-18 19:42:40.000000000 +0000 @@ -0,0 +1,1306 @@ +#!/usr/bin/env python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +# This module is used for version 2 of the Google Data APIs. + + +"""Provides auth related token classes and functions for Google Data APIs. + +Token classes represent a user's authorization of this app to access their +data. Usually these are not created directly but by a GDClient object. + +ClientLoginToken +AuthSubToken +SecureAuthSubToken +OAuthHmacToken +OAuthRsaToken +TwoLeggedOAuthHmacToken +TwoLeggedOAuthRsaToken + +Functions which are often used in application code (as opposed to just within +the gdata-python-client library) are the following: + +generate_auth_sub_url +authorize_request_token + +The following are helper functions which are used to save and load auth token +objects in the App Engine datastore. These should only be used if you are using +this library within App Engine: + +ae_load +ae_save +""" + + +import time +import random +import urllib +import atom.http_core + + +__author__ = 'j.s@google.com (Jeff Scudder)' + + +PROGRAMMATIC_AUTH_LABEL = 'GoogleLogin auth=' +AUTHSUB_AUTH_LABEL = 'AuthSub token=' + + +# This dict provides the AuthSub and OAuth scopes for all services by service +# name. The service name (key) is used in ClientLogin requests. +AUTH_SCOPES = { + 'cl': ( # Google Calendar API + 'https://www.google.com/calendar/feeds/', + 'http://www.google.com/calendar/feeds/'), + 'gbase': ( # Google Base API + 'http://base.google.com/base/feeds/', + 'http://www.google.com/base/feeds/'), + 'blogger': ( # Blogger API + 'http://www.blogger.com/feeds/',), + 'codesearch': ( # Google Code Search API + 'http://www.google.com/codesearch/feeds/',), + 'cp': ( # Contacts API + 'https://www.google.com/m8/feeds/', + 'http://www.google.com/m8/feeds/'), + 'finance': ( # Google Finance API + 'http://finance.google.com/finance/feeds/',), + 'health': ( # Google Health API + 'https://www.google.com/health/feeds/',), + 'writely': ( # Documents List API + 'https://docs.google.com/feeds/', + 'http://docs.google.com/feeds/'), + 'lh2': ( # Picasa Web Albums API + 'http://picasaweb.google.com/data/',), + 'apps': ( # Google Apps Provisioning API + 'http://www.google.com/a/feeds/', + 'https://www.google.com/a/feeds/', + 'http://apps-apis.google.com/a/feeds/', + 'https://apps-apis.google.com/a/feeds/'), + 'weaver': ( # Health H9 Sandbox + 'https://www.google.com/h9/feeds/',), + 'wise': ( # Spreadsheets Data API + 'https://spreadsheets.google.com/feeds/', + 'http://spreadsheets.google.com/feeds/'), + 'sitemaps': ( # Google Webmaster Tools API + 'https://www.google.com/webmasters/tools/feeds/',), + 'youtube': ( # YouTube API + 'http://gdata.youtube.com/feeds/api/', + 'http://uploads.gdata.youtube.com/feeds/api', + 'http://gdata.youtube.com/action/GetUploadToken'), + 'books': ( # Google Books API + 'http://www.google.com/books/feeds/',), + 'analytics': ( # Google Analytics API + 'https://www.google.com/analytics/feeds/',), + 'jotspot': ( # Google Sites API + 'http://sites.google.com/feeds/', + 'https://sites.google.com/feeds/'), + 'local': ( # Google Maps Data API + 'http://maps.google.com/maps/feeds/',), + 'code': ( # Project Hosting Data API + 'http://code.google.com/feeds/issues',)} + + + +class Error(Exception): + pass + + +class UnsupportedTokenType(Error): + """Raised when token to or from blob is unable to convert the token.""" + pass + + +# ClientLogin functions and classes. +def generate_client_login_request_body(email, password, service, source, + account_type='HOSTED_OR_GOOGLE', captcha_token=None, + captcha_response=None): + """Creates the body of the autentication request + + See http://code.google.com/apis/accounts/AuthForInstalledApps.html#Request + for more details. + + Args: + email: str + password: str + service: str + source: str + account_type: str (optional) Defaul is 'HOSTED_OR_GOOGLE', other valid + values are 'GOOGLE' and 'HOSTED' + captcha_token: str (optional) + captcha_response: str (optional) + + Returns: + The HTTP body to send in a request for a client login token. + """ + # Create a POST body containing the user's credentials. + request_fields = {'Email': email, + 'Passwd': password, + 'accountType': account_type, + 'service': service, + 'source': source} + if captcha_token and captcha_response: + # Send the captcha token and response as part of the POST body if the + # user is responding to a captch challenge. + request_fields['logintoken'] = captcha_token + request_fields['logincaptcha'] = captcha_response + return urllib.urlencode(request_fields) + + +GenerateClientLoginRequestBody = generate_client_login_request_body + + +def get_client_login_token_string(http_body): + """Returns the token value for a ClientLoginToken. + + Reads the token from the server's response to a Client Login request and + creates the token value string to use in requests. + + Args: + http_body: str The body of the server's HTTP response to a Client Login + request + + Returns: + The token value string for a ClientLoginToken. + """ + for response_line in http_body.splitlines(): + if response_line.startswith('Auth='): + # Strip off the leading Auth= and return the Authorization value. + return response_line[5:] + return None + + +GetClientLoginTokenString = get_client_login_token_string + + +def get_captcha_challenge(http_body, + captcha_base_url='http://www.google.com/accounts/'): + """Returns the URL and token for a CAPTCHA challenge issued by the server. + + Args: + http_body: str The body of the HTTP response from the server which + contains the CAPTCHA challenge. + captcha_base_url: str This function returns a full URL for viewing the + challenge image which is built from the server's response. This + base_url is used as the beginning of the URL because the server + only provides the end of the URL. For example the server provides + 'Captcha?ctoken=Hi...N' and the URL for the image is + 'http://www.google.com/accounts/Captcha?ctoken=Hi...N' + + Returns: + A dictionary containing the information needed to repond to the CAPTCHA + challenge, the image URL and the ID token of the challenge. The + dictionary is in the form: + {'token': string identifying the CAPTCHA image, + 'url': string containing the URL of the image} + Returns None if there was no CAPTCHA challenge in the response. + """ + contains_captcha_challenge = False + captcha_parameters = {} + for response_line in http_body.splitlines(): + if response_line.startswith('Error=CaptchaRequired'): + contains_captcha_challenge = True + elif response_line.startswith('CaptchaToken='): + # Strip off the leading CaptchaToken= + captcha_parameters['token'] = response_line[13:] + elif response_line.startswith('CaptchaUrl='): + captcha_parameters['url'] = '%s%s' % (captcha_base_url, + response_line[11:]) + if contains_captcha_challenge: + return captcha_parameters + else: + return None + + +GetCaptchaChallenge = get_captcha_challenge + + +class ClientLoginToken(object): + + def __init__(self, token_string): + self.token_string = token_string + + def modify_request(self, http_request): + http_request.headers['Authorization'] = '%s%s' % (PROGRAMMATIC_AUTH_LABEL, + self.token_string) + + ModifyRequest = modify_request + + +# AuthSub functions and classes. +def _to_uri(str_or_uri): + if isinstance(str_or_uri, (str, unicode)): + return atom.http_core.Uri.parse_uri(str_or_uri) + return str_or_uri + + +def generate_auth_sub_url(next, scopes, secure=False, session=True, + request_url=atom.http_core.parse_uri( + 'https://www.google.com/accounts/AuthSubRequest'), + domain='default', scopes_param_prefix='auth_sub_scopes'): + """Constructs a URI for requesting a multiscope AuthSub token. + + The generated token will contain a URL parameter to pass along the + requested scopes to the next URL. When the Google Accounts page + redirects the broswser to the 'next' URL, it appends the single use + AuthSub token value to the URL as a URL parameter with the key 'token'. + However, the information about which scopes were requested is not + included by Google Accounts. This method adds the scopes to the next + URL before making the request so that the redirect will be sent to + a page, and both the token value and the list of scopes for which the token + was requested. + + Args: + next: atom.http_core.Uri or string The URL user will be sent to after + authorizing this web application to access their data. + scopes: list containint strings or atom.http_core.Uri objects. The URLs + of the services to be accessed. Could also be a single string + or single atom.http_core.Uri for requesting just one scope. + secure: boolean (optional) Determines whether or not the issued token + is a secure token. + session: boolean (optional) Determines whether or not the issued token + can be upgraded to a session token. + request_url: atom.http_core.Uri or str The beginning of the request URL. + This is normally + 'http://www.google.com/accounts/AuthSubRequest' or + '/accounts/AuthSubRequest' + domain: The domain which the account is part of. This is used for Google + Apps accounts, the default value is 'default' which means that + the requested account is a Google Account (@gmail.com for + example) + scopes_param_prefix: str (optional) The requested scopes are added as a + URL parameter to the next URL so that the page at + the 'next' URL can extract the token value and the + valid scopes from the URL. The key for the URL + parameter defaults to 'auth_sub_scopes' + + Returns: + An atom.http_core.Uri which the user's browser should be directed to in + order to authorize this application to access their information. + """ + if isinstance(next, (str, unicode)): + next = atom.http_core.Uri.parse_uri(next) + # If the user passed in a string instead of a list for scopes, convert to + # a single item tuple. + if isinstance(scopes, (str, unicode, atom.http_core.Uri)): + scopes = (scopes,) + scopes_string = ' '.join([str(scope) for scope in scopes]) + next.query[scopes_param_prefix] = scopes_string + + if isinstance(request_url, (str, unicode)): + request_url = atom.http_core.Uri.parse_uri(request_url) + request_url.query['next'] = str(next) + request_url.query['scope'] = scopes_string + if session: + request_url.query['session'] = '1' + else: + request_url.query['session'] = '0' + if secure: + request_url.query['secure'] = '1' + else: + request_url.query['secure'] = '0' + request_url.query['hd'] = domain + return request_url + + +def auth_sub_string_from_url(url, scopes_param_prefix='auth_sub_scopes'): + """Finds the token string (and scopes) after the browser is redirected. + + After the Google Accounts AuthSub pages redirect the user's broswer back to + the web application (using the 'next' URL from the request) the web app must + extract the token from the current page's URL. The token is provided as a + URL parameter named 'token' and if generate_auth_sub_url was used to create + the request, the token's valid scopes are included in a URL parameter whose + name is specified in scopes_param_prefix. + + Args: + url: atom.url.Url or str representing the current URL. The token value + and valid scopes should be included as URL parameters. + scopes_param_prefix: str (optional) The URL parameter key which maps to + the list of valid scopes for the token. + + Returns: + A tuple containing the token value as a string, and a tuple of scopes + (as atom.http_core.Uri objects) which are URL prefixes under which this + token grants permission to read and write user data. + (token_string, (scope_uri, scope_uri, scope_uri, ...)) + If no scopes were included in the URL, the second value in the tuple is + None. If there was no token param in the url, the tuple returned is + (None, None) + """ + if isinstance(url, (str, unicode)): + url = atom.http_core.Uri.parse_uri(url) + if 'token' not in url.query: + return (None, None) + token = url.query['token'] + # TODO: decide whether no scopes should be None or (). + scopes = None # Default to None for no scopes. + if scopes_param_prefix in url.query: + scopes = tuple(url.query[scopes_param_prefix].split(' ')) + return (token, scopes) + + +AuthSubStringFromUrl = auth_sub_string_from_url + + +def auth_sub_string_from_body(http_body): + """Extracts the AuthSub token from an HTTP body string. + + Used to find the new session token after making a request to upgrade a + single use AuthSub token. + + Args: + http_body: str The repsonse from the server which contains the AuthSub + key. For example, this function would find the new session token + from the server's response to an upgrade token request. + + Returns: + The raw token value string to use in an AuthSubToken object. + """ + for response_line in http_body.splitlines(): + if response_line.startswith('Token='): + # Strip off Token= and return the token value string. + return response_line[6:] + return None + + +class AuthSubToken(object): + + def __init__(self, token_string, scopes=None): + self.token_string = token_string + self.scopes = scopes or [] + + def modify_request(self, http_request): + """Sets Authorization header, allows app to act on the user's behalf.""" + http_request.headers['Authorization'] = '%s%s' % (AUTHSUB_AUTH_LABEL, + self.token_string) + + ModifyRequest = modify_request + + def from_url(str_or_uri): + """Creates a new AuthSubToken using information in the URL. + + Uses auth_sub_string_from_url. + + Args: + str_or_uri: The current page's URL (as a str or atom.http_core.Uri) + which should contain a token query parameter since the + Google auth server redirected the user's browser to this + URL. + """ + token_and_scopes = auth_sub_string_from_url(str_or_uri) + return AuthSubToken(token_and_scopes[0], token_and_scopes[1]) + + from_url = staticmethod(from_url) + FromUrl = from_url + + def _upgrade_token(self, http_body): + """Replaces the token value with a session token from the auth server. + + Uses the response of a token upgrade request to modify this token. Uses + auth_sub_string_from_body. + """ + self.token_string = auth_sub_string_from_body(http_body) + + +# Functions and classes for Secure-mode AuthSub +def build_auth_sub_data(http_request, timestamp, nonce): + """Creates the data string which must be RSA-signed in secure requests. + + For more details see the documenation on secure AuthSub requests: + http://code.google.com/apis/accounts/docs/AuthSub.html#signingrequests + + Args: + http_request: The request being made to the server. The Request's URL + must be complete before this signature is calculated as any changes + to the URL will invalidate the signature. + nonce: str Random 64-bit, unsigned number encoded as an ASCII string in + decimal format. The nonce/timestamp pair should always be unique to + prevent replay attacks. + timestamp: Integer representing the time the request is sent. The + timestamp should be expressed in number of seconds after January 1, + 1970 00:00:00 GMT. + """ + return '%s %s %s %s' % (http_request.method, str(http_request.uri), + str(timestamp), nonce) + + +def generate_signature(data, rsa_key): + """Signs the data string for a secure AuthSub request.""" + import base64 + try: + from tlslite.utils import keyfactory + except ImportError: + from gdata.tlslite.utils import keyfactory + private_key = keyfactory.parsePrivateKey(rsa_key) + signed = private_key.hashAndSign(data) + # Python2.3 and lower does not have the base64.b64encode function. + if hasattr(base64, 'b64encode'): + return base64.b64encode(signed) + else: + return base64.encodestring(signed).replace('\n', '') + + +class SecureAuthSubToken(AuthSubToken): + + def __init__(self, token_string, rsa_private_key, scopes=None): + self.token_string = token_string + self.scopes = scopes or [] + self.rsa_private_key = rsa_private_key + + def from_url(str_or_uri, rsa_private_key): + """Creates a new SecureAuthSubToken using information in the URL. + + Uses auth_sub_string_from_url. + + Args: + str_or_uri: The current page's URL (as a str or atom.http_core.Uri) + which should contain a token query parameter since the Google auth + server redirected the user's browser to this URL. + rsa_private_key: str the private RSA key cert used to sign all requests + made with this token. + """ + token_and_scopes = auth_sub_string_from_url(str_or_uri) + return SecureAuthSubToken(token_and_scopes[0], rsa_private_key, + token_and_scopes[1]) + + from_url = staticmethod(from_url) + FromUrl = from_url + + def modify_request(self, http_request): + """Sets the Authorization header and includes a digital signature. + + Calculates a digital signature using the private RSA key, a timestamp + (uses now at the time this method is called) and a random nonce. + + Args: + http_request: The atom.http_core.HttpRequest which contains all of the + information needed to send a request to the remote server. The + URL and the method of the request must be already set and cannot be + changed after this token signs the request, or the signature will + not be valid. + """ + timestamp = str(int(time.time())) + nonce = ''.join([str(random.randint(0, 9)) for i in xrange(15)]) + data = build_auth_sub_data(http_request, timestamp, nonce) + signature = generate_signature(data, self.rsa_private_key) + http_request.headers['Authorization'] = ( + '%s%s sigalg="rsa-sha1" data="%s" sig="%s"' % (AUTHSUB_AUTH_LABEL, + self.token_string, data, signature)) + + ModifyRequest = modify_request + + +# OAuth functions and classes. +RSA_SHA1 = 'RSA-SHA1' +HMAC_SHA1 = 'HMAC-SHA1' + + +def build_oauth_base_string(http_request, consumer_key, nonce, signaure_type, + timestamp, version, next='oob', token=None, + verifier=None): + """Generates the base string to be signed in the OAuth request. + + Args: + http_request: The request being made to the server. The Request's URL + must be complete before this signature is calculated as any changes + to the URL will invalidate the signature. + consumer_key: Domain identifying the third-party web application. This is + the domain used when registering the application with Google. It + identifies who is making the request on behalf of the user. + nonce: Random 64-bit, unsigned number encoded as an ASCII string in decimal + format. The nonce/timestamp pair should always be unique to prevent + replay attacks. + signaure_type: either RSA_SHA1 or HMAC_SHA1 + timestamp: Integer representing the time the request is sent. The + timestamp should be expressed in number of seconds after January 1, + 1970 00:00:00 GMT. + version: The OAuth version used by the requesting web application. This + value must be '1.0' or '1.0a'. If not provided, Google assumes version + 1.0 is in use. + next: The URL the user should be redirected to after granting access + to a Google service(s). It can include url-encoded query parameters. + The default value is 'oob'. (This is the oauth_callback.) + token: The string for the OAuth request token or OAuth access token. + verifier: str Sent as the oauth_verifier and required when upgrading a + request token to an access token. + """ + # First we must build the canonical base string for the request. + params = http_request.uri.query.copy() + params['oauth_consumer_key'] = consumer_key + params['oauth_nonce'] = nonce + params['oauth_signature_method'] = signaure_type + params['oauth_timestamp'] = str(timestamp) + if next is not None: + params['oauth_callback'] = str(next) + if token is not None: + params['oauth_token'] = token + if version is not None: + params['oauth_version'] = version + if verifier is not None: + params['oauth_verifier'] = verifier + # We need to get the key value pairs in lexigraphically sorted order. + sorted_keys = None + try: + sorted_keys = sorted(params.keys()) + # The sorted function is not available in Python2.3 and lower + except NameError: + sorted_keys = params.keys() + sorted_keys.sort() + pairs = [] + for key in sorted_keys: + pairs.append('%s=%s' % (urllib.quote(key, safe='~'), + urllib.quote(params[key], safe='~'))) + # We want to escape /'s too, so use safe='~' + all_parameters = urllib.quote('&'.join(pairs), safe='~') + normailzed_host = http_request.uri.host.lower() + normalized_scheme = (http_request.uri.scheme or 'http').lower() + non_default_port = None + if (http_request.uri.port is not None + and ((normalized_scheme == 'https' and http_request.uri.port != 443) + or (normalized_scheme == 'http' and http_request.uri.port != 80))): + non_default_port = http_request.uri.port + path = http_request.uri.path or '/' + request_path = None + if not path.startswith('/'): + path = '/%s' % path + if non_default_port is not None: + # Set the only safe char in url encoding to ~ since we want to escape / + # as well. + request_path = urllib.quote('%s://%s:%s%s' % ( + normalized_scheme, normailzed_host, non_default_port, path), safe='~') + else: + # Set the only safe char in url encoding to ~ since we want to escape / + # as well. + request_path = urllib.quote('%s://%s%s' % ( + normalized_scheme, normailzed_host, path), safe='~') + # TODO: ensure that token escaping logic is correct, not sure if the token + # value should be double escaped instead of single. + base_string = '&'.join((http_request.method.upper(), request_path, + all_parameters)) + # Now we have the base string, we can calculate the oauth_signature. + return base_string + + +def generate_hmac_signature(http_request, consumer_key, consumer_secret, + timestamp, nonce, version, next='oob', + token=None, token_secret=None, verifier=None): + import hmac + import base64 + base_string = build_oauth_base_string( + http_request, consumer_key, nonce, HMAC_SHA1, timestamp, version, + next, token, verifier=verifier) + hash_key = None + hashed = None + if token_secret is not None: + hash_key = '%s&%s' % (urllib.quote(consumer_secret, safe='~'), + urllib.quote(token_secret, safe='~')) + else: + hash_key = '%s&' % urllib.quote(consumer_secret, safe='~') + try: + import hashlib + hashed = hmac.new(hash_key, base_string, hashlib.sha1) + except ImportError: + import sha + hashed = hmac.new(hash_key, base_string, sha) + # Python2.3 does not have base64.b64encode. + if hasattr(base64, 'b64encode'): + return base64.b64encode(hashed.digest()) + else: + return base64.encodestring(hashed.digest()).replace('\n', '') + + +def generate_rsa_signature(http_request, consumer_key, rsa_key, + timestamp, nonce, version, next='oob', + token=None, token_secret=None, verifier=None): + import base64 + try: + from tlslite.utils import keyfactory + except ImportError: + from gdata.tlslite.utils import keyfactory + base_string = build_oauth_base_string( + http_request, consumer_key, nonce, RSA_SHA1, timestamp, version, + next, token, verifier=verifier) + private_key = keyfactory.parsePrivateKey(rsa_key) + # Sign using the key + signed = private_key.hashAndSign(base_string) + # Python2.3 does not have base64.b64encode. + if hasattr(base64, 'b64encode'): + return base64.b64encode(signed) + else: + return base64.encodestring(signed).replace('\n', '') + + +def generate_auth_header(consumer_key, timestamp, nonce, signature_type, + signature, version='1.0', next=None, token=None, + verifier=None): + """Builds the Authorization header to be sent in the request. + + Args: + consumer_key: Identifies the application making the request (str). + timestamp: + nonce: + signature_type: One of either HMAC_SHA1 or RSA_SHA1 + signature: The HMAC or RSA signature for the request as a base64 + encoded string. + version: The version of the OAuth protocol that this request is using. + Default is '1.0' + next: The URL of the page that the user's browser should be sent to + after they authorize the token. (Optional) + token: str The OAuth token value to be used in the oauth_token parameter + of the header. + verifier: str The OAuth verifier which must be included when you are + upgrading a request token to an access token. + """ + params = { + 'oauth_consumer_key': consumer_key, + 'oauth_version': version, + 'oauth_nonce': nonce, + 'oauth_timestamp': str(timestamp), + 'oauth_signature_method': signature_type, + 'oauth_signature': signature} + if next is not None: + params['oauth_callback'] = str(next) + if token is not None: + params['oauth_token'] = token + if verifier is not None: + params['oauth_verifier'] = verifier + pairs = [ + '%s="%s"' % ( + k, urllib.quote(v, safe='~')) for k, v in params.iteritems()] + return 'OAuth %s' % (', '.join(pairs)) + + +REQUEST_TOKEN_URL = 'https://www.google.com/accounts/OAuthGetRequestToken' +ACCESS_TOKEN_URL = 'https://www.google.com/accounts/OAuthGetAccessToken' + + +def generate_request_for_request_token( + consumer_key, signature_type, scopes, rsa_key=None, consumer_secret=None, + auth_server_url=REQUEST_TOKEN_URL, next='oob', version='1.0'): + """Creates request to be sent to auth server to get an OAuth request token. + + Args: + consumer_key: + signature_type: either RSA_SHA1 or HMAC_SHA1. The rsa_key must be + provided if the signature type is RSA but if the signature method + is HMAC, the consumer_secret must be used. + scopes: List of URL prefixes for the data which we want to access. For + example, to request access to the user's Blogger and Google Calendar + data, we would request + ['http://www.blogger.com/feeds/', + 'https://www.google.com/calendar/feeds/', + 'http://www.google.com/calendar/feeds/'] + rsa_key: Only used if the signature method is RSA_SHA1. + consumer_secret: Only used if the signature method is HMAC_SHA1. + auth_server_url: The URL to which the token request should be directed. + Defaults to 'https://www.google.com/accounts/OAuthGetRequestToken'. + next: The URL of the page that the user's browser should be sent to + after they authorize the token. (Optional) + version: The OAuth version used by the requesting web application. + Defaults to '1.0a' + + Returns: + An atom.http_core.HttpRequest object with the URL, Authorization header + and body filled in. + """ + request = atom.http_core.HttpRequest(auth_server_url, 'POST') + # Add the requested auth scopes to the Auth request URL. + if scopes: + request.uri.query['scope'] = ' '.join(scopes) + + timestamp = str(int(time.time())) + nonce = ''.join([str(random.randint(0, 9)) for i in xrange(15)]) + signature = None + if signature_type == HMAC_SHA1: + signature = generate_hmac_signature( + request, consumer_key, consumer_secret, timestamp, nonce, version, + next=next) + elif signature_type == RSA_SHA1: + signature = generate_rsa_signature( + request, consumer_key, rsa_key, timestamp, nonce, version, next=next) + else: + return None + + request.headers['Authorization'] = generate_auth_header( + consumer_key, timestamp, nonce, signature_type, signature, version, + next) + request.headers['Content-Length'] = '0' + return request + + +def generate_request_for_access_token( + request_token, auth_server_url=ACCESS_TOKEN_URL): + """Creates a request to ask the OAuth server for an access token. + + Requires a request token which the user has authorized. See the + documentation on OAuth with Google Data for more details: + http://code.google.com/apis/accounts/docs/OAuth.html#AccessToken + + Args: + request_token: An OAuthHmacToken or OAuthRsaToken which the user has + approved using their browser. + auth_server_url: (optional) The URL at which the OAuth access token is + requested. Defaults to + https://www.google.com/accounts/OAuthGetAccessToken + + Returns: + A new HttpRequest object which can be sent to the OAuth server to + request an OAuth Access Token. + """ + http_request = atom.http_core.HttpRequest(auth_server_url, 'POST') + http_request.headers['Content-Length'] = '0' + return request_token.modify_request(http_request) + + +def oauth_token_info_from_body(http_body): + """Exracts an OAuth request token from the server's response. + + Returns: + A tuple of strings containing the OAuth token and token secret. If + neither of these are present in the body, returns (None, None) + """ + token = None + token_secret = None + for pair in http_body.split('&'): + if pair.startswith('oauth_token='): + token = urllib.unquote(pair[len('oauth_token='):]) + if pair.startswith('oauth_token_secret='): + token_secret = urllib.unquote(pair[len('oauth_token_secret='):]) + return (token, token_secret) + + +def hmac_token_from_body(http_body, consumer_key, consumer_secret, + auth_state): + token_value, token_secret = oauth_token_info_from_body(http_body) + token = OAuthHmacToken(consumer_key, consumer_secret, token_value, + token_secret, auth_state) + return token + + +def rsa_token_from_body(http_body, consumer_key, rsa_private_key, + auth_state): + token_value, token_secret = oauth_token_info_from_body(http_body) + token = OAuthRsaToken(consumer_key, rsa_private_key, token_value, + token_secret, auth_state) + return token + + +DEFAULT_DOMAIN = 'default' +OAUTH_AUTHORIZE_URL = 'https://www.google.com/accounts/OAuthAuthorizeToken' + + +def generate_oauth_authorization_url( + token, next=None, hd=DEFAULT_DOMAIN, hl=None, btmpl=None, + auth_server=OAUTH_AUTHORIZE_URL): + """Creates a URL for the page where the request token can be authorized. + + Args: + token: str The request token from the OAuth server. + next: str (optional) URL the user should be redirected to after granting + access to a Google service(s). It can include url-encoded query + parameters. + hd: str (optional) Identifies a particular hosted domain account to be + accessed (for example, 'mycollege.edu'). Uses 'default' to specify a + regular Google account ('username@gmail.com'). + hl: str (optional) An ISO 639 country code identifying what language the + approval page should be translated in (for example, 'hl=en' for + English). The default is the user's selected language. + btmpl: str (optional) Forces a mobile version of the approval page. The + only accepted value is 'mobile'. + auth_server: str (optional) The start of the token authorization web + page. Defaults to + 'https://www.google.com/accounts/OAuthAuthorizeToken' + + Returns: + An atom.http_core.Uri pointing to the token authorization page where the + user may allow or deny this app to access their Google data. + """ + uri = atom.http_core.Uri.parse_uri(auth_server) + uri.query['oauth_token'] = token + uri.query['hd'] = hd + if next is not None: + uri.query['oauth_callback'] = str(next) + if hl is not None: + uri.query['hl'] = hl + if btmpl is not None: + uri.query['btmpl'] = btmpl + return uri + + +def oauth_token_info_from_url(url): + """Exracts an OAuth access token from the redirected page's URL. + + Returns: + A tuple of strings containing the OAuth token and the OAuth verifier which + need to sent when upgrading a request token to an access token. + """ + if isinstance(url, (str, unicode)): + url = atom.http_core.Uri.parse_uri(url) + token = None + verifier = None + if 'oauth_token' in url.query: + token = urllib.unquote(url.query['oauth_token']) + if 'oauth_verifier' in url.query: + verifier = urllib.unquote(url.query['oauth_verifier']) + return (token, verifier) + + +def authorize_request_token(request_token, url): + """Adds information to request token to allow it to become an access token. + + Modifies the request_token object passed in by setting and unsetting the + necessary fields to allow this token to form a valid upgrade request. + + Args: + request_token: The OAuth request token which has been authorized by the + user. In order for this token to be upgraded to an access token, + certain fields must be extracted from the URL and added to the token + so that they can be passed in an upgrade-token request. + url: The URL of the current page which the user's browser was redirected + to after they authorized access for the app. This function extracts + information from the URL which is needed to upgraded the token from + a request token to an access token. + + Returns: + The same token object which was passed in. + """ + token, verifier = oauth_token_info_from_url(url) + request_token.token = token + request_token.verifier = verifier + request_token.auth_state = AUTHORIZED_REQUEST_TOKEN + return request_token + + +AuthorizeRequestToken = authorize_request_token + + +def upgrade_to_access_token(request_token, server_response_body): + """Extracts access token information from response to an upgrade request. + + Once the server has responded with the new token info for the OAuth + access token, this method modifies the request_token to set and unset + necessary fields to create valid OAuth authorization headers for requests. + + Args: + request_token: An OAuth token which this function modifies to allow it + to be used as an access token. + server_response_body: str The server's response to an OAuthAuthorizeToken + request. This should contain the new token and token_secret which + are used to generate the signature and parameters of the Authorization + header in subsequent requests to Google Data APIs. + + Returns: + The same token object which was passed in. + """ + token, token_secret = oauth_token_info_from_body(server_response_body) + request_token.token = token + request_token.token_secret = token_secret + request_token.auth_state = ACCESS_TOKEN + request_token.next = None + request_token.verifier = None + return request_token + + +UpgradeToAccessToken = upgrade_to_access_token + + +REQUEST_TOKEN = 1 +AUTHORIZED_REQUEST_TOKEN = 2 +ACCESS_TOKEN = 3 + + +class OAuthHmacToken(object): + SIGNATURE_METHOD = HMAC_SHA1 + + def __init__(self, consumer_key, consumer_secret, token, token_secret, + auth_state, next=None, verifier=None): + self.consumer_key = consumer_key + self.consumer_secret = consumer_secret + self.token = token + self.token_secret = token_secret + self.auth_state = auth_state + self.next = next + self.verifier = verifier # Used to convert request token to access token. + + def generate_authorization_url( + self, google_apps_domain=DEFAULT_DOMAIN, language=None, btmpl=None, + auth_server=OAUTH_AUTHORIZE_URL): + """Creates the URL at which the user can authorize this app to access. + + Args: + google_apps_domain: str (optional) If the user should be signing in + using an account under a known Google Apps domain, provide the + domain name ('example.com') here. If not provided, 'default' + will be used, and the user will be prompted to select an account + if they are signed in with a Google Account and Google Apps + accounts. + language: str (optional) An ISO 639 country code identifying what + language the approval page should be translated in (for example, + 'en' for English). The default is the user's selected language. + btmpl: str (optional) Forces a mobile version of the approval page. The + only accepted value is 'mobile'. + auth_server: str (optional) The start of the token authorization web + page. Defaults to + 'https://www.google.com/accounts/OAuthAuthorizeToken' + """ + return generate_oauth_authorization_url( + self.token, hd=google_apps_domain, hl=language, btmpl=btmpl, + auth_server=auth_server) + + GenerateAuthorizationUrl = generate_authorization_url + + def modify_request(self, http_request): + """Sets the Authorization header in the HTTP request using the token. + + Calculates an HMAC signature using the information in the token to + indicate that the request came from this application and that this + application has permission to access a particular user's data. + + Returns: + The same HTTP request object which was passed in. + """ + timestamp = str(int(time.time())) + nonce = ''.join([str(random.randint(0, 9)) for i in xrange(15)]) + signature = generate_hmac_signature( + http_request, self.consumer_key, self.consumer_secret, timestamp, + nonce, version='1.0', next=self.next, token=self.token, + token_secret=self.token_secret, verifier=self.verifier) + http_request.headers['Authorization'] = generate_auth_header( + self.consumer_key, timestamp, nonce, HMAC_SHA1, signature, + version='1.0', next=self.next, token=self.token, + verifier=self.verifier) + return http_request + + ModifyRequest = modify_request + + +class OAuthRsaToken(OAuthHmacToken): + SIGNATURE_METHOD = RSA_SHA1 + + def __init__(self, consumer_key, rsa_private_key, token, token_secret, + auth_state, next=None, verifier=None): + self.consumer_key = consumer_key + self.rsa_private_key = rsa_private_key + self.token = token + self.token_secret = token_secret + self.auth_state = auth_state + self.next = next + self.verifier = verifier # Used to convert request token to access token. + + def modify_request(self, http_request): + """Sets the Authorization header in the HTTP request using the token. + + Calculates an RSA signature using the information in the token to + indicate that the request came from this application and that this + application has permission to access a particular user's data. + + Returns: + The same HTTP request object which was passed in. + """ + timestamp = str(int(time.time())) + nonce = ''.join([str(random.randint(0, 9)) for i in xrange(15)]) + signature = generate_rsa_signature( + http_request, self.consumer_key, self.rsa_private_key, timestamp, + nonce, version='1.0', next=self.next, token=self.token, + token_secret=self.token_secret, verifier=self.verifier) + http_request.headers['Authorization'] = generate_auth_header( + self.consumer_key, timestamp, nonce, RSA_SHA1, signature, + version='1.0', next=self.next, token=self.token, + verifier=self.verifier) + return http_request + + ModifyRequest = modify_request + + +class TwoLeggedOAuthHmacToken(OAuthHmacToken): + + def __init__(self, consumer_key, consumer_secret, requestor_id): + self.requestor_id = requestor_id + OAuthHmacToken.__init__( + self, consumer_key, consumer_secret, None, None, ACCESS_TOKEN, + next=None, verifier=None) + + def modify_request(self, http_request): + """Sets the Authorization header in the HTTP request using the token. + + Calculates an HMAC signature using the information in the token to + indicate that the request came from this application and that this + application has permission to access a particular user's data using 2LO. + + Returns: + The same HTTP request object which was passed in. + """ + http_request.uri.query['xoauth_requestor_id'] = self.requestor_id + return OAuthHmacToken.modify_request(self, http_request) + + ModifyRequest = modify_request + + +class TwoLeggedOAuthRsaToken(OAuthRsaToken): + + def __init__(self, consumer_key, rsa_private_key, requestor_id): + self.requestor_id = requestor_id + OAuthRsaToken.__init__( + self, consumer_key, rsa_private_key, None, None, ACCESS_TOKEN, + next=None, verifier=None) + + def modify_request(self, http_request): + """Sets the Authorization header in the HTTP request using the token. + + Calculates an RSA signature using the information in the token to + indicate that the request came from this application and that this + application has permission to access a particular user's data using 2LO. + + Returns: + The same HTTP request object which was passed in. + """ + http_request.uri.query['xoauth_requestor_id'] = self.requestor_id + return OAuthRsaToken.modify_request(self, http_request) + + ModifyRequest = modify_request + + +def _join_token_parts(*args): + """"Escapes and combines all strings passed in. + + Used to convert a token object's members into a string instead of + using pickle. + + Note: A None value will be converted to an empty string. + + Returns: + A string in the form 1x|member1|member2|member3... + """ + return '|'.join([urllib.quote_plus(a or '') for a in args]) + + +def _split_token_parts(blob): + """Extracts and unescapes fields from the provided binary string. + + Reverses the packing performed by _join_token_parts. Used to extract + the members of a token object. + + Note: An empty string from the blob will be interpreted as None. + + Args: + blob: str A string of the form 1x|member1|member2|member3 as created + by _join_token_parts + + Returns: + A list of unescaped strings. + """ + return [urllib.unquote_plus(part) or None for part in blob.split('|')] + + +def token_to_blob(token): + """Serializes the token data as a string for storage in a datastore. + + Supported token classes: ClientLoginToken, AuthSubToken, SecureAuthSubToken, + OAuthRsaToken, and OAuthHmacToken, TwoLeggedOAuthRsaToken, + TwoLeggedOAuthHmacToken. + + Args: + token: A token object which must be of one of the supported token classes. + + Raises: + UnsupportedTokenType if the token is not one of the supported token + classes listed above. + + Returns: + A string represenging this token. The string can be converted back into + an equivalent token object using token_from_blob. Note that any members + which are set to '' will be set to None when the token is deserialized + by token_from_blob. + """ + if isinstance(token, ClientLoginToken): + return _join_token_parts('1c', token.token_string) + # Check for secure auth sub type first since it is a subclass of + # AuthSubToken. + elif isinstance(token, SecureAuthSubToken): + return _join_token_parts('1s', token.token_string, token.rsa_private_key, + *token.scopes) + elif isinstance(token, AuthSubToken): + return _join_token_parts('1a', token.token_string, *token.scopes) + elif isinstance(token, TwoLeggedOAuthRsaToken): + return _join_token_parts( + '1rtl', token.consumer_key, token.rsa_private_key, token.requestor_id) + elif isinstance(token, TwoLeggedOAuthHmacToken): + return _join_token_parts( + '1htl', token.consumer_key, token.consumer_secret, token.requestor_id) + # Check RSA OAuth token first since the OAuthRsaToken is a subclass of + # OAuthHmacToken. + elif isinstance(token, OAuthRsaToken): + return _join_token_parts( + '1r', token.consumer_key, token.rsa_private_key, token.token, + token.token_secret, str(token.auth_state), token.next, + token.verifier) + elif isinstance(token, OAuthHmacToken): + return _join_token_parts( + '1h', token.consumer_key, token.consumer_secret, token.token, + token.token_secret, str(token.auth_state), token.next, + token.verifier) + else: + raise UnsupportedTokenType( + 'Unable to serialize token of type %s' % type(token)) + + +TokenToBlob = token_to_blob + + +def token_from_blob(blob): + """Deserializes a token string from the datastore back into a token object. + + Supported token classes: ClientLoginToken, AuthSubToken, SecureAuthSubToken, + OAuthRsaToken, and OAuthHmacToken, TwoLeggedOAuthRsaToken, + TwoLeggedOAuthHmacToken. + + Args: + blob: string created by token_to_blob. + + Raises: + UnsupportedTokenType if the token is not one of the supported token + classes listed above. + + Returns: + A new token object with members set to the values serialized in the + blob string. Note that any members which were set to '' in the original + token will now be None. + """ + parts = _split_token_parts(blob) + if parts[0] == '1c': + return ClientLoginToken(parts[1]) + elif parts[0] == '1a': + return AuthSubToken(parts[1], parts[2:]) + elif parts[0] == '1s': + return SecureAuthSubToken(parts[1], parts[2], parts[3:]) + elif parts[0] == '1rtl': + return TwoLeggedOAuthRsaToken(parts[1], parts[2], parts[3]) + elif parts[0] == '1htl': + return TwoLeggedOAuthHmacToken(parts[1], parts[2], parts[3]) + elif parts[0] == '1r': + auth_state = int(parts[5]) + return OAuthRsaToken(parts[1], parts[2], parts[3], parts[4], auth_state, + parts[6], parts[7]) + elif parts[0] == '1h': + auth_state = int(parts[5]) + return OAuthHmacToken(parts[1], parts[2], parts[3], parts[4], auth_state, + parts[6], parts[7]) + else: + raise UnsupportedTokenType( + 'Unable to deserialize token with type marker of %s' % parts[0]) + + +TokenFromBlob = token_from_blob + + +def dump_tokens(tokens): + return ','.join([token_to_blob(t) for t in tokens]) + + +def load_tokens(blob): + return [token_from_blob(s) for s in blob.split(',')] + + +def find_scopes_for_services(service_names=None): + """Creates a combined list of scope URLs for the desired services. + + This method searches the AUTH_SCOPES dictionary. + + Args: + service_names: list of strings (optional) Each name must be a key in the + AUTH_SCOPES dictionary. If no list is provided (None) then + the resulting list will contain all scope URLs in the + AUTH_SCOPES dict. + + Returns: + A list of URL strings which are the scopes needed to access these services + when requesting a token using AuthSub or OAuth. + """ + result_scopes = [] + if service_names is None: + for service_name, scopes in AUTH_SCOPES.iteritems(): + result_scopes.extend(scopes) + else: + for service_name in service_names: + result_scopes.extend(AUTH_SCOPES[service_name]) + return result_scopes + + +FindScopesForServices = find_scopes_for_services + + +def ae_save(token, token_key): + """Stores an auth token in the App Engine datastore. + + This is a convenience method for using the library with App Engine. + Recommended usage is to associate the auth token with the current_user. + If a user is signed in to the app using the App Engine users API, you + can use + gdata.gauth.ae_save(some_token, users.get_current_user().user_id()) + If you are not using the Users API you are free to choose whatever + string you would like for a token_string. + + Args: + token: an auth token object. Must be one of ClientLoginToken, + AuthSubToken, SecureAuthSubToken, OAuthRsaToken, or OAuthHmacToken + (see token_to_blob). + token_key: str A unique identified to be used when you want to retrieve + the token. If the user is signed in to App Engine using the + users API, I recommend using the user ID for the token_key: + users.get_current_user().user_id() + """ + import gdata.alt.app_engine + key_name = ''.join(('gd_auth_token', token_key)) + return gdata.alt.app_engine.set_token(key_name, token_to_blob(token)) + + +AeSave = ae_save + + +def ae_load(token_key): + """Retrieves a token object from the App Engine datastore. + + This is a convenience method for using the library with App Engine. + See also ae_save. + + Args: + token_key: str The unique key associated with the desired token when it + was saved using ae_save. + + Returns: + A token object if there was a token associated with the token_key or None + if the key could not be found. + """ + import gdata.alt.app_engine + key_name = ''.join(('gd_auth_token', token_key)) + token_string = gdata.alt.app_engine.get_token(key_name) + if token_string is not None: + return token_from_blob(token_string) + else: + return None + + +AeLoad = ae_load + + +def ae_delete(token_key): + """Removes the token object from the App Engine datastore.""" + import gdata.alt.app_engine + key_name = ''.join(('gd_auth_token', token_key)) + gdata.alt.app_engine.delete_token(key_name) + + +AeDelete = ae_delete diff -Nru python-gdata-1.2.4/src/gdata/geo/data.py python-gdata-2.0.8/src/gdata/geo/data.py --- python-gdata-1.2.4/src/gdata/geo/data.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/geo/data.py 2009-12-02 01:58:26.000000000 +0000 @@ -0,0 +1,92 @@ +#!/usr/bin/python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Contains the data classes of the Geography Extension""" + + +__author__ = 'j.s@google.com (Jeff Scudder)' + + +import atom.core + + +GEORSS_TEMPLATE = '{http://www.georss.org/georss/}%s' +GML_TEMPLATE = '{http://www.opengis.net/gml/}%s' +GEO_TEMPLATE = '{http://www.w3.org/2003/01/geo/wgs84_pos#/}%s' + + +class GeoLat(atom.core.XmlElement): + """Describes a W3C latitude.""" + _qname = GEO_TEMPLATE % 'lat' + + +class GeoLong(atom.core.XmlElement): + """Describes a W3C longitude.""" + _qname = GEO_TEMPLATE % 'long' + + +class GeoRssBox(atom.core.XmlElement): + """Describes a geographical region.""" + _qname = GEORSS_TEMPLATE % 'box' + + +class GeoRssPoint(atom.core.XmlElement): + """Describes a geographical location.""" + _qname = GEORSS_TEMPLATE % 'point' + + +class GmlLowerCorner(atom.core.XmlElement): + """Describes a lower corner of a region.""" + _qname = GML_TEMPLATE % 'lowerCorner' + + +class GmlPos(atom.core.XmlElement): + """Describes a latitude and longitude.""" + _qname = GML_TEMPLATE % 'pos' + + +class GmlPoint(atom.core.XmlElement): + """Describes a particular geographical point.""" + _qname = GML_TEMPLATE % 'Point' + pos = GmlPos + + +class GmlUpperCorner(atom.core.XmlElement): + """Describes an upper corner of a region.""" + _qname = GML_TEMPLATE % 'upperCorner' + + +class GmlEnvelope(atom.core.XmlElement): + """Describes a Gml geographical region.""" + _qname = GML_TEMPLATE % 'Envelope' + lower_corner = GmlLowerCorner + upper_corner = GmlUpperCorner + + +class GeoRssWhere(atom.core.XmlElement): + """Describes a geographical location or region.""" + _qname = GEORSS_TEMPLATE % 'where' + Point = GmlPoint + Envelope = GmlEnvelope + + +class W3CPoint(atom.core.XmlElement): + """Describes a W3C geographical location.""" + _qname = GEO_TEMPLATE % 'Point' + long = GeoLong + lat = GeoLat + + diff -Nru python-gdata-1.2.4/src/gdata/health/__init__.py python-gdata-2.0.8/src/gdata/health/__init__.py --- python-gdata-1.2.4/src/gdata/health/__init__.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/health/__init__.py 2009-03-19 16:41:03.000000000 +0000 @@ -0,0 +1,229 @@ +#!/usr/bin/python +# +# Copyright 2009 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Contains extensions to Atom objects used with Google Health.""" + +__author__ = 'api.eric@google.com (Eric Bidelman)' + +import atom +import gdata + + +CCR_NAMESPACE = 'urn:astm-org:CCR' +METADATA_NAMESPACE = 'http://schemas.google.com/health/metadata' + + +class Ccr(atom.AtomBase): + """Represents a Google Health .""" + + _tag = 'ContinuityOfCareRecord' + _namespace = CCR_NAMESPACE + _children = atom.AtomBase._children.copy() + + def __init__(self, extension_elements=None, + extension_attributes=None, text=None): + atom.AtomBase.__init__(self, extension_elements=extension_elements, + extension_attributes=extension_attributes, text=text) + + def GetAlerts(self): + """Helper for extracting Alert/Allergy data from the CCR. + + Returns: + A list of ExtensionElements (one for each allergy found) or None if + no allergies where found in this CCR. + """ + try: + body = self.FindExtensions('Body')[0] + return body.FindChildren('Alerts')[0].FindChildren('Alert') + except: + return None + + def GetAllergies(self): + """Alias for GetAlerts().""" + return self.GetAlerts() + + def GetProblems(self): + """Helper for extracting Problem/Condition data from the CCR. + + Returns: + A list of ExtensionElements (one for each problem found) or None if + no problems where found in this CCR. + """ + try: + body = self.FindExtensions('Body')[0] + return body.FindChildren('Problems')[0].FindChildren('Problem') + except: + return None + + def GetConditions(self): + """Alias for GetProblems().""" + return self.GetProblems() + + def GetProcedures(self): + """Helper for extracting Procedure data from the CCR. + + Returns: + A list of ExtensionElements (one for each procedure found) or None if + no procedures where found in this CCR. + """ + try: + body = self.FindExtensions('Body')[0] + return body.FindChildren('Procedures')[0].FindChildren('Procedure') + except: + return None + + def GetImmunizations(self): + """Helper for extracting Immunization data from the CCR. + + Returns: + A list of ExtensionElements (one for each immunization found) or None if + no immunizations where found in this CCR. + """ + try: + body = self.FindExtensions('Body')[0] + return body.FindChildren('Immunizations')[0].FindChildren('Immunization') + except: + return None + + def GetMedications(self): + """Helper for extracting Medication data from the CCR. + + Returns: + A list of ExtensionElements (one for each medication found) or None if + no medications where found in this CCR. + """ + try: + body = self.FindExtensions('Body')[0] + return body.FindChildren('Medications')[0].FindChildren('Medication') + except: + return None + + def GetResults(self): + """Helper for extracting Results/Labresults data from the CCR. + + Returns: + A list of ExtensionElements (one for each result found) or None if + no results where found in this CCR. + """ + try: + body = self.FindExtensions('Body')[0] + return body.FindChildren('Results')[0].FindChildren('Result') + except: + return None + + +class ProfileEntry(gdata.GDataEntry): + """The Google Health version of an Atom Entry.""" + + _tag = gdata.GDataEntry._tag + _namespace = atom.ATOM_NAMESPACE + _children = gdata.GDataEntry._children.copy() + _attributes = gdata.GDataEntry._attributes.copy() + _children['{%s}ContinuityOfCareRecord' % CCR_NAMESPACE] = ('ccr', Ccr) + + def __init__(self, ccr=None, author=None, category=None, content=None, + atom_id=None, link=None, published=None, title=None, + updated=None, text=None, extension_elements=None, + extension_attributes=None): + self.ccr = ccr + gdata.GDataEntry.__init__( + self, author=author, category=category, content=content, + atom_id=atom_id, link=link, published=published, title=title, + updated=updated, extension_elements=extension_elements, + extension_attributes=extension_attributes, text=text) + + +class ProfileFeed(gdata.GDataFeed): + """A feed containing a list of Google Health profile entries.""" + + _tag = gdata.GDataFeed._tag + _namespace = atom.ATOM_NAMESPACE + _children = gdata.GDataFeed._children.copy() + _attributes = gdata.GDataFeed._attributes.copy() + _children['{%s}entry' % atom.ATOM_NAMESPACE] = ('entry', [ProfileEntry]) + + +class ProfileListEntry(gdata.GDataEntry): + """The Atom Entry in the Google Health profile list feed.""" + + _tag = gdata.GDataEntry._tag + _namespace = atom.ATOM_NAMESPACE + _children = gdata.GDataEntry._children.copy() + _attributes = gdata.GDataEntry._attributes.copy() + + def GetProfileId(self): + return self.content.text + + def GetProfileName(self): + return self.title.text + + +class ProfileListFeed(gdata.GDataFeed): + """A feed containing a list of Google Health profile list entries.""" + + _tag = gdata.GDataFeed._tag + _namespace = atom.ATOM_NAMESPACE + _children = gdata.GDataFeed._children.copy() + _attributes = gdata.GDataFeed._attributes.copy() + _children['{%s}entry' % atom.ATOM_NAMESPACE] = ('entry', [ProfileListEntry]) + + +def ProfileEntryFromString(xml_string): + """Converts an XML string into a ProfileEntry object. + + Args: + xml_string: string The XML describing a Health profile feed entry. + + Returns: + A ProfileEntry object corresponding to the given XML. + """ + return atom.CreateClassFromXMLString(ProfileEntry, xml_string) + + +def ProfileListEntryFromString(xml_string): + """Converts an XML string into a ProfileListEntry object. + + Args: + xml_string: string The XML describing a Health profile list feed entry. + + Returns: + A ProfileListEntry object corresponding to the given XML. + """ + return atom.CreateClassFromXMLString(ProfileListEntry, xml_string) + + +def ProfileFeedFromString(xml_string): + """Converts an XML string into a ProfileFeed object. + + Args: + xml_string: string The XML describing a ProfileFeed feed. + + Returns: + A ProfileFeed object corresponding to the given XML. + """ + return atom.CreateClassFromXMLString(ProfileFeed, xml_string) + + +def ProfileListFeedFromString(xml_string): + """Converts an XML string into a ProfileListFeed object. + + Args: + xml_string: string The XML describing a ProfileListFeed feed. + + Returns: + A ProfileListFeed object corresponding to the given XML. + """ + return atom.CreateClassFromXMLString(ProfileListFeed, xml_string) diff -Nru python-gdata-1.2.4/src/gdata/health/service.py python-gdata-2.0.8/src/gdata/health/service.py --- python-gdata-1.2.4/src/gdata/health/service.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/health/service.py 2009-03-19 16:41:03.000000000 +0000 @@ -0,0 +1,263 @@ +#!/usr/bin/python +# +# Copyright 2009 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""HealthService extends GDataService to streamline Google Health API access. + + HealthService: Provides methods to interact with the profile, profile list, + and register/notices feeds. Extends GDataService. + + HealthProfileQuery: Queries the Google Health Profile feed. + + HealthProfileListQuery: Queries the Google Health Profile list feed. +""" + +__author__ = 'api.eric@google.com (Eric Bidelman)' + + +import atom +import gdata.health +import gdata.service + + +class HealthService(gdata.service.GDataService): + + """Client extension for the Google Health service Document List feed.""" + + def __init__(self, email=None, password=None, source=None, + use_h9_sandbox=False, server='www.google.com', + additional_headers=None, **kwargs): + """Creates a client for the Google Health service. + + Args: + email: string (optional) The user's email address, used for + authentication. + password: string (optional) The user's password. + source: string (optional) The name of the user's application. + use_h9_sandbox: boolean (optional) True to issue requests against the + /h9 developer's sandbox. + server: string (optional) The name of the server to which a connection + will be opened. + additional_headers: dictionary (optional) Any additional headers which + should be included with CRUD operations. + kwargs: The other parameters to pass to gdata.service.GDataService + constructor. + """ + service = use_h9_sandbox and 'weaver' or 'health' + gdata.service.GDataService.__init__( + self, email=email, password=password, service=service, source=source, + server=server, additional_headers=additional_headers, **kwargs) + self.ssl = True + self.use_h9_sandbox = use_h9_sandbox + + def __get_service(self): + return self.use_h9_sandbox and 'h9' or 'health' + + def GetProfileFeed(self, query=None, profile_id=None): + """Fetches the users Google Health profile feed. + + Args: + query: HealthProfileQuery or string (optional) A query to use on the + profile feed. If None, a HealthProfileQuery is constructed. + profile_id: string (optional) The profile id to query the profile feed + with when using ClientLogin. Note: this parameter is ignored if + query is set. + + Returns: + A gdata.health.ProfileFeed object containing the user's Health profile. + """ + if query is None: + projection = profile_id and 'ui' or 'default' + uri = HealthProfileQuery( + service=self.__get_service(), projection=projection, + profile_id=profile_id).ToUri() + elif isinstance(query, HealthProfileQuery): + uri = query.ToUri() + else: + uri = query + + return self.GetFeed(uri, converter=gdata.health.ProfileFeedFromString) + + def GetProfileListFeed(self, query=None): + """Fetches the users Google Health profile feed. + + Args: + query: HealthProfileListQuery or string (optional) A query to use + on the profile list feed. If None, a HealthProfileListQuery is + constructed to /health/feeds/profile/list or /h9/feeds/profile/list. + + Returns: + A gdata.health.ProfileListFeed object containing the user's list + of profiles. + """ + if not query: + uri = HealthProfileListQuery(service=self.__get_service()).ToUri() + elif isinstance(query, HealthProfileListQuery): + uri = query.ToUri() + else: + uri = query + + return self.GetFeed(uri, converter=gdata.health.ProfileListFeedFromString) + + def SendNotice(self, subject, body=None, content_type='html', + ccr=None, profile_id=None): + """Sends (posts) a notice to the user's Google Health profile. + + Args: + subject: A string representing the message's subject line. + body: string (optional) The message body. + content_type: string (optional) The content type of the notice message + body. This parameter is only honored when a message body is + specified. + ccr: string (optional) The CCR XML document to reconcile into the + user's profile. + profile_id: string (optional) The profile id to work with when using + ClientLogin. Note: this parameter is ignored if query is set. + + Returns: + A gdata.health.ProfileEntry object of the posted entry. + """ + if body: + content = atom.Content(content_type=content_type, text=body) + else: + content = body + + entry = gdata.GDataEntry( + title=atom.Title(text=subject), content=content, + extension_elements=[atom.ExtensionElementFromString(ccr)]) + + projection = profile_id and 'ui' or 'default' + query = HealthRegisterQuery(service=self.__get_service(), + projection=projection, profile_id=profile_id) + return self.Post(entry, query.ToUri(), + converter=gdata.health.ProfileEntryFromString) + + +class HealthProfileQuery(gdata.service.Query): + + """Object used to construct a URI to query the Google Health profile feed.""" + + def __init__(self, service='health', feed='feeds/profile', + projection='default', profile_id=None, text_query=None, + params=None, categories=None): + """Constructor for Health profile feed query. + + Args: + service: string (optional) The service to query. Either 'health' or 'h9'. + feed: string (optional) The path for the feed. The default value is + 'feeds/profile'. + projection: string (optional) The visibility of the data. Possible values + are 'default' for AuthSub and 'ui' for ClientLogin. If this value + is set to 'ui', the profile_id parameter should also be set. + profile_id: string (optional) The profile id to query. This should only + be used when using ClientLogin. + text_query: str (optional) The contents of the q query parameter. The + contents of the text_query are URL escaped upon conversion to a URI. + Note: this parameter can only be used on the register feed using + ClientLogin. + params: dict (optional) Parameter value string pairs which become URL + params when translated to a URI. These parameters are added to + the query's items. + categories: list (optional) List of category strings which should be + included as query categories. See gdata.service.Query for + additional documentation. + """ + self.service = service + self.profile_id = profile_id + self.projection = projection + gdata.service.Query.__init__(self, feed=feed, text_query=text_query, + params=params, categories=categories) + + def ToUri(self): + """Generates a URI from the query parameters set in the object. + + Returns: + A string containing the URI used to retrieve entries from the Health + profile feed. + """ + old_feed = self.feed + self.feed = '/'.join([self.service, old_feed, self.projection]) + + if self.profile_id: + self.feed += '/' + self.profile_id + self.feed = '/%s' % (self.feed,) + + new_feed = gdata.service.Query.ToUri(self) + self.feed = old_feed + return new_feed + + +class HealthProfileListQuery(gdata.service.Query): + + """Object used to construct a URI to query a Health profile list feed.""" + + def __init__(self, service='health', feed='feeds/profile/list'): + """Constructor for Health profile list feed query. + + Args: + service: string (optional) The service to query. Either 'health' or 'h9'. + feed: string (optional) The path for the feed. The default value is + 'feeds/profile/list'. + """ + gdata.service.Query.__init__(self, feed) + self.service = service + + def ToUri(self): + """Generates a URI from the query parameters set in the object. + + Returns: + A string containing the URI used to retrieve entries from the + profile list feed. + """ + return '/%s' % ('/'.join([self.service, self.feed]),) + + +class HealthRegisterQuery(gdata.service.Query): + + """Object used to construct a URI to query a Health register/notice feed.""" + + def __init__(self, service='health', feed='feeds/register', + projection='default', profile_id=None): + """Constructor for Health profile list feed query. + + Args: + service: string (optional) The service to query. Either 'health' or 'h9'. + feed: string (optional) The path for the feed. The default value is + 'feeds/register'. + projection: string (optional) The visibility of the data. Possible values + are 'default' for AuthSub and 'ui' for ClientLogin. If this value + is set to 'ui', the profile_id parameter should also be set. + profile_id: string (optional) The profile id to query. This should only + be used when using ClientLogin. + """ + gdata.service.Query.__init__(self, feed) + self.service = service + self.projection = projection + self.profile_id = profile_id + + def ToUri(self): + """Generates a URI from the query parameters set in the object. + + Returns: + A string containing the URI needed to interact with the register feed. + """ + old_feed = self.feed + self.feed = '/'.join([self.service, old_feed, self.projection]) + new_feed = gdata.service.Query.ToUri(self) + self.feed = old_feed + + if self.profile_id: + new_feed += '/' + self.profile_id + return '/%s' % (new_feed,) diff -Nru python-gdata-1.2.4/src/gdata/__init__.py python-gdata-2.0.8/src/gdata/__init__.py --- python-gdata-1.2.4/src/gdata/__init__.py 2008-10-08 19:09:15.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/__init__.py 2009-10-30 18:23:57.000000000 +0000 @@ -21,7 +21,7 @@ """ -__author__ = 'api.jscudder (Jeffrey Scudder)' +__author__ = 'j.s@google.com (Jeffrey Scudder)' import os import atom @@ -65,7 +65,7 @@ """GData Entries can refer to media sources, so this class provides a place to store references to these objects along with some metadata. """ - + def __init__(self, file_handle=None, content_type=None, content_length=None, file_path=None, file_name=None): """Creates an object of type MediaSource. @@ -104,7 +104,7 @@ self.content_type = content_type self.content_length = os.path.getsize(file_name) self.file_name = os.path.basename(file_name) - + class LinkFinder(atom.LinkFinder): """An "interface" providing methods to find link elements @@ -134,7 +134,7 @@ if a_link.rel == 'edit': return a_link return None - + def GetEditMediaLink(self): """The Picasa API mistakenly returns media-edit rather than edit-media, but this may change soon. @@ -159,7 +159,7 @@ def GetPostLink(self): """Get a link containing the POST target URL. - + The POST target URL is used to insert new entries. Returns: @@ -197,7 +197,7 @@ class TotalResults(atom.AtomBase): """opensearch:TotalResults for a GData feed""" - + _tag = 'totalResults' _namespace = OPENSEARCH_NAMESPACE _children = atom.AtomBase._children.copy() @@ -213,7 +213,7 @@ def TotalResultsFromString(xml_string): return atom.CreateClassFromXMLString(TotalResults, xml_string) - + class StartIndex(atom.AtomBase): """The opensearch:startIndex element in GData feed""" @@ -222,7 +222,7 @@ _children = atom.AtomBase._children.copy() _attributes = atom.AtomBase._attributes.copy() - def __init__(self, extension_elements=None, + def __init__(self, extension_elements=None, extension_attributes=None, text=None): self.text = text self.extension_elements = extension_elements or [] @@ -254,9 +254,9 @@ class ExtendedProperty(atom.AtomBase): """The Google Data extendedProperty element. - + Used to store arbitrary key-value information specific to your - application. The value can either be a text string stored as an XML + application. The value can either be a text string stored as an XML attribute (.value), or an XML node (XmlBlob) as a child element. This element is used in the Google Calendar data API and the Google @@ -280,7 +280,7 @@ def GetXmlBlobExtensionElement(self): """Returns the XML blob as an atom.ExtensionElement. - + Returns: An atom.ExtensionElement representing the blob's XML, or None if no blob was set. @@ -339,7 +339,7 @@ def __GetId(self): return self.__id - # This method was created to strip the unwanted whitespace from the id's + # This method was created to strip the unwanted whitespace from the id's # text node. def __SetId(self, id): self.__id = id @@ -347,7 +347,7 @@ self.__id.text = id.text.strip() id = property(__GetId, __SetId) - + def IsMedia(self): """Determines whether or not an entry is a GData Media entry. """ @@ -355,7 +355,7 @@ return True else: return False - + def GetMediaURL(self): """Returns the URL to the media content, if the entry is a media entry. Otherwise returns None. @@ -378,9 +378,9 @@ _namespace = atom.ATOM_NAMESPACE _children = atom.Feed._children.copy() _attributes = atom.Feed._attributes.copy() - _children['{%s}totalResults' % OPENSEARCH_NAMESPACE] = ('total_results', + _children['{%s}totalResults' % OPENSEARCH_NAMESPACE] = ('total_results', TotalResults) - _children['{%s}startIndex' % OPENSEARCH_NAMESPACE] = ('start_index', + _children['{%s}startIndex' % OPENSEARCH_NAMESPACE] = ('start_index', StartIndex) _children['{%s}itemsPerPage' % OPENSEARCH_NAMESPACE] = ('items_per_page', ItemsPerPage) @@ -409,34 +409,34 @@ generator = property(__GetGenerator, __SetGenerator) def __init__(self, author=None, category=None, contributor=None, - generator=None, icon=None, atom_id=None, link=None, logo=None, - rights=None, subtitle=None, title=None, updated=None, entry=None, + generator=None, icon=None, atom_id=None, link=None, logo=None, + rights=None, subtitle=None, title=None, updated=None, entry=None, total_results=None, start_index=None, items_per_page=None, extension_elements=None, extension_attributes=None, text=None): """Constructor for Source - + Args: author: list (optional) A list of Author instances which belong to this class. category: list (optional) A list of Category instances contributor: list (optional) A list on Contributor instances - generator: Generator (optional) - icon: Icon (optional) + generator: Generator (optional) + icon: Icon (optional) id: Id (optional) The entry's Id element link: list (optional) A list of Link instances - logo: Logo (optional) + logo: Logo (optional) rights: Rights (optional) The entry's Rights element subtitle: Subtitle (optional) The entry's subtitle element title: Title (optional) the entry's title element updated: Updated (optional) the entry's updated element - entry: list (optional) A list of the Entry instances contained in the + entry: list (optional) A list of the Entry instances contained in the feed. - text: String (optional) The text contents of the element. This is the - contents of the Entry's XML text node. + text: String (optional) The text contents of the element. This is the + contents of the Entry's XML text node. (Example: This is the text) extension_elements: list (optional) A list of ExtensionElement instances which are children of this element. - extension_attributes: dict (optional) A dictionary of strings which are + extension_attributes: dict (optional) A dictionary of strings which are the values for additional XML attributes of this element. """ @@ -483,13 +483,13 @@ _attributes = atom.AtomBase._attributes.copy() _attributes['type'] = 'type' - def __init__(self, op_type=None, extension_elements=None, + def __init__(self, op_type=None, extension_elements=None, extension_attributes=None, text=None): self.type = op_type - atom.AtomBase.__init__(self, - extension_elements=extension_elements, - extension_attributes=extension_attributes, + atom.AtomBase.__init__(self, + extension_elements=extension_elements, + extension_attributes=extension_attributes, text=text) @@ -499,8 +499,8 @@ class BatchStatus(atom.AtomBase): """The batch:status element present in a batch response entry. - - A status element contains the code (HTTP response code) and + + A status element contains the code (HTTP response code) and reason as elements. In a single request these fields would be part of the HTTP response, but in a batch request each Entry operation has a corresponding Entry in the response @@ -517,13 +517,13 @@ _attributes['reason'] = 'reason' _attributes['content-type'] = 'content_type' - def __init__(self, code=None, reason=None, content_type=None, + def __init__(self, code=None, reason=None, content_type=None, extension_elements=None, extension_attributes=None, text=None): self.code = code self.reason = reason self.content_type = content_type atom.AtomBase.__init__(self, extension_elements=extension_elements, - extension_attributes=extension_attributes, + extension_attributes=extension_attributes, text=text) @@ -543,7 +543,7 @@ _tag = GDataEntry._tag _namespace = GDataEntry._namespace _children = GDataEntry._children.copy() - _children['{%s}operation' % BATCH_NAMESPACE] = ('batch_operation', BatchOperation) + _children['{%s}operation' % BATCH_NAMESPACE] = ('batch_operation', BatchOperation) _children['{%s}id' % BATCH_NAMESPACE] = ('batch_id', BatchId) _children['{%s}status' % BATCH_NAMESPACE] = ('batch_status', BatchStatus) _attributes = GDataEntry._attributes.copy() @@ -556,11 +556,11 @@ self.batch_operation = batch_operation self.batch_id = batch_id self.batch_status = batch_status - GDataEntry.__init__(self, author=author, category=category, - content=content, contributor=contributor, atom_id=atom_id, link=link, - published=published, rights=rights, source=source, summary=summary, - control=control, title=title, updated=updated, - extension_elements=extension_elements, + GDataEntry.__init__(self, author=author, category=category, + content=content, contributor=contributor, atom_id=atom_id, link=link, + published=published, rights=rights, source=source, summary=summary, + control=control, title=title, updated=updated, + extension_elements=extension_elements, extension_attributes=extension_attributes, text=text) @@ -570,7 +570,7 @@ class BatchInterrupted(atom.AtomBase): """The batch:interrupted element sent if batch request was interrupted. - + Only appears in a feed if some of the batch entries could not be processed. See: http://code.google.com/apis/gdata/batch.html#Handling_Errors """ @@ -584,14 +584,14 @@ _attributes['failures'] = 'failures' _attributes['parsed'] = 'parsed' - def __init__(self, reason=None, success=None, failures=None, parsed=None, + def __init__(self, reason=None, success=None, failures=None, parsed=None, extension_elements=None, extension_attributes=None, text=None): self.reason = reason self.success = success self.failures = failures self.parsed = parsed atom.AtomBase.__init__(self, extension_elements=extension_elements, - extension_attributes=extension_attributes, + extension_attributes=extension_attributes, text=text) @@ -616,24 +616,24 @@ interrupted=None, extension_elements=None, extension_attributes=None, text=None): self.interrupted = interrupted - GDataFeed.__init__(self, author=author, category=category, - contributor=contributor, generator=generator, - icon=icon, atom_id=atom_id, link=link, + GDataFeed.__init__(self, author=author, category=category, + contributor=contributor, generator=generator, + icon=icon, atom_id=atom_id, link=link, logo=logo, rights=rights, subtitle=subtitle, title=title, updated=updated, entry=entry, total_results=total_results, start_index=start_index, items_per_page=items_per_page, - extension_elements=extension_elements, + extension_elements=extension_elements, extension_attributes=extension_attributes, text=text) - def AddBatchEntry(self, entry=None, id_url_string=None, + def AddBatchEntry(self, entry=None, id_url_string=None, batch_id_string=None, operation_string=None): """Logic for populating members of a BatchEntry and adding to the feed. - + If the entry is not a BatchEntry, it is converted to a BatchEntry so - that the batch specific members will be present. + that the batch specific members will be present. The id_url_string can be used in place of an entry if the batch operation applies to a URL. For example query and delete operations require just @@ -641,15 +641,15 @@ id_url_string is sent instead of an entry, a BatchEntry is created and added to the feed. - This method also assigns the desired batch id to the entry so that it + This method also assigns the desired batch id to the entry so that it can be referenced in the server's response. If the batch_id_string is None, this method will assign a batch_id to be the index at which this entry will be in the feed's entry list. - + Args: entry: BatchEntry, atom.Entry, or another Entry flavor (optional) The entry which will be sent to the server as part of the batch request. - The item must have a valid atom id so that the server knows which + The item must have a valid atom id so that the server knows which entry this request references. id_url_string: str (optional) The URL of the entry to be acted on. You can find this URL in the text member of the atom id for an entry. @@ -663,7 +663,7 @@ operation_string: str (optional) The desired batch operation which will set the batch_operation.type member of the entry. Options are 'insert', 'update', 'delete', and 'query' - + Raises: MissingRequiredParameters: Raised if neither an id_ url_string nor an entry are provided in the request. @@ -704,12 +704,12 @@ """ entry = self.AddBatchEntry(entry=entry, batch_id_string=batch_id_string, operation_string=BATCH_INSERT) - + def AddUpdate(self, entry, batch_id_string=None): """Add an update request to the list of batch operations in this feed. Sets the operation type of the entry to insert if it is not already set - and assigns the desired batch id to the entry so that it can be + and assigns the desired batch id to the entry so that it can be referenced in the server's response. Args: @@ -728,27 +728,27 @@ """Adds a delete request to the batch request feed. This method takes either the url_string which is the atom id of the item - to be deleted, or the entry itself. The atom id of the entry must be + to be deleted, or the entry itself. The atom id of the entry must be present so that the server knows which entry should be deleted. Args: url_string: str (optional) The URL of the entry to be deleted. You can - find this URL in the text member of the atom id for an entry. + find this URL in the text member of the atom id for an entry. entry: BatchEntry (optional) The entry to be deleted. batch_id_string: str (optional) Raises: - MissingRequiredParameters: Raised if neither a url_string nor an entry - are provided in the request. + MissingRequiredParameters: Raised if neither a url_string nor an entry + are provided in the request. """ - entry = self.AddBatchEntry(entry=entry, id_url_string=url_string, - batch_id_string=batch_id_string, + entry = self.AddBatchEntry(entry=entry, id_url_string=url_string, + batch_id_string=batch_id_string, operation_string=BATCH_DELETE) def AddQuery(self, url_string=None, entry=None, batch_id_string=None): """Adds a query request to the batch request feed. - This method takes either the url_string which is the query URL + This method takes either the url_string which is the query URL whose results will be added to the result feed. The query URL will be encapsulated in a BatchEntry, and you may pass in the BatchEntry with a query URL instead of sending a url_string. @@ -770,11 +770,11 @@ if link.rel == 'http://schemas.google.com/g/2005#batch': return link return None - + def BatchFeedFromString(xml_string): return atom.CreateClassFromXMLString(BatchFeed, xml_string) - + class EntryLink(atom.AtomBase): """The gd:entryLink element""" @@ -788,9 +788,9 @@ _attributes['rel'] = 'rel' _attributes['readOnly'] = 'read_only' _attributes['href'] = 'href' - + def __init__(self, href=None, read_only=None, rel=None, - entry=None, extension_elements=None, + entry=None, extension_elements=None, extension_attributes=None, text=None): self.href = href self.read_only = read_only @@ -799,7 +799,7 @@ self.text = text self.extension_elements = extension_elements or [] self.extension_attributes = extension_attributes or {} - + def EntryLinkFromString(xml_string): return atom.CreateClassFromXMLString(EntryLink, xml_string) @@ -821,7 +821,7 @@ def __init__(self, count_hint=None, href=None, read_only=None, rel=None, feed=None, extension_elements=None, extension_attributes=None, text=None): - self.count_hint = count_hint + self.count_hint = count_hint self.href = href self.read_only = read_only self.rel = rel @@ -832,4 +832,4 @@ def FeedLinkFromString(xml_string): - return atom.CreateClassFromXMLString(EntryLink, xml_string) + return atom.CreateClassFromXMLString(FeedLink, xml_string) diff -Nru python-gdata-1.2.4/src/gdata/maps/client.py python-gdata-2.0.8/src/gdata/maps/client.py --- python-gdata-1.2.4/src/gdata/maps/client.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/maps/client.py 2010-01-09 01:30:11.000000000 +0000 @@ -0,0 +1,179 @@ +#!/usr/bin/env python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +"""Contains a client to communicate with the Maps Data servers. + +For documentation on the Maps Data API, see: +http://code.google.com/apis/maps/documentation/mapsdata/ +""" + + +__author__ = 'api.roman.public@google.com (Roman Nurik)' + + +import gdata.client +import gdata.maps.data +import atom.data +import atom.http_core +import gdata.gauth + + +# List user's maps, takes a user ID, or 'default'. +MAP_URL_TEMPLATE = 'http://maps.google.com/maps/feeds/maps/%s/full' + +# List map's features, takes a user ID (or 'default') and map ID. +MAP_FEATURE_URL_TEMPLATE = ('http://maps.google.com/maps' + '/feeds/features/%s/%s/full') + +# The KML mime type +KML_CONTENT_TYPE = 'application/vnd.google-earth.kml+xml' + + +class MapsClient(gdata.client.GDClient): + """Maps Data API GData client.""" + + api_version = '2' + auth_service = 'local' + auth_scopes = gdata.gauth.AUTH_SCOPES['local'] + + def get_maps(self, user_id='default', auth_token=None, + desired_class=gdata.maps.data.MapFeed, **kwargs): + """Retrieves a Map feed for the given user ID. + + Args: + user_id: An optional string representing the user ID; should be 'default'. + + Returns: + A gdata.maps.data.MapFeed. + """ + return self.get_feed(MAP_URL_TEMPLATE % user_id, auth_token=auth_token, + desired_class=desired_class, **kwargs) + + GetMaps = get_maps + + def get_features(self, map_id, user_id='default', auth_token=None, + desired_class=gdata.maps.data.FeatureFeed, query=None, + **kwargs): + """Retrieves a Feature feed for the given map ID/user ID combination. + + Args: + map_id: A string representing the ID of the map whose features should be + retrieved. + user_id: An optional string representing the user ID; should be 'default'. + + Returns: + A gdata.maps.data.FeatureFeed. + """ + return self.get_feed(MAP_FEATURE_URL_TEMPLATE % (user_id, map_id), + auth_token=auth_token, desired_class=desired_class, + query=query, **kwargs) + + GetFeatures = get_features + + def create_map(self, title, summary=None, unlisted=False, + auth_token=None, title_type='text', summary_type='text', + **kwargs): + """Creates a new map and posts it to the Maps Data servers. + + Args: + title: A string representing the title of the new map. + summary: An optional string representing the new map's description. + unlisted: An optional boolean identifying whether the map should be + unlisted (True) or public (False). Default False. + + Returns: + A gdata.maps.data.Map. + """ + new_entry = gdata.maps.data.Map( + title=atom.data.Title(text=title, type=title_type)) + if summary: + new_entry.summary = atom.data.Summary(text=summary, type=summary_type) + if unlisted: + new_entry.control = atom.data.Control(draft=atom.data.Draft(text='yes')) + return self.post(new_entry, MAP_URL_TEMPLATE % 'default', + auth_token=auth_token, **kwargs) + + CreateMap = create_map + + def add_feature(self, map_id, title, content, + auth_token=None, title_type='text', + content_type=KML_CONTENT_TYPE, **kwargs): + """Adds a new feature to the given map. + + Args: + map_id: A string representing the ID of the map to which the new feature + should be added. + title: A string representing the name/title of the new feature. + content: A KML string or gdata.maps.data.KmlContent object representing + the new feature's KML contents, including its description. + + Returns: + A gdata.maps.data.Feature. + """ + if content_type == KML_CONTENT_TYPE: + if type(content) != gdata.maps.data.KmlContent: + content = gdata.maps.data.KmlContent(kml=content) + else: + content = atom.data.Content(content=content, type=content_type) + new_entry = gdata.maps.data.Feature( + title=atom.data.Title(text=title, type=title_type), + content=content) + return self.post(new_entry, MAP_FEATURE_URL_TEMPLATE % ('default', map_id), + auth_token=auth_token, **kwargs) + + AddFeature = add_feature + + def update(self, entry, auth_token=None, **kwargs): + """Sends changes to a given map or feature entry to the Maps Data servers. + + Args: + entry: A gdata.maps.data.Map or gdata.maps.data.Feature to be updated + server-side. + """ + # The Maps Data API does not currently support ETags, so for now remove + # the ETag before performing an update. + old_etag = entry.etag + entry.etag = None + response = gdata.client.GDClient.update(self, entry, + auth_token=auth_token, **kwargs) + entry.etag = old_etag + return response + + Update = update + + def delete(self, entry_or_uri, auth_token=None, **kwargs): + """Deletes the given entry or entry URI server-side. + + Args: + entry_or_uri: A gdata.maps.data.Map, gdata.maps.data.Feature, or URI + string representing the entry to delete. + """ + if isinstance(entry_or_uri, (str, unicode, atom.http_core.Uri)): + return gdata.client.GDClient.delete(self, entry_or_uri, + auth_token=auth_token, **kwargs) + # The Maps Data API does not currently support ETags, so for now remove + # the ETag before performing a delete. + old_etag = entry_or_uri.etag + entry_or_uri.etag = None + response = gdata.client.GDClient.delete(self, entry_or_uri, + auth_token=auth_token, **kwargs) + # TODO: if GDClient.delete raises and exception, the entry's etag may be + # left as None. Should revisit this logic. + entry_or_uri.etag = old_etag + return response + + Delete = delete diff -Nru python-gdata-1.2.4/src/gdata/maps/data.py python-gdata-2.0.8/src/gdata/maps/data.py --- python-gdata-1.2.4/src/gdata/maps/data.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/maps/data.py 2009-10-30 18:26:20.000000000 +0000 @@ -0,0 +1,125 @@ +#!/usr/bin/env python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +"""Data model classes for parsing and generating XML for the Maps Data API.""" + + +__author__ = 'api.roman.public@google.com (Roman Nurik)' + + +import re +import atom.core +import gdata.data + + +MAP_ATOM_ID_PATTERN = re.compile('/maps/feeds/maps/' + '(?P\w+)/' + '(?P\w+)$') + +FEATURE_ATOM_ID_PATTERN = re.compile('/maps/feeds/features/' + '(?P\w+)/' + '(?P\w+)/' + '(?P\w+)$') + +# The KML mime type +KML_CONTENT_TYPE = 'application/vnd.google-earth.kml+xml' + +# The OGC KML 2.2 namespace +KML_NAMESPACE = 'http://www.opengis.net/kml/2.2' + +class MapsDataEntry(gdata.data.GDEntry): + """Adds convenience methods inherited by all Maps Data entries.""" + + def get_user_id(self): + """Extracts the user ID of this entry.""" + if self.id.text: + match = self.__class__.atom_id_pattern.search(self.id.text) + if match: + return match.group('user_id') + return None + + GetUserId = get_user_id + + def get_map_id(self): + """Extracts the map ID of this entry.""" + if self.id.text: + match = self.__class__.atom_id_pattern.search(self.id.text) + if match: + return match.group('map_id') + return None + + GetMapId = get_map_id + + +class Map(MapsDataEntry): + """Represents a map which belongs to the user.""" + atom_id_pattern = MAP_ATOM_ID_PATTERN + + +class MapFeed(gdata.data.GDFeed): + """Represents an atom feed of maps.""" + entry = [Map] + + +class KmlContent(atom.data.Content): + """Represents an atom content element that encapsulates KML content.""" + + def __init__(self, **kwargs): + super(KmlContent, self).__init__(type=KML_CONTENT_TYPE, **kwargs) + if 'kml' in kwargs: + self.kml = kwargs['kml'] + + def _get_kml(self): + if self.children: + return self.children[0] + else: + return '' + + def _set_kml(self, kml): + if not kml: + self.children = [] + return + + if type(kml) == str: + kml = atom.core.parse(kml) + if not kml.namespace: + kml.namespace = KML_NAMESPACE + + self.children = [kml] + + kml = property(_get_kml, _set_kml) + + +class Feature(MapsDataEntry): + """Represents a single feature in a map.""" + atom_id_pattern = FEATURE_ATOM_ID_PATTERN + content = KmlContent + + def get_feature_id(self): + """Extracts the feature ID of this feature.""" + if self.id.text: + match = self.__class__.atom_id_pattern.search(self.id.text) + if match: + return match.group('feature_id') + return None + + GetFeatureId = get_feature_id + + +class FeatureFeed(gdata.data.GDFeed): + """Represents an atom feed of features.""" + entry = [Feature] diff -Nru python-gdata-1.2.4/src/gdata/media/data.py python-gdata-2.0.8/src/gdata/media/data.py --- python-gdata-1.2.4/src/gdata/media/data.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/media/data.py 2009-12-02 01:58:26.000000000 +0000 @@ -0,0 +1,159 @@ +#!/usr/bin/python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Contains the data classes of the Yahoo! Media RSS Extension""" + + +__author__ = 'j.s@google.com (Jeff Scudder)' + + +import atom.core + + +MEDIA_TEMPLATE = '{http://search.yahoo.com/mrss//}%s' + + +class MediaCategory(atom.core.XmlElement): + """Describes a media category.""" + _qname = MEDIA_TEMPLATE % 'category' + scheme = 'scheme' + label = 'label' + + +class MediaCopyright(atom.core.XmlElement): + """Describes a media copyright.""" + _qname = MEDIA_TEMPLATE % 'copyright' + url = 'url' + + +class MediaCredit(atom.core.XmlElement): + """Describes a media credit.""" + _qname = MEDIA_TEMPLATE % 'credit' + role = 'role' + scheme = 'scheme' + + +class MediaDescription(atom.core.XmlElement): + """Describes a media description.""" + _qname = MEDIA_TEMPLATE % 'description' + type = 'type' + + +class MediaHash(atom.core.XmlElement): + """Describes a media hash.""" + _qname = MEDIA_TEMPLATE % 'hash' + algo = 'algo' + + +class MediaKeywords(atom.core.XmlElement): + """Describes a media keywords.""" + _qname = MEDIA_TEMPLATE % 'keywords' + + +class MediaPlayer(atom.core.XmlElement): + """Describes a media player.""" + _qname = MEDIA_TEMPLATE % 'player' + height = 'height' + width = 'width' + url = 'url' + + +class MediaRating(atom.core.XmlElement): + """Describes a media rating.""" + _qname = MEDIA_TEMPLATE % 'rating' + scheme = 'scheme' + + +class MediaRestriction(atom.core.XmlElement): + """Describes a media restriction.""" + _qname = MEDIA_TEMPLATE % 'restriction' + relationship = 'relationship' + type = 'type' + + +class MediaText(atom.core.XmlElement): + """Describes a media text.""" + _qname = MEDIA_TEMPLATE % 'text' + end = 'end' + lang = 'lang' + type = 'type' + start = 'start' + + +class MediaThumbnail(atom.core.XmlElement): + """Describes a media thumbnail.""" + _qname = MEDIA_TEMPLATE % 'thumbnail' + time = 'time' + url = 'url' + width = 'width' + height = 'height' + + +class MediaTitle(atom.core.XmlElement): + """Describes a media title.""" + _qname = MEDIA_TEMPLATE % 'title' + type = 'type' + + +class MediaContent(atom.core.XmlElement): + """Describes a media content.""" + _qname = MEDIA_TEMPLATE % 'content' + bitrate = 'bitrate' + is_default = 'isDefault' + medium = 'medium' + height = 'height' + credit = [MediaCredit] + language = 'language' + hash = MediaHash + width = 'width' + player = MediaPlayer + url = 'url' + file_size = 'fileSize' + channels = 'channels' + expression = 'expression' + text = [MediaText] + samplingrate = 'samplingrate' + title = MediaTitle + category = [MediaCategory] + rating = [MediaRating] + type = 'type' + description = MediaDescription + framerate = 'framerate' + thumbnail = [MediaThumbnail] + duration = 'duration' + copyright = MediaCopyright + keywords = MediaKeywords + restriction = [MediaRestriction] + + +class MediaGroup(atom.core.XmlElement): + """Describes a media group.""" + _qname = MEDIA_TEMPLATE % 'group' + credit = [MediaCredit] + content = [MediaContent] + copyright = MediaCopyright + description = MediaDescription + category = [MediaCategory] + player = MediaPlayer + rating = [MediaRating] + hash = MediaHash + title = MediaTitle + keywords = MediaKeywords + restriction = [MediaRestriction] + thumbnail = [MediaThumbnail] + text = [MediaText] + + diff -Nru python-gdata-1.2.4/src/gdata/media/__init__.py python-gdata-2.0.8/src/gdata/media/__init__.py --- python-gdata-1.2.4/src/gdata/media/__init__.py 2008-06-06 21:01:12.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/media/__init__.py 2009-04-21 19:40:33.000000000 +0100 @@ -55,6 +55,7 @@ MEDIA_NAMESPACE = 'http://search.yahoo.com/mrss/' YOUTUBE_NAMESPACE = 'http://gdata.youtube.com/schemas/2007' + class MediaBaseElement(atom.AtomBase): """Base class for elements in the MEDIA_NAMESPACE. To add new elements, you only need to add the element tag name to self._tag @@ -72,6 +73,7 @@ self.extension_elements = extension_elements or [] self.extension_attributes = extension_attributes or {} + class Content(MediaBaseElement): """(attribute container) This element describes the original content, e.g. an image or a video. There may be multiple Content elements @@ -83,14 +85,15 @@ element that specifies the URL of the video itself. Attributes: - url: non-ambigous reference to online object - width: width of the object frame, in pixels - height: width of the object frame, in pixels - medium: one of `image' or `video', allowing the api user to quickly - determine the object's type - type: Internet media Type[1] (a.k.a. mime type) of the object -- a more - verbose way of determining the media type - (optional) fileSize: the size of the object, in bytes + url: non-ambigous reference to online object + width: width of the object frame, in pixels + height: width of the object frame, in pixels + medium: one of `image' or `video', allowing the api user to quickly + determine the object's type + type: Internet media Type[1] (a.k.a. mime type) of the object -- a more + verbose way of determining the media type. To set the type member + in the contructor, use the content_type parameter. + (optional) fileSize: the size of the object, in bytes [1]: http://en.wikipedia.org/wiki/Internet_media_type """ @@ -117,9 +120,11 @@ self.type = content_type self.fileSize = fileSize + def ContentFromString(xml_string): return atom.CreateClassFromXMLString(Content, xml_string) + class Credit(MediaBaseElement): """(string) Contains the nickname of the user who created the content, e.g. `Liz Bennet'. @@ -131,9 +136,12 @@ """ _tag = 'credit' + + def CreditFromString(xml_string): return atom.CreateClassFromXMLString(Credit, xml_string) + class Description(MediaBaseElement): """(string) A description of the media object. Either plain unicode text, or entity-encoded html (look at the `type' @@ -145,7 +153,8 @@ for `base' projections, the description is in HTML. Attributes: - type: either `text' or `html'. + type: either `text' or `html'. To set the type member in the contructor, + use the description_type parameter. """ _tag = 'description' @@ -158,9 +167,12 @@ text=text) self.type = description_type + + def DescriptionFromString(xml_string): return atom.CreateClassFromXMLString(Description, xml_string) + class Keywords(MediaBaseElement): """(string) Lists the tags associated with the entry, e.g `italy, vacation, sunset'. @@ -170,9 +182,12 @@ """ _tag = 'keywords' + + def KeywordsFromString(xml_string): return atom.CreateClassFromXMLString(Keywords, xml_string) + class Thumbnail(MediaBaseElement): """(attributes) Contains the URL of a thumbnail of a photo or album cover. @@ -211,11 +226,13 @@ def ThumbnailFromString(xml_string): return atom.CreateClassFromXMLString(Thumbnail, xml_string) + class Title(MediaBaseElement): """(string) Contains the title of the entry's media content, in plain text. Attributes: - type: Always set to plain + type: Always set to plain. To set the type member in the constructor, use + the title_type parameter. """ _tag = 'title' @@ -227,9 +244,12 @@ extension_attributes=extension_attributes, text=text) self.type = title_type + + def TitleFromString(xml_string): return atom.CreateClassFromXMLString(Title, xml_string) + class Player(MediaBaseElement): """(string) Contains the embeddable player URL for the entry's media content if the media is a video. @@ -248,11 +268,13 @@ extension_attributes=extension_attributes) self.url= player_url + class Private(atom.AtomBase): """The YouTube Private element""" _tag = 'private' _namespace = YOUTUBE_NAMESPACE + class Duration(atom.AtomBase): """The YouTube Duration element""" _tag = 'duration' @@ -260,6 +282,7 @@ _attributes = atom.AtomBase._attributes.copy() _attributes['seconds'] = 'seconds' + class Category(MediaBaseElement): """The mediagroup:category element""" @@ -327,5 +350,6 @@ self.category=category or [] self.player=player + def GroupFromString(xml_string): return atom.CreateClassFromXMLString(Group, xml_string) diff -Nru python-gdata-1.2.4/src/gdata/notebook/data.py python-gdata-2.0.8/src/gdata/notebook/data.py --- python-gdata-1.2.4/src/gdata/notebook/data.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/notebook/data.py 2009-12-02 01:58:26.000000000 +0000 @@ -0,0 +1,55 @@ +#!/usr/bin/python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Contains the data classes of the Google Notebook Data API""" + + +__author__ = 'j.s@google.com (Jeff Scudder)' + + +import atom.core +import atom.data +import gdata.data +import gdata.opensearch.data + + +NB_TEMPLATE = '{http://schemas.google.com/notes/2008/}%s' + + +class ComesAfter(atom.core.XmlElement): + """Preceding element.""" + _qname = NB_TEMPLATE % 'comesAfter' + id = 'id' + + +class NoteEntry(gdata.data.GDEntry): + """Describes a note entry in the feed of a user's notebook.""" + + +class NotebookFeed(gdata.data.GDFeed): + """Describes a notebook feed.""" + entry = [NoteEntry] + + +class NotebookListEntry(gdata.data.GDEntry): + """Describes a note list entry in the feed of a user's list of public notebooks.""" + + +class NotebookListFeed(gdata.data.GDFeed): + """Describes a notebook list feed.""" + entry = [NotebookListEntry] + + diff -Nru python-gdata-1.2.4/src/gdata/notebook/__init__.py python-gdata-2.0.8/src/gdata/notebook/__init__.py --- python-gdata-1.2.4/src/gdata/notebook/__init__.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/notebook/__init__.py 2009-12-02 01:58:26.000000000 +0000 @@ -0,0 +1,15 @@ +#!/usr/bin/python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. diff -Nru python-gdata-1.2.4/src/gdata/opensearch/data.py python-gdata-2.0.8/src/gdata/opensearch/data.py --- python-gdata-1.2.4/src/gdata/opensearch/data.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/opensearch/data.py 2009-11-06 23:34:17.000000000 +0000 @@ -0,0 +1,48 @@ +#!/usr/bin/python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +"""Contains the data classes of the OpenSearch Extension""" + + +__author__ = 'j.s@google.com (Jeff Scudder)' + + +import atom.core + + +OPENSEARCH_TEMPLATE_V1 = '{http://a9.com/-/spec/opensearchrss/1.0//}%s' +OPENSEARCH_TEMPLATE_V2 = '{http://a9.com/-/spec/opensearch/1.1//}%s' + + +class ItemsPerPage(atom.core.XmlElement): + """Describes the number of items that will be returned per page for paged feeds""" + _qname = (OPENSEARCH_TEMPLATE_V1 % 'itemsPerPage', + OPENSEARCH_TEMPLATE_V2 % 'itemsPerPage') + + +class StartIndex(atom.core.XmlElement): + """Describes the starting index of the contained entries for paged feeds""" + _qname = (OPENSEARCH_TEMPLATE_V1 % 'startIndex', + OPENSEARCH_TEMPLATE_V2 % 'startIndex') + + +class TotalResults(atom.core.XmlElement): + """Describes the total number of results associated with this feed""" + _qname = (OPENSEARCH_TEMPLATE_V1 % 'totalResults', + OPENSEARCH_TEMPLATE_V2 % 'totalResults') + + diff -Nru python-gdata-1.2.4/src/gdata/opensearch/__init__.py python-gdata-2.0.8/src/gdata/opensearch/__init__.py --- python-gdata-1.2.4/src/gdata/opensearch/__init__.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/opensearch/__init__.py 2009-11-06 23:34:17.000000000 +0000 @@ -0,0 +1,15 @@ +#!/usr/bin/python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. diff -Nru python-gdata-1.2.4/src/gdata/projecthosting/client.py python-gdata-2.0.8/src/gdata/projecthosting/client.py --- python-gdata-1.2.4/src/gdata/projecthosting/client.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/projecthosting/client.py 2010-02-09 22:49:07.000000000 +0000 @@ -0,0 +1,200 @@ +#!/usr/bin/env python +# +# Copyright 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import atom.data +import gdata.client +import gdata.gauth +import gdata.projecthosting.data + + +class ProjectHostingClient(gdata.client.GDClient): + """Client to interact with the Project Hosting GData API.""" + api_version = '1.0' + auth_service = 'code' + auth_scopes = gdata.gauth.AUTH_SCOPES['code'] + host = 'code.google.com' + + def get_issues(self, project_name, + desired_class=gdata.projecthosting.data.IssuesFeed, **kwargs): + """Get a feed of issues for a particular project. + + Args: + project_name str The name of the project. + query Query Set returned issues parameters. + + Returns: + data.IssuesFeed + """ + return self.get_feed(gdata.projecthosting.data.ISSUES_FULL_FEED % + project_name, desired_class=desired_class, **kwargs) + + def add_issue(self, project_name, title, content, author, + status=None, owner=None, labels=None, ccs=None, **kwargs): + """Create a new issue for the project. + + Args: + project_name str The name of the project. + title str The title of the new issue. + content str The summary of the new issue. + author str The authenticated user's username. + status str The status of the new issue, Accepted, etc. + owner str The username of new issue's owner. + labels [str] Labels to associate with the new issue. + ccs [str] usernames to Cc on the new issue. + Returns: + data.IssueEntry + """ + new_entry = gdata.projecthosting.data.IssueEntry( + title=atom.data.Title(text=title), + content=atom.data.Content(text=content), + author=[atom.data.Author(name=atom.data.Name(text=author))]) + + if status: + new_entry.status = gdata.projecthosting.data.Status(text=status) + + if owner: + owner = [gdata.projecthosting.data.Owner( + username=gdata.projecthosting.data.Username(text=owner))] + + if labels: + new_entry.label = [gdata.projecthosting.data.Label(text=label) + for label in labels] + if ccs: + new_entry.cc = [ + gdata.projecthosting.data.Cc( + username=gdata.projecthosting.data.Username(text=cc)) + for cc in ccs] + + return self.post( + new_entry, + gdata.projecthosting.data.ISSUES_FULL_FEED % project_name, + **kwargs) + + def update_issue(self, project_name, issue_id, author, comment=None, + summary=None, status=None, owner=None, labels=None, ccs=None, + **kwargs): + """Update or comment on one issue for the project. + + Args: + project_name str The name of the issue's project. + issue_id str The issue number needing updated. + author str The authenticated user's username. + comment str A comment to append to the issue + summary str Rewrite the summary of the issue. + status str A new status for the issue. + owner str The username of the new owner. + labels [str] Labels to set on the issue (prepend issue with - to remove a + label). + ccs [str] Ccs to set on th enew issue (prepend cc with - to remove a cc). + + Returns: + data.CommentEntry + """ + updates = gdata.projecthosting.data.Updates() + + if summary: + updates.summary = gdata.projecthosting.data.Summary(text=summary) + + if status: + updates.status = gdata.projecthosting.data.Status(text=status) + + if owner: + updates.ownerUpdate = gdata.projecthosting.data.OwnerUpdate(text=owner) + + if labels: + updates.label = [gdata.projecthosting.data.Label(text=label) + for label in labels] + if ccs: + updates.ccUpdate = [gdata.projecthosting.data.CcUpdate(text=cc) + for cc in ccs] + + update_entry = gdata.projecthosting.data.CommentEntry( + content=atom.data.Content(text=comment), + author=[atom.data.Author(name=atom.data.Name(text=author))], + updates=updates) + + return self.post( + update_entry, + gdata.projecthosting.data.COMMENTS_FULL_FEED % (project_name, issue_id), + **kwargs) + + def get_comments(self, project_name, issue_id, + desired_class=gdata.projecthosting.data.CommentsFeed, + **kwargs): + """Get a feed of all updates to an issue. + + Args: + project_name str The name of the issue's project. + issue_id str The issue number needing updated. + + Returns: + data.CommentsFeed + """ + return self.get_feed( + gdata.projecthosting.data.COMMENTS_FULL_FEED % (project_name, issue_id), + desired_class=desired_class, **kwargs) + + def update(self, entry, auth_token=None, force=False, **kwargs): + """Unsupported GData update method. + + Use update_*() instead. + """ + raise NotImplementedError( + 'GData Update operation unsupported, try update_*') + + def delete(self, entry_or_uri, auth_token=None, force=False, **kwargs): + """Unsupported GData delete method. + + Use update_issue(status='Closed') instead. + """ + raise NotImplementedError( + 'GData Delete API unsupported, try closing the issue instead.') + + +class Query(gdata.client.Query): + + def __init__(self, issue_id=None, label=None, canned_query=None, owner=None, + status=None, **kwargs): + """Constructs a Google Data Query to filter feed contents serverside. + Args: + issue_id: int or str The issue to return based on the issue id. + label: str A label returned issues must have. + canned_query: str Return issues based on a canned query identifier + owner: str Return issues based on the owner of the issue. For Gmail users, + this will be the part of the email preceding the '@' sign. + status: str Return issues based on the status of the issue. + """ + super(Query, self).__init__(**kwargs) + self.label = label + self.issue_id = issue_id + self.canned_query = canned_query + self.owner = owner + self.status = status + + def modify_request(self, http_request): + if self.issue_id: + gdata.client._add_query_param('id', self.issue_id, http_request) + if self.label: + gdata.client._add_query_param('label', self.label, http_request) + if self.canned_query: + gdata.client._add_query_param('can', self.canned_query, http_request) + if self.owner: + gdata.client._add_query_param('owner', self.owner, http_request) + if self.status: + gdata.client._add_query_param('status', self.status, http_request) + super(Query, self).modify_request(http_request) + + ModifyRequest = modify_request diff -Nru python-gdata-1.2.4/src/gdata/projecthosting/data.py python-gdata-2.0.8/src/gdata/projecthosting/data.py --- python-gdata-1.2.4/src/gdata/projecthosting/data.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/projecthosting/data.py 2010-02-09 22:49:07.000000000 +0000 @@ -0,0 +1,134 @@ +#!/usr/bin/env python +# +# Copyright 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +# This module is used for version 2 of the Google Data APIs. + + +"""Provides classes and constants for XML in the Google Project Hosting API. + +Canonical documentation for the raw XML which these classes represent can be +found here: http://code.google.com/p/support/wiki/IssueTrackerAPI +""" + + +__author__ = 'jlapenna@google.com (Joe LaPenna)' + +import atom.core +import gdata.data + + +ISSUES_TEMPLATE = '{http://schemas.google.com/projecthosting/issues/2009}%s' + + +ISSUES_FULL_FEED = '/feeds/issues/p/%s/issues/full' +COMMENTS_FULL_FEED = '/feeds/issues/p/%s/issues/%s/comments/full' + + +class Uri(atom.core.XmlElement): + """The issues:uri element.""" + _qname = ISSUES_TEMPLATE % 'uri' + + +class Username(atom.core.XmlElement): + """The issues:username element.""" + _qname = ISSUES_TEMPLATE % 'username' + + +class Cc(atom.core.XmlElement): + """The issues:cc element.""" + _qname = ISSUES_TEMPLATE % 'cc' + uri = Uri + username = Username + + +class Label(atom.core.XmlElement): + """The issues:label element.""" + _qname = ISSUES_TEMPLATE % 'label' + + +class Owner(atom.core.XmlElement): + """The issues:owner element.""" + _qname = ISSUES_TEMPLATE % 'owner' + uri = Uri + username = Username + + +class Stars(atom.core.XmlElement): + """The issues:stars element.""" + _qname = ISSUES_TEMPLATE % 'stars' + + +class State(atom.core.XmlElement): + """The issues:state element.""" + _qname = ISSUES_TEMPLATE % 'state' + + +class Status(atom.core.XmlElement): + """The issues:status element.""" + _qname = ISSUES_TEMPLATE % 'status' + + +class Summary(atom.core.XmlElement): + """The issues:summary element.""" + _qname = ISSUES_TEMPLATE % 'summary' + + +class OwnerUpdate(atom.core.XmlElement): + """The issues:ownerUpdate element.""" + _qname = ISSUES_TEMPLATE % 'ownerUpdate' + + +class CcUpdate(atom.core.XmlElement): + """The issues:ccUpdate element.""" + _qname = ISSUES_TEMPLATE % 'ccUpdate' + + +class Updates(atom.core.XmlElement): + """The issues:updates element.""" + _qname = ISSUES_TEMPLATE % 'updates' + summary = Summary + status = Status + ownerUpdate = OwnerUpdate + label = [Label] + ccUpdate = [CcUpdate] + + +class IssueEntry(gdata.data.GDEntry): + """Represents the information of one issue.""" + _qname = atom.data.ATOM_TEMPLATE % 'entry' + owner = Owner + cc = [Cc] + label = [Label] + stars = Stars + state = State + status = Status + + +class IssuesFeed(gdata.data.GDFeed): + """An Atom feed listing a project's issues.""" + entry = [IssueEntry] + + +class CommentEntry(gdata.data.GDEntry): + """An entry detailing one comment on an issue.""" + _qname = atom.data.ATOM_TEMPLATE % 'entry' + updates = Updates + + +class CommentsFeed(gdata.data.GDFeed): + """An Atom feed listing a project's issue's comments.""" + entry = [CommentEntry] diff -Nru python-gdata-1.2.4/src/gdata/projecthosting/__init__.py python-gdata-2.0.8/src/gdata/projecthosting/__init__.py --- python-gdata-1.2.4/src/gdata/projecthosting/__init__.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/projecthosting/__init__.py 2009-10-16 00:59:20.000000000 +0100 @@ -0,0 +1 @@ + diff -Nru python-gdata-1.2.4/src/gdata/sample_util.py python-gdata-2.0.8/src/gdata/sample_util.py --- python-gdata-1.2.4/src/gdata/sample_util.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/sample_util.py 2009-11-10 00:47:33.000000000 +0000 @@ -0,0 +1,269 @@ +#!/usr/bin/env python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +"""Provides utility functions used with command line samples.""" + +# This module is used for version 2 of the Google Data APIs. + +import sys +import getpass +import urllib +import gdata.gauth + +__author__ = 'j.s@google.com (Jeff Scudder)' + + +CLIENT_LOGIN = 1 +AUTHSUB = 2 +OAUTH = 3 + +HMAC = 1 +RSA = 2 + + +class SettingsUtil(object): + """Gather's user preferences from flags or command prompts. + + An instance of this object stores the choices made by the user. At some + point it might be useful to save the user's preferences so that they do + not need to always set flags or answer preference prompts. + """ + + def __init__(self, prefs=None): + self.prefs = prefs or {} + + def get_param(self, name, prompt='', secret=False, ask=True, reuse=False): + # First, check in this objects stored preferences. + if name in self.prefs: + return self.prefs[name] + # Second, check for a command line parameter. + value = None + for i in xrange(len(sys.argv)): + if sys.argv[i].startswith('--%s=' % name): + value = sys.argv[i].split('=')[1] + elif sys.argv[i] == '--%s' % name: + value = sys.argv[i + 1] + # Third, if it was not on the command line, ask the user to input the + # value. + if value is None and ask: + prompt = '%s: ' % prompt + if secret: + value = getpass.getpass(prompt) + else: + value = raw_input(prompt) + # If we want to save the preference for reuse in future requests, add it + # to this object's prefs. + if value is not None and reuse: + self.prefs[name] = value + return value + + def authorize_client(self, client, auth_type=None, service=None, + source=None, scopes=None, oauth_type=None, + consumer_key=None, consumer_secret=None): + """Uses command line arguments, or prompts user for token values.""" + if 'client_auth_token' in self.prefs: + return + if auth_type is None: + auth_type = int(self.get_param( + 'auth_type', 'Please choose the authorization mechanism you want' + ' to use.\n' + '1. to use your email address and password (ClientLogin)\n' + '2. to use a web browser to visit an auth web page (AuthSub)\n' + '3. if you have registed to use OAuth\n', reuse=True)) + + # Get the scopes for the services we want to access. + if auth_type == AUTHSUB or auth_type == OAUTH: + if scopes is None: + scopes = self.get_param( + 'scopes', 'Enter the URL prefixes (scopes) for the resources you ' + 'would like to access.\nFor multiple scope URLs, place a comma ' + 'between each URL.\n' + 'Example: http://www.google.com/calendar/feeds/,' + 'http://www.google.com/m8/feeds/\n', reuse=True).split(',') + elif isinstance(scopes, (str, unicode)): + scopes = scopes.split(',') + + if auth_type == CLIENT_LOGIN: + email = self.get_param('email', 'Please enter your username', + reuse=False) + password = self.get_param('password', 'Password', True, reuse=False) + if service is None: + service = self.get_param( + 'service', 'What is the name of the service you wish to access?' + '\n(See list:' + ' http://code.google.com/apis/gdata/faq.html#clientlogin)', + reuse=True) + if source is None: + source = self.get_param('source', ask=False, reuse=True) + client.client_login(email, password, source=source, service=service) + elif auth_type == AUTHSUB: + auth_sub_token = self.get_param('auth_sub_token', ask=False, reuse=True) + session_token = self.get_param('session_token', ask=False, reuse=True) + private_key = None + auth_url = None + single_use_token = None + rsa_private_key = self.get_param( + 'rsa_private_key', + 'If you want to use secure mode AuthSub, please provide the\n' + ' location of your RSA private key which corresponds to the\n' + ' certificate you have uploaded for your domain. If you do not\n' + ' have an RSA key, simply press enter', reuse=True) + + if rsa_private_key: + try: + private_key_file = open(rsa_private_key, 'rb') + private_key = private_key_file.read() + private_key_file.close() + except IOError: + print 'Unable to read private key from file' + + if private_key is not None: + if client.auth_token is None: + if session_token: + client.auth_token = gdata.gauth.SecureAuthSubToken( + session_token, private_key, scopes) + self.prefs['client_auth_token'] = gdata.gauth.token_to_blob( + client.auth_token) + return + elif auth_sub_token: + client.auth_token = gdata.gauth.SecureAuthSubToken( + auth_sub_token, private_key, scopes) + client.upgrade_token() + self.prefs['client_auth_token'] = gdata.gauth.token_to_blob( + client.auth_token) + return + + auth_url = gdata.gauth.generate_auth_sub_url( + 'http://gauthmachine.appspot.com/authsub', scopes, True) + print 'with a private key, get ready for this URL', auth_url + + else: + if client.auth_token is None: + if session_token: + client.auth_token = gdata.gauth.AuthSubToken(session_token, + scopes) + self.prefs['client_auth_token'] = gdata.gauth.token_to_blob( + client.auth_token) + return + elif auth_sub_token: + client.auth_token = gdata.gauth.AuthSubToken(auth_sub_token, + scopes) + client.upgrade_token() + self.prefs['client_auth_token'] = gdata.gauth.token_to_blob( + client.auth_token) + return + + auth_url = gdata.gauth.generate_auth_sub_url( + 'http://gauthmachine.appspot.com/authsub', scopes) + + print 'Visit the following URL in your browser to authorize this app:' + print str(auth_url) + print 'After agreeing to authorize the app, copy the token value from' + print ' the URL. Example: "www.google.com/?token=ab12" token value is' + print ' ab12' + token_value = raw_input('Please enter the token value: ') + if private_key is not None: + single_use_token = gdata.gauth.SecureAuthSubToken( + token_value, private_key, scopes) + else: + single_use_token = gdata.gauth.AuthSubToken(token_value, scopes) + client.auth_token = single_use_token + client.upgrade_token() + + elif auth_type == OAUTH: + if oauth_type is None: + oauth_type = int(self.get_param( + 'oauth_type', 'Please choose the authorization mechanism you want' + ' to use.\n' + '1. use an HMAC signature using your consumer key and secret\n' + '2. use RSA with your private key to sign requests\n', + reuse=True)) + + consumer_key = self.get_param( + 'consumer_key', 'Please enter your OAuth conumer key ' + 'which identifies your app', reuse=True) + + if oauth_type == HMAC: + consumer_secret = self.get_param( + 'consumer_secret', 'Please enter your OAuth conumer secret ' + 'which you share with the OAuth provider', True, reuse=False) + # Swap out this code once the client supports requesting an oauth + # token. + # Get a request token. + request_token = client.get_oauth_token( + scopes, 'http://gauthmachine.appspot.com/oauth', consumer_key, + consumer_secret=consumer_secret) + elif oauth_type == RSA: + rsa_private_key = self.get_param( + 'rsa_private_key', + 'Please provide the location of your RSA private key which\n' + ' corresponds to the certificate you have uploaded for your' + ' domain.', + reuse=True) + try: + private_key_file = open(rsa_private_key, 'rb') + private_key = private_key_file.read() + private_key_file.close() + except IOError: + print 'Unable to read private key from file' + + request_token = client.get_oauth_token( + scopes, 'http://gauthmachine.appspot.com/oauth', consumer_key, + rsa_private_key=private_key) + else: + print 'Invalid OAuth signature type' + return None + + # Authorize the request token in the browser. + print 'Visit the following URL in your browser to authorize this app:' + print str(request_token.generate_authorization_url()) + print 'After agreeing to authorize the app, copy URL from the browser\'s' + print ' address bar.' + url = raw_input('Please enter the url: ') + gdata.gauth.authorize_request_token(request_token, url) + # Exchange for an access token. + client.auth_token = client.get_access_token(request_token) + else: + print 'Invalid authorization type.' + return None + if client.auth_token: + self.prefs['client_auth_token'] = gdata.gauth.token_to_blob( + client.auth_token) + + +def get_param(name, prompt='', secret=False, ask=True): + settings = SettingsUtil() + return settings.get_param(name=name, prompt=prompt, secret=secret, ask=ask) + + +def authorize_client(client, auth_type=None, service=None, source=None, + scopes=None, oauth_type=None, consumer_key=None, + consumer_secret=None): + """Uses command line arguments, or prompts user for token values.""" + settings = SettingsUtil() + return settings.authorize_client(client=client, auth_type=auth_type, + service=service, source=source, + scopes=scopes, oauth_type=oauth_type, + consumer_key=consumer_key, + consumer_secret=consumer_secret) + + +def print_options(): + """Displays usage information, available command line params.""" + # TODO: fill in the usage description for authorizing the client. + print '' + diff -Nru python-gdata-1.2.4/src/gdata/service.py python-gdata-2.0.8/src/gdata/service.py --- python-gdata-1.2.4/src/gdata/service.py 2008-12-11 22:55:17.000000000 +0000 +++ python-gdata-2.0.8/src/gdata/service.py 2010-02-09 20:11:05.000000000 +0000 @@ -39,7 +39,7 @@ user is either not authenticated or is authenticated through another authentication mechanism. - RequestError: Raised if a CRUD request returned a non-success code. + RequestError: Raised if a CRUD request returned a non-success code. UnexpectedReturnType: Raised if the response from the server was not of the desired type. For example, this would be raised if the @@ -60,7 +60,6 @@ __author__ = 'api.jscudder (Jeffrey Scudder)' - import re import urllib import urlparse @@ -80,6 +79,7 @@ import atom.http_interface import atom.token_store import gdata.auth +import gdata.gauth AUTH_SERVER_HOST = 'https://www.google.com' @@ -97,57 +97,23 @@ # default name (AKA key) for the URL parameter. OAUTH_SCOPE_URL_PARAM_NAME = 'oauth_token_scope' # Maps the service names used in ClientLogin to scope URLs. -CLIENT_LOGIN_SCOPES = { - 'cl': [ # Google Calendar - 'https://www.google.com/calendar/feeds/', - 'http://www.google.com/calendar/feeds/'], - 'gbase': [ # Google Base - 'http://base.google.com/base/feeds/', - 'http://www.google.com/base/feeds/'], - 'blogger': [ # Blogger - 'http://www.blogger.com/feeds/'], - 'codesearch': [ # Google Code Search - 'http://www.google.com/codesearch/feeds/'], - 'cp': [ # Contacts API - 'https://www.google.com/m8/feeds/', - 'http://www.google.com/m8/feeds/'], - 'finance': [ # Google Finance - 'http://finance.google.com/finance/feeds/'], - 'health': [ # Google Health - 'https://www.google.com/health/feeds/'], - 'writely': [ # Documents List API - 'https://docs.google.com/feeds/', - 'http://docs.google.com/feeds/'], - 'lh2': [ # Picasa Web Albums - 'http://picasaweb.google.com/data/'], - 'apps': [ # Google Apps Provisioning API - 'http://www.google.com/a/feeds/', - 'https://www.google.com/a/feeds/', - 'http://apps-apis.google.com/a/feeds/', - 'https://apps-apis.google.com/a/feeds/'], - 'weaver': [ # Health H9 Sandbox - 'https://www.google.com/h9/'], - 'wise': [ # Spreadsheets Data API - 'https://spreadsheets.google.com/feeds/', - 'http://spreadsheets.google.com/feeds/'], - 'sitemaps': [ # Google Webmaster Tools - 'https://www.google.com/webmasters/tools/feeds/'], - 'youtube': [ # YouTube - 'http://gdata.youtube.com/feeds/api/', - 'http://uploads.gdata.youtube.com/feeds/api', - 'http://gdata.youtube.com/action/GetUploadToken']} +CLIENT_LOGIN_SCOPES = gdata.gauth.AUTH_SCOPES +# Default parameters for GDataService.GetWithRetries method +DEFAULT_NUM_RETRIES = 3 +DEFAULT_DELAY = 1 +DEFAULT_BACKOFF = 2 def lookup_scopes(service_name): """Finds the scope URLs for the desired service. - + In some cases, an unknown service may be used, and in those cases this function will return None. """ if service_name in CLIENT_LOGIN_SCOPES: return CLIENT_LOGIN_SCOPES[service_name] return None - + # Module level variable specifies which module should be used by GDataService # objects to make HttpRequests. This setting can be overridden on each @@ -213,6 +179,10 @@ pass +class RanOutOfTries(Error): + pass + + class GDataService(atom.service.AtomService): """Contains elements needed for GData login and CRUD request headers. @@ -280,6 +250,10 @@ if http_request_handler.__name__ == 'gdata.urlfetch': import gdata.alt.appengine self.http_client = gdata.alt.appengine.AppEngineHttpClient() + + def _SetSessionId(self, session_id): + """Used in unit tests to simulate a 302 which sets a gsessionid.""" + self.__gsessionid = session_id # Define properties for GDataService def _SetAuthSubToken(self, auth_token, scopes=None): @@ -322,7 +296,7 @@ def _GetCaptchaURL(self): """Returns the URL of the captcha image if a login attempt generated one. - + The captcha URL is only set if the Programmatic Login attempt failed because the Google service issued a captcha challenge. @@ -337,14 +311,40 @@ captcha_url = property(__GetCaptchaURL, doc="""Get the captcha URL for a login request.""") + def GetGeneratorFromLinkFinder(self, link_finder, func, + num_retries=DEFAULT_NUM_RETRIES, + delay=DEFAULT_DELAY, + backoff=DEFAULT_BACKOFF): + """returns a generator for pagination""" + yield link_finder + next = link_finder.GetNextLink() + while next is not None: + next_feed = func(str(self.GetWithRetries( + next.href, num_retries=num_retries, delay=delay, backoff=backoff))) + yield next_feed + next = next_feed.GetNextLink() + + def _GetElementGeneratorFromLinkFinder(self, link_finder, func, + num_retries=DEFAULT_NUM_RETRIES, + delay=DEFAULT_DELAY, + backoff=DEFAULT_BACKOFF): + for element in self.GetGeneratorFromLinkFinder(link_finder, func, + num_retries=num_retries, + delay=delay, + backoff=backoff).entry: + yield element + + def GetOAuthInputParameters(self): + return self._oauth_input_params + def SetOAuthInputParameters(self, signature_method, consumer_key, consumer_secret=None, rsa_key=None, - two_legged_oauth=False): + two_legged_oauth=False, requestor_id=None): """Sets parameters required for using OAuth authentication mechanism. - + NOTE: Though consumer_secret and rsa_key are optional, either of the two is required depending on the value of the signature_method. - + Args: signature_method: class which provides implementation for strategy class oauth.oauth.OAuthSignatureMethod. Signature method to be used for @@ -357,21 +357,24 @@ Required only for HMAC_SHA1 signature method. rsa_key: string (optional) Private key required for RSA_SHA1 signature method. - two_legged_oauth: string (default=False) Enables two-legged OAuth process. + two_legged_oauth: boolean (optional) Enables two-legged OAuth process. + requestor_id: string (optional) User email adress to make requests on + their behalf. This parameter should only be set when two_legged_oauth + is True. """ self._oauth_input_params = gdata.auth.OAuthInputParams( signature_method, consumer_key, consumer_secret=consumer_secret, - rsa_key=rsa_key) + rsa_key=rsa_key, requestor_id=requestor_id) if two_legged_oauth: oauth_token = gdata.auth.OAuthToken( oauth_input_params=self._oauth_input_params) self.SetOAuthToken(oauth_token) - + def FetchOAuthRequestToken(self, scopes=None, extra_parameters=None, request_url='%s/accounts/OAuthGetRequestToken' % \ - AUTH_SERVER_HOST): - """Fetches OAuth request token and returns it. - + AUTH_SERVER_HOST, oauth_callback=None): + """Fetches and sets the OAuth request token and returns it. + Args: scopes: string or list of string base URL(s) of the service(s) to be accessed. If None, then this method tries to determine the @@ -385,10 +388,14 @@ extra_parameters = {'oauth_version': '2.0'} request_url: Request token URL. The default is 'https://www.google.com/accounts/OAuthGetRequestToken'. - + oauth_callback: str (optional) If set, it is assume the client is using + the OAuth v1.0a protocol where the callback url is sent in the + request token step. If the oauth_callback is also set in + extra_params, this value will override that one. + Returns: The fetched request token as a gdata.auth.OAuthToken object. - + Raises: FetchingOAuthRequestTokenFailed if the server responded to the request with an error. @@ -397,6 +404,11 @@ scopes = lookup_scopes(self.service) if not isinstance(scopes, (list, tuple)): scopes = [scopes,] + if oauth_callback: + if extra_parameters is not None: + extra_parameters['oauth_callback'] = oauth_callback + else: + extra_parameters = {'oauth_callback': oauth_callback} request_token_url = gdata.auth.GenerateOAuthRequestTokenUrl( self._oauth_input_params, scopes, request_token_url=request_url, @@ -407,10 +419,11 @@ token.set_token_string(response.read()) token.scopes = scopes token.oauth_input_params = self._oauth_input_params + self.SetOAuthToken(token) return token error = { 'status': response.status, - 'reason': 'Non 200 response on upgrade', + 'reason': 'Non 200 response on fetch request token', 'body': response.read() } raise FetchingOAuthRequestTokenFailed(error) @@ -491,19 +504,26 @@ def UpgradeToOAuthAccessToken(self, authorized_request_token=None, request_url='%s/accounts/OAuthGetAccessToken' \ - % AUTH_SERVER_HOST, oauth_version='1.0'): - """Upgrades the authorized request token to an access token. + % AUTH_SERVER_HOST, oauth_version='1.0', + oauth_verifier=None): + """Upgrades the authorized request token to an access token and returns it Args: authorized_request_token: gdata.auth.OAuthToken (optional) OAuth request token. If not specified, then the current token will be used if it is of type , else it is found by looking in the token_store by looking for a token for the current scope. + request_url: Access token URL. The default is + 'https://www.google.com/accounts/OAuthGetAccessToken'. oauth_version: str (default='1.0') oauth_version parameter. All other 'oauth_' parameters are added by default. This parameter too, is added by default but here you can override it's value. - request_url: Access token URL. The default is - 'https://www.google.com/accounts/OAuthGetAccessToken'. + oauth_verifier: str (optional) If present, it is assumed that the client + will use the OAuth v1.0a protocol which includes passing the + oauth_verifier (as returned by the SP) in the access token step. + + Returns: + Access token Raises: NonOAuthToken if the user's authorized request token is not an OAuth @@ -529,13 +549,15 @@ authorized_request_token, self._oauth_input_params, access_token_url=request_url, - oauth_version=oauth_version) + oauth_version=oauth_version, + oauth_verifier=oauth_verifier) response = self.http_client.request('GET', str(access_token_url)) if response.status == 200: token = gdata.auth.OAuthTokenFromHttpBody(response.read()) token.scopes = authorized_request_token.scopes token.oauth_input_params = authorized_request_token.oauth_input_params self.SetOAuthToken(token) + return token else: raise TokenUpgradeFailed({'status': response.status, 'reason': 'Non 200 response on upgrade', @@ -927,6 +949,67 @@ raise RequestError, {'status': response.status, 'body': result_body} + def GetWithRetries(self, uri, extra_headers=None, redirects_remaining=4, + encoding='UTF-8', converter=None, num_retries=DEFAULT_NUM_RETRIES, + delay=DEFAULT_DELAY, backoff=DEFAULT_BACKOFF, logger=None): + """This is a wrapper method for Get with retring capability. + + To avoid various errors while retrieving bulk entities by retring + specified times. + + Note this method relies on the time module and so may not be usable + by default in Python2.2. + + Args: + num_retries: integer The retry count. + delay: integer The initial delay for retring. + backoff: integer how much the delay should lengthen after each failure. + logger: an object which has a debug(str) method to receive logging + messages. Recommended that you pass in the logging module. + Raises: + ValueError if any of the parameters has an invalid value. + RanOutOfTries on failure after number of retries. + """ + # Moved import for time module inside this method since time is not a + # default module in Python2.2. This method will not be usable in + # Python2.2. + import time + if backoff <= 1: + raise ValueError("backoff must be greater than 1") + num_retries = int(num_retries) + + if num_retries < 0: + raise ValueError("num_retries must be 0 or greater") + + if delay <= 0: + raise ValueError("delay must be greater than 0") + + # Let's start + mtries, mdelay = num_retries, delay + while mtries > 0: + if mtries != num_retries: + if logger: + logger.debug("Retrying...") + try: + rv = self.Get(uri, extra_headers=extra_headers, + redirects_remaining=redirects_remaining, + encoding=encoding, converter=converter) + except (SystemExit, RequestError): + # Allow these errors + raise + except Exception, e: + if logger: + logger.debug(e) + mtries -= 1 + time.sleep(mdelay) + mdelay *= backoff + else: + # This is the right path. + if logger: + logger.debug("Succeeeded...") + return rv + raise RanOutOfTries('Ran out of tries.') + # CRUD operations def Get(self, uri, extra_headers=None, redirects_remaining=4, encoding='UTF-8', converter=None): @@ -999,7 +1082,8 @@ return feed elif server_response.status == 302: if redirects_remaining > 0: - location = server_response.getheader('Location') + location = (server_response.getheader('Location') + or server_response.getheader('location')) if location is not None: m = re.compile('[\?\&]gsessionid=(\w*)').search(location) if m is not None: @@ -1186,10 +1270,9 @@ if self.__gsessionid is not None: if uri.find('gsessionid=') < 0: - if uri.find('?') > -1: - uri += '&gsessionid=%s' % (self.__gsessionid,) - else: - uri += '?gsessionid=%s' % (self.__gsessionid,) + if url_params is None: + url_params = {} + url_params['gsessionid'] = self.__gsessionid if data and media_source: if ElementTree.iselement(data): @@ -1212,7 +1295,7 @@ extra_headers['Content-Type'] = 'multipart/related; boundary=END_OF_PART' server_response = self.request(verb, uri, data=[multipart[0], data_str, multipart[1], media_source.file_handle, - multipart[2]], headers=extra_headers) + multipart[2]], headers=extra_headers, url_params=url_params) result_body = server_response.read() elif media_source or isinstance(data, gdata.MediaSource): @@ -1221,7 +1304,8 @@ extra_headers['Content-Length'] = str(media_source.content_length) extra_headers['Content-Type'] = media_source.content_type server_response = self.request(verb, uri, - data=media_source.file_handle, headers=extra_headers) + data=media_source.file_handle, headers=extra_headers, + url_params=url_params) result_body = server_response.read() else: @@ -1229,7 +1313,7 @@ content_type = 'application/atom+xml' extra_headers['Content-Type'] = content_type server_response = self.request(verb, uri, data=http_data, - headers=extra_headers) + headers=extra_headers, url_params=url_params) result_body = server_response.read() # Server returns 201 for most post requests, but when performing a batch @@ -1246,7 +1330,8 @@ return feed elif server_response.status == 302: if redirects_remaining > 0: - location = server_response.getheader('Location') + location = (server_response.getheader('Location') + or server_response.getheader('location')) if location is not None: m = re.compile('[\?\&]gsessionid=(\w*)').search(location) if m is not None: @@ -1331,20 +1416,20 @@ if self.__gsessionid is not None: if uri.find('gsessionid=') < 0: - if uri.find('?') > -1: - uri += '&gsessionid=%s' % (self.__gsessionid,) - else: - uri += '?gsessionid=%s' % (self.__gsessionid,) + if url_params is None: + url_params = {} + url_params['gsessionid'] = self.__gsessionid server_response = self.request('DELETE', uri, - headers=extra_headers) + headers=extra_headers, url_params=url_params) result_body = server_response.read() if server_response.status == 200: return True elif server_response.status == 302: if redirects_remaining > 0: - location = server_response.getheader('Location') + location = (server_response.getheader('Location') + or server_response.getheader('location')) if location is not None: m = re.compile('[\?\&]gsessionid=(\w*)').search(location) if m is not None: @@ -1395,7 +1480,7 @@ def GenerateAuthSubRequestUrl(next, scopes, hd='default', secure=False, - session=True, request_url='http://www.google.com/accounts/AuthSubRequest', + session=True, request_url='https://www.google.com/accounts/AuthSubRequest', include_scopes_in_next=True): """Creates a URL to request an AuthSub token to access Google services. @@ -1420,7 +1505,7 @@ token may only be used once and cannot be upgraded. Default is True. request_url: The base of the URL to which the user will be sent to authorize this application to access their data. The default is - 'http://www.google.com/accounts/AuthSubRequest'. + 'https://www.google.com/accounts/AuthSubRequest'. include_scopes_in_next: Boolean if set to true, the 'next' parameter will be modified to include the requested scope as a URL parameter. The key for the next's scope parameter will be SCOPE_URL_PARAM_NAME. The diff -Nru python-gdata-1.2.4/src/gdata/sites/client.py python-gdata-2.0.8/src/gdata/sites/client.py --- python-gdata-1.2.4/src/gdata/sites/client.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/sites/client.py 2010-02-18 19:37:52.000000000 +0000 @@ -0,0 +1,461 @@ +#!/usr/bin/python +# +# Copyright 2009 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""SitesClient extends gdata.client.GDClient to streamline Sites API calls.""" + + +__author__ = 'e.bidelman (Eric Bidelman)' + +import atom.data +import gdata.client +import gdata.sites.data +import gdata.gauth + + +# Feed URI templates +CONTENT_FEED_TEMPLATE = '/feeds/content/%s/%s/' +REVISION_FEED_TEMPLATE = '/feeds/revision/%s/%s/' +ACTIVITY_FEED_TEMPLATE = '/feeds/activity/%s/%s/' +SITE_FEED_TEMPLATE = '/feeds/site/%s/' +ACL_FEED_TEMPLATE = '/feeds/acl/site/%s/%s/' + + +class SitesClient(gdata.client.GDClient): + + """Client extension for the Google Sites API service.""" + + host = 'sites.google.com' # default server for the API + domain = 'site' # default site domain name + api_version = '1.1' # default major version for the service. + auth_service = 'jotspot' + auth_scopes = gdata.gauth.AUTH_SCOPES['jotspot'] + + def __init__(self, site=None, domain=None, auth_token=None, **kwargs): + """Constructs a new client for the Sites API. + + Args: + site: string (optional) Name (webspace) of the Google Site + domain: string (optional) Domain of the (Google Apps hosted) Site. + If no domain is given, the Site is assumed to be a consumer Google + Site, in which case the value 'site' is used. + auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or + OAuthToken which authorizes this client to edit the user's data. + kwargs: The other parameters to pass to gdata.client.GDClient + constructor. + """ + gdata.client.GDClient.__init__(self, auth_token=auth_token, **kwargs) + self.site = site + if domain is not None: + self.domain = domain + + def __make_kind_category(self, label): + if label is None: + return None + return atom.data.Category( + scheme=gdata.sites.data.SITES_KIND_SCHEME, + term='%s#%s' % (gdata.sites.data.SITES_NAMESPACE, label), label=label) + + __MakeKindCategory = __make_kind_category + + def __upload(self, entry, media_source, auth_token=None, **kwargs): + """Uploads an attachment file to the Sites API. + + Args: + entry: gdata.sites.data.ContentEntry The Atom XML to include. + media_source: gdata.data.MediaSource The file payload to be uploaded. + auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or + OAuthToken which authorizes this client to edit the user's data. + kwargs: Other parameters to pass to gdata.client.post(). + + Returns: + The created entry. + """ + uri = self.make_content_feed_uri() + return self.post(entry, uri, media_source=media_source, + auth_token=auth_token, **kwargs) + + def _get_file_content(self, uri): + """Fetches the file content from the specified URI. + + Args: + uri: string The full URL to fetch the file contents from. + + Returns: + The binary file content. + + Raises: + gdata.client.RequestError: on error response from server. + """ + server_response = self.request('GET', uri) + if server_response.status != 200: + raise gdata.client.RequestError, {'status': server_response.status, + 'reason': server_response.reason, + 'body': server_response.read()} + return server_response.read() + + _GetFileContent = _get_file_content + + def make_content_feed_uri(self): + return CONTENT_FEED_TEMPLATE % (self.domain, self.site) + + MakeContentFeedUri = make_content_feed_uri + + def make_revision_feed_uri(self): + return REVISION_FEED_TEMPLATE % (self.domain, self.site) + + MakeRevisionFeedUri = make_revision_feed_uri + + def make_activity_feed_uri(self): + return ACTIVITY_FEED_TEMPLATE % (self.domain, self.site) + + MakeActivityFeedUri = make_activity_feed_uri + + def make_site_feed_uri(self, site_name=None): + if site_name is not None: + return (SITE_FEED_TEMPLATE % self.domain) + site_name + else: + return SITE_FEED_TEMPLATE % self.domain + + MakeSiteFeedUri = make_site_feed_uri + + def make_acl_feed_uri(self): + return ACL_FEED_TEMPLATE % (self.domain, self.site) + + MakeAclFeedUri = make_acl_feed_uri + + def get_content_feed(self, uri=None, auth_token=None, **kwargs): + """Retrieves the content feed containing the current state of site. + + Args: + uri: string (optional) A full URI to query the Content feed with. + auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or + OAuthToken which authorizes this client to edit the user's data. + kwargs: Other parameters to pass to self.get_feed(). + + Returns: + gdata.sites.data.ContentFeed + """ + if uri is None: + uri = self.make_content_feed_uri() + return self.get_feed(uri, desired_class=gdata.sites.data.ContentFeed, + auth_token=auth_token, **kwargs) + + GetContentFeed = get_content_feed + + def get_revision_feed(self, entry_or_uri_or_id, auth_token=None, **kwargs): + """Retrieves the revision feed containing the revision history for a node. + + Args: + entry_or_uri_or_id: string or gdata.sites.data.ContentEntry A full URI, + content entry node ID, or a content entry object of the entry to + retrieve revision information for. + auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or + OAuthToken which authorizes this client to edit the user's data. + kwargs: Other parameters to pass to self.get_feed(). + + Returns: + gdata.sites.data.RevisionFeed + """ + uri = self.make_revision_feed_uri() + if isinstance(entry_or_uri_or_id, gdata.sites.data.ContentEntry): + uri = entry_or_uri_or_id.FindRevisionLink() + elif entry_or_uri_or_id.find('/') == -1: + uri += entry_or_uri_or_id + else: + uri = entry_or_uri_or_id + return self.get_feed(uri, desired_class=gdata.sites.data.RevisionFeed, + auth_token=auth_token, **kwargs) + + GetRevisionFeed = get_revision_feed + + def get_activity_feed(self, uri=None, auth_token=None, **kwargs): + """Retrieves the activity feed containing recent Site activity. + + Args: + uri: string (optional) A full URI to query the Activity feed. + auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or + OAuthToken which authorizes this client to edit the user's data. + kwargs: Other parameters to pass to self.get_feed(). + + Returns: + gdata.sites.data.ActivityFeed + """ + if uri is None: + uri = self.make_activity_feed_uri() + return self.get_feed(uri, desired_class=gdata.sites.data.ActivityFeed, + auth_token=auth_token, **kwargs) + + GetActivityFeed = get_activity_feed + + def get_site_feed(self, uri=None, auth_token=None, **kwargs): + """Retrieves the site feed containing a list of sites a user has access to. + + Args: + uri: string (optional) A full URI to query the site feed. + auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or + OAuthToken which authorizes this client to edit the user's data. + kwargs: Other parameters to pass to self.get_feed(). + + Returns: + gdata.sites.data.SiteFeed + """ + if uri is None: + uri = self.make_site_feed_uri() + return self.get_feed(uri, desired_class=gdata.sites.data.SiteFeed, + auth_token=auth_token, **kwargs) + + GetSiteFeed = get_site_feed + + def get_acl_feed(self, uri=None, auth_token=None, **kwargs): + """Retrieves the acl feed containing a site's sharing permissions. + + Args: + uri: string (optional) A full URI to query the acl feed. + auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or + OAuthToken which authorizes this client to edit the user's data. + kwargs: Other parameters to pass to self.get_feed(). + + Returns: + gdata.sites.data.AclFeed + """ + if uri is None: + uri = self.make_acl_feed_uri() + return self.get_feed(uri, desired_class=gdata.sites.data.AclFeed, + auth_token=auth_token, **kwargs) + + GetAclFeed = get_acl_feed + + def create_site(self, title, description=None, source_site=None, + theme=None, uri=None, auth_token=None, **kwargs): + """Creates a new Google Site. + + Note: This feature is only available to Google Apps domains. + + Args: + title: string Title for the site. + description: string (optional) A description/summary for the site. + source_site: string (optional) The site feed URI of the site to copy. + This parameter should only be specified when copying a site. + theme: string (optional) The name of the theme to create the site with. + uri: string (optional) A full site feed URI to override where the site + is created/copied. By default, the site will be created under + the currently set domain (e.g. self.domain). + auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or + OAuthToken which authorizes this client to edit the user's data. + kwargs: Other parameters to pass to gdata.client.post(). + + Returns: + gdata.sites.data.SiteEntry of the created site. + """ + new_entry = gdata.sites.data.SiteEntry(title=atom.data.Title(text=title)) + + if description is not None: + new_entry.summary = gdata.sites.data.Summary(text=description) + + # Add the source link if we're making a copy of a site. + if source_site is not None: + source_link = atom.data.Link(rel=gdata.sites.data.SITES_SOURCE_LINK_REL, + type='application/atom+xml', + href=source_site) + new_entry.link.append(source_link) + + if theme is not None: + new_entry.theme = gdata.sites.data.Theme(text=theme) + + if uri is None: + uri = self.make_site_feed_uri() + + return self.post(new_entry, uri, auth_token=auth_token, **kwargs) + + CreateSite = create_site + + def create_page(self, kind, title, html='', page_name=None, parent=None, + auth_token=None, **kwargs): + """Creates a new page (specified by kind) on a Google Site. + + Args: + kind: string The type of page/item to create. For example, webpage, + listpage, comment, announcementspage, filecabinet, etc. The full list + of supported kinds can be found in gdata.sites.gdata.SUPPORT_KINDS. + title: string Title for the page. + html: string (optional) XHTML for the page's content body. + page_name: string (optional) The URL page name to set. If not set, the + title will be normalized and used as the page's URL path. + parent: string or gdata.sites.data.ContentEntry (optional) The parent + entry or parent link url to create the page under. + auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or + OAuthToken which authorizes this client to edit the user's data. + kwargs: Other parameters to pass to gdata.client.post(). + + Returns: + gdata.sites.data.ContentEntry of the created page. + """ + new_entry = gdata.sites.data.ContentEntry( + title=atom.data.Title(text=title), kind=kind, + content=gdata.sites.data.Content(text=html)) + + if page_name is not None: + new_entry.page_name = gdata.sites.data.PageName(text=page_name) + + # Add parent link to entry if it should be uploaded as a subpage. + if isinstance(parent, gdata.sites.data.ContentEntry): + parent_link = atom.data.Link(rel=gdata.sites.data.SITES_PARENT_LINK_REL, + type='application/atom+xml', + href=parent.GetSelfLink().href) + new_entry.link.append(parent_link) + elif parent is not None: + parent_link = atom.data.Link(rel=gdata.sites.data.SITES_PARENT_LINK_REL, + type='application/atom+xml', + href=parent) + new_entry.link.append(parent_link) + + return self.post(new_entry, self.make_content_feed_uri(), + auth_token=auth_token, **kwargs) + + CreatePage = create_page + + def create_webattachment(self, src, content_type, title, parent, + description=None, auth_token=None, **kwargs): + """Creates a new webattachment within a filecabinet. + + Args: + src: string The url of the web attachment. + content_type: string The MIME type of the web attachment. + title: string The title to name the web attachment. + parent: string or gdata.sites.data.ContentEntry (optional) The + parent entry or url of the filecabinet to create the attachment under. + description: string (optional) A summary/description for the attachment. + auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or + OAuthToken which authorizes this client to edit the user's data. + kwargs: Other parameters to pass to gdata.client.post(). + + Returns: + gdata.sites.data.ContentEntry of the created page. + """ + new_entry = gdata.sites.data.ContentEntry( + title=atom.data.Title(text=title), kind='webattachment', + content=gdata.sites.data.Content(src=src, type=content_type)) + + if isinstance(parent, gdata.sites.data.ContentEntry): + link = atom.data.Link(rel=gdata.sites.data.SITES_PARENT_LINK_REL, + type='application/atom+xml', + href=parent.GetSelfLink().href) + elif parent is not None: + link = atom.data.Link(rel=gdata.sites.data.SITES_PARENT_LINK_REL, + type='application/atom+xml', href=parent) + + new_entry.link.append(link) + + # Add file decription if it was specified + if description is not None: + new_entry.summary = gdata.sites.data.Summary(type='text', + text=description) + + return self.post(new_entry, self.make_content_feed_uri(), + auth_token=auth_token, **kwargs) + + CreateWebAttachment = create_webattachment + + def upload_attachment(self, file_handle, parent, content_type=None, + title=None, description=None, folder_name=None, + auth_token=None, **kwargs): + """Uploads an attachment to a parent page. + + Args: + file_handle: MediaSource or string A gdata.data.MediaSource object + containing the file to be uploaded or the full path name to the + file on disk. + parent: gdata.sites.data.ContentEntry or string The parent page to + upload the file to or the full URI of the entry's self link. + content_type: string (optional) The MIME type of the file + (e.g 'application/pdf'). This should be provided if file is not a + MediaSource object. + title: string (optional) The title to name the attachment. If not + included, the filepath or media source's filename is used. + description: string (optional) A summary/description for the attachment. + folder_name: string (optional) The name of an existing folder to upload + the attachment to. This only applies when the parent parameter points + to a filecabinet entry. + auth_token: (optional) gdata.gauth.ClientLoginToken, AuthSubToken, or + OAuthToken which authorizes this client to edit the user's data. + kwargs: Other parameters to pass to self.__upload(). + + Returns: + A gdata.sites.data.ContentEntry containing information about the created + attachment. + """ + if isinstance(parent, gdata.sites.data.ContentEntry): + link = atom.data.Link(rel=gdata.sites.data.SITES_PARENT_LINK_REL, + type='application/atom+xml', + href=parent.GetSelfLink().href) + else: + link = atom.data.Link(rel=gdata.sites.data.SITES_PARENT_LINK_REL, + type='application/atom+xml', + href=parent) + + if not isinstance(file_handle, gdata.data.MediaSource): + ms = gdata.data.MediaSource(file_path=file_handle, + content_type=content_type) + else: + ms = file_handle + + # If no title specified, use the file name + if title is None: + title = ms.file_name + + new_entry = gdata.sites.data.ContentEntry(kind='attachment') + new_entry.title = atom.data.Title(text=title) + new_entry.link.append(link) + + # Add file decription if it was specified + if description is not None: + new_entry.summary = gdata.sites.data.Summary(type='text', + text=description) + + # Upload the attachment to a filecabinet folder? + if parent.Kind() == 'filecabinet' and folder_name is not None: + folder_category = atom.data.Category( + scheme=gdata.sites.data.FOLDER_KIND_TERM, term=folder_name) + new_entry.category.append(folder_category) + + return self.__upload(new_entry, ms, auth_token=auth_token, **kwargs) + + UploadAttachment = upload_attachment + + def download_attachment(self, uri_or_entry, file_path): + """Downloads an attachment file to disk. + + Args: + uri_or_entry: string The full URL to download the file from. + file_path: string The full path to save the file to. + + Raises: + gdata.client.RequestError: on error response from server. + """ + uri = uri_or_entry + if isinstance(uri_or_entry, gdata.sites.data.ContentEntry): + uri = uri_or_entry.content.src + + f = open(file_path, 'wb') + try: + f.write(self._get_file_content(uri)) + except gdata.client.RequestError, e: + f.close() + raise e + f.flush() + f.close() + + DownloadAttachment = download_attachment diff -Nru python-gdata-1.2.4/src/gdata/sites/data.py python-gdata-2.0.8/src/gdata/sites/data.py --- python-gdata-1.2.4/src/gdata/sites/data.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/sites/data.py 2010-01-26 21:19:28.000000000 +0000 @@ -0,0 +1,376 @@ +#!/usr/bin/python +# +# Copyright 2009 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Data model classes for parsing and generating XML for the Sites Data API.""" + +__author__ = 'e.bidelman (Eric Bidelman)' + + +import atom.core +import atom.data +import gdata.acl.data +import gdata.data + +# XML Namespaces used in Google Sites entities. +SITES_NAMESPACE = 'http://schemas.google.com/sites/2008' +SITES_TEMPLATE = '{http://schemas.google.com/sites/2008}%s' +SPREADSHEETS_NAMESPACE = 'http://schemas.google.com/spreadsheets/2006' +SPREADSHEETS_TEMPLATE = '{http://schemas.google.com/spreadsheets/2006}%s' +DC_TERMS_TEMPLATE = '{http://purl.org/dc/terms}%s' +THR_TERMS_TEMPLATE = '{http://purl.org/syndication/thread/1.0}%s' +XHTML_NAMESPACE = 'http://www.w3.org/1999/xhtml' +XHTML_TEMPLATE = '{http://www.w3.org/1999/xhtml}%s' + +SITES_PARENT_LINK_REL = SITES_NAMESPACE + '#parent' +SITES_REVISION_LINK_REL = SITES_NAMESPACE + '#revision' +SITES_SOURCE_LINK_REL = SITES_NAMESPACE + '#source' + +SITES_KIND_SCHEME = 'http://schemas.google.com/g/2005#kind' +ANNOUNCEMENT_KIND_TERM = SITES_NAMESPACE + '#announcement' +ANNOUNCEMENT_PAGE_KIND_TERM = SITES_NAMESPACE + '#announcementspage' +ATTACHMENT_KIND_TERM = SITES_NAMESPACE + '#attachment' +COMMENT_KIND_TERM = SITES_NAMESPACE + '#comment' +FILECABINET_KIND_TERM = SITES_NAMESPACE + '#filecabinet' +LISTITEM_KIND_TERM = SITES_NAMESPACE + '#listitem' +LISTPAGE_KIND_TERM = SITES_NAMESPACE + '#listpage' +WEBPAGE_KIND_TERM = SITES_NAMESPACE + '#webpage' +WEBATTACHMENT_KIND_TERM = SITES_NAMESPACE + '#webattachment' +FOLDER_KIND_TERM = SITES_NAMESPACE + '#folder' + +SUPPORT_KINDS = [ + 'announcement', 'announcementspage', 'attachment', 'comment', 'filecabinet', + 'listitem', 'listpage', 'webpage', 'webattachment' + ] + + +class Revision(atom.core.XmlElement): + """Google Sites .""" + _qname = SITES_TEMPLATE % 'revision' + + +class PageName(atom.core.XmlElement): + """Google Sites .""" + _qname = SITES_TEMPLATE % 'pageName' + + +class SiteName(atom.core.XmlElement): + """Google Sites .""" + _qname = SITES_TEMPLATE % 'siteName' + + +class Theme(atom.core.XmlElement): + """Google Sites .""" + _qname = SITES_TEMPLATE % 'theme' + + +class Deleted(atom.core.XmlElement): + """Google Sites .""" + _qname = gdata.data.GDATA_TEMPLATE % 'deleted' + + +class Publisher(atom.core.XmlElement): + """Google Sites .""" + _qname = DC_TERMS_TEMPLATE % 'publisher' + + +class Worksheet(atom.core.XmlElement): + """Google Sites List Page .""" + + _qname = SPREADSHEETS_TEMPLATE % 'worksheet' + name = 'name' + + +class Header(atom.core.XmlElement): + """Google Sites List Page .""" + + _qname = SPREADSHEETS_TEMPLATE % 'header' + row = 'row' + + +class Column(atom.core.XmlElement): + """Google Sites List Page .""" + + _qname = SPREADSHEETS_TEMPLATE % 'column' + index = 'index' + name = 'name' + + +class Data(atom.core.XmlElement): + """Google Sites List Page .""" + + _qname = SPREADSHEETS_TEMPLATE % 'data' + startRow = 'startRow' + column = [Column] + + +class Field(atom.core.XmlElement): + """Google Sites List Item .""" + + _qname = SPREADSHEETS_TEMPLATE % 'field' + index = 'index' + name = 'name' + + +class InReplyTo(atom.core.XmlElement): + """Google Sites List Item .""" + + _qname = THR_TERMS_TEMPLATE % 'in-reply-to' + href = 'href' + ref = 'ref' + source = 'source' + type = 'type' + + +class Content(atom.data.Content): + """Google Sites version of that encapsulates XHTML.""" + + def __init__(self, html=None, type=None, **kwargs): + if type is None and html: + type = 'xhtml' + super(Content, self).__init__(type=type, **kwargs) + if html is not None: + self.html = html + + def _get_html(self): + if self.children: + return self.children[0] + else: + return '' + + def _set_html(self, html): + if not html: + self.children = [] + return + + if type(html) == str: + html = atom.core.parse(html) + if not html.namespace: + html.namespace = XHTML_NAMESPACE + + self.children = [html] + + html = property(_get_html, _set_html) + + +class Summary(atom.data.Summary): + """Google Sites version of .""" + + def __init__(self, html=None, type=None, text=None, **kwargs): + if type is None and html: + type = 'xhtml' + + super(Summary, self).__init__(type=type, text=text, **kwargs) + if html is not None: + self.html = html + + def _get_html(self): + if self.children: + return self.children[0] + else: + return '' + + def _set_html(self, html): + if not html: + self.children = [] + return + + if type(html) == str: + html = atom.core.parse(html) + if not html.namespace: + html.namespace = XHTML_NAMESPACE + + self.children = [html] + + html = property(_get_html, _set_html) + + +class BaseSiteEntry(gdata.data.GDEntry): + """Google Sites Entry.""" + + def __init__(self, kind=None, **kwargs): + super(BaseSiteEntry, self).__init__(**kwargs) + if kind is not None: + self.category.append( + atom.data.Category(scheme=SITES_KIND_SCHEME, + term='%s#%s' % (SITES_NAMESPACE, kind), + label=kind)) + + def __find_category_scheme(self, scheme): + for category in self.category: + if category.scheme == scheme: + return category + return None + + def kind(self): + kind = self.__find_category_scheme(SITES_KIND_SCHEME) + if kind is not None: + return kind.term[len(SITES_NAMESPACE) + 1:] + else: + return None + + Kind = kind + + def get_node_id(self): + return self.id.text[self.id.text.rfind('/') + 1:] + + GetNodeId = get_node_id + + def find_parent_link(self): + return self.find_url(SITES_PARENT_LINK_REL) + + FindParentLink = find_parent_link + + def is_deleted(self): + return self.deleted is not None + + IsDeleted = is_deleted + + +class ContentEntry(BaseSiteEntry): + """Google Sites Content Entry.""" + content = Content + deleted = Deleted + publisher = Publisher + in_reply_to = InReplyTo + worksheet = Worksheet + header = Header + data = Data + field = [Field] + revision = Revision + page_name = PageName + feed_link = gdata.data.FeedLink + + def find_revison_link(self): + return self.find_url(SITES_REVISION_LINK_REL) + + FindRevisionLink = find_revison_link + + +class ContentFeed(gdata.data.GDFeed): + """Google Sites Content Feed. + + The Content feed is a feed containing the current, editable site content. + """ + entry = [ContentEntry] + + def __get_entry_type(self, kind): + matches = [] + for entry in self.entry: + if entry.Kind() == kind: + matches.append(entry) + return matches + + def get_announcements(self): + return self.__get_entry_type('announcement') + + GetAnnouncements = get_announcements + + def get_announcement_pages(self): + return self.__get_entry_type('announcementspage') + + GetAnnouncementPages = get_announcement_pages + + def get_attachments(self): + return self.__get_entry_type('attachment') + + GetAttachments = get_attachments + + def get_comments(self): + return self.__get_entry_type('comment') + + GetComments = get_comments + + def get_file_cabinets(self): + return self.__get_entry_type('filecabinet') + + GetFileCabinets = get_file_cabinets + + def get_list_items(self): + return self.__get_entry_type('listitem') + + GetListItems = get_list_items + + def get_list_pages(self): + return self.__get_entry_type('listpage') + + GetListPages = get_list_pages + + def get_webpages(self): + return self.__get_entry_type('webpage') + + GetWebpages = get_webpages + + def get_webattachments(self): + return self.__get_entry_type('webattachment') + + GetWebattachments = get_webattachments + + +class ActivityEntry(BaseSiteEntry): + """Google Sites Activity Entry.""" + summary = Summary + + +class ActivityFeed(gdata.data.GDFeed): + """Google Sites Activity Feed. + + The Activity feed is a feed containing recent Site activity. + """ + entry = [ActivityEntry] + + +class RevisionEntry(BaseSiteEntry): + """Google Sites Revision Entry.""" + content = Content + + +class RevisionFeed(gdata.data.GDFeed): + """Google Sites Revision Feed. + + The Activity feed is a feed containing recent Site activity. + """ + entry = [RevisionEntry] + + +class SiteEntry(gdata.data.GDEntry): + """Google Sites Site Feed Entry.""" + site_name = SiteName + theme = Theme + + def find_source_link(self): + return self.find_url(SITES_SOURCE_LINK_REL) + + FindSourceLink = find_source_link + + +class SiteFeed(gdata.data.GDFeed): + """Google Sites Site Feed. + + The Site feed can be used to list a user's sites and create new sites. + """ + entry = [SiteEntry] + + +class AclEntry(gdata.acl.data.AclEntry): + """Google Sites ACL Entry.""" + + +class AclFeed(gdata.acl.data.AclFeed): + """Google Sites ACL Feed. + + The ACL feed can be used to modify the sharing permissions of a Site. + """ + entry = [AclEntry] diff -Nru python-gdata-1.2.4/src/gdata/spreadsheet/__init__.py python-gdata-2.0.8/src/gdata/spreadsheet/__init__.py --- python-gdata-1.2.4/src/gdata/spreadsheet/__init__.py 2008-04-10 19:19:24.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/spreadsheet/__init__.py 2009-09-17 02:46:02.000000000 +0100 @@ -340,7 +340,7 @@ if custom: self.custom[name] = custom else: - ExtensionContainer._ConvertElementTreeToMember(self, child_tree) + atom.ExtensionContainer._ConvertElementTreeToMember(self, child_tree) # We need to overwtite _AddMembersToElementTree to add special logic to # convert custom members to XML nodes. diff -Nru python-gdata-1.2.4/src/gdata/spreadsheet/service.py python-gdata-2.0.8/src/gdata/spreadsheet/service.py --- python-gdata-1.2.4/src/gdata/spreadsheet/service.py 2009-01-22 19:17:14.000000000 +0000 +++ python-gdata-2.0.8/src/gdata/spreadsheet/service.py 2010-01-28 01:04:23.000000000 +0000 @@ -17,8 +17,8 @@ """SpreadsheetsService extends the GDataService to streamline Google Spreadsheets operations. - GBaseService: Provides methods to query feeds and manipulate items. Extends - GDataService. + SpreadsheetService: Provides methods to query feeds and manipulate items. + Extends GDataService. DictionaryToParamList: Function which converts a dictionary into a list of URL arguments (represented as strings). This is a @@ -303,7 +303,7 @@ converter: Function (optional) Function to be executed on the server's response. This function should take one string as a parameter. The default value is SpreadsheetsCellsFeedFromString which will turn the result - into a gdata.base.GBaseItem object. + into a gdata.spreadsheet.SpreadsheetsCellsFeed object. Returns: A gdata.BatchFeed containing the results. @@ -337,6 +337,12 @@ def UpdateRow(self, entry, new_row_data): """Updates a row with the provided data + + If you want to add additional information to a row, it is often + easier to change the values in entry.custom, then use the Put + method instead of UpdateRow. This UpdateRow method will replace + the contents of the row with new_row_data - it will change all columns + not just the columns specified in the new_row_data dict. Args: entry: gdata.spreadsheet.SpreadsheetsList The entry to be updated diff -Nru python-gdata-1.2.4/src/gdata/spreadsheets/client.py python-gdata-2.0.8/src/gdata/spreadsheets/client.py --- python-gdata-1.2.4/src/gdata/spreadsheets/client.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/spreadsheets/client.py 2010-02-18 19:29:19.000000000 +0000 @@ -0,0 +1,451 @@ +#!/usr/bin/env python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +"""Contains a client to communicate with the Google Spreadsheets servers. + +For documentation on the Spreadsheets API, see: +http://code.google.com/apis/spreadsheets/ +""" + + +__author__ = 'j.s@google.com (Jeff Scudder)' + + +import gdata.client +import gdata.gauth +import gdata.spreadsheets.data +import atom.data +import atom.http_core + + +SPREADSHEETS_URL = ('http://spreadsheets.google.com/feeds/spreadsheets' + '/private/full') +WORKSHEETS_URL = ('http://spreadsheets.google.com/feeds/worksheets/' + '%s/private/full') +WORKSHEET_URL = ('http://spreadsheets.google.com/feeds/worksheets/' + '%s/private/full/%s') +TABLES_URL = 'http://spreadsheets.google.com/feeds/%s/tables' +RECORDS_URL = 'http://spreadsheets.google.com/feeds/%s/records/%s' +RECORD_URL = 'http://spreadsheets.google.com/feeds/%s/records/%s/%s' + + +class SpreadsheetsClient(gdata.client.GDClient): + api_version = '3' + auth_service = 'wise' + auth_scopes = gdata.gauth.AUTH_SCOPES['wise'] + + def get_spreadsheets(self, auth_token=None, + desired_class=gdata.spreadsheets.data.SpreadsheetsFeed, + **kwargs): + """Obtains a feed with the spreadsheets belonging to the current user. + + Args: + auth_token: An object which sets the Authorization HTTP header in its + modify_request method. Recommended classes include + gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken + among others. Represents the current user. Defaults to None + and if None, this method will look for a value in the + auth_token member of SpreadsheetsClient. + desired_class: class descended from atom.core.XmlElement to which a + successful response should be converted. If there is no + converter function specified (converter=None) then the + desired_class will be used in calling the + atom.core.parse function. If neither + the desired_class nor the converter is specified, an + HTTP reponse object will be returned. Defaults to + gdata.spreadsheets.data.SpreadsheetsFeed. + """ + return self.get_feed(SPREADSHEETS_URL, auth_token=auth_token, + desired_class=desired_class, **kwargs) + + GetSpreadsheets = get_spreadsheets + + def get_worksheets(self, spreadsheet_key, auth_token=None, + desired_class=gdata.spreadsheets.data.WorksheetsFeed, + **kwargs): + """Finds the worksheets within a given spreadsheet. + + Args: + spreadsheet_key: str, The unique ID of this containing spreadsheet. This + can be the ID from the URL or as provided in a + Spreadsheet entry. + auth_token: An object which sets the Authorization HTTP header in its + modify_request method. Recommended classes include + gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken + among others. Represents the current user. Defaults to None + and if None, this method will look for a value in the + auth_token member of SpreadsheetsClient. + desired_class: class descended from atom.core.XmlElement to which a + successful response should be converted. If there is no + converter function specified (converter=None) then the + desired_class will be used in calling the + atom.core.parse function. If neither + the desired_class nor the converter is specified, an + HTTP reponse object will be returned. Defaults to + gdata.spreadsheets.data.WorksheetsFeed. + """ + return self.get_feed(WORKSHEETS_URL % spreadsheet_key, + auth_token=auth_token, desired_class=desired_class, + **kwargs) + + GetWorksheets = get_worksheets + + def add_worksheet(self, spreadsheet_key, title, rows, cols, + auth_token=None, **kwargs): + """Creates a new worksheet entry in the spreadsheet. + + Args: + spreadsheet_key: str, The unique ID of this containing spreadsheet. This + can be the ID from the URL or as provided in a + Spreadsheet entry. + title: str, The title to be used in for the worksheet. + rows: str or int, The number of rows this worksheet should start with. + cols: str or int, The number of columns this worksheet should start with. + auth_token: An object which sets the Authorization HTTP header in its + modify_request method. Recommended classes include + gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken + among others. Represents the current user. Defaults to None + and if None, this method will look for a value in the + auth_token member of SpreadsheetsClient. + """ + new_worksheet = gdata.spreadsheets.data.WorksheetEntry( + title=atom.data.Title(text=title), + row_count=gdata.spreadsheets.data.RowCount(text=str(rows)), + col_count=gdata.spreadsheets.data.ColCount(text=str(cols))) + return self.post(new_worksheet, WORKSHEETS_URL % spreadsheet_key, + auth_token=auth_token, **kwargs) + + AddWorksheet = add_worksheet + + def get_worksheet(self, spreadsheet_key, worksheet_id, + desired_class=gdata.spreadsheets.data.WorksheetEntry, + auth_token=None, **kwargs): + """Retrieves a single worksheet. + + Args: + spreadsheet_key: str, The unique ID of this containing spreadsheet. This + can be the ID from the URL or as provided in a + Spreadsheet entry. + worksheet_id: str, The unique ID for the worksheet withing the desired + spreadsheet. + auth_token: An object which sets the Authorization HTTP header in its + modify_request method. Recommended classes include + gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken + among others. Represents the current user. Defaults to None + and if None, this method will look for a value in the + auth_token member of SpreadsheetsClient. + desired_class: class descended from atom.core.XmlElement to which a + successful response should be converted. If there is no + converter function specified (converter=None) then the + desired_class will be used in calling the + atom.core.parse function. If neither + the desired_class nor the converter is specified, an + HTTP reponse object will be returned. Defaults to + gdata.spreadsheets.data.WorksheetEntry. + + """ + return self.get_entry(WORKSHEET_URL % (spreadsheet_key, worksheet_id,), + auth_token=auth_token, desired_class=desired_class, + **kwargs) + + GetWorksheet = get_worksheet + + def add_table(self, spreadsheet_key, title, summary, worksheet_name, + header_row, num_rows, start_row, insertion_mode, + column_headers, auth_token=None, **kwargs): + """Creates a new table within the worksheet. + + Args: + spreadsheet_key: str, The unique ID of this containing spreadsheet. This + can be the ID from the URL or as provided in a + Spreadsheet entry. + title: str, The title for the new table within a worksheet. + summary: str, A description of the table. + worksheet_name: str The name of the worksheet in which this table + should live. + header_row: int or str, The number of the row in the worksheet which + will contain the column names for the data in this table. + num_rows: int or str, The number of adjacent rows in this table. + start_row: int or str, The number of the row at which the data begins. + insertion_mode: str + column_headers: dict of strings, maps the column letters (A, B, C) to + the desired name which will be viewable in the + worksheet. + auth_token: An object which sets the Authorization HTTP header in its + modify_request method. Recommended classes include + gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken + among others. Represents the current user. Defaults to None + and if None, this method will look for a value in the + auth_token member of SpreadsheetsClient. + """ + data = gdata.spreadsheets.data.Data( + insertion_mode=insertion_mode, num_rows=str(num_rows), + start_row=str(start_row)) + for index, name in column_headers.iteritems(): + data.column.append(gdata.spreadsheets.data.Column( + index=index, name=name)) + new_table = gdata.spreadsheets.data.Table( + title=atom.data.Title(text=title), summary=atom.data.Summary(summary), + worksheet=gdata.spreadsheets.data.Worksheet(name=worksheet_name), + header=gdata.spreadsheets.data.Header(row=str(header_row)), data=data) + return self.post(new_table, TABLES_URL % spreadsheet_key, + auth_token=auth_token, **kwargs) + + AddTable = add_table + + def get_tables(self, spreadsheet_key, + desired_class=gdata.spreadsheets.data.TablesFeed, + auth_token=None, **kwargs): + """Retrieves a feed listing the tables in this spreadsheet. + + Args: + spreadsheet_key: str, The unique ID of this containing spreadsheet. This + can be the ID from the URL or as provided in a + Spreadsheet entry. + desired_class: class descended from atom.core.XmlElement to which a + successful response should be converted. If there is no + converter function specified (converter=None) then the + desired_class will be used in calling the + atom.core.parse function. If neither + the desired_class nor the converter is specified, an + HTTP reponse object will be returned. Defaults to + gdata.spreadsheets.data.TablesFeed. + auth_token: An object which sets the Authorization HTTP header in its + modify_request method. Recommended classes include + gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken + among others. Represents the current user. Defaults to None + and if None, this method will look for a value in the + auth_token member of SpreadsheetsClient. + """ + return self.get_feed(TABLES_URL % spreadsheet_key, + desired_class=desired_class, auth_token=auth_token, + **kwargs) + + GetTables = get_tables + + def add_record(self, spreadsheet_key, table_id, fields, + title=None, auth_token=None, **kwargs): + """Adds a new row to the table. + + Args: + spreadsheet_key: str, The unique ID of this containing spreadsheet. This + can be the ID from the URL or as provided in a + Spreadsheet entry. + table_id: str, The ID of the table within the worksheet which should + receive this new record. The table ID can be found using the + get_table_id method of a gdata.spreadsheets.data.Table. + fields: dict of strings mapping column names to values. + title: str, optional The title for this row. + auth_token: An object which sets the Authorization HTTP header in its + modify_request method. Recommended classes include + gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken + among others. Represents the current user. Defaults to None + and if None, this method will look for a value in the + auth_token member of SpreadsheetsClient. + """ + new_record = gdata.spreadsheets.data.Record() + if title is not None: + new_record.title = atom.data.Title(text=title) + for name, value in fields.iteritems(): + new_record.field.append(gdata.spreadsheets.data.Field( + name=name, text=value)) + return self.post(new_record, RECORDS_URL % (spreadsheet_key, table_id), + auth_token=auth_token, **kwargs) + + AddRecord = add_record + + def get_records(self, spreadsheet_key, table_id, + desired_class=gdata.spreadsheets.data.RecordsFeed, + auth_token=None, **kwargs): + """Retrieves the records in a table. + + Args: + spreadsheet_key: str, The unique ID of this containing spreadsheet. This + can be the ID from the URL or as provided in a + Spreadsheet entry. + table_id: str, The ID of the table within the worksheet whose records + we would like to fetch. The table ID can be found using the + get_table_id method of a gdata.spreadsheets.data.Table. + desired_class: class descended from atom.core.XmlElement to which a + successful response should be converted. If there is no + converter function specified (converter=None) then the + desired_class will be used in calling the + atom.core.parse function. If neither + the desired_class nor the converter is specified, an + HTTP reponse object will be returned. Defaults to + gdata.spreadsheets.data.RecordsFeed. + auth_token: An object which sets the Authorization HTTP header in its + modify_request method. Recommended classes include + gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken + among others. Represents the current user. Defaults to None + and if None, this method will look for a value in the + auth_token member of SpreadsheetsClient. + """ + return self.get_feed(RECORDS_URL % (spreadsheet_key, table_id), + desired_class=desired_class, auth_token=auth_token, + **kwargs) + + GetRecords = get_records + + def get_record(self, spreadsheet_key, table_id, record_id, + desired_class=gdata.spreadsheets.data.Record, + auth_token=None, **kwargs): + """Retrieves a single record from the table. + + Args: + spreadsheet_key: str, The unique ID of this containing spreadsheet. This + can be the ID from the URL or as provided in a + Spreadsheet entry. + table_id: str, The ID of the table within the worksheet whose records + we would like to fetch. The table ID can be found using the + get_table_id method of a gdata.spreadsheets.data.Table. + record_id: str, The ID of the record within this table which we want to + fetch. You can find the record ID using get_record_id() on + an instance of the gdata.spreadsheets.data.Record class. + desired_class: class descended from atom.core.XmlElement to which a + successful response should be converted. If there is no + converter function specified (converter=None) then the + desired_class will be used in calling the + atom.core.parse function. If neither + the desired_class nor the converter is specified, an + HTTP reponse object will be returned. Defaults to + gdata.spreadsheets.data.RecordsFeed. + auth_token: An object which sets the Authorization HTTP header in its + modify_request method. Recommended classes include + gdata.gauth.ClientLoginToken and gdata.gauth.AuthSubToken + among others. Represents the current user. Defaults to None + and if None, this method will look for a value in the + auth_token member of SpreadsheetsClient.""" + return self.get_entry(RECORD_URL % (spreadsheet_key, table_id, record_id), + desired_class=desired_class, auth_token=auth_token, + **kwargs) + + GetRecord = get_record + + +class SpreadsheetQuery(gdata.client.Query): + + def __init__(self, title=None, title_exact=None, **kwargs): + """Adds Spreadsheets feed query parameters to a request. + + Args: + title: str Specifies the search terms for the title of a document. + This parameter used without title-exact will only submit partial + queries, not exact queries. + title_exact: str Specifies whether the title query should be taken as an + exact string. Meaningless without title. Possible values are + 'true' and 'false'. + """ + gdata.client.Query.__init__(self, **kwargs) + self.title = title + self.title_exact = title_exact + + def modify_request(self, http_request): + gdata.client._add_query_param('title', self.title, http_request) + gdata.client._add_query_param('title-exact', self.title_exact, + http_request) + gdata.client.Query.modify_request(self, http_request) + + ModifyRequest = modify_request + + +class WorksheetQuery(SpreadsheetQuery): + pass + + +class ListQuery(gdata.client.Query): + + def __init__(self, order_by=None, reverse=None, sq=None, **kwargs): + """Adds List-feed specific query parameters to a request. + + Args: + order_by: str Specifies what column to use in ordering the entries in + the feed. By position (the default): 'position' returns + rows in the order in which they appear in the GUI. Row 1, then + row 2, then row 3, and so on. By column: + 'column:columnName' sorts rows in ascending order based on the + values in the column with the given columnName, where + columnName is the value in the header row for that column. + reverse: str Specifies whether to sort in descending or ascending order. + Reverses default sort order: 'true' results in a descending + sort; 'false' (the default) results in an ascending sort. + sq: str Structured query on the full text in the worksheet. + [columnName][binaryOperator][value] + Supported binaryOperators are: + - (), for overriding order of operations + - = or ==, for strict equality + - <> or !=, for strict inequality + - and or &&, for boolean and + - or or ||, for boolean or + """ + gdata.client.Query.__init__(self, **kwargs) + self.order_by = order_by + self.reverse = reverse + self.sq = sq + + def modify_request(self, http_request): + gdata.client._add_query_param('orderby', self.order_by, http_request) + gdata.client._add_query_param('reverse', self.reverse, http_request) + gdata.client._add_query_param('sq', self.sq, http_request) + gdata.client.Query.modify_request(self, http_request) + + ModifyRequest = modify_request + + +class TableQuery(ListQuery): + pass + + +class CellQuery(gdata.client.Query): + + def __init__(self, min_row=None, max_row=None, min_col=None, max_col=None, + range=None, return_empty=None, **kwargs): + """Adds Cells-feed specific query parameters to a request. + + Args: + min_row: str or int Positional number of minimum row returned in query. + max_row: str or int Positional number of maximum row returned in query. + min_col: str or int Positional number of minimum column returned in query. + max_col: str or int Positional number of maximum column returned in query. + range: str A single cell or a range of cells. Use standard spreadsheet + cell-range notations, using a colon to separate start and end of + range. Examples: + - 'A1' and 'R1C1' both specify only cell A1. + - 'D1:F3' and 'R1C4:R3C6' both specify the rectangle of cells with + corners at D1 and F3. + return_empty: str If 'true' then empty cells will be returned in the feed. + If omitted, the default is 'false'. + """ + gdata.client.Query.__init__(self, **kwargs) + self.min_row = min_row + self.max_row = max_row + self.min_col = min_col + self.max_col = max_col + self.range = range + self.return_empty = return_empty + + def modify_request(self, http_request): + gdata.client._add_query_param('min-row', self.min_row, http_request) + gdata.client._add_query_param('max-row', self.max_row, http_request) + gdata.client._add_query_param('min-col', self.min_col, http_request) + gdata.client._add_query_param('max-col', self.max_col, http_request) + gdata.client._add_query_param('range', self.range, http_request) + gdata.client._add_query_param('return-empty', self.return_empty, + http_request) + gdata.client.Query.modify_request(self, http_request) + + ModifyRequest = modify_request diff -Nru python-gdata-1.2.4/src/gdata/spreadsheets/data.py python-gdata-2.0.8/src/gdata/spreadsheets/data.py --- python-gdata-1.2.4/src/gdata/spreadsheets/data.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/spreadsheets/data.py 2010-02-18 18:45:39.000000000 +0000 @@ -0,0 +1,317 @@ +#!/usr/bin/env python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +# This module is used for version 2 of the Google Data APIs. + + +"""Provides classes and constants for the XML in the Google Spreadsheets API. + +Documentation for the raw XML which these classes represent can be found here: +http://code.google.com/apis/spreadsheets/docs/3.0/reference.html#Elements +""" + + +__author__ = 'j.s@google.com (Jeff Scudder)' + + +import atom.core +import gdata.data + + +GS_TEMPLATE = '{http://schemas.google.com/spreadsheets/2006}%s' +GSX_NAMESPACE = 'http://schemas.google.com/spreadsheets/2006/extended' + + +INSERT_MODE = 'insert' +OVERWRITE_MODE = 'overwrite' + + +WORKSHEETS_REL = 'http://schemas.google.com/spreadsheets/2006#worksheetsfeed' + + +class Error(Exception): + pass + + +class FieldMissing(Exception): + pass + + +class HeaderNotSet(Error): + """The desired column header had no value for the row in the list feed.""" + + +class Cell(atom.core.XmlElement): + """The gs:cell element. + + A cell in the worksheet. The element can appear only as a child + of . + """ + _qname = GS_TEMPLATE % 'cell' + col = 'col' + input_value = 'inputValue' + numeric_value = 'numericValue' + row = 'row' + + +class ColCount(atom.core.XmlElement): + """The gs:colCount element. + + Indicates the number of columns in the worksheet, including columns that + contain only empty cells. The element can appear as a child + of or + """ + _qname = GS_TEMPLATE % 'colCount' + + +class Field(atom.core.XmlElement): + """The gs:field element. + + A field single cell within a record. Contained in an . + """ + _qname = GS_TEMPLATE % 'field' + index = 'index' + name = 'name' + + +class Column(Field): + """The gs:column element.""" + _qname = GS_TEMPLATE % 'column' + + +class Data(atom.core.XmlElement): + """The gs:data element. + + A data region of a table. Contained in an element. + """ + _qname = GS_TEMPLATE % 'data' + column = [Column] + insertion_mode = 'insertionMode' + num_rows = 'numRows' + start_row = 'startRow' + + +class Header(atom.core.XmlElement): + """The gs:header element. + + Indicates which row is the header row. Contained in an . + """ + _qname = GS_TEMPLATE % 'header' + row = 'row' + + +class RowCount(atom.core.XmlElement): + """The gs:rowCount element. + + Indicates the number of total rows in the worksheet, including rows that + contain only empty cells. The element can appear as a + child of or . + """ + _qname = GS_TEMPLATE % 'rowCount' + + +class Worksheet(atom.core.XmlElement): + """The gs:worksheet element. + + The worksheet where the table lives.Contained in an . + """ + _qname = GS_TEMPLATE % 'worksheet' + name = 'name' + + +class Spreadsheet(gdata.data.GDEntry): + """An Atom entry which represents a Google Spreadsheet.""" + + def find_worksheets_feed(self): + return self.find_url(WORKSHEETS_REL) + + FindWorksheetsFeed = find_worksheets_feed + + +class SpreadsheetsFeed(gdata.data.GDFeed): + """An Atom feed listing a user's Google Spreadsheets.""" + entry = [Spreadsheet] + + +class WorksheetEntry(gdata.data.GDEntry): + """An Atom entry representing a single worksheet in a spreadsheet.""" + row_count = RowCount + col_count = ColCount + + +class WorksheetsFeed(gdata.data.GDFeed): + """A feed containing the worksheets in a single spreadsheet.""" + entry = [WorksheetEntry] + + +class Table(gdata.data.GDEntry): + """An Atom entry that represents a subsection of a worksheet. + + A table allows you to treat part or all of a worksheet somewhat like a + table in a database that is, as a set of structured data items. Tables + don't exist until you explicitly create them before you can use a table + feed, you have to explicitly define where the table data comes from. + """ + data = Data + header = Header + worksheet = Worksheet + + def get_table_id(self): + if self.id.text: + return self.id.text.split('/')[-1] + return None + + GetTableId = get_table_id + + +class TablesFeed(gdata.data.GDFeed): + """An Atom feed containing the tables defined within a worksheet.""" + entry = [Table] + + +class Record(gdata.data.GDEntry): + """An Atom entry representing a single record in a table. + + Note that the order of items in each record is the same as the order of + columns in the table definition, which may not match the order of + columns in the GUI. + """ + field = [Field] + + def value_for_index(self, column_index): + for field in self.field: + if field.index == column_index: + return field.text + raise FieldMissing('There is no field for %s' % column_index) + + ValueForIndex = value_for_index + + def value_for_name(self, name): + for field in self.field: + if field.name == name: + return field.text + raise FieldMissing('There is no field for %s' % name) + + ValueForName = value_for_name + + def get_record_id(self): + if self.id.text: + return self.id.text.split('/')[-1] + return None + + +class RecordsFeed(gdata.data.GDFeed): + """An Atom feed containing the individuals records in a table.""" + entry = [Record] + + +class ListRow(atom.core.XmlElement): + """A gsx column value within a row. + + The local tag in the _qname is blank and must be set to the column + name. For example, when adding to a ListEntry, do: + col_value = ListRow(text='something') + col_value._qname = col_value._qname % 'mycolumnname' + """ + _qname = '{http://schemas.google.com/spreadsheets/2006/extended}%s' + + +class ListEntry(gdata.data.GDEntry): + """An Atom entry representing a worksheet row in the list feed. + + The values for a particular column can be get and set using + x.get_value('columnheader') and x.set_value('columnheader', 'value'). + See also the explanation of column names in the ListFeed class. + """ + + def get_value(self, column_name): + """Returns the displayed text for the desired column in this row. + + The formula or input which generated the displayed value is not accessible + through the list feed, to see the user's input, use the cells feed. + + If a column is not present in this spreadsheet, or there is no value + for a column in this row, this method will return None. + """ + values = self.get_elements(column_name, GSX_NAMESPACE) + if len(values) == 0: + return None + return values[0].text + + def set_value(self, column_name, value): + """Changes the value of cell in this row under the desired column name. + + Warning: if the cell contained a formula, it will be wiped out by setting + the value using the list feed since the list feed only works with + displayed values. + + No client side checking is performed on the column_name, you need to + ensure that the column_name is the local tag name in the gsx tag for the + column. For example, the column_name will not contain special characters, + spaces, uppercase letters, etc. + """ + # Try to find the column in this row to change an existing value. + values = self.get_elements(column_name, GSX_NAMESPACE) + if len(values) > 0: + values[0].text = value + else: + # There is no value in this row for the desired column, so add a new + # gsx:column_name element. + new_value = ListRow(text=value) + new_value._qname = new_value._qname % (column_name,) + self._other_elements.append(new_value) + + +class ListsFeed(gdata.data.GDFeed): + """An Atom feed in which each entry represents a row in a worksheet. + + The first row in the worksheet is used as the column names for the values + in each row. If a header cell is empty, then a unique column ID is used + for the gsx element name. + + Spaces in a column name are removed from the name of the corresponding + gsx element. + + Caution: The columnNames are case-insensitive. For example, if you see + a element in a feed, you can't know whether the column + heading in the original worksheet was "e-mail" or "E-Mail". + + Note: If two or more columns have the same name, then subsequent columns + of the same name have _n appended to the columnName. For example, if the + first column name is "e-mail", followed by columns named "E-Mail" and + "E-mail", then the columnNames will be gsx:e-mail, gsx:e-mail_2, and + gsx:e-mail_3 respectively. + """ + entry = [ListEntry] + + +class CellEntry(gdata.data.BatchEntry): + """An Atom entry representing a single cell in a worksheet.""" + cell = Cell + + +class CellsFeed(gdata.data.BatchFeed): + """An Atom feed contains one entry per cell in a worksheet. + + The cell feed supports batch operations, you can send multiple cell + operations in one HTTP request. + """ + entry = [CellEntry] + + def batch_set_cell(row, col, input): + pass + diff -Nru python-gdata-1.2.4/src/gdata/test_config.py python-gdata-2.0.8/src/gdata/test_config.py --- python-gdata-1.2.4/src/gdata/test_config.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/test_config.py 2010-02-26 21:49:54.000000000 +0000 @@ -0,0 +1,403 @@ +#!/usr/bin/env python + +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +import sys +import unittest +import getpass +import inspect +import atom.mock_http_core +import gdata.gauth + + +"""Loads configuration for tests which connect to Google servers. + +Settings used in tests are stored in a ConfigCollection instance in this +module called options. If your test needs to get a test related setting, +use + +import gdata.test_config +option_value = gdata.test_config.options.get_value('x') + +The above will check the command line for an '--x' argument, and if not +found will either use the default value for 'x' or prompt the user to enter +one. + +Your test can override the value specified by the user by performing: + +gdata.test_config.options.set_value('x', 'y') + +If your test uses a new option which you would like to allow the user to +specify on the command line or via a prompt, you can use the register_option +method as follows: + +gdata.test_config.options.register( + 'option_name', 'Prompt shown to the user', secret=False #As for password. + 'This is the description of the option, shown when help is requested.', + 'default value, provide only if you do not want the user to be prompted') +""" + + +class Option(object): + + def __init__(self, name, prompt, secret=False, description=None, default=None): + self.name = name + self.prompt = prompt + self.secret = secret + self.description = description + self.default = default + + def get(self): + value = self.default + # Check for a command line parameter. + for i in xrange(len(sys.argv)): + if sys.argv[i].startswith('--%s=' % self.name): + value = sys.argv[i].split('=')[1] + elif sys.argv[i] == '--%s' % self.name: + value = sys.argv[i + 1] + # If the param was not on the command line, ask the user to input the + # value. + # In order for this to prompt the user, the default value for the option + # must be None. + if value is None: + prompt = '%s: ' % self.prompt + if self.secret: + value = getpass.getpass(prompt) + else: + print 'You can specify this on the command line using --%s' % self.name + value = raw_input(prompt) + return value + + +class ConfigCollection(object): + + def __init__(self, options=None): + self.options = options or {} + self.values = {} + + def register_option(self, option): + self.options[option.name] = option + + def register(self, *args, **kwargs): + self.register_option(Option(*args, **kwargs)) + + def get_value(self, option_name): + if option_name in self.values: + return self.values[option_name] + value = self.options[option_name].get() + if value is not None: + self.values[option_name] = value + return value + + def set_value(self, option_name, value): + self.values[option_name] = value + + def render_usage(self): + message_parts = [] + for opt_name, option in self.options.iteritems(): + message_parts.append('--%s: %s' % (opt_name, option.description)) + return '\n'.join(message_parts) + + +options = ConfigCollection() + + +# Register the default options. +options.register( + 'username', + 'Please enter the email address of your test account', + description=('The email address you want to sign in with. ' + 'Make sure this is a test account as these tests may edit' + ' or delete data.')) +options.register( + 'password', + 'Please enter the password for your test account', + secret=True, description='The test account password.') +options.register( + 'clearcache', + 'Delete cached data? (enter true or false)', + description=('If set to true, any temporary files which cache test' + ' requests and responses will be deleted.'), + default='true') +options.register( + 'savecache', + 'Save requests and responses in a temporary file? (enter true or false)', + description=('If set to true, requests to the server and responses will' + ' be saved in temporary files.'), + default='false') +options.register( + 'runlive', + 'Run the live tests which contact the server? (enter true or false)', + description=('If set to true, the tests will make real HTTP requests to' + ' the servers. This slows down test execution and may' + ' modify the users data, be sure to use a test account.'), + default='true') +options.register( + 'ssl', + 'Run the live tests over SSL (enter true or false)', + description='If set to true, all tests will be performed over HTTPS (SSL)', + default='false') +options.register( + 'appsusername', + 'Please enter the email address of your test Apps domain account', + description=('The email address you want to sign in with. ' + 'Make sure this is a test account on your Apps domain as ' + 'these tests may edit or delete data.')) +options.register( + 'appspassword', + 'Please enter the password for your test Apps domain account', + secret=True, description='The test Apps account password.') + +# Other options which may be used if needed. +BLOG_ID_OPTION = Option( + 'blogid', + 'Please enter the ID of your test blog', + description=('The blog ID for the blog which should have test posts added' + ' to it. Example 7682659670455539811')) +TEST_IMAGE_LOCATION_OPTION = Option( + 'imgpath', + 'Please enter the full path to a test image to upload', + description=('This test image will be uploaded to a service which' + ' accepts a media file, it must be a jpeg.')) +SPREADSHEET_ID_OPTION = Option( + 'spreadsheetid', + 'Please enter the ID of a spreadsheet to use in these tests', + description=('The spreadsheet ID for the spreadsheet which should be' + ' modified by theses tests.')) +APPS_DOMAIN_OPTION = Option( + 'appsdomain', + 'Please enter your Google Apps domain', + description=('The domain the Google Apps is hosted on or leave blank' + ' if n/a')) +SITES_NAME_OPTION = Option( + 'sitename', + 'Please enter name of your Google Site', + description='The webspace name of the Site found in its URL.') +PROJECT_NAME_OPTION = Option( + 'project_name', + 'Please enter the name of your project hosting project', + description=('The name of the project which should have test issues added' + ' to it. Example gdata-python-client')) +ISSUE_ASSIGNEE_OPTION = Option( + 'issue_assignee', + 'Enter the email address of the target owner of the updated issue.', + description=('The email address of the user a created issue\'s owner will ' + ' become. Example testuser2@gmail.com')) +GA_TABLE_ID = Option( + 'table_id', + 'Enter the Table ID of the Google Analytics profile to test', + description=('The Table ID of the Google Analytics profile to test.' + ' Example ga:1174')) + +# Functions to inject a cachable HTTP client into a service client. +def configure_client(client, case_name, service_name, use_apps_auth=False): + """Sets up a mock client which will reuse a saved session. + + Should be called during setUp of each unit test. + + Handles authentication to allow the GDClient to make requests which + require an auth header. + + Args: + client: a gdata.GDClient whose http_client member should be replaced + with a atom.mock_http_core.MockHttpClient so that repeated + executions can used cached responses instead of contacting + the server. + case_name: str The name of the test case class. Examples: 'BloggerTest', + 'ContactsTest'. Used to save a session + for the ClientLogin auth token request, so the case_name + should be reused if and only if the same username, password, + and service are being used. + service_name: str The service name as used for ClientLogin to identify + the Google Data API being accessed. Example: 'blogger', + 'wise', etc. + use_apps_auth: bool (optional) If set to True, use appsusername and + appspassword command-line args instead of username and + password respectively. + """ + # Use a mock HTTP client which will record and replay the HTTP traffic + # from these tests. + client.http_client = atom.mock_http_core.MockHttpClient() + client.http_client.cache_case_name = case_name + # Getting the auth token only needs to be done once in the course of test + # runs. + auth_token_key = '%s_auth_token' % service_name + if (auth_token_key not in options.values + and options.get_value('runlive') == 'true'): + client.http_client.cache_test_name = 'client_login' + cache_name = client.http_client.get_cache_file_name() + if options.get_value('clearcache') == 'true': + client.http_client.delete_session(cache_name) + client.http_client.use_cached_session(cache_name) + if not use_apps_auth: + username = options.get_value('username') + password = options.get_value('password') + else: + username = options.get_value('appsusername') + password = options.get_value('appspassword') + auth_token = client.request_client_login_token(username, password, + case_name, service=service_name) + options.values[auth_token_key] = gdata.gauth.token_to_blob(auth_token) + client.http_client.close_session() + # Allow a config auth_token of False to prevent the client's auth header + # from being modified. + if auth_token_key in options.values: + client.auth_token = gdata.gauth.token_from_blob( + options.values[auth_token_key]) + + +def configure_cache(client, test_name): + """Loads or begins a cached session to record HTTP traffic. + + Should be called at the beginning of each test method. + + Args: + client: a gdata.GDClient whose http_client member has been replaced + with a atom.mock_http_core.MockHttpClient so that repeated + executions can used cached responses instead of contacting + the server. + test_name: str The name of this test method. Examples: + 'TestClass.test_x_works', 'TestClass.test_crud_operations'. + This is used to name the recording of the HTTP requests and + responses, so it should be unique to each test method in the + test case. + """ + # Auth token is obtained in configure_client which is called as part of + # setUp. + client.http_client.cache_test_name = test_name + cache_name = client.http_client.get_cache_file_name() + if options.get_value('clearcache') == 'true': + client.http_client.delete_session(cache_name) + client.http_client.use_cached_session(cache_name) + + +def close_client(client): + """Saves the recoded responses to a temp file if the config file allows. + + This should be called in the unit test's tearDown method. + + Checks to see if the 'savecache' option is set to 'true', to make sure we + only save sessions to repeat if the user desires. + """ + if client and options.get_value('savecache') == 'true': + # If this was a live request, save the recording. + client.http_client.close_session() + + +def configure_service(service, case_name, service_name): + """Sets up a mock GDataService v1 client to reuse recorded sessions. + + Should be called during setUp of each unit test. This is a duplicate of + configure_client, modified to handle old v1 service classes. + """ + service.http_client.v2_http_client = atom.mock_http_core.MockHttpClient() + service.http_client.v2_http_client.cache_case_name = case_name + # Getting the auth token only needs to be done once in the course of test + # runs. + auth_token_key = 'service_%s_auth_token' % service_name + if (auth_token_key not in options.values + and options.get_value('runlive') == 'true'): + service.http_client.v2_http_client.cache_test_name = 'client_login' + cache_name = service.http_client.v2_http_client.get_cache_file_name() + if options.get_value('clearcache') == 'true': + service.http_client.v2_http_client.delete_session(cache_name) + service.http_client.v2_http_client.use_cached_session(cache_name) + service.ClientLogin(options.get_value('username'), + options.get_value('password'), + service=service_name, source=case_name) + options.values[auth_token_key] = service.GetClientLoginToken() + service.http_client.v2_http_client.close_session() + if auth_token_key in options.values: + service.SetClientLoginToken(options.values[auth_token_key]) + + +def configure_service_cache(service, test_name): + """Loads or starts a session recording for a v1 Service object. + + Duplicates the behavior of configure_cache, but the target for this + function is a v1 Service object instead of a v2 Client. + """ + service.http_client.v2_http_client.cache_test_name = test_name + cache_name = service.http_client.v2_http_client.get_cache_file_name() + if options.get_value('clearcache') == 'true': + service.http_client.v2_http_client.delete_session(cache_name) + service.http_client.v2_http_client.use_cached_session(cache_name) + + +def close_service(service): + if service and options.get_value('savecache') == 'true': + # If this was a live request, save the recording. + service.http_client.v2_http_client.close_session() + + +def build_suite(classes): + """Creates a TestSuite for all unit test classes in the list. + + Assumes that each of the classes in the list has unit test methods which + begin with 'test'. Calls unittest.makeSuite. + + Returns: + A new unittest.TestSuite containing a test suite for all classes. + """ + suites = [unittest.makeSuite(a_class, 'test') for a_class in classes] + return unittest.TestSuite(suites) + + +def check_data_classes(test, classes): + import inspect + for data_class in classes: + test.assert_(data_class.__doc__ is not None, + 'The class %s should have a docstring' % data_class) + if hasattr(data_class, '_qname'): + qname_versions = None + if isinstance(data_class._qname, tuple): + qname_versions = data_class._qname + else: + qname_versions = (data_class._qname,) + for versioned_qname in qname_versions: + test.assert_(isinstance(versioned_qname, str), + 'The class %s has a non-string _qname' % data_class) + test.assert_(not versioned_qname.endswith('}'), + 'The _qname for class %s is only a namespace' % ( + data_class)) + + for attribute_name, value in data_class.__dict__.iteritems(): + # Ignore all elements that start with _ (private members) + if not attribute_name.startswith('_'): + try: + if not (isinstance(value, str) or inspect.isfunction(value) + or (isinstance(value, list) + and issubclass(value[0], atom.core.XmlElement)) + or type(value) == property # Allow properties. + or inspect.ismethod(value) # Allow methods. + or issubclass(value, atom.core.XmlElement)): + test.fail( + 'XmlElement member should have an attribute, XML class,' + ' or list of XML classes as attributes.') + + except TypeError: + test.fail('Element %s in %s was of type %s' % ( + attribute_name, data_class._qname, type(value))) + + +def check_clients_with_auth(test, classes): + for client_class in classes: + test.assert_(hasattr(client_class, 'api_version')) + test.assert_(isinstance(client_class.auth_service, (str, unicode, int))) + test.assert_(hasattr(client_class, 'auth_service')) + test.assert_(isinstance(client_class.auth_service, (str, unicode))) + test.assert_(hasattr(client_class, 'auth_scopes')) + test.assert_(isinstance(client_class.auth_scopes, (list, tuple))) diff -Nru python-gdata-1.2.4/src/gdata/test_data.py python-gdata-2.0.8/src/gdata/test_data.py --- python-gdata-1.2.4/src/gdata/test_data.py 2008-12-04 00:51:42.000000000 +0000 +++ python-gdata-2.0.8/src/gdata/test_data.py 2010-01-29 00:59:20.000000000 +0000 @@ -1613,7 +1613,7 @@ """ DOCUMENT_LIST_FEED = """ -21Test Spreadsheet2007-07-03T18:03:32.045ZTest Spreadsheet2007-07-03T18:03:32.045Z + +document:dfrkj84g_3348jbxpxcd + + test.user + test.user@gmail.com + +2009-03-05T07:48:21.493Z + +test.usertest.user@gmail.comTest Document2007-07-03T18:02:50.338Zhttp://docs.google.com/feeds/documents/private/fullTest Document2007-07-03T18:02:50.338Z + + + test.user + test.user@gmail.com + + + 2009-03-05T07:48:21.493Z +http://docs.google.com/feeds/documents/private/fullAvailable Documents - -test.user@gmail.com2007-07-09T23:07:21.898Z +test.user@gmail.com2007-07-09T23:07:21.898Z + """ DOCUMENT_LIST_ENTRY = """ -test.usertest.user@gmail.com +test.usertest.user@gmail.com +http://docs.google.com/feeds/documents/private/full/spreadsheet%3Asupercalifragilisticexpealidocious + +Test Spreadsheet2007-07-03T18:03:32.045Z +spreadsheet:supercalifragilisticexpealidocious + + test.user + test.user@gmail.com + +2009-03-05T07:48:21.493Z + + +""" + +DOCUMENT_LIST_ENTRY_V3 = """ + +test.usertest.user@gmail.com +http://docs.google.com/feeds/documents/private/full/spreadsheet%3Asupercalifragilisticexpealidocioushttp://docs.google.com/feeds/documents/private/full/spreadsheet%3Asupercalifragilisticexpealidocious +Test Spreadsheet2007-07-03T18:03:32.045Z +rel="self" type="application/atom+xml" /> + +Test Spreadsheet2007-07-03T18:03:32.045Z +spreadsheet:supercalifragilisticexpealidocious + + test.user + test.user@gmail.com + +2009-03-05T07:48:21.493Z + +1000 + + + +""" + +DOCUMENT_LIST_ACL_ENTRY = """ + + + + +""" + +DOCUMENT_LIST_ACL_FEED = """ + +http://docs.google.com/feeds/acl/private/full/spreadsheet%3ApFrmMi8feTQYCgZpwUQ +2009-02-22T03:48:25.895Z + +Document Permissions + + + + +2 +1 + + http://docs.google.com/feeds/acl/private/full/spreadsheet%3ApFrmMi8feTQp4pwUwUQ/user%3Auser%40gmail.com + 2009-02-22T03:48:25.896Z + + Document Permission - user@gmail.com + + + + + + + http://docs.google.com/feeds/acl/private/full/spreadsheet%3ApFrmMi8fCgZp4pwUwUQ/user%3Auser2%40google.com + 2009-02-22T03:48:26.257Z + + Document Permission - user2@google.com + + + + + +""" + +DOCUMENT_LIST_REVISION_FEED = """ + +https://docs.google.com/feeds/default/private/full/resource_id/revisions +2009-08-17T04:22:10.378Z +Document Revisions + + + +6 +1 + + https://docs.google.com/feeds/id/resource_id/revisions/2 + 2009-08-17T04:22:10.440Z + 2009-08-14T07:11:34.197Z + Revision 2 + + + + + + another_user + another_user@gmail.com + + + + + + """ BATCH_ENTRY = """ @@ -2626,6 +2765,47 @@ """ +CALENDAR_RESOURCE_ENTRY = """ + + + + + +""" + +CALENDAR_RESOURCES_FEED = """ + + https://apps-apis.google.com/a/feeds/calendar/resource/2.0/yourdomain.com + 2008-10-17T15:29:21.064Z + + + + + 1 + + https://apps-apis.google.com/a/feeds/calendar/resource/2.0/yourdomain.com/CR-NYC-14-12-BR + 2008-10-17T15:29:21.064Z + + + + + + + + + + https://apps-apis.google.com/a/feeds/calendar/resource/2.0/yourdomain.com/?start=(Bike)-London-43-Lobby-Bike-1 + 2008-10-17T15:29:21.064Z + + + + + + + + +""" + BLOG_ENTRY = """ tag:blogger.com,1999:blog-blogID.post-postID 2006-08-02T18:44:43.089-07:00 @@ -2836,3 +3016,2382 @@ LabelValue """ + +HEALTH_CCR_NOTICE_PAYLOAD = """ + + + + + Start date + 2007-04-04T07:00:00Z + + + Aortic valve disorders + + 410.10 + ICD9 + 2004 + + + Active + + + +""" + +HEALTH_PROFILE_ENTRY_DIGEST = """ + + https://www.google.com/health/feeds/profile/default/vneCn5qdEIY_digest + 2008-09-29T07:52:17.176Z + + + + + + vneCn5qdEIY + + English + + en + ISO-639-1 + + + V1.0 + + 2008-09-29T07:52:17.176Z + + + Google Health Profile + + + + + + Pregnancy status + + + Not pregnant + + + + + user@google.com + + Patient + + + + + + + Breastfeeding status + + + Not breastfeeding + + + + + user@gmail.com + + Patient + + + + + + + + Hn0FE0IlcY-FMFFgSTxkvA/CONDITION/0 + + + Start date + + 2007-04-04T07:00:00Z + + + Aortic valve disorders + + 410.10 + ICD9 + 2004 + + + + Active + + + + example.com + + Information Provider + + + + + + + + Malaria + + 136.9 + ICD9_Broader + + + 084.6 + ICD9 + + + + ACTIVE + + + + user@gmail.com + + Patient + + + + + + + + + + + + Race + + S15814 + HL7 + + + + White + + + + + user@gmail.com + + Patient + + + + + + + + + + + + + + Allergy + + + A-Fil + + + ACTIVE + + + + user@gmail.com + + Patient + + + + + + + Severe + + + + + + Allergy + + + A.E.R Traveler + + + ACTIVE + + + + user@gmail.com + + Patient + + + + + + + Severe + + + + + + + + + + ACTIVE + + + + user@gmail.com + + Patient + + + + + + A& D + + + + 0 + + + + + + + + + + 0 + + + + To skin + + C38305 + FDA + + 0 + + + + + + + + + + + ACTIVE + + + + user@gmail.com + + Patient + + + + + + A-Fil + + + + 0 + + + + + + + + + + 0 + + + + To skin + + C38305 + FDA + + 0 + + + + + + + + + + + ACTIVE + + + + user@gmail.com + + Patient + + + + + + Lipitor + + + + 0 + + + + + + + + + + 0 + + + + By mouth + + C38288 + FDA + + 0 + + + + + + + + + + + + + + + user@gmail.com + + Patient + + + + + + Chickenpox Vaccine + + 21 + HL7 + + + + + + + + + + + + + + + + + + + + user@gmail.com + + Patient + + + + + + + + Height + + + + 0 + + 70 + + inches + + + + + + + + + + + + user@gmail.com + + Patient + + + + + + + + Weight + + + + 0 + + 2480 + + ounces + + + + + + + + + + + + user@gmail.com + + Patient + + + + + + + + Blood Type + + + + 0 + + O+ + + + + + + + + + + + + + + user@gmail.com + + Patient + + + + + + + + Collection start date + + 2008-09-03 + + + + Acetaldehyde - Blood + + + + 0 + + + + + + + + + + + + Abdominal Ultrasound + + + + + user@gmail.com + + Patient + + + + + + + + Abdominoplasty + + + + + user@gmail.com + + Patient + + + + + + + + + Google Health Profile + + + + + + + + 1984-07-22 + + + Male + + + + + + user@gmail.com + + Patient + + + + + + +""" + +HEALTH_PROFILE_FEED = """ +https://www.google.com/health/feeds/profile/default +2008-09-30T01:07:17.888Z + +Profile Feed + + + + +1 + + https://www.google.com/health/feeds/profile/default/DysasdfARnFAao + 2008-09-29T03:12:50.850Z + 2008-09-29T03:12:50.850Z + + + + + <content type="html"/> + <link rel="http://schemas.google.com/health/data#complete" type="application/atom+xml" href="https://www.google.com/health/feeds/profile/default/-/MEDICATION/%7Bhttp%3A%2F%2Fschemas.google.com%2Fg%2F2005%23kind%7Dhttp%3A%2F%2Fschemas.google.com%2Fhealth%2Fkinds%23profile/%7Bhttp%3A%2F%2Fschemas.google.com%2Fhealth%2Fitem%7DA%26+D"/> + <link rel="self" type="application/atom+xml" href="https://www.google.com/health/feeds/profile/default/DysasdfARnFAao"/> + <link rel="edit" type="application/atom+xml" href="https://www.google.com/health/feeds/profile/default/DysasdfARnFAao"/> + <author> + <name>User Name</name> + <email>user@gmail.com</email> + </author> + <ContinuityOfCareRecord xmlns="urn:astm-org:CCR"> + <CCRDocumentObjectID>hiD9sEigSzdk8nNT0evR4g</CCRDocumentObjectID> + <Language/> + <DateTime> + <Type/> + </DateTime> + <Patient/> + <Body> + <Medications> + <Medication> + <Type/> + <Description/> + <Status> + <Text>ACTIVE</Text> + </Status> + <Source> + <Actor> + <ActorID>user@gmail.com</ActorID> + <ActorRole> + <Text>Patient</Text> + </ActorRole> + </Actor> + </Source> + <Product> + <ProductName> + <Text>A& D</Text> + </ProductName> + <Strength> + <Units/> + <StrengthSequencePosition>0</StrengthSequencePosition> + <VariableStrengthModifier/> + </Strength> + </Product> + <Directions> + <Direction> + <Description/> + <DeliveryMethod/> + <Dose> + <Units/> + <DoseSequencePosition>0</DoseSequencePosition> + <VariableDoseModifier/> + </Dose> + <Route> + <Text>To skin</Text> + <Code> + <Value>C38305</Value> + <CodingSystem>FDA</CodingSystem> + </Code> + <RouteSequencePosition>0</RouteSequencePosition> + <MultipleRouteModifier/> + </Route> + </Direction> + </Directions> + <Refills/> + </Medication> + </Medications> + </Body> + </ContinuityOfCareRecord> +</entry> +<entry> + <id>https://www.google.com/health/feeds/profile/default/7I1WQzZrgp4</id> + <published>2008-09-29T03:27:14.909Z</published> + <updated>2008-09-29T03:27:14.909Z</updated> + <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/health/kinds#profile"/> + <category scheme="http://schemas.google.com/health/item" term="A-Fil"/> + <category term="ALLERGY"/> + <title type="text"/> + <content type="html"/> + <link rel="http://schemas.google.com/health/data#complete" type="application/atom+xml" href="https://www.google.com/health/feeds/profile/default/-/%7Bhttp%3A%2F%2Fschemas.google.com%2Fg%2F2005%23kind%7Dhttp%3A%2F%2Fschemas.google.com%2Fhealth%2Fkinds%23profile/%7Bhttp%3A%2F%2Fschemas.google.com%2Fhealth%2Fitem%7DA-Fil/ALLERGY"/> + <link rel="self" type="application/atom+xml" href="https://www.google.com/health/feeds/profile/default/7I1WQzZrgp4"/> + <link rel="edit" type="application/atom+xml" href="https://www.google.com/health/feeds/profile/default/7I1WQzZrgp4"/> + <author> + <name>User Name</name> + <email>user@gmail.com</email> + </author> + <ContinuityOfCareRecord xmlns="urn:astm-org:CCR"> + <CCRDocumentObjectID>YOyHDxQUiECCPgnsjV8SlQ</CCRDocumentObjectID> + <Language/> + <DateTime> + <Type/> + </DateTime> + <Patient/> + <Body> + <Alerts> + <Alert> + <Type> + <Text>Allergy</Text> + </Type> + <Description> + <Text>A-Fil</Text> + </Description> + <Status> + <Text>ACTIVE</Text> + </Status> + <Source> + <Actor> + <ActorID>user@gmail.com</ActorID> + <ActorRole> + <Text>Patient</Text> + </ActorRole> + </Actor> + </Source> + <Reaction> + <Description/> + <Severity> + <Text>Severe</Text> + </Severity> + </Reaction> + </Alert> + </Alerts> + </Body> + </ContinuityOfCareRecord> +</entry> +<entry> + <id>https://www.google.com/health/feeds/profile/default/Dz9wV83sKFg</id> + <published>2008-09-29T03:12:52.166Z</published> + <updated>2008-09-29T03:12:52.167Z</updated> + <category term="MEDICATION"/> + <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/health/kinds#profile"/> + <category scheme="http://schemas.google.com/health/item" term="A-Fil"/> + <title type="text"/> + <content type="html"/> + <link rel="http://schemas.google.com/health/data#complete" type="application/atom+xml" href="https://www.google.com/health/feeds/profile/default/-/MEDICATION/%7Bhttp%3A%2F%2Fschemas.google.com%2Fg%2F2005%23kind%7Dhttp%3A%2F%2Fschemas.google.com%2Fhealth%2Fkinds%23profile/%7Bhttp%3A%2F%2Fschemas.google.com%2Fhealth%2Fitem%7DA-Fil"/> + <link rel="self" type="application/atom+xml" href="https://www.google.com/health/feeds/profile/default/Dz9wV83sKFg"/> + <link rel="edit" type="application/atom+xml" href="https://www.google.com/health/feeds/profile/default/Dz9wV83sKFg"/> + <author> + <name>User Name</name> + <email>user@gmail.com</email> + </author> + <ContinuityOfCareRecord xmlns="urn:astm-org:CCR"> + <CCRDocumentObjectID>7w.XFEPeuIYN3Rn32pUiUw</CCRDocumentObjectID> + <Language/> + <DateTime> + <Type/> + </DateTime> + <Patient/> + <Body> + <Medications> + <Medication> + <Type/> + <Description/> + <Status> + <Text>ACTIVE</Text> + </Status> + <Source> + <Actor> + <ActorID>user@gmail.com</ActorID> + <ActorRole> + <Text>Patient</Text> + </ActorRole> + </Actor> + </Source> + <Product> + <ProductName> + <Text>A-Fil</Text> + </ProductName> + <Strength> + <Units/> + <StrengthSequencePosition>0</StrengthSequencePosition> + <VariableStrengthModifier/> + </Strength> + </Product> + <Directions> + <Direction> + <Description/> + <DeliveryMethod/> + <Dose> + <Units/> + <DoseSequencePosition>0</DoseSequencePosition> + <VariableDoseModifier/> + </Dose> + <Route> + <Text>To skin</Text> + <Code> + <Value>C38305</Value> + <CodingSystem>FDA</CodingSystem> + </Code> + <RouteSequencePosition>0</RouteSequencePosition> + <MultipleRouteModifier/> + </Route> + </Direction> + </Directions> + <Refills/> + </Medication> + </Medications> + </Body> + </ContinuityOfCareRecord> +</entry> +<entry> + <id>https://www.google.com/health/feeds/profile/default/lzsxVzqZUyw</id> + <published>2008-09-29T03:13:07.496Z</published> + <updated>2008-09-29T03:13:07.497Z</updated> + <category scheme="http://schemas.google.com/health/item" term="A.E.R Traveler"/> + <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/health/kinds#profile"/> + <category term="ALLERGY"/> + <title type="text"/> + <content type="html"/> + <link rel="http://schemas.google.com/health/data#complete" type="application/atom+xml" href="https://www.google.com/health/feeds/profile/default/-/%7Bhttp%3A%2F%2Fschemas.google.com%2Fhealth%2Fitem%7DA.E.R+Traveler/%7Bhttp%3A%2F%2Fschemas.google.com%2Fg%2F2005%23kind%7Dhttp%3A%2F%2Fschemas.google.com%2Fhealth%2Fkinds%23profile/ALLERGY"/> + <link rel="self" type="application/atom+xml" href="https://www.google.com/health/feeds/profile/default/lzsxVzqZUyw"/> + <link rel="edit" type="application/atom+xml" href="https://www.google.com/health/feeds/profile/default/lzsxVzqZUyw"/> + <author> + <name>User Name</name> + <email>user@gmail.com</email> + </author> + <ContinuityOfCareRecord xmlns="urn:astm-org:CCR"> + <CCRDocumentObjectID>5efFB0J2WgEHNUvk2z3A1A</CCRDocumentObjectID> + <Language/> + <DateTime> + <Type/> + </DateTime> + <Patient/> + <Body> + <Alerts> + <Alert> + <Type> + <Text>Allergy</Text> + </Type> + <Description> + <Text>A.E.R Traveler</Text> + </Description> + <Status> + <Text>ACTIVE</Text> + </Status> + <Source> + <Actor> + <ActorID>user@gmail.com</ActorID> + <ActorRole> + <Text>Patient</Text> + </ActorRole> + </Actor> + </Source> + <Reaction> + <Description/> + <Severity> + <Text>Severe</Text> + </Severity> + </Reaction> + </Alert> + </Alerts> + </Body> + </ContinuityOfCareRecord> +</entry> +<entry> + <id>https://www.google.com/health/feeds/profile/default/6PvhfKAXyYw</id> + <published>2008-09-29T03:13:02.123Z</published> + <updated>2008-09-29T03:13:02.124Z</updated> + <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/health/kinds#profile"/> + <category term="PROCEDURE"/> + <category scheme="http://schemas.google.com/health/item" term="Abdominal Ultrasound"/> + <title type="text"/> + <content type="html"/> + <link rel="http://schemas.google.com/health/data#complete" type="application/atom+xml" href="https://www.google.com/health/feeds/profile/default/-/%7Bhttp%3A%2F%2Fschemas.google.com%2Fg%2F2005%23kind%7Dhttp%3A%2F%2Fschemas.google.com%2Fhealth%2Fkinds%23profile/PROCEDURE/%7Bhttp%3A%2F%2Fschemas.google.com%2Fhealth%2Fitem%7DAbdominal+Ultrasound"/> + <link rel="self" type="application/atom+xml" href="https://www.google.com/health/feeds/profile/default/6PvhfKAXyYw"/> + <link rel="edit" type="application/atom+xml" href="https://www.google.com/health/feeds/profile/default/6PvhfKAXyYw"/> + <author> + <name>User Name</name> + <email>user@gmail.com</email> + </author> + <ContinuityOfCareRecord xmlns="urn:astm-org:CCR"> + <CCRDocumentObjectID>W3Wbvx_QHwG5pxVchpuF1A</CCRDocumentObjectID> + <Language/> + <DateTime> + <Type/> + </DateTime> + <Patient/> + <Body> + <Procedures> + <Procedure> + <Type/> + <Description> + <Text>Abdominal Ultrasound</Text> + </Description> + <Status/> + <Source> + <Actor> + <ActorID>user@gmail.com</ActorID> + <ActorRole> + <Text>Patient</Text> + </ActorRole> + </Actor> + </Source> + </Procedure> + </Procedures> + </Body> + </ContinuityOfCareRecord> +</entry> +<entry> + <id>https://www.google.com/health/feeds/profile/default/r2zGPGewCeU</id> + <published>2008-09-29T03:13:03.434Z</published> + <updated>2008-09-29T03:13:03.435Z</updated> + <category scheme="http://schemas.google.com/health/item" term="Abdominoplasty"/> + <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/health/kinds#profile"/> + <category term="PROCEDURE"/> + <title type="text"/> + <content type="html"/> + <link rel="http://schemas.google.com/health/data#complete" type="application/atom+xml" href="https://www.google.com/health/feeds/profile/default/-/%7Bhttp%3A%2F%2Fschemas.google.com%2Fhealth%2Fitem%7DAbdominoplasty/%7Bhttp%3A%2F%2Fschemas.google.com%2Fg%2F2005%23kind%7Dhttp%3A%2F%2Fschemas.google.com%2Fhealth%2Fkinds%23profile/PROCEDURE"/> + <link rel="self" type="application/atom+xml" href="https://www.google.com/health/feeds/profile/default/r2zGPGewCeU"/> + <link rel="edit" type="application/atom+xml" href="https://www.google.com/health/feeds/profile/default/r2zGPGewCeU"/> + <author> + <name>User Name</name> + <email>user@gmail.com</email> + </author> + <ContinuityOfCareRecord xmlns="urn:astm-org:CCR"> + <CCRDocumentObjectID>OUKgj5X0KMnbkC5sDL.yHA</CCRDocumentObjectID> + <Language/> + <DateTime> + <Type/> + </DateTime> + <Patient/> + <Body> + <Procedures> + <Procedure> + <Type/> + <Description> + <Text>Abdominoplasty</Text> + </Description> + <Status/> + <Source> + <Actor> + <ActorID>user@gmail.com</ActorID> + <ActorRole> + <Text>Patient</Text> + </ActorRole> + </Actor> + </Source> + </Procedure> + </Procedures> + </Body> + </ContinuityOfCareRecord> +</entry> +<entry> + <id>https://www.google.com/health/feeds/profile/default/_cCCbQ0O3ug</id> + <published>2008-09-29T03:13:29.041Z</published> + <updated>2008-09-29T03:13:29.042Z</updated> + <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/health/kinds#profile"/> + <category scheme="http://schemas.google.com/health/item" term="Acetaldehyde - Blood"/> + <category term="LABTEST"/> + <title type="text"/> + <content type="html"/> + <link rel="http://schemas.google.com/health/data#complete" type="application/atom+xml" href="https://www.google.com/health/feeds/profile/default/-/%7Bhttp%3A%2F%2Fschemas.google.com%2Fg%2F2005%23kind%7Dhttp%3A%2F%2Fschemas.google.com%2Fhealth%2Fkinds%23profile/%7Bhttp%3A%2F%2Fschemas.google.com%2Fhealth%2Fitem%7DAcetaldehyde+-+Blood/LABTEST"/> + <link rel="self" type="application/atom+xml" href="https://www.google.com/health/feeds/profile/default/_cCCbQ0O3ug"/> + <link rel="edit" type="application/atom+xml" href="https://www.google.com/health/feeds/profile/default/_cCCbQ0O3ug"/> + <author> + <name>User Name</name> + <email>user@gmail.com</email> + </author> + <ContinuityOfCareRecord xmlns="urn:astm-org:CCR"> + <CCRDocumentObjectID>YWtomFb8aG.DueZ7z7fyug</CCRDocumentObjectID> + <Language/> + <DateTime> + <Type/> + </DateTime> + <Patient/> + <Body> + <Results> + <Result> + <Type/> + <Description/> + <Status/> + <Source> + <Actor> + <ActorID>user@gmail.com</ActorID> + <ActorRole> + <Text>Patient</Text> + </ActorRole> + </Actor> + </Source> + <Substance/> + <Test> + <DateTime> + <Type> + <Text>Collection start date</Text> + </Type> + <ExactDateTime>2008-09-03</ExactDateTime> + </DateTime> + <Type/> + <Description> + <Text>Acetaldehyde - Blood</Text> + </Description> + <Status/> + <TestResult> + <ResultSequencePosition>0</ResultSequencePosition> + <VariableResultModifier/> + <Units/> + </TestResult> + <ConfidenceValue/> + </Test> + </Result> + </Results> + </Body> + </ContinuityOfCareRecord> +</entry> +<entry> + <id>https://www.google.com/health/feeds/profile/default/BdyA3iJZyCc</id> + <published>2008-09-29T03:00:45.915Z</published> + <updated>2008-09-29T03:00:45.915Z</updated> + <category scheme="http://schemas.google.com/health/item" term="Aortic valve disorders"/> + <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/health/kinds#profile"/> + <category term="CONDITION"/> + <title type="text">Aortic valve disorders + + + + + example.com + example.com + + + h1ljpoeKJ85li.1FHsG9Gw + + + + Hn0FE0IlcY-FMFFgSTxkvA/CONDITION/0 + + + Start date + + 2007-04-04T07:00:00Z + + + Aortic valve disorders + + 410.10 + ICD9 + 2004 + + + + Active + + + + example.com + + Information Provider + + + + + + + + + + https://www.google.com/health/feeds/profile/default/Cl.aMWIH5VA + 2008-09-29T03:13:34.996Z + 2008-09-29T03:13:34.997Z + + + + + <content type="html"/> + <link rel="http://schemas.google.com/health/data#complete" type="application/atom+xml" href="https://www.google.com/health/feeds/profile/default/-/%7Bhttp%3A%2F%2Fschemas.google.com%2Fg%2F2005%23kind%7Dhttp%3A%2F%2Fschemas.google.com%2Fhealth%2Fkinds%23profile/%7Bhttp%3A%2F%2Fschemas.google.com%2Fhealth%2Fitem%7DChickenpox+Vaccine/IMMUNIZATION"/> + <link rel="self" type="application/atom+xml" href="https://www.google.com/health/feeds/profile/default/Cl.aMWIH5VA"/> + <link rel="edit" type="application/atom+xml" href="https://www.google.com/health/feeds/profile/default/Cl.aMWIH5VA"/> + <author> + <name>User Name</name> + <email>user@gmail.com</email> + </author> + <ContinuityOfCareRecord xmlns="urn:astm-org:CCR"> + <CCRDocumentObjectID>KlhUqfftgELIitpKbqYalw</CCRDocumentObjectID> + <Language/> + <DateTime> + <Type/> + </DateTime> + <Patient/> + <Body> + <Immunizations> + <Immunization> + <Type/> + <Description/> + <Status/> + <Source> + <Actor> + <ActorID>user@gmail.com</ActorID> + <ActorRole> + <Text>Patient</Text> + </ActorRole> + </Actor> + </Source> + <Product> + <ProductName> + <Text>Chickenpox Vaccine</Text> + <Code> + <Value>21</Value> + <CodingSystem>HL7</CodingSystem> + </Code> + </ProductName> + </Product> + <Directions> + <Direction> + <Description/> + <DeliveryMethod/> + </Direction> + </Directions> + <Refills/> + </Immunization> + </Immunizations> + </Body> + </ContinuityOfCareRecord> +</entry> +<entry> + <id>https://www.google.com/health/feeds/profile/default/l0a7.FlX3_0</id> + <published>2008-09-29T03:14:47.461Z</published> + <updated>2008-09-29T03:14:47.461Z</updated> + <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/health/kinds#profile"/> + <category term="DEMOGRAPHICS"/> + <category scheme="http://schemas.google.com/health/item" term="Demographics"/> + <title type="text">Demographics + + + + + + User Name + user@gmail.com + + + U5GDAVOxFbexQw3iyvqPYg + + + + + + + + + + + + + + + + 1984-07-22 + + + Male + + + + + + user@gmail.com + + Patient + + + + + + + + + https://www.google.com/health/feeds/profile/default/oIBDdgwFLyo + 2008-09-29T03:14:47.690Z + 2008-09-29T03:14:47.691Z + + + + FunctionalStatus + + + + + + User Name + user@gmail.com + + + W.EJcnhxb7W5M4eR4Tr1YA + + + + + + + + + + Pregnancy status + + + Not pregnant + + + + + user@gmail.com + + Patient + + + + + + + Breastfeeding status + + + Not breastfeeding + + + + + user@gmail.com + + Patient + + + + + + + + + + https://www.google.com/health/feeds/profile/default/wwljIlXuTVg + 2008-09-29T03:26:10.080Z + 2008-09-29T03:26:10.081Z + + + + + <content type="html"/> + <link rel="http://schemas.google.com/health/data#complete" type="application/atom+xml" href="https://www.google.com/health/feeds/profile/default/-/MEDICATION/%7Bhttp%3A%2F%2Fschemas.google.com%2Fg%2F2005%23kind%7Dhttp%3A%2F%2Fschemas.google.com%2Fhealth%2Fkinds%23profile/%7Bhttp%3A%2F%2Fschemas.google.com%2Fhealth%2Fitem%7DLipitor"/> + <link rel="self" type="application/atom+xml" href="https://www.google.com/health/feeds/profile/default/wwljIlXuTVg"/> + <link rel="edit" type="application/atom+xml" href="https://www.google.com/health/feeds/profile/default/wwljIlXuTVg"/> + <author> + <name>User Name</name> + <email>user@gmail.com</email> + </author> + <ContinuityOfCareRecord xmlns="urn:astm-org:CCR"> + <CCRDocumentObjectID>OrpghzvvbG_YaO5koqT2ug</CCRDocumentObjectID> + <Language/> + <DateTime> + <Type/> + </DateTime> + <Patient/> + <Body> + <Medications> + <Medication> + <Type/> + <Description/> + <Status> + <Text>ACTIVE</Text> + </Status> + <Source> + <Actor> + <ActorID>user@gmail.com</ActorID> + <ActorRole> + <Text>Patient</Text> + </ActorRole> + </Actor> + </Source> + <Product> + <ProductName> + <Text>Lipitor</Text> + </ProductName> + <Strength> + <Units/> + <StrengthSequencePosition>0</StrengthSequencePosition> + <VariableStrengthModifier/> + </Strength> + </Product> + <Directions> + <Direction> + <Description/> + <DeliveryMethod/> + <Dose> + <Units/> + <DoseSequencePosition>0</DoseSequencePosition> + <VariableDoseModifier/> + </Dose> + <Route> + <Text>By mouth</Text> + <Code> + <Value>C38288</Value> + <CodingSystem>FDA</CodingSystem> + </Code> + <RouteSequencePosition>0</RouteSequencePosition> + <MultipleRouteModifier/> + </Route> + </Direction> + </Directions> + <Refills/> + </Medication> + </Medications> + </Body> + </ContinuityOfCareRecord> +</entry> +<entry> + <id>https://www.google.com/health/feeds/profile/default/dd09TR12SiY</id> + <published>2008-09-29T07:52:17.175Z</published> + <updated>2008-09-29T07:52:17.176Z</updated> + <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/health/kinds#profile"/> + <category scheme="http://schemas.google.com/health/item" term="Malaria"/> + <category term="CONDITION"/> + <title type="text"/> + <content type="html"/> + <link rel="http://schemas.google.com/health/data#complete" type="application/atom+xml" href="https://www.google.com/health/feeds/profile/default/-/%7Bhttp%3A%2F%2Fschemas.google.com%2Fg%2F2005%23kind%7Dhttp%3A%2F%2Fschemas.google.com%2Fhealth%2Fkinds%23profile/%7Bhttp%3A%2F%2Fschemas.google.com%2Fhealth%2Fitem%7DMalaria/CONDITION"/> + <link rel="self" type="application/atom+xml" href="https://www.google.com/health/feeds/profile/default/dd09TR12SiY"/> + <link rel="edit" type="application/atom+xml" href="https://www.google.com/health/feeds/profile/default/dd09TR12SiY"/> + <author> + <name>User Name</name> + <email>user@gmail.com</email> + </author> + <ContinuityOfCareRecord xmlns="urn:astm-org:CCR"> + <CCRDocumentObjectID>XF99N6X4lpy.jfPUPLMMSQ</CCRDocumentObjectID> + <Language/> + <DateTime> + <Type/> + </DateTime> + <Patient/> + <Body> + <Problems> + <Problem> + <Type/> + <Description> + <Text>Malaria</Text> + <Code> + <Value>136.9</Value> + <CodingSystem>ICD9_Broader</CodingSystem> + </Code> + <Code> + <Value>084.6</Value> + <CodingSystem>ICD9</CodingSystem> + </Code> + </Description> + <Status> + <Text>ACTIVE</Text> + </Status> + <Source> + <Actor> + <ActorID>user@gmail.com</ActorID> + <ActorRole> + <Text>Patient</Text> + </ActorRole> + </Actor> + </Source> + <HealthStatus> + <Description/> + </HealthStatus> + </Problem> + </Problems> + </Body> + </ContinuityOfCareRecord> +</entry> +<entry> + <id>https://www.google.com/health/feeds/profile/default/aS0Cf964DPs</id> + <published>2008-09-29T03:14:47.463Z</published> + <updated>2008-09-29T03:14:47.463Z</updated> + <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/health/kinds#profile"/> + <category term="DEMOGRAPHICS"/> + <category scheme="http://schemas.google.com/health/item" term="SocialHistory (Drinking, Smoking)"/> + <title type="text">SocialHistory (Drinking, Smoking) + + + + + + User Name + user@gmail.com + + + kXylGU5YXLBzriv61xPGZQ + + + + + + + + + + Race + + S15814 + HL7 + + + + White + + + + + user@gmail.com + + Patient + + + + + + + + + + + + + + + https://www.google.com/health/feeds/profile/default/s5lII5xfj_g + 2008-09-29T03:14:47.544Z + 2008-09-29T03:14:47.545Z + + + + VitalSigns + + + + + + User Name + user@gmail.com + + + FTTIiY0TVVj35kZqFFjPjQ + + + + + + + + + + + + + + user@gmail.com + + Patient + + + + + + + + Height + + + + 0 + + 70 + + inches + + + + + + + + + + + + user@gmail.com + + Patient + + + + + + + + Weight + + + + 0 + + 2480 + + ounces + + + + + + + + + + + + user@gmail.com + + Patient + + + + + + + + Blood Type + + + + 0 + + O+ + + + + + + + + + +""" + +HEALTH_PROFILE_LIST_ENTRY = """ + + https://www.google.com/health/feeds/profile/list/vndCn5sdfwdEIY + 1970-01-01T00:00:00.000Z + profile name + vndCn5sdfwdEIY + + + + user@gmail.com + +""" + +BOOK_ENTRY = """"""\ + """"""\ + """http://www.google.com/books/feeds/volumes/b7GZr5Btp30C"""\ + """2009-04-24T23:35:16.000Z"""\ + """"""\ + """A theory of justice"""\ + """"""\ + """"""\ + """"""\ + """"""\ + """"""\ + """"""\ + """"""\ + """"""\ + """"""\ + """John Rawls"""\ + """1999"""\ + """p Since it appeared in 1971, John Rawls's i A Theory of Justice /i has become a classic. The author has now revised the original edition to clear up a number of difficulties he and others have found in the original book. /p p Rawls aims to express an essential part of the common core of the democratic tradition--justice as fairness--and to provide an alternative to utilitarianism, which had dominated the Anglo-Saxon tradition of political thought since the nineteenth century. Rawls substitutes the ideal of the social contract as a more satisfactory account of the basic rights and liberties of citizens as free and equal persons. "Each person," writes Rawls, "possesses an inviolability founded on justice that even the welfare of society as a whole cannot override." Advancing the ideas of Rousseau, Kant, Emerson, and Lincoln, Rawls's theory is as powerful today as it was when first published. /p"""\ + """538 pages"""\ + """b7GZr5Btp30C"""\ + """ISBN:0198250541"""\ + """ISBN:9780198250548"""\ + """en"""\ + """Oxford University Press"""\ + """A theory of justice"""\ +"""""" + +BOOK_FEED = """"""\ + """"""\ + """http://www.google.com/books/feeds/volumes"""\ + """2009-04-24T23:39:47.000Z"""\ + """"""\ + """Search results for 9780198250548"""\ + """"""\ + """"""\ + """"""\ + """"""\ + """Google Books Search"""\ + """http://www.google.com"""\ + """"""\ + """Google Book Search data API"""\ + """1"""\ + """1"""\ + """20"""\ + """"""\ + """http://www.google.com/books/feeds/volumes/b7GZr5Btp30C"""\ + """2009-04-24T23:39:47.000Z"""\ + """"""\ + """A theory of justice"""\ + """"""\ + """"""\ + """"""\ + """"""\ + """"""\ + """"""\ + """"""\ + """"""\ + """"""\ + """John Rawls"""\ + """1999"""\ + """... 9780198250548 ..."""\ + """538 pages"""\ + """b7GZr5Btp30C"""\ + """ISBN:0198250541"""\ + """ISBN:9780198250548"""\ + """Law"""\ + """A theory of justice"""\ + """"""\ +"""""" + +MAP_FEED = """ + + http://maps.google.com/maps/feeds/maps/208825816854482607313 + 2009-07-27T18:48:29.631Z + + My maps + + + + + + + Roman + + 1 + 1 + 1 + + http://maps.google.com/maps/feeds/maps/208825816854482607313/00046fb45f88fa910bcea + 2009-07-27T18:46:34.451Z + 2009-07-27T18:48:29.631Z + 2009-07-27T18:48:29.631Z + + yes + + + Untitled + + + + + + + Roman + + + +""" + +MAP_ENTRY = """ + + http://maps.google.com/maps/feeds/maps/208825816854482607313/00046fb45f88fa910bcea + 2009-07-27T18:46:34.451Z + 2009-07-27T18:48:29.631Z + 2009-07-27T18:48:29.631Z + + yes + + + Untitled + + + + + + + Roman + + +""" + +MAP_FEATURE_FEED = """ + + http://maps.google.com/maps/feeds/features/208825816854482607313/00046fb45f88fa910bcea + 2009-07-27T18:48:29.631Z + + Untitled + + + + + 4 + 1 + 4 + + http://maps.google.com/maps/feeds/features/208825816854482607313/00046fb45f88fa910bcea/00046fb4632573b19e0b7 + 2009-07-27T18:47:35.037Z + 2009-07-27T18:47:35.037Z + 2009-07-27T18:47:35.037Z + + Some feature title + + + Some feature title + Some feature content
]]> + + + -113.818359,41.442726,0.0 + + + + + + + Roman + + + Roman + + + + http://maps.google.com/maps/feeds/features/208825816854482607313/00046fb45f88fa910bcea/00046fb46325e839a11e6 + 2009-07-27T18:47:35.067Z + 2009-07-27T18:48:22.184Z + 2009-07-27T18:48:22.184Z + + A cool poly! + + + A cool poly! + And a description]]> + + + + + 1 + -109.775391,47.457809,0.0 -99.755859,51.508742,0.0 -92.900391,48.04871,0.0 -92.8125,44.339565,0.0 -95.273437,44.402392,0.0 -97.207031,46.619261,0.0 -100.898437,46.073231,0.0 -102.480469,43.068888,0.0 -110.742187,45.274886,0.0 -109.775391,47.457809,0.0 + + + + + + + + + Roman + + + Roman + + + + http://maps.google.com/maps/feeds/features/208825816854482607313/00046fb45f88fa910bcea/00046fb465f5002e56b7a + 2009-07-27T18:48:22.194Z + 2009-07-27T18:48:22.194Z + 2009-07-27T18:48:22.194Z + + New Mexico + + + New Mexico + Word.]]> + + + 1 + -110.039062,37.788081,0.0 -103.183594,37.926868,0.0 -103.183594,32.472695,0.0 -108.896484,32.026706,0.0 -109.863281,31.203405,0.0 -110.039062,37.788081,0.0 + + + + + + + Roman + + + Roman + + + +""" + +MAP_FEATURE_ENTRY = """ + + http://maps.google.com/maps/feeds/features/208825816854482607313/00046fb45f88fa910bcea/00046fb4632573b19e0b7 + 2009-07-27T18:47:35.037Z + 2009-07-27T18:47:35.037Z + 2009-07-27T18:47:35.037Z + + Some feature title + + + Some feature title + Some feature content]]> + + + -113.818359,41.442726,0.0 + + + + + + + Roman + + + Roman + + +""" + +MAP_FEATURE_KML = """ + Some feature title + Some feature content]]> + + + -113.818359,41.442726,0.0 + + +""" + +SITES_LISTPAGE_ENTRY = ''' + + http:///sites.google.com/feeds/content/site/gdatatestsite/1712987567114738703 + 2009-06-16T00:37:37.393Z + + ListPagesTitle + +
+ +
stuff go here
asdf
+
sdf
+
+
+
+
+
+
+
+ + + + Test User + test@gmail.com + + + + + + + + + + + +
''' + +SITES_COMMENT_ENTRY = ''' + + http://sites.google.com/feeds/content/site/gdatatestsite/abc123 + 2009-06-15T18:40:22.407Z + + + <content type="xhtml"> + <div xmlns="http://www.w3.org/1999/xhtml">first comment</div> + </content> + <link rel="http://schemas.google.com/sites/2008#parent" type="application/atom+xml" href="http://sites.google.com/feeds/content/site/gdatatestsite/abc123parent"/> + <link rel="self" type="application/atom+xml" href="http://sites.google.com/feeds/content/site/gdatatestsite/abc123"/> + <link rel="edit" type="application/atom+xml" href="http://sites.google.com/feeds/content/site/gdatatestsite/abc123"/> + <author> + <name>Test User</name> + <email>test@gmail.com</email> + </author> + <thr:in-reply-to xmlns:thr="http://purl.org/syndication/thread/1.0" href="http://sites.google.com/site/gdatatestsite/annoucment/testpost" ref="http://sites.google.com/feeds/content/site/gdatatestsite/abc123" source="http://sites.google.com/feeds/content/site/gdatatestsite" type="text/html"/> +</entry>''' + +SITES_LISTITEM_ENTRY = '''<?xml version="1.0" encoding="UTF-8"?> +<entry xmlns="http://www.w3.org/2005/Atom"> + <id>http://sites.google.com/feeds/content/site/gdatatestsite/abc123</id> + <updated>2009-06-16T00:34:55.633Z</updated> + <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/sites/2008#listitem"/> + <title type="text"/> + <link rel="http://schemas.google.com/sites/2008#parent" type="application/atom+xml" href="http://sites.google.com/feeds/content/site/gdatatestsite/abc123def"/> + <link rel="self" type="application/atom+xml" href="http://sites.google.com/feeds/content/site/gdatatestsite/abc123"/> + <link rel="edit" type="application/atom+xml" href="http://sites.google.com/feeds/content/site/gdatatestsite/abc123"/> + <author> + <name>Test User</name> + <email>test@gmail.com</email> + </author> + <gs:field xmlns:gs="http://schemas.google.com/spreadsheets/2006" index="A" name="Owner">test value</gs:field> + <gs:field xmlns:gs="http://schemas.google.com/spreadsheets/2006" index="B" name="Description">test</gs:field> + <gs:field xmlns:gs="http://schemas.google.com/spreadsheets/2006" index="C" name="Resolution">90</gs:field> + <gs:field xmlns:gs="http://schemas.google.com/spreadsheets/2006" index="D" name="Complete"/> + <gs:field xmlns:gs="http://schemas.google.com/spreadsheets/2006" index="E" name="MyCo">2009-05-31</gs:field> +</entry>''' + +SITES_CONTENT_FEED = '''<?xml version="1.0" encoding="UTF-8"?> +<feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" +xmlns:sites="http://schemas.google.com/sites/2008" xmlns:gs="http://schemas.google.com/spreadsheets/2006" +xmlns:dc="http://purl.org/dc/terms" xmlns:batch="http://schemas.google.com/gdata/batch" +xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0"> +<id>http://sites.google.com/feeds/content/site/gdatatestsite</id> +<updated>2009-06-15T21:35:43.282Z</updated> +<link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://sites.google.com/feeds/content/site/gdatatestsite"/> +<link rel="http://schemas.google.com/g/2005#post" type="application/atom+xml" href="http://sites.google.com/feeds/content/site/gdatatestsite"/> +<link rel="self" type="application/atom+xml" href="http://sites.google.com/feeds/content/site/gdatatestsite"/> +<generator version="1" uri="http://sites.google.com">Google Sites</generator> +<openSearch:startIndex>1</openSearch:startIndex> +<entry> + <id>http:///sites.google.com/feeds/content/site/gdatatestsite/1712987567114738703</id> + <updated>2009-06-16T00:37:37.393Z</updated> + <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/sites/2008#listpage"/> + <title type="text">ListPagesTitle + +
+ +
stuff go here
asdf
+
sdf
+
+
+
+
+
+
+
+ + + + + + Test User + test@gmail.com + + + + + + + + + + + 2 + + home + +
+ + http://sites.google.com/feeds/content/site/gdatatestsite/abc123 + 2009-06-17T00:40:37.082Z + + filecabinet + +
+ +
sdf
+
+
+
+ + + + + + Test User + test@gmail.com + + +
+ + http://sites.google.com/feeds/content/site/gdatatestsite/abc123 + 2009-06-16T00:34:55.633Z + + + <link rel="http://schemas.google.com/sites/2008#parent" type="application/atom+xml" href="http://sites.google.com/feeds/content/site/gdatatestsite/abc123def"/> + <link rel="self" type="application/atom+xml" href="http://sites.google.com/feeds/content/site/gdatatestsite/abc123"/> + <link rel="edit" type="application/atom+xml" href="http://sites.google.com/feeds/content/site/gdatatestsite/abc123"/> + <link rel="http://schemas.google.com/sites/2008#revision" type="application/atom+xml" href="http:///sites.google.com/feeds/content/site/gdatatestsite/abc123"/> + <author> + <name>Test User</name> + <email>test@gmail.com</email> + </author> + <gs:field xmlns:gs="http://schemas.google.com/spreadsheets/2006" index="A" name="Owner">test value</gs:field> + <gs:field xmlns:gs="http://schemas.google.com/spreadsheets/2006" index="B" name="Description">test</gs:field> + <gs:field xmlns:gs="http://schemas.google.com/spreadsheets/2006" index="C" name="Resolution">90</gs:field> + <gs:field xmlns:gs="http://schemas.google.com/spreadsheets/2006" index="D" name="Complete"/> + <gs:field xmlns:gs="http://schemas.google.com/spreadsheets/2006" index="E" name="MyCo">2009-05-31</gs:field> +</entry> +<entry> + <id>http://sites.google.com/feeds/content/site/gdatatestsite/abc123</id> + <updated>2009-06-15T18:40:32.922Z</updated> + <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/sites/2008#attachment"/> + <title type="text">testFile.ods + + + + + + + Test User + test@gmail.com + + + something else + + + http://sites.google.com/feeds/content/site/gdatatestsite/abc123 + 2009-06-15T18:40:22.407Z + + + <content type="xhtml"> + <div xmlns="http://www.w3.org/1999/xhtml">first comment</div> + </content> + <link rel="http://schemas.google.com/sites/2008#parent" type="application/atom+xml" href="http://sites.google.com/feeds/content/site/gdatatestsite/abc123"/> + <link rel="self" type="application/atom+xml" href="http://sites.google.com/feeds/content/site/gdatatestsite/abc123"/> + <link rel="edit" type="application/atom+xml" href="http://sites.google.com/feeds/content/site/gdatatestsite/abc123"/> + <link rel="http://schemas.google.com/sites/2008#revision" type="application/atom+xml" href="http:///sites.google.com/feeds/content/site/gdatatestsite/abc123"/> + <author> + <name>Test User</name> + <email>test@gmail.com</email> + </author> + <thr:in-reply-to xmlns:thr="http://purl.org/syndication/thread/1.0" href="http://sites.google.com/site/gdatatestsite/annoucment/testpost" ref="http://sites.google.com/feeds/content/site/gdatatestsite/abc123" source="http://sites.google.com/feeds/content/site/gdatatestsite" type="text/html"/> +</entry> +<entry> + <id>http://sites.google.com/feeds/content/site/gdatatestsite/abc123</id> + <updated>2009-06-15T18:40:16.388Z</updated> + <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/sites/2008#announcement"/> + <title type="text">TestPost + +
+ +
content goes here
+
+
+
+ + + + + + Test User + test@gmail.com + +
+ + http://sites.google.com/feeds/content/site/gdatatestsite/abc123 + 2009-06-12T23:37:59.417Z + + Home + +
+ +
Some Content goes here
+
+
+
+ +
+
+
+
+
+
+ + + + + Test User + test@gmail.com + +
+ + http://sites.google.com/feeds/content/site/gdatatestsite/2639323850129333500 + 2009-06-12T23:32:09.191Z + + annoucment + +
+
+
+ + + + + Test User + test@gmail.com + + +
+''' + +SITES_ACTIVITY_FEED = ''' + +http://sites.google.com/feeds/activity/site/siteName +2009-08-19T05:46:01.503Z +Activity + + + +Google Sites +1 + +http://sites.google.com/feeds/activity/site/siteName/197441951793148343 +2009-08-17T00:08:19.387Z + +NewWebpage3 + +
User deleted NewWebpage3 +
+
+ + + + + User + user@gmail.com + +
+ +http://sites.google.com/feeds/activity/site/siteName/7299542210274956360 +2009-08-17T00:08:03.711Z + +NewWebpage3 + +
User edited NewWebpage3 +
+
+ + + + + User + user@gmail.com + +
+
''' + +SITES_REVISION_FEED = ''' + +http://sites.google.com/feeds/revision/site/siteName/2947510322163358574 +2009-08-19T06:20:18.151Z +Revisions + + +Google Sites +1 + +http://sites.google.com/feeds/revision/site/siteName/2947510322163358574/1 +2009-08-19T04:33:14.856Z + + +<content type="xhtml"> + <div xmlns="http://www.w3.org/1999/xhtml"> + <table cellspacing="0" class="sites-layout-name-one-column sites-layout-hbox"> + <tbody> + <tr> + <td class="sites-layout-tile sites-tile-name-content-1">testcomment</td> + </tr> + </tbody> + </table> +</div> +</content> +<link rel="http://schemas.google.com/sites/2008#parent" type="application/atom+xml" href="http://sites.google.com/feeds/content/site/siteName/54395424125706119"/> +<link rel="alternate" type="text" href="http://sites.google.com/site/system/app/pages/admin/compare?wuid=wuid%3Agx%3A28e7a9057c581b6e&rev1=1"/> +<link rel="self" type="application/atom+xml" href="http://sites.google.com/feeds/revision/site/siteName/2947510322163358574/1"/> +<author> + <name>User</name> + <email>user@gmail.com</email> +</author> +<thr:in-reply-to href="http://sites.google.com/site/siteName/code/js" ref="http://sites.google.com/feeds/content/site/siteName/54395424125706119" source="http://sites.google.com/feeds/content/google.com/siteName" type="text/html;charset=UTF-8"/> +<sites:revision>1</sites:revision> +</entry> +</feed>''' + +SITES_SITE_FEED = ''' +<feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:gAcl="http://schemas.google.com/acl/2007" xmlns:sites="http://schemas.google.com/sites/2008" xmlns:gs="http://schemas.google.com/spreadsheets/2006" xmlns:dc="http://purl.org/dc/terms" xmlns:batch="http://schemas.google.com/gdata/batch" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0"> +<id>https://sites.google.com/feeds/site/example.com</id> +<updated>2009-12-09T01:05:54.631Z</updated> +<title>Site + + + +Google Sites +1 + +https://sites.google.com/feeds/site/example.com/new-test-site +2009-12-02T22:55:31.040Z +2009-12-02T22:55:31.040Z +New Test Site +A new site to hold memories + + + + + +new-test-site +iceberg + + +https://sites.google.com/feeds/site/example.com/newautosite2 +2009-12-05T00:28:01.077Z +2009-12-05T00:28:01.077Z +newAutoSite3 +A new site to hold memories2 + + + + +newautosite2 +default + +''' + +SITES_ACL_FEED = ''' + +https://sites.google.comsites.google.com/feeds/acl/site/example.com/new-test-site +2009-12-09T01:24:59.080Z + +Acl + + + +Google Sites +1 + + https://sites.google.com/feeds/acl/site/google.com/new-test-site/user%3Auser%40example.com + 2009-12-09T01:24:59.080Z + 2009-12-09T01:24:59.080Z + + + + + + +''' + +ANALYTICS_ACCOUNT_FEED_old = ''' + +http://www.google.com/analytics/feeds/accounts/abc@test.com +2009-06-25T03:55:22.000-07:00 +Profile list for abc@test.com + + +Google Analytics + +Google Analytics +12 +1 +12 + +http://www.google.com/analytics/feeds/accounts/ga:1174 +2009-06-25T03:55:22.000-07:00 +www.googlestore.com + +ga:1174 + + + + + + + +''' + +ANALYTICS_ACCOUNT_FEED = ''' + + http://www.google.com/analytics/feeds/accounts/api.nickm@google.com + 2009-10-14T09:14:25.000-07:00 + Profile list for abc@test.com + + + Google Analytics + + Google Analytics + 37 + 1 + 37 + + ga:operatingSystem==iPhone + + + http://www.google.com/analytics/feeds/accounts/ga:1174 + 2009-10-14T09:14:25.000-07:00 + www.googlestore.com + + + + + + + + + + + + + + + + + + + + + + ga:1174 + +''' + +ANALYTICS_DATA_FEED = ''' + + http://www.google.com/analytics/feeds/data?ids=ga:1174&dimensions=ga:medium,ga:source&metrics=ga:bounces,ga:visits&filters=ga:medium%3D%3Dreferral&start-date=2008-10-01&end-date=2008-10-31 + 2008-10-31T16:59:59.999-07:00 + Google Analytics Data for Profile 1174 + + + + Google Analytics + + Google Analytics + 6451 + 1 + 2 + 2008-10-01 + 2008-10-31 + + ga:operatingSystem==iPhone + + + + + + + ga:1174 + www.googlestore.com + + + + + + http://www.google.com/analytics/feeds/data?ids=ga:1174&ga:medium=referral&ga:source=blogger.com&filters=ga:medium%3D%3Dreferral&start-date=2008-10-01&end-date=2008-10-31 + 2008-10-30T17:00:00.001-07:00 + ga:source=blogger.com | ga:medium=referral + + + + + + +''' diff -Nru python-gdata-1.2.4/src/gdata/tlslite/utils/cryptomath.py python-gdata-2.0.8/src/gdata/tlslite/utils/cryptomath.py --- python-gdata-1.2.4/src/gdata/tlslite/utils/cryptomath.py 2008-12-02 02:35:26.000000000 +0000 +++ python-gdata-2.0.8/src/gdata/tlslite/utils/cryptomath.py 2010-02-26 22:42:36.000000000 +0000 @@ -3,10 +3,14 @@ This module has basic math/crypto code.""" import os +import sys import math import base64 import binascii -import sha +if sys.version_info[:2] <= (2, 4): + from sha import sha as sha1 +else: + from hashlib import sha1 from compat import * @@ -195,7 +199,7 @@ return int(math.ceil(bits / 8.0)) def hashAndBase64(s): - return stringToBase64(sha.sha(s).digest()) + return stringToBase64(sha1(s).digest()) def getBase64Nonce(numChars=22): #defaults to an 132 bit nonce bytes = getRandomBytes(numChars) diff -Nru python-gdata-1.2.4/src/gdata/tlslite/utils/RSAKey.py python-gdata-2.0.8/src/gdata/tlslite/utils/RSAKey.py --- python-gdata-1.2.4/src/gdata/tlslite/utils/RSAKey.py 2008-12-02 02:35:20.000000000 +0000 +++ python-gdata-2.0.8/src/gdata/tlslite/utils/RSAKey.py 2010-01-28 22:58:57.000000000 +0000 @@ -73,7 +73,7 @@ """ if not isinstance(bytes, type("")): bytes = bytesToString(bytes) - hashBytes = stringToBytes(sha.sha(bytes).digest()) + hashBytes = stringToBytes(sha1(bytes).digest()) prefixedHashBytes = self._addPKCS1SHA1Prefix(hashBytes) sigBytes = self.sign(prefixedHashBytes) return sigBytes @@ -94,7 +94,7 @@ """ if not isinstance(bytes, type("")): bytes = bytesToString(bytes) - hashBytes = stringToBytes(sha.sha(bytes).digest()) + hashBytes = stringToBytes(sha1(bytes).digest()) prefixedHashBytes = self._addPKCS1SHA1Prefix(hashBytes) return self.verify(sigBytes, prefixedHashBytes) diff -Nru python-gdata-1.2.4/src/gdata/webmastertools/data.py python-gdata-2.0.8/src/gdata/webmastertools/data.py --- python-gdata-1.2.4/src/gdata/webmastertools/data.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/webmastertools/data.py 2009-11-21 02:46:34.000000000 +0000 @@ -0,0 +1,217 @@ +#!/usr/bin/python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +"""Contains the data classes of the Google Webmaster Tools Data API""" + + +__author__ = 'j.s@google.com (Jeff Scudder)' + + +import atom.core +import atom.data +import gdata.data +import gdata.opensearch.data + + +WT_TEMPLATE = '{http://schemas.google.com/webmaster/tools/2007/}%s' + + +class CrawlIssueCrawlType(atom.core.XmlElement): + """Type of crawl of the crawl issue""" + _qname = WT_TEMPLATE % 'crawl-type' + + +class CrawlIssueDateDetected(atom.core.XmlElement): + """Detection date for the issue""" + _qname = WT_TEMPLATE % 'date-detected' + + +class CrawlIssueDetail(atom.core.XmlElement): + """Detail of the crawl issue""" + _qname = WT_TEMPLATE % 'detail' + + +class CrawlIssueIssueType(atom.core.XmlElement): + """Type of crawl issue""" + _qname = WT_TEMPLATE % 'issue-type' + + +class CrawlIssueLinkedFromUrl(atom.core.XmlElement): + """Source URL that links to the issue URL""" + _qname = WT_TEMPLATE % 'linked-from' + + +class CrawlIssueUrl(atom.core.XmlElement): + """URL affected by the crawl issue""" + _qname = WT_TEMPLATE % 'url' + + +class CrawlIssueEntry(gdata.data.GDEntry): + """Describes a crawl issue entry""" + date_detected = CrawlIssueDateDetected + url = CrawlIssueUrl + detail = CrawlIssueDetail + issue_type = CrawlIssueIssueType + crawl_type = CrawlIssueCrawlType + linked_from = [CrawlIssueLinkedFromUrl] + + +class CrawlIssuesFeed(gdata.data.GDFeed): + """Feed of crawl issues for a particular site""" + entry = [CrawlIssueEntry] + + +class Indexed(atom.core.XmlElement): + """Describes the indexing status of a site""" + _qname = WT_TEMPLATE % 'indexed' + + +class Keyword(atom.core.XmlElement): + """A keyword in a site or in a link to a site""" + _qname = WT_TEMPLATE % 'keyword' + source = 'source' + + +class KeywordEntry(gdata.data.GDEntry): + """Describes a keyword entry""" + + +class KeywordsFeed(gdata.data.GDFeed): + """Feed of keywords for a particular site""" + entry = [KeywordEntry] + keyword = [Keyword] + + +class LastCrawled(atom.core.XmlElement): + """Describes the last crawled date of a site""" + _qname = WT_TEMPLATE % 'last-crawled' + + +class MessageBody(atom.core.XmlElement): + """Message body""" + _qname = WT_TEMPLATE % 'body' + + +class MessageDate(atom.core.XmlElement): + """Message date""" + _qname = WT_TEMPLATE % 'date' + + +class MessageLanguage(atom.core.XmlElement): + """Message language""" + _qname = WT_TEMPLATE % 'language' + + +class MessageRead(atom.core.XmlElement): + """Indicates if the message has already been read""" + _qname = WT_TEMPLATE % 'read' + + +class MessageSubject(atom.core.XmlElement): + """Message subject""" + _qname = WT_TEMPLATE % 'subject' + + +class SiteId(atom.core.XmlElement): + """Site URL""" + _qname = WT_TEMPLATE % 'id' + + +class MessageEntry(gdata.data.GDEntry): + """Describes a message entry""" + wt_id = SiteId + subject = MessageSubject + date = MessageDate + body = MessageBody + language = MessageLanguage + read = MessageRead + + +class MessagesFeed(gdata.data.GDFeed): + """Describes a messages feed""" + entry = [MessageEntry] + + +class SitemapEntry(gdata.data.GDEntry): + """Describes a sitemap entry""" + indexed = Indexed + wt_id = SiteId + + +class SitemapMobileMarkupLanguage(atom.core.XmlElement): + """Describes a markup language for URLs in this sitemap""" + _qname = WT_TEMPLATE % 'sitemap-mobile-markup-language' + + +class SitemapMobile(atom.core.XmlElement): + """Lists acceptable mobile markup languages for URLs in this sitemap""" + _qname = WT_TEMPLATE % 'sitemap-mobile' + sitemap_mobile_markup_language = [SitemapMobileMarkupLanguage] + + +class SitemapNewsPublicationLabel(atom.core.XmlElement): + """Specifies the publication label for this sitemap""" + _qname = WT_TEMPLATE % 'sitemap-news-publication-label' + + +class SitemapNews(atom.core.XmlElement): + """Lists publication labels for this sitemap""" + _qname = WT_TEMPLATE % 'sitemap-news' + sitemap_news_publication_label = [SitemapNewsPublicationLabel] + + +class SitemapType(atom.core.XmlElement): + """Indicates the type of sitemap. Not used for News or Mobile Sitemaps""" + _qname = WT_TEMPLATE % 'sitemap-type' + + +class SitemapUrlCount(atom.core.XmlElement): + """Indicates the number of URLs contained in the sitemap""" + _qname = WT_TEMPLATE % 'sitemap-url-count' + + +class SitemapsFeed(gdata.data.GDFeed): + """Describes a sitemaps feed""" + entry = [SitemapEntry] + + +class VerificationMethod(atom.core.XmlElement): + """Describes a verification method that may be used for a site""" + _qname = WT_TEMPLATE % 'verification-method' + in_use = 'in-use' + type = 'type' + + +class Verified(atom.core.XmlElement): + """Describes the verification status of a site""" + _qname = WT_TEMPLATE % 'verified' + + +class SiteEntry(gdata.data.GDEntry): + """Describes a site entry""" + indexed = Indexed + wt_id = SiteId + verified = Verified + last_crawled = LastCrawled + verification_method = [VerificationMethod] + + +class SitesFeed(gdata.data.GDFeed): + """Describes a sites feed""" + entry = [SiteEntry] + + diff -Nru python-gdata-1.2.4/src/gdata/webmastertools/__init__.py python-gdata-2.0.8/src/gdata/webmastertools/__init__.py --- python-gdata-1.2.4/src/gdata/webmastertools/__init__.py 2008-10-13 18:57:12.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/webmastertools/__init__.py 2009-08-19 02:31:05.000000000 +0100 @@ -131,12 +131,14 @@ _children['{%s}meta' % atom.ATOM_NAMESPACE] = ( 'meta', VerificationMethodMeta) _attributes['in-use'] = 'in_use' + _attributes['type'] = 'type' - def __init__(self, text=None, in_use=None, meta=None, + def __init__(self, text=None, in_use=None, meta=None, type=None, extension_elements=None, extension_attributes=None): self.text = text self.in_use = in_use self.meta = meta + self.type = type self.extension_elements = extension_elements or [] self.extension_attributes = extension_attributes or {} diff -Nru python-gdata-1.2.4/src/gdata/webmastertools/service.py python-gdata-2.0.8/src/gdata/webmastertools/service.py --- python-gdata-1.2.4/src/gdata/webmastertools/service.py 2009-01-22 19:17:15.000000000 +0000 +++ python-gdata-2.0.8/src/gdata/webmastertools/service.py 2009-09-01 21:37:54.000000000 +0100 @@ -165,7 +165,7 @@ scheme='http://schemas.google.com/g/2005#kind', term='http://schemas.google.com/webmasters/tools/2007#sites-info'), verification_method=webmastertools.VerificationMethod( - type=verification_method, in_user='true') + type=verification_method, in_use='true') ) response = self.Put( site_entry, diff -Nru python-gdata-1.2.4/src/gdata/youtube/data.py python-gdata-2.0.8/src/gdata/youtube/data.py --- python-gdata-1.2.4/src/gdata/youtube/data.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/src/gdata/youtube/data.py 2009-11-21 02:36:21.000000000 +0000 @@ -0,0 +1,477 @@ +#!/usr/bin/python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +"""Contains the data classes of the YouTube Data API""" + + +__author__ = 'j.s@google.com (Jeff Scudder)' + + +import atom.core +import atom.data +import gdata.data +import gdata.geo.data +import gdata.media.data +import gdata.opensearch.data +import gdata.youtube.data + + +YT_TEMPLATE = '{http://gdata.youtube.com/schemas/2007/}%s' + + +class ComplaintEntry(gdata.data.GDEntry): + """Describes a complaint about a video""" + + +class ComplaintFeed(gdata.data.GDFeed): + """Describes complaints about a video""" + entry = [ComplaintEntry] + + +class RatingEntry(gdata.data.GDEntry): + """A rating about a video""" + rating = gdata.data.Rating + + +class RatingFeed(gdata.data.GDFeed): + """Describes ratings for a video""" + entry = [RatingEntry] + + +class YouTubeMediaContent(gdata.media.data.MediaContent): + """Describes a you tube media content""" + _qname = gdata.media.data.MEDIA_TEMPLATE % 'content' + format = 'format' + + +class YtAge(atom.core.XmlElement): + """User's age""" + _qname = YT_TEMPLATE % 'age' + + +class YtBooks(atom.core.XmlElement): + """User's favorite books""" + _qname = YT_TEMPLATE % 'books' + + +class YtCompany(atom.core.XmlElement): + """User's company""" + _qname = YT_TEMPLATE % 'company' + + +class YtDescription(atom.core.XmlElement): + """Description""" + _qname = YT_TEMPLATE % 'description' + + +class YtDuration(atom.core.XmlElement): + """Video duration""" + _qname = YT_TEMPLATE % 'duration' + seconds = 'seconds' + + +class YtFirstName(atom.core.XmlElement): + """User's first name""" + _qname = YT_TEMPLATE % 'firstName' + + +class YtGender(atom.core.XmlElement): + """User's gender""" + _qname = YT_TEMPLATE % 'gender' + + +class YtHobbies(atom.core.XmlElement): + """User's hobbies""" + _qname = YT_TEMPLATE % 'hobbies' + + +class YtHometown(atom.core.XmlElement): + """User's hometown""" + _qname = YT_TEMPLATE % 'hometown' + + +class YtLastName(atom.core.XmlElement): + """User's last name""" + _qname = YT_TEMPLATE % 'lastName' + + +class YtLocation(atom.core.XmlElement): + """Location""" + _qname = YT_TEMPLATE % 'location' + + +class YtMovies(atom.core.XmlElement): + """User's favorite movies""" + _qname = YT_TEMPLATE % 'movies' + + +class YtMusic(atom.core.XmlElement): + """User's favorite music""" + _qname = YT_TEMPLATE % 'music' + + +class YtNoEmbed(atom.core.XmlElement): + """Disables embedding for the video""" + _qname = YT_TEMPLATE % 'noembed' + + +class YtOccupation(atom.core.XmlElement): + """User's occupation""" + _qname = YT_TEMPLATE % 'occupation' + + +class YtPlaylistId(atom.core.XmlElement): + """Playlist id""" + _qname = YT_TEMPLATE % 'playlistId' + + +class YtPosition(atom.core.XmlElement): + """Video position on the playlist""" + _qname = YT_TEMPLATE % 'position' + + +class YtPrivate(atom.core.XmlElement): + """Flags the entry as private""" + _qname = YT_TEMPLATE % 'private' + + +class YtQueryString(atom.core.XmlElement): + """Keywords or query string associated with a subscription""" + _qname = YT_TEMPLATE % 'queryString' + + +class YtRacy(atom.core.XmlElement): + """Mature content""" + _qname = YT_TEMPLATE % 'racy' + + +class YtRecorded(atom.core.XmlElement): + """Date when the video was recorded""" + _qname = YT_TEMPLATE % 'recorded' + + +class YtRelationship(atom.core.XmlElement): + """User's relationship status""" + _qname = YT_TEMPLATE % 'relationship' + + +class YtSchool(atom.core.XmlElement): + """User's school""" + _qname = YT_TEMPLATE % 'school' + + +class YtStatistics(atom.core.XmlElement): + """Video and user statistics""" + _qname = YT_TEMPLATE % 'statistics' + favorite_count = 'favoriteCount' + video_watch_count = 'videoWatchCount' + view_count = 'viewCount' + last_web_access = 'lastWebAccess' + subscriber_count = 'subscriberCount' + + +class YtStatus(atom.core.XmlElement): + """Status of a contact""" + _qname = YT_TEMPLATE % 'status' + + +class YtUserProfileStatistics(YtStatistics): + """User statistics""" + _qname = YT_TEMPLATE % 'statistics' + + +class YtUsername(atom.core.XmlElement): + """Youtube username""" + _qname = YT_TEMPLATE % 'username' + + +class FriendEntry(gdata.data.BatchEntry): + """Describes a contact in friend list""" + username = YtUsername + status = YtStatus + email = gdata.data.Email + + +class FriendFeed(gdata.data.BatchFeed): + """Describes user's friends""" + entry = [FriendEntry] + + +class YtVideoStatistics(YtStatistics): + """Video statistics""" + _qname = YT_TEMPLATE % 'statistics' + + +class ChannelEntry(gdata.data.GDEntry): + """Describes a video channel""" + + +class ChannelFeed(gdata.data.GDFeed): + """Describes channels""" + entry = [ChannelEntry] + + +class FavoriteEntry(gdata.data.BatchEntry): + """Describes a favorite video""" + + +class FavoriteFeed(gdata.data.BatchFeed): + """Describes favorite videos""" + entry = [FavoriteEntry] + + +class YouTubeMediaCredit(gdata.media.data.MediaCredit): + """Describes a you tube media credit""" + _qname = gdata.media.data.MEDIA_TEMPLATE % 'credit' + type = 'type' + + +class YouTubeMediaRating(gdata.media.data.MediaRating): + """Describes a you tube media rating""" + _qname = gdata.media.data.MEDIA_TEMPLATE % 'rating' + country = 'country' + + +class YtAboutMe(atom.core.XmlElement): + """User's self description""" + _qname = YT_TEMPLATE % 'aboutMe' + + +class UserProfileEntry(gdata.data.BatchEntry): + """Describes an user's profile""" + relationship = YtRelationship + description = YtDescription + location = YtLocation + statistics = YtUserProfileStatistics + school = YtSchool + music = YtMusic + first_name = YtFirstName + gender = YtGender + occupation = YtOccupation + hometown = YtHometown + company = YtCompany + movies = YtMovies + books = YtBooks + username = YtUsername + about_me = YtAboutMe + last_name = YtLastName + age = YtAge + thumbnail = gdata.media.data.MediaThumbnail + hobbies = YtHobbies + + +class UserProfileFeed(gdata.data.BatchFeed): + """Describes a feed of user's profile""" + entry = [UserProfileEntry] + + +class YtAspectRatio(atom.core.XmlElement): + """The aspect ratio of a media file""" + _qname = YT_TEMPLATE % 'aspectRatio' + + +class YtBasePublicationState(atom.core.XmlElement): + """Status of an unpublished entry""" + _qname = YT_TEMPLATE % 'state' + help_url = 'helpUrl' + + +class YtPublicationState(YtBasePublicationState): + """Status of an unpublished video""" + _qname = YT_TEMPLATE % 'state' + name = 'name' + reason_code = 'reasonCode' + + +class YouTubeAppControl(atom.data.Control): + """Describes a you tube app control""" + _qname = (atom.data.APP_TEMPLATE_V1 % 'control', + atom.data.APP_TEMPLATE_V2 % 'control') + state = YtPublicationState + + +class YtCaptionPublicationState(YtBasePublicationState): + """Status of an unpublished caption track""" + _qname = YT_TEMPLATE % 'state' + reason_code = 'reasonCode' + name = 'name' + + +class YouTubeCaptionAppControl(atom.data.Control): + """Describes a you tube caption app control""" + _qname = atom.data.APP_TEMPLATE_V2 % 'control' + state = YtCaptionPublicationState + + +class CaptionTrackEntry(gdata.data.GDEntry): + """Describes a caption track""" + + +class CaptionTrackFeed(gdata.data.GDFeed): + """Describes caption tracks""" + entry = [CaptionTrackEntry] + + +class YtCountHint(atom.core.XmlElement): + """Hint as to how many entries the linked feed contains""" + _qname = YT_TEMPLATE % 'countHint' + + +class PlaylistLinkEntry(gdata.data.BatchEntry): + """Describes a playlist""" + description = YtDescription + playlist_id = YtPlaylistId + count_hint = YtCountHint + private = YtPrivate + + +class PlaylistLinkFeed(gdata.data.BatchFeed): + """Describes list of playlists""" + entry = [PlaylistLinkEntry] + + +class YtModerationStatus(atom.core.XmlElement): + """Moderation status""" + _qname = YT_TEMPLATE % 'moderationStatus' + + +class YtPlaylistTitle(atom.core.XmlElement): + """Playlist title""" + _qname = YT_TEMPLATE % 'playlistTitle' + + +class SubscriptionEntry(gdata.data.BatchEntry): + """Describes user's channel subscritpions""" + count_hint = YtCountHint + playlist_title = YtPlaylistTitle + thumbnail = gdata.media.data.MediaThumbnail + username = YtUsername + query_string = YtQueryString + playlist_id = YtPlaylistId + + +class SubscriptionFeed(gdata.data.BatchFeed): + """Describes list of user's video subscriptions""" + entry = [SubscriptionEntry] + + +class YtSpam(atom.core.XmlElement): + """Indicates that the entry probably contains spam""" + _qname = YT_TEMPLATE % 'spam' + + +class CommentEntry(gdata.data.BatchEntry): + """Describes a comment for a video""" + spam = YtSpam + + +class CommentFeed(gdata.data.BatchFeed): + """Describes comments for a video""" + entry = [CommentEntry] + + +class YtUploaded(atom.core.XmlElement): + """Date/Time at which the video was uploaded""" + _qname = YT_TEMPLATE % 'uploaded' + + +class YtVideoId(atom.core.XmlElement): + """Video id""" + _qname = YT_TEMPLATE % 'videoid' + + +class YouTubeMediaGroup(gdata.media.data.MediaGroup): + """Describes a you tube media group""" + _qname = gdata.media.data.MEDIA_TEMPLATE % 'group' + videoid = YtVideoId + private = YtPrivate + duration = YtDuration + aspect_ratio = YtAspectRatio + uploaded = YtUploaded + + +class VideoEntryBase(gdata.data.GDEntry): + """Elements that describe or contain videos""" + group = YouTubeMediaGroup + statistics = YtVideoStatistics + racy = YtRacy + recorded = YtRecorded + where = gdata.geo.data.GeoRssWhere + rating = gdata.data.Rating + noembed = YtNoEmbed + location = YtLocation + comments = gdata.data.Comments + + +class PlaylistEntry(gdata.data.BatchEntry): + """Describes a video in a playlist""" + description = YtDescription + position = YtPosition + + +class PlaylistFeed(gdata.data.BatchFeed): + """Describes videos in a playlist""" + private = YtPrivate + group = YouTubeMediaGroup + playlist_id = YtPlaylistId + entry = [PlaylistEntry] + + +class VideoEntry(gdata.data.BatchEntry): + """Describes a video""" + + +class VideoFeed(gdata.data.BatchFeed): + """Describes a video feed""" + entry = [VideoEntry] + + +class VideoMessageEntry(gdata.data.BatchEntry): + """Describes a video message""" + description = YtDescription + + +class VideoMessageFeed(gdata.data.BatchFeed): + """Describes videos in a videoMessage""" + entry = [VideoMessageEntry] + + +class UserEventEntry(gdata.data.GDEntry): + """Describes a user event""" + playlist_id = YtPlaylistId + videoid = YtVideoId + username = YtUsername + query_string = YtQueryString + rating = gdata.data.Rating + + +class UserEventFeed(gdata.data.GDFeed): + """Describes list of events""" + entry = [UserEventEntry] + + +class VideoModerationEntry(gdata.data.GDEntry): + """Describes video moderation""" + moderation_status = YtModerationStatus + videoid = YtVideoId + + +class VideoModerationFeed(gdata.data.GDFeed): + """Describes a video moderation feed""" + entry = [VideoModerationEntry] + + diff -Nru python-gdata-1.2.4/src/gdata/youtube/service.py python-gdata-2.0.8/src/gdata/youtube/service.py --- python-gdata-1.2.4/src/gdata/youtube/service.py 2009-01-22 19:17:14.000000000 +0000 +++ python-gdata-2.0.8/src/gdata/youtube/service.py 2010-02-19 02:22:35.000000000 +0000 @@ -43,7 +43,7 @@ YOUTUBE_SERVICE = 'youtube' YOUTUBE_CLIENTLOGIN_AUTHENTICATION_URL = 'https://www.google.com/youtube/accounts/ClientLogin' YOUTUBE_SUPPORTED_UPLOAD_TYPES = ('mov', 'avi', 'wmv', 'mpg', 'quicktime', - 'flv') + 'flv', 'mp4', 'x-flv') YOUTUBE_QUERY_VALID_TIME_PARAMETERS = ('today', 'this_week', 'this_month', 'all_time') YOUTUBE_QUERY_VALID_ORDERBY_PARAMETERS = ('published', 'viewCount', 'rating', @@ -155,17 +155,18 @@ **kwargs: The other parameters to pass to gdata.service.GDataService constructor. """ - self.additional_headers = {} - if client_id is not None and developer_key is not None: - self.additional_headers = {'X-Gdata-Client': client_id, - 'X-GData-Key': 'key=%s' % developer_key} - elif developer_key and not client_id: - raise YouTubeError('You must also specify the clientId') gdata.service.GDataService.__init__( self, email=email, password=password, service=YOUTUBE_SERVICE, source=source, server=server, additional_headers=additional_headers, **kwargs) + + if client_id is not None: + self.additional_headers['X-Gdata-Client'] = client_id + + if developer_key is not None: + self.additional_headers['X-GData-Key'] = 'key=%s' % developer_key + self.auth_service_url = YOUTUBE_CLIENTLOGIN_AUTHENTICATION_URL def GetYouTubeVideoFeed(self, uri): @@ -277,9 +278,11 @@ uri, converter=gdata.youtube.YouTubeVideoCommentEntryFromString) def GetYouTubeUserFeed(self, uri=None, username=None): - """Retrieve a YouTubeUserFeed. + """Retrieve a YouTubeVideoFeed of user uploaded videos - Either a uri or a username must be provided. + Either a uri or a username must be provided. This will retrieve list + of videos uploaded by specified user. The uri will be of format + "http://gdata.youtube.com/feeds/api/users/{username}/uploads". Args: uri: An optional string representing the URI of the user feed that is @@ -611,15 +614,15 @@ 'body':'`video_entry` must be a gdata.youtube.VideoEntry instance', 'reason':'Found %s, not VideoEntry' % type(video_entry) }) - majtype, mintype = content_type.split('/') - - try: - assert(mintype in YOUTUBE_SUPPORTED_UPLOAD_TYPES) - except (ValueError, AssertionError): - raise YouTubeError({'status':YOUTUBE_INVALID_CONTENT_TYPE, - 'body':'This is not a valid content type: %s' % content_type, - 'reason':'Accepted content types: %s' % - ['video/%s' % (t) for t in YOUTUBE_SUPPORTED_UPLOAD_TYPES]}) + #majtype, mintype = content_type.split('/') + # + #try: + # assert(mintype in YOUTUBE_SUPPORTED_UPLOAD_TYPES) + #except (ValueError, AssertionError): + # raise YouTubeError({'status':YOUTUBE_INVALID_CONTENT_TYPE, + # 'body':'This is not a valid content type: %s' % content_type, + # 'reason':'Accepted content types: %s' % + # ['video/%s' % (t) for t in YOUTUBE_SUPPORTED_UPLOAD_TYPES]}) if (isinstance(filename_or_handle, (str, unicode)) and os.path.exists(filename_or_handle)): @@ -1298,7 +1301,7 @@ self.additional_headers['X-Gdata-Client'] = client_id client_id = property(_GetClientId, _SetClientId, - doc="""The ClientId property""") + doc="""The ClientId property""") def Query(self, uri): """Performs a query and returns a resulting feed or entry. @@ -1380,17 +1383,20 @@ location: A string of geo coordinates. Note that this is not used when the search is performed but rather to filter the returned videos for ones that match to the location entered. + feed: str (optional) The base URL which is the beginning of the query URL. + defaults to 'http://%s/feeds/videos' % (YOUTUBE_SERVER) """ def __init__(self, video_id=None, feed_type=None, text_query=None, - params=None, categories=None): + params=None, categories=None, feed=None): - if feed_type in YOUTUBE_STANDARDFEEDS: + if feed_type in YOUTUBE_STANDARDFEEDS and feed is None: feed = 'http://%s/feeds/standardfeeds/%s' % (YOUTUBE_SERVER, feed_type) - elif feed_type is 'responses' or feed_type is 'comments' and video_id: + elif (feed_type is 'responses' or feed_type is 'comments' and video_id + and feed is None): feed = 'http://%s/feeds/videos/%s/%s' % (YOUTUBE_SERVER, video_id, feed_type) - else: + elif feed is None: feed = 'http://%s/feeds/videos' % (YOUTUBE_SERVER) gdata.service.Query.__init__(self, feed, text_query=text_query, diff -Nru python-gdata-1.2.4/tests/all_tests_cached.py python-gdata-2.0.8/tests/all_tests_cached.py --- python-gdata-1.2.4/tests/all_tests_cached.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/tests/all_tests_cached.py 2009-09-21 22:20:29.000000000 +0100 @@ -0,0 +1,38 @@ +#!/usr/bin/env python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +# This module is used for version 2 of the Google Data APIs. + + +__author__ = 'j.s@google.com (Jeff Scudder)' + + +import unittest +import all_tests +import gdata.test_config as conf + + +conf.options.set_value('runlive', 'true') +conf.options.set_value('savecache', 'true') +conf.options.set_value('clearcache', 'false') + + +def suite(): + return unittest.TestSuite((atom_tests.core_test.suite(),)) + +if __name__ == '__main__': + unittest.TextTestRunner().run(all_tests.suite()) diff -Nru python-gdata-1.2.4/tests/all_tests_clear_cache.py python-gdata-2.0.8/tests/all_tests_clear_cache.py --- python-gdata-1.2.4/tests/all_tests_clear_cache.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/tests/all_tests_clear_cache.py 2009-07-10 23:32:53.000000000 +0100 @@ -0,0 +1,39 @@ +#!/usr/bin/env python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +# This module is used for version 2 of the Google Data APIs. + + +__author__ = 'j.s@google.com (Jeff Scudder)' + + +import unittest +import all_tests +from gdata.test_config import settings + + +settings.RUN_LIVE_TESTS = True +settings.CACHE_RESPONSES = True +settings.CLEAR_CACHE = True + + +def suite(): + return unittest.TestSuite((atom_tests.core_test.suite(),)) + + +if __name__ == '__main__': + unittest.TextTestRunner().run(all_tests.suite()) diff -Nru python-gdata-1.2.4/tests/all_tests_coverage.py python-gdata-2.0.8/tests/all_tests_coverage.py --- python-gdata-1.2.4/tests/all_tests_coverage.py 2009-01-12 23:52:03.000000000 +0000 +++ python-gdata-2.0.8/tests/all_tests_coverage.py 2010-02-06 02:03:14.000000000 +0000 @@ -29,6 +29,21 @@ import atom.mock_http_core import atom.auth import atom.client +import gdata.gauth +import gdata.client +import gdata.data +import gdata.blogger.data +import gdata.blogger.client +import gdata.maps.data +import gdata.maps.client +import gdata.spreadsheets.data +from gdata.test_config import settings + + +# Ensure that coverage tests execute the live requests to the servers, but +# allow use of cached server responses to speed up repeated runs. +settings.RUN_LIVE_TESTS = True +settings.CLEAR_CACHE = False def suite(): @@ -39,5 +54,7 @@ coverage.start() unittest.TextTestRunner().run(all_tests.suite()) coverage.stop() - coverage.report([atom.core, atom.http_core, atom.auth, atom.mock_http_core, - atom.client]) + coverage.report([atom.core, atom.http_core, atom.auth, atom.data, + atom.mock_http_core, atom.client, gdata.gauth, gdata.client, + gdata.core, gdata.data, gdata.blogger.data, gdata.blogger.client, + gdata.maps.data, gdata.maps.client, gdata.spreadsheets.data]) diff -Nru python-gdata-1.2.4/tests/all_tests_local.py python-gdata-2.0.8/tests/all_tests_local.py --- python-gdata-1.2.4/tests/all_tests_local.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/tests/all_tests_local.py 2010-02-26 23:30:09.000000000 +0000 @@ -0,0 +1,37 @@ +#!/usr/bin/env python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +# This module is used for version 2 of the Google Data APIs. + + +__author__ = 'j.s@google.com (Jeff Scudder)' + + +import unittest +import all_tests +import gdata.test_config as conf + + +conf.options.set_value('runlive', 'false') + + +def suite(): + return unittest.TestSuite((atom_tests.core_test.suite(),)) + + +if __name__ == '__main__': + unittest.TextTestRunner().run(all_tests.suite()) diff -Nru python-gdata-1.2.4/tests/all_tests.py python-gdata-2.0.8/tests/all_tests.py --- python-gdata-1.2.4/tests/all_tests.py 2009-01-12 23:52:16.000000000 +0000 +++ python-gdata-2.0.8/tests/all_tests.py 2010-02-18 19:30:38.000000000 +0000 @@ -22,19 +22,67 @@ import unittest +# Tests for v2 features. import atom_tests.core_test +import atom_tests.data_test import atom_tests.http_core_test import atom_tests.auth_test import atom_tests.mock_http_core_test import atom_tests.client_test +import gdata_tests.client_test +import gdata_tests.core_test +import gdata_tests.data_test +import gdata_tests.data_smoke_test +import gdata_tests.client_smoke_test +import gdata_tests.live_client_test +import gdata_tests.gauth_test +import gdata_tests.blogger.data_test +import gdata_tests.blogger.live_client_test +import gdata_tests.maps.data_test +import gdata_tests.maps.live_client_test +import gdata_tests.spreadsheets.data_test +import gdata_tests.spreadsheets.live_client_test +import gdata_tests.projecthosting.data_test +import gdata_tests.projecthosting.live_client_test +import gdata_tests.sites.data_test +import gdata_tests.sites.live_client_test +import gdata_tests.analytics.data_test +import gdata_tests.analytics.live_client_test +import gdata_tests.contacts.live_client_test +import gdata_tests.calendar_resource.live_client_test +import gdata_tests.calendar_resource.data_test def suite(): - return unittest.TestSuite((atom_tests.core_test.suite(), - atom_tests.http_core_test.suite(), - atom_tests.mock_http_core_test.suite(), - atom_tests.client_test.suite(), - atom_tests.auth_test.suite())) + return unittest.TestSuite(( + atom_tests.core_test.suite(), + atom_tests.data_test.suite(), + atom_tests.http_core_test.suite(), + atom_tests.auth_test.suite(), + atom_tests.mock_http_core_test.suite(), + atom_tests.client_test.suite(), + gdata_tests.client_test.suite(), + gdata_tests.core_test.suite(), + gdata_tests.data_test.suite(), + gdata_tests.data_smoke_test.suite(), + gdata_tests.client_smoke_test.suite(), + gdata_tests.live_client_test.suite(), + gdata_tests.gauth_test.suite(), + gdata_tests.blogger.data_test.suite(), + gdata_tests.blogger.live_client_test.suite(), + gdata_tests.maps.data_test.suite(), + gdata_tests.maps.live_client_test.suite(), + gdata_tests.spreadsheets.data_test.suite(), + gdata_tests.spreadsheets.live_client_test.suite(), + gdata_tests.projecthosting.data_test.suite(), + gdata_tests.projecthosting.live_client_test.suite(), + gdata_tests.sites.data_test.suite(), + gdata_tests.sites.live_client_test.suite(), + gdata_tests.analytics.data_test.suite(), + gdata_tests.analytics.live_client_test.suite(), + gdata_tests.contacts.live_client_test.suite(), + gdata_tests.calendar_resource.live_client_test.suite(), + gdata_tests.calendar_resource.data_test.suite(),)) if __name__ == '__main__': diff -Nru python-gdata-1.2.4/tests/atom_test.py python-gdata-2.0.8/tests/atom_test.py --- python-gdata-1.2.4/tests/atom_test.py 2008-12-16 00:50:32.000000000 +0000 +++ python-gdata-2.0.8/tests/atom_test.py 2009-10-09 01:11:36.000000000 +0100 @@ -16,7 +16,7 @@ # limitations under the License. -__author__ = 'api.jscudder@gmail.com (Jeff Scudder)' +__author__ = 'j.s@google.com (Jeff Scudder)' import sys @@ -27,6 +27,7 @@ from elementtree import ElementTree import atom from gdata import test_data +import gdata.test_config as conf class AuthorTest(unittest.TestCase): @@ -237,7 +238,6 @@ self.assert_(self.subtitle.text == new_subtitle.text) - class SummaryTest(unittest.TestCase): def setUp(self): @@ -468,7 +468,8 @@ feed.author.append(atom.Author(name=atom.Name(text='js'))) feed.title = atom.Title(text='my test source') feed.generator = atom.Generator(text='gen') - feed.entry.append(atom.Entry(author=[atom.Author(name=atom.Name(text='entry author'))])) + feed.entry.append(atom.Entry(author=[atom.Author(name=atom.Name( + text='entry author'))])) self.assert_(feed.author[0].name.text == 'js') self.assert_(feed.title.text == 'my test source') self.assert_(feed.generator.text == 'gen') @@ -600,7 +601,8 @@ # Using Id because it adds no additional members. atom_base = atom.Id() extension_child = atom.ExtensionElement('foo', namespace='http://ns0.com') - extension_grandchild = atom.ExtensionElement('bar', namespace='http://ns0.com') + extension_grandchild = atom.ExtensionElement('bar', + namespace='http://ns0.com') extension_child.children.append(extension_grandchild) atom_base.extension_elements.append(extension_child) self.assertEquals(len(atom_base.extension_elements), 1) @@ -610,21 +612,25 @@ element_tree = atom_base._ToElementTree() self.assert_(element_tree.find('{http://ns0.com}foo') is not None) - self.assert_(element_tree.find('{http://ns0.com}foo').find('{http://ns0.com}bar') is not None) + self.assert_(element_tree.find('{http://ns0.com}foo').find( + '{http://ns0.com}bar') is not None) class UtfParsingTest(unittest.TestCase): def setUp(self): - self.test_xml = u""" + self.test_xml = u""" + http://www.google.com/test/id/url \u03B1\u03BB\u03C6\u03B1 """ def testMemberStringEncoding(self): atom_entry = atom.EntryFromString(self.test_xml) - self.assert_(atom_entry.title.type == u'\u03B1\u03BB\u03C6\u03B1'.encode('utf-8')) - self.assert_(atom_entry.title.text == u'\u03B1\u03BB\u03C6\u03B1'.encode('utf-8')) + #self.assertEqual(atom_entry.title.type.encode('utf-8'), + # u'\u03B1\u03BB\u03C6\u03B1'.encode('utf-8')) + #self.assertEqual(atom_entry.title.text.encode('utf-8'), + # u'\u03B1\u03BB\u03C6\u03B1'.encode('utf-8')) # Setting object members to unicode strings is supported even if # MEMBER_STRING_ENCODING is set 'utf-8' (should it be?) @@ -642,8 +648,10 @@ # Test something else than utf-8 atom.MEMBER_STRING_ENCODING = 'iso8859_7' atom_entry = atom.EntryFromString(self.test_xml) - self.assert_(atom_entry.title.type == u'\u03B1\u03BB\u03C6\u03B1'.encode('iso8859_7')) - self.assert_(atom_entry.title.text == u'\u03B1\u03BB\u03C6\u03B1'.encode('iso8859_7')) + self.assert_(atom_entry.title.type == u'\u03B1\u03BB\u03C6\u03B1'.encode( + 'iso8859_7')) + self.assert_(atom_entry.title.text == u'\u03B1\u03BB\u03C6\u03B1'.encode( + 'iso8859_7')) # Test using unicode strings directly for object members atom.MEMBER_STRING_ENCODING = unicode @@ -651,7 +659,8 @@ self.assert_(atom_entry.title.type == u'\u03B1\u03BB\u03C6\u03B1') self.assert_(atom_entry.title.text == u'\u03B1\u03BB\u03C6\u03B1') - # Make sure that we can use plain text when MEMBER_STRING_ENCODING is unicode + # Make sure that we can use plain text when MEMBER_STRING_ENCODING is + # unicode atom_entry.title.type = "plain text" atom_entry.title.text = "more text" xml = atom_entry.ToString() @@ -660,10 +669,38 @@ def testConvertExampleXML(self): try: - entry = atom.CreateClassFromXMLString(atom.Entry, test_data.GBASE_STRING_ENCODING_ENTRY) + entry = atom.CreateClassFromXMLString(atom.Entry, + test_data.GBASE_STRING_ENCODING_ENTRY) except UnicodeDecodeError: self.fail('Error when converting XML') - + +class DeprecationDecoratorTest(unittest.TestCase): + + def testDeprecationWarning(self): + def to_deprecate(): + return 5 + self.assertEqual(to_deprecate.func_name, 'to_deprecate') + deprecated = atom.deprecated('test')(to_deprecate) + self.assertNotEqual(to_deprecate, deprecated) + # After decorating a function as deprecated, the function name should + # still be the name of the original function. + self.assertEqual(deprecated.func_name, 'to_deprecate') + #@atom.deprecated() + def also_deprecated(): + return 6 + also_deprecated = atom.deprecated()(also_deprecated) + self.assertEqual(also_deprecated.func_name, 'also_deprecated') + + +def suite(): + return conf.build_suite([AuthorTest, EmailTest, NameTest, + ExtensionElementTest, LinkTest, GeneratorTest, TitleTest, SubtitleTest, + SummaryTest, IdTest, IconTest, LogoTest, RightsTest, UpdatedTest, + PublishedTest, FeedEntryParentTest, EntryTest, ContentEntryParentTest, + PreserveUnkownElementTest, FeedTest, LinkFinderTest, AtomBaseTest, + UtfParsingTest, DeprecationDecoratorTest]) + + if __name__ == '__main__': unittest.main() diff -Nru python-gdata-1.2.4/tests/atom_tests/client_test.py python-gdata-2.0.8/tests/atom_tests/client_test.py --- python-gdata-1.2.4/tests/atom_tests/client_test.py 2009-01-15 00:33:06.000000000 +0000 +++ python-gdata-2.0.8/tests/atom_tests/client_test.py 2009-10-09 01:26:53.000000000 +0100 @@ -38,15 +38,18 @@ # Make several equivalent requests. responses = [client.request('GET', 'http://example.org/'), client.request(http_request=atom.http_core.HttpRequest( - 'http', 'example.org', uri='/', method='GET')), + uri=atom.http_core.Uri('http', 'example.org', path='/'), + method='GET')), client.request('GET', - http_request=atom.http_core.HttpRequest('http', - 'example.org', uri='/'))] + http_request=atom.http_core.HttpRequest( + uri=atom.http_core.Uri('http', 'example.org', + path='/')))] for response in responses: self.assert_(response.getheader('Echo-Host') == 'example.org:None') self.assert_(response.getheader('Echo-Uri') == '/') self.assert_(response.getheader('Echo-Scheme') == 'http') self.assert_(response.getheader('Echo-Method') == 'GET') + self.assert_(response.getheader('User-Agent').startswith('gdata-py/')) def test_auth_request_with_no_client_defaults(self): client = atom.client.AtomPubClient(atom.mock_http_core.EchoHttpClient()) @@ -77,8 +80,10 @@ self.assert_(response.getheader('Echo-Scheme') == 'http') self.assert_(response.getheader('Authorization') == 'Basic SmVmZjoxMjM=') response = client.request('GET', '/', - http_request=atom.http_core.HttpRequest(port=99)) + http_request=atom.http_core.HttpRequest( + uri=atom.http_core.Uri(port=99))) self.assert_(response.getheader('Echo-Host') == 'example.com:99') + self.assert_(response.getheader('Echo-Uri') == '/') def test_get(self): client = atom.client.AtomPubClient(atom.mock_http_core.EchoHttpClient()) @@ -140,14 +145,17 @@ self.assert_(response.getheader('Content-Type') == 'application/xml') def test_delete(self): - client = atom.client.AtomPubClient(atom.mock_http_core.EchoHttpClient()) + client = atom.client.AtomPubClient(atom.mock_http_core.EchoHttpClient(), + source='my new app') response = client.Delete('http://example.com/simple') - self.assert_(response.getheader('Echo-Host') == 'example.com:None') - self.assert_(response.getheader('Echo-Uri') == '/simple') - self.assert_(response.getheader('Echo-Method') == 'DELETE') + self.assertEqual(response.getheader('Echo-Host'), 'example.com:None') + self.assertEqual(response.getheader('Echo-Uri'), '/simple') + self.assertEqual(response.getheader('Echo-Method'), 'DELETE') response = client.delete(uri='http://example.com/d') - self.assert_(response.getheader('Echo-Uri') == '/d') - self.assert_(response.getheader('Echo-Method') == 'DELETE') + self.assertEqual(response.getheader('Echo-Uri'), '/d') + self.assertEqual(response.getheader('Echo-Method'), 'DELETE') + self.assert_( + response.getheader('User-Agent').startswith('my new app gdata-py/')) def suite(): return unittest.TestSuite((unittest.makeSuite(AtomPubClientEchoTest, 'test'), diff -Nru python-gdata-1.2.4/tests/atom_tests/core_test.py python-gdata-2.0.8/tests/atom_tests/core_test.py --- python-gdata-1.2.4/tests/atom_tests/core_test.py 2009-01-12 23:50:42.000000000 +0000 +++ python-gdata-2.0.8/tests/atom_tests/core_test.py 2009-11-25 00:04:31.000000000 +0000 @@ -33,6 +33,7 @@ except ImportError: from elementtree import ElementTree import atom.core +import gdata.test_config as conf SAMPLE_XML = ('δ').text, u'\u03b4') + self.assertEqual(parse(u'\u03b4').text, u'\u03b4') + + # Test output valid XML. + self.assertEqual(parse(u'δ').to_string(), 'δ') + self.assertEqual(parse(u'\u03b4').to_string(), 'δ') + + # Test setting the inner text and output valid XML. + e = create(u'x', u'\u03b4') + self.assertEqual(e.to_string(), 'δ') + self.assertEqual(e.text, u'\u03b4') + self.assert_(isinstance(e.text, unicode)) + self.assertEqual(create(u'x', '\xce\xb4'.decode('utf-8')).to_string(), + 'δ') + + def testUnicodeTagsAndAttributes(self): + # Begin with test to show underlying ElementTree behavior. + t = ElementTree.fromstring(u'test'.encode('utf-8')) + self.assertEqual(t.tag, u'del\u03b4ta') + self.assertEqual(parse(u'<\u03b4elta>test')._qname, + u'\u03b4elta') + # Test unicode attribute names and values. + t = ElementTree.fromstring(u''.encode('utf-8')) + self.assertEqual(t.attrib, {u'\u03b4a': u'\u03b4b'}) + self.assertEqual(parse(u'').get_attributes( + u'\u03b4a')[0].value, u'\u03b4b') + x = create('x', None) + x._other_attributes[u'a'] = u'\u03b4elta' + self.assert_(x.to_string().startswith('δ').text, u'\u03b4') + self.assertEqual(parse(u'\u03b4'.encode('utf-8')).text, u'\u03b4') + self.assertEqual(parse('\xce\xb4').text, u'\u03b4') + + # Test output valid XML. + self.assertEqual(parse('δ').to_string(), 'δ') + self.assertEqual(parse(u'\u03b4'.encode('utf-8')).to_string(), + 'δ') + self.assertEqual(parse('\xce\xb4').to_string(), 'δ') + + # Test setting the inner text and output valid XML. + e = create('x', '\xce\xb4') + self.assertEqual(e.to_string(), 'δ') + # Don't change the encoding until the we convert to an XML string. + self.assertEqual(e.text, '\xce\xb4') + self.assert_(isinstance(e.text, str)) + self.assert_(isinstance(e.to_string(), str)) + self.assertEqual(create('x', u'\u03b4'.encode('utf-8')).to_string(), + 'δ') + # Test attributes and values with UTF-8 inputs. + self.assertEqual(parse('').get_attributes( + u'\u03b4a')[0].value, u'\u03b4b') + + def testUtf8TagsAndAttributes(self): + self.assertEqual( + parse(u'<\u03b4elta>test'.encode('utf-8'))._qname, + u'\u03b4elta') + self.assertEqual(parse('<\xce\xb4elta>test')._qname, + u'\u03b4elta') + # Test an element with UTF-8 in the attribute value. + x = create('x', None) + x._other_attributes[u'a'] = '\xce\xb4' + self.assert_(x.to_string(encoding='UTF-8').startswith('\u03b4'.encode('utf-16')).text, u'\u03b4') + + # Test output valid XML. + self.assertEqual(parse(u'\u03b4'.encode('utf-16')).to_string(), + 'δ') + + # Test setting the inner text and output valid XML. + e = create('x', u'\u03b4'.encode('utf-16')) + self.assertEqual(e.to_string(encoding='utf-16'), 'δ') + # Don't change the encoding until the we convert to an XML string. + # Allow either little-endian or big-endian byte orderings. + self.assert_(e.text in ['\xff\xfe\xb4\x03', '\xfe\xff\x03\xb4']) + endianness = LITTLE_ENDIAN + if e.text == '\xfe\xff\x03\xb4': + endianness = BIG_ENDIAN + self.assert_(isinstance(e.text, str)) + self.assert_(isinstance(e.to_string(encoding='utf-16'), str)) + if endianness == LITTLE_ENDIAN: + self.assertEqual( + create('x', '\xff\xfe\xb4\x03').to_string(encoding='utf-16'), + 'δ') + else: + self.assertEqual( + create('x', '\xfe\xff\x03\xb4').to_string(encoding='utf-16'), + 'δ') + + def testOtherEncodingInTagsAndAttributes(self): + self.assertEqual( + parse(u'<\u03b4elta>test'.encode('utf-16'))._qname, + u'\u03b4elta') + # Test an element with UTF-16 in the attribute value. + x = create('x', None) + x._other_attributes[u'a'] = u'\u03b4'.encode('utf-16') + self.assert_(x.to_string(encoding='UTF-16').startswith(' + + + http://www.google.com/test/id/url + Testing 2000 series laptop + +
A Testing Laptop
+
+ + + Computer + Laptop + testing laptop + products +
""" + +class AuthorTest(unittest.TestCase): + + def setUp(self): + self.author = atom.data.Author() + + def testEmptyAuthorShouldHaveEmptyExtensionLists(self): + self.assert_(isinstance(self.author._other_elements, list)) + self.assertEqual(len(self.author._other_elements), 0) + self.assert_(isinstance(self.author._other_attributes, dict)) + self.assertEqual(len(self.author._other_attributes), 0) + + def testNormalAuthorShouldHaveNoExtensionElements(self): + self.author.name = atom.data.Name(text='Jeff Scudder') + self.assertEqual(self.author.name.text, 'Jeff Scudder') + self.assertEqual(len(self.author._other_elements), 0) + new_author = atom.core.XmlElementFromString(self.author.ToString(), + atom.data.Author) + self.assertEqual(len(new_author._other_elements), 0) + self.assertEqual(new_author.name.text, 'Jeff Scudder') + + self.author.extension_elements.append(atom.data.ExtensionElement( + 'foo', text='bar')) + self.assertEqual(len(self.author.extension_elements), 1) + self.assertEqual(self.author.name.text, 'Jeff Scudder') + new_author = atom.core.parse(self.author.ToString(), atom.data.Author) + self.assertEqual(len(self.author.extension_elements), 1) + self.assertEqual(new_author.name.text, 'Jeff Scudder') + + def testEmptyAuthorToAndFromStringShouldMatch(self): + string_from_author = self.author.ToString() + new_author = atom.core.XmlElementFromString(string_from_author, + atom.data.Author) + string_from_new_author = new_author.ToString() + self.assertEqual(string_from_author, string_from_new_author) + + def testAuthorWithNameToAndFromStringShouldMatch(self): + self.author.name = atom.data.Name() + self.author.name.text = 'Jeff Scudder' + string_from_author = self.author.ToString() + new_author = atom.core.XmlElementFromString(string_from_author, + atom.data.Author) + string_from_new_author = new_author.ToString() + self.assertEqual(string_from_author, string_from_new_author) + self.assertEqual(self.author.name.text, new_author.name.text) + + def testExtensionElements(self): + self.author.extension_attributes['foo1'] = 'bar' + self.author.extension_attributes['foo2'] = 'rab' + self.assertEqual(self.author.extension_attributes['foo1'], 'bar') + self.assertEqual(self.author.extension_attributes['foo2'], 'rab') + new_author = atom.core.parse(str(self.author), atom.data.Author) + self.assertEqual(new_author.extension_attributes['foo1'], 'bar') + self.assertEqual(new_author.extension_attributes['foo2'], 'rab') + + def testConvertFullAuthorToAndFromString(self): + TEST_AUTHOR = """ + + John Doe + john@example.com + http://www.google.com + """ + author = atom.core.parse(TEST_AUTHOR, atom.data.Author) + self.assertEqual(author.name.text, 'John Doe') + self.assertEqual(author.email.text, 'john@example.com') + self.assertEqual(author.uri.text, 'http://www.google.com') + + +class EmailTest(unittest.TestCase): + + def setUp(self): + self.email = atom.data.Email() + + def testEmailToAndFromString(self): + self.email.text = 'This is a test' + new_email = atom.core.parse(self.email.to_string(), atom.data.Email) + self.assertEqual(self.email.text, new_email.text) + self.assertEqual(self.email.extension_elements, + new_email.extension_elements) + + +class NameTest(unittest.TestCase): + + def setUp(self): + self.name = atom.data.Name() + + def testEmptyNameToAndFromStringShouldMatch(self): + string_from_name = self.name.ToString() + new_name = atom.core.XmlElementFromString(string_from_name, + atom.data.Name) + string_from_new_name = new_name.ToString() + self.assertEqual(string_from_name, string_from_new_name) + + def testText(self): + self.assert_(self.name.text is None) + self.name.text = 'Jeff Scudder' + self.assertEqual(self.name.text, 'Jeff Scudder') + new_name = atom.core.parse(self.name.to_string(), atom.data.Name) + self.assertEqual(new_name.text, self.name.text) + + def testExtensionElements(self): + self.name.extension_attributes['foo'] = 'bar' + self.assertEqual(self.name.extension_attributes['foo'], 'bar') + new_name = atom.core.parse(self.name.ToString(), atom.data.Name) + self.assertEqual(new_name.extension_attributes['foo'], 'bar') + + +class ExtensionElementTest(unittest.TestCase): + + def setUp(self): + self.ee = atom.data.ExtensionElement('foo') + self.EXTENSION_TREE = """ + + + John Doe + Bar + + + """ + + def testEmptyEEShouldProduceEmptyString(self): + pass + + def testEEParsesTreeCorrectly(self): + deep_tree = atom.core.xml_element_from_string(self.EXTENSION_TREE, + atom.data.ExtensionElement) + self.assertEqual(deep_tree.tag, 'feed') + self.assertEqual(deep_tree.namespace, 'http://www.w3.org/2005/Atom') + self.assert_(deep_tree.children[0].tag == 'author') + self.assert_(deep_tree.children[0].namespace == 'http://www.google.com') + self.assert_(deep_tree.children[0].children[0].tag == 'name') + self.assert_(deep_tree.children[0].children[0].namespace == + 'http://www.google.com') + self.assert_(deep_tree.children[0].children[0].text.strip() == 'John Doe') + self.assert_(deep_tree.children[0].children[0].children[0].text.strip() == + 'Bar') + foo = deep_tree.children[0].children[0].children[0] + self.assert_(foo.tag == 'foo') + self.assert_(foo.namespace == 'http://www.google.com') + self.assert_(foo.attributes['up'] == 'down') + self.assert_(foo.attributes['yes'] == 'no') + self.assert_(foo.children == []) + + def testEEToAndFromStringShouldMatch(self): + string_from_ee = self.ee.ToString() + new_ee = atom.core.xml_element_from_string(string_from_ee, + atom.data.ExtensionElement) + string_from_new_ee = new_ee.ToString() + self.assert_(string_from_ee == string_from_new_ee) + + deep_tree = atom.core.xml_element_from_string(self.EXTENSION_TREE, + atom.data.ExtensionElement) + string_from_deep_tree = deep_tree.ToString() + new_deep_tree = atom.core.xml_element_from_string(string_from_deep_tree, + atom.data.ExtensionElement) + string_from_new_deep_tree = new_deep_tree.ToString() + self.assert_(string_from_deep_tree == string_from_new_deep_tree) + + +class LinkTest(unittest.TestCase): + + def setUp(self): + self.link = atom.data.Link() + + def testLinkToAndFromString(self): + self.link.href = 'test href' + self.link.hreflang = 'english' + self.link.type = 'text/html' + self.link.extension_attributes['foo'] = 'bar' + self.assert_(self.link.href == 'test href') + self.assert_(self.link.hreflang == 'english') + self.assert_(self.link.type == 'text/html') + self.assert_(self.link.extension_attributes['foo'] == 'bar') + new_link = atom.core.parse(self.link.ToString(), atom.data.Link) + self.assert_(self.link.href == new_link.href) + self.assert_(self.link.type == new_link.type) + self.assert_(self.link.hreflang == new_link.hreflang) + self.assert_(self.link.extension_attributes['foo'] == + new_link.extension_attributes['foo']) + + def testLinkType(self): + test_link = atom.data.Link(type='text/html') + self.assertEqual(test_link.type, 'text/html') + + +class GeneratorTest(unittest.TestCase): + + def setUp(self): + self.generator = atom.data.Generator() + + def testGeneratorToAndFromString(self): + self.generator.uri = 'www.google.com' + self.generator.version = '1.0' + self.generator.extension_attributes['foo'] = 'bar' + self.assert_(self.generator.uri == 'www.google.com') + self.assert_(self.generator.version == '1.0') + self.assert_(self.generator.extension_attributes['foo'] == 'bar') + new_generator = atom.core.parse(self.generator.ToString(), atom.data.Generator) + self.assert_(self.generator.uri == new_generator.uri) + self.assert_(self.generator.version == new_generator.version) + self.assert_(self.generator.extension_attributes['foo'] == + new_generator.extension_attributes['foo']) + + +class TitleTest(unittest.TestCase): + + def setUp(self): + self.title = atom.data.Title() + + def testTitleToAndFromString(self): + self.title.type = 'text' + self.title.text = 'Less: <' + self.assert_(self.title.type == 'text') + self.assert_(self.title.text == 'Less: <') + new_title = atom.core.parse(str(self.title), atom.data.Title) + self.assert_(self.title.type == new_title.type) + self.assert_(self.title.text == new_title.text) + + +class SubtitleTest(unittest.TestCase): + + def setUp(self): + self.subtitle = atom.data.Subtitle() + + def testTitleToAndFromString(self): + self.subtitle.type = 'text' + self.subtitle.text = 'sub & title' + self.assert_(self.subtitle.type == 'text') + self.assert_(self.subtitle.text == 'sub & title') + new_subtitle = atom.core.parse(self.subtitle.ToString(), + atom.data.Subtitle) + self.assert_(self.subtitle.type == new_subtitle.type) + self.assert_(self.subtitle.text == new_subtitle.text) + + +class SummaryTest(unittest.TestCase): + + def setUp(self): + self.summary = atom.data.Summary() + + def testTitleToAndFromString(self): + self.summary.type = 'text' + self.summary.text = 'Less: <' + self.assert_(self.summary.type == 'text') + self.assert_(self.summary.text == 'Less: <') + new_summary = atom.core.parse(self.summary.ToString(), atom.data.Summary) + self.assert_(self.summary.type == new_summary.type) + self.assert_(self.summary.text == new_summary.text) + + +class CategoryTest(unittest.TestCase): + + def setUp(self): + self.category = atom.data.Category() + + def testCategoryToAndFromString(self): + self.category.term = 'x' + self.category.scheme = 'y' + self.category.label = 'z' + self.assert_(self.category.term == 'x') + self.assert_(self.category.scheme == 'y') + self.assert_(self.category.label == 'z') + new_category = atom.core.parse(self.category.to_string(), + atom.data.Category) + self.assert_(self.category.term == new_category.term) + self.assert_(self.category.scheme == new_category.scheme) + self.assert_(self.category.label == new_category.label) + + +class ContributorTest(unittest.TestCase): + + def setUp(self): + self.contributor = atom.data.Contributor() + + def testContributorToAndFromString(self): + self.contributor.name = atom.data.Name(text='J Scud') + self.contributor.email = atom.data.Email(text='nobody@nowhere') + self.contributor.uri = atom.data.Uri(text='http://www.google.com') + self.assert_(self.contributor.name.text == 'J Scud') + self.assert_(self.contributor.email.text == 'nobody@nowhere') + self.assert_(self.contributor.uri.text == 'http://www.google.com') + new_contributor = atom.core.parse(self.contributor.ToString(), + atom.data.Contributor) + self.assert_(self.contributor.name.text == new_contributor.name.text) + self.assert_(self.contributor.email.text == new_contributor.email.text) + self.assert_(self.contributor.uri.text == new_contributor.uri.text) + + +class IdTest(unittest.TestCase): + + def setUp(self): + self.my_id = atom.data.Id() + + def testIdToAndFromString(self): + self.my_id.text = 'my nifty id' + self.assert_(self.my_id.text == 'my nifty id') + new_id = atom.core.parse(self.my_id.ToString(), atom.data.Id) + self.assert_(self.my_id.text == new_id.text) + + +class IconTest(unittest.TestCase): + + def setUp(self): + self.icon = atom.data.Icon() + + def testIconToAndFromString(self): + self.icon.text = 'my picture' + self.assert_(self.icon.text == 'my picture') + new_icon = atom.core.parse(str(self.icon), atom.data.Icon) + self.assert_(self.icon.text == new_icon.text) + + +class LogoTest(unittest.TestCase): + + def setUp(self): + self.logo = atom.data.Logo() + + def testLogoToAndFromString(self): + self.logo.text = 'my logo' + self.assert_(self.logo.text == 'my logo') + new_logo = atom.core.parse(self.logo.ToString(), atom.data.Logo) + self.assert_(self.logo.text == new_logo.text) + + +class RightsTest(unittest.TestCase): + + def setUp(self): + self.rights = atom.data.Rights() + + def testContributorToAndFromString(self): + self.rights.text = 'you have the right to remain silent' + self.rights.type = 'text' + self.assert_(self.rights.text == 'you have the right to remain silent') + self.assert_(self.rights.type == 'text') + new_rights = atom.core.parse(self.rights.ToString(), atom.data.Rights) + self.assert_(self.rights.text == new_rights.text) + self.assert_(self.rights.type == new_rights.type) + + +class UpdatedTest(unittest.TestCase): + + def setUp(self): + self.updated = atom.data.Updated() + + def testUpdatedToAndFromString(self): + self.updated.text = 'my time' + self.assert_(self.updated.text == 'my time') + new_updated = atom.core.parse(self.updated.ToString(), atom.data.Updated) + self.assert_(self.updated.text == new_updated.text) + + +class PublishedTest(unittest.TestCase): + + def setUp(self): + self.published = atom.data.Published() + + def testPublishedToAndFromString(self): + self.published.text = 'pub time' + self.assert_(self.published.text == 'pub time') + new_published = atom.core.parse(self.published.ToString(), + atom.data.Published) + self.assert_(self.published.text == new_published.text) + + +class FeedEntryParentTest(unittest.TestCase): + """The test accesses hidden methods in atom.FeedEntryParent""" + + def testConvertToAndFromElementTree(self): + # Use entry because FeedEntryParent doesn't have a tag or namespace. + original = atom.data.Entry() + copy = atom.data.FeedEntryParent() + + original.author.append(atom.data.Author(name=atom.data.Name( + text='J Scud'))) + self.assert_(original.author[0].name.text == 'J Scud') + self.assert_(copy.author == []) + + original.id = atom.data.Id(text='test id') + self.assert_(original.id.text == 'test id') + self.assert_(copy.id is None) + + copy._harvest_tree(original._to_tree()) + self.assert_(original.author[0].name.text == copy.author[0].name.text) + self.assert_(original.id.text == copy.id.text) + + +class EntryTest(unittest.TestCase): + + def testConvertToAndFromString(self): + entry = atom.data.Entry() + entry.author.append(atom.data.Author(name=atom.data.Name(text='js'))) + entry.title = atom.data.Title(text='my test entry') + self.assert_(entry.author[0].name.text == 'js') + self.assert_(entry.title.text == 'my test entry') + new_entry = atom.core.parse(entry.ToString(), atom.data.Entry) + self.assert_(new_entry.author[0].name.text == 'js') + self.assert_(new_entry.title.text == 'my test entry') + + def testEntryCorrectlyConvertsActualData(self): + entry = atom.core.parse(XML_ENTRY_1, atom.data.Entry) + self.assert_(entry.category[0].scheme == + 'http://base.google.com/categories/itemtypes') + self.assert_(entry.category[0].term == 'products') + self.assert_(entry.id.text == ' http://www.google.com/test/id/url ') + self.assert_(entry.title.text == 'Testing 2000 series laptop') + self.assert_(entry.title.type == 'text') + self.assert_(entry.content.type == 'xhtml') + #TODO check all other values for the test entry + + def testEntryWithFindElementAndFindAttribute(self): + entry = atom.data.Entry() + entry.link.append(atom.data.Link(rel='self', href='x')) + entry.link.append(atom.data.Link(rel='foo', href='y')) + entry.link.append(atom.data.Link(rel='edit',href='z')) + + self_link = None + edit_link = None + + for link in entry.get_elements('link', 'http://www.w3.org/2005/Atom'): + ignored1, ignored2, attributes = link.__class__._get_rules(2) + if link.get_attributes('rel')[0].value == 'self': + self_link = link.get_attributes('href')[0].value + elif link.get_attributes('rel')[0].value == 'edit': + edit_link = link.get_attributes('href')[0].value + + self.assertEqual(self_link, 'x') + self.assertEqual(edit_link, 'z') + + def testAppControl(self): + TEST_BASE_ENTRY = """ + + + Testing 2000 series laptop + +
A Testing Laptop
+
+ + yes + + + + Computer + Laptop + testing laptop + products +
""" + entry = atom.core.parse(TEST_BASE_ENTRY, atom.data.Entry) + self.assertEquals(entry.control.draft.text, 'yes') + self.assertEquals(len(entry.control.extension_elements), 1) + self.assertEquals(entry.control.extension_elements[0].tag, 'disapproved') + + +class ControlTest(unittest.TestCase): + + def testVersionRuleGeneration(self): + self.assertEqual(atom.core._get_qname(atom.data.Control, 1), + '{http://purl.org/atom/app#}control') + self.assertEqual(atom.data.Control._get_rules(1)[0], + '{http://purl.org/atom/app#}control') + + + def testVersionedControlFromString(self): + xml_v1 = """ + no""" + xml_v2 = """ + no""" + control_v1 = atom.core.parse(xml_v1, atom.data.Control, 1) + control_v2 = atom.core.parse(xml_v2, atom.data.Control, 2) + self.assert_(control_v1 is not None) + self.assert_(control_v2 is not None) + # Parsing with mismatched version numbers should return None. + self.assert_(atom.core.parse(xml_v1, atom.data.Control, 2) is None) + self.assert_(atom.core.parse(xml_v2, atom.data.Control, 1) is None) + + def testConvertToAndFromString(self): + control = atom.data.Control() + control.text = 'some text' + control.draft = atom.data.Draft(text='yes') + self.assertEquals(control.draft.text, 'yes') + self.assertEquals(control.text, 'some text') + self.assert_(isinstance(control.draft, atom.data.Draft)) + new_control = atom.core.parse(str(control), atom.data.Control) + self.assertEquals(control.draft.text, new_control.draft.text) + self.assertEquals(control.text, new_control.text) + self.assert_(isinstance(new_control.draft, atom.data.Draft)) + + +class DraftTest(unittest.TestCase): + + def testConvertToAndFromString(self): + draft = atom.data.Draft() + draft.text = 'maybe' + draft.extension_attributes['foo'] = 'bar' + self.assertEquals(draft.text, 'maybe') + self.assertEquals(draft.extension_attributes['foo'], 'bar') + new_draft = atom.core.parse(str(draft), atom.data.Draft) + self.assertEquals(draft.text, new_draft.text) + self.assertEquals(draft.extension_attributes['foo'], + new_draft.extension_attributes['foo']) + + + +class SourceTest(unittest.TestCase): + + def testConvertToAndFromString(self): + source = atom.data.Source() + source.author.append(atom.data.Author(name=atom.data.Name(text='js'))) + source.title = atom.data.Title(text='my test source') + source.generator = atom.data.Generator(text='gen') + self.assert_(source.author[0].name.text == 'js') + self.assert_(source.title.text == 'my test source') + self.assert_(source.generator.text == 'gen') + new_source = atom.core.parse(source.ToString(), atom.data.Source) + self.assert_(new_source.author[0].name.text == 'js') + self.assert_(new_source.title.text == 'my test source') + self.assert_(new_source.generator.text == 'gen') + + +class FeedTest(unittest.TestCase): + + def testConvertToAndFromString(self): + feed = atom.data.Feed() + feed.author.append(atom.data.Author(name=atom.data.Name(text='js'))) + feed.title = atom.data.Title(text='my test source') + feed.generator = atom.data.Generator(text='gen') + feed.entry.append(atom.data.Entry(author=[atom.data.Author( + name=atom.data.Name(text='entry author'))])) + self.assert_(feed.author[0].name.text == 'js') + self.assert_(feed.title.text == 'my test source') + self.assert_(feed.generator.text == 'gen') + self.assert_(feed.entry[0].author[0].name.text == 'entry author') + new_feed = atom.core.parse(feed.ToString(), atom.data.Feed) + self.assert_(new_feed.author[0].name.text == 'js') + self.assert_(new_feed.title.text == 'my test source') + self.assert_(new_feed.generator.text == 'gen') + self.assert_(new_feed.entry[0].author[0].name.text == 'entry author') + + def testPreserveEntryOrder(self): + test_xml = ( + '' + '0' + '1' + 'Testing Order' + '2' + '3' + '4' + '5' + '6' + '7' + '' + '8' + 'feed_id' + '9' + '') + feed = atom.core.parse(test_xml, atom.data.Feed) + for i in xrange(10): + self.assertEqual(feed.entry[i].id.text, str(i)) + feed = atom.core.parse(feed.ToString(), atom.data.Feed) + for i in xrange(10): + self.assertEqual(feed.entry[i].id.text, str(i)) + temp = feed.entry[3] + feed.entry[3] = feed.entry[4] + feed.entry[4] = temp + self.assert_(feed.entry[2].id.text == '2') + self.assert_(feed.entry[3].id.text == '4') + self.assert_(feed.entry[4].id.text == '3') + self.assert_(feed.entry[5].id.text == '5') + feed = atom.core.parse(feed.to_string(), atom.data.Feed) + self.assertEqual(feed.entry[2].id.text, '2') + self.assertEqual(feed.entry[3].id.text, '4') + self.assertEqual(feed.entry[4].id.text, '3') + self.assertEqual(feed.entry[5].id.text, '5') + + +class ContentEntryParentTest(unittest.TestCase): + """The test accesses hidden methods in atom.FeedEntryParent""" + + def setUp(self): + self.content = atom.data.Content() + + def testConvertToAndFromElementTree(self): + self.content.text = 'my content' + self.content.type = 'text' + self.content.src = 'my source' + self.assert_(self.content.text == 'my content') + self.assert_(self.content.type == 'text') + self.assert_(self.content.src == 'my source') + new_content = atom.core.parse(self.content.ToString(), atom.data.Content) + self.assert_(self.content.text == new_content.text) + self.assert_(self.content.type == new_content.type) + self.assert_(self.content.src == new_content.src) + + def testContentConstructorSetsSrc(self): + new_content = atom.data.Content(src='abcd') + self.assertEquals(new_content.src, 'abcd') + + def testContentFromString(self): + content_xml = '' + content = atom.core.parse(content_xml, atom.data.Content) + self.assert_(isinstance(content, atom.data.Content)) + self.assertEqual(content.type, 'test') + + +class PreserveUnkownElementTest(unittest.TestCase): + """Tests correct preservation of XML elements which are non Atom""" + + def setUp(self): + GBASE_ATTRIBUTE_FEED = """ + + http://www.google.com/base/feeds/attributes + 2006-11-01T20:35:59.578Z + + + histogram for query: [item type:jobs] + + + GoogleBase + 16 + 1 + 16 + + http://www.google.com/base/feeds/attributes/job+industy + 2006-11-01T20:36:00.100Z + job industry(text) + Attribute"job industry" of type text. + + + it internet + healthcare + information technology + accounting + clerical and administrative + other + sales and sales management + information systems + engineering and architecture + sales + + + """ + self.feed = atom.core.parse(GBASE_ATTRIBUTE_FEED, + atom.data.Feed) + + def testCaptureOpenSearchElements(self): + self.assertEquals(self.feed.FindExtensions('totalResults')[0].tag, + 'totalResults') + self.assertEquals(self.feed.FindExtensions('totalResults')[0].namespace, + 'http://a9.com/-/spec/opensearchrss/1.0/') + open_search_extensions = self.feed.FindExtensions( + namespace='http://a9.com/-/spec/opensearchrss/1.0/') + self.assertEquals(len(open_search_extensions), 3) + for element in open_search_extensions: + self.assertEquals(element.namespace, + 'http://a9.com/-/spec/opensearchrss/1.0/') + + def testCaptureMetaElements(self): + meta_elements = self.feed.entry[0].FindExtensions( + namespace='http://base.google.com/ns-metadata/1.0') + self.assertEquals(len(meta_elements), 1) + self.assertEquals(meta_elements[0].attributes['count'], '4416629') + self.assertEquals(len(meta_elements[0].children), 10) + + def testCaptureMetaChildElements(self): + meta_elements = self.feed.entry[0].FindExtensions( + namespace='http://base.google.com/ns-metadata/1.0') + meta_children = meta_elements[0].FindChildren( + namespace='http://base.google.com/ns-metadata/1.0') + self.assertEquals(len(meta_children), 10) + for child in meta_children: + self.assertEquals(child.tag, 'value') + + +class LinkFinderTest(unittest.TestCase): + + def setUp(self): + self.entry = atom.core.parse(XML_ENTRY_1, atom.data.Entry) + + def testLinkFinderGetsLicenseLink(self): + self.assert_(isinstance(self.entry.GetLink('license'), atom.data.Link)) + self.assert_(isinstance(self.entry.GetLicenseLink(), atom.data.Link)) + self.assertEquals(self.entry.GetLink('license').href, + 'http://creativecommons.org/licenses/by-nc/2.5/rdf') + self.assertEquals(self.entry.get_license_link().href, + 'http://creativecommons.org/licenses/by-nc/2.5/rdf') + self.assertEquals(self.entry.GetLink('license').rel, 'license') + self.assertEquals(self.entry.FindLicenseLink(), + 'http://creativecommons.org/licenses/by-nc/2.5/rdf') + + def testLinkFinderGetsAlternateLink(self): + self.assert_(isinstance(self.entry.GetLink('alternate'), + atom.data.Link)) + self.assertEquals(self.entry.GetLink('alternate').href, + 'http://www.provider-host.com/123456789') + self.assertEquals(self.entry.FindAlternateLink(), + 'http://www.provider-host.com/123456789') + self.assertEquals(self.entry.GetLink('alternate').rel, 'alternate') + + +class AtomBaseTest(unittest.TestCase): + + def testAtomBaseConvertsExtensions(self): + # Using Id because it adds no additional members. + atom_base = atom.data.Id() + extension_child = atom.data.ExtensionElement('foo', + namespace='http://ns0.com') + extension_grandchild = atom.data.ExtensionElement('bar', + namespace='http://ns0.com') + extension_child.children.append(extension_grandchild) + atom_base.extension_elements.append(extension_child) + self.assertEquals(len(atom_base.extension_elements), 1) + self.assertEquals(len(atom_base.extension_elements[0].children), 1) + self.assertEquals(atom_base.extension_elements[0].tag, 'foo') + self.assertEquals(atom_base.extension_elements[0].children[0].tag, 'bar') + + element_tree = atom_base._to_tree() + self.assert_(element_tree.find('{http://ns0.com}foo') is not None) + self.assert_(element_tree.find('{http://ns0.com}foo').find( + '{http://ns0.com}bar') is not None) + + +class UtfParsingTest(unittest.TestCase): + + def setUp(self): + self.test_xml = u""" + + http://www.google.com/test/id/url + αλφα +""" + + def testMemberStringEncoding(self): + atom_entry = atom.core.parse(self.test_xml, atom.data.Entry) + self.assert_(isinstance(atom_entry.title.type, unicode)) + self.assertEqual(atom_entry.title.type, u'\u03B1\u03BB\u03C6\u03B1') + self.assertEqual(atom_entry.title.text, u'\u03B1\u03BB\u03C6\u03B1') + + # Setting object members to unicode strings is supported. + atom_entry.title.type = u'\u03B1\u03BB\u03C6\u03B1' + xml = atom_entry.ToString() + # The unicode code points should be converted to XML escaped sequences. + self.assert_('αλφα' in xml) + + # Make sure that we can use plain text when MEMBER_STRING_ENCODING is utf8 + atom_entry.title.type = "plain text" + atom_entry.title.text = "more text" + xml = atom_entry.ToString() + self.assert_("plain text" in xml) + self.assert_("more text" in xml) + + # Test something else than utf-8 + atom.core.STRING_ENCODING = 'iso8859_7' + atom_entry = atom.core.parse(self.test_xml, atom.data.Entry) + self.assert_(atom_entry.title.type == u'\u03B1\u03BB\u03C6\u03B1') + self.assert_(atom_entry.title.text == u'\u03B1\u03BB\u03C6\u03B1') + + # Test using unicode strings directly for object members + atom_entry = atom.core.parse(self.test_xml, atom.data.Entry) + self.assert_(atom_entry.title.type == u'\u03B1\u03BB\u03C6\u03B1') + self.assert_(atom_entry.title.text == u'\u03B1\u03BB\u03C6\u03B1') + + # Make sure that we can use plain text when MEMBER_STRING_ENCODING is + # unicode + atom_entry.title.type = "plain text" + atom_entry.title.text = "more text" + xml = atom_entry.ToString() + self.assert_("plain text" in xml) + self.assert_("more text" in xml) + + def testConvertExampleXML(self): + GBASE_STRING_ENCODING_ENTRY = """ + + http://www.google.com/base/feeds/snippets/1749 + 2007-12-09T03:13:07.000Z + 2008-01-07T03:26:46.000Z + + Digital Camera Cord Fits DSC-R1 S40 + SONY \xC2\xB7 Cybershot Digital Camera Usb + Cable DESCRIPTION This is a 2.5 USB 2.0 A to Mini B (5 Pin) + high quality digital camera cable used for connecting your + Sony Digital Cameras and Camcoders. Backward + Compatible with USB 2.0, 1.0 and 1.1. Fully ... + + + + eBay + + Products + EN + US + 0.99 usd + http://www.example.com/pict/27_1.jpg + Cameras & Photo>Digital Camera + Accessories>Cables + Cords & USB Cables + 11729 + 270195049057 + 2008-02-06T03:26:46Z + """ + try: + entry = atom.core.parse(GBASE_STRING_ENCODING_ENTRY, + atom.data.Entry) + except UnicodeDecodeError: + self.fail('Error when converting XML') + + +class VersionedXmlTest(unittest.TestCase): + + def test_monoversioned_parent_with_multiversioned_child(self): + v2_rules = atom.data.Entry._get_rules(2) + self.assert_('{http://www.w3.org/2007/app}control' in v2_rules[1]) + + entry_xml = """ + + yes + + """ + + entry = e = atom.core.parse(entry_xml, atom.data.Entry, version=2) + self.assert_(entry is not None) + self.assert_(entry.control is not None) + self.assert_(entry.control.draft is not None) + self.assertEqual(entry.control.draft.text, 'yes') + + # v1 rules should not parse v2 XML. + entry = e = atom.core.parse(entry_xml, atom.data.Entry, version=1) + self.assert_(entry is not None) + self.assert_(entry.control is None) + + # The default version should be v1. + entry = e = atom.core.parse(entry_xml, atom.data.Entry) + self.assert_(entry is not None) + self.assert_(entry.control is None) + + +class DataModelSanityTest(unittest.TestCase): + + def test_xml_elements(self): + conf.check_data_classes(self, [ + atom.data.Feed, atom.data.Source, atom.data.Logo, + atom.data.Control, atom.data.Draft, atom.data.Generator]) + + +def suite(): + return conf.build_suite([AuthorTest, EmailTest, NameTest, + ExtensionElementTest, LinkTest, GeneratorTest, + TitleTest, SubtitleTest, SummaryTest, IdTest, + IconTest, LogoTest, RightsTest, UpdatedTest, + PublishedTest, FeedEntryParentTest, EntryTest, + ContentEntryParentTest, PreserveUnkownElementTest, + FeedTest, LinkFinderTest, AtomBaseTest, + UtfParsingTest, VersionedXmlTest, + DataModelSanityTest]) + + +if __name__ == '__main__': + unittest.main() diff -Nru python-gdata-1.2.4/tests/atom_tests/http_core_test.py python-gdata-2.0.8/tests/atom_tests/http_core_test.py --- python-gdata-1.2.4/tests/atom_tests/http_core_test.py 2009-01-12 23:51:08.000000000 +0000 +++ python-gdata-2.0.8/tests/atom_tests/http_core_test.py 2010-01-29 01:43:15.000000000 +0000 @@ -35,22 +35,31 @@ self.assert_(uri.port is None) self.assert_(uri.path == '/test') self.assert_(uri.query == {'z':'bar', 'q':'foo'}) + + def test_static_parse_uri(self): + uri = atom.http_core.Uri.parse_uri('http://test.com/?token=foo&x=1') + self.assertEqual(uri.scheme, 'http') + self.assertEqual(uri.host, 'test.com') + self.assert_(uri.port is None) + self.assertEqual(uri.query, {'token':'foo', 'x':'1'}) def test_modify_request_no_request(self): uri = atom.http_core.parse_uri('http://www.google.com/test?q=foo&z=bar') request = uri.modify_request() - self.assert_(request.scheme == 'http') - self.assert_(request.host == 'www.google.com') + self.assert_(request.uri.scheme == 'http') + self.assert_(request.uri.host == 'www.google.com') # If no port was provided, the HttpClient is responsible for determining # the default. - self.assert_(request.port is None) - self.assert_(request.uri.startswith('/test?')) + self.assert_(request.uri.port is None) + self.assert_(request.uri.path.startswith('/test')) + self.assertEqual(request.uri.query, {'z': 'bar', 'q': 'foo'}) self.assert_(request.method is None) self.assert_(request.headers == {}) self.assert_(request._body_parts == []) def test_modify_request_http_with_set_port(self): - request = atom.http_core.HttpRequest(port=8080, method='POST') + request = atom.http_core.HttpRequest(uri=atom.http_core.Uri(port=8080), + method='POST') request.add_body_part('hello', 'text/plain') uri = atom.http_core.parse_uri('//example.com/greet') self.assert_(uri.query == {}) @@ -58,27 +67,28 @@ self.assert_(uri.host == 'example.com') self.assert_(uri.port is None) - uri.modify_request(request) - self.assert_(request.host == 'example.com') + uri.ModifyRequest(request) + self.assert_(request.uri.host == 'example.com') # If no scheme was provided, the URI will not add one, but the HttpClient # should assume the request is HTTP. - self.assert_(request.scheme is None) - self.assert_(request.port == 8080) - self.assert_(request.uri == '/greet') + self.assert_(request.uri.scheme is None) + self.assert_(request.uri.port == 8080) + self.assert_(request.uri.path == '/greet') self.assert_(request.method == 'POST') self.assert_(request.headers['Content-Type'] == 'text/plain') def test_modify_request_use_default_ssl_port(self): - request = atom.http_core.HttpRequest(scheme='https', method='PUT') + request = atom.http_core.HttpRequest( + uri=atom.http_core.Uri(scheme='https'), method='PUT') request.add_body_part('hello', 'text/plain') uri = atom.http_core.parse_uri('/greet') uri.modify_request(request) - self.assert_(request.host is None) - self.assert_(request.scheme == 'https') + self.assert_(request.uri.host is None) + self.assert_(request.uri.scheme == 'https') # If no port was provided, leave the port as None, it is up to the # HttpClient to set the correct default port. - self.assert_(request.port is None) - self.assert_(request.uri == '/greet') + self.assert_(request.uri.port is None) + self.assert_(request.uri.path == '/greet') self.assert_(request.method == 'PUT') self.assert_(request.headers['Content-Type'] == 'text/plain') self.assert_(len(request._body_parts) == 1) @@ -121,15 +131,16 @@ 'this is a test'))) def test_copy(self): - request = atom.http_core.HttpRequest(scheme='https', host='www.google.com', + request = atom.http_core.HttpRequest( + uri=atom.http_core.Uri(scheme='https', host='www.google.com'), method='POST', headers={'test':'1', 'ok':'yes'}) request.add_body_part('body1', 'text/plain') request.add_body_part('body2', 'text/html') copied = request._copy() - self.assert_(request.scheme == copied.scheme) - self.assert_(request.host == copied.host) + self.assert_(request.uri.scheme == copied.uri.scheme) + self.assert_(request.uri.host == copied.uri.host) self.assert_(request.method == copied.method) - self.assert_(request.uri == copied.uri) + self.assert_(request.uri.path == copied.uri.path) self.assert_(request.headers == copied.headers) self.assert_(request._body_parts == copied._body_parts) copied.headers['test'] = '2' diff -Nru python-gdata-1.2.4/tests/atom_tests/http_interface_test.py python-gdata-2.0.8/tests/atom_tests/http_interface_test.py --- python-gdata-1.2.4/tests/atom_tests/http_interface_test.py 2008-12-03 18:55:05.000000000 +0000 +++ python-gdata-2.0.8/tests/atom_tests/http_interface_test.py 2009-10-09 01:25:16.000000000 +0100 @@ -28,15 +28,19 @@ def testConstructorWithStrings(self): resp = atom.http_interface.HttpResponse(body='Hi there!', status=200, reason='OK', headers={'Content-Length':'9'}) - self.assert_(resp.read(amt=1) == 'H') - self.assert_(resp.read(amt=2) == 'i ') - self.assert_(resp.read() == 'there!') - self.assert_(resp.read() == '') - self.assert_(resp.reason == 'OK') - self.assert_(resp.status == 200) - self.assert_(resp.getheader('Content-Length') == '9') + self.assertEqual(resp.read(amt=1), 'H') + self.assertEqual(resp.read(amt=2), 'i ') + self.assertEqual(resp.read(), 'there!') + self.assertEqual(resp.read(), '') + self.assertEqual(resp.reason, 'OK') + self.assertEqual(resp.status, 200) + self.assertEqual(resp.getheader('Content-Length'), '9') self.assert_(resp.getheader('Missing') is None) - self.assert_(resp.getheader('Missing', default='yes') == 'yes') + self.assertEqual(resp.getheader('Missing', default='yes'), 'yes') + + +def suite(): + return unittest.TestSuite((unittest.makeSuite(HttpResponseTest,'test'),)) if __name__ == '__main__': diff -Nru python-gdata-1.2.4/tests/atom_tests/mock_client_test.py python-gdata-2.0.8/tests/atom_tests/mock_client_test.py --- python-gdata-1.2.4/tests/atom_tests/mock_client_test.py 2008-09-08 21:43:00.000000000 +0100 +++ python-gdata-2.0.8/tests/atom_tests/mock_client_test.py 2009-06-18 22:06:05.000000000 +0100 @@ -15,7 +15,7 @@ # limitations under the License. -__author__ = 'api.jscudder (Jeff Scudder)' +__author__ = 'j.s@google.com (Jeff Scudder)' import unittest @@ -67,5 +67,10 @@ pass +def suite(): + return unittest.TestSuite( + (unittest.makeSuite(MockHttpClientUnitTest,'test'),)) + + if __name__ == '__main__': unittest.main() diff -Nru python-gdata-1.2.4/tests/atom_tests/mock_http_core_test.py python-gdata-2.0.8/tests/atom_tests/mock_http_core_test.py --- python-gdata-1.2.4/tests/atom_tests/mock_http_core_test.py 2009-01-12 23:51:28.000000000 +0000 +++ python-gdata-2.0.8/tests/atom_tests/mock_http_core_test.py 2009-12-17 20:41:38.000000000 +0000 @@ -34,8 +34,8 @@ def test_echo_response(self): client = atom.mock_http_core.EchoHttpClient() # Send a bare-bones POST request. - request = atom.http_core.HttpRequest(host='www.jeffscudder.com', - method='POST', uri='/') + request = atom.http_core.HttpRequest(method='POST', + uri=atom.http_core.Uri(host='www.jeffscudder.com', path='/')) request.add_body_part('hello world!', 'text/plain') response = client.request(request) self.assert_(response.getheader('Echo-Host') == 'www.jeffscudder.com:None') @@ -46,11 +46,20 @@ 'hello world!'))) self.assert_(response.getheader('Content-Type') == 'text/plain') self.assert_(response.read() == 'hello world!') + + # Test a path of None should default to / + request = atom.http_core.HttpRequest(method='POST', + uri=atom.http_core.Uri(host='www.jeffscudder.com', path=None)) + response = client.request(request) + self.assert_(response.getheader('Echo-Host') == 'www.jeffscudder.com:None') + self.assert_(response.getheader('Echo-Method') == 'POST') + self.assert_(response.getheader('Echo-Uri') == '/') # Send a multipart request. - request = atom.http_core.HttpRequest(scheme='https', - host='www.jeffscudder.com', port=8080, method='POST', - uri='/multipart?test=true&happy=yes', + request = atom.http_core.HttpRequest(method='POST', + uri=atom.http_core.Uri(scheme='https', host='www.jeffscudder.com', + port=8080, path='/multipart', + query={'test': 'true', 'happy': 'yes'}), headers={'Authorization':'Test xyzzy', 'Testing':'True'}) request.add_body_part('start', 'text/plain') request.add_body_part(StringIO.StringIO('hi'), @@ -103,8 +112,11 @@ response = self.client.request(request) self.client._save_recordings('test_save_and_load_recordings') self.client._recordings = [] - response = self.client.request(request) - self.assert_(response is None) + try: + response = self.client.request(request) + self.fail('There should be no recording for this request.') + except atom.mock_http_core.NoRecordingFound: + pass self.client._load_recordings('test_save_and_load_recordings') response = self.client.request(request) self.assert_(response.status == 200) @@ -123,7 +135,58 @@ self.assert_(response.reason == 'OK') self.assert_(response.getheader('server') == 'gws') body = response.read() - self.assert_(body.startswith('')) + self.assert_(body.startswith('')) + + def test_match_request(self): + x = atom.http_core.HttpRequest('http://example.com/', 'GET') + y = atom.http_core.HttpRequest('http://example.com/', 'GET') + self.assert_(atom.mock_http_core._match_request(x, y)) + y = atom.http_core.HttpRequest('http://example.com/', 'POST') + self.assert_(not atom.mock_http_core._match_request(x, y)) + y = atom.http_core.HttpRequest('http://example.com/1', 'GET') + self.assert_(not atom.mock_http_core._match_request(x, y)) + y = atom.http_core.HttpRequest('http://example.com/?gsessionid=1', 'GET') + self.assert_(not atom.mock_http_core._match_request(x, y)) + y = atom.http_core.HttpRequest('http://example.com/?start_index=1', 'GET') + self.assert_(atom.mock_http_core._match_request(x, y)) + x = atom.http_core.HttpRequest('http://example.com/?gsessionid=1', 'GET') + y = atom.http_core.HttpRequest('http://example.com/?gsessionid=1', 'GET') + self.assert_(atom.mock_http_core._match_request(x, y)) + y = atom.http_core.HttpRequest('http://example.com/?gsessionid=2', 'GET') + self.assert_(not atom.mock_http_core._match_request(x, y)) + y = atom.http_core.HttpRequest('http://example.com/', 'GET') + self.assert_(not atom.mock_http_core._match_request(x, y)) + + def test_use_named_sessions(self): + self.client._delete_recordings('mock_http_test.test_use_named_sessions') + self.client.use_cached_session('mock_http_test.test_use_named_sessions', + atom.mock_http_core.EchoHttpClient()) + request = atom.http_core.HttpRequest('http://example.com', 'GET') + response = self.client.request(request) + self.assertEqual(response.getheader('Echo-Method'), 'GET') + self.assertEqual(response.getheader('Echo-Host'), 'example.com:None') + # We will insert a Cache-Marker header to indicate that this is a + # recorded response, but initially it should not be present. + self.assertEqual(response.getheader('Cache-Marker'), None) + # Modify the recorded response to allow us to identify a cached result + # from an echoed result. We need to be able to check to see if this + # came from a recording. + self.assert_('Cache-Marker' not in self.client._recordings[0][1]._headers) + self.client._recordings[0][1]._headers['Cache-Marker'] = '1' + self.assert_('Cache-Marker' in self.client._recordings[0][1]._headers) + # Save the recorded responses. + self.client.close_session() + + # Create a new client, and have it use the recorded session. + client = atom.mock_http_core.MockHttpClient() + client.use_cached_session('mock_http_test.test_use_named_sessions', + atom.mock_http_core.EchoHttpClient()) + # Make the same request, which should use the recorded result. + response = client.request(request) + self.assertEqual(response.getheader('Echo-Method'), 'GET') + self.assertEqual(response.getheader('Echo-Host'), 'example.com:None') + # We should now see the cache marker since the response is replayed. + self.assertEqual(response.getheader('Cache-Marker'), '1') def suite(): diff -Nru python-gdata-1.2.4/tests/atom_tests/mock_http_test.py python-gdata-2.0.8/tests/atom_tests/mock_http_test.py --- python-gdata-1.2.4/tests/atom_tests/mock_http_test.py 2008-08-25 23:16:29.000000000 +0100 +++ python-gdata-2.0.8/tests/atom_tests/mock_http_test.py 2009-06-18 22:08:19.000000000 +0100 @@ -15,7 +15,7 @@ # limitations under the License. -__author__ = 'api.jscudder (Jeff Scudder)' +__author__ = 'j.s@google.com (Jeff Scudder)' import unittest @@ -66,6 +66,9 @@ except atom.mock_http.NoRecordingFound: pass +def suite(): + return unittest.TestSuite( + (unittest.makeSuite(MockHttpClientUnitTest,'test'),)) if __name__ == '__main__': unittest.main() diff -Nru python-gdata-1.2.4/tests/atom_tests/service_test.py python-gdata-2.0.8/tests/atom_tests/service_test.py --- python-gdata-1.2.4/tests/atom_tests/service_test.py 2008-09-06 00:01:53.000000000 +0100 +++ python-gdata-2.0.8/tests/atom_tests/service_test.py 2009-06-18 18:33:47.000000000 +0100 @@ -14,19 +14,15 @@ # See the License for the specific language governing permissions and # limitations under the License. -__author__ = 'jscudder@google.com (Jeff Scudder)' +__author__ = 'j.s@google.com (Jeff Scudder)' import unittest import atom.service +import atom.mock_http_core +import gdata.test_config as conf class AtomServiceUnitTest(unittest.TestCase): - def setUp(self): - pass - - def tearDown(self): - pass - def testBuildUriWithNoParams(self): x = atom.service.BuildUri('/base/feeds/snippets') self.assert_(x == '/base/feeds/snippets') @@ -61,9 +57,9 @@ self.assert_(x.index('bq=digital camera') != -1) def testParseHttpUrl(self): - as = atom.service.AtomService('code.google.com') - self.assertEquals(as.server, 'code.google.com') - (host, port, ssl, path) = atom.service.ProcessUrl(as, + atom_service = atom.service.AtomService('code.google.com') + self.assertEquals(atom_service.server, 'code.google.com') + (host, port, ssl, path) = atom.service.ProcessUrl(atom_service, 'http://www.google.com/service/subservice?name=value') self.assertEquals(ssl, False) @@ -72,9 +68,9 @@ self.assertEquals(path, '/service/subservice?name=value') def testParseHttpUrlWithPort(self): - as = atom.service.AtomService('code.google.com') - self.assertEquals(as.server, 'code.google.com') - (host, port, ssl, path) = atom.service.ProcessUrl(as, + atom_service = atom.service.AtomService('code.google.com') + self.assertEquals(atom_service.server, 'code.google.com') + (host, port, ssl, path) = atom.service.ProcessUrl(atom_service, 'http://www.google.com:12/service/subservice?name=value&newname=newvalue') self.assertEquals(ssl, False) @@ -85,9 +81,9 @@ self.assert_(path.find('newname=newvalue') >= len('/service/subservice?')) def testParseHttpsUrl(self): - as = atom.service.AtomService('code.google.com') - self.assertEquals(as.server, 'code.google.com') - (host, port, ssl, path) = atom.service.ProcessUrl(as, + atom_service = atom.service.AtomService('code.google.com') + self.assertEquals(atom_service.server, 'code.google.com') + (host, port, ssl, path) = atom.service.ProcessUrl(atom_service, 'https://www.google.com/service/subservice?name=value&newname=newvalue') self.assertEquals(ssl, True) @@ -98,9 +94,9 @@ self.assert_(path.find('newname=newvalue') >= len('/service/subservice?')) def testParseHttpsUrlWithPort(self): - as = atom.service.AtomService('code.google.com') - self.assertEquals(as.server, 'code.google.com') - (host, port, ssl, path) = atom.service.ProcessUrl(as, + atom_service = atom.service.AtomService('code.google.com') + self.assertEquals(atom_service.server, 'code.google.com') + (host, port, ssl, path) = atom.service.ProcessUrl(atom_service, 'https://www.google.com:13981/service/subservice?name=value&newname=newvalue') self.assertEquals(ssl, True) @@ -145,6 +141,22 @@ self.assertEquals(ssl, True) self.assert_(uri.startswith('/base/feeds/items')) + def testHostHeaderContainsNonDefaultPort(self): + client = atom.service.AtomService() + client.http_client.v2_http_client = atom.mock_http_core.EchoHttpClient() + response = client.Get('http://example.com') + self.assertEqual(response.getheader('Echo-Host'), 'example.com:None') + response = client.Get('https://example.com') + self.assertEqual(response.getheader('Echo-Host'), 'example.com:None') + response = client.Get('https://example.com:8080') + self.assertEqual(response.getheader('Echo-Host'), 'example.com:8080') + response = client.Get('http://example.com:1234') + self.assertEqual(response.getheader('Echo-Host'), 'example.com:1234') + + +def suite(): + return conf.build_suite([AtomServiceUnitTest]) + if __name__ == '__main__': unittest.main() diff -Nru python-gdata-1.2.4/tests/atom_tests/token_store_test.py python-gdata-2.0.8/tests/atom_tests/token_store_test.py --- python-gdata-1.2.4/tests/atom_tests/token_store_test.py 2008-09-11 23:26:38.000000000 +0100 +++ python-gdata-2.0.8/tests/atom_tests/token_store_test.py 2009-06-18 22:10:34.000000000 +0100 @@ -15,7 +15,7 @@ # limitations under the License. -__author__ = 'api.jscudder (Jeff Scudder)' +__author__ = 'j.s@google.com (Jeff Scudder)' import unittest @@ -70,5 +70,9 @@ atom.http_interface.GenericToken)) +def suite(): + return unittest.TestSuite((unittest.makeSuite(TokenStoreTest,'test'),)) + + if __name__ == '__main__': unittest.main() diff -Nru python-gdata-1.2.4/tests/atom_tests/url_test.py python-gdata-2.0.8/tests/atom_tests/url_test.py --- python-gdata-1.2.4/tests/atom_tests/url_test.py 2008-12-03 18:54:49.000000000 +0000 +++ python-gdata-2.0.8/tests/atom_tests/url_test.py 2009-10-09 01:24:59.000000000 +0100 @@ -15,11 +15,12 @@ # limitations under the License. -__author__ = 'api.jscudder (Jeff Scudder)' +__author__ = 'j.s@google.com (Jeff Scudder)' import unittest import atom.url +import gdata.test_config as conf class UrlTest(unittest.TestCase): @@ -27,6 +28,7 @@ def testParseUrl(self): url = atom.url.parse_url('http://www.google.com/calendar/feeds') self.assert_(url.protocol == 'http') + self.assert_(url.port is None) self.assert_(url.host == 'www.google.com') self.assert_(url.path == '/calendar/feeds') self.assert_(url.params == {}) @@ -85,7 +87,10 @@ self.assert_(url2 != url4) self.assert_(url3 != url4) - + +def suite(): + return conf.build_suite([UrlTest]) + if __name__ == '__main__': unittest.main() Binary files /tmp/loBuQrup0L/python-gdata-1.2.4/tests/files/testimage.jpg and /tmp/agbj2XxMCT/python-gdata-2.0.8/tests/files/testimage.jpg differ diff -Nru python-gdata-1.2.4/tests/gdata_test.py python-gdata-2.0.8/tests/gdata_test.py --- python-gdata-1.2.4/tests/gdata_test.py 2008-06-10 22:56:23.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_test.py 2009-10-09 01:24:38.000000000 +0100 @@ -15,7 +15,7 @@ # limitations under the License. -__author__ = 'api.jscudder@gmail.com (Jeff Scudder)' +__author__ = 'j.s@google.com (Jeff Scudder)' import unittest @@ -26,6 +26,7 @@ import gdata import atom from gdata import test_data +import gdata.test_config as conf class StartIndexTest(unittest.TestCase): @@ -344,5 +345,20 @@ self.assert_(isinstance(ep.GetXmlBlobString(), str)) +class FeedLinkTest(unittest.TestCase): + + def testCorrectFromStringType(self): + link = gdata.FeedLinkFromString( + '') + self.assert_(isinstance(link, gdata.FeedLink)) + self.assertEqual(link.count_hint, '5') + + +def suite(): + return conf.build_suite([StartIndexTest, StartIndexTest, GDataEntryTest, + LinkFinderTest, GDataFeedTest, BatchEntryTest, BatchFeedTest, + ExtendedPropertyTest, FeedLinkTest]) + + if __name__ == '__main__': unittest.main() diff -Nru python-gdata-1.2.4/tests/gdata_tests/analytics/data_test.py python-gdata-2.0.8/tests/gdata_tests/analytics/data_test.py --- python-gdata-1.2.4/tests/gdata_tests/analytics/data_test.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_tests/analytics/data_test.py 2009-12-17 19:20:32.000000000 +0000 @@ -0,0 +1,285 @@ +#!/usr/bin/env python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Unit Tests for Google Analytics Account Feed and Data Feed. + +AccountFeedTest: All unit tests for AccountFeed class. +DataFeedTest: All unit tests for DataFeed class. +""" + +__author__ = 'api.nickm@google.com (Nick Mihailovski)' + + +import unittest +from gdata import test_data +import gdata.analytics.data +import atom.core +import gdata.test_config as conf + + +class AccountFeedTest(unittest.TestCase): + """Unit test for all custom elements in the Account Feed.""" + + def setUp(self): + """Retrieves the test XML feed into a AccountFeed object.""" + self.feed = atom.core.parse(test_data.ANALYTICS_ACCOUNT_FEED, + gdata.analytics.data.AccountFeed) + + def testSegment(self): + """Tests Segment class in Google Analytics Account Feed.""" + + segment = self.feed.segment[0] + self.assertEquals(segment.id, 'gaid::-11') + self.assertEquals(segment.name, 'Visits from iPhones') + + def testSegmentDefinition(self): + """Tests Definition class in Google Analytics Account Feed.""" + + definition = self.feed.segment[0].definition + self.assertEquals(definition.text, 'ga:operatingSystem==iPhone') + + def testEntryTableId(self): + """Tests custom classes in Google Analytics Account Feed.""" + + entry = self.feed.entry[0] + self.assertEquals(entry.table_id.text, 'ga:1174') + + def testEntryProperty(self): + """Tests the property classes in Google Analytics Account Feed.""" + property = self.feed.entry[0].property + + self.assertEquals(property[0].name, 'ga:accountId') + self.assertEquals(property[0].value, '30481') + + self.assertEquals(property[1].name, 'ga:accountName') + self.assertEquals(property[1].value, 'Google Store') + + self.assertEquals(property[2].name, 'ga:profileId') + self.assertEquals(property[2].value, '1174') + + self.assertEquals(property[3].name, 'ga:webPropertyId') + self.assertEquals(property[3].value, 'UA-30481-1') + + self.assertEquals(property[4].name, 'ga:currency') + self.assertEquals(property[4].value, 'USD') + + self.assertEquals(property[5].name, 'ga:timezone') + self.assertEquals(property[5].value, 'America/Los_Angeles') + + def testEntryGetProperty(self): + """Tests GetProperty inherited class in the AccountEntry class.""" + + entry = self.feed.entry[0] + self.assertEquals(entry.GetProperty('ga:accountId').value, '30481') + self.assertEquals(entry.GetProperty('ga:accountName').value, 'Google Store') + self.assertEquals(entry.GetProperty('ga:profileId').value, '1174') + self.assertEquals(entry.GetProperty('ga:webPropertyId').value, 'UA-30481-1') + self.assertEquals(entry.GetProperty('ga:currency').value, 'USD') + self.assertEquals(entry.GetProperty('ga:timezone').value, 'America/Los_Angeles') + + def testGoal(self): + """Tests Goal class in Google Anlaytics Account Feed.""" + + goal = self.feed.entry[0].goal[0] + self.assertEquals(goal.number, '1') + self.assertEquals(goal.name, 'Completing Order') + self.assertEquals(goal.value, '10.0') + self.assertEquals(goal.active, 'true') + + def testDestination(self): + """Tests Destination class in Google Analytics Account Feed.""" + + destination = self.feed.entry[0].goal[0].destination + self.assertEquals(destination.expression, '/purchaseComplete.html') + self.assertEquals(destination.case_sensitive, 'false') + self.assertEquals(destination.match_type, 'regex') + self.assertEquals(destination.step1_required, 'false') + + def testStep(self): + """Tests Step class in Google Analytics Account Feed.""" + + step = self.feed.entry[0].goal[0].destination.step[0] + self.assertEquals(step.number, '1') + self.assertEquals(step.name, 'View Product Categories') + self.assertEquals(step.path, '/Apps|Accessories|Fun|Kid\+s|Office') + + def testEngagemet(self): + """Tests Engagement class in Google Analytics Account Feed.""" + + engagement = self.feed.entry[0].goal[1].engagement + self.assertEquals(engagement.type, 'timeOnSite') + self.assertEquals(engagement.comparison, '>') + self.assertEquals(engagement.threshold_value, '300') + + def testCustomVariable(self): + """Tests CustomVariable class in Google Analytics Account Feed.""" + + customVar = self.feed.entry[0].custom_variable[0] + self.assertEquals(customVar.index, '1') + self.assertEquals(customVar.name, 'My Custom Variable') + self.assertEquals(customVar.scope, '3') + + +class DataFeedTest(unittest.TestCase): + """Unit test for all custom elements in the Data Feed.""" + + def setUp(self): + """Retrieves the test XML feed into a DataFeed object.""" + + self.feed = atom.core.parse(test_data.ANALYTICS_DATA_FEED, + gdata.analytics.data.DataFeed) + + def testDataFeed(self): + """Tests custom classes in Google Analytics Data Feed.""" + + self.assertEquals(self.feed.start_date.text, '2008-10-01') + self.assertEquals(self.feed.end_date.text, '2008-10-31') + + def testAggregates(self): + """Tests Aggregates class in Google Analytics Data Feed.""" + + self.assert_(self.feed.aggregates is not None) + + def testAggregatesElements(self): + """Tests Metrics class in Aggregates class.""" + + metric = self.feed.aggregates.metric[0] + self.assertEquals(metric.confidence_interval, '0.0') + self.assertEquals(metric.name, 'ga:visits') + self.assertEquals(metric.type, 'integer') + self.assertEquals(metric.value, '136540') + + metric = self.feed.aggregates.GetMetric('ga:visits') + self.assertEquals(metric.confidence_interval, '0.0') + self.assertEquals(metric.name, 'ga:visits') + self.assertEquals(metric.type, 'integer') + self.assertEquals(metric.value, '136540') + + def testDataSource(self): + """Tests DataSources class in Google Analytics Data Feed.""" + + self.assert_(self.feed.data_source[0] is not None) + + def testDataSourceTableId(self): + """Tests TableId class in the DataSource class.""" + + table_id = self.feed.data_source[0].table_id + self.assertEquals(table_id.text, 'ga:1174') + + def testDataSourceTableName(self): + """Tests TableName class in the DataSource class.""" + + table_name = self.feed.data_source[0].table_name + self.assertEquals(table_name.text, 'www.googlestore.com') + + def testDataSourceProperty(self): + """Tests Property clas in the DataSource class.""" + + property = self.feed.data_source[0].property + self.assertEquals(property[0].name, 'ga:profileId') + self.assertEquals(property[0].value, '1174') + + self.assertEquals(property[1].name, 'ga:webPropertyId') + self.assertEquals(property[1].value, 'UA-30481-1') + + self.assertEquals(property[2].name, 'ga:accountName') + self.assertEquals(property[2].value, 'Google Store') + + def testDataSourceGetProperty(self): + """Tests GetProperty utility method in the DataSource class.""" + + ds = self.feed.data_source[0] + self.assertEquals(ds.GetProperty('ga:profileId').value, '1174') + self.assertEquals(ds.GetProperty('ga:webPropertyId').value, 'UA-30481-1') + self.assertEquals(ds.GetProperty('ga:accountName').value, 'Google Store') + + def testSegment(self): + """Tests Segment class in DataFeed class.""" + + segment = self.feed.segment + self.assertEquals(segment.id, 'gaid::-11') + self.assertEquals(segment.name, 'Visits from iPhones') + + def testSegmentDefinition(self): + """Tests Definition class in Segment class.""" + + definition = self.feed.segment.definition + self.assertEquals(definition.text, 'ga:operatingSystem==iPhone') + + def testEntryDimension(self): + """Tests Dimension class in Entry class.""" + + dim = self.feed.entry[0].dimension[0] + self.assertEquals(dim.name, 'ga:source') + self.assertEquals(dim.value, 'blogger.com') + + def testEntryGetDimension(self): + """Tests GetDimension utility method in the Entry class.""" + + dim = self.feed.entry[0].GetDimension('ga:source') + self.assertEquals(dim.name, 'ga:source') + self.assertEquals(dim.value, 'blogger.com') + + error = self.feed.entry[0].GetDimension('foo') + self.assertEquals(error, None) + + def testEntryMetric(self): + """Tests Metric class in Entry class.""" + + met = self.feed.entry[0].metric[0] + self.assertEquals(met.confidence_interval, '0.0') + self.assertEquals(met.name, 'ga:visits') + self.assertEquals(met.type, 'integer') + self.assertEquals(met.value, '68140') + + def testEntryGetMetric(self): + """Tests GetMetric utility method in the Entry class.""" + + met = self.feed.entry[0].GetMetric('ga:visits') + self.assertEquals(met.confidence_interval, '0.0') + self.assertEquals(met.name, 'ga:visits') + self.assertEquals(met.type, 'integer') + self.assertEquals(met.value, '68140') + + error = self.feed.entry[0].GetMetric('foo') + self.assertEquals(error, None) + + def testEntryGetObject(self): + """Tests GetObjectOf utility method in Entry class.""" + + entry = self.feed.entry[0] + + dimension = entry.GetObject('ga:source') + self.assertEquals(dimension.name, 'ga:source') + self.assertEquals(dimension.value, 'blogger.com') + + metric = entry.GetObject('ga:visits') + self.assertEquals(metric.name, 'ga:visits') + self.assertEquals(metric.value, '68140') + self.assertEquals(metric.type, 'integer') + self.assertEquals(metric.confidence_interval, '0.0') + + error = entry.GetObject('foo') + self.assertEquals(error, None) + + +def suite(): + """Test Account Feed and Data Feed.""" + return conf.build_suite([AccountFeedTest, DataFeedTest]) + + +if __name__ == '__main__': + unittest.main() diff -Nru python-gdata-1.2.4/tests/gdata_tests/analytics/live_client_test.py python-gdata-2.0.8/tests/gdata_tests/analytics/live_client_test.py --- python-gdata-1.2.4/tests/gdata_tests/analytics/live_client_test.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_tests/analytics/live_client_test.py 2009-12-17 20:44:10.000000000 +0000 @@ -0,0 +1,116 @@ +#!/usr/bin/env python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Functional Tests for Google Analytics Account Feed and Data Feed. + +AnalyticsClientTest: Tests making live requests to Google Analytics API. +""" + +__author__ = 'api.nickm@google.com (Nick Mihailovski)' + + +import unittest +import gdata.client +import gdata.data +import gdata.gauth +import gdata.analytics.client +import gdata.test_config as conf + + +conf.options.register_option(conf.GA_TABLE_ID) + + +class AnalyticsClientTest(unittest.TestCase): + """Tests creating an Account Feed query and making a request to the + Google Analytics Account Feed.""" + + def setUp(self): + """Creates an AnalyticsClient object.""" + + self.client = None + if conf.options.get_value('runlive') == 'true': + self.client = gdata.analytics.client.AnalyticsClient() + self.client.http_client.debug = True + + conf.configure_client( + self.client, + 'AnalyticsClientTest', + self.client.auth_service) + + def testAccountFeed(self): + """Tests if the Account Feed exists.""" + + if not conf.options.get_value('runlive') == 'true': + return + conf.configure_cache(self.client, 'testAccountFeed') + + account_query = gdata.analytics.client.AccountFeedQuery({ + 'max-results': '1' + }) + + feed = self.client.GetAccountFeed(account_query) + self.assert_(feed.entry is not None) + + properties = [ + 'ga:accountId', + 'ga:accountName', + 'ga:profileId', + 'ga:webPropertyId', + 'ga:currency', + 'ga:timezone' + ] + + entry = feed.entry[0] + for prop in properties: + property = entry.GetProperty(prop) + self.assertEquals(property.name, prop) + + def testDataFeed(self): + """Tests if the Data Feed exists.""" + + start_date = '2008-10-01' + end_date = '2008-10-02' + metrics = 'ga:visits' + + if not conf.options.get_value('runlive') == 'true': + return + conf.configure_cache(self.client, 'testDataFeed') + + data_query = gdata.analytics.client.DataFeedQuery({ + 'ids': conf.options.get_value('table_id'), + 'start-date': start_date, + 'end-date': end_date, + 'metrics' : metrics, + 'max-results': '1' + }) + feed = self.client.GetDataFeed(data_query) + + self.assert_(feed.entry is not None) + self.assertEquals(feed.start_date.text, start_date) + self.assertEquals(feed.end_date.text, end_date) + self.assertEquals(feed.entry[0].GetMetric(metrics).name, metrics) + + def tearDown(self): + """Closes client connection.""" + conf.close_client(self.client) + + +def suite(): + return conf.build_suite([AnalyticsClientTest]) + + +if __name__ == '__main__': + unittest.main() diff -Nru python-gdata-1.2.4/tests/gdata_tests/apps/AppsServiceTestForGetGeneratorForAllEmailLists.pickle python-gdata-2.0.8/tests/gdata_tests/apps/AppsServiceTestForGetGeneratorForAllEmailLists.pickle --- python-gdata-1.2.4/tests/gdata_tests/apps/AppsServiceTestForGetGeneratorForAllEmailLists.pickle 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_tests/apps/AppsServiceTestForGetGeneratorForAllEmailLists.pickle 2009-10-16 07:12:24.000000000 +0100 @@ -0,0 +1,190 @@ +(lp0 +(ccopy_reg +_reconstructor +p1 +(catom.mock_http +MockRequest +p2 +c__builtin__ +object +p3 +Ntp4 +Rp5 +(dp6 +S'url' +p7 +g1 +(catom.url +Url +p8 +g3 +Ntp9 +Rp10 +(dp11 +S'path' +p12 +S'/accounts/ClientLogin' +p13 +sS'host' +p14 +S'www.google.com' +p15 +sS'protocol' +p16 +S'https' +p17 +sS'port' +p18 +NsS'params' +p19 +(dp20 +sbsS'headers' +p21 +(dp22 +S'Content-Type' +p23 +S'application/x-www-form-urlencoded' +p24 +ssS'operation' +p25 +S'POST' +p26 +sS'data' +p27 +S'Passwd=hogehoge&source=AppsClient+%22Unit%22+Tests&service=apps&Email=zzz%40test.shehas.net&accountType=HOSTED_OR_GOOGLE' +p28 +sbg1 +(catom.mock_http +MockResponse +p29 +g3 +Ntp30 +Rp31 +(dp32 +S'body' +p33 +S'SID=hogehoge\nLSID=hogehoge\nAuth=hogehoge\n' +p34 +sS'status' +p35 +I200 +sS'reason' +p36 +S'OK' +p37 +sS'_headers' +p38 +(dp39 +sbtp40 +a(g1 +(g2 +g3 +Ntp41 +Rp42 +(dp43 +g7 +g1 +(g8 +g3 +Ntp44 +Rp45 +(dp46 +g12 +S'/a/feeds/test.shehas.net/emailList/2.0' +p47 +sg14 +S'apps-apis.google.com' +p48 +sg16 +S'https' +p49 +sg18 +Nsg19 +(dp50 +sbsg21 +(dp51 +S'Authorization' +p52 +S'hogehoge' +p53 +sS'User-Agent' +p54 +S'AppsClient "Unit" Tests GData-Python/2.0.2' +p55 +ssg25 +S'GET' +p56 +sg27 +Nsbg1 +(g29 +g3 +Ntp57 +Rp58 +(dp59 +g33 +S"https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.01970-01-01T00:00:00.000ZEmailLists1https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b000-200910131510511970-01-01T00:00:00.000Zb000-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b001-200910131510511970-01-01T00:00:00.000Zb001-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b002-200910131510511970-01-01T00:00:00.000Zb002-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b003-200910131510511970-01-01T00:00:00.000Zb003-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b004-200910131510511970-01-01T00:00:00.000Zb004-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b005-200910131510511970-01-01T00:00:00.000Zb005-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b006-200910131510511970-01-01T00:00:00.000Zb006-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b007-200910131510511970-01-01T00:00:00.000Zb007-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b008-200910131510511970-01-01T00:00:00.000Zb008-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b009-200910131510511970-01-01T00:00:00.000Zb009-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b010-200910131510511970-01-01T00:00:00.000Zb010-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b011-200910131510511970-01-01T00:00:00.000Zb011-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b012-200910131510511970-01-01T00:00:00.000Zb012-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b013-200910131510511970-01-01T00:00:00.000Zb013-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b014-200910131510511970-01-01T00:00:00.000Zb014-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b015-200910131510511970-01-01T00:00:00.000Zb015-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b016-200910131510511970-01-01T00:00:00.000Zb016-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b017-200910131510511970-01-01T00:00:00.000Zb017-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b018-200910131510511970-01-01T00:00:00.000Zb018-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b019-200910131510511970-01-01T00:00:00.000Zb019-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b020-200910131510511970-01-01T00:00:00.000Zb020-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b021-200910131510511970-01-01T00:00:00.000Zb021-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b022-200910131510511970-01-01T00:00:00.000Zb022-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b023-200910131510511970-01-01T00:00:00.000Zb023-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b024-200910131510511970-01-01T00:00:00.000Zb024-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b025-200910131510511970-01-01T00:00:00.000Zb025-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b026-200910131510511970-01-01T00:00:00.000Zb026-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b027-200910131510511970-01-01T00:00:00.000Zb027-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b028-200910131510511970-01-01T00:00:00.000Zb028-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b029-200910131510511970-01-01T00:00:00.000Zb029-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b030-200910131510511970-01-01T00:00:00.000Zb030-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b031-200910131510511970-01-01T00:00:00.000Zb031-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b032-200910131510511970-01-01T00:00:00.000Zb032-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b033-200910131510511970-01-01T00:00:00.000Zb033-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b034-200910131510511970-01-01T00:00:00.000Zb034-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b035-200910131510511970-01-01T00:00:00.000Zb035-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b036-200910131510511970-01-01T00:00:00.000Zb036-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b037-200910131510511970-01-01T00:00:00.000Zb037-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b038-200910131510511970-01-01T00:00:00.000Zb038-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b039-200910131510511970-01-01T00:00:00.000Zb039-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b040-200910131510511970-01-01T00:00:00.000Zb040-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b041-200910131510511970-01-01T00:00:00.000Zb041-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b042-200910131510511970-01-01T00:00:00.000Zb042-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b043-200910131510511970-01-01T00:00:00.000Zb043-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b044-200910131510511970-01-01T00:00:00.000Zb044-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b045-200910131510511970-01-01T00:00:00.000Zb045-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b046-200910131510511970-01-01T00:00:00.000Zb046-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b047-200910131510511970-01-01T00:00:00.000Zb047-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b048-200910131510511970-01-01T00:00:00.000Zb048-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b049-200910131510511970-01-01T00:00:00.000Zb049-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b050-200910131510511970-01-01T00:00:00.000Zb050-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b051-200910131510511970-01-01T00:00:00.000Zb051-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b052-200910131510511970-01-01T00:00:00.000Zb052-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b053-200910131510511970-01-01T00:00:00.000Zb053-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b054-200910131510511970-01-01T00:00:00.000Zb054-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b055-200910131510511970-01-01T00:00:00.000Zb055-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b056-200910131510511970-01-01T00:00:00.000Zb056-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b057-200910131510511970-01-01T00:00:00.000Zb057-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b058-200910131510511970-01-01T00:00:00.000Zb058-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b059-200910131510511970-01-01T00:00:00.000Zb059-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b060-200910131510511970-01-01T00:00:00.000Zb060-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b061-200910131510511970-01-01T00:00:00.000Zb061-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b062-200910131510511970-01-01T00:00:00.000Zb062-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b063-200910131510511970-01-01T00:00:00.000Zb063-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b064-200910131510511970-01-01T00:00:00.000Zb064-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b065-200910131510511970-01-01T00:00:00.000Zb065-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b066-200910131510511970-01-01T00:00:00.000Zb066-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b067-200910131510511970-01-01T00:00:00.000Zb067-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b068-200910131510511970-01-01T00:00:00.000Zb068-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b069-200910131510511970-01-01T00:00:00.000Zb069-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b070-200910131510511970-01-01T00:00:00.000Zb070-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b071-200910131510511970-01-01T00:00:00.000Zb071-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b072-200910131510511970-01-01T00:00:00.000Zb072-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b073-200910131510511970-01-01T00:00:00.000Zb073-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b074-200910131510511970-01-01T00:00:00.000Zb074-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b075-200910131510511970-01-01T00:00:00.000Zb075-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b076-200910131510511970-01-01T00:00:00.000Zb076-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b077-200910131510511970-01-01T00:00:00.000Zb077-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b078-200910131510511970-01-01T00:00:00.000Zb078-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b079-200910131510511970-01-01T00:00:00.000Zb079-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b080-200910131510511970-01-01T00:00:00.000Zb080-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b081-200910131510511970-01-01T00:00:00.000Zb081-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b082-200910131510511970-01-01T00:00:00.000Zb082-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b083-200910131510511970-01-01T00:00:00.000Zb083-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b084-200910131510511970-01-01T00:00:00.000Zb084-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b085-200910131510511970-01-01T00:00:00.000Zb085-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b086-200910131510511970-01-01T00:00:00.000Zb086-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b087-200910131510511970-01-01T00:00:00.000Zb087-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b088-200910131510511970-01-01T00:00:00.000Zb088-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b089-200910131510511970-01-01T00:00:00.000Zb089-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b090-200910131510511970-01-01T00:00:00.000Zb090-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b091-200910131510511970-01-01T00:00:00.000Zb091-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b092-200910131510511970-01-01T00:00:00.000Zb092-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b093-200910131510511970-01-01T00:00:00.000Zb093-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b094-200910131510511970-01-01T00:00:00.000Zb094-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b095-200910131510511970-01-01T00:00:00.000Zb095-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b096-200910131510511970-01-01T00:00:00.000Zb096-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b097-200910131510511970-01-01T00:00:00.000Zb097-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b098-200910131510511970-01-01T00:00:00.000Zb098-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b099-200910131510511970-01-01T00:00:00.000Zb099-20091013151051" +p60 +sg35 +I200 +sg36 +S'OK' +p61 +sg38 +(dp62 +sbtp63 +a(g1 +(g2 +g3 +Ntp64 +Rp65 +(dp66 +g7 +g1 +(g8 +g3 +Ntp67 +Rp68 +(dp69 +g12 +S'/a/feeds/test.shehas.net/emailList/2.0' +p70 +sg14 +S'apps-apis.google.com' +p71 +sg16 +S'https' +p72 +sg18 +Nsg19 +(dp73 +S'startEmailListName' +p74 +S'b100-20091013151051' +p75 +ssbsg21 +(dp76 +g52 +g53 +sg54 +g55 +ssg25 +g56 +sg27 +Nsbg1 +(g29 +g3 +Ntp77 +Rp78 +(dp79 +g33 +S"https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.01970-01-01T00:00:00.000ZEmailLists1https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b100-200910131510511970-01-01T00:00:00.000Zb100-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-200910131510511970-01-01T00:00:00.000Zb101-20091013151051https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/info1970-01-01T00:00:00.000Zinfohttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/testgroup21970-01-01T00:00:00.000Ztestgroup2https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/testgroup1970-01-01T00:00:00.000Ztestgroup" +p80 +sg35 +I200 +sg36 +S'OK' +p81 +sg38 +(dp82 +sbtp83 +a. diff -Nru python-gdata-1.2.4/tests/gdata_tests/apps/AppsServiceTestForGetGeneratorForAllNicknames.pickle python-gdata-2.0.8/tests/gdata_tests/apps/AppsServiceTestForGetGeneratorForAllNicknames.pickle --- python-gdata-1.2.4/tests/gdata_tests/apps/AppsServiceTestForGetGeneratorForAllNicknames.pickle 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_tests/apps/AppsServiceTestForGetGeneratorForAllNicknames.pickle 2009-10-16 07:12:24.000000000 +0100 @@ -0,0 +1,190 @@ +(lp0 +(ccopy_reg +_reconstructor +p1 +(catom.mock_http +MockRequest +p2 +c__builtin__ +object +p3 +Ntp4 +Rp5 +(dp6 +S'url' +p7 +g1 +(catom.url +Url +p8 +g3 +Ntp9 +Rp10 +(dp11 +S'path' +p12 +S'/accounts/ClientLogin' +p13 +sS'host' +p14 +S'www.google.com' +p15 +sS'protocol' +p16 +S'https' +p17 +sS'port' +p18 +NsS'params' +p19 +(dp20 +sbsS'headers' +p21 +(dp22 +S'Content-Type' +p23 +S'application/x-www-form-urlencoded' +p24 +ssS'operation' +p25 +S'POST' +p26 +sS'data' +p27 +S'Passwd=hogehoge&source=AppsClient+%22Unit%22+Tests&service=apps&Email=zzz%40test.shehas.net&accountType=HOSTED_OR_GOOGLE' +p28 +sbg1 +(catom.mock_http +MockResponse +p29 +g3 +Ntp30 +Rp31 +(dp32 +S'body' +p33 +S'SID=hogehoge\nLSID=hogehoge\nAuth=hogehoge\n' +p34 +sS'status' +p35 +I200 +sS'reason' +p36 +S'OK' +p37 +sS'_headers' +p38 +(dp39 +sbtp40 +a(g1 +(g2 +g3 +Ntp41 +Rp42 +(dp43 +g7 +g1 +(g8 +g3 +Ntp44 +Rp45 +(dp46 +g12 +S'/a/feeds/test.shehas.net/nickname/2.0' +p47 +sg14 +S'apps-apis.google.com' +p48 +sg16 +S'https' +p49 +sg18 +Nsg19 +(dp50 +sbsg21 +(dp51 +S'Authorization' +p52 +S'hogehoge' +p53 +sS'User-Agent' +p54 +S'AppsClient "Unit" Tests GData-Python/2.0.2' +p55 +ssg25 +S'GET' +p56 +sg27 +Nsbg1 +(g29 +g3 +Ntp57 +Rp58 +(dp59 +g33 +S"https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.01970-01-01T00:00:00.000ZNicknames1https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b000-200910131453361970-01-01T00:00:00.000Zb000-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b001-200910131453361970-01-01T00:00:00.000Zb001-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b002-200910131453361970-01-01T00:00:00.000Zb002-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b003-200910131453361970-01-01T00:00:00.000Zb003-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b004-200910131453361970-01-01T00:00:00.000Zb004-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b005-200910131453361970-01-01T00:00:00.000Zb005-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b006-200910131453361970-01-01T00:00:00.000Zb006-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b007-200910131453361970-01-01T00:00:00.000Zb007-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b008-200910131453361970-01-01T00:00:00.000Zb008-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b009-200910131453361970-01-01T00:00:00.000Zb009-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b010-200910131453361970-01-01T00:00:00.000Zb010-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b011-200910131453361970-01-01T00:00:00.000Zb011-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b012-200910131453361970-01-01T00:00:00.000Zb012-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b013-200910131453361970-01-01T00:00:00.000Zb013-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b014-200910131453361970-01-01T00:00:00.000Zb014-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b015-200910131453361970-01-01T00:00:00.000Zb015-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b016-200910131453361970-01-01T00:00:00.000Zb016-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b017-200910131453361970-01-01T00:00:00.000Zb017-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b018-200910131453361970-01-01T00:00:00.000Zb018-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b019-200910131453361970-01-01T00:00:00.000Zb019-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b020-200910131453361970-01-01T00:00:00.000Zb020-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b021-200910131453361970-01-01T00:00:00.000Zb021-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b022-200910131453361970-01-01T00:00:00.000Zb022-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b023-200910131453361970-01-01T00:00:00.000Zb023-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b024-200910131453361970-01-01T00:00:00.000Zb024-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b025-200910131453361970-01-01T00:00:00.000Zb025-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b026-200910131453361970-01-01T00:00:00.000Zb026-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b027-200910131453361970-01-01T00:00:00.000Zb027-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b028-200910131453361970-01-01T00:00:00.000Zb028-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b029-200910131453361970-01-01T00:00:00.000Zb029-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b030-200910131453361970-01-01T00:00:00.000Zb030-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b031-200910131453361970-01-01T00:00:00.000Zb031-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b032-200910131453361970-01-01T00:00:00.000Zb032-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b033-200910131453361970-01-01T00:00:00.000Zb033-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b034-200910131453361970-01-01T00:00:00.000Zb034-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b035-200910131453361970-01-01T00:00:00.000Zb035-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b036-200910131453361970-01-01T00:00:00.000Zb036-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b037-200910131453361970-01-01T00:00:00.000Zb037-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b038-200910131453361970-01-01T00:00:00.000Zb038-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b039-200910131453361970-01-01T00:00:00.000Zb039-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b040-200910131453361970-01-01T00:00:00.000Zb040-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b041-200910131453361970-01-01T00:00:00.000Zb041-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b042-200910131453361970-01-01T00:00:00.000Zb042-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b043-200910131453361970-01-01T00:00:00.000Zb043-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b044-200910131453361970-01-01T00:00:00.000Zb044-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b045-200910131453361970-01-01T00:00:00.000Zb045-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b046-200910131453361970-01-01T00:00:00.000Zb046-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b047-200910131453361970-01-01T00:00:00.000Zb047-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b048-200910131453361970-01-01T00:00:00.000Zb048-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b049-200910131453361970-01-01T00:00:00.000Zb049-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b050-200910131453361970-01-01T00:00:00.000Zb050-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b051-200910131453361970-01-01T00:00:00.000Zb051-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b052-200910131453361970-01-01T00:00:00.000Zb052-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b053-200910131453361970-01-01T00:00:00.000Zb053-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b054-200910131453361970-01-01T00:00:00.000Zb054-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b055-200910131453361970-01-01T00:00:00.000Zb055-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b056-200910131453361970-01-01T00:00:00.000Zb056-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b057-200910131453361970-01-01T00:00:00.000Zb057-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b058-200910131453361970-01-01T00:00:00.000Zb058-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b059-200910131453361970-01-01T00:00:00.000Zb059-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b060-200910131453361970-01-01T00:00:00.000Zb060-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b061-200910131453361970-01-01T00:00:00.000Zb061-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b062-200910131453361970-01-01T00:00:00.000Zb062-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b063-200910131453361970-01-01T00:00:00.000Zb063-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b064-200910131453361970-01-01T00:00:00.000Zb064-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b065-200910131453361970-01-01T00:00:00.000Zb065-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b066-200910131453361970-01-01T00:00:00.000Zb066-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b067-200910131453361970-01-01T00:00:00.000Zb067-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b068-200910131453361970-01-01T00:00:00.000Zb068-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b069-200910131453361970-01-01T00:00:00.000Zb069-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b070-200910131453361970-01-01T00:00:00.000Zb070-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b071-200910131453361970-01-01T00:00:00.000Zb071-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b072-200910131453361970-01-01T00:00:00.000Zb072-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b073-200910131453361970-01-01T00:00:00.000Zb073-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b074-200910131453361970-01-01T00:00:00.000Zb074-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b075-200910131453361970-01-01T00:00:00.000Zb075-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b076-200910131453361970-01-01T00:00:00.000Zb076-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b077-200910131453361970-01-01T00:00:00.000Zb077-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b078-200910131453361970-01-01T00:00:00.000Zb078-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b079-200910131453361970-01-01T00:00:00.000Zb079-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b080-200910131453361970-01-01T00:00:00.000Zb080-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b081-200910131453361970-01-01T00:00:00.000Zb081-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b082-200910131453361970-01-01T00:00:00.000Zb082-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b083-200910131453361970-01-01T00:00:00.000Zb083-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b084-200910131453361970-01-01T00:00:00.000Zb084-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b085-200910131453361970-01-01T00:00:00.000Zb085-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b086-200910131453361970-01-01T00:00:00.000Zb086-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b087-200910131453361970-01-01T00:00:00.000Zb087-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b088-200910131453361970-01-01T00:00:00.000Zb088-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b089-200910131453361970-01-01T00:00:00.000Zb089-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b090-200910131453361970-01-01T00:00:00.000Zb090-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b091-200910131453361970-01-01T00:00:00.000Zb091-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b092-200910131453361970-01-01T00:00:00.000Zb092-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b093-200910131453361970-01-01T00:00:00.000Zb093-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b094-200910131453361970-01-01T00:00:00.000Zb094-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b095-200910131453361970-01-01T00:00:00.000Zb095-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b096-200910131453361970-01-01T00:00:00.000Zb096-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b097-200910131453361970-01-01T00:00:00.000Zb097-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b098-200910131453361970-01-01T00:00:00.000Zb098-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b099-200910131453361970-01-01T00:00:00.000Zb099-20091013145336" +p60 +sg35 +I200 +sg36 +S'OK' +p61 +sg38 +(dp62 +sbtp63 +a(g1 +(g2 +g3 +Ntp64 +Rp65 +(dp66 +g7 +g1 +(g8 +g3 +Ntp67 +Rp68 +(dp69 +g12 +S'/a/feeds/test.shehas.net/nickname/2.0' +p70 +sg14 +S'apps-apis.google.com' +p71 +sg16 +S'https' +p72 +sg18 +Nsg19 +(dp73 +S'startNickname' +p74 +S'b100-20091013145336' +p75 +ssbsg21 +(dp76 +g52 +g53 +sg54 +g55 +ssg25 +g56 +sg27 +Nsbg1 +(g29 +g3 +Ntp77 +Rp78 +(dp79 +g33 +S"https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.01970-01-01T00:00:00.000ZNicknames1https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b100-200910131453361970-01-01T00:00:00.000Zb100-20091013145336https://apps-apis.google.com/a/feeds/test.shehas.net/nickname/2.0/b101-200910131453361970-01-01T00:00:00.000Zb101-20091013145336" +p80 +sg35 +I200 +sg36 +S'OK' +p81 +sg38 +(dp82 +sbtp83 +a. \ No newline at end of file diff -Nru python-gdata-1.2.4/tests/gdata_tests/apps/AppsServiceTestForGetGeneratorForAllRecipients.pickle python-gdata-2.0.8/tests/gdata_tests/apps/AppsServiceTestForGetGeneratorForAllRecipients.pickle --- python-gdata-1.2.4/tests/gdata_tests/apps/AppsServiceTestForGetGeneratorForAllRecipients.pickle 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_tests/apps/AppsServiceTestForGetGeneratorForAllRecipients.pickle 2009-10-16 07:12:24.000000000 +0100 @@ -0,0 +1,190 @@ +(lp0 +(ccopy_reg +_reconstructor +p1 +(catom.mock_http +MockRequest +p2 +c__builtin__ +object +p3 +Ntp4 +Rp5 +(dp6 +S'url' +p7 +g1 +(catom.url +Url +p8 +g3 +Ntp9 +Rp10 +(dp11 +S'path' +p12 +S'/accounts/ClientLogin' +p13 +sS'host' +p14 +S'www.google.com' +p15 +sS'protocol' +p16 +S'https' +p17 +sS'port' +p18 +NsS'params' +p19 +(dp20 +sbsS'headers' +p21 +(dp22 +S'Content-Type' +p23 +S'application/x-www-form-urlencoded' +p24 +ssS'operation' +p25 +S'POST' +p26 +sS'data' +p27 +S'Passwd=hogehoge&source=AppsClient+%22Unit%22+Tests&service=apps&Email=zzz%40test.shehas.net&accountType=HOSTED_OR_GOOGLE' +p28 +sbg1 +(catom.mock_http +MockResponse +p29 +g3 +Ntp30 +Rp31 +(dp32 +S'body' +p33 +S'SID=hogehoge\nLSID=hogehoge\nAuth=hogehoge\n' +p34 +sS'status' +p35 +I200 +sS'reason' +p36 +S'OK' +p37 +sS'_headers' +p38 +(dp39 +sbtp40 +a(g1 +(g2 +g3 +Ntp41 +Rp42 +(dp43 +g7 +g1 +(g8 +g3 +Ntp44 +Rp45 +(dp46 +g12 +S'/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient' +p47 +sg14 +S'apps-apis.google.com' +p48 +sg16 +S'https' +p49 +sg18 +Nsg19 +(dp50 +sbsg21 +(dp51 +S'Authorization' +p52 +S'hogehoge' +p53 +sS'User-Agent' +p54 +S'AppsClient "Unit" Tests GData-Python/2.0.2' +p55 +ssg25 +S'GET' +p56 +sg27 +Nsbg1 +(g29 +g3 +Ntp57 +Rp58 +(dp59 +g33 +S"https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient1970-01-01T00:00:00.000ZRecipients for email list b101-200910131510511https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b000-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb000-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b001-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb001-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b002-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb002-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b003-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb003-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b004-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb004-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b005-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb005-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b006-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb006-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b007-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb007-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b008-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb008-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b009-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb009-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b010-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb010-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b011-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb011-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b012-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb012-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b013-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb013-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b014-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb014-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b015-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb015-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b016-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb016-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b017-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb017-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b018-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb018-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b019-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb019-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b020-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb020-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b021-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb021-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b022-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb022-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b023-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb023-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b024-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb024-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b025-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb025-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b026-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb026-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b027-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb027-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b028-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb028-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b029-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb029-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b030-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb030-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b031-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb031-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b032-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb032-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b033-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb033-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b034-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb034-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b035-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb035-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b036-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb036-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b037-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb037-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b038-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb038-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b039-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb039-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b040-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb040-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b041-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb041-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b042-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb042-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b043-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb043-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b044-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb044-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b045-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb045-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b046-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb046-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b047-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb047-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b048-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb048-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b049-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb049-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b050-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb050-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b051-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb051-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b052-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb052-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b053-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb053-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b054-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb054-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b055-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb055-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b056-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb056-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b057-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb057-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b058-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb058-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b059-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb059-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b060-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb060-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b061-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb061-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b062-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb062-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b063-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb063-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b064-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb064-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b065-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb065-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b066-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb066-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b067-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb067-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b068-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb068-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b069-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb069-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b070-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb070-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b071-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb071-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b072-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb072-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b073-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb073-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b074-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb074-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b075-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb075-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b076-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb076-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b077-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb077-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b078-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb078-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b079-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb079-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b080-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb080-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b081-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb081-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b082-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb082-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b083-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb083-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b084-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb084-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b085-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb085-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b086-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb086-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b087-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb087-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b088-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb088-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b089-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb089-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b090-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb090-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b091-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb091-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b092-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb092-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b093-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb093-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b094-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb094-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b095-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb095-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b096-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb096-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/b097-20091001132401%40test.shehas.net1970-01-01T00:00:00.000Zb097-20091001132401@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/john.amin%40test.shehas.net1970-01-01T00:00:00.000Zjohn.amin@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/john.doe%40test.shehas.net1970-01-01T00:00:00.000Zjohn.doe@test.shehas.net" +p60 +sg35 +I200 +sg36 +S'OK' +p61 +sg38 +(dp62 +sbtp63 +a(g1 +(g2 +g3 +Ntp64 +Rp65 +(dp66 +g7 +g1 +(g8 +g3 +Ntp67 +Rp68 +(dp69 +g12 +S'/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient' +p70 +sg14 +S'apps-apis.google.com' +p71 +sg16 +S'https' +p72 +sg18 +Nsg19 +(dp73 +S'startRecipient' +p74 +S'john@test.shehas.net' +p75 +ssbsg21 +(dp76 +g52 +g53 +sg54 +g55 +ssg25 +g56 +sg27 +Nsbg1 +(g29 +g3 +Ntp77 +Rp78 +(dp79 +g33 +S"https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient1970-01-01T00:00:00.000ZRecipients for email list b101-200910131510511https://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/john%40test.shehas.net1970-01-01T00:00:00.000Zjohn@test.shehas.nethttps://apps-apis.google.com/a/feeds/test.shehas.net/emailList/2.0/b101-20091013151051/recipient/zzz%40test.shehas.net1970-01-01T00:00:00.000Zzzz@test.shehas.net" +p80 +sg35 +I200 +sg36 +S'OK' +p81 +sg38 +(dp82 +sbtp83 +a. \ No newline at end of file diff -Nru python-gdata-1.2.4/tests/gdata_tests/apps/AppsServiceTestForGetGeneratorForAllUsers.pickle python-gdata-2.0.8/tests/gdata_tests/apps/AppsServiceTestForGetGeneratorForAllUsers.pickle --- python-gdata-1.2.4/tests/gdata_tests/apps/AppsServiceTestForGetGeneratorForAllUsers.pickle 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_tests/apps/AppsServiceTestForGetGeneratorForAllUsers.pickle 2009-10-16 07:12:24.000000000 +0100 @@ -0,0 +1,190 @@ +(lp0 +(ccopy_reg +_reconstructor +p1 +(catom.mock_http +MockRequest +p2 +c__builtin__ +object +p3 +Ntp4 +Rp5 +(dp6 +S'url' +p7 +g1 +(catom.url +Url +p8 +g3 +Ntp9 +Rp10 +(dp11 +S'path' +p12 +S'/accounts/ClientLogin' +p13 +sS'host' +p14 +S'www.google.com' +p15 +sS'protocol' +p16 +S'https' +p17 +sS'port' +p18 +NsS'params' +p19 +(dp20 +sbsS'headers' +p21 +(dp22 +S'Content-Type' +p23 +S'application/x-www-form-urlencoded' +p24 +ssS'operation' +p25 +S'POST' +p26 +sS'data' +p27 +S'Passwd=hogehoge&source=AppsClient+%22Unit%22+Tests&service=apps&Email=zzz%40test.shehas.net&accountType=HOSTED_OR_GOOGLE' +p28 +sbg1 +(catom.mock_http +MockResponse +p29 +g3 +Ntp30 +Rp31 +(dp32 +S'body' +p33 +S'SID=hogehoge\nLSID=hogehoge\nAuth=hogehoge\n' +p34 +sS'status' +p35 +I200 +sS'reason' +p36 +S'OK' +p37 +sS'_headers' +p38 +(dp39 +sbtp40 +a(g1 +(g2 +g3 +Ntp41 +Rp42 +(dp43 +g7 +g1 +(g8 +g3 +Ntp44 +Rp45 +(dp46 +g12 +S'/a/feeds/test.shehas.net/user/2.0' +p47 +sg14 +S'apps-apis.google.com' +p48 +sg16 +S'https' +p49 +sg18 +Nsg19 +(dp50 +sbsg21 +(dp51 +S'Authorization' +p52 +S'hogehoge' +p53 +sS'User-Agent' +p54 +S'AppsClient "Unit" Tests GData-Python/2.0.2' +p55 +ssg25 +S'GET' +p56 +sg27 +Nsbg1 +(g29 +g3 +Ntp57 +Rp58 +(dp59 +g33 +S"https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.01970-01-01T00:00:00.000ZUsers1https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b000-200910011324011970-01-01T00:00:00.000Zb000-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b001-200910011324011970-01-01T00:00:00.000Zb001-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b002-200910011324011970-01-01T00:00:00.000Zb002-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b003-200910011324011970-01-01T00:00:00.000Zb003-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b004-200910011324011970-01-01T00:00:00.000Zb004-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b005-200910011324011970-01-01T00:00:00.000Zb005-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b006-200910011324011970-01-01T00:00:00.000Zb006-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b007-200910011324011970-01-01T00:00:00.000Zb007-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b008-200910011324011970-01-01T00:00:00.000Zb008-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b009-200910011324011970-01-01T00:00:00.000Zb009-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b010-200910011324011970-01-01T00:00:00.000Zb010-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b011-200910011324011970-01-01T00:00:00.000Zb011-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b012-200910011324011970-01-01T00:00:00.000Zb012-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b013-200910011324011970-01-01T00:00:00.000Zb013-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b014-200910011324011970-01-01T00:00:00.000Zb014-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b015-200910011324011970-01-01T00:00:00.000Zb015-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b016-200910011324011970-01-01T00:00:00.000Zb016-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b017-200910011324011970-01-01T00:00:00.000Zb017-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b018-200910011324011970-01-01T00:00:00.000Zb018-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b019-200910011324011970-01-01T00:00:00.000Zb019-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b020-200910011324011970-01-01T00:00:00.000Zb020-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b021-200910011324011970-01-01T00:00:00.000Zb021-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b022-200910011324011970-01-01T00:00:00.000Zb022-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b023-200910011324011970-01-01T00:00:00.000Zb023-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b024-200910011324011970-01-01T00:00:00.000Zb024-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b025-200910011324011970-01-01T00:00:00.000Zb025-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b026-200910011324011970-01-01T00:00:00.000Zb026-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b027-200910011324011970-01-01T00:00:00.000Zb027-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b028-200910011324011970-01-01T00:00:00.000Zb028-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b029-200910011324011970-01-01T00:00:00.000Zb029-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b030-200910011324011970-01-01T00:00:00.000Zb030-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b031-200910011324011970-01-01T00:00:00.000Zb031-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b032-200910011324011970-01-01T00:00:00.000Zb032-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b033-200910011324011970-01-01T00:00:00.000Zb033-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b034-200910011324011970-01-01T00:00:00.000Zb034-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b035-200910011324011970-01-01T00:00:00.000Zb035-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b036-200910011324011970-01-01T00:00:00.000Zb036-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b037-200910011324011970-01-01T00:00:00.000Zb037-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b038-200910011324011970-01-01T00:00:00.000Zb038-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b039-200910011324011970-01-01T00:00:00.000Zb039-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b040-200910011324011970-01-01T00:00:00.000Zb040-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b041-200910011324011970-01-01T00:00:00.000Zb041-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b042-200910011324011970-01-01T00:00:00.000Zb042-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b043-200910011324011970-01-01T00:00:00.000Zb043-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b044-200910011324011970-01-01T00:00:00.000Zb044-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b045-200910011324011970-01-01T00:00:00.000Zb045-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b046-200910011324011970-01-01T00:00:00.000Zb046-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b047-200910011324011970-01-01T00:00:00.000Zb047-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b048-200910011324011970-01-01T00:00:00.000Zb048-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b049-200910011324011970-01-01T00:00:00.000Zb049-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b050-200910011324011970-01-01T00:00:00.000Zb050-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b051-200910011324011970-01-01T00:00:00.000Zb051-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b052-200910011324011970-01-01T00:00:00.000Zb052-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b053-200910011324011970-01-01T00:00:00.000Zb053-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b054-200910011324011970-01-01T00:00:00.000Zb054-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b055-200910011324011970-01-01T00:00:00.000Zb055-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b056-200910011324011970-01-01T00:00:00.000Zb056-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b057-200910011324011970-01-01T00:00:00.000Zb057-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b058-200910011324011970-01-01T00:00:00.000Zb058-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b059-200910011324011970-01-01T00:00:00.000Zb059-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b060-200910011324011970-01-01T00:00:00.000Zb060-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b061-200910011324011970-01-01T00:00:00.000Zb061-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b062-200910011324011970-01-01T00:00:00.000Zb062-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b063-200910011324011970-01-01T00:00:00.000Zb063-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b064-200910011324011970-01-01T00:00:00.000Zb064-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b065-200910011324011970-01-01T00:00:00.000Zb065-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b066-200910011324011970-01-01T00:00:00.000Zb066-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b067-200910011324011970-01-01T00:00:00.000Zb067-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b068-200910011324011970-01-01T00:00:00.000Zb068-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b069-200910011324011970-01-01T00:00:00.000Zb069-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b070-200910011324011970-01-01T00:00:00.000Zb070-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b071-200910011324011970-01-01T00:00:00.000Zb071-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b072-200910011324011970-01-01T00:00:00.000Zb072-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b073-200910011324011970-01-01T00:00:00.000Zb073-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b074-200910011324011970-01-01T00:00:00.000Zb074-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b075-200910011324011970-01-01T00:00:00.000Zb075-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b076-200910011324011970-01-01T00:00:00.000Zb076-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b077-200910011324011970-01-01T00:00:00.000Zb077-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b078-200910011324011970-01-01T00:00:00.000Zb078-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b079-200910011324011970-01-01T00:00:00.000Zb079-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b080-200910011324011970-01-01T00:00:00.000Zb080-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b081-200910011324011970-01-01T00:00:00.000Zb081-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b082-200910011324011970-01-01T00:00:00.000Zb082-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b083-200910011324011970-01-01T00:00:00.000Zb083-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b084-200910011324011970-01-01T00:00:00.000Zb084-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b085-200910011324011970-01-01T00:00:00.000Zb085-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b086-200910011324011970-01-01T00:00:00.000Zb086-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b087-200910011324011970-01-01T00:00:00.000Zb087-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b088-200910011324011970-01-01T00:00:00.000Zb088-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b089-200910011324011970-01-01T00:00:00.000Zb089-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b090-200910011324011970-01-01T00:00:00.000Zb090-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b091-200910011324011970-01-01T00:00:00.000Zb091-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b092-200910011324011970-01-01T00:00:00.000Zb092-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b093-200910011324011970-01-01T00:00:00.000Zb093-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b094-200910011324011970-01-01T00:00:00.000Zb094-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b095-200910011324011970-01-01T00:00:00.000Zb095-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b096-200910011324011970-01-01T00:00:00.000Zb096-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/b097-200910011324011970-01-01T00:00:00.000Zb097-20091001132401https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/john.amin1970-01-01T00:00:00.000Zjohn.aminhttps://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/john.doe1970-01-01T00:00:00.000Zjohn.doe" +p60 +sg35 +I200 +sg36 +S'OK' +p61 +sg38 +(dp62 +sbtp63 +a(g1 +(g2 +g3 +Ntp64 +Rp65 +(dp66 +g7 +g1 +(g8 +g3 +Ntp67 +Rp68 +(dp69 +g12 +S'/a/feeds/test.shehas.net/user/2.0' +p70 +sg14 +S'apps-apis.google.com' +p71 +sg16 +S'https' +p72 +sg18 +Nsg19 +(dp73 +S'startUsername' +p74 +S'john' +p75 +ssbsg21 +(dp76 +g52 +g53 +sg54 +g55 +ssg25 +g56 +sg27 +Nsbg1 +(g29 +g3 +Ntp77 +Rp78 +(dp79 +g33 +S"https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.01970-01-01T00:00:00.000ZUsers1https://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/john1970-01-01T00:00:00.000Zjohnhttps://apps-apis.google.com/a/feeds/test.shehas.net/user/2.0/zzz1970-01-01T00:00:00.000Zzzz" +p80 +sg35 +I200 +sg36 +S'OK' +p81 +sg38 +(dp82 +sbtp83 +a. \ No newline at end of file diff -Nru python-gdata-1.2.4/tests/gdata_tests/apps/emailsettings/service_test.py python-gdata-2.0.8/tests/gdata_tests/apps/emailsettings/service_test.py --- python-gdata-1.2.4/tests/gdata_tests/apps/emailsettings/service_test.py 2008-10-09 21:49:43.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_tests/apps/emailsettings/service_test.py 2009-03-19 16:05:34.000000000 +0000 @@ -66,6 +66,10 @@ make_default=True) self.assertEquals(result['name'], 'Send-as Alias') + def testUpdateWebClipSettings(self): + result = self.es.UpdateWebClipSettings(username, enable=True) + self.assertEquals(result['enable'], 'true') + def testUpdateForwarding(self): result = self.es.UpdateForwarding(username, enable=True, diff -Nru python-gdata-1.2.4/tests/gdata_tests/apps/groups/service_test.py python-gdata-2.0.8/tests/gdata_tests/apps/groups/service_test.py --- python-gdata-1.2.4/tests/gdata_tests/apps/groups/service_test.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_tests/apps/groups/service_test.py 2009-03-23 18:37:35.000000000 +0000 @@ -0,0 +1,270 @@ +#!/usr/bin/python +# +# Copyright (C) 2008 Google +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Test for Groups service.""" + + +__author__ = 'google-apps-apis@googlegroups.com' + + +import unittest +try: + from xml.etree import ElementTree +except ImportError: + from elementtree import ElementTree +import atom +import gdata.apps +import gdata.apps.service +import gdata.apps.groups.service +import getpass +import time + + +domain = '' +admin_email = '' +admin_password = '' +username = '' + + +class GroupsTest(unittest.TestCase): + """Test for the GroupsService.""" + + def setUp(self): + self.postfix = time.strftime("%Y%m%d%H%M%S") + self.apps_client = gdata.apps.service.AppsService( + email=admin_email, domain=domain, password=admin_password, + source='GroupsClient "Unit" Tests') + self.apps_client.ProgrammaticLogin() + self.groups_client = gdata.apps.groups.service.GroupsService( + email=admin_email, domain=domain, password=admin_password, + source='GroupsClient "Unit" Tests') + self.groups_client.ProgrammaticLogin() + self.created_users = [] + self.created_groups = [] + self.createUsers(); + + def createUsers(self): + user_name = 'yujimatsuo-' + self.postfix + family_name = 'Matsuo' + given_name = 'Yuji' + password = '123$$abc' + suspended = 'false' + + try: + self.user_yuji = self.apps_client.CreateUser( + user_name=user_name, family_name=family_name, given_name=given_name, + password=password, suspended=suspended) + print 'User ' + user_name + ' created' + except Exception, e: + self.fail('Unexpected exception occurred: %s' % e) + + self.created_users.append(self.user_yuji) + + user_name = 'taromatsuo-' + self.postfix + family_name = 'Matsuo' + given_name = 'Taro' + password = '123$$abc' + suspended = 'false' + + try: + self.user_taro = self.apps_client.CreateUser( + user_name=user_name, family_name=family_name, given_name=given_name, + password=password, suspended=suspended) + print 'User ' + user_name + ' created' + except Exception, e: + self.fail('Unexpected exception occurred: %s' % e) + + self.created_users.append(self.user_taro) + + def tearDown(self): + print '\n' + for user in self.created_users: + try: + self.apps_client.DeleteUser(user.login.user_name) + print 'User ' + user.login.user_name + ' deleted' + except Exception, e: + print e + for group in self.created_groups: + try: + self.groups_client.DeleteGroup(group) + print 'Group ' + group + ' deleted' + except Exception, e: + print e + + def test001GroupsMethods(self): + # tests CreateGroup method + group01_id = 'group01-' + self.postfix + group02_id = 'group02-' + self.postfix + try: + created_group01 = self.groups_client.CreateGroup(group01_id, 'US Sales 1', + 'Testing', gdata.apps.groups.service.PERMISSION_OWNER) + created_group02 = self.groups_client.CreateGroup(group02_id, 'US Sales 2', + 'Testing', gdata.apps.groups.service.PERMISSION_OWNER) + except Exception, e: + self.fail('Unexpected exception occurred: %s' % e) + + self.assertEquals(created_group01['groupId'], group01_id) + self.assertEquals(created_group02['groupId'], group02_id) + self.created_groups.append(group01_id) + self.created_groups.append(group02_id) + + # tests UpdateGroup method + try: + updated_group = self.groups_client.UpdateGroup(group01_id, 'Updated!', + 'Testing', gdata.apps.groups.service.PERMISSION_OWNER) + except Exception, e: + self.fail('Unexpected exception occurred: %s' % e) + + self.assertEquals(updated_group['groupName'], 'Updated!') + + # tests RetrieveGroup method + try: + retrieved_group = self.groups_client.RetrieveGroup(group01_id) + except Exception, e: + self.fail('Unexpected exception occurred: %s' % e) + + self.assertEquals(retrieved_group['groupId'], group01_id + '@' + domain) + + # tests RetrieveAllGroups method + try: + retrieved_groups = self.groups_client.RetrieveAllGroups() + except Exception, e: + self.fail('Unexpected exception occurred: %s' % e) + + self.assertEquals(len(retrieved_groups), + len(self.apps_client.RetrieveAllEmailLists().entry)) + + # tests AddMemberToGroup + try: + added_member = self.groups_client.AddMemberToGroup( + self.user_yuji.login.user_name, group01_id) + self.groups_client.AddMemberToGroup( + self.user_taro.login.user_name, group02_id) + self.groups_client.AddMemberToGroup( + group01_id, group02_id) + except Exception, e: + self.fail('Unexpected exception occurred: %s' % e) + + self.assertEquals(added_member['memberId'], + self.user_yuji.login.user_name) + + # tests RetrieveGroups method + try: + retrieved_direct_groups = self.groups_client.RetrieveGroups( + self.user_yuji.login.user_name, True) + retrieved_groups = self.groups_client.RetrieveGroups( + self.user_yuji.login.user_name, False) + except Exception, e: + self.fail('Unexpected exception occurred: %s' % e) + + self.assertEquals(len(retrieved_direct_groups), 1) + # TODO: Enable this test after a directOnly bug is fixed + #self.assertEquals(len(retrieved_groups), 2) + + # tests IsMember method + try: + result = self.groups_client.IsMember( + self.user_yuji.login.user_name, group01_id) + except Exception, e: + self.fail('Unexpected exception occurred: %s' % e) + + self.assertEquals(result, True) + + # tests RetrieveMember method + try: + retrieved_member = self.groups_client.RetrieveMember( + self.user_yuji.login.user_name, group01_id) + except Exception, e: + self.fail('Unexpected exception occurred: %s' % e) + + self.assertEquals(retrieved_member['memberId'], + self.user_yuji.login.user_name + '@' + domain) + + # tests RetrieveAllMembers method + try: + retrieved_members = self.groups_client.RetrieveAllMembers(group01_id) + except Exception, e: + self.fail('Unexpected exception occurred: %s' % e) + + self.assertEquals(len(retrieved_members), 1) + + # tests RemoveMemberFromGroup method + try: + self.groups_client.RemoveMemberFromGroup(self.user_yuji.login.user_name, + group01_id) + retrieved_members = self.groups_client.RetrieveAllMembers(group01_id) + except Exception, e: + self.fail('Unexpected exception occurred: %s' % e) + + self.assertEquals(len(retrieved_members), 0) + + # tests AddOwnerToGroup + try: + added_owner = self.groups_client.AddOwnerToGroup( + self.user_yuji.login.user_name, group01_id) + except Exception, e: + self.fail('Unexpected exception occurred: %s' % e) + + self.assertEquals(added_owner['email'], + self.user_yuji.login.user_name) + + # tests IsOwner method + try: + result = self.groups_client.IsOwner( + self.user_yuji.login.user_name, group01_id) + except Exception, e: + self.fail('Unexpected exception occurred: %s' % e) + + self.assertEquals(result, True) + + # tests RetrieveOwner method + try: + retrieved_owner = self.groups_client.RetrieveOwner( + self.user_yuji.login.user_name, group01_id) + except Exception, e: + self.fail('Unexpected exception occurred: %s' % e) + + self.assertEquals(retrieved_owner['email'], + self.user_yuji.login.user_name + '@' + domain) + + # tests RetrieveAllOwners method + try: + retrieved_owners = self.groups_client.RetrieveAllOwners(group01_id) + except Exception, e: + self.fail('Unexpected exception occurred: %s' % e) + + self.assertEquals(len(retrieved_owners), 1) + + # tests RemoveOwnerFromGroup method + try: + self.groups_client.RemoveOwnerFromGroup(self.user_yuji.login.user_name, + group01_id) + retrieved_owners = self.groups_client.RetrieveAllOwners(group01_id) + except Exception, e: + self.fail('Unexpected exception occurred: %s' % e) + + self.assertEquals(len(retrieved_owners), 0) + + +if __name__ == '__main__': + print("""Google Apps Groups Service Tests + +NOTE: Please run these tests only with a test user account. +""") + domain = raw_input('Google Apps domain: ') + admin_email = '%s@%s' % (raw_input('Administrator username: '), domain) + admin_password = getpass.getpass('Administrator password: ') + unittest.main() diff -Nru python-gdata-1.2.4/tests/gdata_tests/apps/service_test_using_mock.py python-gdata-2.0.8/tests/gdata_tests/apps/service_test_using_mock.py --- python-gdata-1.2.4/tests/gdata_tests/apps/service_test_using_mock.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_tests/apps/service_test_using_mock.py 2009-10-16 06:26:16.000000000 +0100 @@ -0,0 +1,140 @@ +#!/usr/bin/python +# +# Copyright (C) 2007 SIOS Technology, Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +__author__ = 'tmatsuo@sios.com (Takashi Matsuo)' + +import unittest +import time, os +try: + from xml.etree import ElementTree +except ImportError: + from elementtree import ElementTree +import re +import pickle + +import atom +import atom.http +import atom.service +from atom import mock_http +import gdata.apps +import gdata.apps.service +import getpass + +apps_domain = 'test.shehas.net' +apps_username = '' +apps_password = '' + + +def conceal_secrets(recordings): + ret = [] + for rec in recordings: + req, res = rec + if req.data: + req.data = re.sub(r'Passwd=[^&]+', 'Passwd=hogehoge', req.data) + if res.body: + res.body = re.sub(r'SID=[^\n]+', 'SID=hogehoge', res.body) + res.body = re.sub(r'LSID=[^\n]+', 'LSID=hogehoge', res.body) + res.body = re.sub(r'Auth=[^\n]+', 'Auth=hogehoge', res.body) + if req.headers.has_key('Authorization'): + req.headers['Authorization'] = 'hogehoge' + ret.append((req, res)) + return ret + +class AppsServiceBaseTest(object): + + def setUp(self): + self.datafile = os.path.join(os.path.dirname(os.path.abspath(__file__)), + "%s.pickle" % self.name) + if os.path.isfile(self.datafile): + f = open(self.datafile, "rb") + data = pickle.load(f) + f.close() + http_client = mock_http.MockHttpClient(recordings=data) + else: + real_client = atom.http.ProxiedHttpClient() + http_client = mock_http.MockHttpClient(real_client=real_client) + + email = apps_username + '@' + apps_domain + self.apps_client = gdata.apps.service.AppsService( + email=email, domain=apps_domain, password=apps_password, + source='AppsClient "Unit" Tests') + self.apps_client.http_client = http_client + self.apps_client.ProgrammaticLogin() + + def tearDown(self): + if self.apps_client.http_client.real_client: + # create pickle file + f = open(self.datafile, "wb") + data = conceal_secrets(self.apps_client.http_client.recordings) + pickle.dump(data, f) + f.close() + +class AppsServiceTestForGetGeneratorForAllRecipients(AppsServiceBaseTest, + unittest.TestCase): + name = "AppsServiceTestForGetGeneratorForAllRecipients" + def testGetGeneratorForAllRecipients(self): + """Tests GetGeneratorForAllRecipientss method""" + generator = self.apps_client.GetGeneratorForAllRecipients( + "b101-20091013151051") + i = 0 + for recipient_feed in generator: + for a_recipient in recipient_feed.entry: + i = i + 1 + self.assert_(i == 102) + +class AppsServiceTestForGetGeneratorForAllEmailLists(AppsServiceBaseTest, + unittest.TestCase): + name = "AppsServiceTestForGetGeneratorForAllEmailLists" + def testGetGeneratorForAllEmailLists(self): + """Tests GetGeneratorForAllEmailLists method""" + generator = self.apps_client.GetGeneratorForAllEmailLists() + i = 0 + for emaillist_feed in generator: + for a_emaillist in emaillist_feed.entry: + i = i + 1 + self.assert_(i == 105) + +class AppsServiceTestForGetGeneratorForAllNicknames(AppsServiceBaseTest, + unittest.TestCase): + name = "AppsServiceTestForGetGeneratorForAllNicknames" + def testGetGeneratorForAllNicknames(self): + """Tests GetGeneratorForAllNicknames method""" + generator = self.apps_client.GetGeneratorForAllNicknames() + i = 0 + for nickname_feed in generator: + for a_nickname in nickname_feed.entry: + i = i + 1 + self.assert_(i == 102) + + +class AppsServiceTestForGetGeneratorForAllUsers(AppsServiceBaseTest, + unittest.TestCase): + name = "AppsServiceTestForGetGeneratorForAllUsers" + + def testGetGeneratorForAllUsers(self): + """Tests GetGeneratorForAllUsers method""" + generator = self.apps_client.GetGeneratorForAllUsers() + i = 0 + for user_feed in generator: + for a_user in user_feed.entry: + i = i + 1 + self.assert_(i == 102) + +if __name__ == '__main__': + print ('The tests may delete or update your data.') + apps_username = raw_input('Please enter your username: ') + apps_password = getpass.getpass() + unittest.main() diff -Nru python-gdata-1.2.4/tests/gdata_tests/apps/TestDataForGeneratorTest.p python-gdata-2.0.8/tests/gdata_tests/apps/TestDataForGeneratorTest.p --- python-gdata-1.2.4/tests/gdata_tests/apps/TestDataForGeneratorTest.p 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_tests/apps/TestDataForGeneratorTest.p 2008-05-13 01:56:46.000000000 +0100 @@ -0,0 +1,105 @@ +(lp0 +(ccopy_reg +_reconstructor +p1 +(catom.mock_service +MockRequest +p2 +c__builtin__ +object +p3 +Ntp4 +Rp5 +(dp6 +S'url_params' +p7 +(dp8 +sS'extra_headers' +p9 +(dp10 +S'Content-Type' +p11 +S'application/atom+xml' +p12 +sS'Authorization' +p13 +NssS'escape_params' +p14 +I01 +sS'uri' +p15 +S'https://www.google.com/a/feeds/test.shehas.net/user/2.0' +p16 +sS'content_type' +p17 +g12 +sS'operation' +p18 +S'GET' +p19 +sS'data' +p20 +Nsbg1 +(catom.mock_service +MockHttpResponse +p21 +g3 +Ntp22 +Rp23 +(dp24 +S'body' +p25 +S"https://www.google.com:443/a/feeds/test.shehas.net/user/2.01970-01-01T00:00:00.000ZUsers1https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0001970-01-01T00:00:00.000Ztestuser-20080307140302-000https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0011970-01-01T00:00:00.000Ztestuser-20080307140302-001https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0021970-01-01T00:00:00.000Ztestuser-20080307140302-002https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0031970-01-01T00:00:00.000Ztestuser-20080307140302-003https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0041970-01-01T00:00:00.000Ztestuser-20080307140302-004https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0051970-01-01T00:00:00.000Ztestuser-20080307140302-005https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0061970-01-01T00:00:00.000Ztestuser-20080307140302-006https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0071970-01-01T00:00:00.000Ztestuser-20080307140302-007https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0081970-01-01T00:00:00.000Ztestuser-20080307140302-008https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0091970-01-01T00:00:00.000Ztestuser-20080307140302-009https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0101970-01-01T00:00:00.000Ztestuser-20080307140302-010https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0111970-01-01T00:00:00.000Ztestuser-20080307140302-011https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0121970-01-01T00:00:00.000Ztestuser-20080307140302-012https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0131970-01-01T00:00:00.000Ztestuser-20080307140302-013https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0141970-01-01T00:00:00.000Ztestuser-20080307140302-014https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0151970-01-01T00:00:00.000Ztestuser-20080307140302-015https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0161970-01-01T00:00:00.000Ztestuser-20080307140302-016https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0171970-01-01T00:00:00.000Ztestuser-20080307140302-017https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0181970-01-01T00:00:00.000Ztestuser-20080307140302-018https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0191970-01-01T00:00:00.000Ztestuser-20080307140302-019https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0201970-01-01T00:00:00.000Ztestuser-20080307140302-020https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0211970-01-01T00:00:00.000Ztestuser-20080307140302-021https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0221970-01-01T00:00:00.000Ztestuser-20080307140302-022https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0231970-01-01T00:00:00.000Ztestuser-20080307140302-023https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0241970-01-01T00:00:00.000Ztestuser-20080307140302-024https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0251970-01-01T00:00:00.000Ztestuser-20080307140302-025https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0261970-01-01T00:00:00.000Ztestuser-20080307140302-026https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0271970-01-01T00:00:00.000Ztestuser-20080307140302-027https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0281970-01-01T00:00:00.000Ztestuser-20080307140302-028https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0291970-01-01T00:00:00.000Ztestuser-20080307140302-029https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0301970-01-01T00:00:00.000Ztestuser-20080307140302-030https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0311970-01-01T00:00:00.000Ztestuser-20080307140302-031https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0321970-01-01T00:00:00.000Ztestuser-20080307140302-032https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0331970-01-01T00:00:00.000Ztestuser-20080307140302-033https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0341970-01-01T00:00:00.000Ztestuser-20080307140302-034https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0351970-01-01T00:00:00.000Ztestuser-20080307140302-035https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0361970-01-01T00:00:00.000Ztestuser-20080307140302-036https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0371970-01-01T00:00:00.000Ztestuser-20080307140302-037https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0381970-01-01T00:00:00.000Ztestuser-20080307140302-038https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0391970-01-01T00:00:00.000Ztestuser-20080307140302-039https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0401970-01-01T00:00:00.000Ztestuser-20080307140302-040https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0411970-01-01T00:00:00.000Ztestuser-20080307140302-041https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0421970-01-01T00:00:00.000Ztestuser-20080307140302-042https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0431970-01-01T00:00:00.000Ztestuser-20080307140302-043https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0441970-01-01T00:00:00.000Ztestuser-20080307140302-044https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0451970-01-01T00:00:00.000Ztestuser-20080307140302-045https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0461970-01-01T00:00:00.000Ztestuser-20080307140302-046https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0471970-01-01T00:00:00.000Ztestuser-20080307140302-047https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0481970-01-01T00:00:00.000Ztestuser-20080307140302-048https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0491970-01-01T00:00:00.000Ztestuser-20080307140302-049https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0501970-01-01T00:00:00.000Ztestuser-20080307140302-050https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0511970-01-01T00:00:00.000Ztestuser-20080307140302-051https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0521970-01-01T00:00:00.000Ztestuser-20080307140302-052https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0531970-01-01T00:00:00.000Ztestuser-20080307140302-053https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0541970-01-01T00:00:00.000Ztestuser-20080307140302-054https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0551970-01-01T00:00:00.000Ztestuser-20080307140302-055https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0561970-01-01T00:00:00.000Ztestuser-20080307140302-056https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0571970-01-01T00:00:00.000Ztestuser-20080307140302-057https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0581970-01-01T00:00:00.000Ztestuser-20080307140302-058https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0591970-01-01T00:00:00.000Ztestuser-20080307140302-059https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0601970-01-01T00:00:00.000Ztestuser-20080307140302-060https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0611970-01-01T00:00:00.000Ztestuser-20080307140302-061https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0621970-01-01T00:00:00.000Ztestuser-20080307140302-062https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0631970-01-01T00:00:00.000Ztestuser-20080307140302-063https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0641970-01-01T00:00:00.000Ztestuser-20080307140302-064https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0651970-01-01T00:00:00.000Ztestuser-20080307140302-065https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0661970-01-01T00:00:00.000Ztestuser-20080307140302-066https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0671970-01-01T00:00:00.000Ztestuser-20080307140302-067https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0681970-01-01T00:00:00.000Ztestuser-20080307140302-068https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0691970-01-01T00:00:00.000Ztestuser-20080307140302-069https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0701970-01-01T00:00:00.000Ztestuser-20080307140302-070https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0711970-01-01T00:00:00.000Ztestuser-20080307140302-071https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0721970-01-01T00:00:00.000Ztestuser-20080307140302-072https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0731970-01-01T00:00:00.000Ztestuser-20080307140302-073https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0741970-01-01T00:00:00.000Ztestuser-20080307140302-074https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0751970-01-01T00:00:00.000Ztestuser-20080307140302-075https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0761970-01-01T00:00:00.000Ztestuser-20080307140302-076https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0771970-01-01T00:00:00.000Ztestuser-20080307140302-077https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0781970-01-01T00:00:00.000Ztestuser-20080307140302-078https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0791970-01-01T00:00:00.000Ztestuser-20080307140302-079https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0801970-01-01T00:00:00.000Ztestuser-20080307140302-080https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0811970-01-01T00:00:00.000Ztestuser-20080307140302-081https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0821970-01-01T00:00:00.000Ztestuser-20080307140302-082https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0831970-01-01T00:00:00.000Ztestuser-20080307140302-083https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0841970-01-01T00:00:00.000Ztestuser-20080307140302-084https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0851970-01-01T00:00:00.000Ztestuser-20080307140302-085https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0861970-01-01T00:00:00.000Ztestuser-20080307140302-086https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0871970-01-01T00:00:00.000Ztestuser-20080307140302-087https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0881970-01-01T00:00:00.000Ztestuser-20080307140302-088https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0891970-01-01T00:00:00.000Ztestuser-20080307140302-089https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0901970-01-01T00:00:00.000Ztestuser-20080307140302-090https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0911970-01-01T00:00:00.000Ztestuser-20080307140302-091https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0921970-01-01T00:00:00.000Ztestuser-20080307140302-092https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0931970-01-01T00:00:00.000Ztestuser-20080307140302-093https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0941970-01-01T00:00:00.000Ztestuser-20080307140302-094https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0951970-01-01T00:00:00.000Ztestuser-20080307140302-095https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0961970-01-01T00:00:00.000Ztestuser-20080307140302-096https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0971970-01-01T00:00:00.000Ztestuser-20080307140302-097https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0981970-01-01T00:00:00.000Ztestuser-20080307140302-098https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/testuser-20080307140302-0991970-01-01T00:00:00.000Ztestuser-20080307140302-099" +p26 +sS'status' +p27 +I200 +sS'reason' +p28 +S'OK' +p29 +sS'headers' +p30 +(dp31 +sbtp32 +a(g1 +(g2 +g3 +Ntp33 +Rp34 +(dp35 +g7 +(dp36 +sg9 +(dp37 +g11 +g12 +sg13 +Nssg14 +I01 +sg15 +S'https://www.google.com:443/a/feeds/test.shehas.net/user/2.0?startUsername=tmatsuo' +p38 +sg17 +g12 +sg18 +g19 +sg20 +Nsbg1 +(g21 +g3 +Ntp39 +Rp40 +(dp41 +g25 +S"https://www.google.com:443/a/feeds/test.shehas.net/user/2.01970-01-01T00:00:00.000ZUsers1https://www.google.com:443/a/feeds/test.shehas.net/user/2.0/tmatsuo1970-01-01T00:00:00.000Ztmatsuo" +p42 +sg27 +I200 +sg28 +S'OK' +p43 +sg30 +(dp44 +sbtp45 +a. \ No newline at end of file diff -Nru python-gdata-1.2.4/tests/gdata_tests/auth_test.py python-gdata-2.0.8/tests/gdata_tests/auth_test.py --- python-gdata-1.2.4/tests/gdata_tests/auth_test.py 2008-12-02 02:34:45.000000000 +0000 +++ python-gdata-2.0.8/tests/gdata_tests/auth_test.py 2009-06-08 19:50:43.000000000 +0100 @@ -1,4 +1,4 @@ -#!/usr/bin/python +#!/usr/bin/env python # # Copyright (C) 2007, 2008 Google Inc. # diff -Nru python-gdata-1.2.4/tests/gdata_tests/blogger/data_test.py python-gdata-2.0.8/tests/gdata_tests/blogger/data_test.py --- python-gdata-1.2.4/tests/gdata_tests/blogger/data_test.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_tests/blogger/data_test.py 2009-07-21 23:57:53.000000000 +0100 @@ -0,0 +1,103 @@ +#!/usr/bin/env python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +__author__ = 'j.s@google.com (Jeff Scudder)' + + +import unittest +from gdata import test_data +import gdata.blogger.data +import atom.core +import gdata.test_config as conf + + +class BlogEntryTest(unittest.TestCase): + + def testBlogEntryFromString(self): + entry = atom.core.parse(test_data.BLOG_ENTRY, gdata.blogger.data.Blog) + self.assertEquals(entry.GetBlogName(), 'blogName') + self.assertEquals(entry.GetBlogId(), 'blogID') + self.assertEquals(entry.title.text, 'Lizzy\'s Diary') + + def testBlogPostFeedFromString(self): + feed = atom.core.parse(test_data.BLOG_POSTS_FEED, + gdata.blogger.data.BlogPostFeed) + self.assertEquals(len(feed.entry), 1) + self.assert_(isinstance(feed, gdata.blogger.data.BlogPostFeed)) + self.assert_(isinstance(feed.entry[0], gdata.blogger.data.BlogPost)) + self.assertEquals(feed.entry[0].GetPostId(), 'postID') + self.assertEquals(feed.entry[0].GetBlogId(), 'blogID') + self.assertEquals(feed.entry[0].title.text, 'Quite disagreeable') + + def testCommentFeedFromString(self): + feed = atom.core.parse(test_data.BLOG_COMMENTS_FEED, + gdata.blogger.data.CommentFeed) + self.assertEquals(len(feed.entry), 1) + self.assert_(isinstance(feed, gdata.blogger.data.CommentFeed)) + self.assert_(isinstance(feed.entry[0], gdata.blogger.data.Comment)) + self.assertEquals(feed.entry[0].get_blog_id(), 'blogID') + self.assertEquals(feed.entry[0].get_comment_id(), 'commentID') + self.assertEquals(feed.entry[0].title.text, 'This is my first comment') + self.assertEquals(feed.entry[0].in_reply_to.source, + 'http://blogName.blogspot.com/feeds/posts/default/postID') + self.assertEquals(feed.entry[0].in_reply_to.ref, + 'tag:blogger.com,1999:blog-blogID.post-postID') + self.assertEquals(feed.entry[0].in_reply_to.href, + 'http://blogName.blogspot.com/2007/04/first-post.html') + self.assertEquals(feed.entry[0].in_reply_to.type, 'text/html') + + def testIdParsing(self): + entry = gdata.blogger.data.Blog() + entry.id = atom.data.Id( + text='tag:blogger.com,1999:user-146606542.blog-4023408167658848') + self.assertEquals(entry.GetBlogId(), '4023408167658848') + entry.id = atom.data.Id(text='tag:blogger.com,1999:blog-4023408167658848') + self.assertEquals(entry.GetBlogId(), '4023408167658848') + + +class InReplyToTest(unittest.TestCase): + + def testToAndFromString(self): + in_reply_to = gdata.blogger.data.InReplyTo( + href='http://example.com/href', ref='http://example.com/ref', + source='http://example.com/my_post', type='text/html') + xml_string = str(in_reply_to) + parsed = atom.core.parse(xml_string, gdata.blogger.data.InReplyTo) + self.assertEquals(parsed.source, in_reply_to.source) + self.assertEquals(parsed.href, in_reply_to.href) + self.assertEquals(parsed.ref, in_reply_to.ref) + self.assertEquals(parsed.type, in_reply_to.type) + + +class CommentTest(unittest.TestCase): + + def testToAndFromString(self): + comment = gdata.blogger.data.Comment( + content=atom.data.Content(text='Nifty!'), + in_reply_to=gdata.blogger.data.InReplyTo( + source='http://example.com/my_post')) + parsed = atom.core.parse(str(comment), gdata.blogger.data.Comment) + self.assertEquals(parsed.in_reply_to.source, comment.in_reply_to.source) + self.assertEquals(parsed.content.text, comment.content.text) + + +def suite(): + return conf.build_suite([BlogEntryTest, InReplyToTest, CommentTest]) + + +if __name__ == '__main__': + unittest.main() diff -Nru python-gdata-1.2.4/tests/gdata_tests/blogger/live_client_test.py python-gdata-2.0.8/tests/gdata_tests/blogger/live_client_test.py --- python-gdata-1.2.4/tests/gdata_tests/blogger/live_client_test.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_tests/blogger/live_client_test.py 2009-10-09 01:30:05.000000000 +0100 @@ -0,0 +1,114 @@ +#!/usr/bin/env python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +# This module is used for version 2 of the Google Data APIs. +# These tests attempt to connect to Google servers. + + +__author__ = 'j.s@google.com (Jeff Scudder)' + + +import unittest +import gdata.blogger.client +import gdata.blogger.data +import gdata.gauth +import gdata.client +import atom.http_core +import atom.mock_http_core +import atom.core +import gdata.data +import gdata.test_config as conf + + +conf.options.register_option(conf.BLOG_ID_OPTION) + + +class BloggerClientTest(unittest.TestCase): + + def setUp(self): + self.client = None + if conf.options.get_value('runlive') == 'true': + self.client = gdata.blogger.client.BloggerClient() + conf.configure_client(self.client, 'BloggerTest', 'blogger') + + def tearDown(self): + conf.close_client(self.client) + + def test_create_update_delete(self): + if not conf.options.get_value('runlive') == 'true': + return + # Either load the recording or prepare to make a live request. + conf.configure_cache(self.client, 'test_create_update_delete') + + # Add a blog post. + created = self.client.add_post(conf.options.get_value('blogid'), + 'test post from BloggerClientTest', + 'Hey look, another test!', + labels=['test', 'python']) + + self.assertEqual(created.title.text, 'test post from BloggerClientTest') + self.assertEqual(created.content.text, 'Hey look, another test!') + self.assertEqual(len(created.category), 2) + self.assert_(created.control is None) + + # Change the title of the blog post we just added. + created.title.text = 'Edited' + updated = self.client.update(created) + + self.assertEqual(updated.title.text, 'Edited') + self.assert_(isinstance(updated, gdata.blogger.data.BlogPost)) + self.assertEqual(updated.content.text, created.content.text) + + # Delete the test entry from the blog. + self.client.delete(updated) + + def test_create_draft_post(self): + if not conf.options.get_value('runlive') == 'true': + return + conf.configure_cache(self.client, 'test_create_draft_post') + + # Add a draft blog post. + created = self.client.add_post(conf.options.get_value('blogid'), + 'draft test post from BloggerClientTest', + 'This should only be a draft.', + labels=['test2', 'python'], draft=True) + + self.assertEqual(created.title.text, + 'draft test post from BloggerClientTest') + self.assertEqual(created.content.text, 'This should only be a draft.') + self.assertEqual(len(created.category), 2) + self.assert_(created.control is not None) + self.assert_(created.control.draft is not None) + self.assertEqual(created.control.draft.text, 'yes') + + # Publish the blog post. + created.control.draft.text = 'no' + updated = self.client.update(created) + + if updated.control is not None and updated.control.draft is not None: + self.assertNotEqual(updated.control.draft.text, 'yes') + + # Delete the test entry from the blog using the URL instead of the entry. + self.client.delete(updated.find_edit_link()) + + +def suite(): + return conf.build_suite([BloggerClientTest]) + + +if __name__ == '__main__': + unittest.TextTestRunner().run(suite()) diff -Nru python-gdata-1.2.4/tests/gdata_tests/books/service_test.py python-gdata-2.0.8/tests/gdata_tests/books/service_test.py --- python-gdata-1.2.4/tests/gdata_tests/books/service_test.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_tests/books/service_test.py 2009-05-18 19:45:32.000000000 +0100 @@ -0,0 +1,64 @@ +#!/usr/bin/python + +__author__ = "James Sams " + +import unittest +import getpass + +import atom +import gdata.books +import gdata.books.service + +from gdata import test_data + +username = "" +password = "" + +class BookCRUDTests(unittest.TestCase): + + def setUp(self): + self.service = gdata.books.service.BookService(email=username, + password=password, source="Google-PythonGdataTest-1") + if username and password: + self.authenticated = True + self.service.ProgrammaticLogin() + else: + self.authenticated = False + + def testPublicSearch(self): + entry = self.service.get_by_google_id("b7GZr5Btp30C") + self.assertEquals((entry.creator[0].text, entry.dc_title[0].text), + ('John Rawls', 'A theory of justice')) + feed = self.service.search_by_keyword(isbn="9780198250548") + feed1 = self.service.search("9780198250548") + self.assertEquals(len(feed.entry), 1) + self.assertEquals(len(feed1.entry), 1) + + def testLibraryCrd(self): + """ + the success of the create operations assumes the book was not already + in the library. if it was, there will not be a failure, but a successful + add will not actually be tested. + """ + if not self.authenticated: + return + entry = self.service.get_by_google_id("b7GZr5Btp30C") + entry = self.service.add_item_to_library(entry) + lib = list(self.service.get_library()) + self.assert_(entry.to_dict()['title'] in + [x.to_dict()['title'] for x in lib]) + self.service.remove_item_from_library(entry) + lib = list(self.service.get_library()) + self.assert_(entry.to_dict()['title'] not in + [x.to_dict()['title'] for x in lib]) + + def testAnnotations(self): + "annotations do not behave as expected" + pass + + +if __name__ == "__main__": + print "Please use a test account. May cause data loss." + username = raw_input("Google Username: ").strip() + password = getpass.getpass() + unittest.main() diff -Nru python-gdata-1.2.4/tests/gdata_tests/books_test.py python-gdata-2.0.8/tests/gdata_tests/books_test.py --- python-gdata-1.2.4/tests/gdata_tests/books_test.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_tests/books_test.py 2009-11-18 23:25:39.000000000 +0000 @@ -0,0 +1,58 @@ +#!/usr/bin/python + + +__author__ = "James Sams " + + +import unittest +from gdata import test_data +import gdata.books +import atom + + +class BookEntryTest(unittest.TestCase): + + def testBookEntryFromString(self): + entry = gdata.books.Book.FromString(test_data.BOOK_ENTRY) + self.assert_(isinstance(entry, gdata.books.Book)) + self.assertEquals([x.text for x in entry.creator], ['John Rawls']) + self.assertEquals(entry.date.text, '1999') + self.assertEquals(entry.format.text, '538 pages') + self.assertEquals([x.text for x in entry.identifier], + ['b7GZr5Btp30C', 'ISBN:0198250541', 'ISBN:9780198250548']) + self.assertEquals([x.text for x in entry.publisher], + ['Oxford University Press']) + self.assertEquals(entry.subject, None) + self.assertEquals([x.text for x in entry.dc_title], + ['A theory of justice']) + self.assertEquals(entry.viewability.value, + 'http://schemas.google.com/books/2008#view_partial') + self.assertEquals(entry.embeddability.value, + 'http://schemas.google.com/books/2008#embeddable') + self.assertEquals(entry.review, None) + self.assertEquals([getattr(entry.rating, x) for x in + ("min", "max", "average", "value")], ['1', '5', '4.00', None]) + self.assertEquals(entry.GetThumbnailLink().href, + 'http://bks0.books.google.com/books?id=b7GZr5Btp30C&printsec=frontcover&img=1&zoom=5&sig=ACfU3U121bWZsbjBfVwVRSK2o982jJTd1w&source=gbs_gdata') + self.assertEquals(entry.GetInfoLink().href, + 'http://books.google.com/books?id=b7GZr5Btp30C&ie=ISO-8859-1&source=gbs_gdata') + self.assertEquals(entry.GetPreviewLink(), None) + self.assertEquals(entry.GetAnnotationLink().href, + 'http://www.google.com/books/feeds/users/me/volumes') + self.assertEquals(entry.get_google_id(), 'b7GZr5Btp30C') + + def testBookFeedFromString(self): + feed = gdata.books.BookFeed.FromString(test_data.BOOK_FEED) + self.assert_(isinstance(feed, gdata.books.BookFeed)) + self.assertEquals( len(feed.entry), 1) + self.assert_(isinstance(feed.entry[0], gdata.books.Book)) + + def testBookEntryToDict(self): + book = gdata.books.Book() + book.dc_title.append(gdata.books.Title(text='a')) + book.dc_title.append(gdata.books.Title(text='b')) + book.dc_title.append(gdata.books.Title(text='c')) + self.assertEqual(book.to_dict()['title'], 'a b c') + +if __name__ == "__main__": + unittest.main() diff -Nru python-gdata-1.2.4/tests/gdata_tests/calendar/service_test.py python-gdata-2.0.8/tests/gdata_tests/calendar/service_test.py --- python-gdata-1.2.4/tests/gdata_tests/calendar/service_test.py 2008-09-06 00:26:05.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_tests/calendar/service_test.py 2009-11-12 18:53:39.000000000 +0000 @@ -28,9 +28,6 @@ import random import getpass -# Commented out as dateutil is not in this repository -#from dateutil.parser import parse - username = '' password = '' @@ -188,7 +185,7 @@ comments_entry.content = atom.Content(text='Comments content') comments_entry.author.append( atom.Author(name=atom.Name(text='GData Test user'), - email=atom.Email(text='gdata.ops.demo@gmail.com'))) + email=atom.Email(text=username))) new_comments_entry = self.cal_client.InsertEventComment(comments_entry, comments_feed.GetPostLink().href) @@ -280,6 +277,81 @@ self.assertEquals(after_delete_query_result.entry[0].event_status.value, 'CANCELED') + def testEventWithSyncEventAndUID(self): + """Test posting a new entry (with syncEvent and a UID) and deleting it.""" + + # Get random data for creating event + r = random.Random() + r.seed() + random_event_number = str(r.randint(100000,1000000)) + random_event_title = 'My Random Test Event %s' % random_event_number + + random_start_hour = (r.randint(1,1000000) % 23) + random_end_hour = random_start_hour + 1 + non_random_start_minute = 0 + non_random_end_minute = 0 + random_month = (r.randint(1,1000000) % 12 + 1) + random_day_of_month = (r.randint(1,1000000) % 28 + 1) + non_random_year = 2008 + start_time = '%04d-%02d-%02dT%02d:%02d:00.000-05:00' % ( + non_random_year, random_month, random_day_of_month, + random_start_hour, non_random_start_minute,) + end_time = '%04d-%02d-%02dT%02d:%02d:00.000-05:00' % ( + non_random_year, random_month, random_day_of_month, + random_end_hour, non_random_end_minute,) + + # create a random event ID. I'm mimicing an example from outlook here, + # the format doesn't seem to be important per the RFC except for being + # globally unique. + uid_string = '' + for i in xrange(121): + uid_string += "%X" % r.randint(0, 0xf) + + # Set event data + event = gdata.calendar.CalendarEventEntry() + event.author.append(atom.Author(name=atom.Name(text='GData Test user'))) + event.title = atom.Title(text=random_event_title) + event.content = atom.Content(text='Picnic with some lunch') + event.where.append(gdata.calendar.Where(value_string='Down by the river')) + event.when.append(gdata.calendar.When( + start_time=start_time,end_time=end_time)) + event.sync_event = gdata.calendar.SyncEvent('true') + event.uid = gdata.calendar.UID(value=uid_string) + + # Insert event + self.cal_client.ProgrammaticLogin() + new_event = self.cal_client.InsertEvent(event, + '/calendar/feeds/default/private/full') + + # Inserting it a second time should fail, as it'll have the same UID + try: + bad_event = self.cal_client.InsertEvent(event, + '/calendar/feeds/default/private/full') + self.fail('Was able to insert an event with a duplicate UID') + except gdata.service.RequestError, error: + # for the current problem with redirects, just re-raise so the + # failure doesn't seem to be because of the duplicate UIDs. + status = error[0]['status'] + if status == 302: + raise + + # otherwise, make sure it was the right error + self.assertEquals(error[0]['status'], 409) + self.assertEquals(error[0]['reason'], 'Conflict') + + # Ensure that atom data returned from calendar server equals atom data + # sent + self.assertEquals(event.title.text, new_event.title.text) + self.assertEquals(event.content.text, new_event.content.text) + + # Ensure that gd:where data returned from calendar equals value sent + self.assertEquals(event.where[0].value_string, + new_event.where[0].value_string) + + # Delete the event + self.cal_client.DeleteEvent(new_event.GetEditLink().href) + + def testCreateAndDeleteEventUsingBatch(self): # Get random data for creating event r = random.Random() diff -Nru python-gdata-1.2.4/tests/gdata_tests/calendar_resource/data_test.py python-gdata-2.0.8/tests/gdata_tests/calendar_resource/data_test.py --- python-gdata-1.2.4/tests/gdata_tests/calendar_resource/data_test.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_tests/calendar_resource/data_test.py 2010-01-26 18:29:05.000000000 +0000 @@ -0,0 +1,73 @@ +#!/usr/bin/python +# +# Copyright (C) 2008 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +__author__ = 'Vic Fryzel ' + + +import unittest +import atom.core +from gdata import test_data +import gdata.calendar_resource.data +import gdata.test_config as conf + + +class CalendarResourceEntryTest(unittest.TestCase): + + def setUp(self): + self.entry = atom.core.parse(test_data.CALENDAR_RESOURCE_ENTRY, + gdata.calendar_resource.data.CalendarResourceEntry) + self.feed = atom.core.parse(test_data.CALENDAR_RESOURCES_FEED, + gdata.calendar_resource.data.CalendarResourceFeed) + + def testCalendarResourceEntryFromString(self): + self.assert_(isinstance(self.entry, + gdata.calendar_resource.data.CalendarResourceEntry)) + self.assertEquals(self.entry.resource_id, 'CR-NYC-14-12-BR') + self.assertEquals(self.entry.resource_common_name, 'Boardroom') + self.assertEquals(self.entry.resource_description, + ('This conference room is in New York City, building 14, floor 12, ' + 'Boardroom')) + self.assertEquals(self.entry.resource_type, 'CR') + + def testCalendarResourceFeedFromString(self): + self.assertEquals(len(self.feed.entry), 2) + self.assert_(isinstance(self.feed, + gdata.calendar_resource.data.CalendarResourceFeed)) + self.assert_(isinstance(self.feed.entry[0], + gdata.calendar_resource.data.CalendarResourceEntry)) + self.assert_(isinstance(self.feed.entry[1], + gdata.calendar_resource.data.CalendarResourceEntry)) + self.assertEquals(self.feed.entry[0].resource_id, 'CR-NYC-14-12-BR') + self.assertEquals(self.feed.entry[0].resource_common_name, 'Boardroom') + self.assertEquals(self.feed.entry[0].resource_description, + ('This conference room is in New York City, building 14, floor 12, ' + 'Boardroom')) + self.assertEquals(self.feed.entry[0].resource_type, 'CR') + self.assertEquals(self.feed.entry[1].resource_id, + '(Bike)-London-43-Lobby-Bike-1') + self.assertEquals(self.feed.entry[1].resource_common_name, 'London bike-1') + self.assertEquals(self.feed.entry[1].resource_description, + 'Bike is in London at building 43\'s lobby.') + self.assertEquals(self.feed.entry[1].resource_type, '(Bike)') + + +def suite(): + return conf.build_suite([CalendarResourceEntryTest]) + + +if __name__ == '__main__': + unittest.main() diff -Nru python-gdata-1.2.4/tests/gdata_tests/calendar_resource/live_client_test.py python-gdata-2.0.8/tests/gdata_tests/calendar_resource/live_client_test.py --- python-gdata-1.2.4/tests/gdata_tests/calendar_resource/live_client_test.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_tests/calendar_resource/live_client_test.py 2010-02-26 21:49:54.000000000 +0000 @@ -0,0 +1,93 @@ +#!/usr/bin/python +# +# Copyright 2009 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# This module is used for version 2 of the Google Data APIs. +# These tests attempt to connect to Google servers. + + +__author__ = 'Vic Fryzel ' + + +import unittest +import gdata.client +import gdata.data +import gdata.gauth +import gdata.calendar_resource.client +import gdata.calendar_resource.data +import gdata.test_config as conf + + +conf.options.register_option(conf.APPS_DOMAIN_OPTION) + + +class CalendarResourceClientTest(unittest.TestCase): + + def setUp(self): + self.client = None + if conf.options.get_value('runlive') == 'true': + self.client = gdata.calendar_resource.client.CalendarResourceClient( + domain=conf.options.get_value('appsdomain')) + if conf.options.get_value('ssl') == 'true': + self.client.ssl = True + conf.configure_client(self.client, 'CalendarResourceClientTest', + self.client.auth_service, True) + + def tearDown(self): + conf.close_client(self.client) + + def testCreateUpdateDelete(self): + if not conf.options.get_value('runlive') == 'true': + return + + # Either load the recording or prepare to make a live request. + conf.configure_cache(self.client, 'testCreateUpdateDelete') + + new_entry = self.client.CreateResource( + 'CR-NYC-14-12-BR', 'Boardroom', + ('This conference room is in New York City, building 14, floor 12, ' + 'Boardroom'), 'CR') + + self.assert_(isinstance(new_entry, + gdata.calendar_resource.data.CalendarResourceEntry)) + self.assertEqual(new_entry.resource_id, 'CR-NYC-14-12-BR') + self.assertEqual(new_entry.resource_common_name, 'Boardroom') + self.assertEqual(new_entry.resource_description, + ('This conference room is in New York City, building 14, floor 12, ' + 'Boardroom')) + self.assertEqual(new_entry.resource_type, 'CR') + + new_entry.resource_id = 'CR-MTV-14-12-BR' + new_entry.resource_common_name = 'Executive Boardroom' + new_entry.resource_description = 'This conference room is in Mountain View' + new_entry.resource_type = 'BR' + updated_entry = self.client.update(new_entry) + self.assert_(isinstance(updated_entry, + gdata.calendar_resource.data.CalendarResourceEntry)) + self.assertEqual(updated_entry.resource_id, 'CR-MTV-14-12-BR') + self.assertEqual(updated_entry.resource_common_name, 'Executive Boardroom') + self.assertEqual(updated_entry.resource_description, + 'This conference room is in Mountain View') + self.assertEqual(updated_entry.resource_type, 'BR') + + self.client.delete(updated_entry) + + +def suite(): + return conf.build_suite([CalendarResourceClientTest]) + + +if __name__ == '__main__': + unittest.TextTestRunner().run(suite()) diff -Nru python-gdata-1.2.4/tests/gdata_tests/calendar_test.py python-gdata-2.0.8/tests/gdata_tests/calendar_test.py --- python-gdata-1.2.4/tests/gdata_tests/calendar_test.py 2008-06-06 22:48:48.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_tests/calendar_test.py 2009-12-17 18:54:00.000000000 +0000 @@ -250,6 +250,16 @@ entry.recurrence_exception[0].entry_link.entry.author[0].name.text, 'gdata ops') + def testSequence(self): + entry = gdata.calendar.CalendarEventEntry( + sequence=gdata.calendar.Sequence(value='1')) + entry2 = gdata.calendar.CalendarEventEntryFromString(str(entry)) + self.assertEqual(entry.sequence.value, entry2.sequence.value) + entry = gdata.calendar.CalendarEventEntryFromString( + '' % ( + atom.ATOM_NAMESPACE, gdata.calendar.GCAL_NAMESPACE)) + self.assertEqual(entry.sequence.value, '7') + def testOriginalEntry(self): """Make sure original entry in the private composite feed are parsed.""" @@ -862,6 +872,24 @@ self.assertEquals(expected_pref_value, web_content_element.gadget_pref[0].value) + def testSampleCode(self): + # From http://code.google.com/apis/calendar/gadgets/event/ + wc = gdata.calendar.WebContent() + wc.url = 'http://www.thefreedictionary.com/_/WoD/wod-module.xml' + wc.width = '300' + wc.height = '136' + wc.gadget_pref.append(gdata.calendar.WebContentGadgetPref(name='Days', value='1')) + wc.gadget_pref.append(gdata.calendar.WebContentGadgetPref(name='Format', value='0')) + wcl = gdata.calendar.WebContentLink() + wcl.title = 'Word of the Day' + wcl.href = 'http://www.thefreedictionary.com/favicon.ico' + wcl.type = 'application/x-google-gadgets+xml' + wcl.web_content = wc + self.assertEqual(wcl.web_content.url, + 'http://www.thefreedictionary.com/_/WoD/wod-module.xml') + self.assertEqual(wcl.type, 'application/x-google-gadgets+xml') + self.assertEqual(wcl.web_content.height, '136') + class ExtendedPropertyTest(unittest.TestCase): diff -Nru python-gdata-1.2.4/tests/gdata_tests/client_online_test.py python-gdata-2.0.8/tests/gdata_tests/client_online_test.py --- python-gdata-1.2.4/tests/gdata_tests/client_online_test.py 2008-12-03 18:56:53.000000000 +0000 +++ python-gdata-2.0.8/tests/gdata_tests/client_online_test.py 1970-01-01 01:00:00.000000000 +0100 @@ -1,96 +0,0 @@ -#!/usr/bin/python -# -# Copyright (C) 2008 Google Inc. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - - -__author__ = 'api.jscudder (Jeff Scudder)' - - -import unittest -import getpass -import gdata.client -import gdata.service -import gdata - - -username = '' -password = '' - - -def Utf8String(my_string): - return unicode(my_string, 'UTF-8') - - -class ClientLiveTest(unittest.TestCase): - - def setUp(self): - self.client = gdata.client.GDataClient() - - def testUnauthenticatedReads(self): - feed_str = self.client.Get('http://www.google.com/base/feeds/snippets', - parser=Utf8String) - self.assert_(feed_str.startswith(' - Marie-Louise's chocolate butter - - Ingredients: -
    -
  • 250g margarine,
  • -
  • 200g sugar,
  • -
  • 2 eggs, and
  • -
  • approx. 8 tsp cacao.
  • -
-
- en - testrecipes -
""" - new_entry = self.client.Post(entry, - 'http://www.google.com/base/feeds/items', - parser=gdata.GDataEntryFromString) - self.assert_(isinstance(new_entry, gdata.GDataEntry)) - self.client.Delete(new_entry.GetEditLink().href) - - -if __name__ == '__main__': - print ('GData Client Unit Tests\nNOTE: Please run these tests only ' - 'with a test account. The tests may delete or update your data.') - username = raw_input('Please enter your username: ') - password = getpass.getpass() - unittest.main() diff -Nru python-gdata-1.2.4/tests/gdata_tests/client_smoke_test.py python-gdata-2.0.8/tests/gdata_tests/client_smoke_test.py --- python-gdata-1.2.4/tests/gdata_tests/client_smoke_test.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_tests/client_smoke_test.py 2010-02-19 00:15:20.000000000 +0000 @@ -0,0 +1,58 @@ +#!/usr/bin/env python +# +# Copyright (C) 2010 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +# This module is used for version 2 of the Google Data APIs. + + +__author__ = 'j.s@google.com (Jeff Scudder)' + + +import unittest +import gdata.test_config as conf +import gdata.analytics.client +import gdata.blogger.client +import gdata.spreadsheets.client +import gdata.calendar_resource.client +import gdata.contacts.client +import gdata.docs.client +import gdata.maps.client +import gdata.projecthosting.client +import gdata.sites.client + + +class ClientSmokeTest(unittest.TestCase): + + def test_check_auth_client_classes(self): + conf.check_clients_with_auth(self, ( + gdata.analytics.client.AnalyticsClient, + gdata.blogger.client.BloggerClient, + gdata.spreadsheets.client.SpreadsheetsClient, + gdata.calendar_resource.client.CalendarResourceClient, + gdata.contacts.client.ContactsClient, + gdata.docs.client.DocsClient, + gdata.maps.client.MapsClient, + gdata.projecthosting.client.ProjectHostingClient, + gdata.sites.client.SitesClient + )) + + +def suite(): + return conf.build_suite([ClientSmokeTest]) + + +if __name__ == '__main__': + unittest.main() diff -Nru python-gdata-1.2.4/tests/gdata_tests/client_test.py python-gdata-2.0.8/tests/gdata_tests/client_test.py --- python-gdata-1.2.4/tests/gdata_tests/client_test.py 2008-12-03 18:56:36.000000000 +0000 +++ python-gdata-2.0.8/tests/gdata_tests/client_test.py 2009-12-18 02:30:37.000000000 +0000 @@ -1,6 +1,6 @@ -#!/usr/bin/python +#!/usr/bin/env python # -# Copyright (C) 2008 Google Inc. +# Copyright (C) 2008, 2009 Google Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -15,82 +15,340 @@ # limitations under the License. -__author__ = 'api.jscudder (Jeff Scudder)' +# This module is used for version 2 of the Google Data APIs. + + +__author__ = 'j.s@google.com (Jeff Scudder)' import unittest -import getpass import gdata.client -import gdata.auth -import gdata.service -import atom.http_interface +import gdata.gauth +import gdata.data +import atom.mock_http_core +import StringIO + + +class ClientLoginTest(unittest.TestCase): + + def test_token_request(self): + client = gdata.client.GDClient() + client.http_client = atom.mock_http_core.SettableHttpClient(200, 'OK', + 'SID=DQAAAGgA...7Zg8CTN\n' + 'LSID=DQAAAGsA...lk8BBbG\n' + 'Auth=DQAAAGgA...dk3fA5N', {'Content-Type': 'text/plain'}) + token = client.request_client_login_token('email', 'pw', 'cp', 'test') + self.assert_(isinstance(token, gdata.gauth.ClientLoginToken)) + self.assertEqual(token.token_string, 'DQAAAGgA...dk3fA5N') + + # Test a server response without a ClientLogin token.` + client.http_client.set_response(200, 'OK', 'SID=12345\nLSID=34567', {}) + self.assertRaises(gdata.client.ClientLoginTokenMissing, + client.request_client_login_token, 'email', 'pw', '', '') + + # Test a 302 redirect from the server on a login request. + client.http_client.set_response(302, 'ignored', '', {}) + # TODO: change the exception class to one in gdata.client. + self.assertRaises(gdata.client.BadAuthenticationServiceURL, + client.request_client_login_token, 'email', 'pw', '', '') + + # Test a CAPTCHA challenge from the server + client.http_client.set_response(403, 'Access Forbidden', + 'Url=http://www.google.com/login/captcha\n' + 'Error=CaptchaRequired\n' + 'CaptchaToken=DQAAAGgA...dkI1LK9\n' + # TODO: verify this sample CAPTCHA URL matches an + # actual challenge from the server. + 'CaptchaUrl=Captcha?ctoken=HiteT4bVoP6-yFkHPibe7O9EqxeiI7lUSN', {}) + try: + token = client.request_client_login_token('email', 'pw', '', '') + self.fail('should raise a CaptchaChallenge on a 403 with a ' + 'CaptchRequired error.') + except gdata.client.CaptchaChallenge, challenge: + self.assertEquals(challenge.captcha_url, + 'http://www.google.com/accounts/' + 'Captcha?ctoken=HiteT4bVoP6-yFkHPibe7O9EqxeiI7lUSN') + self.assertEquals(challenge.captcha_token, 'DQAAAGgA...dkI1LK9') + + # Test an unexpected response, a 404 for example. + client.http_client.set_response(404, 'ignored', '', {}) + self.assertRaises(gdata.client.ClientLoginFailed, + client.request_client_login_token, 'email', 'pw', '', '') + + def test_client_login(self): + client = gdata.client.GDClient() + client.http_client = atom.mock_http_core.SettableHttpClient(200, 'OK', + 'SID=DQAAAGgA...7Zg8CTN\n' + 'LSID=DQAAAGsA...lk8BBbG\n' + 'Auth=DQAAAGgA...dk3fA5N', {'Content-Type': 'text/plain'}) + client.client_login('me@example.com', 'password', 'wise', 'unit test') + self.assert_(isinstance(client.auth_token, gdata.gauth.ClientLoginToken)) + self.assertEqual(client.auth_token.token_string, 'DQAAAGgA...dk3fA5N') + + +class AuthSubTest(unittest.TestCase): + + def test_get_and_upgrade_token(self): + client = gdata.client.GDClient() + client.http_client = atom.mock_http_core.SettableHttpClient(200, 'OK', + 'Token=UpgradedTokenVal\n' + 'Extra data', {'Content-Type': 'text/plain'}) + + page_url = 'http://example.com/showcalendar.html?token=CKF50YzIHxCTKMAg' + + client.auth_token = gdata.gauth.AuthSubToken.from_url(page_url) + + self.assert_(isinstance(client.auth_token, gdata.gauth.AuthSubToken)) + self.assertEqual(client.auth_token.token_string, 'CKF50YzIHxCTKMAg') + + upgraded = client.upgrade_token() + + self.assert_(isinstance(client.auth_token, gdata.gauth.AuthSubToken)) + self.assertEqual(client.auth_token.token_string, 'UpgradedTokenVal') + self.assertEqual(client.auth_token, upgraded) + + # Ensure passing in a token returns without modifying client's auth_token. + client.http_client.set_response(200, 'OK', 'Token=4567', {}) + upgraded = client.upgrade_token( + gdata.gauth.AuthSubToken.from_url('?token=1234')) + self.assertEqual(upgraded.token_string, '4567') + self.assertEqual(client.auth_token.token_string, 'UpgradedTokenVal') + self.assertNotEqual(client.auth_token, upgraded) + + # Test exception cases + client.auth_token = None + self.assertRaises(gdata.client.UnableToUpgradeToken, client.upgrade_token, + None) + self.assertRaises(gdata.client.UnableToUpgradeToken, client.upgrade_token) + + def test_revoke_token(self): + client = gdata.client.GDClient() + client.http_client = atom.mock_http_core.SettableHttpClient( + 200, 'OK', '', {}) + page_url = 'http://example.com/showcalendar.html?token=CKF50YzIHxCTKMAg' + client.auth_token = gdata.gauth.AuthSubToken.from_url(page_url) + deleted = client.revoke_token() + self.assert_(deleted) + self.assertEqual( + client.http_client.last_request.headers['Authorization'], + 'AuthSub token=CKF50YzIHxCTKMAg') + + +class OAuthTest(unittest.TestCase): + + def test_hmac_flow(self): + client = gdata.client.GDClient() + client.http_client = atom.mock_http_core.SettableHttpClient( + 200, 'OK', 'oauth_token=ab3cd9j4ks7&oauth_token_secret=ZXhhbXBsZS', + {}) + request_token = client.get_oauth_token( + ['http://example.com/service'], 'http://example.net/myapp', + 'consumer', consumer_secret='secret') + # Check that the response was correctly parsed. + self.assertEqual(request_token.token, 'ab3cd9j4ks7') + self.assertEqual(request_token.token_secret, 'ZXhhbXBsZS') + self.assertEqual(request_token.auth_state, gdata.gauth.REQUEST_TOKEN) + + # Also check the Authorization header which was sent in the request. + auth_header = client.http_client.last_request.headers['Authorization'] + self.assert_('OAuth' in auth_header) + self.assert_( + 'oauth_callback="http%3A%2F%2Fexample.net%2Fmyapp"' in auth_header) + self.assert_('oauth_version="1.0"' in auth_header) + self.assert_('oauth_signature_method="HMAC-SHA1"' in auth_header) + self.assert_('oauth_consumer_key="consumer"' in auth_header) + + # Check generation of the authorization URL. + authorize_url = request_token.generate_authorization_url() + self.assert_(str(authorize_url).startswith( + 'https://www.google.com/accounts/OAuthAuthorizeToken')) + self.assert_('oauth_token=ab3cd9j4ks7' in str(authorize_url)) + + # Check that the token information from the browser's URL is parsed. + redirected_url = ( + 'http://example.net/myapp?oauth_token=CKF5zz&oauth_verifier=Xhhbas') + gdata.gauth.authorize_request_token(request_token, redirected_url) + self.assertEqual(request_token.token, 'CKF5zz') + self.assertEqual(request_token.verifier, 'Xhhbas') + self.assertEqual(request_token.auth_state, + gdata.gauth.AUTHORIZED_REQUEST_TOKEN) + + # Check that the token upgrade response was correctly parsed. + client.http_client.set_response( + 200, 'OK', 'oauth_token=3cd9Fj417&oauth_token_secret=Xhrh6bXBs', {}) + access_token = client.get_access_token(request_token) + self.assertEqual(request_token.token, '3cd9Fj417') + self.assertEqual(request_token.token_secret, 'Xhrh6bXBs') + self.assert_(request_token.verifier is None) + self.assertEqual(request_token.auth_state, gdata.gauth.ACCESS_TOKEN) + self.assertEqual(request_token.token, access_token.token) + self.assertEqual(request_token.token_secret, access_token.token_secret) + self.assert_(access_token.verifier is None) + self.assertEqual(request_token.auth_state, access_token.auth_state) + + # Also check the Authorization header which was sent in the request. + auth_header = client.http_client.last_request.headers['Authorization'] + self.assert_('OAuth' in auth_header) + self.assert_('oauth_callback="' not in auth_header) + self.assert_('oauth_version="1.0"' in auth_header) + self.assert_('oauth_verifier="Xhhbas"' in auth_header) + self.assert_('oauth_signature_method="HMAC-SHA1"' in auth_header) + self.assert_('oauth_consumer_key="consumer"' in auth_header) + + +class RequestTest(unittest.TestCase): + + def test_simple_request(self): + client = gdata.client.GDClient() + client.http_client = atom.mock_http_core.EchoHttpClient() + response = client.request('GET', 'https://example.com/test') + self.assertEqual(response.getheader('Echo-Host'), 'example.com:None') + self.assertEqual(response.getheader('Echo-Uri'), '/test') + self.assertEqual(response.getheader('Echo-Scheme'), 'https') + self.assertEqual(response.getheader('Echo-Method'), 'GET') + + http_request = atom.http_core.HttpRequest( + uri=atom.http_core.Uri(scheme='http', host='example.net', port=8080), + method='POST', headers={'X': 1}) + http_request.add_body_part('test', 'text/plain') + response = client.request(http_request=http_request) + self.assertEqual(response.getheader('Echo-Host'), 'example.net:8080') + # A Uri with path set to None should default to /. + self.assertEqual(response.getheader('Echo-Uri'), '/') + self.assertEqual(response.getheader('Echo-Scheme'), 'http') + self.assertEqual(response.getheader('Echo-Method'), 'POST') + self.assertEqual(response.getheader('Content-Type'), 'text/plain') + self.assertEqual(response.getheader('X'), '1') + self.assertEqual(response.read(), 'test') + + # Use the same request object from above, but overwrite the request path + # by passing in a URI. + response = client.request(uri='/new/path?p=1', http_request=http_request) + self.assertEqual(response.getheader('Echo-Host'), 'example.net:8080') + self.assertEqual(response.getheader('Echo-Uri'), '/new/path?p=1') + self.assertEqual(response.getheader('Echo-Scheme'), 'http') + self.assertEqual(response.read(), 'test') + + def test_gdata_version_header(self): + client = gdata.client.GDClient() + client.http_client = atom.mock_http_core.EchoHttpClient() + + response = client.request('GET', 'http://example.com') + self.assertEqual(response.getheader('GData-Version'), None) + + client.api_version = '2' + response = client.request('GET', 'http://example.com') + self.assertEqual(response.getheader('GData-Version'), '2') + + def test_redirects(self): + client = gdata.client.GDClient() + client.http_client = atom.mock_http_core.MockHttpClient() + # Add the redirect response for the initial request. + first_request = atom.http_core.HttpRequest('http://example.com/1', + 'POST') + client.http_client.add_response(first_request, 302, None, + {'Location': 'http://example.com/1?gsessionid=12'}) + second_request = atom.http_core.HttpRequest( + 'http://example.com/1?gsessionid=12', 'POST') + client.http_client.AddResponse(second_request, 200, 'OK', body='Done') + + response = client.Request('POST', 'http://example.com/1') + self.assertEqual(response.status, 200) + self.assertEqual(response.reason, 'OK') + self.assertEqual(response.read(), 'Done') + + redirect_loop_request = atom.http_core.HttpRequest( + 'http://example.com/2?gsessionid=loop', 'PUT') + client.http_client.add_response(redirect_loop_request, 302, None, + {'Location': 'http://example.com/2?gsessionid=loop'}) + try: + response = client.request(method='PUT', uri='http://example.com/2?gsessionid=loop') + self.fail('Loop URL should have redirected forever.') + except gdata.client.RedirectError, err: + self.assert_(str(err).startswith('Too many redirects from server')) + + def test_lowercase_location(self): + client = gdata.client.GDClient() + client.http_client = atom.mock_http_core.MockHttpClient() + # Add the redirect response for the initial request. + first_request = atom.http_core.HttpRequest('http://example.com/1', + 'POST') + # In some environments, notably App Engine, the HTTP headers which come + # back from a server will be normalized to all lowercase. + client.http_client.add_response(first_request, 302, None, + {'location': 'http://example.com/1?gsessionid=12'}) + second_request = atom.http_core.HttpRequest( + 'http://example.com/1?gsessionid=12', 'POST') + client.http_client.AddResponse(second_request, 200, 'OK', body='Done') + + response = client.Request('POST', 'http://example.com/1') + self.assertEqual(response.status, 200) + self.assertEqual(response.reason, 'OK') + self.assertEqual(response.read(), 'Done') + + def test_exercise_exceptions(self): + # TODO + pass + def test_converter_vs_desired_class(self): -class AuthSubUrlTest(unittest.TestCase): + def bad_converter(string): + return 1 - def testGenerateNextWithScope(self): - next = 'http://example.com/test' - scope = 'http://www.google.com/calendar/feeds/' - request_url = gdata.client.GenerateAuthSubRequestUrl(next, scope) - self.assert_(request_url.find('example.com') > -1) - self.assert_(request_url.find('calendar') > -1) - - def testGenerateNextWithMultipleScopes(self): - next = 'http://example.com/test' - scope = ['http://www.google.com/calendar/feeds/', - 'http://spreadsheets.google.com/feeds/'] - request_url = gdata.client.GenerateAuthSubRequestUrl(next, scope) - self.assert_(request_url.find('example.com') > -1) - self.assert_(request_url.find('calendar') > -1) - self.assert_(request_url.find('spreadsheets') > -1) - - def testExtractTokenWithScope(self): - url = ('http://example.com/test?authsub_token_scope=http%3A%2F%2F' - 'www.google.com%2Fcalendar%2Ffeeds%2F&token=yeF3EE&foo=1') - (token, scopes) = gdata.client.ExtractToken(url) - self.assert_(token == 'AuthSub token=yeF3EE') - self.assert_(scopes[0] == 'http://www.google.com/calendar/feeds/') - - def testExtractTokenWithMultipleScopes(self): - url = ('http://example.com/test?authsub_token_scope=http%3A%2F%2F' - 'www.google.com%2Fcalendar%2Ffeeds%2F+http%3A%2F%2F' - 'spreadsheets.google.com%2Ffeeds%2F&token=KyeF3E6Mma') - (token, scopes) = gdata.client.ExtractToken(url) - self.assert_(token == 'AuthSub token=KyeF3E6Mma') - self.assert_(len(scopes) == 2) - self.assert_(scopes[0] == 'http://www.google.com/calendar/feeds/') - self.assert_(scopes[1] == 'http://spreadsheets.google.com/feeds/') - - -class GDataClientTest(unittest.TestCase): - - def setUp(self): - self.client = gdata.client.GDataClient() - - def testFindTokenForScope(self): - # Add a test token with two scopes - token = 'AuthSub token=KyeF3E6Mma' - scope1 = 'http://www.google.com/calendar/feeds/' - scope2 = 'http://spreadsheets.google.com/feeds/' - auth_token = gdata.auth.AuthSubToken(token, [scope1, scope2]) - self.client.token_store.add_token(auth_token) - self.assert_(self.client.token_store.find_token(scope1) == auth_token) - self.assert_(self.client.token_store.find_token(scope2) == auth_token) - self.assert_(isinstance(self.client.token_store.find_token('foo'), - atom.http_interface.GenericToken)) - self.assert_( - self.client.token_store.find_token('foo%s' % scope1) != auth_token) - self.assert_(isinstance(self.client.token_store.find_token( - 'foo%s' % scope1), - atom.http_interface.GenericToken)) - self.assert_( - self.client.token_store.find_token('%sfoo' % scope1) == auth_token) - self.client.token_store.remove_token(auth_token) - self.assert_(self.client.token_store.find_token('%sfoo' % scope1) != auth_token) - self.assert_(isinstance(self.client.token_store.find_token( - '%sfoo' % scope1), - atom.http_interface.GenericToken)) - self.assert_(self.client.token_store.find_token(scope2) != auth_token) + class TestClass(atom.core.XmlElement): + _qname = '{http://www.w3.org/2005/Atom}entry' + + client = gdata.client.GDClient() + client.http_client = atom.mock_http_core.EchoHttpClient() + test_entry = gdata.data.GDEntry() + result = client.post(test_entry, 'http://example.com') + self.assert_(isinstance(result, gdata.data.GDEntry)) + result = client.post(test_entry, 'http://example.com', converter=bad_converter) + self.assertEquals(result, 1) + result = client.post(test_entry, 'http://example.com', desired_class=TestClass) + self.assert_(isinstance(result, TestClass)) + + +class QueryTest(unittest.TestCase): + + def test_query_modifies_request(self): + request = atom.http_core.HttpRequest() + gdata.client.Query( + text_query='foo', categories=['a', 'b']).modify_request(request) + self.assertEqual(request.uri.query, {'q': 'foo', 'categories': 'a,b'}) + + def test_client_uses_query_modification(self): + """If the Query is passed as an unexpected param it should apply""" + client = gdata.client.GDClient() + client.http_client = atom.mock_http_core.EchoHttpClient() + query = gdata.client.Query(max_results=7) + + client.http_client = atom.mock_http_core.SettableHttpClient( + 201, 'CREATED', gdata.data.GDEntry().ToString(), {}) + response = client.get('https://example.com/foo', a_random_param=query) + self.assertEqual( + client.http_client.last_request.uri.query['max-results'], '7') + + +class VersionConversionTest(unittest.TestCase): + + def test_use_default_version(self): + self.assertEquals(gdata.client.get_xml_version(None), 1) + + def test_str_to_int_version(self): + self.assertEquals(gdata.client.get_xml_version('1'), 1) + self.assertEquals(gdata.client.get_xml_version('2'), 2) + self.assertEquals(gdata.client.get_xml_version('2.1.2'), 2) + self.assertEquals(gdata.client.get_xml_version('10.4'), 10) + + +def suite(): + return unittest.TestSuite((unittest.makeSuite(ClientLoginTest, 'test'), + unittest.makeSuite(AuthSubTest, 'test'), + unittest.makeSuite(OAuthTest, 'test'), + unittest.makeSuite(RequestTest, 'test'), + unittest.makeSuite(VersionConversionTest, 'test'), + unittest.makeSuite(QueryTest, 'test'))) if __name__ == '__main__': diff -Nru python-gdata-1.2.4/tests/gdata_tests/contacts/live_client_test.py python-gdata-2.0.8/tests/gdata_tests/contacts/live_client_test.py --- python-gdata-1.2.4/tests/gdata_tests/contacts/live_client_test.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_tests/contacts/live_client_test.py 2009-11-25 00:48:09.000000000 +0000 @@ -0,0 +1,123 @@ +#!/usr/bin/env python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +# This module is used for version 2 of the Google Data APIs. +# These tests attempt to connect to Google servers. + + +__author__ = 'j.s@google.com (Jeff Scudder)' + + +import unittest +import gdata.test_config as conf +import gdata.contacts.client +import atom.core +import atom.data +import gdata.data + + +class ContactsTest(unittest.TestCase): + + def setUp(self): + self.client = None + if conf.options.get_value('runlive') == 'true': + self.client = gdata.contacts.client.ContactsClient() + conf.configure_client(self.client, 'ContactsTest', 'cp') + + def tearDown(self): + conf.close_client(self.client) + + def test_create_update_delete_contact(self): + if not conf.options.get_value('runlive') == 'true': + return + # Either load the recording or prepare to make a live request. + conf.configure_cache(self.client, 'test_create_update_delete_contact') + + new_contact = gdata.contacts.data.ContactEntry( + nickname=gdata.contacts.data.NickName(text='Joe'), + name=gdata.data.Name( + given_name=gdata.data.GivenName(text='Joseph'), + family_name=gdata.data.FamilyName(text='Testerson'))) + new_contact.birthday = gdata.contacts.data.Birthday(when='2009-11-11') + new_contact.language.append(gdata.contacts.data.Language( + label='German')) + created = self.client.create_contact(new_contact) + + # Add another language. + created.language.append(gdata.contacts.data.Language( + label='French')) + + # Create a new membership group for our test contact. + new_group = gdata.contacts.data.GroupEntry( + title=atom.data.Title(text='a test group')) + created_group = self.client.create_group(new_group) + + self.assert_(created_group.id.text) + + # Add the contact to the new group. + created.group_membership_info.append( + gdata.contacts.data.GroupMembershipInfo(href=created_group.id.text)) + + # Upload the changes to the language and group membership. + edited = self.client.update(created) + + # Delete the group and the test contact. + self.client.delete(created_group) + self.client.delete(edited) + + def test_low_level_create_update_delete(self): + if not conf.options.get_value('runlive') == 'true': + return + # Either load the recording or prepare to make a live request. + conf.configure_cache(self.client, 'test_low_level_create_update_delete') + entry = atom.data.Entry() + entry.title = atom.data.Title(text='Jeff') + entry._other_elements.append( + gdata.data.Email(rel=gdata.data.WORK_REL, address='j.s@google.com')) + + http_request = atom.http_core.HttpRequest() + http_request.add_body_part(entry.to_string(), 'application/atom+xml') + posted = self.client.request('POST', + 'http://www.google.com/m8/feeds/contacts/default/full', + desired_class=atom.data.Entry, http_request=http_request) + + self_link = None + edit_link = None + for link in posted.get_elements('link', 'http://www.w3.org/2005/Atom'): + if link.get_attributes('rel')[0].value == 'self': + self_link = link.get_attributes('href')[0].value + elif link.get_attributes('rel')[0].value == 'edit': + edit_link = link.get_attributes('href')[0].value + self.assert_(self_link is not None) + self.assert_(edit_link is not None) + + etag = posted.get_attributes('etag')[0].value + self.assert_(etag is not None) + self.assert_(len(etag) > 0) + + # Delete the test contact. + http_request = atom.http_core.HttpRequest() + http_request.headers['If-Match'] = etag + self.client.request('DELETE', edit_link, http_request=http_request) + + +def suite(): + return conf.build_suite([ContactsTest]) + + +if __name__ == '__main__': + unittest.TextTestRunner().run(suite()) diff -Nru python-gdata-1.2.4/tests/gdata_tests/contacts/profiles/service_test.py python-gdata-2.0.8/tests/gdata_tests/contacts/profiles/service_test.py --- python-gdata-1.2.4/tests/gdata_tests/contacts/profiles/service_test.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_tests/contacts/profiles/service_test.py 2009-10-24 02:44:00.000000000 +0100 @@ -0,0 +1,130 @@ +#!/usr/bin/python2.4 +# +# Copyright 2009 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Contains Unit Tests for Google Profiles API. + + ProfilesServiceTest: Provides methods to test feeds and manipulate items. + + ProfilesQueryTest: Constructs a query object for the profiles feed. + Extends Query. +""" + +__author__ = 'jtoledo (Julian Toledo)' + + +import getopt +import getpass +import sys +import unittest +import gdata.contacts +import gdata.contacts.service + + +email = '' +password = '' +domain = '' +server = 'www.google.com' + +GDATA_VER_HEADER = 'GData-Version' + +class ProfilesServiceTest(unittest.TestCase): + + def setUp(self): + additional_headers = {GDATA_VER_HEADER: 3} + self.gd_client = gdata.contacts.service.ContactsService( + contact_list=domain, additional_headers=additional_headers ) + self.gd_client.email = email + self.gd_client.password = password + self.gd_client.source = 'GoogleInc-ProfilesPythonTest-1' + self.gd_client.ProgrammaticLogin() + + def testGetFeedUriCustom(self): + uri = self.gd_client.GetFeedUri(kind='profiles', scheme='https') + self.assertEquals( + 'https://%s/m8/feeds/profiles/domain/%s/full' % (server, domain), uri) + + def testGetProfileFeedUriDefault(self): + self.gd_client.contact_list = 'domain.com' + self.assertEquals('/m8/feeds/profiles/domain/domain.com/full', + self.gd_client.GetFeedUri('profiles')) + + def testCleanUriNeedsCleaning(self): + self.assertEquals('/relative/uri', self.gd_client._CleanUri( + 'http://www.google.com/relative/uri')) + + def testCleanUriDoesNotNeedCleaning(self): + self.assertEquals('/relative/uri', self.gd_client._CleanUri( + '/relative/uri')) + + def testGetProfilesFeed(self): + feed = self.gd_client.GetProfilesFeed() + self.assert_(isinstance(feed, gdata.contacts.ProfilesFeed)) + + def testGetProfile(self): + # Gets an existing entry + feed = self.gd_client.GetProfilesFeed() + entry = feed.entry[0] + self.assert_(isinstance(entry, gdata.contacts.ProfileEntry)) + self.assertEquals(entry.title.text, + self.gd_client.GetProfile(entry.id.text).title.text) + self.assertEquals(entry._children, + self.gd_client.GetProfile(entry.id.text)._children) + + def testUpdateProfile(self): + feed = self.gd_client.GetProfilesFeed() + entry = feed.entry[1] + original_occupation = entry.occupation + entry.occupation = gdata.contacts.Occupation(text='TEST') + updated = self.gd_client.UpdateProfile(entry.GetEditLink().href, entry) + self.assertEquals('TEST', updated.occupation.text) + updated.occupation = original_occupation + self.gd_client.UpdateProfile(updated.GetEditLink().href, updated) + + +if __name__ == '__main__': + + try: + opts, args = getopt.getopt(sys.argv[1:], '', ['user=', 'pw=', 'domain=']) + except getopt.error, msg: + print ('Profiles Tests\nNOTE: Please run these tests only with a test ' + 'account. The tests may delete or update your data.\n' + '\nUsage: service_test.py --email=EMAIL ' + '--password=PASSWORD --domain=DOMAIN\n') + sys.exit(2) + + # Process options + for option, arg in opts: + if option == '--email': + email = arg + elif option == '--pw': + password = arg + elif option == '--domain': + domain = arg + + while not email: + print 'NOTE: Please run these tests only with a test account.' + email = raw_input('Please enter your email: ') + while not password: + password = getpass.getpass('Please enter password: ') + if not password: + print 'Password cannot be blank.' + while not domain: + print 'NOTE: Please run these tests only with a test account.' + domain = raw_input('Please enter your Apps domain: ') + + suite = unittest.makeSuite(ProfilesServiceTest) + unittest.TextTestRunner().run(suite) + diff -Nru python-gdata-1.2.4/tests/gdata_tests/contacts/service_test.py python-gdata-2.0.8/tests/gdata_tests/contacts/service_test.py --- python-gdata-1.2.4/tests/gdata_tests/contacts/service_test.py 2009-01-22 19:17:13.000000000 +0000 +++ python-gdata-2.0.8/tests/gdata_tests/contacts/service_test.py 2009-09-21 21:58:06.000000000 +0100 @@ -17,29 +17,31 @@ __author__ = 'api.jscudder (Jeff Scudder)' import getpass -import random import re import unittest import urllib import atom import gdata.contacts.service +import gdata.test_config as conf -username = '' -password = '' -test_image_location = '../../testimage.jpg' +conf.options.register_option(conf.TEST_IMAGE_LOCATION_OPTION) class ContactsServiceTest(unittest.TestCase): def setUp(self): self.gd_client = gdata.contacts.service.ContactsService() - self.gd_client.email = username - self.gd_client.password = password - self.gd_client.source = 'GoogleInc-ContactsPythonTest-1' - self.gd_client.ProgrammaticLogin() + conf.configure_service(self.gd_client, 'ContactsServiceTest', 'cp') + self.gd_client.email = conf.options.get_value('username') + + def tearDown(self): + conf.close_service(self.gd_client) def testGetContactsFeed(self): + if not conf.options.get_value('runlive') == 'true': + return + conf.configure_service_cache(self.gd_client, 'testGetContactsFeed') feed = self.gd_client.GetContactsFeed() self.assert_(isinstance(feed, gdata.contacts.ContactsFeed)) @@ -47,7 +49,11 @@ self.assertEquals('default', self.gd_client.contact_list) def testCustomContactList(self): - self.gd_client.contact_list = username + if not conf.options.get_value('runlive') == 'true': + return + conf.configure_service_cache(self.gd_client, 'testCustomContactList') + + self.gd_client.contact_list = conf.options.get_value('username') feed = self.gd_client.GetContactsFeed() self.assert_(isinstance(feed, gdata.contacts.ContactsFeed)) @@ -65,6 +71,10 @@ 'https://www.google.com/m8/feeds/groups/example.com/base/batch', uri) def testCreateUpdateDeleteContactAndUpdatePhoto(self): + if not conf.options.get_value('runlive') == 'true': + return + conf.configure_service_cache(self.gd_client, 'testCreateUpdateDeleteContactAndUpdatePhoto') + DeleteTestContact(self.gd_client) # Create a new entry @@ -105,7 +115,8 @@ self.assertEquals(updated.phone_number[0].text, '(555)555-1212') # Change the contact's photo. - updated_photo = self.gd_client.ChangePhoto(test_image_location, updated, + updated_photo = self.gd_client.ChangePhoto( + conf.options.get_value('imgpath'), updated, content_type='image/jpeg') # Refetch the contact so that it has the new photo link @@ -120,9 +131,12 @@ self.gd_client.DeleteContact(updated.GetEditLink().href) def testCreateAndDeleteContactUsingBatch(self): + if not conf.options.get_value('runlive') == 'true': + return + conf.configure_service_cache(self.gd_client, 'testCreateAndDeleteContactUsingBatch') + # Get random data for creating contact - r = random.Random() - random_contact_number = str(r.randint(100000, 1000000)) + random_contact_number = 'notRandom12' random_contact_title = 'Random Contact %s' % ( random_contact_number) @@ -142,7 +156,6 @@ batch_request.AddInsert(entry=contact) # Execute the batch request to insert the contact. - self.gd_client.ProgrammaticLogin() default_batch_url = gdata.contacts.service.DEFAULT_BATCH_URL batch_result = self.gd_client.ExecuteBatch(batch_request, default_batch_url) @@ -209,12 +222,17 @@ def setUp(self): self.gd_client = gdata.contacts.service.ContactsService() - self.gd_client.email = username - self.gd_client.password = password - self.gd_client.source = 'GoogleInc-ContactsPythonTest-1' - self.gd_client.ProgrammaticLogin() + conf.configure_service(self.gd_client, 'ContactsServiceTest', 'cp') + + def tearDown(self): + conf.close_service(self.gd_client) def testCreateUpdateDeleteGroup(self): + if not conf.options.get_value('runlive') == 'true': + return + conf.configure_service_cache(self.gd_client, + 'testCreateUpdateDeleteGroup') + test_group = gdata.contacts.GroupEntry(title=atom.Title( text='test group py')) new_group = self.gd_client.CreateGroup(test_group) @@ -231,6 +249,7 @@ self.gd_client.DeleteGroup(updated_group.GetEditLink().href) +# Utility methods. def DeleteTestContact(client): # Get test contact feed = client.GetContactsFeed() @@ -238,13 +257,16 @@ if (entry.title.text == 'Elizabeth Bennet' and entry.content.text == 'Test Notes' and entry.email[0].address == 'liz@gmail.com'): - print 'Deleting test contact' client.DeleteContact(entry.GetEditLink().href) - + + +def suite(): + return unittest.TestSuite((unittest.makeSuite(ContactsServiceTest, 'test'), + unittest.makeSuite(ContactsQueryTest, 'test'), + unittest.makeSuite(ContactsGroupsTest, 'test'),)) + if __name__ == '__main__': print ('Contacts Tests\nNOTE: Please run these tests only with a test ' 'account. The tests may delete or update your data.') - username = raw_input('Please enter your username: ') - password = getpass.getpass() - unittest.main() + unittest.TextTestRunner().run(suite()) diff -Nru python-gdata-1.2.4/tests/gdata_tests/contacts_test.py python-gdata-2.0.8/tests/gdata_tests/contacts_test.py --- python-gdata-1.2.4/tests/gdata_tests/contacts_test.py 2008-06-19 04:44:02.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_tests/contacts_test.py 2009-10-09 23:32:30.000000000 +0100 @@ -95,6 +95,7 @@ org_name=gdata.contacts.OrgName(text='TestCo.')) new_entry.extended_property.append(gdata.ExtendedProperty(name='test', value='1234')) + new_entry.birthday = gdata.contacts.Birthday(when='2009-7-23') sports_property = gdata.ExtendedProperty(name='sports') sports_property.SetXmlBlob('') new_entry.extended_property.append(sports_property) @@ -109,6 +110,7 @@ self.assertEquals(len(entry_copy.phone_number), 1) self.assertEquals(entry_copy.phone_number[0].rel, new_entry.phone_number[0].rel) + self.assertEquals(entry_copy.birthday.when, '2009-7-23') self.assertEquals(entry_copy.phone_number[0].text, '(206)555-1212') self.assertEquals(entry_copy.organization.org_name.text, 'TestCo.') self.assertEquals(len(entry_copy.extended_property), 2) diff -Nru python-gdata-1.2.4/tests/gdata_tests/core_test.py python-gdata-2.0.8/tests/gdata_tests/core_test.py --- python-gdata-1.2.4/tests/gdata_tests/core_test.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_tests/core_test.py 2010-02-10 00:30:53.000000000 +0000 @@ -0,0 +1,372 @@ +#!/usr/bin/env python +# +# Copyright (C) 2010 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +# This module is used for version 2 of the Google Data APIs. + + +__author__ = 'j.s@google.com (Jeff Scudder)' + + +import unittest +import gdata.core +import gdata.test_config as conf + + + +PLAYLIST_EXAMPLE = ( + '{"apiVersion": "2.0","data": {"totalResults": 347,"startIndex": 1,"it' + 'emsPerPage": 2,"items": [{"id": "4DAEFAF23BB3CDD0","created": "2008-1' + '2-09T20:23:06.000Z","updated": "2010-01-04T02:56:19.000Z","author": "' + 'GoogleDevelopers","title": "Google Web Toolkit Developers","descripti' + 'on": "Developers talk about using Google Web Toolkit ...","tags": ["g' + 'oogle","web","toolkit","developers","gwt"],"size": 12},{"id": "586D32' + '2B5E2764CF","created": "2007-11-13T19:41:21.000Z","updated": "2010-01' + '-04T17:41:16.000Z","author": "GoogleDevelopers","title": "Android","d' + 'escription": "Demos and tutorials about the new Android platform.","t' + 'ags": ["android","google","developers","mobile"],"size": 32}]}}') + + +VIDEO_EXAMPLE = ( + '{"apiVersion": "2.0","data": {"updated": "2010-01-07T19:58:42.949Z","' + 'totalItems": 800,"startIndex": 1,"itemsPerPage": 1, "items": [{"id": ' + '"hYB0mn5zh2c","uploaded": "2007-06-05T22:07:03.000Z","updated": "2010' + '-01-07T13:26:50.000Z","uploader": "GoogleDeveloperDay","category": "N' + 'ews","title": "Google Developers Day US - Maps API Introduction","des' + 'cription": "Google Maps API Introduction ...","tags": ["GDD07","GDD07' + 'US","Maps"],"thumbnail": {"default": "http://i.ytimg.com/vi/hYB0mn5zh' + '2c/default.jpg","hqDefault": "http://i.ytimg.com/vi/hYB0mn5zh2c/hqdef' + 'ault.jpg"},"player": {"default": "http://www.youtube.com/watch?v' + '\u003dhYB0mn5zh2c"},"content": {"1": "rtsp://v5.cache3.c.youtube.com/' + 'CiILENy.../0/0/0/video.3gp","5": "http://www.youtube.com/v/hYB0mn5zh2' + 'c?f...","6": "rtsp://v1.cache1.c.youtube.com/CiILENy.../0/0/0/video.3' + 'gp"},"duration": 2840,"rating": 4.63,"ratingCount": 68,"viewCount": 2' + '20101,"favoriteCount": 201,"commentCount": 22}]}}') + + +class JsoncConversionTest(unittest.TestCase): + + # See http://code.google.com/apis/youtube/2.0/developers_guide_jsonc.html + def test_from_and_to_old_json(self): + json = ('{"media$group":{"media$credit":[{"$t":"GoogleDevelopers", ' + '"role":"uploader", "scheme":"urn:youtube"}]}}') + jsonc_obj = gdata.core.parse_json(json) + self.assert_(isinstance(jsonc_obj, gdata.core.Jsonc)) + raw = gdata.core._convert_to_object(jsonc_obj) + self.assertEqual(raw['media$group']['media$credit'][0]['$t'], + 'GoogleDevelopers') + + def test_to_and_from_jsonc(self): + x = {'a': 1} + jsonc_obj = gdata.core._convert_to_jsonc(x) + self.assertEqual(jsonc_obj.a, 1) + # Convert the json_obj back to a dict and compare. + self.assertEqual(x, gdata.core._convert_to_object(jsonc_obj)) + + def test_from_and_to_new_json(self): + x = gdata.core.parse_json(PLAYLIST_EXAMPLE) + self.assertEqual(x._dict['apiVersion'], '2.0') + self.assertEqual(x._dict['data']._dict['items'][0]._dict['id'], + '4DAEFAF23BB3CDD0') + self.assertEqual(x._dict['data']._dict['items'][1]._dict['id'], + '586D322B5E2764CF') + x = gdata.core.parse_json(VIDEO_EXAMPLE) + self.assertEqual(x._dict['apiVersion'], '2.0') + self.assertEqual(x.data._dict['totalItems'], 800) + self.assertEqual(x.data.items[0]._dict['viewCount'], 220101) + + def test_pretty_print(self): + x = gdata.core.Jsonc(x=1, y=2, z=3) + pretty = gdata.core.prettify_jsonc(x) + self.assert_(isinstance(pretty, (str, unicode))) + + pretty = gdata.core.prettify_jsonc(x, 4) + self.assert_(isinstance(pretty, (str, unicode))) + + +class MemberNameConversionTest(unittest.TestCase): + + def test_member_to_jsonc(self): + self.assertEqual(gdata.core._to_jsonc_name(''), '') + self.assertEqual(gdata.core._to_jsonc_name('foo'), 'foo') + self.assertEqual(gdata.core._to_jsonc_name('Foo'), 'Foo') + self.assertEqual(gdata.core._to_jsonc_name('test_x'), 'testX') + self.assertEqual(gdata.core._to_jsonc_name('test_x_y_zabc'), 'testXYZabc') + + +def build_test_object(): + return gdata.core.Jsonc( + api_version='2.0', + data=gdata.core.Jsonc( + total_items=800, + items=[ + gdata.core.Jsonc( + view_count=220101, + comment_count=22, + favorite_count=201, + content={ + '1': ('rtsp://v5.cache3.c.youtube.com' + '/CiILENy.../0/0/0/video.3gp')})])) + + +class JsoncObjectTest(unittest.TestCase): + + def check_video_json(self, x): + """Validates a JsoncObject similar to VIDEO_EXAMPLE.""" + self.assert_(isinstance(x._dict, dict)) + self.assert_(isinstance(x.data, gdata.core.Jsonc)) + self.assert_(isinstance(x._dict['data'], gdata.core.Jsonc)) + self.assert_(isinstance(x.data._dict, dict)) + self.assert_(isinstance(x._dict['data']._dict, dict)) + self.assert_(isinstance(x._dict['apiVersion'], (str, unicode))) + self.assert_(isinstance(x.api_version, (str, unicode))) + self.assert_(isinstance(x.data._dict['items'], list)) + self.assert_(isinstance(x.data.items[0]._dict['commentCount'], + (int, long))) + self.assert_(isinstance(x.data.items[0].favorite_count, (int, long))) + self.assertEqual(x.data.total_items, 800) + self.assertEqual(x._dict['data']._dict['totalItems'], 800) + self.assertEqual(x.data.items[0].view_count, 220101) + self.assertEqual(x._dict['data']._dict['items'][0]._dict['viewCount'], + 220101) + self.assertEqual(x.data.items[0].comment_count, 22) + self.assertEqual(x.data.items[0]._dict['commentCount'], 22) + self.assertEqual(x.data.items[0].favorite_count, 201) + self.assertEqual(x.data.items[0]._dict['favoriteCount'], 201) + self.assertEqual( + x.data.items[0].content._dict['1'], + 'rtsp://v5.cache3.c.youtube.com/CiILENy.../0/0/0/video.3gp') + self.assertEqual(x.api_version, '2.0') + self.assertEqual(x.api_version, x._dict['apiVersion']) + + def test_convert_to_jsonc(self): + x = gdata.core._convert_to_jsonc(1) + self.assert_(isinstance(x, (int, long))) + self.assertEqual(x, 1) + + x = gdata.core._convert_to_jsonc([1, 'a']) + self.assert_(isinstance(x, list)) + self.assertEqual(len(x), 2) + self.assert_(isinstance(x[0], (int, long))) + self.assertEqual(x[0], 1) + self.assert_(isinstance(x[1], (str, unicode))) + self.assertEqual(x[1], 'a') + + x = gdata.core._convert_to_jsonc([{'b': 1}, 'a']) + self.assert_(isinstance(x, list)) + self.assertEqual(len(x), 2) + self.assert_(isinstance(x[0], gdata.core.Jsonc)) + self.assertEqual(x[0].b, 1) + + def test_non_json_members(self): + x = gdata.core.Jsonc(alpha=1, _beta=2, deep={'_bbb': 3, 'aaa': 2}) + x.test = 'a' + x._bar = 'bacon' + # Should be able to access the _beta member. + self.assertEqual(x._beta, 2) + self.assertEqual(getattr(x, '_beta'), 2) + try: + self.assertEqual(getattr(x.deep, '_bbb'), 3) + except AttributeError: + pass + # There should not be a letter 'B' anywhere in the generated JSON. + self.assertEqual(gdata.core.jsonc_to_string(x).find('B'), -1) + # We should find a 'b' becuse we don't consider names of dict keys in + # the constructor as aliases to camelCase names. + self.assert_(not gdata.core.jsonc_to_string(x).find('b') == -1) + + def test_constructor(self): + x = gdata.core.Jsonc(a=[{'x': 'y'}, 2]) + self.assert_(isinstance(x, gdata.core.Jsonc)) + self.assert_(isinstance(x.a, list)) + self.assert_(isinstance(x.a[0], gdata.core.Jsonc)) + self.assertEqual(x.a[0].x, 'y') + self.assertEqual(x.a[1], 2) + + def test_read_json(self): + x = gdata.core.parse_json(PLAYLIST_EXAMPLE) + self.assert_(isinstance(x._dict, dict)) + self.assertEqual(x._dict['apiVersion'], '2.0') + self.assertEqual(x.api_version, '2.0') + + x = gdata.core.parse_json(VIDEO_EXAMPLE) + self.assert_(isinstance(x._dict, dict)) + self.assertEqual(x._dict['apiVersion'], '2.0') + self.assertEqual(x.api_version, '2.0') + + x = gdata.core.parse_json(VIDEO_EXAMPLE) + self.check_video_json(x) + + def test_write_json(self): + x = gdata.core.Jsonc() + x._dict['apiVersion'] = '2.0' + x.data = {'totalItems': 800} + x.data.items = [] + x.data.items.append(gdata.core.Jsonc(view_count=220101)) + x.data.items[0]._dict['favoriteCount'] = 201 + x.data.items[0].comment_count = 22 + x.data.items[0].content = { + '1': 'rtsp://v5.cache3.c.youtube.com/CiILENy.../0/0/0/video.3gp'} + self.check_video_json(x) + + def test_build_using_contructor(self): + x = build_test_object() + self.check_video_json(x) + + def test_to_dict(self): + x = build_test_object() + self.assertEqual( + gdata.core._convert_to_object(x), + {'data': {'totalItems': 800, 'items': [ + {'content': { + '1': 'rtsp://v5.cache3.c.youtube.com/CiILENy.../0/0/0/video.3gp'}, + 'viewCount': 220101, 'commentCount': 22, 'favoriteCount': 201}]}, + 'apiVersion': '2.0'}) + + def test_try_json_syntax(self): + x = build_test_object() + self.assertEqual(x.data.items[0].commentCount, 22) + + x.data.items[0].commentCount = 33 + self.assertEqual(x.data.items[0].commentCount, 33) + self.assertEqual(x.data.items[0].comment_count, 33) + self.assertEqual(x.data.items[0]._dict['commentCount'], 33) + + def test_to_string(self): + self.check_video_json( + gdata.core.parse_json( + gdata.core.jsonc_to_string( + gdata.core._convert_to_object( + build_test_object())))) + + def test_del_attr(self): + x = build_test_object() + self.assertEqual(x.data.items[0].commentCount, 22) + del x.data.items[0].comment_count + try: + x.data.items[0].commentCount + self.fail('Should not be able to access commentCount after deletion') + except AttributeError: + pass + + self.assertEqual(x.data.items[0].favorite_count, 201) + del x.data.items[0].favorite_count + try: + x.data.items[0].favorite_count + self.fail('Should not be able to access favorite_count after deletion') + except AttributeError: + pass + try: + x.data.items[0]._dict['favoriteCount'] + self.fail('Should not see [\'favoriteCount\'] after deletion') + except KeyError: + pass + + self.assertEqual(x.data.items[0].view_count, 220101) + del x.data.items[0]._dict['viewCount'] + try: + x.data.items[0].view_count + self.fail('Should not be able to access view_count after deletion') + except AttributeError: + pass + + try: + del x.data.missing + self.fail('Should not delete a missing attribute') + except AttributeError: + pass + + def test_del_protected_attribute(self): + x = gdata.core.Jsonc(public='x', _private='y') + self.assertEqual(x.public, 'x') + self.assertEqual(x._private, 'y') + self.assertEqual(x['public'], 'x') + try: + x['_private'] + self.fail('Should not be able to getitem with _name') + except KeyError: + pass + + del x._private + try: + x._private + self.fail('Should not be able to access deleted member') + except AttributeError: + pass + + def test_get_set_del_item(self): + x = build_test_object() + + # Check for expected members using different access patterns. + self.assert_(isinstance(x._dict, dict)) + self.assert_(isinstance(x['data'], gdata.core.Jsonc)) + self.assert_(isinstance(x._dict['data'], gdata.core.Jsonc)) + self.assert_(isinstance(x['data']._dict, dict)) + self.assert_(isinstance(x._dict['data']._dict, dict)) + self.assert_(isinstance(x['apiVersion'], (str, unicode))) + try: + x['api_version'] + self.fail('Should not find using Python style name') + except KeyError: + pass + self.assert_(isinstance(x.data['items'], list)) + self.assert_(isinstance(x.data['items'][0]._dict['commentCount'], + (int, long))) + self.assert_(isinstance(x['data'].items[0]['favoriteCount'], (int, long))) + self.assertEqual(x['data'].total_items, 800) + self.assertEqual(x['data']['totalItems'], 800) + self.assertEqual(x.data['items'][0]['viewCount'], 220101) + self.assertEqual(x._dict['data'].items[0]._dict['viewCount'], + 220101) + self.assertEqual(x['data'].items[0].comment_count, 22) + self.assertEqual(x.data.items[0]['commentCount'], 22) + self.assertEqual(x.data.items[0]['favoriteCount'], 201) + self.assertEqual(x.data.items[0]._dict['favoriteCount'], 201) + self.assertEqual( + x.data.items[0].content['1'], + 'rtsp://v5.cache3.c.youtube.com/CiILENy.../0/0/0/video.3gp') + self.assertEqual( + x.data.items[0]['content']['1'], + 'rtsp://v5.cache3.c.youtube.com/CiILENy.../0/0/0/video.3gp') + self.assertEqual(x.api_version, '2.0') + self.assertEqual(x['apiVersion'], x._dict['apiVersion']) + + # Set properties using setitem + x['apiVersion'] = '3.2' + self.assertEqual(x.api_version, '3.2') + x.data['totalItems'] = 500 + self.assertEqual(x['data'].total_items, 500) + self.assertEqual(x['data'].items[0].favoriteCount, 201) + try: + del x['data']['favoriteCount'] + self.fail('Should not be able to delete missing item') + except KeyError: + pass + del x.data['items'][0]['favoriteCount'] + try: + x['data'].items[0].favoriteCount + self.fail('Should not find favoriteCount removed using del item') + except AttributeError: + pass + + +def suite(): + return conf.build_suite([JsoncConversionTest, MemberNameConversionTest, + JsoncObjectTest]) + + +if __name__ == '__main__': + unittest.main() diff -Nru python-gdata-1.2.4/tests/gdata_tests/data_smoke_test.py python-gdata-2.0.8/tests/gdata_tests/data_smoke_test.py --- python-gdata-1.2.4/tests/gdata_tests/data_smoke_test.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_tests/data_smoke_test.py 2010-02-18 19:20:27.000000000 +0000 @@ -0,0 +1,337 @@ +#!/usr/bin/env python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +# This module is used for version 2 of the Google Data APIs. + + +__author__ = 'j.s@google.com (Jeff Scudder)' + + +import unittest +import gdata.test_config as conf +import gdata.data +import gdata.acl.data +import gdata.analytics.data +import gdata.dublincore.data +import gdata.books.data +import gdata.calendar.data +import gdata.geo.data +import gdata.finance.data +import gdata.notebook.data +import gdata.media.data +import gdata.youtube.data +import gdata.webmastertools.data +import gdata.contacts.data +import gdata.opensearch.data + + +class DataSmokeTest(unittest.TestCase): + + def test_check_all_data_classes(self): + conf.check_data_classes(self, ( + gdata.data.TotalResults, gdata.data.StartIndex, + gdata.data.ItemsPerPage, gdata.data.ExtendedProperty, + gdata.data.GDEntry, gdata.data.GDFeed, gdata.data.BatchId, + gdata.data.BatchOperation, gdata.data.BatchStatus, + gdata.data.BatchEntry, gdata.data.BatchInterrupted, + gdata.data.BatchFeed, gdata.data.EntryLink, gdata.data.FeedLink, + gdata.data.AdditionalName, gdata.data.Comments, gdata.data.Country, + gdata.data.Email, gdata.data.FamilyName, gdata.data.Im, + gdata.data.GivenName, gdata.data.NamePrefix, gdata.data.NameSuffix, + gdata.data.FullName, gdata.data.Name, gdata.data.OrgDepartment, + gdata.data.OrgName, gdata.data.OrgSymbol, gdata.data.OrgTitle, + gdata.data.Organization, gdata.data.When, gdata.data.Who, + gdata.data.OriginalEvent, gdata.data.PhoneNumber, + gdata.data.PostalAddress, gdata.data.Rating, gdata.data.Recurrence, + gdata.data.RecurrenceException, gdata.data.Reminder, + gdata.data.Agent, gdata.data.HouseName, gdata.data.Street, + gdata.data.PoBox, gdata.data.Neighborhood, gdata.data.City, + gdata.data.Subregion, gdata.data.Region, gdata.data.Postcode, + gdata.data.Country, gdata.data.FormattedAddress, + gdata.data.StructuredPostalAddress, gdata.data.Where, + gdata.data.AttendeeType, gdata.data.AttendeeStatus, + gdata.data.Deleted, gdata.data.Money, + gdata.acl.data.AclRole, gdata.acl.data.AclScope, + gdata.acl.data.AclEntry, gdata.acl.data.AclFeed, + gdata.analytics.data.Dimension, + gdata.analytics.data.EndDate, + gdata.analytics.data.Metric, + gdata.analytics.data.Aggregates, + gdata.analytics.data.DataEntry, + gdata.analytics.data.Property, + gdata.analytics.data.StartDate, + gdata.analytics.data.TableId, + gdata.analytics.data.AccountEntry, + gdata.analytics.data.TableName, + gdata.analytics.data.DataSource, + gdata.analytics.data.AccountFeed, + gdata.analytics.data.DataFeed, + gdata.dublincore.data.Creator, + gdata.dublincore.data.Date, + gdata.dublincore.data.Description, + gdata.dublincore.data.Format, + gdata.dublincore.data.Identifier, + gdata.dublincore.data.Language, + gdata.dublincore.data.Publisher, + gdata.dublincore.data.Rights, + gdata.dublincore.data.Subject, + gdata.dublincore.data.Title, + gdata.books.data.CollectionEntry, + gdata.books.data.CollectionFeed, + gdata.books.data.Embeddability, + gdata.books.data.OpenAccess, + gdata.books.data.Review, + gdata.books.data.Viewability, + gdata.books.data.VolumeEntry, + gdata.books.data.VolumeFeed, + gdata.calendar.data.AccessLevelProperty, + gdata.calendar.data.AllowGSync2Property, + gdata.calendar.data.AllowGSyncProperty, + gdata.calendar.data.AnyoneCanAddSelfProperty, + gdata.calendar.data.CalendarAclRole, + gdata.calendar.data.CalendarCommentEntry, + gdata.calendar.data.CalendarCommentFeed, + gdata.calendar.data.CalendarComments, + gdata.calendar.data.CalendarExtendedProperty, + gdata.calendar.data.CalendarWhere, + gdata.calendar.data.ColorProperty, + gdata.calendar.data.GuestsCanInviteOthersProperty, + gdata.calendar.data.GuestsCanModifyProperty, + gdata.calendar.data.GuestsCanSeeGuestsProperty, + gdata.calendar.data.HiddenProperty, + gdata.calendar.data.IcalUIDProperty, + gdata.calendar.data.OverrideNameProperty, + gdata.calendar.data.PrivateCopyProperty, + gdata.calendar.data.QuickAddProperty, + gdata.calendar.data.ResourceProperty, + gdata.calendar.data.EventWho, + gdata.calendar.data.SelectedProperty, + gdata.calendar.data.SendAclNotificationsProperty, + gdata.calendar.data.CalendarAclEntry, + gdata.calendar.data.CalendarAclFeed, + gdata.calendar.data.SendEventNotificationsProperty, + gdata.calendar.data.SequenceNumberProperty, + gdata.calendar.data.CalendarRecurrenceExceptionEntry, + gdata.calendar.data.CalendarRecurrenceException, + gdata.calendar.data.SettingsProperty, + gdata.calendar.data.SettingsEntry, + gdata.calendar.data.CalendarSettingsFeed, + gdata.calendar.data.SuppressReplyNotificationsProperty, + gdata.calendar.data.SyncEventProperty, + gdata.calendar.data.CalendarEventEntry, + gdata.calendar.data.TimeZoneProperty, + gdata.calendar.data.TimesCleanedProperty, + gdata.calendar.data.CalendarEntry, + gdata.calendar.data.CalendarEventFeed, + gdata.calendar.data.CalendarFeed, + gdata.calendar.data.WebContentGadgetPref, + gdata.calendar.data.WebContent, + gdata.finance.data.Commission, + gdata.finance.data.CostBasis, + gdata.finance.data.DaysGain, + gdata.finance.data.Gain, + gdata.finance.data.MarketValue, + gdata.finance.data.PortfolioData, + gdata.finance.data.PortfolioEntry, + gdata.finance.data.PortfolioFeed, + gdata.finance.data.PositionData, + gdata.finance.data.Price, + gdata.finance.data.Symbol, + gdata.finance.data.PositionEntry, + gdata.finance.data.PositionFeed, + gdata.finance.data.TransactionData, + gdata.finance.data.TransactionEntry, + gdata.finance.data.TransactionFeed, + gdata.notebook.data.ComesAfter, + gdata.notebook.data.NoteEntry, + gdata.notebook.data.NotebookFeed, + gdata.notebook.data.NotebookListEntry, + gdata.notebook.data.NotebookListFeed, + gdata.youtube.data.ComplaintEntry, + gdata.youtube.data.ComplaintFeed, + gdata.youtube.data.RatingEntry, + gdata.youtube.data.RatingFeed, + gdata.youtube.data.YouTubeMediaContent, + gdata.youtube.data.YtAge, + gdata.youtube.data.YtBooks, + gdata.youtube.data.YtCompany, + gdata.youtube.data.YtDescription, + gdata.youtube.data.YtDuration, + gdata.youtube.data.YtFirstName, + gdata.youtube.data.YtGender, + gdata.youtube.data.YtHobbies, + gdata.youtube.data.YtHometown, + gdata.youtube.data.YtLastName, + gdata.youtube.data.YtLocation, + gdata.youtube.data.YtMovies, + gdata.youtube.data.YtMusic, + gdata.youtube.data.YtNoEmbed, + gdata.youtube.data.YtOccupation, + gdata.youtube.data.YtPlaylistId, + gdata.youtube.data.YtPosition, + gdata.youtube.data.YtPrivate, + gdata.youtube.data.YtQueryString, + gdata.youtube.data.YtRacy, + gdata.youtube.data.YtRecorded, + gdata.youtube.data.YtRelationship, + gdata.youtube.data.YtSchool, + gdata.youtube.data.YtStatistics, + gdata.youtube.data.YtStatus, + gdata.youtube.data.YtUserProfileStatistics, + gdata.youtube.data.YtUsername, + gdata.youtube.data.FriendEntry, + gdata.youtube.data.FriendFeed, + gdata.youtube.data.YtVideoStatistics, + gdata.youtube.data.ChannelEntry, + gdata.youtube.data.ChannelFeed, + gdata.youtube.data.FavoriteEntry, + gdata.youtube.data.FavoriteFeed, + gdata.youtube.data.YouTubeMediaCredit, + gdata.youtube.data.YouTubeMediaRating, + gdata.youtube.data.YtAboutMe, + gdata.youtube.data.UserProfileEntry, + gdata.youtube.data.UserProfileFeed, + gdata.youtube.data.YtAspectRatio, + gdata.youtube.data.YtBasePublicationState, + gdata.youtube.data.YtPublicationState, + gdata.youtube.data.YouTubeAppControl, + gdata.youtube.data.YtCaptionPublicationState, + gdata.youtube.data.YouTubeCaptionAppControl, + gdata.youtube.data.CaptionTrackEntry, + gdata.youtube.data.CaptionTrackFeed, + gdata.youtube.data.YtCountHint, + gdata.youtube.data.PlaylistLinkEntry, + gdata.youtube.data.PlaylistLinkFeed, + gdata.youtube.data.YtModerationStatus, + gdata.youtube.data.YtPlaylistTitle, + gdata.youtube.data.SubscriptionEntry, + gdata.youtube.data.SubscriptionFeed, + gdata.youtube.data.YtSpam, + gdata.youtube.data.CommentEntry, + gdata.youtube.data.CommentFeed, + gdata.youtube.data.YtUploaded, + gdata.youtube.data.YtVideoId, + gdata.youtube.data.YouTubeMediaGroup, + gdata.youtube.data.VideoEntryBase, + gdata.youtube.data.PlaylistEntry, + gdata.youtube.data.PlaylistFeed, + gdata.youtube.data.VideoEntry, + gdata.youtube.data.VideoFeed, + gdata.youtube.data.VideoMessageEntry, + gdata.youtube.data.VideoMessageFeed, + gdata.youtube.data.UserEventEntry, + gdata.youtube.data.UserEventFeed, + gdata.youtube.data.VideoModerationEntry, + gdata.youtube.data.VideoModerationFeed, + gdata.media.data.MediaCategory, + gdata.media.data.MediaCopyright, + gdata.media.data.MediaCredit, + gdata.media.data.MediaDescription, + gdata.media.data.MediaHash, + gdata.media.data.MediaKeywords, + gdata.media.data.MediaPlayer, + gdata.media.data.MediaRating, + gdata.media.data.MediaRestriction, + gdata.media.data.MediaText, + gdata.media.data.MediaThumbnail, + gdata.media.data.MediaTitle, + gdata.media.data.MediaContent, + gdata.media.data.MediaGroup, + gdata.webmastertools.data.CrawlIssueCrawlType, + gdata.webmastertools.data.CrawlIssueDateDetected, + gdata.webmastertools.data.CrawlIssueDetail, + gdata.webmastertools.data.CrawlIssueIssueType, + gdata.webmastertools.data.CrawlIssueLinkedFromUrl, + gdata.webmastertools.data.CrawlIssueUrl, + gdata.webmastertools.data.CrawlIssueEntry, + gdata.webmastertools.data.CrawlIssuesFeed, + gdata.webmastertools.data.Indexed, + gdata.webmastertools.data.Keyword, + gdata.webmastertools.data.KeywordEntry, + gdata.webmastertools.data.KeywordsFeed, + gdata.webmastertools.data.LastCrawled, + gdata.webmastertools.data.MessageBody, + gdata.webmastertools.data.MessageDate, + gdata.webmastertools.data.MessageLanguage, + gdata.webmastertools.data.MessageRead, + gdata.webmastertools.data.MessageSubject, + gdata.webmastertools.data.SiteId, + gdata.webmastertools.data.MessageEntry, + gdata.webmastertools.data.MessagesFeed, + gdata.webmastertools.data.SitemapEntry, + gdata.webmastertools.data.SitemapMobileMarkupLanguage, + gdata.webmastertools.data.SitemapMobile, + gdata.webmastertools.data.SitemapNewsPublicationLabel, + gdata.webmastertools.data.SitemapNews, + gdata.webmastertools.data.SitemapType, + gdata.webmastertools.data.SitemapUrlCount, + gdata.webmastertools.data.SitemapsFeed, + gdata.webmastertools.data.VerificationMethod, + gdata.webmastertools.data.Verified, + gdata.webmastertools.data.SiteEntry, + gdata.webmastertools.data.SitesFeed, + gdata.contacts.data.BillingInformation, + gdata.contacts.data.Birthday, + gdata.contacts.data.CalendarLink, + gdata.contacts.data.DirectoryServer, + gdata.contacts.data.Event, + gdata.contacts.data.ExternalId, + gdata.contacts.data.Gender, + gdata.contacts.data.Hobby, + gdata.contacts.data.Initials, + gdata.contacts.data.Jot, + gdata.contacts.data.Language, + gdata.contacts.data.MaidenName, + gdata.contacts.data.Mileage, + gdata.contacts.data.NickName, + gdata.contacts.data.Occupation, + gdata.contacts.data.Priority, + gdata.contacts.data.Relation, + gdata.contacts.data.Sensitivity, + gdata.contacts.data.UserDefinedField, + gdata.contacts.data.Website, + gdata.contacts.data.HouseName, + gdata.contacts.data.Street, + gdata.contacts.data.POBox, + gdata.contacts.data.Neighborhood, + gdata.contacts.data.City, + gdata.contacts.data.SubRegion, + gdata.contacts.data.Region, + gdata.contacts.data.PostalCode, + gdata.contacts.data.Country, + gdata.contacts.data.PersonEntry, + gdata.contacts.data.Deleted, + gdata.contacts.data.GroupMembershipInfo, + gdata.contacts.data.ContactEntry, + gdata.contacts.data.ContactsFeed, + gdata.contacts.data.SystemGroup, + gdata.contacts.data.GroupEntry, + gdata.contacts.data.GroupsFeed, + gdata.contacts.data.ProfileEntry, + gdata.contacts.data.ProfilesFeed, + gdata.opensearch.data.ItemsPerPage, + gdata.opensearch.data.StartIndex, + gdata.opensearch.data.TotalResults, + )) + + +def suite(): + return conf.build_suite([DataSmokeTest]) + + +if __name__ == '__main__': + unittest.main() diff -Nru python-gdata-1.2.4/tests/gdata_tests/data_test.py python-gdata-2.0.8/tests/gdata_tests/data_test.py --- python-gdata-1.2.4/tests/gdata_tests/data_test.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_tests/data_test.py 2010-02-26 21:34:15.000000000 +0000 @@ -0,0 +1,523 @@ +#!/usr/bin/env python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +# This module is used for version 2 of the Google Data APIs. + + +__author__ = 'j.s@google.com (Jeff Scudder)' + + +import unittest +import gdata.data +from gdata import test_data +import gdata.test_config as conf +import atom.core +import atom.data + + +SIMPLE_V2_FEED_TEST_DATA = """ + Elizabeth Bennet's Contacts + + + http://www.google.com/m8/feeds/contacts/liz%40gmail.com/base/c9e + Fitzwilliam + + + + + + + +""" + + +XML_ENTRY_1 = """ + + + http://www.google.com/test/id/url + Testing 2000 series laptop + +
A Testing Laptop
+
+ + + Computer + Laptop + testing laptop + products +
""" + + +def parse(xml_string, target_class): + """Convenience wrapper for converting an XML string to an XmlElement.""" + return atom.core.xml_element_from_string(xml_string, target_class) + + +class StartIndexTest(unittest.TestCase): + + def setUp(self): + self.start_index = gdata.data.StartIndex() + + def testToAndFromString(self): + self.start_index.text = '1' + self.assert_(self.start_index.text == '1') + new_start_index = parse(self.start_index.ToString(), + gdata.data.StartIndex) + self.assert_(self.start_index.text == new_start_index.text) + + +class ItemsPerPageTest(unittest.TestCase): + + def setUp(self): + self.items_per_page = gdata.data.ItemsPerPage() + + def testToAndFromString(self): + self.items_per_page.text = '10' + self.assert_(self.items_per_page.text == '10') + new_items_per_page = parse(self.items_per_page.ToString(), + gdata.data.ItemsPerPage) + self.assert_(self.items_per_page.text == new_items_per_page.text) + + +class GDataEntryTest(unittest.TestCase): + + def testIdShouldBeCleaned(self): + entry = parse(XML_ENTRY_1, gdata.data.GDEntry) + tree = parse(XML_ENTRY_1, atom.core.XmlElement) + self.assert_(tree.get_elements('id', + 'http://www.w3.org/2005/Atom')[0].text != entry.get_id()) + self.assertEqual(entry.get_id(), 'http://www.google.com/test/id/url') + + def testGeneratorShouldBeCleaned(self): + feed = parse(test_data.GBASE_FEED, gdata.data.GDFeed) + tree = parse(test_data.GBASE_FEED, atom.core.XmlElement) + self.assert_(tree.get_elements('generator', + 'http://www.w3.org/2005/Atom')[0].text != feed.get_generator()) + self.assertEqual(feed.get_generator(), 'GoogleBase') + + def testAllowsEmptyId(self): + entry = gdata.data.GDEntry() + try: + entry.id = atom.data.Id() + except AttributeError: + self.fail('Empty id should not raise an attribute error.') + +class LinkFinderTest(unittest.TestCase): + + def setUp(self): + self.entry = parse(XML_ENTRY_1, gdata.data.GDEntry) + + def testLinkFinderGetsLicenseLink(self): + self.assertEquals(isinstance(self.entry.FindLicenseLink(), str), + True) + self.assertEquals(self.entry.FindLicenseLink(), + 'http://creativecommons.org/licenses/by-nc/2.5/rdf') + + def testLinkFinderGetsAlternateLink(self): + self.assert_(isinstance(self.entry.FindAlternateLink(), str)) + self.assertEquals(self.entry.FindAlternateLink(), + 'http://www.provider-host.com/123456789') + + def testFindAclLink(self): + entry = gdata.data.GDEntry() + self.assert_(entry.get_acl_link() is None) + self.assert_(entry.find_acl_link() is None) + + entry.link.append(atom.data.Link( + rel=gdata.data.ACL_REL, href='http://example.com/acl')) + self.assertEqual(entry.get_acl_link().href, 'http://example.com/acl') + self.assertEqual(entry.find_acl_link(), 'http://example.com/acl') + + del entry.link[0] + self.assert_(entry.get_acl_link() is None) + self.assert_(entry.find_acl_link() is None) + + # We should also find an ACL link which is a feed_link. + entry.feed_link = [gdata.data.FeedLink( + rel=gdata.data.ACL_REL, href='http://example.com/acl2')] + self.assertEqual(entry.get_acl_link().href, 'http://example.com/acl2') + self.assertEqual(entry.find_acl_link(), 'http://example.com/acl2') + + +class GDataFeedTest(unittest.TestCase): + + def testCorrectConversionToElementTree(self): + test_feed = parse(test_data.GBASE_FEED, gdata.data.GDFeed) + self.assert_(test_feed.total_results is not None) + self.assert_(test_feed.get_elements('totalResults', + 'http://a9.com/-/spec/opensearchrss/1.0/') is not None) + self.assert_(len(test_feed.get_elements('totalResults', + 'http://a9.com/-/spec/opensearchrss/1.0/')) > 0) + + def testAllowsEmptyId(self): + feed = gdata.data.GDFeed() + try: + feed.id = atom.data.Id() + except AttributeError: + self.fail('Empty id should not raise an attribute error.') + + +class BatchEntryTest(unittest.TestCase): + + def testCorrectConversionFromAndToString(self): + batch_entry = parse(test_data.BATCH_ENTRY, gdata.data.BatchEntry) + + self.assertEquals(batch_entry.batch_id.text, 'itemB') + self.assertEquals(batch_entry.id.text, + 'http://www.google.com/base/feeds/items/' + '2173859253842813008') + self.assertEquals(batch_entry.batch_operation.type, 'insert') + self.assertEquals(batch_entry.batch_status.code, '201') + self.assertEquals(batch_entry.batch_status.reason, 'Created') + + new_entry = parse(str(batch_entry), gdata.data.BatchEntry) + + self.assertEquals(batch_entry.batch_id.text, new_entry.batch_id.text) + self.assertEquals(batch_entry.id.text, new_entry.id.text) + self.assertEquals(batch_entry.batch_operation.type, + new_entry.batch_operation.type) + self.assertEquals(batch_entry.batch_status.code, + new_entry.batch_status.code) + self.assertEquals(batch_entry.batch_status.reason, + new_entry.batch_status.reason) + + +class BatchFeedTest(unittest.TestCase): + + def setUp(self): + self.batch_feed = gdata.data.BatchFeed() + self.example_entry = gdata.data.BatchEntry( + id=atom.data.Id(text='http://example.com/1'), text='This is a test') + + def testConvertRequestFeed(self): + batch_feed = parse(test_data.BATCH_FEED_REQUEST, gdata.data.BatchFeed) + + self.assertEquals(len(batch_feed.entry), 4) + for entry in batch_feed.entry: + self.assert_(isinstance(entry, gdata.data.BatchEntry)) + self.assertEquals(batch_feed.title.text, 'My Batch Feed') + + new_feed = parse(batch_feed.to_string(), gdata.data.BatchFeed) + + self.assertEquals(len(new_feed.entry), 4) + for entry in new_feed.entry: + self.assert_(isinstance(entry, gdata.data.BatchEntry)) + self.assertEquals(new_feed.title.text, 'My Batch Feed') + + def testConvertResultFeed(self): + batch_feed = parse(test_data.BATCH_FEED_RESULT, gdata.data.BatchFeed) + + self.assertEquals(len(batch_feed.entry), 4) + for entry in batch_feed.entry: + self.assert_(isinstance(entry, gdata.data.BatchEntry)) + if entry.id.text == ('http://www.google.com/base/feeds/items/' + '2173859253842813008'): + self.assertEquals(entry.batch_operation.type, 'insert') + self.assertEquals(entry.batch_id.text, 'itemB') + self.assertEquals(entry.batch_status.code, '201') + self.assertEquals(entry.batch_status.reason, 'Created') + self.assertEquals(batch_feed.title.text, 'My Batch') + + new_feed = parse(str(batch_feed), gdata.data.BatchFeed) + + self.assertEquals(len(new_feed.entry), 4) + for entry in new_feed.entry: + self.assert_(isinstance(entry, gdata.data.BatchEntry)) + if entry.id.text == ('http://www.google.com/base/feeds/items/' + '2173859253842813008'): + self.assertEquals(entry.batch_operation.type, 'insert') + self.assertEquals(entry.batch_id.text, 'itemB') + self.assertEquals(entry.batch_status.code, '201') + self.assertEquals(entry.batch_status.reason, 'Created') + self.assertEquals(new_feed.title.text, 'My Batch') + + def testAddBatchEntry(self): + try: + self.batch_feed.AddBatchEntry(batch_id_string='a') + self.fail('AddBatchEntry with neither entry or URL should raise Error') + except gdata.data.MissingRequiredParameters: + pass + + new_entry = self.batch_feed.AddBatchEntry( + id_url_string='http://example.com/1') + self.assertEquals(len(self.batch_feed.entry), 1) + self.assertEquals(self.batch_feed.entry[0].get_id(), + 'http://example.com/1') + self.assertEquals(self.batch_feed.entry[0].batch_id.text, '0') + self.assertEquals(new_entry.id.text, 'http://example.com/1') + self.assertEquals(new_entry.batch_id.text, '0') + + to_add = gdata.data.BatchEntry(id=atom.data.Id(text='originalId')) + new_entry = self.batch_feed.AddBatchEntry(entry=to_add, + batch_id_string='foo') + self.assertEquals(new_entry.batch_id.text, 'foo') + self.assertEquals(new_entry.id.text, 'originalId') + + to_add = gdata.data.BatchEntry(id=atom.data.Id(text='originalId'), + batch_id=gdata.data.BatchId(text='bar')) + new_entry = self.batch_feed.AddBatchEntry(entry=to_add, + id_url_string='newId', + batch_id_string='foo') + self.assertEquals(new_entry.batch_id.text, 'foo') + self.assertEquals(new_entry.id.text, 'originalId') + + to_add = gdata.data.BatchEntry(id=atom.data.Id(text='originalId'), + batch_id=gdata.data.BatchId(text='bar')) + new_entry = self.batch_feed.AddBatchEntry(entry=to_add, + id_url_string='newId') + self.assertEquals(new_entry.batch_id.text, 'bar') + self.assertEquals(new_entry.id.text, 'originalId') + + to_add = gdata.data.BatchEntry(id=atom.data.Id(text='originalId'), + batch_id=gdata.data.BatchId(text='bar'), + batch_operation=gdata.data.BatchOperation( + type=gdata.data.BATCH_INSERT)) + self.assertEquals(to_add.batch_operation.type, gdata.data.BATCH_INSERT) + new_entry = self.batch_feed.AddBatchEntry(entry=to_add, + id_url_string='newId', batch_id_string='foo', + operation_string=gdata.data.BATCH_UPDATE) + self.assertEquals(new_entry.batch_operation.type, gdata.data.BATCH_UPDATE) + + def testAddInsert(self): + + first_entry = gdata.data.BatchEntry( + id=atom.data.Id(text='http://example.com/1'), text='This is a test1') + self.batch_feed.AddInsert(first_entry) + self.assertEquals(self.batch_feed.entry[0].batch_operation.type, + gdata.data.BATCH_INSERT) + self.assertEquals(self.batch_feed.entry[0].batch_id.text, '0') + + second_entry = gdata.data.BatchEntry( + id=atom.data.Id(text='http://example.com/2'), text='This is a test2') + self.batch_feed.AddInsert(second_entry, batch_id_string='foo') + self.assertEquals(self.batch_feed.entry[1].batch_operation.type, + gdata.data.BATCH_INSERT) + self.assertEquals(self.batch_feed.entry[1].batch_id.text, 'foo') + + third_entry = gdata.data.BatchEntry( + id=atom.data.Id(text='http://example.com/3'), text='This is a test3') + third_entry.batch_operation = gdata.data.BatchOperation( + type=gdata.data.BATCH_DELETE) + # Add an entry with a delete operation already assigned. + self.batch_feed.AddInsert(third_entry) + # The batch entry should not have the original operation, it should + # have been changed to an insert. + self.assertEquals(self.batch_feed.entry[2].batch_operation.type, + gdata.data.BATCH_INSERT) + self.assertEquals(self.batch_feed.entry[2].batch_id.text, '2') + + def testAddDelete(self): + # Try deleting an entry + delete_entry = gdata.data.BatchEntry( + id=atom.data.Id(text='http://example.com/1'), text='This is a test') + self.batch_feed.AddDelete(entry=delete_entry) + self.assertEquals(self.batch_feed.entry[0].batch_operation.type, + gdata.data.BATCH_DELETE) + self.assertEquals(self.batch_feed.entry[0].get_id(), + 'http://example.com/1') + self.assertEquals(self.batch_feed.entry[0].text, 'This is a test') + + # Try deleting a URL + self.batch_feed.AddDelete(url_string='http://example.com/2') + self.assertEquals(self.batch_feed.entry[0].batch_operation.type, + gdata.data.BATCH_DELETE) + self.assertEquals(self.batch_feed.entry[1].id.text, + 'http://example.com/2') + self.assert_(self.batch_feed.entry[1].text is None) + + def testAddQuery(self): + # Try querying with an existing batch entry + delete_entry = gdata.data.BatchEntry( + id=atom.data.Id(text='http://example.com/1')) + self.batch_feed.AddQuery(entry=delete_entry) + self.assertEquals(self.batch_feed.entry[0].batch_operation.type, + gdata.data.BATCH_QUERY) + self.assertEquals(self.batch_feed.entry[0].get_id(), + 'http://example.com/1') + + # Try querying a URL + self.batch_feed.AddQuery(url_string='http://example.com/2') + self.assertEquals(self.batch_feed.entry[0].batch_operation.type, + gdata.data.BATCH_QUERY) + self.assertEquals(self.batch_feed.entry[1].id.text, + 'http://example.com/2') + + def testAddUpdate(self): + # Try updating an entry + delete_entry = gdata.data.BatchEntry( + id=atom.data.Id(text='http://example.com/1'), text='This is a test') + self.batch_feed.AddUpdate(entry=delete_entry) + self.assertEquals(self.batch_feed.entry[0].batch_operation.type, + gdata.data.BATCH_UPDATE) + self.assertEquals(self.batch_feed.entry[0].get_id(), + 'http://example.com/1') + self.assertEquals(self.batch_feed.entry[0].text, 'This is a test') + + +class ExtendedPropertyTest(unittest.TestCase): + + def testXmlBlobRoundTrip(self): + ep = gdata.data.ExtendedProperty(name='blobby') + ep.SetXmlBlob('') + extension = ep.GetXmlBlob() + self.assertEquals(extension.tag, 'some_xml') + self.assert_(extension.namespace is None) + self.assertEquals(extension.attributes['attr'], 'test') + + ep2 = parse(ep.ToString(), gdata.data.ExtendedProperty) + + extension = ep2.GetXmlBlob() + self.assertEquals(extension.tag, 'some_xml') + self.assert_(extension.namespace is None) + self.assertEquals(extension.attributes['attr'], 'test') + + def testGettersShouldReturnNoneWithNoBlob(self): + ep = gdata.data.ExtendedProperty(name='no blob') + self.assert_(ep.GetXmlBlob() is None) + + def testGettersReturnCorrectTypes(self): + ep = gdata.data.ExtendedProperty(name='has blob') + ep.SetXmlBlob('') + self.assert_(isinstance(ep.GetXmlBlob(), + atom.core.XmlElement)) + self.assert_(isinstance(ep.GetXmlBlob().to_string(), str)) + + +class FeedLinkTest(unittest.TestCase): + + def testCorrectFromStringType(self): + link = parse( + '', + gdata.data.FeedLink) + self.assert_(isinstance(link, gdata.data.FeedLink)) + self.assertEqual(link.count_hint, '5') + + +class SimpleV2FeedTest(unittest.TestCase): + + def test_parsing_etags_and_edit_url(self): + feed = atom.core.parse(SIMPLE_V2_FEED_TEST_DATA, gdata.data.GDFeed) + + # General parsing assertions. + self.assertEqual(feed.get_elements('title')[0].text, + 'Elizabeth Bennet\'s Contacts') + self.assertEqual(len(feed.entry), 2) + for entry in feed.entry: + self.assert_(isinstance(entry, gdata.data.GDEntry)) + self.assertEqual(feed.entry[0].GetElements('title')[0].text, + 'Fitzwilliam') + self.assertEqual(feed.entry[0].get_elements('id')[0].text, + 'http://www.google.com/m8/feeds/contacts/liz%40gmail.com/base/c9e') + + # ETags checks. + self.assertEqual(feed.etag, 'W/"CUMBRHo_fip7ImA9WxRbGU0."') + self.assertEqual(feed.entry[0].etag, '"Qn04eTVSLyp7ImA9WxRbGEUORAQ."') + self.assertEqual(feed.entry[1].etag, '"123456"') + + # Look for Edit URLs. + self.assertEqual(feed.entry[0].find_edit_link(), + 'http://www.google.com/m8/feeds/contacts/liz%40gmail.com/full/c9e') + self.assertEqual(feed.entry[1].FindEditLink(), 'http://example.com/1') + + # Look for Next URLs. + self.assertEqual(feed.find_next_link(), + 'http://www.google.com/m8/feeds/contacts/.../more') + + def test_constructor_defauls(self): + feed = gdata.data.GDFeed() + self.assert_(feed.etag is None) + self.assertEqual(feed.link, []) + self.assertEqual(feed.entry, []) + entry = gdata.data.GDEntry() + self.assert_(entry.etag is None) + self.assertEqual(entry.link, []) + link = atom.data.Link() + self.assert_(link.href is None) + self.assert_(link.rel is None) + link1 = atom.data.Link(href='http://example.com', rel='test') + self.assertEqual(link1.href, 'http://example.com') + self.assertEqual(link1.rel, 'test') + link2 = atom.data.Link(href='http://example.org/', rel='alternate') + entry = gdata.data.GDEntry(etag='foo', link=[link1, link2]) + feed = gdata.data.GDFeed(etag='12345', entry=[entry]) + self.assertEqual(feed.etag, '12345') + self.assertEqual(len(feed.entry), 1) + self.assertEqual(feed.entry[0].etag, 'foo') + self.assertEqual(len(feed.entry[0].link), 2) + + +class DataClassSanityTest(unittest.TestCase): + + def test_basic_element_structure(self): + conf.check_data_classes(self, [ + gdata.data.TotalResults, gdata.data.StartIndex, + gdata.data.ItemsPerPage, gdata.data.ExtendedProperty, + gdata.data.GDEntry, gdata.data.GDFeed, gdata.data.BatchId, + gdata.data.BatchOperation, gdata.data.BatchStatus, + gdata.data.BatchEntry, gdata.data.BatchInterrupted, + gdata.data.BatchFeed, gdata.data.EntryLink, gdata.data.FeedLink, + gdata.data.AdditionalName, gdata.data.Comments, gdata.data.Country, + gdata.data.Email, gdata.data.FamilyName, gdata.data.Im, + gdata.data.GivenName, gdata.data.NamePrefix, gdata.data.NameSuffix, + gdata.data.FullName, gdata.data.Name, gdata.data.OrgDepartment, + gdata.data.OrgName, gdata.data.OrgSymbol, gdata.data.OrgTitle, + gdata.data.Organization, gdata.data.When, gdata.data.Who, + gdata.data.OriginalEvent, gdata.data.PhoneNumber, + gdata.data.PostalAddress, gdata.data.Rating, gdata.data.Recurrence, + gdata.data.RecurrenceException, gdata.data.Reminder, + gdata.data.Agent, gdata.data.HouseName, gdata.data.Street, + gdata.data.PoBox, gdata.data.Neighborhood, gdata.data.City, + gdata.data.Subregion, gdata.data.Region, gdata.data.Postcode, + gdata.data.Country, gdata.data.FormattedAddress, + gdata.data.StructuredPostalAddress, gdata.data.Where, + gdata.data.AttendeeType, gdata.data.AttendeeStatus]) + + def test_member_values(self): + self.assertEqual( + gdata.data.TotalResults._qname, + ('{http://a9.com/-/spec/opensearchrss/1.0/}totalResults', + '{http://a9.com/-/spec/opensearch/1.1/}totalResults')) + self.assertEqual( + gdata.data.RecurrenceException._qname, + '{http://schemas.google.com/g/2005}recurrenceException') + self.assertEqual(gdata.data.RecurrenceException.specialized, + 'specialized') + + +def suite(): + return conf.build_suite([StartIndexTest, StartIndexTest, GDataEntryTest, + LinkFinderTest, GDataFeedTest, BatchEntryTest, BatchFeedTest, + ExtendedPropertyTest, FeedLinkTest, SimpleV2FeedTest, + DataClassSanityTest]) + + +if __name__ == '__main__': + unittest.main() + + diff -Nru python-gdata-1.2.4/tests/gdata_tests/docs/data_test.py python-gdata-2.0.8/tests/gdata_tests/docs/data_test.py --- python-gdata-1.2.4/tests/gdata_tests/docs/data_test.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_tests/docs/data_test.py 2010-01-29 00:59:20.000000000 +0000 @@ -0,0 +1,243 @@ +#!/usr/bin/python +# +# Copyright 2009 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +__author__ = 'e.bidelman (Eric Bidelman)' + +import unittest +import atom +from gdata import test_data +import gdata.acl.data +import gdata.data +import gdata.docs.data +import gdata.test_config as conf + + +class DocsHelperTest(unittest.TestCase): + + def setUp(self): + pass + + def testMakeKindCategory(self): + category = gdata.docs.data.MakeKindCategory('folder') + self.assertEqual(category.label, 'folder') + self.assertEqual(category.scheme, 'http://schemas.google.com/g/2005#kind') + self.assertEqual( + category.term, 'http://schemas.google.com/docs/2007#folder') + + category = gdata.docs.data.MakeKindCategory('spreadsheet') + self.assertEqual(category.label, 'spreadsheet') + self.assertEqual(category.scheme, 'http://schemas.google.com/g/2005#kind') + self.assertEqual( + category.term, 'http://schemas.google.com/docs/2007#spreadsheet') + + def testMakeContentLinkFromResourceId(self): + link = gdata.docs.data.make_content_link_from_resource_id( + 'document%3A1234567890') + self.assertEqual(link, '/feeds/download/documents/Export?docId=1234567890') + + link2 = gdata.docs.data.make_content_link_from_resource_id( + 'presentation%3A1234567890') + self.assertEqual( + link2, '/feeds/download/presentations/Export?docId=1234567890') + + link3 = gdata.docs.data.make_content_link_from_resource_id( + 'spreadsheet%3A1234567890') + self.assertEqual( + link3, ('http://spreadsheets.google.com/feeds/download/spreadsheets/' + 'Export?key=1234567890')) + + # Try an invalid resource id. + exception_raised = False + try: + link4 = gdata.docs.data.make_content_link_from_resource_id('1234567890') + except ValueError, e: # expected + exception_raised = True + + self.assert_(exception_raised) + + # Try an resource id that cannot be exported. + exception_raised = False + try: + link4 = gdata.docs.data.make_content_link_from_resource_id( + 'pdf%3A1234567890') + except ValueError, e: # expected + exception_raised = True + + self.assert_(exception_raised) + + +class DocsEntryTest(unittest.TestCase): + + def setUp(self): + self.entry = atom.core.parse(test_data.DOCUMENT_LIST_ENTRY_V3, + gdata.docs.data.DocsEntry) + + def testToAndFromStringDocsEntry(self): + self.assert_(isinstance(self.entry, gdata.docs.data.DocsEntry)) + self.assertEqual(self.entry.GetDocumentType(), 'spreadsheet') + self.assert_(isinstance(self.entry.last_viewed, gdata.docs.data.LastViewed)) + self.assertEqual(self.entry.last_viewed.text, '2009-03-05T07:48:21.493Z') + self.assert_( + isinstance(self.entry.last_modified_by, gdata.docs.data.LastModifiedBy)) + self.assertEqual( + self.entry.last_modified_by.email.text, 'test.user@gmail.com') + self.assertEqual(self.entry.last_modified_by.name.text, 'test.user') + self.assert_(isinstance(self.entry.resource_id, gdata.docs.data.ResourceId)) + self.assertEqual(self.entry.resource_id.text, + 'spreadsheet:supercalifragilisticexpealidocious') + self.assert_(isinstance(self.entry.writers_can_invite, + gdata.docs.data.WritersCanInvite)) + self.assertEqual(self.entry.writers_can_invite.value, 'true') + self.assert_(isinstance(self.entry.quota_bytes_used, + gdata.docs.data.QuotaBytesUsed)) + self.assertEqual(self.entry.quota_bytes_used.text, '1000') + self.assertEqual(len(self.entry.feed_link), 2) + self.assert_(isinstance(self.entry.feed_link[0], gdata.data.FeedLink)) + + self.assertEqual( + self.entry.get_acl_feed_link().href, + ('http://docs.google.com/feeds/default/private/full/' + 'spreadsheet%3Asupercalifragilisticexpealidocious/acl')) + self.assertEqual( + self.entry.get_revisions_feed_link().href, + ('http://docs.google.com/feeds/default/private/full/' + 'spreadsheet%3Asupercalifragilisticexpealidocious/revisions')) + + self.assertEqual(len(self.entry.in_folders()), 1) + self.assertEqual(self.entry.in_folders()[0].title, 'AFolderName') + + +class AclTest(unittest.TestCase): + + def setUp(self): + self.acl_entry = atom.core.parse(test_data.DOCUMENT_LIST_ACL_ENTRY, + gdata.docs.data.Acl) + + def testToAndFromString(self): + self.assert_(isinstance(self.acl_entry, gdata.docs.data.Acl)) + self.assert_(isinstance(self.acl_entry.role, gdata.acl.data.AclRole)) + self.assert_(isinstance(self.acl_entry.scope, gdata.acl.data.AclScope)) + self.assertEqual(self.acl_entry.scope.value, 'user@gmail.com') + self.assertEqual(self.acl_entry.scope.type, 'user') + self.assertEqual(self.acl_entry.role.value, 'writer') + + acl_entry_str = str(self.acl_entry) + new_acl_entry = atom.core.parse(acl_entry_str, gdata.docs.data.Acl) + self.assert_(isinstance(new_acl_entry, gdata.docs.data.Acl)) + self.assert_(isinstance(new_acl_entry.role, gdata.acl.data.AclRole)) + self.assert_(isinstance(new_acl_entry.scope, gdata.acl.data.AclScope)) + self.assertEqual(new_acl_entry.scope.value, self.acl_entry.scope.value) + self.assertEqual(new_acl_entry.scope.type, self.acl_entry.scope.type) + self.assertEqual(new_acl_entry.role.value, self.acl_entry.role.value) + + def testCreateNewAclEntry(self): + cat = gdata.atom.Category( + term='http://schemas.google.com/acl/2007#accessRule', + scheme='http://schemas.google.com/g/2005#kind') + acl_entry = gdata.docs.DocumentListAclEntry(category=[cat]) + acl_entry.scope = gdata.docs.Scope(value='user@gmail.com', type='user') + acl_entry.role = gdata.docs.Role(value='writer') + self.assert_(isinstance(acl_entry, gdata.docs.DocumentListAclEntry)) + self.assert_(isinstance(acl_entry.role, gdata.docs.Role)) + self.assert_(isinstance(acl_entry.scope, gdata.docs.Scope)) + self.assertEqual(acl_entry.scope.value, 'user@gmail.com') + self.assertEqual(acl_entry.scope.type, 'user') + self.assertEqual(acl_entry.role.value, 'writer') + + +class AclFeedTest(unittest.TestCase): + + def setUp(self): + self.feed = atom.core.parse(test_data.DOCUMENT_LIST_ACL_FEED, + gdata.docs.data.AclFeed) + + def testToAndFromString(self): + for entry in self.feed.entry: + self.assert_(isinstance(entry, gdata.docs.data.Acl)) + + feed = atom.core.parse(str(self.feed), gdata.docs.data.AclFeed) + for entry in feed.entry: + self.assert_(isinstance(entry, gdata.docs.data.Acl)) + + def testConvertActualData(self): + entries = self.feed.entry + self.assert_(len(entries) == 2) + self.assertEqual(entries[0].title.text, + 'Document Permission - user@gmail.com') + self.assertEqual(entries[0].role.value, 'owner') + self.assertEqual(entries[0].scope.type, 'user') + self.assertEqual(entries[0].scope.value, 'user@gmail.com') + self.assert_(entries[0].GetSelfLink() is not None) + self.assert_(entries[0].GetEditLink() is not None) + self.assertEqual(entries[1].title.text, + 'Document Permission - user2@google.com') + self.assertEqual(entries[1].role.value, 'writer') + self.assertEqual(entries[1].scope.type, 'domain') + self.assertEqual(entries[1].scope.value, 'google.com') + self.assert_(entries[1].GetSelfLink() is not None) + self.assert_(entries[1].GetEditLink() is not None) + + +class RevisionFeedTest(unittest.TestCase): + + def setUp(self): + self.feed = atom.core.parse(test_data.DOCUMENT_LIST_REVISION_FEED, + gdata.docs.data.RevisionFeed) + + def testToAndFromString(self): + for entry in self.feed.entry: + self.assert_(isinstance(entry, gdata.docs.data.Revision)) + + feed = atom.core.parse(str(self.feed), gdata.docs.data.RevisionFeed) + for entry in feed.entry: + self.assert_(isinstance(entry, gdata.docs.data.Revision)) + + def testConvertActualData(self): + entries = self.feed.entry + self.assert_(len(entries) == 1) + self.assertEqual(entries[0].title.text, 'Revision 2') + self.assertEqual(entries[0].publish.value, 'true') + self.assertEqual(entries[0].publish_auto.value, 'true') + self.assertEqual(entries[0].publish_outside_domain.value, 'false') + self.assertEqual( + entries[0].GetPublishLink().href, + 'http://docs.google.com/View?docid=dfr4&pageview=1&hgd=1') + self.assertEqual( + entries[0].FindPublishLink(), + 'http://docs.google.com/View?docid=dfr4&pageview=1&hgd=1') + + +class DataClassSanityTest(unittest.TestCase): + + def test_basic_element_structure(self): + conf.check_data_classes(self, [ + gdata.docs.data.ResourceId, gdata.docs.data.LastModifiedBy, + gdata.docs.data.LastViewed, gdata.docs.data.WritersCanInvite, + gdata.docs.data.QuotaBytesUsed, gdata.docs.data.Publish, + gdata.docs.data.PublishAuto, gdata.docs.data.PublishOutsideDomain, + gdata.docs.data.DocsEntry, gdata.docs.data.Acl, gdata.docs.data.AclFeed, + gdata.docs.data.DocList, gdata.docs.data.Revision, + gdata.docs.data.RevisionFeed]) + + +def suite(): + return conf.build_suite( + [DataClassSanityTest, DocsHelperTest, DocsEntryTest, AclTest, AclFeed]) + + +if __name__ == '__main__': + unittest.main() diff -Nru python-gdata-1.2.4/tests/gdata_tests/docs/live_client_test.py python-gdata-2.0.8/tests/gdata_tests/docs/live_client_test.py --- python-gdata-1.2.4/tests/gdata_tests/docs/live_client_test.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_tests/docs/live_client_test.py 2009-11-20 01:55:00.000000000 +0000 @@ -0,0 +1,262 @@ +#!/usr/bin/python +# +# Copyright 2009 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# This module is used for version 2 of the Google Data APIs. +# These tests attempt to connect to Google servers. + + +__author__ = 'e.bidelman (Eric Bidelman)' + + +import os +import unittest +import gdata.client +import gdata.data +import gdata.gauth +import gdata.docs.client +import gdata.docs.data +import gdata.test_config as conf + + +class DocsTestCase(unittest.TestCase): + + def setUp(self): + self.client = None + if conf.options.get_value('runlive') == 'true': + self.client = gdata.docs.client.DocsClient() + if conf.options.get_value('ssl') == 'true': + self.client.ssl = True + conf.configure_client(self.client, 'DocsTest', self.client.auth_service) + + def tearDown(self): + conf.close_client(self.client) + + +class DocsFetchingDataTest(DocsTestCase): + + def testGetDocList(self): + if not conf.options.get_value('runlive') == 'true': + return + + # Either load the recording or prepare to make a live request. + conf.configure_cache(self.client, 'testGetDocList') + + # Query using GetDocList() + feed = self.client.GetDocList(limit=1) + self.assert_(isinstance(feed, gdata.docs.data.DocList)) + self.assertEqual(len(feed.entry), 1) + + def testGetDoc(self): + if not conf.options.get_value('runlive') == 'true': + return + + # Either load the recording or prepare to make a live request. + conf.configure_cache(self.client, 'testGetDoc') + + uri = ('http://docs.google.com/feeds/default/private/full/' + '-/spreadsheet?max-results=1') + feed = self.client.GetDocList(uri, limit=1) + self.assertEqual(len(feed.entry), 1) + self.assertEqual(feed.entry[0].GetDocumentType(), 'spreadsheet') + resource_id = feed.entry[0].resource_id.text + entry = self.client.GetDoc(resource_id) + self.assert_(isinstance(entry, gdata.docs.data.DocsEntry)) + self.assert_(entry.id.text is not None) + self.assert_(entry.title.text is not None) + self.assert_(entry.resource_id.text is not None) + self.assert_(entry.title.text is not None) + + def testGetAclFeed(self): + if not conf.options.get_value('runlive') == 'true': + return + + # Either load the recording or prepare to make a live request. + conf.configure_cache(self.client, 'testGetAclFeed') + + uri = ('http://docs.google.com/feeds/default/private/full/' + '-/mine?max-results=1') + feed = self.client.GetDocList(uri=uri) + self.assertEqual(len(feed.entry), 1) + acl_feed = self.client.GetAclPermissions(feed.entry[0].resource_id.text) + self.assert_(isinstance(acl_feed, gdata.docs.data.AclFeed)) + self.assert_(isinstance(acl_feed.entry[0], gdata.docs.data.Acl)) + self.assert_(acl_feed.entry[0].scope is not None) + self.assert_(acl_feed.entry[0].role is not None) + + def testGetRevisionFeed(self): + if not conf.options.get_value('runlive') == 'true': + return + + # Either load the recording or prepare to make a live request. + conf.configure_cache(self.client, 'testGetRevisionFeed') + + uri = 'http://docs.google.com/feeds/default/private/full/-/document' + feed = self.client.GetDocList(uri=uri, limit=1) + self.assertEqual(len(feed.entry), 1) + acl_feed = self.client.GetRevisions(feed.entry[0].resource_id.text) + self.assert_(isinstance(acl_feed, gdata.docs.data.RevisionFeed)) + self.assert_(isinstance(acl_feed.entry[0], gdata.docs.data.Revision)) + + +class CreatingAndDeletionTest(DocsTestCase): + + def testCreateAndMoveDoc(self): + if not conf.options.get_value('runlive') == 'true': + return + + # Either load the recording or prepare to make a live request. + conf.configure_cache(self.client, 'testCreateAndMoveDoc') + + new_folder = self.client.Create(gdata.docs.data.FOLDER_LABEL, 'My Folder') + self.assertEqual(new_folder.title.text, 'My Folder') + self.assertEqual(new_folder.GetDocumentType(), 'folder') + + new_doc = self.client.Create(gdata.docs.data.DOCUMENT_LABEL, 'My Doc', + writers_can_invite=False) + self.assertEqual(new_doc.GetDocumentType(), 'document') + self.assertEqual(new_doc.title.text, 'My Doc') + self.assertEqual(new_doc.writers_can_invite.value, 'false') + + # Move doc into folder + new_entry = self.client.Move(new_doc, new_folder) + self.assertEqual(len(new_entry.InFolders()), 1) + self.assertEqual(new_entry.InFolders()[0].title, 'My Folder') + + # Create new spreadsheet inside the folder. + new_spread = self.client.Create( + gdata.docs.data.SPREADSHEET_LABEL, 'My Spread', folder_or_id=new_folder) + self.assertEqual(new_spread.GetDocumentType(), 'spreadsheet') + self.assertEqual(len(new_spread.InFolders()), 1) + self.assertEqual(new_spread.InFolders()[0].title, 'My Folder') + + # Create new folder, and move spreadsheet into that folder too. + new_folder2 = self.client.Create(gdata.docs.data.FOLDER_LABEL, 'My Folder2') + self.assertEqual(new_folder2.title.text, 'My Folder2') + self.assertEqual(new_folder2.GetDocumentType(), 'folder') + moved_entry = self.client.Move( + new_spread, new_folder2, keep_in_folders=True) + self.assertEqual(len(moved_entry.InFolders()), 2) + + # Move spreadsheet to root level + was_moved = self.client.Move(moved_entry) + self.assert_(was_moved) + spread_entry = self.client.GetDoc(moved_entry.resource_id.text) + self.assertEqual(len(spread_entry.InFolders()), 0) + + # Clean up our mess. + self.client.Delete(new_folder.GetEditLink().href, force=True) + self.client.Delete(new_folder2.GetEditLink().href, force=True) + self.client.Delete(new_doc.GetEditLink().href, force=True) + self.client.Delete(spread_entry.GetEditLink().href, force=True) + + +class DocumentListUploadTest(DocsTestCase): + + def testUploadAndDeleteDocument(self): + if not conf.options.get_value('runlive') == 'true': + return + + # Either load the recording or prepare to make a live request. + conf.configure_cache(self.client, 'testUploadAndDeleteDocument') + + ms = gdata.data.MediaSource(file_path='test.doc', + content_type='application/msword') + + entry = self.client.Upload(ms, 'test doc') + self.assertEqual(entry.title.text, 'test doc') + self.assertEqual(entry.GetDocumentType(), 'document') + self.assert_(isinstance(entry, gdata.docs.data.DocsEntry)) + self.client.Delete(entry, force=True) + + def testUploadAndDeletePdf(self): + if not conf.options.get_value('runlive') == 'true': + return + + # Either load the recording or prepare to make a live request. + conf.configure_cache(self.client, 'testUploadAndDeletePdf') + + # Try passing in filename isntead of MediaSource object on this upload. + entry = self.client.Upload( + 'test.pdf', 'test pdf', content_type='application/pdf') + self.assertEqual(entry.title.text, 'test pdf') + self.assertEqual(entry.GetDocumentType(), 'pdf') + self.assert_(isinstance(entry, gdata.docs.data.DocsEntry)) + self.client.Delete(entry, force=True) + + +class DocumentListExportTest(DocsTestCase): + + def testExportDocument(self): + if not conf.options.get_value('runlive') == 'true': + return + + # Either load the recording or prepare to make a live request. + conf.configure_cache(self.client, 'testExportDocument') + + uri = 'http://docs.google.com/feeds/default/private/full/-/document' + feed = self.client.GetDocList(uri=uri, limit=1) + file_paths = ['./downloadedTest.doc', './downloadedTest.html', + './downloadedTest.odt', './downloadedTest.pdf', + './downloadedTest.png', './downloadedTest.rtf', + './downloadedTest.txt', './downloadedTest.zip'] + for path in file_paths: + self.client.Export(feed.entry[0], path) + self.assert_(os.path.exists(path)) + self.assert_(os.path.getsize(path)) + os.remove(path) + + def testExportNonExistentDocument(self): + if not conf.options.get_value('runlive') == 'true': + return + + # Either load the recording or prepare to make a live request. + conf.configure_cache(self.client, 'testExportNonExistentDocument') + + path = './ned.txt' + self.assert_(not os.path.exists(path)) + + exception_raised = False + try: + self.client.Export('non_existent_doc', path) + except Exception, e: # expected + exception_raised = True + + self.assert_(exception_raised) + self.assert_(not os.path.exists(path)) + + def testDownloadPdf(self): + if not conf.options.get_value('runlive') == 'true': + return + + # Either load the recording or prepare to make a live request. + conf.configure_cache(self.client, 'testDownloadPdf') + + uri = 'http://docs.google.com/feeds/default/private/full/-/pdf' + feed = self.client.GetDocList(uri=uri, limit=1) + path = './downloadedTest.pdf' + self.client.Download(feed.entry[0], path) + self.assert_(os.path.exists(path)) + self.assert_(os.path.getsize(path)) + os.remove(path) + + +def suite(): + return conf.build_suite([DocsFetchingDataTest, CreatingAndDeletionTest, + DocumentListUploadTest, DocumentListExportTest]) + + +if __name__ == '__main__': + unittest.TextTestRunner().run(suite()) diff -Nru python-gdata-1.2.4/tests/gdata_tests/docs/service_test.py python-gdata-2.0.8/tests/gdata_tests/docs/service_test.py --- python-gdata-1.2.4/tests/gdata_tests/docs/service_test.py 2008-12-03 18:56:17.000000000 +0000 +++ python-gdata-2.0.8/tests/gdata_tests/docs/service_test.py 2010-01-27 20:06:32.000000000 +0000 @@ -1,6 +1,6 @@ #!/usr/bin/python # -# Copyright (C) 2007 Google Inc. +# Copyright 2009 Google Inc. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -14,41 +14,407 @@ # See the License for the specific language governing permissions and # limitations under the License. -__author__ = 'api.jfisher (Jeff Fisher)' +__author__ = ('api.jfisher (Jeff Fisher), ' + 'api.eric@google.com (Eric Bidelman)') -import time +import os +import re import getpass -import unittest import StringIO +import unittest import gdata.docs.service - +import gdata.spreadsheet.service username = '' password = '' +client = gdata.docs.service.DocsService() +spreadsheets = gdata.spreadsheet.service.SpreadsheetsService() + -class DocumentListServiceTest(unittest.TestCase): +def client_login(): + if client.GetClientLoginToken() is None: + client.ClientLogin(username, password, + source='Document List Client Unit Tests') + if spreadsheets.GetClientLoginToken() is None: + spreadsheets.ClientLogin(username, password, + source='Document List Client Unit Tests') + + +class DocumentListQueryTest(unittest.TestCase): def setUp(self): + client_login() + self.doclist = client + self.feed = self.doclist.GetDocumentListFeed() - self.gd_client = gdata.docs.service.DocsService() - self.gd_client.email = username - self.gd_client.password = password - self.gd_client.source = 'Document List Client Unit Tests' - self.gd_client.ProgrammaticLogin() - def testGetDocumentsListFeed(self): - feed = self.gd_client.GetDocumentListFeed() + self.assert_(isinstance(self.feed, gdata.docs.DocumentListFeed)) + uri = 'http://docs.google.com/feeds/documents/private/full/?max-results=1' + + # Query using GetDocumentListFeed() + feed = self.doclist.GetDocumentListFeed(uri) self.assert_(isinstance(feed, gdata.docs.DocumentListFeed)) + self.assertEqual(len(feed.entry), 1) + self.assertEqual(self.feed.entry[0].id.text, feed.entry[0].id.text) + self.assertEqual(self.feed.entry[0].title.text, feed.entry[0].title.text) + + # Query using QueryDocumentListFeed() + feed2 = self.doclist.QueryDocumentListFeed(uri) + self.assertEqual(len(feed2.entry), 1) + self.assertEqual(self.feed.entry[0].id.text, feed2.entry[0].id.text) + self.assertEqual(self.feed.entry[0].title.text, feed2.entry[0].title.text) + + def testGetDocumentsListEntry(self): + self_link = self.feed.entry[0].GetSelfLink().href + entry = self.doclist.GetDocumentListEntry(self_link) + self.assert_(isinstance(entry, gdata.docs.DocumentListEntry)) + self.assertEqual(self.feed.entry[0].id.text, entry.id.text) + self.assertEqual(self.feed.entry[0].title.text, entry.title.text) + + self.assert_(self.feed.entry[0].resourceId.text is not None) + self.assert_(self.feed.entry[0].lastModifiedBy is not None) + self.assert_(self.feed.entry[0].lastViewed is not None) + + def testGetDocumentsListAclFeed(self): + uri = ('http://docs.google.com/feeds/documents/private/full/' + '-/mine?max-results=1') + feed = self.doclist.GetDocumentListFeed(uri) + feed_link = feed.entry[0].GetAclLink().href + acl_feed = self.doclist.GetDocumentListAclFeed(feed_link) + self.assert_(isinstance(acl_feed, gdata.docs.DocumentListAclFeed)) + self.assert_(isinstance(acl_feed.entry[0], gdata.docs.DocumentListAclEntry)) + self.assert_(acl_feed.entry[0].scope is not None) + self.assert_(acl_feed.entry[0].role is not None) + + +class DocumentListAclTest(unittest.TestCase): + + def setUp(self): + client_login() + self.doclist = client + uri = ('http://docs.google.com/feeds/documents/private/full' + '/-/mine?max-results=1') + self.feed = self.doclist.GetDocumentListFeed(uri) + + self.EMAIL = 'x@example.com' + self.SCOPE_TYPE = 'user' + self.ROLE_VALUE = 'reader' + + def testCreateAndUpdateAndDeleteAcl(self): + # Add new ACL + scope = gdata.docs.Scope(value=self.EMAIL, type=self.SCOPE_TYPE) + role = gdata.docs.Role(value=self.ROLE_VALUE) + + acl_entry = self.doclist.Post( + gdata.docs.DocumentListAclEntry(scope=scope, role=role), + self.feed.entry[0].GetAclLink().href, + converter=gdata.docs.DocumentListAclEntryFromString) + self.assert_(isinstance(acl_entry, gdata.docs.DocumentListAclEntry)) + self.assertEqual(acl_entry.scope.value, self.EMAIL) + self.assertEqual(acl_entry.scope.type, self.SCOPE_TYPE) + self.assertEqual(acl_entry.role.value, self.ROLE_VALUE) + + # Update the user's role + ROLE_VALUE = 'writer' + acl_entry.role.value = ROLE_VALUE + + updated_acl_entry = self.doclist.Put( + acl_entry, acl_entry.GetEditLink().href, + converter=gdata.docs.DocumentListAclEntryFromString) + + self.assertEqual(updated_acl_entry.scope.value, self.EMAIL) + self.assertEqual(updated_acl_entry.scope.type, self.SCOPE_TYPE) + self.assertEqual(updated_acl_entry.role.value, ROLE_VALUE) + + # Delete the ACL + self.doclist.Delete(updated_acl_entry.GetEditLink().href) + + # Make sure entry was actually deleted + acl_feed = self.doclist.GetDocumentListAclFeed( + self.feed.entry[0].GetAclLink().href) + for acl_entry in acl_feed.entry: + self.assert_(acl_entry.scope.value != self.EMAIL) + + +class DocumentListCreateAndDeleteTest(unittest.TestCase): + def setUp(self): + client_login() + self.doclist = client + self.TITLE = 'Test title' + self.new_entry = gdata.docs.DocumentListEntry() + category = gdata.atom.Category(scheme=gdata.docs.service.DATA_KIND_SCHEME, + term=gdata.docs.service.DOCUMENT_KIND_TERM, + label='document') + self.new_entry.category.append(category) + + def testCreateAndDeleteEmptyDocumentSlugHeaderTitle(self): + created_entry = self.doclist.Post(self.new_entry, + '/feeds/documents/private/full', + extra_headers={'Slug': self.TITLE}) + self.doclist.Delete(created_entry.GetEditLink().href) + self.assertEqual(created_entry.title.text, self.TITLE) + self.assertEqual(created_entry.category[0].label, 'document') + + def testCreateAndDeleteEmptyDocumentAtomTitle(self): + self.new_entry.title = gdata.atom.Title(text=self.TITLE) + created_entry = self.doclist.Post(self.new_entry, + '/feeds/documents/private/full') + self.doclist.Delete(created_entry.GetEditLink().href) + self.assertEqual(created_entry.title.text, self.TITLE) + self.assertEqual(created_entry.category[0].label, 'document') + + def testCreateAndDeleteEmptySpreadsheet(self): + self.new_entry.title = gdata.atom.Title(text=self.TITLE) + self.new_entry.category[0].term = gdata.docs.service.SPREADSHEET_KIND_TERM + self.new_entry.category[0].label = 'spreadsheet' + created_entry = self.doclist.Post(self.new_entry, + '/feeds/documents/private/full') + self.doclist.Delete(created_entry.GetEditLink().href) + self.assertEqual(created_entry.title.text, self.TITLE) + self.assertEqual(created_entry.category[0].label, 'spreadsheet') + + def testCreateAndDeleteEmptyPresentation(self): + self.new_entry.title = gdata.atom.Title(text=self.TITLE) + self.new_entry.category[0].term = gdata.docs.service.PRESENTATION_KIND_TERM + self.new_entry.category[0].label = 'presentation' + created_entry = self.doclist.Post(self.new_entry, + '/feeds/documents/private/full') + self.doclist.Delete(created_entry.GetEditLink().href) + self.assertEqual(created_entry.title.text, self.TITLE) + self.assertEqual(created_entry.category[0].label, 'presentation') + + def testCreateAndDeleteFolder(self): + folder_name = 'TestFolder' + folder = self.doclist.CreateFolder(folder_name) + self.assertEqual(folder.title.text, folder_name) + self.doclist.Delete(folder.GetEditLink().href) + + def testCreateAndDeleteFolderInFolder(self): + DEST_FOLDER_NAME = 'TestFolder' + CREATED_FOLDER_NAME = 'TestFolder2' + dest_folder = self.doclist.CreateFolder(DEST_FOLDER_NAME) + new_folder = self.doclist.CreateFolder(CREATED_FOLDER_NAME, dest_folder) + + for category in new_folder.category: + if category.scheme.startswith(gdata.docs.service.FOLDERS_SCHEME_PREFIX): + self.assertEqual(new_folder.category[0].label, DEST_FOLDER_NAME) + break + + # delete the folders we created + dest_folder = self.doclist.Get(dest_folder.GetSelfLink().href) + self.doclist.Delete(dest_folder.GetEditLink().href) + + uri = 'http://docs.google.com/feeds/documents/private/full' + uri += '/-/folder?q=%s&showfolders=true' % (CREATED_FOLDER_NAME,) + folders = self.doclist.GetDocumentListFeed(uri) + self.doclist.Delete(folders.entry[0].GetEditLink().href) - def testCreateAndDeleteSpreadsheet(self): - virtual_csv_file = StringIO.StringIO(',,,') - virtual_media_source = gdata.MediaSource(file_handle=virtual_csv_file, content_type='text/csv', content_length=3) - entry = self.gd_client.UploadSpreadsheet(virtual_media_source, 'test title') - self.assert_(entry.title.text == 'test title') - time.sleep(10) - self.gd_client.Delete(entry.GetEditLink().href) +class DocumentListMoveInAndOutOfFolderTest(unittest.TestCase): + def setUp(self): + client_login() + self.doclist = client + self.folder_name = 'TestFolder' + self.folder = self.doclist.CreateFolder(self.folder_name) + + self.doc_title = 'TestDoc' + self.ms = gdata.MediaSource(file_path='test.doc', + content_type='application/msword') + + def tearDown(self): + folder = self.doclist.Get(self.folder.GetSelfLink().href) + self.doclist.Delete(folder.GetEditLink().href) + + def testUploadDocumentToFolder(self): + created_entry = self.doclist.UploadDocument(self.ms, self.doc_title, + self.folder) + for category in created_entry.category: + if category.scheme.startswith(gdata.docs.service.FOLDERS_SCHEME_PREFIX): + self.assertEqual(category.label, self.folder_name) + break + + # delete the doc we created + created_entry = self.doclist.Get(created_entry.GetSelfLink().href) + match = re.search('\/(document%3A[^\/]*)\/?.*?\/(.*)$', + created_entry.GetEditLink().href) + edit_uri = 'http://docs.google.com/feeds/documents/private/full/' + edit_uri += '%s/%s' % (match.group(1), match.group(2)) + self.doclist.Delete(edit_uri) + + def testMoveDocumentInAndOutOfFolder(self): + created_entry = self.doclist.UploadDocument(self.ms, self.doc_title) + moved_entry = self.doclist.MoveDocumentIntoFolder(created_entry, + self.folder) + for category in moved_entry.category: + if category.scheme.startswith(gdata.docs.service.FOLDERS_SCHEME_PREFIX): + self.assertEqual(category.label, self.folder_name) + break + + self.doclist.MoveOutOfFolder(moved_entry) + moved_entry = self.doclist.Get(moved_entry.GetSelfLink().href) + for category in moved_entry.category: + starts_with_folder__prefix = category.scheme.startswith( + gdata.docs.service.FOLDERS_SCHEME_PREFIX) + self.assert_(not starts_with_folder__prefix) + + created_entry = self.doclist.Get(created_entry.GetSelfLink().href) + self.doclist.Delete(created_entry.GetEditLink().href) + + def testMoveFolderIntoFolder(self): + dest_folder_name = 'DestFolderName' + dest_folder = self.doclist.CreateFolder(dest_folder_name) + self.doclist.MoveFolderIntoFolder(self.folder, dest_folder) + + self.folder = self.doclist.Get(self.folder.GetSelfLink().href) + folder_was_moved = False + for category in self.folder.category: + if category.term == dest_folder_name: + folder_was_moved = True + break + self.assert_(folder_was_moved) + + #cleanup + dest_folder = self.doclist.Get(dest_folder.GetSelfLink().href) + self.doclist.Delete(dest_folder.GetEditLink().href) + + +class DocumentListUploadTest(unittest.TestCase): + + def setUp(self): + client_login() + self.doclist = client + + def testUploadAndDeleteDocument(self): + ms = gdata.MediaSource(file_path='test.doc', + content_type='application/msword') + entry = self.doclist.UploadDocument(ms, 'test doc') + self.assertEqual(entry.title.text, 'test doc') + self.assertEqual(entry.category[0].label, 'document') + self.assert_(isinstance(entry, gdata.docs.DocumentListEntry)) + self.doclist.Delete(entry.GetEditLink().href) + + def testUploadAndDeletePresentation(self): + ms = gdata.MediaSource(file_path='test.ppt', + content_type='application/vnd.ms-powerpoint') + entry = self.doclist.UploadPresentation(ms, 'test preso') + self.assertEqual(entry.title.text, 'test preso') + self.assertEqual(entry.category[0].label, 'presentation') + self.assert_(isinstance(entry, gdata.docs.DocumentListEntry)) + self.doclist.Delete(entry.GetEditLink().href) + + def testUploadAndDeleteSpreadsheet(self): + ms = gdata.MediaSource(file_path='test.csv', + content_type='text/csv') + entry = self.doclist.UploadSpreadsheet(ms, 'test spreadsheet') + self.assert_(entry.title.text == 'test spreadsheet') + self.assertEqual(entry.category[0].label, 'spreadsheet') + self.assert_(isinstance(entry, gdata.docs.DocumentListEntry)) + self.doclist.Delete(entry.GetEditLink().href) + + +class DocumentListUpdateTest(unittest.TestCase): + def setUp(self): + client_login() + self.doclist = client + self.TITLE = 'CreatedTestDoc' + new_entry = gdata.docs.DocumentListEntry() + new_entry.title = gdata.atom.Title(text=self.TITLE) + new_entry.category.append( + gdata.atom.Category(scheme=gdata.docs.service.DATA_KIND_SCHEME, + term=gdata.docs.service.DOCUMENT_KIND_TERM, + label='document')) + self.created_entry = self.doclist.Post(new_entry, + '/feeds/documents/private/full') + + def tearDown(self): + # Delete the test doc we created + self_link = self.created_entry.GetSelfLink().href + entry = self.doclist.GetDocumentListEntry(self_link) + self.doclist.Delete(entry.GetEditLink().href) + + def testUpdateDocumentMetadataAndContent(self): + title = 'UpdatedTestDoc' + # Update metadata + self.created_entry.title.text = title + updated_entry = self.doclist.Put(self.created_entry, + self.created_entry.GetEditLink().href) + self.assertEqual(updated_entry.title.text, title) + + # Update document's content + ms = gdata.MediaSource(file_path='test.doc', + content_type='application/msword') + uri = updated_entry.GetEditMediaLink().href + updated_entry = self.doclist.Put(ms, uri) + self.assertEqual(updated_entry.title.text, title) + + # Append content to document + data = 'data to append' + ms = gdata.MediaSource(file_handle=StringIO.StringIO(data), + content_type='text/plain', + content_length=len(data)) + uri = updated_entry.GetEditMediaLink().href + '?append=true' + updated_entry = self.doclist.Put(ms, uri) + + +class DocumentListExportTest(unittest.TestCase): + + def setUp(self): + client_login() + self.doclist = client + self.spreadsheets = spreadsheets + + def testExportDocument(self): + query = ('http://docs.google.com/feeds/documents/private/full' + '/-/document?max-results=1') + feed = self.doclist.QueryDocumentListFeed(query) + file_paths = ['./downloadedTest.doc', './downloadedTest.html', + './downloadedTest.odt', './downloadedTest.pdf', + './downloadedTest.png', './downloadedTest.rtf', + './downloadedTest.txt', './downloadedTest.zip'] + for path in file_paths: + self.doclist.DownloadDocument(feed.entry[0], path) + self.assert_(os.path.exists(path)) + self.assert_(os.path.getsize(path)) + os.remove(path) + + def testExportPresentation(self): + query = ('http://docs.google.com/feeds/documents/private/full' + '/-/presentation?max-results=1') + feed = self.doclist.QueryDocumentListFeed(query) + file_paths = ['./downloadedTest.pdf', './downloadedTest.ppt', + './downloadedTest.swf', './downloadedTest.txt'] + for path in file_paths: + self.doclist.DownloadPresentation(feed.entry[0].resourceId.text, path) + self.assert_(os.path.exists(path)) + self.assert_(os.path.getsize(path)) + os.remove(path) + + def testExportSpreadsheet(self): + query = ('http://docs.google.com/feeds/documents/private/full' + '/-/spreadsheet?max-results=1') + feed = self.doclist.QueryDocumentListFeed(query) + file_paths = ['./downloadedTest.xls', './downloadedTest.csv', + './downloadedTest.pdf', './downloadedTest.ods', + './downloadedTest.tsv', './downloadedTest.html'] + docs_token = self.doclist.GetClientLoginToken() + self.doclist.SetClientLoginToken(self.spreadsheets.GetClientLoginToken()) + for path in file_paths: + self.doclist.DownloadSpreadsheet(feed.entry[0], path) + self.assert_(os.path.exists(path)) + self.assert_(os.path.getsize(path)) + os.remove(path) + self.doclist.SetClientLoginToken(docs_token) + + def testExportNonExistentDocument(self): + path = './ned.txt' + exception_raised = False + try: + self.doclist.DownloadDocument('non_existent_doc', path) + except Exception, e: # expected + exception_raised = True + self.assert_(exception_raised) + self.assert_(not os.path.exists(path)) if __name__ == '__main__': print ('DocList API Tests\nNOTE: Please run these tests only with a test ' diff -Nru python-gdata-1.2.4/tests/gdata_tests/docs/test.csv python-gdata-2.0.8/tests/gdata_tests/docs/test.csv --- python-gdata-1.2.4/tests/gdata_tests/docs/test.csv 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_tests/docs/test.csv 2009-03-10 22:31:41.000000000 +0000 @@ -0,0 +1,205 @@ +Invoice,Job/Memo,Date,DueWk,Stat,Amount,"HB/Pay/ +Adjs",Amount Due +1,1,1,1,1,1,1,1 +2,2,2,2,2,2,2,2 +3,3,3,3,3,3,3,3 +4,4,4,4,4,4,4,4 +5,5,5,5,5,5,5,5 +6,6,6,6,6,6,6,6 +7,7,7,7,7,7,7,7 +8,8,8,8,8,8,8,8 +9,9,9,9,9,9,9,9 +10,10,10,10,10,10,10,10 +11,11,11,11,11,11,11,11 +12,12,12,12,12,12,12,12 +13,13,13,13,13,13,13,13 +14,14,14,14,14,14,14,14 +15,15,15,15,15,15,15,15 +16,16,16,16,16,16,16,16 +17,17,17,17,17,17,17,17 +18,18,18,18,18,18,18,18 +19,19,19,19,19,19,19,19 +20,20,20,20,20,20,20,20 +21,21,21,21,21,21,21,21 +22,22,22,22,22,22,22,22 +23,23,23,23,23,23,23,23 +,,,,,,, +,,,,,,, +,,,,,,, +,,,,,,, +,,,,,,, +,,,,,,, +,,,,,,, +,,,,,,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, +,, Binary files /tmp/loBuQrup0L/python-gdata-1.2.4/tests/gdata_tests/docs/test.doc and /tmp/agbj2XxMCT/python-gdata-2.0.8/tests/gdata_tests/docs/test.doc differ Binary files /tmp/loBuQrup0L/python-gdata-1.2.4/tests/gdata_tests/docs/test.pdf and /tmp/agbj2XxMCT/python-gdata-2.0.8/tests/gdata_tests/docs/test.pdf differ Binary files /tmp/loBuQrup0L/python-gdata-1.2.4/tests/gdata_tests/docs/test.ppt and /tmp/agbj2XxMCT/python-gdata-2.0.8/tests/gdata_tests/docs/test.ppt differ diff -Nru python-gdata-1.2.4/tests/gdata_tests/docs_test.py python-gdata-2.0.8/tests/gdata_tests/docs_test.py --- python-gdata-1.2.4/tests/gdata_tests/docs_test.py 2007-08-20 19:25:37.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_tests/docs_test.py 2009-06-30 00:10:43.000000000 +0100 @@ -15,43 +15,48 @@ # limitations under the License. -__author__ = 'api.jfisher (Jeff Fisher)' - +__author__ = ('api.jfisher (Jeff Fisher), ' + 'api.eric@google.com (Eric Bidelman)') import unittest from gdata import test_data import gdata.docs class DocumentListEntryTest(unittest.TestCase): - + def setUp(self): self.dl_entry = gdata.docs.DocumentListEntryFromString( - test_data.DOCUMENT_LIST_ENTRY) + test_data.DOCUMENT_LIST_ENTRY) def testToAndFromStringWithData(self): - entry = gdata.docs.DocumentListEntryFromString(str(self.dl_entry)) - + self.assertEqual(entry.author[0].name.text, 'test.user') self.assertEqual(entry.author[0].email.text, 'test.user@gmail.com') - self.assertEqual(entry.category[0].label, 'spreadsheet') + self.assertEqual(entry.GetDocumentType(), 'spreadsheet') self.assertEqual(entry.id.text, 'http://docs.google.com/feeds/documents/private/full/' +\ 'spreadsheet%3Asupercalifragilisticexpealidocious') self.assertEqual(entry.title.text,'Test Spreadsheet') + self.assertEqual(entry.resourceId.text, + 'spreadsheet:supercalifragilisticexpealidocious') + self.assertEqual(entry.lastModifiedBy.name.text,'test.user') + self.assertEqual(entry.lastModifiedBy.email.text,'test.user@gmail.com') + self.assertEqual(entry.lastViewed.text,'2009-03-05T07:48:21.493Z') + self.assertEqual(entry.writersCanInvite.value, 'true') + class DocumentListFeedTest(unittest.TestCase): def setUp(self): self.dl_feed = gdata.docs.DocumentListFeedFromString( - test_data.DOCUMENT_LIST_FEED) + test_data.DOCUMENT_LIST_FEED) def testToAndFromString(self): self.assert_(len(self.dl_feed.entry) == 2) for an_entry in self.dl_feed.entry: self.assert_(isinstance(an_entry, gdata.docs.DocumentListEntry)) - new_dl_feed = gdata.docs.DocumentListFeedFromString(str( - self.dl_feed)) + new_dl_feed = gdata.docs.DocumentListFeedFromString(str(self.dl_feed)) for an_entry in new_dl_feed.entry: self.assert_(isinstance(an_entry, gdata.docs.DocumentListEntry)) @@ -59,18 +64,95 @@ for an_entry in self.dl_feed.entry: self.assertEqual(an_entry.author[0].name.text, 'test.user') self.assertEqual(an_entry.author[0].email.text, 'test.user@gmail.com') - if(an_entry.category[0].label == 'spreadsheet'): + self.assertEqual(an_entry.lastModifiedBy.name.text, 'test.user') + self.assertEqual(an_entry.lastModifiedBy.email.text, + 'test.user@gmail.com') + self.assertEqual(an_entry.lastViewed.text,'2009-03-05T07:48:21.493Z') + if(an_entry.GetDocumentType() == 'spreadsheet'): self.assertEqual(an_entry.title.text, 'Test Spreadsheet') - elif(an_entry.category[0].label == 'document'): + self.assertEqual(an_entry.writersCanInvite.value, 'true') + elif(an_entry.GetDocumentType() == 'document'): self.assertEqual(an_entry.title.text, 'Test Document') + self.assertEqual(an_entry.writersCanInvite.value, 'false') - def testLinkFinderFindsHtmlLink(self): + def testLinkFinderFindsLinks(self): for entry in self.dl_feed.entry: # All Document List entries should have a self link self.assert_(entry.GetSelfLink() is not None) # All Document List entries should have an HTML link self.assert_(entry.GetHtmlLink() is not None) + self.assert_(entry.feedLink.href is not None) + + +class DocumentListAclEntryTest(unittest.TestCase): + + def setUp(self): + self.acl_entry = gdata.docs.DocumentListAclEntryFromString( + test_data.DOCUMENT_LIST_ACL_ENTRY) + + def testToAndFromString(self): + self.assert_(isinstance(self.acl_entry, gdata.docs.DocumentListAclEntry)) + self.assert_(isinstance(self.acl_entry.role, gdata.docs.Role)) + self.assert_(isinstance(self.acl_entry.scope, gdata.docs.Scope)) + self.assertEqual(self.acl_entry.scope.value, 'user@gmail.com') + self.assertEqual(self.acl_entry.scope.type, 'user') + self.assertEqual(self.acl_entry.role.value, 'writer') + + acl_entry_str = str(self.acl_entry) + new_acl_entry = gdata.docs.DocumentListAclEntryFromString(acl_entry_str) + self.assert_(isinstance(new_acl_entry, gdata.docs.DocumentListAclEntry)) + self.assert_(isinstance(new_acl_entry.role, gdata.docs.Role)) + self.assert_(isinstance(new_acl_entry.scope, gdata.docs.Scope)) + self.assertEqual(new_acl_entry.scope.value, self.acl_entry.scope.value) + self.assertEqual(new_acl_entry.scope.type, self.acl_entry.scope.type) + self.assertEqual(new_acl_entry.role.value, self.acl_entry.role.value) + + def testCreateNewAclEntry(self): + cat = gdata.atom.Category( + term='http://schemas.google.com/acl/2007#accessRule', + scheme='http://schemas.google.com/g/2005#kind') + acl_entry = gdata.docs.DocumentListAclEntry(category=[cat]) + acl_entry.scope = gdata.docs.Scope(value='user@gmail.com', type='user') + acl_entry.role = gdata.docs.Role(value='writer') + self.assert_(isinstance(acl_entry, gdata.docs.DocumentListAclEntry)) + self.assert_(isinstance(acl_entry.role, gdata.docs.Role)) + self.assert_(isinstance(acl_entry.scope, gdata.docs.Scope)) + self.assertEqual(acl_entry.scope.value, 'user@gmail.com') + self.assertEqual(acl_entry.scope.type, 'user') + self.assertEqual(acl_entry.role.value, 'writer') + +class DocumentListAclFeedTest(unittest.TestCase): + + def setUp(self): + self.feed = gdata.docs.DocumentListAclFeedFromString( + test_data.DOCUMENT_LIST_ACL_FEED) + + def testToAndFromString(self): + for entry in self.feed.entry: + self.assert_(isinstance(entry, gdata.docs.DocumentListAclEntry)) + + feed = gdata.docs.DocumentListAclFeedFromString(str(self.feed)) + for entry in feed.entry: + self.assert_(isinstance(entry, gdata.docs.DocumentListAclEntry)) + + def testConvertActualData(self): + entries = self.feed.entry + self.assert_(len(entries) == 2) + self.assertEqual(entries[0].title.text, + 'Document Permission - user@gmail.com') + self.assertEqual(entries[0].role.value, 'owner') + self.assertEqual(entries[0].scope.type, 'user') + self.assertEqual(entries[0].scope.value, 'user@gmail.com') + self.assert_(entries[0].GetSelfLink() is not None) + self.assert_(entries[0].GetEditLink() is not None) + self.assertEqual(entries[1].title.text, + 'Document Permission - user2@google.com') + self.assertEqual(entries[1].role.value, 'writer') + self.assertEqual(entries[1].scope.type, 'domain') + self.assertEqual(entries[1].scope.value, 'google.com') + self.assert_(entries[1].GetSelfLink() is not None) + self.assert_(entries[1].GetEditLink() is not None) if __name__ == '__main__': unittest.main() diff -Nru python-gdata-1.2.4/tests/gdata_tests/gauth_test.py python-gdata-2.0.8/tests/gdata_tests/gauth_test.py --- python-gdata-1.2.4/tests/gdata_tests/gauth_test.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_tests/gauth_test.py 2010-01-29 01:47:28.000000000 +0000 @@ -0,0 +1,571 @@ +#!/usr/bin/env python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +# This module is used for version 2 of the Google Data APIs. + + +__author__ = 'j.s@google.com (Jeff Scudder)' + + +import unittest +import gdata.gauth +import atom.http_core +import gdata.test_config as conf + + +PRIVATE_TEST_KEY = """ + -----BEGIN PRIVATE KEY----- + MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGBALRiMLAh9iimur8V + A7qVvdqxevEuUkW4K+2KdMXmnQbG9Aa7k7eBjK1S+0LYmVjPKlJGNXHDGuy5Fw/d + 7rjVJ0BLB+ubPK8iA/Tw3hLQgXMRRGRXXCn8ikfuQfjUS1uZSatdLB81mydBETlJ + hI6GH4twrbDJCR2Bwy/XWXgqgGRzAgMBAAECgYBYWVtleUzavkbrPjy0T5FMou8H + X9u2AC2ry8vD/l7cqedtwMPp9k7TubgNFo+NGvKsl2ynyprOZR1xjQ7WgrgVB+mm + uScOM/5HVceFuGRDhYTCObE+y1kxRloNYXnx3ei1zbeYLPCHdhxRYW7T0qcynNmw + rn05/KO2RLjgQNalsQJBANeA3Q4Nugqy4QBUCEC09SqylT2K9FrrItqL2QKc9v0Z + zO2uwllCbg0dwpVuYPYXYvikNHHg+aCWF+VXsb9rpPsCQQDWR9TT4ORdzoj+Nccn + qkMsDmzt0EfNaAOwHOmVJ2RVBspPcxt5iN4HI7HNeG6U5YsFBb+/GZbgfBT3kpNG + WPTpAkBI+gFhjfJvRw38n3g/+UeAkwMI2TJQS4n8+hid0uus3/zOjDySH3XHCUno + cn1xOJAyZODBo47E+67R4jV1/gzbAkEAklJaspRPXP877NssM5nAZMU0/O/NGCZ+ + 3jPgDUno6WbJn5cqm8MqWhW1xGkImgRk+fkDBquiq4gPiT898jusgQJAd5Zrr6Q8 + AO/0isr/3aa6O6NLQxISLKcPDk2NOccAfS/xOtfOz4sJYM3+Bs4Io9+dZGSDCA54 + Lw03eHTNQghS0A== + -----END PRIVATE KEY-----""" + + +class AuthSubTest(unittest.TestCase): + + def test_generate_request_url(self): + url = gdata.gauth.generate_auth_sub_url('http://example.com', + ['http://example.net/scope1']) + self.assert_(isinstance(url, atom.http_core.Uri)) + self.assertEqual(url.query['secure'], '0') + self.assertEqual(url.query['session'], '1') + self.assertEqual(url.query['scope'], 'http://example.net/scope1') + self.assertEqual(atom.http_core.Uri.parse_uri( + url.query['next']).query['auth_sub_scopes'], + 'http://example.net/scope1') + self.assertEqual(atom.http_core.Uri.parse_uri(url.query['next']).path, + '/') + self.assertEqual(atom.http_core.Uri.parse_uri(url.query['next']).host, + 'example.com') + + def test_from_url(self): + token_str = gdata.gauth.auth_sub_string_from_url( + 'http://example.com/?token=123abc')[0] + self.assertEqual(token_str, '123abc') + + def test_from_http_body(self): + token_str = gdata.gauth.auth_sub_string_from_body('Something\n' + 'Token=DQAA...7DCTN\n' + 'Expiration=20061004T123456Z\n') + self.assertEqual(token_str, 'DQAA...7DCTN') + + def test_modify_request(self): + token = gdata.gauth.AuthSubToken('tval') + request = atom.http_core.HttpRequest() + token.modify_request(request) + self.assertEqual(request.headers['Authorization'], 'AuthSub token=tval') + + def test_create_and_upgrade_tokens(self): + token = gdata.gauth.AuthSubToken.from_url( + 'http://example.com/?token=123abc') + self.assert_(isinstance(token, gdata.gauth.AuthSubToken)) + self.assertEqual(token.token_string, '123abc') + self.assertEqual(token.scopes, []) + token._upgrade_token('Token=456def') + self.assertEqual(token.token_string, '456def') + self.assertEqual(token.scopes, []) + + +class SecureAuthSubTest(unittest.TestCase): + + def test_build_data(self): + request = atom.http_core.HttpRequest(method='PUT') + request.uri = atom.http_core.Uri.parse_uri('http://example.com/foo?a=1') + data = gdata.gauth.build_auth_sub_data(request, 1234567890, 'mynonce') + self.assertEqual(data, + 'PUT http://example.com/foo?a=1 1234567890 mynonce') + + def test_generate_signature(self): + request = atom.http_core.HttpRequest( + method='GET', uri=atom.http_core.Uri(host='example.com', path='/foo', + query={'a': '1'})) + data = gdata.gauth.build_auth_sub_data(request, 1134567890, 'p234908') + self.assertEqual(data, + 'GET http://example.com/foo?a=1 1134567890 p234908') + self.assertEqual( + gdata.gauth.generate_signature(data, PRIVATE_TEST_KEY), + 'GeBfeIDnT41dvLquPgDB4U5D4hfxqaHk/5LX1kccNBnL4BjsHWU1djbEp7xp3BL9ab' + 'QtLrK7oa/aHEHtGRUZGg87O+ND8iDPR76WFXAruuN8O8GCMqCDdPduNPY++LYO4MdJ' + 'BZNY974Nn0m6Hc0/T4M1ElqvPhl61fkXMm+ElSM=') + + +class TokensToAndFromBlobsTest(unittest.TestCase): + + def test_client_login_conversion(self): + token = gdata.gauth.ClientLoginToken('test|key') + copy = gdata.gauth.token_from_blob(gdata.gauth.token_to_blob(token)) + self.assertEqual(token.token_string, copy.token_string) + self.assert_(isinstance(copy, gdata.gauth.ClientLoginToken)) + + def test_authsub_conversion(self): + token = gdata.gauth.AuthSubToken('test|key') + copy = gdata.gauth.token_from_blob(gdata.gauth.token_to_blob(token)) + self.assertEqual(token.token_string, copy.token_string) + self.assert_(isinstance(copy, gdata.gauth.AuthSubToken)) + + scopes = ['http://example.com', 'http://other||test', 'thir|d'] + token = gdata.gauth.AuthSubToken('key-=', scopes) + copy = gdata.gauth.token_from_blob(gdata.gauth.token_to_blob(token)) + self.assertEqual(token.token_string, copy.token_string) + self.assert_(isinstance(copy, gdata.gauth.AuthSubToken)) + self.assertEqual(token.scopes, scopes) + + def test_join_and_split(self): + token_string = gdata.gauth._join_token_parts('1x', 'test|string', '%x%', + '', None) + self.assertEqual(token_string, '1x|test%7Cstring|%25x%25||') + token_type, a, b, c, d = gdata.gauth._split_token_parts(token_string) + self.assertEqual(token_type, '1x') + self.assertEqual(a, 'test|string') + self.assertEqual(b, '%x%') + self.assert_(c is None) + self.assert_(d is None) + + def test_secure_authsub_conversion(self): + token = gdata.gauth.SecureAuthSubToken( + '%^%', 'myRsaKey', ['http://example.com', 'http://example.org']) + copy = gdata.gauth.token_from_blob(gdata.gauth.token_to_blob(token)) + self.assertEqual(copy.token_string, '%^%') + self.assertEqual(copy.rsa_private_key, 'myRsaKey') + self.assertEqual(copy.scopes, + ['http://example.com', 'http://example.org']) + + token = gdata.gauth.SecureAuthSubToken(rsa_private_key='f', + token_string='b') + blob = gdata.gauth.token_to_blob(token) + self.assertEqual(blob, '1s|b|f') + copy = gdata.gauth.token_from_blob(blob) + self.assertEqual(copy.token_string, 'b') + self.assertEqual(copy.rsa_private_key, 'f') + self.assertEqual(copy.scopes, []) + + token = gdata.gauth.SecureAuthSubToken(None, '') + blob = gdata.gauth.token_to_blob(token) + self.assertEqual(blob, '1s||') + copy = gdata.gauth.token_from_blob(blob) + self.assertEqual(copy.token_string, None) + self.assertEqual(copy.rsa_private_key, None) + self.assertEqual(copy.scopes, []) + + token = gdata.gauth.SecureAuthSubToken('', None) + blob = gdata.gauth.token_to_blob(token) + self.assertEqual(blob, '1s||') + copy = gdata.gauth.token_from_blob(blob) + self.assertEqual(copy.token_string, None) + self.assertEqual(copy.rsa_private_key, None) + self.assertEqual(copy.scopes, []) + + token = gdata.gauth.SecureAuthSubToken( + None, None, ['http://example.net', 'http://google.com']) + blob = gdata.gauth.token_to_blob(token) + self.assertEqual( + blob, '1s|||http%3A%2F%2Fexample.net|http%3A%2F%2Fgoogle.com') + copy = gdata.gauth.token_from_blob(blob) + self.assert_(copy.token_string is None) + self.assert_(copy.rsa_private_key is None) + self.assertEqual(copy.scopes, ['http://example.net', 'http://google.com']) + + def test_oauth_rsa_conversion(self): + token = gdata.gauth.OAuthRsaToken( + 'consumerKey', 'myRsa', 't', 'secret', + gdata.gauth.AUTHORIZED_REQUEST_TOKEN, 'http://example.com/next', + 'verifier') + blob = gdata.gauth.token_to_blob(token) + self.assertEqual( + blob, '1r|consumerKey|myRsa|t|secret|2|http%3A%2F%2Fexample.com' + '%2Fnext|verifier') + copy = gdata.gauth.token_from_blob(blob) + self.assert_(isinstance(copy, gdata.gauth.OAuthRsaToken)) + self.assertEqual(copy.consumer_key, token.consumer_key) + self.assertEqual(copy.rsa_private_key, token.rsa_private_key) + self.assertEqual(copy.token, token.token) + self.assertEqual(copy.token_secret, token.token_secret) + self.assertEqual(copy.auth_state, token.auth_state) + self.assertEqual(copy.next, token.next) + self.assertEqual(copy.verifier, token.verifier) + + token = gdata.gauth.OAuthRsaToken( + '', 'myRsa', 't', 'secret', 0) + blob = gdata.gauth.token_to_blob(token) + self.assertEqual(blob, '1r||myRsa|t|secret|0||') + copy = gdata.gauth.token_from_blob(blob) + self.assert_(isinstance(copy, gdata.gauth.OAuthRsaToken)) + self.assert_(copy.consumer_key != token.consumer_key) + self.assert_(copy.consumer_key is None) + self.assertEqual(copy.rsa_private_key, token.rsa_private_key) + self.assertEqual(copy.token, token.token) + self.assertEqual(copy.token_secret, token.token_secret) + self.assertEqual(copy.auth_state, token.auth_state) + self.assertEqual(copy.next, token.next) + self.assert_(copy.next is None) + self.assertEqual(copy.verifier, token.verifier) + self.assert_(copy.verifier is None) + + token = gdata.gauth.OAuthRsaToken( + rsa_private_key='myRsa', token='t', token_secret='secret', + auth_state=gdata.gauth.ACCESS_TOKEN, verifier='v', consumer_key=None) + blob = gdata.gauth.token_to_blob(token) + self.assertEqual(blob, '1r||myRsa|t|secret|3||v') + copy = gdata.gauth.token_from_blob(blob) + self.assertEqual(copy.consumer_key, token.consumer_key) + self.assert_(copy.consumer_key is None) + self.assertEqual(copy.rsa_private_key, token.rsa_private_key) + self.assertEqual(copy.token, token.token) + self.assertEqual(copy.token_secret, token.token_secret) + self.assertEqual(copy.auth_state, token.auth_state) + self.assertEqual(copy.next, token.next) + self.assert_(copy.next is None) + self.assertEqual(copy.verifier, token.verifier) + + def test_oauth_hmac_conversion(self): + token = gdata.gauth.OAuthHmacToken( + 'consumerKey', 'consumerSecret', 't', 'secret', + gdata.gauth.REQUEST_TOKEN, 'http://example.com/next', 'verifier') + blob = gdata.gauth.token_to_blob(token) + self.assertEqual( + blob, '1h|consumerKey|consumerSecret|t|secret|1|http%3A%2F%2F' + 'example.com%2Fnext|verifier') + copy = gdata.gauth.token_from_blob(blob) + self.assert_(isinstance(copy, gdata.gauth.OAuthHmacToken)) + self.assertEqual(copy.consumer_key, token.consumer_key) + self.assertEqual(copy.consumer_secret, token.consumer_secret) + self.assertEqual(copy.token, token.token) + self.assertEqual(copy.token_secret, token.token_secret) + self.assertEqual(copy.auth_state, token.auth_state) + self.assertEqual(copy.next, token.next) + self.assertEqual(copy.verifier, token.verifier) + + token = gdata.gauth.OAuthHmacToken( + consumer_secret='c,s', token='t', token_secret='secret', + auth_state=7, verifier='v', consumer_key=None) + blob = gdata.gauth.token_to_blob(token) + self.assertEqual(blob, '1h||c%2Cs|t|secret|7||v') + copy = gdata.gauth.token_from_blob(blob) + self.assert_(isinstance(copy, gdata.gauth.OAuthHmacToken)) + self.assertEqual(copy.consumer_key, token.consumer_key) + self.assert_(copy.consumer_key is None) + self.assertEqual(copy.consumer_secret, token.consumer_secret) + self.assertEqual(copy.token, token.token) + self.assertEqual(copy.token_secret, token.token_secret) + self.assertEqual(copy.auth_state, token.auth_state) + self.assertEqual(copy.next, token.next) + self.assert_(copy.next is None) + self.assertEqual(copy.verifier, token.verifier) + + def test_illegal_token_types(self): + class MyToken(object): + pass + + token = MyToken() + self.assertRaises(gdata.gauth.UnsupportedTokenType, + gdata.gauth.token_to_blob, token) + + blob = '~~z' + self.assertRaises(gdata.gauth.UnsupportedTokenType, + gdata.gauth.token_from_blob, blob) + + + +class OAuthHmacTokenTests(unittest.TestCase): + + def test_build_base_string(self): + request = atom.http_core.HttpRequest('http://example.com/', 'GET') + base_string = gdata.gauth.build_oauth_base_string( + request, 'example.org', '12345', gdata.gauth.HMAC_SHA1, 1246301653, + '1.0') + self.assertEqual( + base_string, 'GET&http%3A%2F%2Fexample.com%2F&oauth_callback%3Doob%2' + '6oauth_consumer_key%3Dexample.org%26oauth_nonce%3D12345%26oauth_sig' + 'nature_method%3DHMAC-SHA1%26oauth_timestamp%3D1246301653%26oauth_ve' + 'rsion%3D1.0') + + # Test using example from documentation. + request = atom.http_core.HttpRequest( + 'http://www.google.com/calendar/feeds/default/allcalendars/full' + '?orderby=starttime', 'GET') + base_string = gdata.gauth.build_oauth_base_string( + request, 'example.com', '4572616e48616d6d65724c61686176', + gdata.gauth.RSA_SHA1, 137131200, '1.0', token='1%2Fab3cd9j4ks73hf7g', + next='http://googlecodesamples.com/oauth_playground/index.php') + self.assertEqual( + base_string, 'GET&http%3A%2F%2Fwww.google.com%2Fcalendar%2Ffeeds%2Fd' + 'efault%2Fallcalendars%2Ffull&oauth_callback%3Dhttp%253A%252F%252Fgo' + 'oglecodesamples.com%252Foauth_playground%252Findex.php%26oauth_cons' + 'umer_key%3Dexample.com%26oauth_nonce%3D4572616e48616d6d65724c616861' + '76%26oauth_signature_method%3DRSA-SHA1%26oauth_timestamp%3D13713120' + '0%26oauth_token%3D1%25252Fab3cd9j4ks73hf7g%26oauth_version%3D1.0%26' + 'orderby%3Dstarttime') + + # Test various defaults. + request = atom.http_core.HttpRequest('http://eXample.COM', 'get') + base_string = gdata.gauth.build_oauth_base_string( + request, 'example.org', '12345', gdata.gauth.HMAC_SHA1, 1246301653, + '1.0') + self.assertEqual( + base_string, 'GET&http%3A%2F%2Fexample.com%2F&oauth_callback%3Doob%2' + '6oauth_consumer_key%3Dexample.org%26oauth_nonce%3D12345%26oauth_sig' + 'nature_method%3DHMAC-SHA1%26oauth_timestamp%3D1246301653%26oauth_ve' + 'rsion%3D1.0') + + request = atom.http_core.HttpRequest('https://eXample.COM:443', 'get') + base_string = gdata.gauth.build_oauth_base_string( + request, 'example.org', '12345', gdata.gauth.HMAC_SHA1, 1246301653, + '1.0', 'http://googlecodesamples.com/oauth_playground/index.php') + self.assertEqual( + base_string, 'GET&https%3A%2F%2Fexample.com%2F&oauth_callback%3Dhttp' + '%253A%252F%252Fgooglecodesamples.com%252Foauth_playground%252Findex' + '.php%26oauth_consumer_key%3Dexample.org%26oauth_nonce%3D12345%26oau' + 'th_signature_method%3DHMAC-SHA1%26oauth_timestamp%3D1246301653%26oa' + 'uth_version%3D1.0') + + request = atom.http_core.HttpRequest('http://eXample.COM:443', 'get') + base_string = gdata.gauth.build_oauth_base_string( + request, 'example.org', '12345', gdata.gauth.HMAC_SHA1, 1246301653, + '1.0') + self.assertEqual( + base_string, 'GET&http%3A%2F%2Fexample.com%3A443%2F&oauth_callback%3' + 'Doob%26oauth_consumer_key%3De' + 'xample.org%26oauth_nonce%3D12345%26oauth_signature_method%3DHMAC-SH' + 'A1%26oauth_timestamp%3D1246301653%26oauth_version%3D1.0') + + request = atom.http_core.HttpRequest( + atom.http_core.Uri(host='eXample.COM'), 'GET') + base_string = gdata.gauth.build_oauth_base_string( + request, 'example.org', '12345', gdata.gauth.HMAC_SHA1, 1246301653, + '1.0', next='oob') + self.assertEqual( + base_string, 'GET&http%3A%2F%2Fexample.com%2F&oauth_callback%3Doob%2' + '6oauth_consumer_key%3Dexample.org%26oauth_nonce%3D12345%26oauth_sig' + 'nature_method%3DHMAC-SHA1%26oauth_timestamp%3D1246301653%26oauth_ve' + 'rsion%3D1.0') + + request = atom.http_core.HttpRequest( + 'https://www.google.com/accounts/OAuthGetRequestToken', 'GET') + request.uri.query['scope'] = ('https://docs.google.com/feeds/' + ' http://docs.google.com/feeds/') + base_string = gdata.gauth.build_oauth_base_string( + request, 'anonymous', '48522759', gdata.gauth.HMAC_SHA1, 1246489532, + '1.0', 'http://googlecodesamples.com/oauth_playground/index.php') + self.assertEqual( + base_string, 'GET&https%3A%2F%2Fwww.google.com%2Faccounts%2FOAuthGet' + 'RequestToken&oauth_callback%3Dhttp%253A%252F%252Fgooglecodesamples.' + 'com%252Foauth_playground%252Findex.php%26oauth_consumer_key%3Danony' + 'mous%26oauth_nonce%3D4852275' + '9%26oauth_signature_method%3DHMAC-SHA1%26oauth_timestamp%3D12464895' + '32%26oauth_version%3D1.0%26scope%3Dhttps%253A%252F%252Fdocs.google.' + 'com%252Ffeeds%252F%2520http%253A%252F%252Fdocs.google.com%252Ffeeds' + '%252F') + + def test_generate_hmac_signature(self): + # Use the example from the OAuth playground: + # http://googlecodesamples.com/oauth_playground/ + request = atom.http_core.HttpRequest( + 'https://www.google.com/accounts/OAuthGetRequestToken?' + 'scope=http%3A%2F%2Fwww.blogger.com%2Ffeeds%2F', 'GET') + signature = gdata.gauth.generate_hmac_signature( + request, 'anonymous', 'anonymous', '1246491360', + 'c0155b3f28697c029e7a62efff44bd46', '1.0', + next='http://googlecodesamples.com/oauth_playground/index.php') + self.assertEqual(signature, '5a2GPdtAY3LWYv8IdiT3wp1Coeg=') + + # Try the same request but with a non escaped Uri object. + request = atom.http_core.HttpRequest( + 'https://www.google.com/accounts/OAuthGetRequestToken', 'GET') + request.uri.query['scope'] = 'http://www.blogger.com/feeds/' + signature = gdata.gauth.generate_hmac_signature( + request, 'anonymous', 'anonymous', '1246491360', + 'c0155b3f28697c029e7a62efff44bd46', '1.0', + 'http://googlecodesamples.com/oauth_playground/index.php') + self.assertEqual(signature, '5a2GPdtAY3LWYv8IdiT3wp1Coeg=') + + # A different request also checked against the OAuth playground. + request = atom.http_core.HttpRequest( + 'https://www.google.com/accounts/OAuthGetRequestToken', 'GET') + request.uri.query['scope'] = ('https://www.google.com/analytics/feeds/ ' + 'http://www.google.com/base/feeds/ ' + 'http://www.google.com/calendar/feeds/') + signature = gdata.gauth.generate_hmac_signature( + request, 'anonymous', 'anonymous', 1246491797, + '33209c4d7a09be4eb1d6ff18e00f8548', '1.0', + next='http://googlecodesamples.com/oauth_playground/index.php') + self.assertEqual(signature, 'kFAgTTFDIWz4/xAabIlrcZZMTq8=') + + +class OAuthRsaTokenTests(unittest.TestCase): + + def test_generate_rsa_signature(self): + request = atom.http_core.HttpRequest( + 'https://www.google.com/accounts/OAuthGetRequestToken?' + 'scope=http%3A%2F%2Fwww.blogger.com%2Ffeeds%2F', 'GET') + signature = gdata.gauth.generate_rsa_signature( + request, 'anonymous', PRIVATE_TEST_KEY, '1246491360', + 'c0155b3f28697c029e7a62efff44bd46', '1.0', + next='http://googlecodesamples.com/oauth_playground/index.php') + self.assertEqual( + signature, + 'bfMantdttKaTrwoxU87JiXmMeXhAiXPiq79a5XmLlOYwwlX06Pu7CafMp7hW1fPeZtL' + '4o9Sz3NvPI8GECCaZk7n5vi1EJ5/wfIQbddrC8j45joBG6gFSf4tRJct82dSyn6bd71' + 'knwPZH1sKK46Y0ePJvEIDI3JDd7pRZuMM2sN8=') + + +class OAuthHeaderTest(unittest.TestCase): + + def test_generate_auth_header(self): + header = gdata.gauth.generate_auth_header( + 'consumerkey', 1234567890, 'mynonce', 'unknown_sig_type', 'sig') + self.assert_(header.startswith('OAuth')) + self.assert_(header.find('oauth_nonce="mynonce"') > -1) + self.assert_(header.find('oauth_timestamp="1234567890"') > -1) + self.assert_(header.find('oauth_consumer_key="consumerkey"') > -1) + self.assert_( + header.find('oauth_signature_method="unknown_sig_type"') > -1) + self.assert_(header.find('oauth_version="1.0"') > -1) + self.assert_(header.find('oauth_signature="sig"') > -1) + + header = gdata.gauth.generate_auth_header( + 'consumer/key', 1234567890, 'ab%&33', '', 'ab/+-_=') + self.assert_(header.find('oauth_nonce="ab%25%2633"') > -1) + self.assert_(header.find('oauth_consumer_key="consumer%2Fkey"') > -1) + self.assert_(header.find('oauth_signature_method=""') > -1) + self.assert_(header.find('oauth_signature="ab%2F%2B-_%3D"') > -1) + + +class OAuthGetRequestToken(unittest.TestCase): + + def test_request_hmac_request_token(self): + request = gdata.gauth.generate_request_for_request_token( + 'anonymous', gdata.gauth.HMAC_SHA1, + ['http://www.blogger.com/feeds/', + 'http://www.google.com/calendar/feeds/'], + consumer_secret='anonymous') + request_uri = str(request.uri) + self.assert_('http%3A%2F%2Fwww.blogger.com%2Ffeeds%2F' in request_uri) + self.assert_( + 'http%3A%2F%2Fwww.google.com%2Fcalendar%2Ffeeds%2F' in request_uri) + auth_header = request.headers['Authorization'] + self.assert_('oauth_consumer_key="anonymous"' in auth_header) + self.assert_('oauth_signature_method="HMAC-SHA1"' in auth_header) + self.assert_('oauth_version="1.0"' in auth_header) + self.assert_('oauth_signature="' in auth_header) + self.assert_('oauth_nonce="' in auth_header) + self.assert_('oauth_timestamp="' in auth_header) + + def test_request_rsa_request_token(self): + request = gdata.gauth.generate_request_for_request_token( + 'anonymous', gdata.gauth.RSA_SHA1, + ['http://www.blogger.com/feeds/', + 'http://www.google.com/calendar/feeds/'], + rsa_key=PRIVATE_TEST_KEY) + request_uri = str(request.uri) + self.assert_('http%3A%2F%2Fwww.blogger.com%2Ffeeds%2F' in request_uri) + self.assert_( + 'http%3A%2F%2Fwww.google.com%2Fcalendar%2Ffeeds%2F' in request_uri) + auth_header = request.headers['Authorization'] + self.assert_('oauth_consumer_key="anonymous"' in auth_header) + self.assert_('oauth_signature_method="RSA-SHA1"' in auth_header) + self.assert_('oauth_version="1.0"' in auth_header) + self.assert_('oauth_signature="' in auth_header) + self.assert_('oauth_nonce="' in auth_header) + self.assert_('oauth_timestamp="' in auth_header) + + def test_extract_token_from_body(self): + body = ('oauth_token=4%2F5bNFM_efIu3yN-E9RrF1KfZzOAZG&oauth_token_secret=' + '%2B4O49V9WUOkjXgpOobAtgYzy&oauth_callback_confirmed=true') + token, secret = gdata.gauth.oauth_token_info_from_body(body) + self.assertEqual(token, '4/5bNFM_efIu3yN-E9RrF1KfZzOAZG') + self.assertEqual(secret, '+4O49V9WUOkjXgpOobAtgYzy') + + def test_hmac_request_token_from_body(self): + body = ('oauth_token=4%2F5bNFM_efIu3yN-E9RrF1KfZzOAZG&oauth_token_secret=' + '%2B4O49V9WUOkjXgpOobAtgYzy&oauth_callback_confirmed=true') + request_token = gdata.gauth.hmac_token_from_body(body, 'myKey', + 'mySecret', True) + self.assertEqual(request_token.consumer_key, 'myKey') + self.assertEqual(request_token.consumer_secret, 'mySecret') + self.assertEqual(request_token.token, '4/5bNFM_efIu3yN-E9RrF1KfZzOAZG') + self.assertEqual(request_token.token_secret, '+4O49V9WUOkjXgpOobAtgYzy') + self.assertEqual(request_token.auth_state, gdata.gauth.REQUEST_TOKEN) + + def test_rsa_request_token_from_body(self): + body = ('oauth_token=4%2F5bNFM_efIu3yN-E9RrF1KfZzOAZG&oauth_token_secret=' + '%2B4O49V9WUOkjXgpOobAtgYzy&oauth_callback_confirmed=true') + request_token = gdata.gauth.rsa_token_from_body(body, 'myKey', + 'rsaKey', True) + self.assertEqual(request_token.consumer_key, 'myKey') + self.assertEqual(request_token.rsa_private_key, 'rsaKey') + self.assertEqual(request_token.token, '4/5bNFM_efIu3yN-E9RrF1KfZzOAZG') + self.assertEqual(request_token.token_secret, '+4O49V9WUOkjXgpOobAtgYzy') + self.assertEqual(request_token.auth_state, gdata.gauth.REQUEST_TOKEN) + + +class OAuthAuthorizeToken(unittest.TestCase): + + def test_generate_authorization_url(self): + url = gdata.gauth.generate_oauth_authorization_url('/+=aosdpikk') + self.assert_(str(url).startswith( + 'https://www.google.com/accounts/OAuthAuthorizeToken')) + self.assert_('oauth_token=%2F%2B%3Daosdpikk' in str(url)) + + def test_extract_auth_token(self): + url = ('http://www.example.com/test?oauth_token=' + 'CKF50YzIHxCT85KMAg&oauth_verifier=123zzz') + token = gdata.gauth.oauth_token_info_from_url(url) + self.assertEqual(token[0], 'CKF50YzIHxCT85KMAg') + self.assertEqual(token[1], '123zzz') + + +class FindScopesForService(unittest.TestCase): + + def test_find_all_scopes(self): + count = 0 + for key, scopes in gdata.gauth.AUTH_SCOPES.iteritems(): + count += len(scopes) + self.assertEqual(count, len(gdata.gauth.find_scopes_for_services())) + + def test_single_service(self): + self.assertEqual( + gdata.gauth.FindScopesForServices(('codesearch',)), + ['http://www.google.com/codesearch/feeds/']) + + def test_multiple_services(self): + self.assertEqual( + gdata.gauth.find_scopes_for_services(('jotspot', 'wise')), + ['http://sites.google.com/feeds/', 'https://sites.google.com/feeds/', + 'https://spreadsheets.google.com/feeds/', + 'http://spreadsheets.google.com/feeds/']) + + +def suite(): + return conf.build_suite([AuthSubTest, TokensToAndFromBlobsTest, + OAuthHmacTokenTests, OAuthRsaTokenTests, + OAuthHeaderTest, OAuthGetRequestToken, + OAuthAuthorizeToken, FindScopesForService]) + + +if __name__ == '__main__': + unittest.main() diff -Nru python-gdata-1.2.4/tests/gdata_tests/health/service_test.py python-gdata-2.0.8/tests/gdata_tests/health/service_test.py --- python-gdata-1.2.4/tests/gdata_tests/health/service_test.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_tests/health/service_test.py 2009-04-18 00:59:06.000000000 +0100 @@ -0,0 +1,195 @@ +#!/usr/bin/python +# +# Copyright 2009 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +__author__ = 'api.eric@google.com (Eric Bidelman)' + +import getpass +import unittest +from gdata import test_data +import gdata.health +import gdata.health.service + +username = '' +password = '' + +class HealthQueryProfileListTest(unittest.TestCase): + + def setUp(self): + self.health = gdata.health.service.HealthService() + self.health.ClientLogin(username, password, source='Health Client Unit Tests') + self.profile_list_feed = self.health.GetProfileListFeed() + + def testGetProfileListFeed(self): + self.assert_(isinstance(self.profile_list_feed, + gdata.health.ProfileListFeed)) + self.assertEqual(self.profile_list_feed.id.text, + 'https://www.google.com/health/feeds/profile/list') + first_entry = self.profile_list_feed.entry[0] + self.assert_(isinstance(first_entry, gdata.health.ProfileListEntry)) + self.assert_(first_entry.GetProfileId() is not None) + self.assert_(first_entry.GetProfileName() is not None) + + query = gdata.health.service.HealthProfileListQuery() + profile_list = self.health.GetProfileListFeed(query) + self.assertEqual(first_entry.GetProfileId(), + profile_list.entry[0].GetProfileId()) + self.assertEqual(profile_list.id.text, + 'https://www.google.com/health/feeds/profile/list') + + +class H9QueryProfileListTest(unittest.TestCase): + + def setUp(self): + self.h9 = gdata.health.service.HealthService(use_h9_sandbox=True) + self.h9.ClientLogin(username, password, source='H9 Client Unit Tests') + self.profile_list_feed = self.h9.GetProfileListFeed() + + def testGetProfileListFeed(self): + self.assert_(isinstance(self.profile_list_feed, + gdata.health.ProfileListFeed)) + self.assertEqual(self.profile_list_feed.id.text, + 'https://www.google.com/h9/feeds/profile/list') + first_entry = self.profile_list_feed.entry[0] + self.assert_(isinstance(first_entry, gdata.health.ProfileListEntry)) + self.assert_(first_entry.GetProfileId() is not None) + self.assert_(first_entry.GetProfileName() is not None) + + query = gdata.health.service.HealthProfileListQuery() + profile_list = self.h9.GetProfileListFeed(query) + self.assertEqual(first_entry.GetProfileId(), + profile_list.entry[0].GetProfileId()) + self.assertEqual(profile_list.id.text, + 'https://www.google.com/h9/feeds/profile/list') + + +class HealthQueryProfileTest(unittest.TestCase): + + def setUp(self): + self.health = gdata.health.service.HealthService() + self.health.ClientLogin(username, password, source='Health Client Unit Tests') + self.profile_list_feed = self.health.GetProfileListFeed() + self.profile_id = self.profile_list_feed.entry[0].GetProfileId() + + def testGetProfileFeed(self): + feed = self.health.GetProfileFeed(profile_id=self.profile_id) + self.assert_(isinstance(feed, gdata.health.ProfileFeed)) + self.assert_(isinstance(feed.entry[0].ccr, gdata.health.Ccr)) + + def testGetProfileFeedByQuery(self): + query = gdata.health.service.HealthProfileQuery( + projection='ui', profile_id=self.profile_id) + feed = self.health.GetProfileFeed(query=query) + self.assert_(isinstance(feed, gdata.health.ProfileFeed)) + self.assert_(feed.entry[0].ccr is not None) + + def testGetProfileDigestFeed(self): + query = gdata.health.service.HealthProfileQuery( + projection='ui', profile_id=self.profile_id, + params={'digest': 'true'}) + feed = self.health.GetProfileFeed(query=query) + self.assertEqual(len(feed.entry), 1) + + def testGetMedicationsAndConditions(self): + query = gdata.health.service.HealthProfileQuery( + projection='ui', profile_id=self.profile_id, + params={'digest': 'true'}, categories=['medication|condition']) + feed = self.health.GetProfileFeed(query=query) + self.assertEqual(len(feed.entry), 1) + if feed.entry[0].ccr.GetMedications() is not None: + self.assert_(feed.entry[0].ccr.GetMedications()[0] is not None) + self.assert_(feed.entry[0].ccr.GetConditions()[0] is not None) + self.assert_(feed.entry[0].ccr.GetAllergies() is None) + self.assert_(feed.entry[0].ccr.GetAlerts() is None) + self.assert_(feed.entry[0].ccr.GetResults() is None) + + +class H9QueryProfileTest(unittest.TestCase): + + def setUp(self): + self.h9 = gdata.health.service.HealthService(use_h9_sandbox=True) + self.h9.ClientLogin(username, password, source='H9 Client Unit Tests') + self.profile_list_feed = self.h9.GetProfileListFeed() + self.profile_id = self.profile_list_feed.entry[0].GetProfileId() + + def testGetProfileFeed(self): + feed = self.h9.GetProfileFeed(profile_id=self.profile_id) + self.assert_(isinstance(feed, gdata.health.ProfileFeed)) + self.assert_(feed.entry[0].ccr is not None) + + def testGetProfileFeedByQuery(self): + query = gdata.health.service.HealthProfileQuery( + service='h9', projection='ui', profile_id=self.profile_id) + feed = self.h9.GetProfileFeed(query=query) + self.assert_(isinstance(feed, gdata.health.ProfileFeed)) + self.assert_(feed.entry[0].ccr is not None) + + +class HealthNoticeTest(unittest.TestCase): + + def setUp(self): + self.health = gdata.health.service.HealthService() + self.health.ClientLogin(username, password, source='Health Client Unit Tests') + self.profile_list_feed = self.health.GetProfileListFeed() + self.profile_id = self.profile_list_feed.entry[0].GetProfileId() + + def testSendNotice(self): + subject_line = 'subject line' + body = 'Notice body.' + ccr_xml = test_data.HEALTH_CCR_NOTICE_PAYLOAD + created_entry = self.health.SendNotice(subject_line, + body, + ccr=ccr_xml, + profile_id=self.profile_id) + self.assertEqual(created_entry.title.text, subject_line) + self.assertEqual(created_entry.content.text, body) + self.assertEqual(created_entry.content.type, 'html') + + problem = created_entry.ccr.GetProblems()[0] + problem_desc = problem.FindChildren('Description')[0] + name = problem_desc.FindChildren('Text')[0] + self.assertEqual(name.text, 'Aortic valve disorders') + + +class H9NoticeTest(unittest.TestCase): + + def setUp(self): + self.h9 = gdata.health.service.HealthService(use_h9_sandbox=True) + self.h9.ClientLogin(username, password, source='H9 Client Unit Tests') + self.profile_list_feed = self.h9.GetProfileListFeed() + self.profile_id = self.profile_list_feed.entry[0].GetProfileId() + + def testSendNotice(self): + subject_line = 'subject line' + body = 'Notice body.' + ccr_xml = test_data.HEALTH_CCR_NOTICE_PAYLOAD + created_entry = self.h9.SendNotice(subject_line, body, ccr=ccr_xml, + profile_id=self.profile_id) + self.assertEqual(created_entry.title.text, subject_line) + self.assertEqual(created_entry.content.text, body) + self.assertEqual(created_entry.content.type, 'html') + + problem = created_entry.ccr.GetProblems()[0] + problem_desc = problem.FindChildren('Description')[0] + name = problem_desc.FindChildren('Text')[0] + self.assertEqual(name.text, 'Aortic valve disorders') + + +if __name__ == '__main__': + print ('Health API Tests\nNOTE: Please run these tests only with a test ' + 'account. The tests may delete or update your data.') + username = raw_input('Please enter your username: ') + password = getpass.getpass() + unittest.main() diff -Nru python-gdata-1.2.4/tests/gdata_tests/health_test.py python-gdata-2.0.8/tests/gdata_tests/health_test.py --- python-gdata-1.2.4/tests/gdata_tests/health_test.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_tests/health_test.py 2009-03-19 16:41:02.000000000 +0000 @@ -0,0 +1,179 @@ +#!/usr/bin/python +# +# Copyright 2009 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +__author__ = 'api.eric@google.com (Eric Bidelman)' + + +import unittest +from gdata import test_data +import gdata.health +import gdata.health.service + + +class ProfileEntryTest(unittest.TestCase): + + def setUp(self): + self.profile_entry = gdata.health.ProfileEntryFromString( + test_data.HEALTH_PROFILE_ENTRY_DIGEST) + + def testToAndFromStringWithData(self): + entry = gdata.health.ProfileEntryFromString(str(self.profile_entry)) + + self.assert_(isinstance(entry, gdata.health.ProfileEntry)) + self.assert_(isinstance(entry.ccr, gdata.health.Ccr)) + self.assertEqual(len(entry.ccr.GetMedications()), 3) + self.assertEqual(len(entry.ccr.GetImmunizations()), 1) + self.assertEqual(len(entry.ccr.GetAlerts()), 2) + self.assertEqual(len(entry.ccr.GetResults()), 1) + self.assertEqual(len(entry.ccr.GetProblems()), 2) + self.assertEqual(len(entry.ccr.GetProcedures()), 2) + + def testGetResultsTextFromCcr(self): + entry = gdata.health.ProfileEntryFromString(str(self.profile_entry)) + result = entry.ccr.GetResults()[0].FindChildren('Test')[0] + test_desc = result.FindChildren('Description')[0].FindChildren('Text')[0] + self.assertEqual(test_desc.text, 'Acetaldehyde - Blood') + + def testGetMedicationNameFromCcr(self): + entry = gdata.health.ProfileEntryFromString(str(self.profile_entry)) + product = entry.ccr.GetMedications()[1].FindChildren('Product')[0] + prod_name = product.FindChildren('ProductName')[0].FindChildren('Text')[0] + self.assertEqual(prod_name.text, 'A-Fil') + + def testGetProblemCodeValueFromCcr(self): + entry = gdata.health.ProfileEntryFromString(str(self.profile_entry)) + problem_desc = entry.ccr.GetProblems()[1].FindChildren('Description')[0] + code = problem_desc.FindChildren('Code')[0].FindChildren('Value')[0] + self.assertEqual(code.text, '136.9') + + def testGetGetImmunizationActorIdFromCcr(self): + entry = gdata.health.ProfileEntryFromString(str(self.profile_entry)) + immun_source = entry.ccr.GetImmunizations()[0].FindChildren('Source')[0] + actor_id = immun_source.FindChildren('Actor')[0].FindChildren('ActorID')[0] + self.assertEqual(actor_id.text, 'user@gmail.com') + + def testGetGetProceduresNameFromCcr(self): + entry = gdata.health.ProfileEntryFromString(str(self.profile_entry)) + proc_desc = entry.ccr.GetProcedures()[1].FindChildren('Description')[0] + proc_name = proc_desc.FindChildren('Text')[0] + self.assertEqual(proc_name.text, 'Abdominoplasty') + + def testGetAlertsFromCcr(self): + entry = gdata.health.ProfileEntryFromString(str(self.profile_entry)) + alert_type = entry.ccr.GetAlerts()[0].FindChildren('Type')[0] + self.assertEqual(alert_type.FindChildren('Text')[0].text, 'Allergy') + + +class ProfileListEntryTest(unittest.TestCase): + + def setUp(self): + self.entry = gdata.health.ProfileListEntryFromString( + test_data.HEALTH_PROFILE_LIST_ENTRY) + + def testToAndFromString(self): + self.assert_(isinstance(self.entry, gdata.health.ProfileListEntry)) + self.assertEqual(self.entry.GetProfileId(), 'vndCn5sdfwdEIY') + self.assertEqual(self.entry.GetProfileName(), 'profile name') + + +class ProfileFeedTest(unittest.TestCase): + + def setUp(self): + self.feed = gdata.health.ProfileFeedFromString( + test_data.HEALTH_PROFILE_FEED) + + def testToAndFromString(self): + self.assert_(len(self.feed.entry) == 15) + for an_entry in self.feed.entry: + self.assert_(isinstance(an_entry, gdata.health.ProfileEntry)) + new_profile_feed = gdata.health.ProfileFeedFromString(str(self.feed)) + for an_entry in new_profile_feed.entry: + self.assert_(isinstance(an_entry, gdata.health.ProfileEntry)) + + def testConvertActualData(self): + for an_entry in self.feed.entry: + self.assert_(an_entry.ccr is not None) + + +class HealthProfileQueryTest(unittest.TestCase): + + def testHealthQueryToString(self): + query = gdata.health.service.HealthProfileQuery() + self.assertEqual(query.ToUri(), '/health/feeds/profile/default') + + query = gdata.health.service.HealthProfileQuery(feed='feeds/profile') + self.assertEqual(query.ToUri(), '/health/feeds/profile/default') + + query = gdata.health.service.HealthProfileQuery(categories=['medication']) + self.assertEqual(query.ToUri(), + '/health/feeds/profile/default/-/medication') + + query = gdata.health.service.HealthProfileQuery(projection='ui', + profile_id='12345') + self.assertEqual(query.ToUri(), '/health/feeds/profile/ui/12345') + + query = gdata.health.service.HealthProfileQuery() + query.categories.append('medication|condition') + self.assertEqual(query.ToUri(), + '/health/feeds/profile/default/-/medication%7Ccondition') + + def testH9QueryToString(self): + query = gdata.health.service.HealthProfileQuery(service='h9') + self.assertEqual(query.ToUri(), '/h9/feeds/profile/default') + + query = gdata.health.service.HealthProfileQuery( + service='h9', feed='feeds/profile', + projection='ui', profile_id='12345') + self.assertEqual(query.ToUri(), '/h9/feeds/profile/ui/12345') + + def testDigestParam(self): + query = gdata.health.service.HealthProfileQuery(params={'digest': 'true'}) + self.assertEqual(query.ToUri(), '/health/feeds/profile/default?digest=true') + + query.profile_id = '12345' + query.projection = 'ui' + self.assertEqual( + query.ToUri(), '/health/feeds/profile/ui/12345?digest=true') + + +class HealthProfileListQueryTest(unittest.TestCase): + + def testHealthProfileListQueryToString(self): + query = gdata.health.service.HealthProfileListQuery() + self.assertEqual(query.ToUri(), '/health/feeds/profile/list') + + query = gdata.health.service.HealthProfileListQuery(service='health') + self.assertEqual(query.ToUri(), '/health/feeds/profile/list') + + query = gdata.health.service.HealthProfileListQuery( + feed='feeds/profile/list') + self.assertEqual(query.ToUri(), '/health/feeds/profile/list') + + query = gdata.health.service.HealthProfileListQuery( + service='health', feed='feeds/profile/list') + self.assertEqual(query.ToUri(), '/health/feeds/profile/list') + + def testH9ProfileListQueryToString(self): + query = gdata.health.service.HealthProfileListQuery(service='h9') + self.assertEqual(query.ToUri(), '/h9/feeds/profile/list') + + query = gdata.health.service.HealthProfileListQuery( + service='h9', feed='feeds/profile/list') + self.assertEqual(query.ToUri(), '/h9/feeds/profile/list') + +if __name__ == '__main__': + unittest.main() diff -Nru python-gdata-1.2.4/tests/gdata_tests/live_client_test.py python-gdata-2.0.8/tests/gdata_tests/live_client_test.py --- python-gdata-1.2.4/tests/gdata_tests/live_client_test.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_tests/live_client_test.py 2010-02-12 02:21:56.000000000 +0000 @@ -0,0 +1,304 @@ +#!/usr/bin/env python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +# This module is used for version 2 of the Google Data APIs. +# These tests attempt to connect to Google servers. + + +__author__ = 'j.s@google.com (Jeff Scudder)' + + +import os +import unittest +import gdata.gauth +import gdata.client +import atom.http_core +import atom.mock_http_core +import atom.core +import gdata.data +# TODO: switch to using v2 atom data once it is available. +import atom +import gdata.test_config as conf + + +conf.options.register_option(conf.BLOG_ID_OPTION) + + +class BloggerTest(unittest.TestCase): + + def setUp(self): + self.client = None + if conf.options.get_value('runlive') == 'true': + self.client = gdata.client.GDClient() + conf.configure_client(self.client, 'BloggerTest', 'blogger') + + def tearDown(self): + conf.close_client(self.client) + + def test_create_update_delete(self): + if not conf.options.get_value('runlive') == 'true': + return + # Either load the recording or prepare to make a live request. + conf.configure_cache(self.client, 'test_create_update_delete') + + blog_post = atom.Entry( + title=atom.Title(text='test from python BloggerTest'), + content=atom.Content(text='This is only a test.')) + http_request = atom.http_core.HttpRequest() + http_request.add_body_part(str(blog_post), 'application/atom+xml') + + def entry_from_string_wrapper(response): + self.assert_(response.getheader('content-type') is not None) + self.assert_(response.getheader('gdata-version') is not None) + return atom.EntryFromString(response.read()) + + entry = self.client.request('POST', + 'http://www.blogger.com/feeds/%s/posts/default' % ( + conf.options.get_value('blogid')), + converter=entry_from_string_wrapper, http_request=http_request) + self.assertEqual(entry.title.text, 'test from python BloggerTest') + self.assertEqual(entry.content.text, 'This is only a test.') + + # Edit the test entry. + edit_link = None + for link in entry.link: + # Find the edit link for this entry. + if link.rel == 'edit': + edit_link = link.href + entry.title.text = 'Edited' + http_request = atom.http_core.HttpRequest() + http_request.add_body_part(str(entry), 'application/atom+xml') + edited_entry = self.client.request('PUT', edit_link, + converter=entry_from_string_wrapper, http_request=http_request) + self.assertEqual(edited_entry.title.text, 'Edited') + self.assertEqual(edited_entry.content.text, entry.content.text) + + # Delete the test entry from the blog. + edit_link = None + for link in edited_entry.link: + if link.rel == 'edit': + edit_link = link.href + response = self.client.request('DELETE', edit_link) + self.assertEqual(response.status, 200) + + def test_use_version_two(self): + if not conf.options.get_value('runlive') == 'true': + return + conf.configure_cache(self.client, 'test_use_version_two') + + # Use version 2 of the Blogger API. + self.client.api_version = '2' + + # Create a v2 blog post entry to post on the blog. + entry = create_element('entry') + entry._other_elements.append( + create_element('title', text='Marriage!', + attributes={'type': 'text'})) + entry._other_elements.append( + create_element('content', attributes={'type': 'text'}, + text='Mr. Darcy has proposed marriage to me!')) + entry._other_elements.append( + create_element('category', + attributes={'scheme': TAG, 'term': 'marriage'})) + entry._other_elements.append( + create_element('category', + attributes={'scheme': TAG, 'term': 'Mr. Darcy'})) + + http_request = atom.http_core.HttpRequest() + http_request.add_body_part(entry.to_string(), 'application/atom+xml') + posted = self.client.request('POST', + 'http://www.blogger.com/feeds/%s/posts/default' % ( + conf.options.get_value('blogid')), + converter=element_from_string, http_request=http_request) + # Verify that the blog post content is correct. + self.assertEqual(posted.get_elements('title', ATOM)[0].text, 'Marriage!') + # TODO: uncomment once server bug is fixed. + #self.assertEqual(posted.get_elements('content', ATOM)[0].text, + # 'Mr. Darcy has proposed marriage to me!') + found_tags = [False, False] + categories = posted.get_elements('category', ATOM) + self.assertEqual(len(categories), 2) + for category in categories: + if category.get_attributes('term')[0].value == 'marriage': + found_tags[0] = True + elif category.get_attributes('term')[0].value == 'Mr. Darcy': + found_tags[1] = True + self.assert_(found_tags[0]) + self.assert_(found_tags[1]) + + # Find the blog post on the blog. + self_link = None + edit_link = None + for link in posted.get_elements('link', ATOM): + if link.get_attributes('rel')[0].value == 'self': + self_link = link.get_attributes('href')[0].value + elif link.get_attributes('rel')[0].value == 'edit': + edit_link = link.get_attributes('href')[0].value + self.assert_(self_link is not None) + self.assert_(edit_link is not None) + + queried = self.client.request('GET', self_link, + converter=element_from_string) + # TODO: add additional asserts to check content and etags. + + # Test queries using ETags. + entry = self.client.get_entry(self_link) + self.assert_(entry.etag is not None) + self.assertRaises(gdata.client.NotModified, self.client.get_entry, + self_link, etag=entry.etag) + + # Delete the test blog post. + self.client.request('DELETE', edit_link) + + +class ContactsTest(unittest.TestCase): + + def setUp(self): + self.client = None + if conf.options.get_value('runlive') == 'true': + self.client = gdata.client.GDClient() + conf.configure_client(self.client, 'ContactsTest', 'cp') + + def tearDown(self): + conf.close_client(self.client) + + def test_crud_version_two(self): + if not conf.options.get_value('runlive') == 'true': + return + + conf.configure_cache(self.client, 'test_crud_version_two') + + self.client.api_version = '2' + + entry = create_element('entry') + entry._other_elements.append( + create_element('title', ATOM, 'Jeff', {'type': 'text'})) + entry._other_elements.append( + create_element('email', GD, + attributes={'address': 'j.s@google.com', 'rel': WORK_REL})) + + http_request = atom.http_core.HttpRequest() + http_request.add_body_part(entry.to_string(), 'application/atom+xml') + posted = self.client.request('POST', + 'http://www.google.com/m8/feeds/contacts/default/full', + converter=element_from_string, http_request=http_request) + + self_link = None + edit_link = None + for link in posted.get_elements('link', ATOM): + if link.get_attributes('rel')[0].value == 'self': + self_link = link.get_attributes('href')[0].value + elif link.get_attributes('rel')[0].value == 'edit': + edit_link = link.get_attributes('href')[0].value + self.assert_(self_link is not None) + self.assert_(edit_link is not None) + + etag = posted.get_attributes('etag')[0].value + self.assert_(etag is not None) + self.assert_(len(etag) > 0) + + # Delete the test contact. + http_request = atom.http_core.HttpRequest() + http_request.headers['If-Match'] = etag + self.client.request('DELETE', edit_link, http_request=http_request) + + +class VersionTwoClientContactsTest(unittest.TestCase): + + def setUp(self): + self.client = None + if conf.options.get_value('runlive') == 'true': + self.client = gdata.client.GDClient() + self.client.api_version = '2' + conf.configure_client(self.client, 'VersionTwoClientContactsTest', 'cp') + self.old_proxy = os.environ.get('https_proxy') + + def tearDown(self): + if self.old_proxy: + os.environ['https_proxy'] = self.old_proxy + elif 'https_proxy' in os.environ: + del os.environ['https_proxy'] + conf.close_client(self.client) + + def test_version_two_client(self): + if not conf.options.get_value('runlive') == 'true': + return + conf.configure_cache(self.client, 'test_version_two_client') + + entry = gdata.data.GDEntry() + entry._other_elements.append( + create_element('title', ATOM, 'Test', {'type': 'text'})) + entry._other_elements.append( + create_element('email', GD, + attributes={'address': 'test@example.com', 'rel': WORK_REL})) + + # Create the test contact. + posted = self.client.post(entry, + 'https://www.google.com/m8/feeds/contacts/default/full') + self.assert_(isinstance(posted, gdata.data.GDEntry)) + self.assertEqual(posted.get_elements('title')[0].text, 'Test') + self.assertEqual(posted.get_elements('email')[0].get_attributes( + 'address')[0].value, 'test@example.com') + + posted.get_elements('title')[0].text = 'Doug' + edited = self.client.update(posted) + self.assert_(isinstance(edited, gdata.data.GDEntry)) + self.assertEqual(edited.get_elements('title')[0].text, 'Doug') + self.assertEqual(edited.get_elements('email')[0].get_attributes( + 'address')[0].value, 'test@example.com') + + # Delete the test contact. + self.client.delete(edited) + + def test_crud_over_https_proxy(self): + os.environ['https_proxy'] = '98.192.125.23' + # Perform the CRUD test above, this time over a proxy. + self.test_version_two_client() + + +# Utility methods. +# The Atom XML namespace. +ATOM = 'http://www.w3.org/2005/Atom' +# URL used as the scheme for a blog post tag. +TAG = 'http://www.blogger.com/atom/ns#' +# Namespace for Google Data API elements. +GD = 'http://schemas.google.com/g/2005' +WORK_REL = 'http://schemas.google.com/g/2005#work' + + +def create_element(tag, namespace=ATOM, text=None, attributes=None): + element = atom.core.XmlElement() + element._qname = '{%s}%s' % (namespace, tag) + if text is not None: + element.text = text + if attributes is not None: + element._other_attributes = attributes.copy() + return element + + +def element_from_string(response): + return atom.core.xml_element_from_string(response.read(), + atom.core.XmlElement) + + +def suite(): + return conf.build_suite([BloggerTest, ContactsTest, + VersionTwoClientContactsTest]) + + +if __name__ == '__main__': + unittest.TextTestRunner().run(suite()) diff -Nru python-gdata-1.2.4/tests/gdata_tests/maps/data_test.py python-gdata-2.0.8/tests/gdata_tests/maps/data_test.py --- python-gdata-1.2.4/tests/gdata_tests/maps/data_test.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_tests/maps/data_test.py 2009-08-19 02:02:54.000000000 +0100 @@ -0,0 +1,83 @@ +#!/usr/bin/env python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +__author__ = 'api.roman.public@gmail.com (Roman Nurik)' + + +import unittest +from gdata import test_data +import gdata.maps.data +import atom.core +import gdata.test_config as conf + + +class MapsDataTest(unittest.TestCase): + + def testMapEntryFromString(self): + entry = atom.core.parse(test_data.MAP_ENTRY, gdata.maps.data.Map) + self.assertEquals(entry.GetUserId(), '208825816854482607313') + self.assertEquals(entry.GetMapId(), '00046fb45f88fa910bcea') + self.assertEquals(entry.title.text, 'Untitled') + + def testMapFeedFromString(self): + feed = atom.core.parse(test_data.MAP_FEED, gdata.maps.data.MapFeed) + self.assertEquals(len(feed.entry), 1) + self.assert_(isinstance(feed, gdata.maps.data.MapFeed)) + self.assert_(isinstance(feed.entry[0], gdata.maps.data.Map)) + self.assertEquals(feed.entry[0].GetUserId(), '208825816854482607313') + self.assertEquals(feed.entry[0].GetMapId(), '00046fb45f88fa910bcea') + self.assertEquals(feed.entry[0].title.text, 'Untitled') + + def testFeatureEntryFromString(self): + entry = atom.core.parse(test_data.MAP_FEATURE_ENTRY, + gdata.maps.data.Feature) + self.assertEquals(entry.GetUserId(), '208825816854482607313') + self.assertEquals(entry.GetMapId(), '00046fb45f88fa910bcea') + self.assertEquals(entry.GetFeatureId(), '00046fb4632573b19e0b7') + self.assertEquals(entry.title.text, 'Some feature title') + self.assertEquals(entry.content.type, + 'application/vnd.google-earth.kml+xml') + + def testFeatureFeedFromString(self): + feed = atom.core.parse(test_data.MAP_FEATURE_FEED, + gdata.maps.data.FeatureFeed) + self.assertEquals(len(feed.entry), 3) + self.assert_(isinstance(feed, gdata.maps.data.FeatureFeed)) + self.assert_(isinstance(feed.entry[0], gdata.maps.data.Feature)) + self.assertEquals(feed.entry[0].GetUserId(), '208825816854482607313') + self.assertEquals(feed.entry[0].GetMapId(), '00046fb45f88fa910bcea') + self.assertEquals(feed.entry[0].GetFeatureId(), '00046fb4632573b19e0b7') + self.assertEquals(feed.entry[0].title.text, 'Some feature title') + self.assertEquals(feed.entry[0].content.type, + 'application/vnd.google-earth.kml+xml') + self.assertEquals(type(feed.entry[0].content), gdata.maps.data.KmlContent) + + +class KmlContentTest(unittest.TestCase): + + def testKmlContentFromString(self): + content = gdata.maps.data.KmlContent(kml=test_data.MAP_FEATURE_KML) + self.assertEquals(len(content.children), 1) + self.assertEquals(content.children[0].tag, 'Placemark') + + +def suite(): + return conf.build_suite([MapsDataTest, KmlContentTest]) + + +if __name__ == '__main__': + unittest.main() diff -Nru python-gdata-1.2.4/tests/gdata_tests/maps/live_client_test.py python-gdata-2.0.8/tests/gdata_tests/maps/live_client_test.py --- python-gdata-1.2.4/tests/gdata_tests/maps/live_client_test.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_tests/maps/live_client_test.py 2009-10-09 01:32:56.000000000 +0100 @@ -0,0 +1,106 @@ +#!/usr/bin/env python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +# This module is used for version 2 of the Google Data APIs. +# These tests attempt to connect to Google servers. + + +__author__ = 'api.roman.public@gmail.com (Roman Nurik)' + + +import unittest +import gdata.maps.client +import gdata.maps.data +import gdata.gauth +import gdata.client +import atom.http_core +import atom.mock_http_core +import atom.core +import gdata.data +import gdata.test_config as conf + + +class MapsClientTest(unittest.TestCase): + + def setUp(self): + self.client = None + if conf.options.get_value('runlive') == 'true': + self.client = gdata.maps.client.MapsClient() + conf.configure_client(self.client, 'MapsTest', 'local') + #self.client.http_client.debug = True + + def tearDown(self): + conf.close_client(self.client) + + def test_create_update_delete_map(self): + if not conf.options.get_value('runlive') == 'true': + return + # Either load the recording or prepare to make a live request. + conf.configure_cache(self.client, 'test_create_update_delete_map') + + # Create a map. + created = self.client.create_map('A test map', + 'This map is just a little test.') + + self.assertEqual(created.title.text, 'A test map') + self.assertEqual(created.summary.text, 'This map is just a little test.') + self.assert_(created.control is None) + + # Change the title of the map we just added. + created.title.text = 'Edited' + updated = self.client.update(created) + + self.assertEqual(updated.title.text, 'Edited') + self.assert_(isinstance(updated, gdata.maps.data.Map)) + self.assertEqual(updated.content.text, created.content.text) + + # Delete the test map. + self.client.delete(updated) + + def test_create_unlisted_map(self): + if not conf.options.get_value('runlive') == 'true': + return + conf.configure_cache(self.client, 'test_create_unlisted_map') + + # Add an unlisted map. + created = self.client.create_map('An unlisted test map', + 'This should be unlisted.', + unlisted=True) + + self.assertEqual(created.title.text, 'An unlisted test map') + self.assertEqual(created.summary.text, 'This should be unlisted.') + self.assert_(created.control is not None) + self.assert_(created.control.draft is not None) + self.assertEqual(created.control.draft.text, 'yes') + + # Make the map public. + created.control.draft.text = 'no' + updated = self.client.update(created) + + if updated.control is not None and updated.control.draft is not None: + self.assertNotEqual(updated.control.draft.text, 'yes') + + # Delete the test map using the URL instead of the entry. + self.client.delete(updated.find_edit_link()) + + +def suite(): + return conf.build_suite([MapsClientTest]) + + +if __name__ == '__main__': + unittest.TextTestRunner().run(suite()) diff -Nru python-gdata-1.2.4/tests/gdata_tests/projecthosting/data_test.py python-gdata-2.0.8/tests/gdata_tests/projecthosting/data_test.py --- python-gdata-1.2.4/tests/gdata_tests/projecthosting/data_test.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_tests/projecthosting/data_test.py 2009-10-30 18:36:23.000000000 +0000 @@ -0,0 +1,180 @@ +#!/usr/bin/env python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# This module is used for version 2 of the Google Data APIs. + +__author__ = 'jlapenna@google.com (Joe LaPenna)' + + +import unittest + +from gdata import test_data + +import gdata.projecthosting.data +import atom.core +import gdata.test_config as conf + + +ISSUE_ENTRY = """\ + + http://code.google.com/feeds/issues/p/PROJECT_NAME/issues/full/1 + 2009-09-09T20:34:35.365Z + This is updated issue summary + This is issue description + + + + elizabeth.bennet + /u/elizabeth.bennet/ + + + /u/@UBhTQl1UARRAVga7/ + mar...@domain.com + + + /u/fitzwilliam.darcy/ + fitzwilliam.darcy + + Type-Enhancement + Priority-Low + + /u/charlotte.lucas/ + charlotte.lucas + + 0 + open + Started + +""" + +ISSUES_FEED = """\ + + + http://code.google.com/feeds/issues/p/android-test2/issues/full + + + + 2009-09-22T04:06:32.794Z + %s + +""" % ISSUE_ENTRY + + +COMMENT_ENTRY = """\ + + + This is comment - update issue + + elizabeth.bennet + + + This is updated issue summary + Started + charlotte.lucas + -Type-Defect + Type-Enhancement + -Milestone-2009 + -Priority-Medium + Priority-Low + -fitzwilliam.darcy + marialucas@domain.com + + +""" + + +class CommentEntryTest(unittest.TestCase): + + def testParsing(self): + entry = atom.core.parse(COMMENT_ENTRY, + gdata.projecthosting.data.CommentEntry) + + updates = entry.updates + + self.assertEquals(updates.summary.text, 'This is updated issue summary') + self.assertEquals(updates.status.text, 'Started') + self.assertEquals(updates.ownerUpdate.text, 'charlotte.lucas') + + self.assertEquals(len(updates.label), 5) + self.assertEquals(updates.label[0].text, '-Type-Defect') + self.assertEquals(updates.label[1].text, 'Type-Enhancement') + self.assertEquals(updates.label[2].text, '-Milestone-2009') + self.assertEquals(updates.label[3].text, '-Priority-Medium') + self.assertEquals(updates.label[4].text, 'Priority-Low') + + self.assertEquals(len(updates.ccUpdate), 2) + self.assertEquals(updates.ccUpdate[0].text, '-fitzwilliam.darcy') + self.assertEquals(updates.ccUpdate[1].text, 'marialucas@domain.com') + + +class IssueEntryTest(unittest.TestCase): + + def testParsing(self): + entry = atom.core.parse(ISSUE_ENTRY, gdata.projecthosting.data.IssueEntry) + + self.assertEquals(entry.owner.uri.text, '/u/charlotte.lucas/') + self.assertEqual(entry.owner.username.text, 'charlotte.lucas') + + self.assertEquals(len(entry.cc), 2) + cc_0 = entry.cc[0] + self.assertEquals(cc_0.uri.text, '/u/@UBhTQl1UARRAVga7/') + self.assertEquals(cc_0.username.text, 'mar...@domain.com') + cc_1 = entry.cc[1] + self.assertEquals(cc_1.uri.text, '/u/fitzwilliam.darcy/') + self.assertEquals(cc_1.username.text, 'fitzwilliam.darcy') + + self.assertEquals(len(entry.label), 2) + self.assertEquals(entry.label[0].text, 'Type-Enhancement') + self.assertEquals(entry.label[1].text, 'Priority-Low') + + self.assertEquals(entry.stars.text, '0') + self.assertEquals(entry.state.text, 'open') + self.assertEquals(entry.status.text, 'Started') + + +class DataClassSanityTest(unittest.TestCase): + + def test_basic_element_structure(self): + conf.check_data_classes(self, [ + gdata.projecthosting.data.Uri, + gdata.projecthosting.data.Username, + gdata.projecthosting.data.Cc, + gdata.projecthosting.data.Label, + gdata.projecthosting.data.Owner, + gdata.projecthosting.data.Stars, + gdata.projecthosting.data.State, + gdata.projecthosting.data.Status, + gdata.projecthosting.data.Summary, + gdata.projecthosting.data.Updates, + gdata.projecthosting.data.IssueEntry, + gdata.projecthosting.data.IssuesFeed, + gdata.projecthosting.data.CommentEntry, + gdata.projecthosting.data.CommentsFeed]) + + +def suite(): + return conf.build_suite([IssueEntryTest, DataClassSanityTest]) + + +if __name__ == '__main__': + unittest.main() diff -Nru python-gdata-1.2.4/tests/gdata_tests/projecthosting/live_client_test.py python-gdata-2.0.8/tests/gdata_tests/projecthosting/live_client_test.py --- python-gdata-1.2.4/tests/gdata_tests/projecthosting/live_client_test.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_tests/projecthosting/live_client_test.py 2009-10-16 01:13:07.000000000 +0100 @@ -0,0 +1,254 @@ +#!/usr/bin/env python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +# This module is used for version 2 of the Google Data APIs. +# These tests attempt to connect to Google servers. + + +__author__ = 'jlapenna@google.com (Joe LaPenna)' + + +import unittest +import gdata.projecthosting.client +import gdata.projecthosting.data +import gdata.gauth +import gdata.client +import atom.http_core +import atom.mock_http_core +import atom.core +import gdata.data +import gdata.test_config as conf + + +conf.options.register_option(conf.PROJECT_NAME_OPTION) +conf.options.register_option(conf.ISSUE_ASSIGNEE_OPTION) + + +class ProjectHostingClientTest(unittest.TestCase): + + def setUp(self): + self.client = None + if conf.options.get_value('runlive') == 'true': + self.client = gdata.projecthosting.client.ProjectHostingClient() + conf.configure_client(self.client, 'ProjectHostingClientTest', 'code') + + self.project_name = conf.options.get_value('project_name') + self.assignee = conf.options.get_value('issue_assignee') + self.owner = conf.options.get_value('username') + + def tearDown(self): + conf.close_client(self.client) + + def create_issue(self): + # Add an issue + created = self.client.add_issue( + self.project_name, + 'my title', + 'my summary', + self.owner, + labels=['label0']) + + self.assertEqual(created.title.text, 'my title') + self.assertEqual(created.content.text, 'my summary') + + self.assertEqual(len(created.label), 1) + self.assertEqual(created.label[0].text, 'label0') + + return created + + def test_create_update_close(self): + if not conf.options.get_value('runlive') == 'true': + return + # Either load the recording or prepare to make a live request. + conf.configure_cache(self.client, 'test_create_update_delete') + + # Create the issue: + created = self.create_issue() + + # Change the issue we just added. + issue_id = created.id.text.split('/')[-1] + update_response = self.client.update_issue( + self.project_name, + issue_id, + self.owner, + comment='My comment here.', + summary='New Summary', + status='Accepted', + owner=self.assignee, + labels=['-label0', 'label1'], + ccs=[self.owner]) + + updates = update_response.updates + # Make sure it changed our status, summary, and added the comment. + self.assertEqual(update_response.content.text, 'My comment here.') + self.assertEqual(updates.summary.text, 'New Summary') + self.assertEqual(updates.status.text, 'Accepted') + + # Make sure it got all our label change requests. + self.assertEquals(len(updates.label), 2) + self.assertEquals(updates.label[0].text, '-label0') + self.assertEquals(updates.label[1].text, 'label1') + + # Be sure it saw our CC change. We can't check the specific values (yet) + # because ccUpdate and ownerUpdate responses are mungled. + self.assertEquals(len(updates.ccUpdate), 1) + self.assert_(updates.ownerUpdate.text) + + def test_get_issues(self): + if not conf.options.get_value('runlive') == 'true': + return + # Either load the recording or prepare to make a live request. + conf.configure_cache(self.client, 'test_create_update_delete') + + # Create an issue so we have something to look up. + created = self.create_issue() + + # The fully qualified id is a url, we just want the number. + issue_id = created.id.text.split('/')[-1] + + # Get the specific issue in our issues feed. You could use label, + # canned_query and others just the same. + query = gdata.projecthosting.client.Query(label='label0') + feed = self.client.get_issues(self.project_name, query=query) + + # Make sure we at least find the entry we created with that label. + self.assert_(len(feed.entry) > 0) + + for issue in feed.entry: + label_texts = [label.text for label in issue.label] + self.assert_('label0' in label_texts, 'Issue does not have label label0') + + def test_get_comments(self): + if not conf.options.get_value('runlive') == 'true': + return + # Either load the recording or prepare to make a live request. + conf.configure_cache(self.client, 'test_create_update_delete') + + # Create an issue so we have something to look up. + created = self.create_issue() + + # The fully qualified id is a url, we just want the number. + issue_id = created.id.text.split('/')[-1] + + # Now lets add two comments to that issue. + for i in range(2): + update_response = self.client.update_issue( + self.project_name, + issue_id, + self.owner, + comment='My comment here %s' % i) + + # We have an issue that has several comments. Lets get them. + comments_feed = self.client.get_comments(self.project_name, issue_id) + + # It has 2 comments. + self.assertEqual(2, len(comments_feed.entry)) + + +class ProjectHostingDocExamplesTest(unittest.TestCase): + + def setUp(self): + self.project_name = conf.options.get_value('project_name') + self.assignee = conf.options.get_value('issue_assignee') + self.owner = conf.options.get_value('username') + self.password = conf.options.get_value('password') + + def test_doc_examples(self): + if not conf.options.get_value('runlive') == 'true': + return + issues_client = gdata.projecthosting.client.ProjectHostingClient() + + self.authenticating_client(issues_client, self.owner, self.password) + + issue = self.creating_issues(issues_client, self.project_name, self.owner) + issue_id = issue.id.text.split('/')[-1] + + self.retrieving_all_issues(issues_client, self.project_name) + self.retrieving_issues_using_query_parameters( + issues_client, + self.project_name) + self.modifying_an_issue_or_creating_issue_comments( + issues_client, + self.project_name, + issue_id, + self.owner, + self.assignee) + self.retrieving_issues_comments_for_an_issue( + issues_client, + self.project_name, + issue_id) + + def authenticating_client(self, client, username, password): + return client.client_login( + username, + password, + source='your-client-name', + service='code') + + def creating_issues(self, client, project_name, owner): + """Create an issue.""" + return client.add_issue( + project_name, + 'my title', + 'my summary', + owner, + labels=['label0']) + + def retrieving_all_issues(self, client, project_name): + """Retrieve all the issues in a project.""" + feed = client.get_issues(project_name) + for issue in feed.entry: + self.assert_(issue.title.text is not None) + + def retrieving_issues_using_query_parameters(self, client, project_name): + """Retrieve a set of issues in a project.""" + query = gdata.projecthosting.client.Query(label='label0', max_results=1000) + feed = client.get_issues(project_name, query=query) + for issue in feed.entry: + self.assert_(issue.title.text is not None) + return feed + + def retrieving_issues_comments_for_an_issue(self, client, project_name, + issue_id): + """Retrieve all issue comments for an issue.""" + comments_feed = client.get_comments(project_name, issue_id) + for comment in comments_feed.entry: + self.assert_(comment.content is not None) + return comments_feed + + def modifying_an_issue_or_creating_issue_comments(self, client, project_name, + issue_id, owner, assignee): + """Add a comment and update metadata in an issue.""" + return client.update_issue( + project_name, + issue_id, + owner, + comment='My comment here.', + summary='New Summary', + status='Accepted', + owner=assignee, + labels=['-label0', 'label1'], + ccs=[owner]) + + +def suite(): + return conf.build_suite([ProjectHostingClientTest, + ProjectHostingDocExamplesTest]) + + +if __name__ == '__main__': + unittest.TextTestRunner().run(suite()) diff -Nru python-gdata-1.2.4/tests/gdata_tests/resumable_upload_test.py python-gdata-2.0.8/tests/gdata_tests/resumable_upload_test.py --- python-gdata-1.2.4/tests/gdata_tests/resumable_upload_test.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_tests/resumable_upload_test.py 2010-02-06 01:41:15.000000000 +0000 @@ -0,0 +1,136 @@ +#!/usr/bin/env python +# +# Copyright (C) 2008, 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +# This module is used for version 2 of the Google Data APIs. + + +__author__ = 'e.bidelman@google.com (Eric Bidelman)' + + +import os +import unittest +import atom.data +import gdata.client +import gdata.data +import gdata.gauth +import gdata.docs.client +import gdata.docs.data +import gdata.test_config as conf + + +TEST_FILE_LOCATION_OPTION = conf.Option( + 'file', + 'Please enter the full path to a test file to upload', + description=('This test file will be uploaded to DocList which. An example ' + 'file can be found in tests/gdata_tests/docs/test.doc')) + +CONTENT_TYPE_OPTION = conf.Option( + 'contenttype', + 'Please enter the mimetype of the file', + description='The content type should match that of the upload file.') + +conf.options.register_option(TEST_FILE_LOCATION_OPTION) +conf.options.register_option(CONTENT_TYPE_OPTION) + + +class ResumableUploadTestCase(unittest.TestCase): + + def setUp(self): + self.client = None + if conf.options.get_value('runlive') == 'true': + self.client = gdata.docs.client.DocsClient(source='ResumableUploadTest') + if conf.options.get_value('ssl') == 'true': + self.client.ssl = True + self.f = open(conf.options.get_value('file')) + self.content_type = conf.options.get_value('contenttype') + conf.configure_client( + self.client, 'ResumableUploadTest', self.client.auth_service) + + def tearDown(self): + conf.close_client(self.client) + self.f.close() + + def testUploadEntireDocumentAndUpdate(self): + if not conf.options.get_value('runlive') == 'true': + return + + # Either load the recording or prepare to make a live request. + conf.configure_cache(self.client, 'testUploadDocument') + + uploader = gdata.client.ResumableUploader( + self.client, self.f, self.content_type, os.path.getsize(self.f.name), + chunk_size=20000, # 20000 bytes. + desired_class=gdata.docs.data.DocsEntry) + + e = gdata.docs.data.DocsEntry( + title=atom.data.Title(text='MyResumableTitleEntireFile')) + e.category.append(gdata.docs.data.make_kind_category('document')) + e.writers_can_invite = gdata.docs.data.WritersCanInvite(value='false') + + entry = uploader.UploadFile( + '/feeds/upload/create-session/default/private/full', entry=e) + + # Verify upload has really completed. + self.assertEqual(uploader.QueryUploadStatus(), True) + + self.assert_(isinstance(entry, gdata.docs.data.DocsEntry)) + self.assertEqual(entry.title.text, 'MyResumableTitleEntireFile') + self.assertEqual(entry.GetDocumentType(), 'document') + self.assertEqual(entry.writers_can_invite.value, 'false') + self.assertEqual(int(entry.quota_bytes_used.text), 0) + self.client.Delete(entry, force=True) + + def testUploadDocumentInChunks(self): + if not conf.options.get_value('runlive') == 'true': + return + + # Either load the recording or prepare to make a live request. + conf.configure_cache(self.client, 'testUploadDocumentInChunks') + + uploader = gdata.client.ResumableUploader( + self.client, self.f, self.content_type, os.path.getsize(self.f.name), + desired_class=gdata.docs.data.DocsEntry) + + uploader._InitSession( + '/feeds/upload/create-session/default/private/full', + headers={'Slug': 'MyManualChunksNoAtomTitle'}) + + start_byte = 0 + entry = None + + while not entry: + entry = uploader.UploadChunk( + start_byte, uploader.file_handle.read(uploader.chunk_size)) + start_byte += uploader.chunk_size + + # Verify upload has really completed. + self.assertEqual(uploader.QueryUploadStatus(), True) + + self.assert_(isinstance(entry, gdata.docs.data.DocsEntry)) + self.assertEqual(entry.title.text, 'MyManualChunksNoAtomTitle') + self.assertEqual(entry.GetDocumentType(), 'document') + self.client.Delete(entry, force=True) + + +def suite(): + return conf.build_suite([ResumableUploadTestCase]) + + +if __name__ == '__main__': + unittest.TextTestRunner().run(suite()) + + diff -Nru python-gdata-1.2.4/tests/gdata_tests/sample_util_test.py python-gdata-2.0.8/tests/gdata_tests/sample_util_test.py --- python-gdata-1.2.4/tests/gdata_tests/sample_util_test.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_tests/sample_util_test.py 2009-10-09 01:44:30.000000000 +0100 @@ -0,0 +1,58 @@ +#!/usr/bin/env python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +# This module is used for version 2 of the Google Data APIs. + + +__author__ = 'j.s@google.com (Jeff Scudder)' + + +import unittest +import sys +import gdata.sample_util + + +class SettingsUtilTest(unittest.TestCase): + + def setUp(self): + self.settings = gdata.sample_util.SettingsUtil() + + def test_get_param(self): + self.assert_(self.settings.get_param('missing', ask=False) is None) + self.settings.prefs['x'] = 'something' + self.assertEqual(self.settings.get_param('x'), 'something') + + def test_get_param_from_command_line_arg(self): + self.assert_('x' not in self.settings.prefs) + self.assert_(self.settings.get_param('x', ask=False) is None) + sys.argv.append('--x=something') + self.assertEqual(self.settings.get_param('x'), 'something') + self.assert_('x' not in self.settings.prefs) + self.assert_('y' not in self.settings.prefs) + self.assert_(self.settings.get_param('y', ask=False) is None) + sys.argv.append('--y') + sys.argv.append('other') + self.assertEqual(self.settings.get_param('y', reuse=True), 'other') + self.assertEqual(self.settings.prefs['y'], 'other') + + +def suite(): + return conf.build_suite([SettingsUtilTest]) + + +if __name__ == '__main__': + unittest.main() diff -Nru python-gdata-1.2.4/tests/gdata_tests/service_test.py python-gdata-2.0.8/tests/gdata_tests/service_test.py --- python-gdata-1.2.4/tests/gdata_tests/service_test.py 2008-10-08 19:06:38.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_tests/service_test.py 2009-10-09 01:29:29.000000000 +0100 @@ -32,6 +32,7 @@ import os.path from gdata import test_data import atom.mock_http +import atom.mock_http_core username = '' @@ -387,6 +388,34 @@ self.assertEquals(self.gd_client.captcha_url, ('https://www.google.com/accounts/Captcha?ctoken=HiteT4b0Bk5Xg18_' 'AcVoP6-yFkHPibe7O9EqxeiI7lUSN')) + + +class DeleteWithUrlParamsTest(unittest.TestCase): + + def setUp(self): + self.gd_client = gdata.service.GDataService() + # Set the client to echo the request back in the response. + self.gd_client.http_client.v2_http_client = ( + atom.mock_http_core.SettableHttpClient(200, 'OK', '', {})) + + def testDeleteWithUrlParams(self): + self.assert_(self.gd_client.Delete('http://example.com/test', + {'TestHeader': '123'}, {'urlParam1': 'a', 'urlParam2': 'test'})) + request = self.gd_client.http_client.v2_http_client.last_request + self.assertEqual(request.uri.host, 'example.com') + self.assertEqual(request.uri.path, '/test') + self.assertEqual(request.uri.query, + {'urlParam1': 'a', 'urlParam2': 'test'}) + + def testDeleteWithSessionId(self): + self.gd_client._SetSessionId('test_session_id') + self.assert_(self.gd_client.Delete('http://example.com/test', + {'TestHeader': '123'}, {'urlParam1': 'a', 'urlParam2': 'test'})) + request = self.gd_client.http_client.v2_http_client.last_request + self.assertEqual(request.uri.host, 'example.com') + self.assertEqual(request.uri.path, '/test') + self.assertEqual(request.uri.query, {'urlParam1': 'a', + 'urlParam2': 'test', 'gsessionid': 'test_session_id'}) class QueryTest(unittest.TestCase): diff -Nru python-gdata-1.2.4/tests/gdata_tests/sites/data_test.py python-gdata-2.0.8/tests/gdata_tests/sites/data_test.py --- python-gdata-1.2.4/tests/gdata_tests/sites/data_test.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_tests/sites/data_test.py 2010-01-26 21:19:28.000000000 +0000 @@ -0,0 +1,296 @@ +#!/usr/bin/python +# +# Copyright 2009 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +__author__ = 'e.bidelman (Eric Bidelman)' + +import unittest +import atom +from gdata import test_data +import gdata.acl.data +import gdata.data +import gdata.sites.data +import gdata.test_config as conf + + +def parse(xml_string, target_class): + """Convenience wrapper for converting an XML string to an XmlElement.""" + return atom.core.xml_element_from_string(xml_string, target_class) + + +class CommentEntryTest(unittest.TestCase): + + def setUp(self): + self.entry = parse(test_data.SITES_COMMENT_ENTRY, + gdata.sites.data.ContentEntry) + + def testToAndFromStringCommentEntry(self): + self.assertEqual(self.entry.Kind(), 'comment') + self.assert_(isinstance(self.entry.in_reply_to, gdata.sites.data.InReplyTo)) + self.assertEqual(self.entry.in_reply_to.type, 'text/html') + self.assertEqual( + self.entry.FindParentLink(), + 'http://sites.google.com/feeds/content/site/gdatatestsite/abc123parent') + self.assertEqual( + self.entry.in_reply_to.href, + 'http://sites.google.com/site/gdatatestsite/annoucment/testpost') + self.assertEqual( + self.entry.in_reply_to.ref, + 'http://sites.google.com/feeds/content/site/gdatatestsite/abc123') + self.assertEqual( + self.entry.in_reply_to.source, + 'http://sites.google.com/feeds/content/site/gdatatestsite') + + +class ListPageEntryTest(unittest.TestCase): + + def setUp(self): + self.entry = parse(test_data.SITES_LISTPAGE_ENTRY, + gdata.sites.data.ContentEntry) + + def testToAndFromStringWithData(self): + self.assert_(isinstance(self.entry, gdata.sites.data.ContentEntry)) + self.assertEqual(self.entry.title.text, 'ListPagesTitle') + self.assertEqual(len(self.entry.author), 1) + self.assertEqual(self.entry.author[0].name.text, 'Test User') + self.assertEqual(self.entry.author[0].email.text, 'test@gmail.com') + self.assertEqual(self.entry.worksheet.name, 'listpage') + self.assertEqual(self.entry.header.row, '1') + self.assertEqual(self.entry.data.startRow, '2') + self.assertEqual(len(self.entry.data.column), 5) + self.assert_(isinstance(self.entry.data.column[0], gdata.sites.data.Column)) + self.assertEqual(self.entry.data.column[0].index, 'A') + self.assertEqual(self.entry.data.column[0].name, 'Owner') + self.assert_(isinstance(self.entry.feed_link, gdata.data.FeedLink)) + self.assertEqual( + self.entry.feed_link.href, + 'http:///sites.google.com/feeds/content/site/gdatatestsite?parent=abc') + self.assert_(isinstance(self.entry.content, gdata.sites.data.Content)) + self.assert_(isinstance(self.entry.content.html, atom.core.XmlElement)) + self.assertEqual(self.entry.content.type, 'xhtml') + + +class ListItemEntryTest(unittest.TestCase): + + def setUp(self): + self.entry = parse(test_data.SITES_LISTITEM_ENTRY, + gdata.sites.data.ContentEntry) + + def testToAndFromStringWithData(self): + self.assert_(isinstance(self.entry, gdata.sites.data.ContentEntry)) + self.assertEqual(len(self.entry.field), 5) + self.assert_(isinstance(self.entry.field[0], gdata.sites.data.Field)) + self.assertEqual(self.entry.field[0].index, 'A') + self.assertEqual(self.entry.field[0].name, 'Owner') + self.assertEqual(self.entry.field[0].text, 'test value') + self.assertEqual( + self.entry.FindParentLink(), + 'http://sites.google.com/feeds/content/site/gdatatestsite/abc123def') + + +class BaseSiteEntryTest(unittest.TestCase): + + def testCreateBaseSiteEntry(self): + entry = gdata.sites.data.BaseSiteEntry() + parent_link = atom.data.Link( + rel=gdata.sites.data.SITES_PARENT_LINK_REL, href='abc') + entry.link.append(parent_link) + entry.category.append( + atom.data.Category( + scheme=gdata.sites.data.SITES_KIND_SCHEME, + term='%s#%s' % (gdata.sites.data.SITES_NAMESPACE, 'webpage'), + label='webpage')) + self.assertEqual(entry.Kind(), 'webpage') + self.assertEqual(entry.category[0].label, 'webpage') + self.assertEqual( + entry.category[0].term, + '%s#%s' % ('http://schemas.google.com/sites/2008', 'webpage')) + self.assertEqual(entry.link[0].href, 'abc') + self.assertEqual(entry.link[0].rel, + 'http://schemas.google.com/sites/2008#parent') + + entry2 = gdata.sites.data.BaseSiteEntry(kind='webpage') + self.assertEqual( + entry2.category[0].term, + '%s#%s' % ('http://schemas.google.com/sites/2008', 'webpage')) + + +class ContentFeedTest(unittest.TestCase): + + def setUp(self): + self.feed = parse(test_data.SITES_CONTENT_FEED, + gdata.sites.data.ContentFeed) + + def testToAndFromStringContentFeed(self): + self.assert_(isinstance(self.feed, gdata.sites.data.ContentFeed)) + self.assertEqual(len(self.feed.entry), 8) + self.assert_(isinstance(self.feed.entry[0].revision, + gdata.sites.data.Revision)) + self.assertEqual(int(self.feed.entry[0].revision.text), 2) + self.assertEqual(self.feed.entry[0].GetNodeId(), '1712987567114738703') + self.assert_(isinstance(self.feed.entry[0].page_name, + gdata.sites.data.PageName)) + self.assertEqual(self.feed.entry[0].page_name.text, 'home') + self.assertEqual(self.feed.entry[0].FindRevisionLink(), + 'http:///sites.google.com/feeds/content/site/gdatatestsite/12345') + for entry in self.feed.entry: + self.assert_(isinstance(entry, gdata.sites.data.ContentEntry)) + if entry.deleted is not None: + self.assert_(isinstance(entry.deleted, gdata.sites.data.Deleted)) + self.assertEqual(entry.IsDeleted(), True) + else: + self.assertEqual(entry.IsDeleted(), False) + + def testCreateContentEntry(self): + new_entry = gdata.sites.data.ContentEntry() + new_entry.content = gdata.sites.data.Content() + new_entry.content.html = '

here is html

' + self.assert_(isinstance(new_entry, gdata.sites.data.ContentEntry)) + self.assert_(isinstance(new_entry.content, gdata.sites.data.Content)) + self.assert_(isinstance(new_entry.content.html, atom.core.XmlElement)) + + new_entry2 = gdata.sites.data.ContentEntry() + new_entry2.content = gdata.sites.data.Content( + html='

here is html

') + self.assert_(isinstance(new_entry2, gdata.sites.data.ContentEntry)) + self.assert_(isinstance(new_entry2.content, gdata.sites.data.Content)) + self.assert_(isinstance(new_entry2.content.html, atom.core.XmlElement)) + + def testGetHelpers(self): + kinds = {'announcement': self.feed.GetAnnouncements, + 'announcementspage': self.feed.GetAnnouncementPages, + 'attachment': self.feed.GetAttachments, + 'comment': self.feed.GetComments, + 'filecabinet': self.feed.GetFileCabinets, + 'listitem': self.feed.GetListItems, + 'listpage': self.feed.GetListPages, + 'webpage': self.feed.GetWebpages} + + for k, v in kinds.iteritems(): + entries = v() + self.assertEqual(len(entries), 1) + for entry in entries: + self.assertEqual(entry.Kind(), k) + if k == 'attachment': + self.assertEqual(entry.GetAlternateLink().href, + 'http://sites.google.com/feeds/SOMELONGURL') + + +class ActivityFeedTest(unittest.TestCase): + + def setUp(self): + self.feed = parse(test_data.SITES_ACTIVITY_FEED, + gdata.sites.data.ActivityFeed) + + def testToAndFromStringActivityFeed(self): + self.assert_(isinstance(self.feed, gdata.sites.data.ActivityFeed)) + self.assertEqual(len(self.feed.entry), 2) + for entry in self.feed.entry: + self.assert_(isinstance(entry.summary, gdata.sites.data.Summary)) + self.assertEqual(entry.summary.type, 'xhtml') + self.assert_(isinstance(entry.summary.html, atom.core.XmlElement)) + + +class RevisionFeedTest(unittest.TestCase): + + def setUp(self): + self.feed = parse(test_data.SITES_REVISION_FEED, + gdata.sites.data.RevisionFeed) + + def testToAndFromStringRevisionFeed(self): + self.assert_(isinstance(self.feed, gdata.sites.data.RevisionFeed)) + self.assertEqual(len(self.feed.entry), 1) + entry = self.feed.entry[0] + self.assert_(isinstance(entry.content, gdata.sites.data.Content)) + self.assert_(isinstance(entry.content.html, atom.core.XmlElement)) + self.assertEqual(entry.content.type, 'xhtml') + self.assertEqual( + entry.FindParentLink(), + 'http://sites.google.com/feeds/content/site/siteName/54395424125706119') + + +class SiteFeedTest(unittest.TestCase): + + def setUp(self): + self.feed = parse(test_data.SITES_SITE_FEED, + gdata.sites.data.SiteFeed) + + def testToAndFromStringSiteFeed(self): + self.assert_(isinstance(self.feed, gdata.sites.data.SiteFeed)) + self.assertEqual(len(self.feed.entry), 2) + entry = self.feed.entry[0] + self.assert_(isinstance(entry.site_name, gdata.sites.data.SiteName)) + self.assertEqual(entry.title.text, 'New Test Site') + self.assertEqual(entry.site_name.text, 'new-test-site') + self.assertEqual( + entry.FindAclLink(), + 'http://sites.google.com/feeds/acl/site/example.com/new-test-site') + self.assertEqual( + entry.FindSourceLink(), + 'http://sites.google.com/feeds/site/example.com/source-site') + self.assertEqual(entry.theme.text, 'iceberg') + + +class AclFeedTest(unittest.TestCase): + + def setUp(self): + self.feed = parse(test_data.SITES_ACL_FEED, + gdata.sites.data.AclFeed) + + def testToAndFromStringAclFeed(self): + self.assert_(isinstance(self.feed, gdata.sites.data.AclFeed)) + self.assertEqual(len(self.feed.entry), 1) + entry = self.feed.entry[0] + self.assert_(isinstance(entry, gdata.sites.data.AclEntry)) + self.assert_(isinstance(entry.scope, gdata.acl.data.AclScope)) + self.assertEqual(entry.scope.type, 'user') + self.assertEqual(entry.scope.value, 'user@example.com') + self.assert_(isinstance(entry.role, gdata.acl.data.AclRole)) + self.assertEqual(entry.role.value, 'owner') + self.assertEqual( + entry.GetSelfLink().href, + ('https://sites.google.com/feeds/acl/site/example.com/' + 'new-test-site/user%3Auser%40example.com')) + + +class DataClassSanityTest(unittest.TestCase): + + def test_basic_element_structure(self): + conf.check_data_classes(self, [ + gdata.sites.data.Revision, gdata.sites.data.PageName, + gdata.sites.data.Deleted, gdata.sites.data.Publisher, + gdata.sites.data.Worksheet, gdata.sites.data.Header, + gdata.sites.data.Column, gdata.sites.data.Data, + gdata.sites.data.Field, gdata.sites.data.InReplyTo, + gdata.sites.data.BaseSiteEntry, gdata.sites.data.ContentEntry, + gdata.sites.data.ContentFeed, gdata.sites.data.ActivityEntry, + gdata.sites.data.ActivityFeed, gdata.sites.data.RevisionEntry, + gdata.sites.data.RevisionFeed, gdata.sites.data.Content, + gdata.sites.data.Summary, gdata.sites.data.SiteName, + gdata.sites.data.SiteEntry, gdata.sites.data.SiteFeed, + gdata.sites.data.AclEntry, gdata.sites.data.AclFeed, + gdata.sites.data.Theme]) + + +def suite(): + return conf.build_suite([ + CommentEntryTest, ListPageEntryTest, ListItemEntryTest, BaseSiteEntryTest, + ContentFeedTest, ActivityFeedTest, RevisionFeedTest, SiteFeedTest, + AclFeedTest, DataClassSanityTest]) + + +if __name__ == '__main__': + unittest.main() diff -Nru python-gdata-1.2.4/tests/gdata_tests/sites/live_client_test.py python-gdata-2.0.8/tests/gdata_tests/sites/live_client_test.py --- python-gdata-1.2.4/tests/gdata_tests/sites/live_client_test.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_tests/sites/live_client_test.py 2010-02-26 21:49:54.000000000 +0000 @@ -0,0 +1,114 @@ +#!/usr/bin/python +# +# Copyright 2009 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# This module is used for version 2 of the Google Data APIs. +# These tests attempt to connect to Google servers. + + +__author__ = 'e.bidelman (Eric Bidelman)' + +import unittest +import gdata.client +import gdata.data +import gdata.gauth +import gdata.sites.client +import gdata.sites.data +import gdata.test_config as conf + +conf.options.register_option(conf.TEST_IMAGE_LOCATION_OPTION) +conf.options.register_option(conf.APPS_DOMAIN_OPTION) +conf.options.register_option(conf.SITES_NAME_OPTION) + + +class SitesClientTest(unittest.TestCase): + + def setUp(self): + self.client = None + if conf.options.get_value('runlive') == 'true': + self.client = gdata.sites.client.SitesClient( + site=conf.options.get_value('sitename'), + domain=conf.options.get_value('appsdomain')) + if conf.options.get_value('ssl') == 'true': + self.client.ssl = True + conf.configure_client(self.client, 'SitesTest', self.client.auth_service, + True) + + def tearDown(self): + conf.close_client(self.client) + + def testCreateUpdateDelete(self): + if not conf.options.get_value('runlive') == 'true': + return + + # Either load the recording or prepare to make a live request. + conf.configure_cache(self.client, 'testCreateUpdateDelete') + + new_entry = self.client.CreatePage( + 'webpage', 'Title Of Page', 'Your html content') + + self.assertEqual(new_entry.title.text, 'Title Of Page') + self.assertEqual(new_entry.page_name.text, 'title-of-page') + self.assert_(new_entry.GetAlternateLink().href is not None) + self.assertEqual(new_entry.Kind(), 'webpage') + + # Change the title of the webpage we just added. + new_entry.title.text = 'Edited' + updated_entry = self.client.update(new_entry) + + self.assertEqual(updated_entry.title.text, 'Edited') + self.assertEqual(updated_entry.page_name.text, 'title-of-page') + self.assert_(isinstance(updated_entry, gdata.sites.data.ContentEntry)) + + # Delete the test webpage from the Site. + self.client.delete(updated_entry) + + def testCreateAndUploadToFilecabinet(self): + if not conf.options.get_value('runlive') == 'true': + return + + # Either load the recording or prepare to make a live request. + conf.configure_cache(self.client, 'testCreateAndUploadToFilecabinet') + + filecabinet = self.client.CreatePage( + 'filecabinet', 'FilesGoHere', 'Your html content', + page_name='diff-pagename-than-title') + + self.assertEqual(filecabinet.title.text, 'FilesGoHere') + self.assertEqual(filecabinet.page_name.text, 'diff-pagename-than-title') + self.assert_(filecabinet.GetAlternateLink().href is not None) + self.assertEqual(filecabinet.Kind(), 'filecabinet') + + # Upload a file to the filecabinet + filepath = conf.options.get_value('imgpath') + attachment = self.client.UploadAttachment( + filepath, filecabinet, content_type='image/jpeg', title='TestImageFile', + description='description here') + + self.assertEqual(attachment.title.text, 'TestImageFile') + self.assertEqual(attachment.FindParentLink(), + filecabinet.GetSelfLink().href) + + # Delete the test filecabinet and attachment from the Site. + self.client.delete(attachment) + self.client.delete(filecabinet) + + +def suite(): + return conf.build_suite([SitesClientTest]) + + +if __name__ == '__main__': + unittest.TextTestRunner().run(suite()) diff -Nru python-gdata-1.2.4/tests/gdata_tests/spreadsheets/data_test.py python-gdata-2.0.8/tests/gdata_tests/spreadsheets/data_test.py --- python-gdata-1.2.4/tests/gdata_tests/spreadsheets/data_test.py 1970-01-01 01:00:00.000000000 +0100 +++ python-gdata-2.0.8/tests/gdata_tests/spreadsheets/data_test.py 2009-10-09 01:33:10.000000000 +0100 @@ -0,0 +1,633 @@ +#!/usr/bin/env python +# +# Copyright (C) 2009 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +# This module is used for version 2 of the Google Data APIs. + + +__author__ = 'j.s@google.com (Jeff Scudder)' + + +import unittest +import gdata.spreadsheets.data +import gdata.test_config as conf +import atom.core + + +SPREADSHEET = """ + http://spreadsheets.google.com/feeds/spreadsheets/private/full/key + 2006-11-17T18:24:18.231Z + Groceries R Us + Groceries R Us + + + + + Fitzwilliam Darcy + fitz@gmail.com + +""" + + +WORKSHEETS_FEED = """ + http://spreadsheets.google.com/feeds/worksheets/key/private/full + 2006-11-17T18:23:45.173Z + Groceries R Us + + + + + + Fitzwilliam Darcy + fitz@gmail.com + + 1 + 1 + 1 + + http://spreadsheets.google.com/feeds/worksheets/0/private/full/1 + 2006-11-17T18:23:45.173Z + Sheet1 + Sheet1 + + + + + 100 + 20 + +""" + + +NEW_WORKSHEET = """ + Expenses + 50 + 10 +""" + + +EDIT_WORKSHEET = """ + + http://spreadsheets.google.com/feeds/worksheets/k/private/full/w + + 2007-07-30T18:51:30.666Z + + Income + Expenses + + + + + 45 + 15 +""" + + +NEW_TABLE = """ + Table 1 + This is a list of all who have registered to vote and + whether or not they qualify to vote. + + + + + + + + +""" + + +TABLES_FEED = """ + + + http://spreadsheets.google.com/feeds/key/tables + 2009-04-28T02:38:53.134Z + + Sample table and record feed + + + + + + Liz + liz@gmail.com + + 2 + 1 + + + http://spreadsheets.google.com/feeds/key/tables/0 + 2009-04-28T01:20:32.707Z + + 2009-04-28T01:20:32.707Z + + Table 1 + This is a list of all who have registered to vote and + whether or not they qualify to vote. + + + + + + + + + + + + + + + http://spreadsheets.google.com/feeds/key/tables/1 + 2009-04-28T01:20:38.313Z + + 2009-04-28T01:20:38.313Z + + Table 2 + List of detailed information about each voter. + + + + + + + + + + + + +""" + + +NEW_RECORD = """ + Darcy + 2/10/1785 + 28 + Darcy + No +""" + + +RECORDS_FEED = """ + + http://spreadsheets.google.com/feeds/key/records/0 + 2009-04-28T02:38:53.134Z + + Table 1 + + + + + + Liz + liz@gmail.com + + 2 + 1 + + + http://spreadsheets.google.com/feeds/key/records/0/cn6ca + 2009-04-28T02:38:53.134Z + + 2009-04-28T02:38:53.134Z + + Darcy + Birthday: 2/10/1785, Age: 28, Name: Darcy, + CanVote: No + + + 2/10/1785 + 28 + Darcy + No + + + + http://spreadsheets.google.com/feeds/key/records/0/cokwr + 2009-04-28T02:38:53.134Z + + 2009-04-28T02:38:53.134Z + + Jane + Birthday: 1/6/1791, Age: 22, Name: Jane, + CanVote: Yes + + + 1/6/1791 + 22 + Jane + Yes + +""" + + +LIST_FEED = """ + + http://spreadsheets.google.com/feeds/list/key/worksheetId/private/full + + 2006-11-17T18:23:45.173Z + Sheet1 + + + + + + Fitzwilliam Darcy + fitz@gmail.com + + 8 + 1 + 8 + + http://spreadsheets.google.com/feeds/list/k/w/private/full/r + 2006-11-17T18:23:45.173Z + + Bingley + Hours: 10, Items: 2, IPM: 0.0033 + + + Bingley + 10 + 2 + 0.0033 + + + + http://spreadsheets.google.com/feeds/list/k/w/private/full/rowId + + 2006-11-17T18:23:45.173Z + + Charlotte + Hours: 60, Items: 18000, IPM: 5 + + + Charlotte + 60 + 18000 + 5 + +""" + + +NEW_ROW = """ + 1 + 1 + 60 + Elizabeth Bennet +""" + + +UPDATED_ROW = """ + http://spreadsheets.google.com/feeds/list/k/w/private/full/rowId + 2006-11-17T18:23:45.173Z + + Bingley + Hours: 10, Items: 2, IPM: 0.0033 + + + Bingley + 20 + 4 + 0.0033 +""" + + +CELLS_FEED = """ + + http://spreadsheets.google.com/feeds/cells/key/worksheetId/private/full + + 2006-11-17T18:27:32.543Z + Sheet1 + + + + + + Fitzwilliam Darcy + fitz@gmail.com + + 1 + 36 + 100 + 20 + + + http://spreadsheets.google.com/feeds/cells/k/w/private/full/R1C1 + + 2006-11-17T18:27:32.543Z + + A1 + Name + + + Name + + + + http://spreadsheets.google.com/feeds/cells/k/w/private/full/R1C2 + + 2006-11-17T18:27:32.543Z + + B1 + Hours + + + Hours + + + + http://spreadsheets.google.com/feeds/cells/k/w/private/full/R9C4 + + 2006-11-17T18:27:32.543Z + + D9 + 5 + + + 5 + +""" + + +BATCH_CELLS = """ + + http://spreadsheets.google.com/feeds/cells/key/worksheetId/private/full + + + A1 + + + http://spreadsheets.google.com/feeds/cells/k/w/private/full/cellId + + + + + + A2 + + A2 + + http://spreadsheets.google.com/feeds/cells/k/w/private/full/cellId + + + + +""" + + +class SpreadsheetEntryTest(unittest.TestCase): + + def setUp(self): + self.spreadsheet = atom.core.parse( + SPREADSHEET, gdata.spreadsheets.data.Spreadsheet) + + def test_check_parsing(self): + self.assertEqual(self.spreadsheet.etag, '"BxAUSQUJRCp7ImBq"') + self.assertEqual(self.spreadsheet.id.text, + 'http://spreadsheets.google.com/feeds/spreadsheets' + '/private/full/key') + self.assertEqual(self.spreadsheet.updated.text, + '2006-11-17T18:24:18.231Z') + self.assertEqual(self.spreadsheet.find_worksheets_feed(), + 'http://spreadsheets.google.com/feeds/worksheets' + '/key/private/full') + self.assertEqual(self.spreadsheet.find_self_link(), + 'http://spreadsheets.google.com/feeds/spreadsheets' + '/private/full/key') + + +class ListEntryTest(unittest.TestCase): + + def test_get_and_set_column_value(self): + row = atom.core.parse(NEW_ROW, gdata.spreadsheets.data.ListEntry) + row.set_value('hours', '3') + row.set_value('name', 'Lizzy') + self.assertEqual(row.get_value('hours'), '3') + self.assertEqual(row.get_value('ipm'), '1') + self.assertEqual(row.get_value('items'), '60') + self.assertEqual(row.get_value('name'), 'Lizzy') + self.assertEqual(row.get_value('x'), None) + row.set_value('x', 'Test') + self.assertEqual(row.get_value('x'), 'Test') + row_xml = str(row) + self.assert_(row_xml.find(':x') > -1) + self.assert_(row_xml.find('>Test -1) + self.assert_(row_xml.find(':hours') > -1) + self.assert_(row_xml.find('>3 -1) + self.assert_(row_xml.find(':ipm') > -1) + self.assert_(row_xml.find('>1 -1) + self.assert_(row_xml.find(':items') > -1) + self.assert_(row_xml.find('>60 -1) + self.assert_(row_xml.find(':name') > -1) + self.assert_(row_xml.find('>Lizzy -1) + self.assertEqual(row_xml.find(':zzz'), -1) + self.assertEqual(row_xml.find('>foo