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

Unified Diff: chrome/common/extensions/docs/server2/appengine_wrappers.py

Issue 10829348: Extensions Docs Server: Large performance increase (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: server is fast Created 8 years, 4 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: chrome/common/extensions/docs/server2/appengine_wrappers.py
diff --git a/chrome/common/extensions/docs/server2/appengine_wrappers.py b/chrome/common/extensions/docs/server2/appengine_wrappers.py
index 9cbdbd435f990f4e50d04246b40647f4916fe58a..4e08f7949978f652a6a5fc69d483bbcf689ef7ec 100644
--- a/chrome/common/extensions/docs/server2/appengine_wrappers.py
+++ b/chrome/common/extensions/docs/server2/appengine_wrappers.py
@@ -15,6 +15,8 @@ try:
except ImportError:
import re
+ from future import Future
+
FAKE_URL_FETCHER_CONFIGURATION = None
def ConfigureFakeUrlFetch(configuration):
@@ -36,6 +38,13 @@ except ImportError:
return v
return None
+ class _RPC(object):
+ def __init__(self, result=None):
+ self.result = result
+
+ def get_result(self):
+ return self.result
+
class FakeUrlFetch(object):
"""A fake urlfetch module that uses the current
|FAKE_URL_FETCHER_CONFIGURATION| to map urls to fake fetchers.
@@ -46,21 +55,11 @@ except ImportError:
self.headers = { 'content-type': 'none' }
self.status_code = 200
- class _RPC(object):
- def __init__(self):
- self.result = None
-
- def wait(self):
- pass
-
- def get_result(self):
- return self.result
-
def fetch(self, url):
return self._Response(_GetConfiguration(url).fetch(url))
def create_rpc(self):
- return self._RPC()
+ return _RPC()
def make_fetch_call(self, rpc, url):
rpc.result = self.fetch(url)
@@ -74,30 +73,30 @@ except ImportError:
files = NotImplemented()
class InMemoryMemcache(object):
- """A memcache that stores items in memory instead of using the memcache
- module.
+ """A fake memcache that does nothing. AppEngineMemcache already stores items
+ in local memory.
"""
- def __init__(self):
- self._cache = {}
+ class Client(object):
+ def set_multi_async(self, mapping, namespace='', time=300):
not at google - send to devlin 2012/08/20 05:27:10 300 looks especially arbitrary here. Make it 0 or
cduvall 2012/08/20 21:28:09 Done.
+ return
+
+ def get_multi_async(self, keys, namespace='', time=300):
+ return _RPC(result=dict((k, None) for k in keys))
- def set(self, key, value, namespace, time=60):
- if namespace not in self._cache:
- self._cache[namespace] = {}
- self._cache[namespace][key] = value
+ def set(self, key, value, namespace='', time=300):
+ return
- def get(self, key, namespace):
- if namespace not in self._cache:
- return None
- return self._cache[namespace].get(key, None)
+ def get(self, key, namespace='', time=300):
+ return None
def delete(self, key, namespace):
- if namespace in self._cache:
- self._cache[namespace].pop(key)
+ return
memcache = InMemoryMemcache()
- # A fake webapp.RequestHandler class for Handler to extend.
class webapp(object):
class RequestHandler(object):
+ """A fake webapp.RequestHandler class for Handler to extend.
+ """
def __init__(self, request, response):
self.request = request
self.response = response

Powered by Google App Engine
This is Rietveld 408576698