Jurko Gospodnetić
a78141ada6
fix an additional broken recursive WSDL import scenario
...
- added related test
- fixed the issue & commented the fix
- updated related already existing comment in the original WSDL import fix
2015-06-29 23:39:51 +02:00
Jurko Gospodnetić
7e24435e31
remove whitespace in front of : in dictionary literal (stylistic)
2015-06-29 21:35:18 +02:00
Jurko Gospodnetić
560743c246
mark some internal Binding WSDL object methods as private
...
Renamings:
- resolveport --> __resolveport
- resolvesoapbody --> __resolvesoapbody
- resolveheaders --> __resolveheaders
- resolvefaults --> __resolvefaults
2015-06-29 21:33:55 +02:00
Jurko Gospodnetić
ab2b7a4c5c
fix broken recursive WSDL imports
...
Suds now correctly handles twisted use-cases as seen in some M$ web services,
and whose one possible structure has been illustrated by the
test_recursive_WSDL_import() test in the test_client.py test module.
Note that this has nothing to do with recursive XSD schema imports which still
have known issues.
Updated todo list.
2015-06-29 21:31:38 +02:00
Jurko Gospodnetić
e5cf6ba74b
correct try:/except: blocks eating up internal Python exceptions
...
All such block replaced with blocks catching Exception subclasses only so they
no longer eat up internal Python exceptions like SystemExit or
KeyboardInterrupt.
2014-02-28 00:51:15 +01:00
Jurko Gospodnetić
e54e3e021e
clean up suds/wsdl.py module - stylistic changes
...
Reordered imports alphabetically.
Docstrings PEP-8-ified.
String literals updated to use double quotes where possible.
Several log & exception messages updated to use single instead of double quotes.
Line wrapping updates.
2014-02-17 23:19:00 +01:00
Jurko Gospodnetić
ee8a547924
remove unnecessary logger objects
...
Code cleaned up a bit while looking for unused logger objects:
* Trailing spaces removed.
* Reordered import directives.
* Removed some unnecessary import directives.
2013-12-26 03:32:33 +01:00
Jurko Gospodnetić
3fee821e3f
Added 'unwrap' option. Based on implementation contributed by Juraj Ivančić.
...
Allows disabling suds library's automated simple document interface unwrapping.
Added related unit tests. Updated todo list.
2013-04-01 17:59:53 +02:00
Jurko Gospodnetić
905cf64b94
Minor stylistic changes.
2013-03-29 19:12:59 +01:00
Jurko Gospodnetić
f497c6c1a3
Web service location now held as a unicode string.
...
This removes the need for the suds.bytes2str() Python 2/3 compatibility hack.
2013-03-29 04:59:45 +01:00
Jurko Gospodnetić
5a2c6ea3cb
Code cleanup - removed several unnecessary imports. Updated todo list.
2011-12-26 18:33:07 +01:00
Jurko Gospodnetić
75f72ee401
Code cleanup - inlined suds.wsdl.Types.create().
...
This function was used only once, undocumented and it is unclear when it should
be used and when the regular suds.wsdl.Types constructor should be used
directly.
2011-12-25 23:54:45 +01:00
Jurko Gospodnetić
36ad75e2fa
Removed an unused suds.wsdl.WObject.__init__() 'definitions' parameter.
2011-12-25 23:54:45 +01:00
Jurko Gospodnetić
7e7aa81680
Minor stylistic changes.
...
* Trimmed trailing spaces.
* Trimmed duplicate spaces after '='.
* Comment typo corrections.
* Standardized referring to acronyms using all-capital letters, e.g. 'SOAP',
'URL', 'WSDL' & 'XML'.
* Improved class & function description docstrings.
* Indentation corrections.
* Removed redundant trailing tuple definition commas.
2011-12-25 13:31:08 +01:00
Jurko Gospodnetić
80e6e191e1
Split absolute and relative imports into separate import statements.
...
This is needed for the lib2to3 Python 2 to 3 conversion to correctly recognize
old-style relative imports and adjust their syntax for Python 3.
2011-12-20 15:49:35 +01:00
Jurko Gospodnetić
7d96121e70
Cleanup - trimmed trailing spaces, removed unnecessary imports, etc.
...
Trimmed trailing spaces. Removed unnecessary imports. Standardized quote usage
in some modules.
2011-12-20 15:12:32 +01:00
jortel
01a5854eb4
Fix regression of ticket #348 introduced in r698.
2010-09-13 16:26:09 +00:00
jortel
81235c4890
Fix Import doctor as plugin; Add plugins.document.parsed() call for schema defined in the wsdl.
2010-09-10 13:51:47 +00:00
jortel
780f8f85ff
Fix duplicate DocumentPlugin.parsed() called when wsdl imports schema.
2010-09-01 17:38:56 +00:00
jortel
9c23c8d766
plugin API - version 2.
2010-08-24 14:42:24 +00:00
jortel
4a6c53fea5
Modified plugin API to: initialized(), loaded(), sending() & received().
2010-05-13 17:51:00 +00:00
jortel
a5fde7a6b0
Add Plugins facility. Supports hooks for onInit(), onLoad(), onSend() onReply() events.
2010-05-11 20:44:48 +00:00
jortel
40b3eba44b
Change wsdl Import to use DocumentReader instead of DefinitionsReader. This will eliminate caching intermediate wsdl objects.
2010-02-26 01:39:15 +00:00
jortel
4498de24bb
Add check for 'options' before del and change to remove list of unwanted options. Also, restore 'options' on imported wsdls when unpickled.
2010-01-29 13:50:33 +00:00
jortel
aea9a9ddaa
Fix pickling problem with wsdls that import other wsdls.
2010-01-28 22:47:26 +00:00
jortel
2921f8d289
Fix missing 'self' on getid.
2010-01-27 20:49:14 +00:00
jortel
63eb8bb550
Enable WSDL caching as pickled object; refactor caching; remove /options/ attributes on object within (xsd) package and instead - pass to methods as needed (which was only a few); remove /schema/ & /options/ attributes from objects in (binding) package and get from wsdl instead; replace Object subclasses with Facade in wsdl for better pickling - true subclasses have no value here anyway.
2010-01-26 22:19:21 +00:00
jortel
4921924e25
Move transport caching to document-based caching. This approach leverages the performance of pickling/unpickling of sax DOM object graphs. Also, ensures that only valid/complete XML documents are cached. The NoCache class moved as well so users disabling the cache as Client(url, cache=NoCache) should switch to the preferred: Client(url, cache=None).
2010-01-12 23:15:00 +00:00
jortel
64dc23b60e
Decouple the sax.Parser and the Transport.
2010-01-12 17:53:21 +00:00
jortel
f27161619e
Fix ticket 284; have <soap:fault/> inherit the /name/ from the outer <fault/> element in <binding/>.
2009-12-10 14:32:22 +00:00
jortel
2bed5527db
Fix ticket 282; fixed wsdl schema_import().
2009-12-04 17:38:23 +00:00
jortel
f3bc8675f8
Move soaparray XSD extensions to separate module named soaparray.py. Update (mx) Encoded marshaller to translate (cast) any untyped array objects to typed objects with XSD type metadata to ensure that the auto typing applied to <xs:any/> contents of encoded arrays have the correct xsi:type. suds objects passed as array content will work as before. Reintroduced support for passing python dict(s) for complex objects __not__ typed in the wsdl as abstract or base classes. Not all use cases tested.
2009-12-02 01:05:14 +00:00
jortel
2a448e06bd
The strategy for unmarshalling soap encoded arrays needed to be updated. Instead of postprocessing the array content, I needed to propigate the array type to the items within the array when the xsi:type was not explicitly set. The primary reason is so the array items would have a /known/ type other then <xs:any/>. This is necessary to that the contents of array items that are objects would be processed properly.
2009-11-25 17:33:56 +00:00
jortel
d96c76e2ef
Fix cut-n-paste of wsdl object class name for <fault/>.
2009-11-20 22:12:43 +00:00
jortel
bd825da175
Enhance rpc/encoded (soap section 5) encoded arrays. This includes soap-enc:arrayType='ns0:sometype[4]' attributes. Also, parameters & object attributes that are soap arrays may be passed using python list|tuple svn st|grep -v ?. Users creating the ArrayOfSomethings using the client.factory.create() will still work.
2009-11-06 20:52:09 +00:00
jortel
a2ae9379d4
Fixed ticket #266 , Enhance wsdl to allow for services having ports where the <address/> is not specified. Users will have to override the location for these services.
2009-11-02 16:37:57 +00:00
jortel
de6e471958
Enhance handling of WSDL when <input/> in not specified.
2009-10-27 21:58:48 +00:00
jortel
6bbe2277fb
Fix ticket #261 ; fix wsdl.Service.setlocation()
2009-10-27 14:50:27 +00:00
jortel
f5cb6013d9
Fix ticket #254 by handling simple types by restriction. Also, remove dead line of code in wsdl.py.
2009-10-14 21:16:25 +00:00
jortel
6a9944f762
update epydocs and bump beta release information.
2009-09-09 22:40:14 +00:00
jortel
8428ec5955
Update wsdl Definitions to process <fault/> information.
2009-09-09 22:33:54 +00:00
jortel
a88a54fd60
Rework the wsdl, client and servicedefinition to handle wsdls with multiple services. To ensure symmetry, the API for multiple ports was modified and the implementation simplified. See https://fedorahosted.org/suds/wiki/Documentation . The client API also replaces the self.service & self.sd with self.services and self.sd is not a list. We may want to simplify the ServiceDefintion as it currently repeats all of the /types/ for each service. Fixes ticket #247 .
2009-08-20 23:56:52 +00:00
jortel
004b85a6d6
Fix ticket #241 . Update wsdl data model to only include message parts in <body/> as specified by binding definition <soap:body parts=''/>. Accomplished by: flushing out (wsdl.py) Definitions: binding.operation.soap.(input|output).body to contain message parts as defined by optional binding <input parts=''/> and <output parts=''/>. When parts omitted, all parts of referenced message parts included in message <body/>. Replace binding.operation.soap.(input|output).headers.header.message with header.message header.part. Move service.methods[].method.(input|output).wrapped to method.soap.(input|output).body. Remove service.method[].method.message because the method.soap not contains all input and output message parts. Update bindings to match wsdl Definitions structural changes.
2009-07-18 00:53:55 +00:00
jortel
8d6a1d58ab
Fix ticket #208 ; move message (wrapped|bare) detection to wsdl; abstract getting reply contents to subclass bindings.
2009-03-11 15:56:37 +00:00
jortel
4b3d0b8b98
Update WSDL processing to handle <soap:operation/> inside of <wsdl:operation/> as optional.
2009-03-06 23:03:55 +00:00
jortel
7eaea82a8e
Update public and axis1 tests to work with prefix changes. Update wsdl so that soap body namespaces always have a prefix (body defaults to 'b0' and headers default to 'h0'). Update servicedefinitiion to omit (None) namespaces from mappings. Add default for Element.findPrefix(). Fix Element.nsdeclaration() so that mixed expns and prefixed ns works properly. Fix marshaller to work properly with elementFromDefault=unqualified -- nodes are not qualified; this expects root to be qualified elsewhere; may need to revisit this. Update binding PartElement to be unqualified
2009-02-18 00:07:04 +00:00
jortel
146c7782a6
Updated wsdl to properly handle port types with multiple soap headers defined. Fixed ticket #155 ; Added support for soapheaders option to take a dict when multiple headers are defined.
2009-02-11 22:44:57 +00:00
jortel
1f713dbe95
Fix performance problem
2009-01-20 21:11:30 +00:00
jortel
706cd756cb
Fix multidocument document/literal to uses element names instead of part names; Fix xs:import with relative url for imports of schema from imported wsdls.
2009-01-13 21:21:27 +00:00
jortel
b99050dc09
Refactor client namespace objects; add http authentication to axis1 and associated test
2008-11-25 23:24:32 +00:00