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

Unified Diff: appengine_apps/chromium_status/appengine_module/chromium_status/static_blobs_inline.py

Issue 778533003: Moved chromium_status to appengine/ (Closed) Base URL: https://chromium.googlesource.com/infra/infra.git@master
Patch Set: Created 6 years 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: appengine_apps/chromium_status/appengine_module/chromium_status/static_blobs_inline.py
diff --git a/appengine_apps/chromium_status/appengine_module/chromium_status/static_blobs_inline.py b/appengine_apps/chromium_status/appengine_module/chromium_status/static_blobs_inline.py
deleted file mode 100644
index cdd50c7f391141a360977e309c810f72e70c6744..0000000000000000000000000000000000000000
--- a/appengine_apps/chromium_status/appengine_module/chromium_status/static_blobs_inline.py
+++ /dev/null
@@ -1,99 +0,0 @@
-# Copyright (c) 2012 The Chromium Authors. All rights reserved.
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-"""Serve static images."""
-
-import logging
-import urllib
-
-from google.appengine.api import mail
-from google.appengine.api import memcache
-from google.appengine.ext import db
-from google.appengine.ext import webapp
-
-from appengine_module.chromium_status import base_page
-
-
-VALID_RESOURCES = [ 'favicon.ico', 'logo.png' ]
-
-
-# pylint: disable=W0221
-
-
-class StaticBlobInlineFile(db.Model):
- """A reference to a static blob to serve."""
- blob = db.BlobProperty(required=True)
- filename = db.StringProperty(required=True)
- original_filename = db.StringProperty(required=True)
- size = db.IntegerProperty(required=True)
- creation = db.DateTimeProperty(required=True, auto_now=True)
-
-
-class UploadHandler(webapp.RequestHandler):
- """Uploads a static file."""
- def post(self, resource):
- resource = str(urllib.unquote(resource))
- if not resource in VALID_RESOURCES:
- logging.warning('Unknown resource "%s"' % resource)
- self.error(404)
- upload_file = self.request.POST['file']
- blob_data = upload_file.value
- blob = StaticBlobInlineFile.gql('WHERE filename = :1', resource).get()
- if blob:
- blob.blob = blob_data
- blob.size = len(blob_data)
- blob.original_filename = upload_file.filename
- else:
- blob = StaticBlobInlineFile(blob=blob_data, filename=resource,
- original_filename=upload_file.filename, size=len(blob_data))
- blob.put()
- memcache.set(resource, blob_data, namespace='static_blobs')
- self.redirect('/static_blobs/' + resource)
-
-
-class ServeHandler(webapp.RequestHandler):
- """Serves a static file."""
- def get(self, resource):
- filename = str(urllib.unquote(resource))
- if not filename in VALID_RESOURCES:
- logging.warning('Unknown resource "%s"' % resource)
- self.error(404)
- blob_data = memcache.get(filename, namespace='static_blobs')
- if blob_data is None:
- blob = StaticBlobInlineFile.gql('WHERE filename = :1', filename).get()
- if blob:
- blob_data = blob.blob
- else:
- # Cache negative.
- blob_data = ''
- memcache.set(filename, blob_data, namespace='static_blobs')
- if blob_data:
- # Access to a protected member XXX of a client class
- # pylint: disable=W0212
- self.response.headers['Content-Type'] = mail._GetMimeType(filename)
- self.response.out.write(blob_data)
- else:
- self.redirect('/static/' + resource)
-
-
-class FormPage(base_page.BasePage):
- """A simple form to upload a static blob."""
- def get(self, resource):
- resource = str(urllib.unquote(resource))
- if not resource in VALID_RESOURCES:
- logging.warning('Unknown resource "%s"' % resource)
- self.error(404)
- return
- template_values = self.InitializeTemplate(self.APP_NAME)
- template_values['upload_url'] = (
- '/restricted/static_blobs/upload_internal/' + resource)
- self.DisplayTemplate('static_blob_upload_form.html', template_values)
-
-
-class ListPage(base_page.BasePage):
- """List the uploaded blobs."""
- def get(self):
- template_values = self.InitializeTemplate(self.APP_NAME + ' static files')
- template_values['blobs'] = StaticBlobInlineFile.all()
- self.DisplayTemplate('static_blobs_inline_list.html', template_values)

Powered by Google App Engine
This is Rietveld 408576698