[mq]: oauth2
diff --git a/oauth2client/file.py b/oauth2client/file.py
new file mode 100644
index 0000000..e0e3997
--- /dev/null
+++ b/oauth2client/file.py
@@ -0,0 +1,42 @@
+# Copyright 2010 Google Inc. All Rights Reserved.
+
+"""Utilities for OAuth.
+
+Utilities for making it easier to work with OAuth 2.0
+credentials.
+"""
+
+__author__ = 'jcgregorio@google.com (Joe Gregorio)'
+
+import pickle
+
+
+class Storage(object):
+  """Store and retrieve a single credential to and from a file."""
+
+  def __init__(self, filename):
+    self.filename = filename
+
+  def get(self):
+    """Retrieve Credential from file.
+
+    Returns:
+      apiclient.oauth.Credentials
+    """
+    f = open(self.filename, 'r')
+    credentials = pickle.loads(f.read())
+    f.close()
+    credentials.set_store(self.put)
+    return credentials
+
+  def put(self, credentials):
+    """Write a pickled Credentials to file.
+
+    Args:
+      credentials: Credentials, the credentials to store.
+    """
+    f = open(self.filename, 'w')
+    f.write(pickle.dumps(credentials))
+    f.close()
+
+