From: <bov...@us...> - 2011-11-18 00:37:19
|
Revision: 1499 http://pywebsvcs.svn.sourceforge.net/pywebsvcs/?rev=1499&view=rev Author: boverhof Date: 2011-11-18 00:37:13 +0000 (Fri, 18 Nov 2011) Log Message: ----------- M ZSI/generate/commands.py M ZSI/generate/containers.py -- fixed a logic error with a loop that figures out minOccurs, it never stopped when it failed to find a specified minOccurs because it didn't exit when the parent wasn't sequence or something. -- set wsdl2py to spew out logger.warning by default -- simpleType restriction's of a user defined base rather than quiting just use xsd:string as the base. Modified Paths: -------------- trunk/zsi/ZSI/generate/commands.py trunk/zsi/ZSI/generate/containers.py Modified: trunk/zsi/ZSI/generate/commands.py =================================================================== --- trunk/zsi/ZSI/generate/commands.py 2010-03-12 02:13:19 UTC (rev 1498) +++ trunk/zsi/ZSI/generate/commands.py 2011-11-18 00:37:13 UTC (rev 1499) @@ -12,7 +12,7 @@ from ConfigParser import ConfigParser from ZSI.generate.wsdl2python import WriteServiceModule, ServiceDescription as wsdl2pyServiceDescription from ZSI.wstools import WSDLTools, XMLSchema -from ZSI.wstools.logging import setBasicLoggerDEBUG +from ZSI.wstools.logging import setBasicLoggerDEBUG,setBasicLoggerWARN from ZSI.generate import containers, utility from ZSI.generate.utility import NCName_to_ClassName as NC_to_CN, TextProtect from ZSI.generate.wsdl2dispatch import ServiceModuleWriter as ServiceDescription @@ -110,7 +110,7 @@ action="store_true", dest="pydoc", default=False, help="top-level directory for pydoc documentation.") - + setBasicLoggerWARN() is_cmdline = args is None if is_cmdline: (options, args) = op.parse_args() Modified: trunk/zsi/ZSI/generate/containers.py =================================================================== --- trunk/zsi/ZSI/generate/containers.py 2010-03-12 02:13:19 UTC (rev 1498) +++ trunk/zsi/ZSI/generate/containers.py 2011-11-18 00:37:13 UTC (rev 1499) @@ -1565,8 +1565,9 @@ # because cannot follow references, but not currently # a big concern. - self.logger.debug("flat: %r" %list(flat)) + #self.logger.debug("flat: %r" %list(flat)) for c in flat: + self.logger.debug("flat: %r" %c) tc = TcListComponentContainer() # TODO: Remove _getOccurs min,max,nil = self._getOccurs(c) @@ -1609,9 +1610,13 @@ if parent.isReference(): parent = parent.getModelGroupReference() - + continue + if parent.isDefinition(): parent = parent.content + continue + + break tc.setOccurs(minOccurs, maxOccurs, nil) processContents = self._getProcessContents(c) @@ -2804,9 +2809,14 @@ raise Wsdl2PythonError('no built-in type nor schema instance type for base attribute("%s","%s"): %s' %( base.getTargetNamespace(), base.getName(), tp.getItemTrace())) - raise Wsdl2PythonError, \ - 'Not Supporting simpleType/Restriction w/User-Defined Base: %s %s' %(tp.getItemTrace(),item.getItemTrace()) + warnings.warn('Using string for simpleType/Restriction w/User-Defined Base: %s %s' %(tp.getItemTrace(),item.getItemTrace())) + self.logger.warning("Unsupported: SimpleType (%s,%s), setting restriction base to xsd:string" %(self.ns, self.name)) + #self.sKlass = "%s.%s" %(base.getName(), base.getTargetNamespace()) + self.sKlass = BTI.get_typeclass("string", SCHEMA.XSD3) + + return + sc = tp.content.getSimpleTypeContent() if sc is not None and True is sc.isSimple() is sc.isLocal() is sc.isDefinition(): base = None This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |