VirtualFile (VirtualFile schemaFile) { // this hack is needed to handle user-defined mappings via urls // we cannot perform that inside corresponding provider, because it leads to recursive component dependency // this way we're preventing http files when a built-in schema exists if (schemaFile instanceof HttpVirtualFile && (!JsonSchemaCatalogProjectConfiguration.getInstance(myProject).isPreferRemoteSchemas() || JsonFileResolver.isSchemaUrl(schemaFile.getUrl()))) { String url = schemaFile.getUrl(); VirtualFile first1 = getLocalSchemaByUrl(url); return first1 != null ? first1 : schemaFile; } return schemaFile; }