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 @@
-
-
+
+
-
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+