src/Hydra/Serializer/DocumentationNormalizer.php
private function getHydraProperties(string $resourceClass, ResourceMetadata $resourceMetadata, string $shortName, string $prefixedShortName, array $context): array
    {
        $classes = [];
        foreach ($resourceMetadata->getCollectionOperations() as $operationName => $operation) {
            $inputMetadata = $resourceMetadata->getTypedOperationAttribute(OperationType::COLLECTION, $operationName, 'input', ['class' => $resourceClass], true);
            if (null !== $inputClass = $inputMetadata['class'] ?? null) {
                $classes[$inputClass] = true;
            }

            $outputMetadata = $resourceMetadata->getTypedOperationAttribute(OperationType::COLLECTION, $operationName, 'output', ['class' => $resourceClass], true);
            if (null !== $outputClass = $outputMetadata['class'] ?? null) {
                $classes[$outputClass] = true;
            }
        }

        $properties = [];
        foreach ($classes as $class => $v) {
            foreach ($this->propertyNameCollectionFactory->create($class, $this->getPropertyNameCollectionFactoryContext($resourceMetadata)) as $propertyName) {
                $propertyMetadata = $this->propertyMetadataFactory->create($class, $propertyName);
                if (true === $propertyMetadata->isIdentifier() && false === $propertyMetadata->isWritable()) {
                    continue;
                }

                if ($this->nameConverter) {
                    $propertyName = $this->nameConverter->normalize($propertyName, $class, self::FORMAT, $context);
                }

                $properties[] = $this->getProperty($propertyMetadata, $propertyName, $prefixedShortName, $shortName);
            }
        }

        return $properties;
    }
private function getHydraProperties(string $resourceClass, ResourceMetadata $resourceMetadata, string $shortName, string $prefixedShortName, array $context): array
    {
        $classes = [];
        foreach ($resourceMetadata->getCollectionOperations() as $operationName => $operation) {
            $inputMetadata = $resourceMetadata->getTypedOperationAttribute(OperationType::COLLECTION, $operationName, 'input', ['class' => $resourceClass], true);
            if (null !== $inputClass = $inputMetadata['class'] ?? null) {
                $classes[$inputClass] = true;
            }

            $outputMetadata = $resourceMetadata->getTypedOperationAttribute(OperationType::COLLECTION, $operationName, 'output', ['class' => $resourceClass], true);
            if (null !== $outputClass = $outputMetadata['class'] ?? null) {
                $classes[$outputClass] = true;
            }
        }

        $properties = [];
        foreach ($classes as $class => $v) {
            foreach ($this->propertyNameCollectionFactory->create($class, $this->getPropertyNameCollectionFactoryContext($resourceMetadata)) as $propertyName) {
                $propertyMetadata = $this->propertyMetadataFactory->create($class, $propertyName);
                if (true === $propertyMetadata->isIdentifier() && false === $propertyMetadata->isWritable()) {
                    continue;
                }

                if ($this->nameConverter) {
                    $propertyName = $this->nameConverter->normalize($propertyName, $class, self::FORMAT, $context);
                }

                $properties[] = $this->getProperty($propertyMetadata, $propertyName, $prefixedShortName, $shortName);
            }
        }

        return $properties;
    }
private function getHydraProperties ( string $ resourceClass , ResourceMetadata $ resourceMetadata , string $ shortName , string $ prefixedShortName , array $ context ) : array { $ classes = [ ] ; foreach ( $ resourceMetadata -> getCollectionOperations ( ) as $ operationName => $ operation ) { $ inputMetadata = $ resourceMetadata -> getTypedOperationAttribute ( OperationType :: COLLECTION , $ operationName , 'input' , [ 'class' => $ resourceClass ] , true ) ; if ( null !== $ inputClass = $ inputMetadata [ 'class' ] ?? null ) { $ classes [ $ inputClass ] = true ; } $ outputMetadata = $ resourceMetadata -> getTypedOperationAttribute ( OperationType :: COLLECTION , $ operationName , 'output' , [ 'class' => $ resourceClass ] , true ) ; if ( null !== $ outputClass = $ outputMetadata [ 'class' ] ?? null ) { $ classes [ $ outputClass ] = true ; } } $ properties = [ ] ; foreach ( $ classes as $ class => $ v ) { foreach ( $ this -> propertyNameCollectionFactory -> create ( $ class , $ this -> getPropertyNameCollectionFactoryContext ( $ resourceMetadata ) ) as $ propertyName ) { $ propertyMetadata = $ this -> propertyMetadataFactory -> create ( $ class , $ propertyName ) ; if ( true === $ propertyMetadata -> isIdentifier ( ) && false === $ propertyMetadata -> isWritable ( ) ) { continue ; } if ( $ this -> nameConverter ) { $ propertyName = $ this -> nameConverter -> normalize ( $ propertyName , $ class , self :: FORMAT , $ context ) ; } $ properties [ ] = $ this -> getProperty ( $ propertyMetadata , $ propertyName , $ prefixedShortName , $ shortName ) ; } } return $ properties ; }
Gets Hydra properties.
Gets Hydra properties .