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

Unified Diff: third_party/twisted_8_1/twisted/web/woven/tapestry.py

Issue 12261012: Remove third_party/twisted_8_1 (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/tools/build
Patch Set: Created 7 years, 10 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: third_party/twisted_8_1/twisted/web/woven/tapestry.py
diff --git a/third_party/twisted_8_1/twisted/web/woven/tapestry.py b/third_party/twisted_8_1/twisted/web/woven/tapestry.py
deleted file mode 100644
index 11b6042cadf866fd30c0bc098ebda81eecba2e6f..0000000000000000000000000000000000000000
--- a/third_party/twisted_8_1/twisted/web/woven/tapestry.py
+++ /dev/null
@@ -1,170 +0,0 @@
-
-"""
-Woven object collections.
-
-THIS MODULE IS HIGHLY EXPERIMENTAL AND MAY BE DEPRECATED SOON.
-"""
-
-from __future__ import nested_scopes
-
-__version__ = "$Revision: 1.13 $"[11:-2]
-
-
-import warnings
-warnings.warn("The tapestry module is deprecated. Use page instead.", DeprecationWarning, 1)
-
-# System Imports
-import sys
-import os
-
-# Twisted Imports
-
-from twisted.internet.defer import Deferred
-
-from twisted.web.resource import Resource, IResource
-from twisted.web.static import redirectTo, addSlash, File, Data
-from twisted.web.server import NOT_DONE_YET
-from twisted.web import util
-
-from twisted.python.reflect import qual
-
-# Sibling Imports
-from twisted.web.woven.view import View
-
-_ChildJuggler = util.DeferredResource
-
-class ModelLoader(Resource):
- """Resource for loading models. (see loadModel)
- """
- def __init__(self, parent, templateFile=None):
- Resource.__init__(self)
- self.parent = parent
- self.templateFile = templateFile
-
- def modelClass(self, other):
- return other
-
- def getChild(self, path, request):
- d = self.loadModel(path, request)
- templateFile = (self.templateFile or self.__class__.__name__+'.html')
- d.addCallback(
- lambda result: self.parent.makeView(self.modelClass(result),
- templateFile, 1))
- return util.DeferredResource(d)
-
- def loadModelNow(self, path, request):
- """Override this rather than loadModel if your model-loading is
- synchronous.
- """
- raise NotImplementedError("%s.loadModelNow" % (reflect.qual(self.__class__)))
-
- def loadModel(self, path, request):
- """Load a model, for the given path and request.
-
- @rtype: L{Deferred}
- """
- from twisted.internet.defer import execute
- return execute(self.loadModelNow, path, request)
-
-
-from twisted.web import microdom
-from twisted.web import domhelpers
-
-class TapestryView(View):
- tapestry = None
- parentCount = 0
- def lookupTemplate(self, request):
- fullFile = os.path.join(self.templateDirectory, self.templateFile)
- document = microdom.parse(open(fullFile))
- if self.tapestry:
- return self.tapestry.templateMutate(document, self.parentCount)
- return document
-
-class Tapestry(Resource):
- """
- I am a top-level aggregation of Woven objects: a full `site' or
- `application'.
- """
- viewFactory = TapestryView
- def __init__(self, templateDirectory, viewFactory=None, metaTemplate=None):
- """
- Create a tapestry with a specified template directory.
- """
- Resource.__init__(self)
- self.templateDirectory = templateDirectory
- if viewFactory is not None:
- self.viewFactory = viewFactory
- if metaTemplate:
- self.metaTemplate = microdom.parse(open(
- os.path.join(templateDirectory, metaTemplate)))
- else:
- self.metaTemplate = None
-
- def templateMutate(self, document, parentCount=0):
- if self.metaTemplate:
- newDoc = self.metaTemplate.cloneNode(1)
- if parentCount:
- dotdot = parentCount * '../'
- for ddname in 'href', 'src', 'action':
- for node in domhelpers.findElementsWithAttribute(newDoc, ddname):
- node.setAttribute(ddname, dotdot + node.getAttribute(ddname))
- ttl = domhelpers.findNodesNamed(newDoc, "title")[0]
- ttl2 = domhelpers.findNodesNamed(document, "title")[0]
- ttl.childNodes[:] = []
- for n in ttl2.childNodes:
- ttl.appendChild(n)
- body = domhelpers.findElementsWithAttribute(newDoc, "class", "__BODY__")[0]
- body2 = domhelpers.findNodesNamed(document, "body")[0]
- ndx = body.parentNode.childNodes.index(body)
- body.parentNode.childNodes[ndx:ndx+1] = body2.childNodes
- for n in body2.childNodes:
- n.parentNode = body.parentNode
- f = open("garbage.html", "wb")
- f.write(newDoc.toprettyxml())
- return newDoc
- return document
-
- def makeView(self, model, name, parentCount=0):
- v = self.viewFactory(model, name)
- v.parentCount = parentCount
- v.templateDirectory = self.templateDirectory
- v.tapestry = self
- v.importViewLibrary(self)
- return v
-
- def getSubview(self, request, node, model, viewName):
- mod = sys.modules[self.__class__.__module__]
- # print "I'm getting a subview", mod, viewName
-
- # try just the name
- vm = getattr(mod, viewName, None)
- if vm:
- return vm(model)
-
- # try the name + a V
- vn2 = "V"+viewName.capitalize()
- vm = getattr(mod, vn2, None)
- if vm:
- return vm(model)
-
- vm = getattr(self, 'wvfactory_'+viewName, None)
- if vm:
- return vm(request, node, model)
-
- def render(self, request):
- return redirectTo(addSlash(request), request)
-
- def getChild(self, path, request):
- if path == '': path = 'index'
- path = path.replace(".","_")
- cm = getattr(self, "wchild_"+path, None)
- if cm:
- p = cm(request)
- if isinstance(p, Deferred):
- return util.DeferredResource(p)
- adapter = IResource(p, None)
- if adapter is not None:
- return adapter
- # maybe we want direct support for ModelLoader?
- # cl = getattr(self, "wload_"+path, None) #???
- return Resource.getChild(self, path, request)
« no previous file with comments | « third_party/twisted_8_1/twisted/web/woven/simpleguard.py ('k') | third_party/twisted_8_1/twisted/web/woven/template.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698