Broke out the moderator and buzz samples into their own directories. Also added more functionality to the buzz sample.

This commit is contained in:
jcgregorio@google.com
2010-10-07 19:34:54 -04:00
parent 05cd4f5fa2
commit e3c8b6d2fd
6 changed files with 67 additions and 59 deletions

View File

@@ -99,7 +99,7 @@ class JsonModel(object):
return (headers, path_params, query, simplejson.dumps(model))
def build_query(self, params):
params.update({'alt': 'json', 'prettyprint': 'true'})
params.update({'alt': 'json'})
astuples = []
for key, value in params.iteritems():
if getattr(value, 'encode', False) and callable(value.encode):

66
samples/buzz/buzz.py Normal file
View File

@@ -0,0 +1,66 @@
#!/usr/bin/python2.4
# -*- coding: utf-8 -*-
#
# Copyright 2010 Google Inc. All Rights Reserved.
"""Simple command-line example for Buzz.
Command-line application that retrieves the users
latest content and then adds a new entry.
"""
__author__ = 'jcgregorio@google.com (Joe Gregorio)'
from apiclient.discovery import build
import httplib2
import pickle
import pprint
# Uncomment the next line to get very detailed logging
# httplib2.debuglevel = 4
def main():
f = open("buzz.dat", "r")
credentials = pickle.loads(f.read())
f.close()
http = httplib2.Http()
http = credentials.authorize(http)
p = build("buzz", "v1", http=http)
activities = p.activities()
# Retrieve the first two activities
activitylist = activities.list(max_results='2', scope='@self', userId='@me').execute()
print "Retrieved the first two activities"
# Retrieve the next two activities
activitylist = activities.list_next(activitylist).execute()
print "Retrieved the next two activities"
# Add a new activity
new_activity_body = {
'title': 'Testing insert',
'object': {
'content': u'Just a short note to show that insert is working. ☄',
'type': 'note'}
}
activity = activities.insert(userId='@me', body=new_activity_body).execute()
print "Added a new activity"
activitylist = activities.list(max_results='2', scope='@self', userId='@me').execute()
# Add a comment to that activity
comment_body = {
"content": "This is a comment"
}
item = activitylist['items'][0]
comment = p.comments().insert(
userId=item['actor']['id'], postId=item['id'], body=comment_body
).execute()
print 'Added a comment to the new activity'
pprint.pprint(comment)
if __name__ == '__main__':
main()

View File

@@ -22,11 +22,6 @@ other example apps in the same directory.
__author__ = 'jcgregorio@google.com (Joe Gregorio)'
# Enable this sample to be run from the top-level directory
import os
import sys
sys.path.insert(0, os.getcwd())
from apiclient.discovery import build
from apiclient.oauth import FlowThreeLegged

View File

@@ -1,53 +0,0 @@
#!/usr/bin/python2.4
# -*- coding: utf-8 -*-
#
# Copyright 2010 Google Inc. All Rights Reserved.
"""Simple command-line example for Buzz.
Command-line application that retrieves the users
latest content and then adds a new entry.
"""
__author__ = 'jcgregorio@google.com (Joe Gregorio)'
# Enable this sample to be run from the top-level directory
import os
import sys
sys.path.insert(0, os.getcwd())
from apiclient.discovery import build
import httplib2
# httplib2.debuglevel = 4
import pickle
import pprint
def main():
f = open("buzz.dat", "r")
credentials = pickle.loads(f.read())
f.close()
http = httplib2.Http()
http = credentials.authorize(http)
p = build("buzz", "v1", http=http)
activities = p.activities()
activitylist = activities.list(max_results='2', scope='@self', userId='@me').execute()
print activitylist['items'][0]['title']
activitylist = activities.list_next(activitylist).execute()
print activitylist['items'][0]['title']
activity = activities.insert(userId='@me', body={
'title': 'Testing insert',
'object': {
'content': u'Just a short note to show that insert is working. ☄',
'type': 'note'}
}
).execute()
pprint.pprint(activity)
print
print 'Just created: ', activity['links']['alternate'][0]['href']
if __name__ == '__main__':
main()