Package twisted :: Package web :: Module vhost :: Class VHostMonsterResource

[show private | hide private]
[frames | no frames]

## Class VHostMonsterResource

    Collection --+
                 |
       Constrained --+
                     |
      ConfigCollection --+
                         |
                  Resource --+
                             |
                            VHostMonsterResource

Use this to be able to record the hostname and method (http vs. https) in the URL without disturbing your web site. If you put this resource in a URL http://foo.com/bar then requests to http://foo.com/bar/http/baz.com/something will be equivalent to http://foo.com/something, except that the hostname the request will appear to be accessing will be "baz.com". So if "baz.com" is redirecting all requests for to foo.com, while foo.com is inaccessible from the outside, then redirect and url generation will work correctly

Method Summary
| ``__init__`(self)` Initialize. (inherited from `Resource`)
| ``delEntity`(self, name)` Remove a static reference for 'name'. (inherited from `Resource`)
| ``entityConstraint`(self, entity)` A method that determines whether an entity may be added to me. (inherited from `ConfigCollection`)
| ``getChild`(self, path, request)` Retrieve a 'child' resource from me.
| ``getChildForRequest`(self, request)` (internal) Get a child of mine dependant on a particular request. (inherited from `Resource`)
| ``getChildWithDefault`(self, path, request)` Retrieve a static or dynamically generated child resource from me. (inherited from `Resource`)
| ``getDynamicEntity`(self, name, request)` Subclass this to generate an entity on demand. (inherited from `Resource`)
| ``getEntity`(self, name, request)` Retrieve an entity from me. (inherited from `Collection`)
| `getEntityType(self)` (inherited from `ConfigCollection`)
| `getNameType(self)` (inherited from `ConfigCollection`)
| ``getStaticEntity`(self, name)` Get an entity that was added to me using putEntity. (inherited from `Resource`)
| ``listDynamicEntities`(self, request)` A list of all name, entity that I can generate on demand. (inherited from `Resource`)
| ``listDynamicNames`(self)` Retrieve a list of the names of entities that I store references to. (inherited from `Resource`)
| `listEntities(self)` (inherited from `Resource`)
| `listNames(self)` (inherited from `Resource`)
| ``listStaticEntities`(self)` Retrieve a list of all name, entity pairs that I store references to. (inherited from `Resource`)
| ``listStaticNames`(self)` Retrieve a list of the names of entities that I store references to. (inherited from `Resource`)
| ``nameConstraint`(self, name)` A method that determines whether an entity may be added to me with a given name. (inherited from `Constrained`)
| ``putChild`(self, path, child)` Register a static child. (inherited from `Resource`)
| ``putEntity`(self, name, entity)` Store an entity if it meets both constraints. (inherited from `Constrained`)
| `reallyPutEntity(self, name, entity)` (inherited from `Resource`)
| ``removeEntity`(self, name, request)` Remove an entity for 'name', based on the content of 'request'. (inherited from `Collection`)
| ``render`(self, request)` Render a given resource. (inherited from `Resource`)
| ``storeEntity`(self, name, request)` Store an entity for 'name', based on the content of 'request'. (inherited from `Collection`)

Method Details

### getChild(self, path, request)

Retrieve a 'child' resource from me.

Implement this to create dynamic resource generation -- resources which are always available may be registered with self.putChild().

This will not be called if the class-level variable 'isLeaf' is set in your subclass; instead, the 'postpath' attribute of the request will be left as a list of the remaining path elements.

For example, the URL /foo/bar/baz will normally be:

     | site.resource.getChild('foo').getChild('bar').getChild('baz').

However, if the resource returned by 'bar' has isLeaf set to true, then the getChild call will never be made on it.

  Parameters:
    `path` - a string, describing the child
    `request` - a twisted.web.server.Request specifying meta-information about the request that is being made for this child.
  Overrides:
    `twisted.web.resource.Resource.getChild` (inherited documentation)

Generated by Epydoc 1.1 on Thu May 8 13:17:00 2003 | http://epydoc.sf.net