[Checkins] SVN: grok/trunk/src/grok/_grok.py Refactor to return the
dictionary with components directly.
Martijn Faassen
faassen at infrae.com
Thu Nov 30 17:48:55 EST 2006
Log message for revision 71347:
Refactor to return the dictionary with components directly.
This is a bit more easy to extend should new components
appear.
Changed:
U grok/trunk/src/grok/_grok.py
-=-
Modified: grok/trunk/src/grok/_grok.py
===================================================================
--- grok/trunk/src/grok/_grok.py 2006-11-30 22:48:08 UTC (rev 71346)
+++ grok/trunk/src/grok/_grok.py 2006-11-30 22:48:54 UTC (rev 71347)
@@ -45,7 +45,7 @@
def bootstrap():
component.provideAdapter(components.ModelTraverser)
component.provideAdapter(components.ContainerTraverser)
-
+
# register the name 'index' as the default view name
component.provideAdapter('index',
adapts=(grok.Model, IBrowserRequest),
@@ -106,27 +106,25 @@
def grok_module(module_info):
- (models, adapters, multiadapters, utilities, views, xmlrpc_views,
- traversers, templates, subscribers) = scan_module(module_info)
+ components, templates, subscribers = scan_module(module_info)
find_filesystem_templates(module_info, templates)
- context = util.determine_module_context(module_info, models)
+ context = util.determine_module_context(module_info, components[grok.Model])
- register_models(models)
- register_adapters(context, adapters)
- register_multiadapters(multiadapters)
- register_utilities(utilities)
- register_views(context, views, templates)
- register_xmlrpc(context, xmlrpc_views)
- register_traversers(context, traversers)
+ register_models(components[grok.Model])
+ register_adapters(context, components[grok.Adapter])
+ register_multiadapters(components[grok.MultiAdapter])
+ register_utilities(components[grok.Utility])
+ register_views(context, components[grok.View], templates)
+ register_xmlrpc(context, components[grok.XMLRPC])
+ register_traversers(context, components[grok.Traverser])
register_unassociated_templates(context, templates, module_info)
register_subscribers(subscribers)
# Do various other initializations
- initialize_schema(models)
+ initialize_schema(components[grok.Model])
-
def scan_module(module_info):
models = []
components = {
@@ -164,10 +162,7 @@
found_list.append(obj)
break
- return (components[grok.Model], components[grok.Adapter],
- components[grok.MultiAdapter], components[grok.Utility],
- components[grok.View], components[grok.XMLRPC],
- components[grok.Traverser], templates, subscribers)
+ return components, templates, subscribers
def find_filesystem_templates(module_info, templates):
template_dir_name = module_info.getAnnotation(
@@ -252,7 +247,7 @@
for method in methods:
# Make sure that the class inherits MethodPublisher, so that the views
# have a location
- method_view = type(view.__name__, (view, MethodPublisher),
+ method_view = type(view.__name__, (view, MethodPublisher),
{'__call__': method,
'__Security_checker__': security.GrokChecker()}
)
More information about the Checkins
mailing list