# HG changeset patch # User paulb # Date 1121536612 0 # Node ID 9046f0ccaceb4447c55b7727bde6d9c32e64f31d # Parent c2923faf25c00ae5b02fd4ba6629120daab3db2d [project @ 2005-07-16 17:56:46 by paulb] Moved site map initialisation into the application itself. diff -r c2923faf25c0 -r 9046f0ccaceb examples/BaseHTTPRequestHandler/ConfiguratorApp.py --- a/examples/BaseHTTPRequestHandler/ConfiguratorApp.py Sat Jul 16 17:56:19 2005 +0000 +++ b/examples/BaseHTTPRequestHandler/ConfiguratorApp.py Sat Jul 16 17:56:52 2005 +0000 @@ -1,29 +1,11 @@ #!/usr/bin/env python from WebStack.Adapters.BaseHTTPRequestHandler import deploy -from WebStack.Resources.ResourceMap import MapResource -from WebStack.Resources.Static import DirectoryResource import Configurator -import os - -# Get the directory of the application. - -configurator_resource = Configurator.ConfiguratorResource() -directory = configurator_resource.resource_dir - -# Make a simple Web site. -resource = MapResource({ - # Static resources: - "styles" : DirectoryResource(os.path.join(directory, "styles"), {"css" : "text/css"}), - "scripts" : DirectoryResource(os.path.join(directory, "scripts"), {"js" : "text/javascript"}), - # Main page: - "" : configurator_resource, - # Fragments: - "cpu" : configurator_resource, - "memory" : configurator_resource, - "hard-disks" : configurator_resource - }) +# Get a simple Web site. + +resource = Configurator.get_site() # Special magic incantation. diff -r c2923faf25c0 -r 9046f0ccaceb examples/CGI/ConfiguratorApp.py --- a/examples/CGI/ConfiguratorApp.py Sat Jul 16 17:56:19 2005 +0000 +++ b/examples/CGI/ConfiguratorApp.py Sat Jul 16 17:56:52 2005 +0000 @@ -9,29 +9,11 @@ sys.path.append("/home/paulb/Software/Python/libxml2dom") from WebStack.Adapters.CGI import deploy -from WebStack.Resources.ResourceMap import MapResource -from WebStack.Resources.Static import DirectoryResource import Configurator -import os - -# Get the directory of the application. - -configurator_resource = Configurator.ConfiguratorResource() -directory = configurator_resource.resource_dir - -# Make a simple Web site. -resource = MapResource({ - # Static resources: - "styles" : DirectoryResource(os.path.join(directory, "styles"), {"css" : "text/css"}), - "scripts" : DirectoryResource(os.path.join(directory, "scripts"), {"js" : "text/javascript"}), - # Main page: - "" : configurator_resource, - # Fragments: - "cpu" : configurator_resource, - "memory" : configurator_resource, - "hard-disks" : configurator_resource - }) +# Get a simple Web site. + +resource = Configurator.get_site() # Special magic incantation. diff -r c2923faf25c0 -r 9046f0ccaceb examples/Common/Configurator/__init__.py --- a/examples/Common/Configurator/__init__.py Sat Jul 16 17:56:19 2005 +0000 +++ b/examples/Common/Configurator/__init__.py Sat Jul 16 17:56:52 2005 +0000 @@ -8,6 +8,13 @@ import XSLOutput import os +# Site map imports. + +from WebStack.Resources.ResourceMap import MapResource +from WebStack.Resources.Static import DirectoryResource + +# Resource classes. + class ConfiguratorResource(XSLForms.Resources.XSLFormsResource): "A resource providing a system configurator." @@ -105,4 +112,31 @@ #proc = XSLOutput.Processor([trans_xsl], parameters=stylesheet_parameters) #proc.send_output(sys.stderr, "iso-8859-1", configuration) +# Site map initialisation. + +def get_site(): + + "Return a simple Web site resource." + + # Get the main resource and the directory used by the application. + + configurator_resource = ConfiguratorResource() + directory = configurator_resource.resource_dir + + # Make a simple Web site. + + resource = MapResource({ + # Static resources: + "styles" : DirectoryResource(os.path.join(directory, "styles"), {"css" : "text/css"}), + "scripts" : DirectoryResource(os.path.join(directory, "scripts"), {"js" : "text/javascript"}), + # Main page: + "" : configurator_resource, + # Fragments: + "cpu" : configurator_resource, + "memory" : configurator_resource, + "hard-disks" : configurator_resource + }) + + return resource + # vim: tabstop=4 expandtab shiftwidth=4 diff -r c2923faf25c0 -r 9046f0ccaceb examples/ModPython/ConfiguratorApp/ConfiguratorHandler.py --- a/examples/ModPython/ConfiguratorApp/ConfiguratorHandler.py Sat Jul 16 17:56:19 2005 +0000 +++ b/examples/ModPython/ConfiguratorApp/ConfiguratorHandler.py Sat Jul 16 17:56:52 2005 +0000 @@ -9,29 +9,11 @@ sys.path.append("/home/paulb/Software/Python/libxml2dom") from WebStack.Adapters import ModPython -from WebStack.Resources.ResourceMap import MapResource -from WebStack.Resources.Static import DirectoryResource import Configurator -import os - -# Get the directory of the application. - -configurator_resource = Configurator.ConfiguratorResource() -directory = configurator_resource.resource_dir - -# Make a simple Web site. -resource = MapResource({ - # Static resources: - "styles" : DirectoryResource(os.path.join(directory, "styles"), {"css" : "text/css"}), - "scripts" : DirectoryResource(os.path.join(directory, "scripts"), {"js" : "text/javascript"}), - # Main page: - "" : configurator_resource, - # Fragments: - "cpu" : configurator_resource, - "memory" : configurator_resource, - "hard-disks" : configurator_resource - }) +# Get a simple Web site. + +resource = Configurator.get_site() # NOTE: Not sure if the resource should be maintained in a resource pool.