private function visitBaseComplexType(PHPClass $class, BaseComplexType $type) { $parent = $type->getParent(); if ($parent) { $parentType = $parent->getBase(); if ($parentType instanceof Type) { $this->handleClassExtension($class, $parentType); } } $schema = $type->getSchema(); foreach ($type->getAttributes() as $attr) { if ($attr instanceof AttributeGroup) { $this->visitAttributeGroup($class, $schema, $attr); } else { $property = $this->visitAttribute($class, $schema, $attr); $class->addProperty($property); } } }
private function visitBaseComplexType(&$class, &$data, BaseComplexType $type, $name) { $parent = $type->getParent(); if ($parent) { $parentType = $parent->getBase(); if ($parentType instanceof Type) { $this->handleClassExtension($class, $data, $parentType, $name); } } $schema = $type->getSchema(); if (!isset($data["properties"])) { $data["properties"] = array(); } foreach ($this->flattAttributes($type) as $attr) { $data["properties"][$this->getNamingStrategy()->getPropertyName($attr)] = $this->visitAttribute($class, $schema, $attr); } }