private function parseRamlData($ramlData, $rootDir)
    {
        if (!isset($ramlData['title'])) {
            throw new RamlParserException();
        }

        $ramlData = $this->parseLibraries($ramlData, $rootDir);

        $ramlData = $this->parseTraits($ramlData);

        $ramlData = $this->parseResourceTypes($ramlData);

        if ($this->configuration->isSchemaParsingEnabled()) {
            if (isset($ramlData['schemas'])) {
                $schemas = [];
                foreach ($ramlData['schemas'] as $schemaCollection) {
                    foreach ($schemaCollection as $schemaName => $schema) {
                        $schemas[$schemaName] = $schema;
                    }
                }
            }
            foreach ($ramlData as $key => $value) {
                if (0 === \strpos($key, '/')) {
                    if (isset($schemas)) {
                        $value = $this->replaceSchemas($value, $schemas);
                    }
                    if (\is_array($value)) {
                        $value = $this->recurseAndParseSchemas($value, $rootDir);
                    }
                    $ramlData[$key] = $value;
                }
            }
        }

        if (isset($ramlData['securitySchemes'])) {
            $ramlData['securitySchemes'] = $this->parseSecuritySettings($ramlData['securitySchemes']);
        }

        return ApiDefinition::createFromArray($ramlData['title'], $ramlData);
    }
private function parseRamlData($ramlData, $rootDir)
    {
        if (!isset($ramlData['title'])) {
            throw new RamlParserException();
        }

        $ramlData = $this->parseLibraries($ramlData, $rootDir);

        $ramlData = $this->parseTraits($ramlData);

        $ramlData = $this->parseResourceTypes($ramlData);

        if ($this->configuration->isSchemaParsingEnabled()) {
            if (isset($ramlData['schemas'])) {
                $schemas = [];
                foreach ($ramlData['schemas'] as $schemaCollection) {
                    foreach ($schemaCollection as $schemaName => $schema) {
                        $schemas[$schemaName] = $schema;
                    }
                }
            }
            foreach ($ramlData as $key => $value) {
                if (0 === \strpos($key, '/')) {
                    if (isset($schemas)) {
                        $value = $this->replaceSchemas($value, $schemas);
                    }
                    if (\is_array($value)) {
                        $value = $this->recurseAndParseSchemas($value, $rootDir);
                    }
                    $ramlData[$key] = $value;
                }
            }
        }

        if (isset($ramlData['securitySchemes'])) {
            $ramlData['securitySchemes'] = $this->parseSecuritySettings($ramlData['securitySchemes']);
        }

        return ApiDefinition::createFromArray($ramlData['title'], $ramlData);
    }
private function parseRamlData ( $ ramlData , $ rootDir ) { if ( ! isset ( $ ramlData [ 'title' ] ) ) { throw new RamlParserException ( ) ; } $ ramlData = $ this -> parseLibraries ( $ ramlData , $ rootDir ) ; $ ramlData = $ this -> parseTraits ( $ ramlData ) ; $ ramlData = $ this -> parseResourceTypes ( $ ramlData ) ; if ( $ this -> configuration -> isSchemaParsingEnabled ( ) ) { if ( isset ( $ ramlData [ 'schemas' ] ) ) { $ schemas = [ ] ; foreach ( $ ramlData [ 'schemas' ] as $ schemaCollection ) { foreach ( $ schemaCollection as $ schemaName => $ schema ) { $ schemas [ $ schemaName ] = $ schema ; } } } foreach ( $ ramlData as $ key => $ value ) { if ( 0 === \ strpos ( $ key , '/' ) ) { if ( isset ( $ schemas ) ) { $ value = $ this -> replaceSchemas ( $ value , $ schemas ) ; } if ( \ is_array ( $ value ) ) { $ value = $ this -> recurseAndParseSchemas ( $ value , $ rootDir ) ; } $ ramlData [ $ key ] = $ value ; } } } if ( isset ( $ ramlData [ 'securitySchemes' ] ) ) { $ ramlData [ 'securitySchemes' ] = $ this -> parseSecuritySettings ( $ ramlData [ 'securitySchemes' ] ) ; } return ApiDefinition :: createFromArray ( $ ramlData [ 'title' ] , $ ramlData ) ; }
Parse RAML data

@param array $ramlData
@param string $rootDir
@return ApiDefinition

@throws RamlParserException
Parse RAML data