diff --git a/ModelDescriber/ObjectModelDescriber.php b/ModelDescriber/ObjectModelDescriber.php index d5f293c..500ef8a 100644 --- a/ModelDescriber/ObjectModelDescriber.php +++ b/ModelDescriber/ObjectModelDescriber.php @@ -100,9 +100,6 @@ class ObjectModelDescriber implements ModelDescriberInterface, ModelRegistryAwar private function describeProperty(Type $type, Model $model, Schema $property, string $propertyName) { foreach ($this->propertyDescribers as $propertyDescriber) { - if ($propertyDescriber instanceof ModelRegistryAwareInterface) { - $propertyDescriber->setModelRegistry($this->modelRegistry); - } if ($propertyDescriber->supports($type)) { $propertyDescriber->describe($type, $property, $model->getGroups()); diff --git a/PropertyDescriber/ArrayPropertyDescriber.php b/PropertyDescriber/ArrayPropertyDescriber.php index 6c00493..0516f24 100644 --- a/PropertyDescriber/ArrayPropertyDescriber.php +++ b/PropertyDescriber/ArrayPropertyDescriber.php @@ -12,18 +12,14 @@ namespace Nelmio\ApiDocBundle\PropertyDescriber; use EXSyst\Component\Swagger\Schema; -use Nelmio\ApiDocBundle\Describer\ModelRegistryAwareInterface; -use Nelmio\ApiDocBundle\Describer\ModelRegistryAwareTrait; use Symfony\Component\PropertyInfo\Type; -class ArrayPropertyDescriber implements PropertyDescriberInterface, ModelRegistryAwareInterface +class ArrayPropertyDescriber implements PropertyDescriberInterface { - use ModelRegistryAwareTrait; - /** @var PropertyDescriberInterface[] */ private $propertyDescribers; - public function __construct($propertyDescribers = []) + public function __construct(iterable $propertyDescribers = []) { $this->propertyDescribers = $propertyDescribers; } @@ -39,9 +35,6 @@ class ArrayPropertyDescriber implements PropertyDescriberInterface, ModelRegistr $property = $property->getItems(); foreach ($this->propertyDescribers as $propertyDescriber) { - if ($propertyDescriber instanceof ModelRegistryAwareInterface) { - $propertyDescriber->setModelRegistry($this->modelRegistry); - } if ($propertyDescriber->supports($type)) { $propertyDescriber->describe($type, $property, $groups); diff --git a/PropertyDescriber/ObjectPropertyDescriber.php b/PropertyDescriber/ObjectPropertyDescriber.php index cc9619e..4a95d9a 100644 --- a/PropertyDescriber/ObjectPropertyDescriber.php +++ b/PropertyDescriber/ObjectPropertyDescriber.php @@ -12,14 +12,21 @@ namespace Nelmio\ApiDocBundle\PropertyDescriber; use EXSyst\Component\Swagger\Schema; -use Nelmio\ApiDocBundle\Describer\ModelRegistryAwareInterface; -use Nelmio\ApiDocBundle\Describer\ModelRegistryAwareTrait; use Nelmio\ApiDocBundle\Model\Model; +use Nelmio\ApiDocBundle\Model\ModelRegistry; use Symfony\Component\PropertyInfo\Type; -class ObjectPropertyDescriber implements PropertyDescriberInterface, ModelRegistryAwareInterface +class ObjectPropertyDescriber implements PropertyDescriberInterface { - use ModelRegistryAwareTrait; + /** + * @var ModelRegistry + */ + private $modelRegistry; + + public function __construct(ModelRegistry $modelRegistry) + { + $this->modelRegistry = $modelRegistry; + } public function describe(Type $type, Schema $property, array $groups = null) { diff --git a/Resources/config/services.xml b/Resources/config/services.xml index f48a4ec..c575d42 100644 --- a/Resources/config/services.xml +++ b/Resources/config/services.xml @@ -41,7 +41,7 @@ - + @@ -51,34 +51,34 @@ - - + + - + - - + + - - + + - - + + - - + + - - + + - - + +