summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris McDonough <chrism@agendaless.com>2008-09-03 17:32:20 +0000
committerChris McDonough <chrism@agendaless.com>2008-09-03 17:32:20 +0000
commitdaa425d854f5ada8734119aa08b3ca1a45e39f3f (patch)
tree060ee10de1ba284c6d5b62ed30825daf40a966be
parentd220c28f2f7157ae5c609d72f36240c7b9b067af (diff)
downloadpyramid-daa425d854f5ada8734119aa08b3ca1a45e39f3f.tar.gz
pyramid-daa425d854f5ada8734119aa08b3ca1a45e39f3f.tar.bz2
pyramid-daa425d854f5ada8734119aa08b3ca1a45e39f3f.zip
Move ZCML to an includes package so we can use repoze.bfg better as
a namespace package. Adjust the code generator to use it. Remove the direct-run hair from the paster template's ``run.py`` module.
-rw-r--r--repoze/bfg/configure.zcml2
-rw-r--r--repoze/bfg/includes/__init__.py1
-rw-r--r--repoze/bfg/includes/configure.zcml20
-rw-r--r--repoze/bfg/includes/meta.zcml15
-rw-r--r--repoze/bfg/meta.zcml2
-rw-r--r--repoze/bfg/paster_template/+package+/configure.zcml2
-rw-r--r--repoze/bfg/paster_template/+package+/run.py_tmpl10
7 files changed, 46 insertions, 6 deletions
diff --git a/repoze/bfg/configure.zcml b/repoze/bfg/configure.zcml
index 58cbff93b..355795b7c 100644
--- a/repoze/bfg/configure.zcml
+++ b/repoze/bfg/configure.zcml
@@ -1,6 +1,8 @@
<configure xmlns="http://namespaces.zope.org/zope"
i18n_domain="repoze.bfg">
+ <!-- superseded by includes/configure.zcml -->
+
<include package="z3c.pt" />
<adapter
diff --git a/repoze/bfg/includes/__init__.py b/repoze/bfg/includes/__init__.py
new file mode 100644
index 000000000..9faa798e8
--- /dev/null
+++ b/repoze/bfg/includes/__init__.py
@@ -0,0 +1 @@
+# includes package: referred to by generated apps
diff --git a/repoze/bfg/includes/configure.zcml b/repoze/bfg/includes/configure.zcml
new file mode 100644
index 000000000..e25d749ca
--- /dev/null
+++ b/repoze/bfg/includes/configure.zcml
@@ -0,0 +1,20 @@
+<configure xmlns="http://namespaces.zope.org/zope"
+ i18n_domain="repoze.bfg">
+
+ <include package="z3c.pt" />
+
+ <adapter
+ factory="repoze.bfg.traversal.ModelGraphTraverser"
+ provides="repoze.bfg.interfaces.ITraverserFactory"
+ for="*"
+ />
+
+ <adapter
+ factory="repoze.bfg.urldispatch.RoutesModelTraverser"
+ provides="repoze.bfg.interfaces.ITraverserFactory"
+ for="repoze.bfg.interfaces.IRoutesContext"
+ />
+
+ <include file="meta.zcml" />
+
+</configure>
diff --git a/repoze/bfg/includes/meta.zcml b/repoze/bfg/includes/meta.zcml
new file mode 100644
index 000000000..591a7be8a
--- /dev/null
+++ b/repoze/bfg/includes/meta.zcml
@@ -0,0 +1,15 @@
+<configure
+ xmlns="http://namespaces.zope.org/zope"
+ xmlns:meta="http://namespaces.zope.org/meta">
+
+ <meta:directives namespace="http://namespaces.repoze.org/bfg">
+
+ <meta:directive
+ name="view"
+ schema="repoze.bfg.zcml.IViewDirective"
+ handler="repoze.bfg.zcml.view"
+ />
+
+ </meta:directives>
+
+</configure>
diff --git a/repoze/bfg/meta.zcml b/repoze/bfg/meta.zcml
index 72e963ae6..e35184a34 100644
--- a/repoze/bfg/meta.zcml
+++ b/repoze/bfg/meta.zcml
@@ -2,6 +2,8 @@
xmlns="http://namespaces.zope.org/zope"
xmlns:meta="http://namespaces.zope.org/meta">
+ <!-- superseded by includes/meta.zcml -->
+
<meta:directives namespace="http://namespaces.repoze.org/bfg">
<meta:directive
diff --git a/repoze/bfg/paster_template/+package+/configure.zcml b/repoze/bfg/paster_template/+package+/configure.zcml
index 174b27354..c9bb92565 100644
--- a/repoze/bfg/paster_template/+package+/configure.zcml
+++ b/repoze/bfg/paster_template/+package+/configure.zcml
@@ -3,7 +3,7 @@
i18n_domain="repoze.bfg">
<!-- this must be included for the view declarations to work -->
- <include package="repoze.bfg" />
+ <include package="repoze.bfg.includes" />
<bfg:view
for=".models.IMyModel"
diff --git a/repoze/bfg/paster_template/+package+/run.py_tmpl b/repoze/bfg/paster_template/+package+/run.py_tmpl
index 42bc0ef02..0f714f7c7 100644
--- a/repoze/bfg/paster_template/+package+/run.py_tmpl
+++ b/repoze/bfg/paster_template/+package+/run.py_tmpl
@@ -2,12 +2,12 @@ from repoze.bfg.router import make_app
from repoze.bfg.registry import get_options
def app(global_config, **kw):
+ """ This function returns a repoze.bfg.router.Router object. It
+ is usually called by the PasteDeploy framework during ``paster
+ serve``"""
# paster app config callback
from {{package}}.models import get_root
import {{package}}
- return make_app(get_root, {{package}}, options=get_options(kw))
+ options = get_options(kw)
+ return make_app(get_root, {{package}}, options=options)
-if __name__ == '__main__':
- from paste import httpserver
- httpserver.serve(app(None), host='0.0.0.0', port='6543')
-