Index: third_party/twisted_8_1/twisted/web/woven/interfaces.py |
diff --git a/third_party/twisted_8_1/twisted/web/woven/interfaces.py b/third_party/twisted_8_1/twisted/web/woven/interfaces.py |
deleted file mode 100644 |
index 3c2c2ad0e08fc7cf380bf44cda146bd2386ca2d5..0000000000000000000000000000000000000000 |
--- a/third_party/twisted_8_1/twisted/web/woven/interfaces.py |
+++ /dev/null |
@@ -1,198 +0,0 @@ |
-# -*- test-case-name: twisted.web.test.test_woven -*- |
- |
-__version__ = "$Revision: 1.13 $"[11:-2] |
- |
-from zope.interface import Interface |
- |
-class IModel(Interface): |
- """A MVC Model.""" |
- def addView(view): |
- """Add a view for the model to keep track of. |
- """ |
- |
- def removeView(view): |
- """Remove a view that the model no longer should keep track of. |
- """ |
- |
- def notify(changed=None): |
- """Notify all views that something was changed on me. |
- Passing a dictionary of {'attribute': 'new value'} in changed |
- will pass this dictionary to the view for increased performance. |
- If you don't want to do this, don't, and just use the traditional |
- MVC paradigm of querying the model for things you're interested |
- in. |
- """ |
- |
- def getData(): |
- """Return the raw data contained by this Model object, if it is a |
- wrapper. If not, return self. |
- """ |
- |
- def setData(request, data): |
- """Set the raw data referenced by this Model object, if it is a |
- wrapper. This is done by telling our Parent model to setSubmodel |
- the new data. If this object is not a wrapper, keep the data |
- around and return it for subsequent getData calls. |
- """ |
- |
- def lookupSubmodel(request, submodelPath): |
- """Return an IModel implementor for the given submodel path |
- string. This path may be any number of elements separated |
- by /. The default implementation splits on "/" and calls |
- getSubmodel until the path is exhausted. You will not normally |
- need to override this behavior. |
- """ |
- |
- def getSubmodel(request, submodelName): |
- """Return an IModel implementor for the submodel named |
- "submodelName". If this object contains simple data types, |
- they can be adapted to IModel using |
- model.adaptToIModel(m, parent, name) before returning. |
- """ |
- |
- def setSubmodel(request, submodelName, data): |
- """Set the given data as a submodel of this model. The data |
- need not implement IModel, since getSubmodel should adapt |
- the data to IModel before returning it. |
- """ |
- |
- |
-class IView(Interface): |
- """A MVC View""" |
- def __init__(model, controller=None): |
- """A view must be told what its model is, and may be told what its |
- controller is, but can also look up its controller if none specified. |
- """ |
- |
- def modelChanged(changed): |
- """Dispatch changed messages to any update_* methods which |
- may have been defined, then pass the update notification on |
- to the controller. |
- """ |
- |
- def controllerFactory(): |
- """Hook for subclasses to customize the controller that is associated |
- with the model associated with this view. |
- |
- Default behavior: Look up a component that implements IController |
- for the self.model instance. |
- """ |
- |
- def setController(controller): |
- """Set the controller that this view is related to.""" |
- |
- def importViewLibrary(moduleOrObject): |
- """Import the given object or module into this View's view namespace |
- stack. If the given object or module has a getSubview function or |
- method, it will be called when a node has a view="foo" attribute. |
- If no getSubview method is defined, a default one will be provided |
- which looks for the literal name in the namespace. |
- """ |
- |
- def getSubview(request, node, model, viewName): |
- """Look for a view named "viewName" to handle the node "node". |
- When a node <div view="foo" /> is present in the template, this |
- method will be called with viewName set to "foo". |
- |
- Return None if this View doesn't want to provide a Subview for |
- the given name. |
- """ |
- |
- def setSubviewFactory(name, factory, setup=None): |
- """Set the callable "factory", which takes a model and should |
- return a Widget, to be called by the default implementation of |
- getSubview when the viewName "name" is present in the template. |
- |
- This would generally be used like this: |
- |
- view.setSubviewFactory("foo", MyFancyWidgetClass) |
- |
- This is equivalent to:: |
- |
- def wvfactory_foo(self, request, node, m): |
- return MyFancyWidgetClass(m) |
- |
- Which will cause an instance of MyFancyWidgetClass to be |
- instanciated when template node <div view="foo" /> is encountered. |
- |
- If setup is passed, it will be passed to new instances returned |
- from this factory as a setup method. The setup method is called |
- each time the Widget is generated. Setup methods take (request, |
- widget, model) as arguments. |
- |
- This is equivalent to:: |
- |
- def wvupdate_foo(self, request, widget, model): |
- # whatever you want |
- """ |
- |
- def __adapt__(adaptable, default): |
- if hasattr(adaptable, 'original'): |
- return IView(adaptable.original, default) |
- return default |
- |
- |
-class IController(Interface): |
- """A MVC Controller""" |
- def setView(view): |
- """Set the view that this controller is related to. |
- """ |
- |
- def importControllerLibrary(moduleOrObject): |
- """Import the given object or module into this Controllers's |
- controller namespace stack. If the given object or module has a |
- getSubcontroller function or method, it will be called when a node |
- has a controller="foo" attribute. If no getSubcontroller method is |
- defined, a default one will be provided which looks for the literal |
- name in the namespace. |
- """ |
- |
- def getSubcontroller(request, node, model, controllerName): |
- """Look for a controller named "controllerName" to handle the node |
- "node". When a node <div controller="foo" /> is present in the |
- template, this method will be called with controllerName set to "foo". |
- |
- Return None if this Controller doesn't want to provide a Subcontroller |
- for the given name. |
- """ |
- |
- def setSubcontrollerFactory(name, factory): |
- """Set the callable "factory", which takes a model and should |
- return an InputHandler, to be called by the default implementation of |
- getSubview when the controllerName "name" is present in the template. |
- |
- This would generally be used like this:: |
- |
- view.setSubcontrollerFactory("foo", MyFancyInputHandlerClass) |
- |
- This is equivalent to:: |
- |
- def wcfactory_foo(self, request, node, m): |
- return MyFancyInputHandlerClass(m) |
- |
- Which will cause an instance of MyFancyInputHandlerClass to be |
- instanciated when template node <div controller="foo" /> is |
- encountered. |
- """ |
- |
- def __adapt__(adaptable, default): |
- if hasattr(adaptable, 'original'): |
- return IController(adaptable.original, default) |
- return default |
- |
- |
-class IWovenLivePage(Interface): |
- def getCurrentPage(): |
- """Return the current page object contained in this session. |
- """ |
- |
- def setCurrentPage(page): |
- """Set the current page object contained in this session. |
- """ |
- |
- def sendJavaScript(js): |
- """Send "js" to the live page's persistent output conduit for |
- execution in the browser. If there is no conduit connected yet, |
- save the js and write it as soon as the output conduit is |
- connected. |
- """ |