Removed buzz_gae_client.py and it's associated tests.
Renamed simple_buzz_wrapper.py and it's tests to simple_wrapper.py.
SimpleWrapper now uses the Credential class.
Added oauth_required decorator for use on AppEngine. This aims to
greatly simplify OAuth use with this library. At the moment it only
supports Buzz.
oacurl.py now uses spaces for indentation rather than tabs.
diff --git a/contrib/buzz/simple_wrapper.py b/contrib/buzz/simple_wrapper.py
new file mode 100644
index 0000000..eb12f85
--- /dev/null
+++ b/contrib/buzz/simple_wrapper.py
@@ -0,0 +1,54 @@
+#!/usr/bin/python2.4
+#
+# Copyright 2010 Google Inc. All Rights Reserved.
+
+__author__ = 'ade@google.com (Ade Oshineye)'
+
+import apiclient.discovery
+import httplib2
+import logging
+
+class SimpleWrapper(object):
+  "Simple client that exposes the bare minimum set of common Buzz operations"
+
+  def __init__(self, api_key=None, credentials=None):
+    if credentials:
+      logging.debug('Using api_client with credentials')
+      http = httplib2.Http()
+      http = credentials.authorize(http)
+      self.api_client = apiclient.discovery.build('buzz', 'v1', http=http, developerKey=api_key)
+    else:
+      logging.debug('Using api_client that doesn\'t have credentials')
+      self.api_client = apiclient.discovery.build('buzz', 'v1', developerKey=api_key)
+
+  def search(self, query, user_token=None, max_results=10):
+    if query is None or query.strip() is '':
+      return None
+
+    json = self.api_client.activities().search(q=query, max_results=max_results).execute()
+    if json.has_key('items'):
+      return json['items']
+    return []
+
+  def post(self, message_body, user_id='@me'):
+    if message_body is None or message_body.strip() is '':
+      return None
+
+    activities = self.api_client.activities()
+    logging.info('Retrieved activities for: %s' % user_id)
+    activity = activities.insert(userId=user_id, body={
+      'data' : {
+        'title': message_body,
+        'object': {
+          'content': message_body,
+          'type': 'note'}
+       }
+    }
+                                 ).execute()
+    url = activity['links']['alternate'][0]['href']
+    logging.info('Just created: %s' % url)
+    return url
+
+  def get_profile(self, user_id='@me'):
+    user_profile_data = self.api_client.people().get(userId=user_id).execute()
+    return user_profile_data