Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(280)

Unified Diff: reviewbot/third_party/google-api-python-client/oauth2client/file.py

Issue 23531026: Remove the review bot app. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/tools/
Patch Set: Created 7 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: reviewbot/third_party/google-api-python-client/oauth2client/file.py
===================================================================
--- reviewbot/third_party/google-api-python-client/oauth2client/file.py (revision 221173)
+++ reviewbot/third_party/google-api-python-client/oauth2client/file.py (working copy)
@@ -1,124 +0,0 @@
-# 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.
-
-"""Utilities for OAuth.
-
-Utilities for making it easier to work with OAuth 2.0
-credentials.
-"""
-
-__author__ = 'jcgregorio@google.com (Joe Gregorio)'
-
-import os
-import stat
-import threading
-
-from anyjson import simplejson
-from client import Storage as BaseStorage
-from client import Credentials
-
-
-class CredentialsFileSymbolicLinkError(Exception):
- """Credentials files must not be symbolic links."""
-
-
-class Storage(BaseStorage):
- """Store and retrieve a single credential to and from a file."""
-
- def __init__(self, filename):
- self._filename = filename
- self._lock = threading.Lock()
-
- def _validate_file(self):
- if os.path.islink(self._filename):
- raise CredentialsFileSymbolicLinkError(
- 'File: %s is a symbolic link.' % self._filename)
-
- def acquire_lock(self):
- """Acquires any lock necessary to access this Storage.
-
- This lock is not reentrant."""
- self._lock.acquire()
-
- def release_lock(self):
- """Release the Storage lock.
-
- Trying to release a lock that isn't held will result in a
- RuntimeError.
- """
- self._lock.release()
-
- def locked_get(self):
- """Retrieve Credential from file.
-
- Returns:
- oauth2client.client.Credentials
-
- Raises:
- CredentialsFileSymbolicLinkError if the file is a symbolic link.
- """
- credentials = None
- self._validate_file()
- try:
- f = open(self._filename, 'rb')
- content = f.read()
- f.close()
- except IOError:
- return credentials
-
- try:
- credentials = Credentials.new_from_json(content)
- credentials.set_store(self)
- except ValueError:
- pass
-
- return credentials
-
- def _create_file_if_needed(self):
- """Create an empty file if necessary.
-
- This method will not initialize the file. Instead it implements a
- simple version of "touch" to ensure the file has been created.
- """
- if not os.path.exists(self._filename):
- old_umask = os.umask(0177)
- try:
- open(self._filename, 'a+b').close()
- finally:
- os.umask(old_umask)
-
- def locked_put(self, credentials):
- """Write Credentials to file.
-
- Args:
- credentials: Credentials, the credentials to store.
-
- Raises:
- CredentialsFileSymbolicLinkError if the file is a symbolic link.
- """
-
- self._create_file_if_needed()
- self._validate_file()
- f = open(self._filename, 'wb')
- f.write(credentials.to_json())
- f.close()
-
- def locked_delete(self):
- """Delete Credentials file.
-
- Args:
- credentials: Credentials, the credentials to store.
- """
-
- os.unlink(self._filename)

Powered by Google App Engine
This is Rietveld 408576698