Skip to content

Instantly share code, notes, and snippets.

@KazuyaHayashi
Created February 6, 2013 02:36
Show Gist options
  • Save KazuyaHayashi/4719757 to your computer and use it in GitHub Desktop.
Save KazuyaHayashi/4719757 to your computer and use it in GitHub Desktop.
utility for google api XML feed.
import functools
import logging
from django.utils import simplejson
def get_json_from_feed(user_feed):
"""Constructs and returns a JSON object from the given feed object
Args:
user_feed: A gdata.apps.UserFeed object
Returns:
A JSON object containing the first and last names of the domain users
"""
json = []
for entry in user_feed.entry:
json.append({'given_name': entry.name.given_name,
'family_name': entry.name.family_name,
'username': entry.login.user_name,
'admin': entry.login.admin,
'suspended':entry.login.suspended,
})
return simplejson.dumps(json)
def overloaded_post(post):
@functools.wraps(post)
def wrapper(*args, **kwds):
self = args[0]
_method = self.request.get('_method')
if _method.lower() == "delete":
logging.debug("Overloaded post calling self.delete(%s)", args[1:])
return self.delete(*(args[1:]), **kwds)
elif _method.lower() == "put":
return self.put(*(args[1:]), **kwds)
elif _method.lower() == "head":
return self.head(*(args[1:]), **kwds)
elif _method.lower() == "status":
return self.head(*(args[1:]), **kwds)
else:
return post(*args, **kwds)
return wrapper
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment