ApiPlatform\SchemaGenerator\TypesGenerator::createPropertiesMap PHP Method

createPropertiesMap() private method

Creates a map between classes and properties.
private createPropertiesMap ( array $types ) : array
$types array
return array
    private function createPropertiesMap(array $types)
    {
        $typesAsString = [];
        $map = [];
        foreach ($types as $type) {
            // get all parent classes until the root
            $parentClasses = $this->getParentClasses($type);
            $typesAsString[] = $parentClasses;
            $map[$type->getUri()] = [];
        }
        foreach ($this->graphs as $graph) {
            foreach ($graph->allOfType('rdf:Property') as $property) {
                foreach ($property->all(self::SCHEMA_ORG_DOMAIN) as $domain) {
                    foreach ($typesAsString as $typesAsStringItem) {
                        if (in_array($domain->getUri(), $typesAsStringItem)) {
                            $map[$typesAsStringItem[0]][] = $property;
                        }
                    }
                }
            }
        }
        return $map;
    }