From 2ef8db64d340b6118e37a0910482d23dcddf0239 Mon Sep 17 00:00:00 2001 From: Kazuhiko Shiozaki <kazuhiko@nexedi.com> Date: Wed, 10 Feb 2010 05:05:16 +0000 Subject: [PATCH] add SolverDecision.getDefaultConfigurationPropertyDict(). git-svn-id: https://svn.erp5.org/repos/public/erp5/trunk@32385 20353a03-c40f-0410-a6d1-a30d3c3de9de --- product/ERP5/Document/SolverDecision.py | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/product/ERP5/Document/SolverDecision.py b/product/ERP5/Document/SolverDecision.py index fb39fa954a..a858732760 100644 --- a/product/ERP5/Document/SolverDecision.py +++ b/product/ERP5/Document/SolverDecision.py @@ -29,7 +29,6 @@ import zope.interface from AccessControl import ClassSecurityInfo -from Products.CMFCore.utils import getToolByName from Products.ERP5Type import Permissions, PropertySheet, interfaces from Products.ERP5Type.XMLObject import XMLObject from Products.ERP5.mixin.configurable import ConfigurableMixin @@ -88,3 +87,27 @@ class SolverDecision(ConfigurableMixin, XMLObject): # Declarative interfaces zope.interface.implements(interfaces.IConfigurable, ) + + def getDefaultConfigurationPropertyDict(self): + """ + Returns a dictionary of default properties for specified + configurable object + (implementation) + """ + # XXX To be implemented through type based method and using read + # transaction cache + try: + solver_portal_type = self.getSolverValue().getId() + except AttributeError: + return {} + + solver = self.getParentValue().newContent( + portal_type=solver_portal_type, + temp_object=True, + delivery_list=self.getDeliveryList(), + causality_value=self) + method = solver._getTypeBasedMethod( + 'getDefaultConfigurationPropertyDict', + fallback_script_id='Solver_getDefaultConfigurationPropertyDict') + + return method(self) -- 2.30.9