List of implemented features
This list covers Pycoon trunk r120. For additional info about particular sitemap nodes, their parameters, sitemap components, sources, variable resolving, etc. refer to the Apache Cocoon documentation.
Sitemap nodes
map:pipelines element and its content
| Node | Pycoon 0.2 | Apache Cocoon 2.1 |
|---|
| map:pipelines | 100% | 100% |
| map:pipeline | 100% | 100% |
| map:match | 100% | 100% |
| map:select | 100% | 100% |
| map:call | 100% | 100% |
| map:component-configurations | 100% | 100% |
| map:read | 100% | 100% |
| map:handle-errors | 100% | 100% |
| map:act | 100% | 100% |
| map:mount | 90% check-reload is always "yes" | 100% |
| map:generate | 90% label is not supported | 100% |
| map:aggregate | 90% label is not supported | 100% |
| map:transform | 90% label is not supported | 100% |
| map:serialize | 90% label is not supported | 100% |
| map:redirect-to | 80% Internal redirects are not supported | 100% |
| map:views | 0% | 100% |
| ... | ... | ... |
Some of them have nested non-node elements such as <map:parameter>, <map:part>, etc.
map:components element and its content
| TODO: Add info about components nodes |
Sitemap components
Interfaces
Component interfaces hierarchy (module pycoon.components):
ComponentSerializerSelectorGeneratorTransformerMatcherReaderAction
Standard Cocoon components
The following components provide functionality similar to standard Cocoon components:
ComponentSerializerSelectorRequestMethodSelectorRequestParameterSelectorExceptionSelector
GeneratorFileGeneratorExceptionGenerator
TransformerMatcherReaderPipelineAction
Sources
Source resolving schemes
Three source resolving schemes are supported:
file: (default if no scheme is given) -- for accessing files on the local filesystem- Note: At this moment the
file: URI scheme must be used iff the file path is absolute. Otherwise the scheme must not be specified at all - Note: Relative file URIs are relative to the context path. Context path is the directory of the current sitemap file
- Examples:
file:///var/www/pycoon/webapp/sitemap.xconf -- absolute file URI on UNIXfile:///d:/pycoon/sitemap.xconf -- absolute file URI on Microsoft Windowswebapp/sitemap.xconf -- file URI relative to the context path
http: -- for accessing files via HTTP GET methodcocoon: -- for accessing various parts of sitemap files (e. g. reading the output of a pipeline)- Examples:
cocoon:/internal/sidebar?mode={request-param:sidebar-type} -- select pipeline from the current sitemap via matchingcocoon://api/news/{1} -- select pipeline from the root sitemap via matching
- (Pycoon-specific)
rawegg: -- for accessing files in Python eggs- Example:
rawegg:mysite:/webapp/sitemap.xmap -- access sitemap file in mysite egg (e. g. in <map:mount>
Source classes
Following source classes are available (all don't support caching at this moment):
FileSource -- supports getLastModified()HttpSourceSitemapSource
Variable resolving schemes
Supported resolving schemes:
- empty -- (default) for accessing positional and named parameters (passed by parent node via
<map:parameter> and as positional <map:match> args)- Ex.
{1}, {my-variable} - Note: Relative paths for accessing parameter stack are not supported at this moment (e. g.
{../1})
request-param: -- for accessing parameters passed via cocoon: or http: URI query (GET and POST application/x-www-form-urlencoded)- Ex.
{request-param:count}
global: -- for accessing global parameters specified in <map:component-configurations> section as <global-variables>- Ex.
{global:my-site-uri}
Configuration files
Dependencies and deployment
Software feature set
Some dependencies are required and some are optional.
(req) Pycoon framework and core components(req) Front-end server (at least one)(opt) CherryPy standalone WSGI server(opt) Apache HTTP Server with mod_python as WSGI server
Dependencies of each of these features are presented below. For more formal description of deployment see the Pycoon deployment descriptor written in RDF/Notation 3 syntax.
Pycoon framework and core components
CherryPy standalone WSGI server
Apache HTTP Server with mod_python as WSGI server
| TODO: Describe library dependencies and deployment options |
Standard logging hierarchy
The standard logging module is used for all tasks related to logging.
Logging facilities are configured in the /cocoon/logging XML element of a pycoon.xconf file. See example configuration file in the Pycoon distribution.
- root (empty string) -- the root of the hierarchy in
logging modulerequest -- HTTP client requestssource -- Sourcescomponent-manager -- ComponentManagerenvironment -- Environmentsitemap -- sitemap nodes and componentsbuilder -- TreeBuilderprocessor -- TreeProcessorgenerator -- Generator componentsreader -- Reader componentsaggregator -- ContentAggregator componentstransformer -- Transformer componentsserializer -- Serializer componentsselector -- Selector componentsmount -- MountNode nodes
Comments (0)
You don't have permission to comment on this page.