ApiPlatform\SchemaGenerator\TypesGenerator::getParentClasses PHP Method

getParentClasses() private method

Gets the parent classes of the current one and add them to $parentClasses array.
private getParentClasses ( EasyRdf_Resource $resource, array $parentClasses = [] ) : array
$resource EasyRdf_Resource
$parentClasses array
return array
    private function getParentClasses(\EasyRdf_Resource $resource, array $parentClasses = [])
    {
        if ([] === $parentClasses) {
            return $this->getParentClasses($resource, [$resource->getUri()]);
        }
        $subclasses = $resource->all('rdfs:subClassOf');
        if (empty($subclasses)) {
            return $parentClasses;
        }
        $parentClass = $subclasses[0];
        $parentClasses[] = $parentClass->getUri();
        foreach ($this->graphs as $graph) {
            foreach ($graph->allOfType('rdfs:Class') as $type) {
                if ($type->getUri() === $parentClass->getUri()) {
                    $parentClasses = $this->getParentClasses($type, $parentClasses);
                    break 2;
                }
            }
        }
        return $parentClasses;
    }