From 5e2fc205fa7242f86261cbd3b5914298d5438e0d Mon Sep 17 00:00:00 2001 From: Eugene Kudelevsky Date: Wed, 8 Aug 2012 12:48:18 +0400 Subject: [PATCH] revert "IDEA-89266 fix storing of default html doctype" --- .../src/META-INF/XmlPlugin.xml | 1 - .../javaee/DefaultHtmlDoctypeConverter.java | 92 ------------------- .../javaee/ExternalResourceManagerImpl.java | 22 +---- .../com/intellij/xml/Html5SchemaProvider.java | 11 +-- 4 files changed, 8 insertions(+), 118 deletions(-) delete mode 100644 xml/impl/src/com/intellij/javaee/DefaultHtmlDoctypeConverter.java diff --git a/platform/platform-resources/src/META-INF/XmlPlugin.xml b/platform/platform-resources/src/META-INF/XmlPlugin.xml index a8236a81ab31..6340ee08e1d9 100644 --- a/platform/platform-resources/src/META-INF/XmlPlugin.xml +++ b/platform/platform-resources/src/META-INF/XmlPlugin.xml @@ -106,7 +106,6 @@ - diff --git a/xml/impl/src/com/intellij/javaee/DefaultHtmlDoctypeConverter.java b/xml/impl/src/com/intellij/javaee/DefaultHtmlDoctypeConverter.java deleted file mode 100644 index 7a5c0244b5c6..000000000000 --- a/xml/impl/src/com/intellij/javaee/DefaultHtmlDoctypeConverter.java +++ /dev/null @@ -1,92 +0,0 @@ -package com.intellij.javaee; - -import com.intellij.conversion.*; -import com.intellij.openapi.util.io.FileUtil; -import org.jdom.Element; -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; - -import java.io.File; -import java.util.Collection; -import java.util.Collections; - -/** - * @author Eugene.Kudelevsky - */ -public class DefaultHtmlDoctypeConverter extends ConverterProvider { - protected DefaultHtmlDoctypeConverter() { - super("default-html-language-level"); - } - - @NotNull - @Override - public String getConversionDescription() { - return "Default HTML language level setting will be updated"; - } - - @NotNull - @Override - public ProjectConverter createConverter(@NotNull ConversionContext context) { - return new MyConverter(context); - } - - private static class MyConverter extends ProjectConverter { - private final ConversionContext myContext; - - private MyConverter(@NotNull ConversionContext context) { - myContext = context; - } - - @Override - public boolean isConversionNeeded() { - return getElementToUpdate() != null; - } - - @Override - public void preProcessingFinished() throws CannotConvertException { - final Element defaultHtmlDoctype = getElementToUpdate(); - - if (defaultHtmlDoctype != null) { - defaultHtmlDoctype.setText(ExternalResourceManagerImpl.HTML5_DOCTYPE_ELEMENT); - } - } - - @Nullable - private Element getElementToUpdate() { - final ComponentManagerSettings settings = myContext.getProjectRootManagerSettings(); - if (settings == null) { - return null; - } - - final Element root = settings.getComponentElement("ProjectResources"); - if (root == null) { - return null; - } - - Element defaultHtmlDoctype = root.getChild("default-html-language-level"); - if (defaultHtmlDoctype == null) { - return null; - } - - String value = defaultHtmlDoctype.getTextTrim(); - value = value != null ? myContext.expandPath(value) : null; - if (value == null) { - return null; - } - - if (!FileUtil.toSystemIndependentName(value).endsWith("idea.jar!/resources/html5-schema/html5.rnc")) { - return null; - } - return defaultHtmlDoctype; - } - - @Override - public Collection getAdditionalAffectedFiles() { - final ComponentManagerSettings settings = myContext.getProjectRootManagerSettings(); - final File file = settings != null ? settings.getFile() : null; - return file != null - ? Collections.singletonList(file) - : Collections.emptyList(); - } - } -} diff --git a/xml/impl/src/com/intellij/javaee/ExternalResourceManagerImpl.java b/xml/impl/src/com/intellij/javaee/ExternalResourceManagerImpl.java index 32d1a1be74ec..be0783628e78 100644 --- a/xml/impl/src/com/intellij/javaee/ExternalResourceManagerImpl.java +++ b/xml/impl/src/com/intellij/javaee/ExternalResourceManagerImpl.java @@ -101,12 +101,10 @@ public class ExternalResourceManagerImpl extends ExternalResourceManagerEx imple @NonNls private static final String URL_ATTR = "url"; @NonNls private static final String LOCATION_ATTR = "location"; @NonNls private static final String IGNORED_RESOURCE_ELEMENT = "ignored-resource"; - @NonNls private static final String HTML_DEFAULT_DOCTYPE_ELEMENT = "default-html-language-level"; + @NonNls private static final String HTML_DEFAULT_DOCTYPE_ELEMENT = "default-html-doctype"; private static final String DEFAULT_VERSION = null; @NonNls public static final String STANDARD_SCHEMAS = "/standardSchemas/"; - public static String HTML5_DOCTYPE_ELEMENT = "HTML5"; - public ExternalResourceManagerImpl(PathMacrosImpl pathMacros) { myPathMacros = pathMacros; } @@ -363,14 +361,7 @@ public class ExternalResourceManagerImpl extends ExternalResourceManagerEx imple Element child = element.getChild(HTML_DEFAULT_DOCTYPE_ELEMENT); if (child != null) { - final String text = child.getText(); - - if (HTML5_DOCTYPE_ELEMENT.equals(text)) { - myDefaultHtmlDoctype = Html5SchemaProvider.HTML5_SCHEMA_LOCATION; - } - else { - myDefaultHtmlDoctype = text; - } + myDefaultHtmlDoctype = child.getText(); } Element catalogElement = element.getChild(CATALOG_PROPERTIES_ELEMENT); if (catalogElement != null) { @@ -401,14 +392,7 @@ public class ExternalResourceManagerImpl extends ExternalResourceManagerEx imple if (myDefaultHtmlDoctype != null) { final Element e = new Element(HTML_DEFAULT_DOCTYPE_ELEMENT); - - if (Html5SchemaProvider.HTML5_SCHEMA_LOCATION.equals(myDefaultHtmlDoctype)) { - // do not store the path to html5 schema in project settings - e.setText(HTML5_DOCTYPE_ELEMENT); - } - else { - e.setText(myDefaultHtmlDoctype); - } + e.setText(myDefaultHtmlDoctype); element.addContent(e); } if (myCatalogPropertiesFile != null) { diff --git a/xml/impl/src/com/intellij/xml/Html5SchemaProvider.java b/xml/impl/src/com/intellij/xml/Html5SchemaProvider.java index 218498bfc497..729c9395a61f 100644 --- a/xml/impl/src/com/intellij/xml/Html5SchemaProvider.java +++ b/xml/impl/src/com/intellij/xml/Html5SchemaProvider.java @@ -3,9 +3,8 @@ package com.intellij.xml; import com.intellij.javaee.ExternalResourceManagerImpl; import com.intellij.openapi.diagnostic.Logger; import com.intellij.openapi.extensions.ExtensionPointName; +import com.intellij.openapi.util.io.FileUtil; import com.intellij.openapi.vfs.VfsUtil; -import com.intellij.openapi.vfs.VfsUtilCore; -import com.intellij.util.io.URLUtil; import org.jetbrains.annotations.NotNull; import java.net.URL; @@ -47,12 +46,12 @@ public abstract class Html5SchemaProvider { xhtmlSchemaLocationURL = htmlSchemaLocationURL; } - HTML5_SCHEMA_LOCATION = VfsUtilCore.urlToPath(VfsUtil.fixURLforIDEA( - URLUtil.unescapePercentSequences(htmlSchemaLocationURL.toExternalForm()))); + HTML5_SCHEMA_LOCATION = + VfsUtil.urlToPath(VfsUtil.fixURLforIDEA(FileUtil.unquote(htmlSchemaLocationURL.toExternalForm()))); LOG.info("HTML5_SCHEMA_LOCATION = " + HTML5_SCHEMA_LOCATION); - XHTML5_SCHEMA_LOCATION = VfsUtilCore.urlToPath(VfsUtil.fixURLforIDEA( - URLUtil.unescapePercentSequences(xhtmlSchemaLocationURL.toExternalForm()))); + XHTML5_SCHEMA_LOCATION = + VfsUtil.urlToPath(VfsUtil.fixURLforIDEA(FileUtil.unquote(xhtmlSchemaLocationURL.toExternalForm()))); LOG.info("XHTML5_SCHEMA_LOCATION = " + XHTML5_SCHEMA_LOCATION); }