25 #require_once "Zend/Soap/Wsdl/Strategy/DefaultComplexType.php"; 48 if($nestedCounter > 0) {
51 for(
$i = 1;
$i <= $nestedCounter;
$i++) {
58 $this->
getContext()->addType($complexTypeName);
60 return "tns:$complexTypeName";
63 return parent::addComplexType(
$type);
83 $prefix = str_repeat(
"ArrayOf", $level);
86 return "tns:$arrayType";
98 return ucfirst(substr(strtolower($singularType), 4));
110 $singulartype = $this->
getContext()->getType(str_replace(
"[]",
"",
$type));
111 return $singulartype;
122 return substr_count(
$type,
"[]");
134 if (!in_array($arrayType, $this->
getContext()->getTypes())) {
137 $complexType = $dom->createElement(
'xsd:complexType');
138 $complexType->setAttribute(
'name', $arrayType);
140 $sequence = $dom->createElement(
'xsd:sequence');
142 $element = $dom->createElement(
'xsd:element');
143 $element->setAttribute(
'name',
'item');
144 $element->setAttribute(
'type', $childTypeName);
145 $element->setAttribute(
'minOccurs', 0);
146 $element->setAttribute(
'maxOccurs',
'unbounded');
149 $complexType->appendChild($sequence);
151 $this->
getContext()->getSchema()->appendChild($complexType);
_getTypeNameBasedOnNestingLevel($singularType, $level)
_getStrippedXsdType($singularType)
_addElementFromWsdlAndChildTypes($arrayType, $childTypeName)