diff --git a/src/php/OperationMapper.php b/src/php/OperationMapper.php index 737aff3ac6123592e46dc2f7da12b9a021aa236c..2e29eaee190ccec8a3b4736b1c91c34fa80ddc21 100644 --- a/src/php/OperationMapper.php +++ b/src/php/OperationMapper.php @@ -40,6 +40,7 @@ use Irstea\NgModelGeneratorBundle\Models\Types\Operations\Path; use Irstea\NgModelGeneratorBundle\Models\Types\Placeholder; use Irstea\NgModelGeneratorBundle\Models\Types\Reference; use Irstea\NgModelGeneratorBundle\Models\Types\Resources\Collection; +use Irstea\NgModelGeneratorBundle\Models\Types\Resources\Representation; use Irstea\NgModelGeneratorBundle\Models\Types\Type; use Irstea\NgModelGeneratorBundle\Models\Types\Union; @@ -184,6 +185,12 @@ final class OperationMapper implode(', ', $callParameters) ); + /** @var Representation|null $repr */ + $repr = $returnType->findType(Representation::class); + if ($repr === null || !$repr->hasProperty('@id')) { + return $clientCall; + } + $opDef = $this->operation->getOpDef(); if ($opDef->isGetCollection()) {