summaryrefslogtreecommitdiff
path: root/repoze/bfg/view.py
diff options
context:
space:
mode:
authorChris McDonough <chrism@agendaless.com>2009-11-20 05:38:38 +0000
committerChris McDonough <chrism@agendaless.com>2009-11-20 05:38:38 +0000
commit15a3c6f561563eb53ff1cc3637fc6afa75da9e89 (patch)
tree94134ee3c1099c30cae283d4cb7e1a8d68db45bf /repoze/bfg/view.py
parent601e038028655549d23f8eda1c21cb0034724771 (diff)
downloadpyramid-15a3c6f561563eb53ff1cc3637fc6afa75da9e89.tar.gz
pyramid-15a3c6f561563eb53ff1cc3637fc6afa75da9e89.tar.bz2
pyramid-15a3c6f561563eb53ff1cc3637fc6afa75da9e89.zip
Passable stab at supporting an imperative mode.
ZCML directives which accept paths now register absolute paths, while imperative registrations now register resource specifications.
Diffstat (limited to 'repoze/bfg/view.py')
-rw-r--r--repoze/bfg/view.py20
1 files changed, 10 insertions, 10 deletions
diff --git a/repoze/bfg/view.py b/repoze/bfg/view.py
index d94da9570..5096b291e 100644
--- a/repoze/bfg/view.py
+++ b/repoze/bfg/view.py
@@ -27,7 +27,7 @@ from repoze.bfg.interfaces import IRoutesMapper
from repoze.bfg.interfaces import IView
from repoze.bfg.path import caller_package
-from repoze.bfg.resource import resource_spec
+from repoze.bfg.resource import resolve_resource_spec
from repoze.bfg.static import PackageURLParser
# b/c imports
@@ -170,19 +170,19 @@ class static(object):
directive will not be able to override the resources it
contains.
"""
- def __init__(self, root_dir, cache_max_age=3600, level=2,
- package_name=None):
+ def __init__(self, root_dir, cache_max_age=3600, package_name=None):
# package_name is for bw compat; it is preferred to pass in a
# package-relative path as root_dir
# (e.g. ``anotherpackage:foo/static``).
- if os.path.isabs(root_dir):
- self.app = StaticURLParser(root_dir, cache_max_age=cache_max_age)
- return
caller_package_name = caller_package().__name__
- spec = resource_spec(root_dir, package_name or caller_package_name)
- package_name, root_dir = spec.split(':', 1)
- self.app = PackageURLParser(package_name, root_dir,
- cache_max_age=cache_max_age)
+ package_name = package_name or caller_package_name
+ package_name, root_dir = resolve_resource_spec(root_dir, package_name)
+ if package_name is None:
+ app = StaticURLParser(root_dir, cache_max_age=cache_max_age)
+ else:
+ app = PackageURLParser(
+ package_name, root_dir, cache_max_age=cache_max_age)
+ self.app = app
def __call__(self, context, request):
subpath = '/'.join(request.subpath)