diff options
author | Alexander Kurtakov | 2016-07-08 09:01:43 +0000 |
---|---|---|
committer | Alexander Kurtakov | 2016-07-08 09:01:43 +0000 |
commit | dfbf925d5d364bcd5f5a7d841b44fe0860bef3db (patch) | |
tree | 0dd3cf2d276285606e3449272d27db319183ed3f | |
parent | 2ef1e5d654acfaf55187ee45921a2270695b6142 (diff) | |
download | eclipse.platform.ua-dfbf925d5d364bcd5f5a7d841b44fe0860bef3db.tar.gz eclipse.platform.ua-dfbf925d5d364bcd5f5a7d841b44fe0860bef3db.tar.xz eclipse.platform.ua-dfbf925d5d364bcd5f5a7d841b44fe0860bef3db.zip |
Bug 497548 - Make use of StandardCharsetsI20160708-1700
All the various places defining and using different UTF-8 charset name
constants is too error prone. Let's stick to StandardCharsets.UTF-8
which even saves the string lookup too.
Change-Id: Idcb356d0293cd2d0d0148de4e1f2e131584d09c4
Signed-off-by: Alexander Kurtakov <akurtako@redhat.com>
9 files changed, 44 insertions, 58 deletions
diff --git a/org.eclipse.help.base/src/org/eclipse/help/internal/browser/MozillaBrowserAdapter.java b/org.eclipse.help.base/src/org/eclipse/help/internal/browser/MozillaBrowserAdapter.java index 92696ca76..912c24f48 100644 --- a/org.eclipse.help.base/src/org/eclipse/help/internal/browser/MozillaBrowserAdapter.java +++ b/org.eclipse.help.base/src/org/eclipse/help/internal/browser/MozillaBrowserAdapter.java @@ -11,6 +11,7 @@ package org.eclipse.help.internal.browser; import java.io.*; +import java.nio.charset.StandardCharsets; import org.eclipse.core.runtime.*; import org.eclipse.help.browser.*; @@ -134,7 +135,7 @@ public class MozillaBrowserAdapter implements IBrowser { try { outFile.getParentFile().mkdirs(); try (PrintWriter writer = new PrintWriter( - new BufferedWriter(new OutputStreamWriter(new FileOutputStream(outFile), "UTF8")), //$NON-NLS-1$ + new BufferedWriter(new OutputStreamWriter(new FileOutputStream(outFile), StandardCharsets.UTF_8)), false)) { writer.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">"); //$NON-NLS-1$ writer.println("<html><head>"); //$NON-NLS-1$ diff --git a/org.eclipse.help.ui/src/org/eclipse/help/ui/internal/views/EngineDescriptorManager.java b/org.eclipse.help.ui/src/org/eclipse/help/ui/internal/views/EngineDescriptorManager.java index aa7d207db..45e195c5f 100644 --- a/org.eclipse.help.ui/src/org/eclipse/help/ui/internal/views/EngineDescriptorManager.java +++ b/org.eclipse.help.ui/src/org/eclipse/help/ui/internal/views/EngineDescriptorManager.java @@ -19,6 +19,7 @@ import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.io.PrintWriter; import java.io.Reader; +import java.nio.charset.StandardCharsets; import java.util.ArrayList; import java.util.Hashtable; import java.util.Observable; @@ -109,7 +110,7 @@ public class EngineDescriptorManager extends Observable implements IHelpUIConsta OutputStreamWriter osw = null; try { fos = new FileOutputStream(fileName); - osw = new OutputStreamWriter(fos, "UTF8"); //$NON-NLS-1$ + osw = new OutputStreamWriter(fos, StandardCharsets.UTF_8); PrintWriter writer = new PrintWriter(osw); writer.println("<?xml version=\"1.0\" encoding=\"UTF-8\"?>"); //$NON-NLS-1$ writer.println("<engines>"); //$NON-NLS-1$ @@ -225,7 +226,7 @@ public class EngineDescriptorManager extends Observable implements IHelpUIConsta if (!file.exists()) return; FileInputStream stream = new FileInputStream(file); BufferedReader reader = new BufferedReader(new InputStreamReader( - stream, "utf-8"));//$NON-NLS-1$ + stream, StandardCharsets.UTF_8)); load(reader); reader.close(); } diff --git a/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/servlet/ChildLinkInserter.java b/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/servlet/ChildLinkInserter.java index 68799368f..aa50e958e 100644 --- a/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/servlet/ChildLinkInserter.java +++ b/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/servlet/ChildLinkInserter.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2009, 2015 IBM Corporation and others. + * Copyright (c) 2009, 2016 IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -14,6 +14,7 @@ package org.eclipse.help.internal.webapp.servlet; import java.io.IOException; import java.io.OutputStream; import java.io.UnsupportedEncodingException; +import java.nio.charset.StandardCharsets; import javax.servlet.http.HttpServletRequest; @@ -29,7 +30,6 @@ import org.eclipse.help.internal.webapp.data.UrlUtil; public class ChildLinkInserter { - private static final String UTF_8 = "UTF-8"; //$NON-NLS-1$ private HttpServletRequest req; private OutputStream out; private static final String NO_CHILDREN = "no_child_topics"; //$NON-NLS-1$ @@ -77,7 +77,7 @@ public class ChildLinkInserter { if (encoding != null) { out.write(linkString.getBytes(encoding)); } else { - out.write(linkString.getBytes("UTF8")); //$NON-NLS-1$ + out.write(linkString.getBytes(StandardCharsets.UTF_8)); } } catch (UnsupportedEncodingException e) { out.write(linkString.getBytes()); @@ -114,16 +114,16 @@ public class ChildLinkInserter { return buf.toString(); } - public void addStyle() throws UnsupportedEncodingException, IOException { + public void addStyle() throws IOException { ITopic[] subtopics = getSubtopics(); for (ITopic subtopic : subtopics) { if (ScopeUtils.showInTree(subtopic, scope)) { - out.write(HAS_CHILDREN.getBytes(UTF_8)); + out.write(HAS_CHILDREN.getBytes(StandardCharsets.UTF_8)); return; } } - out.write(NO_CHILDREN.getBytes(UTF_8)); + out.write(NO_CHILDREN.getBytes(StandardCharsets.UTF_8)); } } diff --git a/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/servlet/EclipseConnector.java b/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/servlet/EclipseConnector.java index 049718fc8..cf59bb0b5 100644 --- a/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/servlet/EclipseConnector.java +++ b/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/servlet/EclipseConnector.java @@ -21,6 +21,7 @@ import java.io.Writer; import java.lang.reflect.UndeclaredThrowableException; import java.net.URL; import java.net.URLConnection; +import java.nio.charset.StandardCharsets; import java.util.Locale; import javax.servlet.ServletContext; @@ -180,7 +181,7 @@ public class EclipseConnector { message.append("</pre>"); //$NON-NLS-1$ message.append(errorPageEnd); - is = new ByteArrayInputStream(message.toString().getBytes("UTF8")); //$NON-NLS-1$ + is = new ByteArrayInputStream(message.toString().getBytes(StandardCharsets.UTF_8)); } OutputStream out = resp.getOutputStream(); diff --git a/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/servlet/PluginsRootResolvingStream.java b/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/servlet/PluginsRootResolvingStream.java index 7bababdaf..7a3fb3cc5 100644 --- a/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/servlet/PluginsRootResolvingStream.java +++ b/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/servlet/PluginsRootResolvingStream.java @@ -15,6 +15,7 @@ import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.OutputStream; +import java.nio.charset.StandardCharsets; import javax.servlet.http.HttpServletRequest; @@ -38,7 +39,6 @@ public class PluginsRootResolvingStream extends OutputStream { private static final int MAY_BE_INCLUDE = 4; private static final int IN_METATAG = 5; private static final String PLUGINS_ROOT = "PLUGINS_ROOT/"; //$NON-NLS-1$ - private static final String UTF8 = "UTF8"; //$NON-NLS-1$ private static final String INSERT_CHILD_LINKS = "<!--INSERT_CHILD_LINKS-->"; //$NON-NLS-1$ private static final String INSERT_CHILD_LINK_STYLE = "<!--INSERT_CHILD_LINK_STYLE-->"; //$NON-NLS-1$ private final String[] keywords = { INSERT_CHILD_LINKS, INSERT_CHILD_LINK_STYLE }; @@ -200,12 +200,12 @@ public class PluginsRootResolvingStream extends OutputStream { } private void flushPluginsRootCharacters() throws IOException { - out.write(PLUGINS_ROOT.substring(0, charsMatched).getBytes(UTF8)); + out.write(PLUGINS_ROOT.substring(0, charsMatched).getBytes(StandardCharsets.UTF_8)); } private void flushKeywordCharacters() throws IOException { String matchingCharacters = keywords[lastKeywordMatch].substring(0, charsMatched); - out.write(matchingCharacters.getBytes(UTF8)); + out.write(matchingCharacters.getBytes(StandardCharsets.UTF_8)); } diff --git a/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/servlet/XMLGenerator.java b/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/servlet/XMLGenerator.java index 5c1cb2169..5bb599d5a 100644 --- a/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/servlet/XMLGenerator.java +++ b/org.eclipse.help.webapp/src/org/eclipse/help/internal/webapp/servlet/XMLGenerator.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2000, 2007 IBM Corporation and others. + * Copyright (c) 2000, 2016 IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -11,6 +11,7 @@ package org.eclipse.help.internal.webapp.servlet; import java.io.*; +import java.nio.charset.StandardCharsets; import org.eclipse.help.internal.base.util.*; import org.eclipse.help.internal.webapp.*; @@ -49,7 +50,7 @@ public class XMLGenerator { this.outFile = outFile; try { out = new PrintWriter(new BufferedWriter(new OutputStreamWriter( - new FileOutputStream(outFile), "UTF8")), //$NON-NLS-1$ + new FileOutputStream(outFile), StandardCharsets.UTF_8)), false /* no aotoFlush */ ); println("<?xml version=\"1.0\" encoding=\"UTF-8\"?>"); //$NON-NLS-1$ diff --git a/org.eclipse.help/src/org/eclipse/help/internal/util/URLCoder.java b/org.eclipse.help/src/org/eclipse/help/internal/util/URLCoder.java index 03a505ee2..7d4a4ad6d 100644 --- a/org.eclipse.help/src/org/eclipse/help/internal/util/URLCoder.java +++ b/org.eclipse.help/src/org/eclipse/help/internal/util/URLCoder.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2000, 2015 IBM Corporation and others. + * Copyright (c) 2000, 2016 IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -11,32 +11,20 @@ package org.eclipse.help.internal.util; import java.io.ByteArrayOutputStream; -import java.io.UnsupportedEncodingException; +import java.nio.charset.StandardCharsets; public class URLCoder { public static String encode(String s) { - try { - return urlEncode(s.getBytes("UTF8"), true); //$NON-NLS-1$ - } catch (UnsupportedEncodingException uee) { - return null; - } + return urlEncode(s.getBytes(StandardCharsets.UTF_8), true); } public static String compactEncode(String s) { - try { - return urlEncode(s.getBytes("UTF8"), false); //$NON-NLS-1$ - } catch (UnsupportedEncodingException uee) { - return null; - } + return urlEncode(s.getBytes(StandardCharsets.UTF_8), false); } public static String decode(String s) { - try { - return new String(urlDecode(s), "UTF8"); //$NON-NLS-1$ - } catch (UnsupportedEncodingException uee) { - return null; - } + return new String(urlDecode(s), StandardCharsets.UTF_8); } private static String urlEncode(byte[] data, boolean encodeAllCharacters) { diff --git a/org.eclipse.ua.tests/help/org/eclipse/ua/tests/help/remote/RemoteTestUtils.java b/org.eclipse.ua.tests/help/org/eclipse/ua/tests/help/remote/RemoteTestUtils.java index 288d85bb8..15de6424f 100644 --- a/org.eclipse.ua.tests/help/org/eclipse/ua/tests/help/remote/RemoteTestUtils.java +++ b/org.eclipse.ua.tests/help/org/eclipse/ua/tests/help/remote/RemoteTestUtils.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2009, 2011 IBM Corporation and others. + * Copyright (c) 2009, 2016 IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -14,7 +14,6 @@ package org.eclipse.ua.tests.help.remote; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; -import java.io.UnsupportedEncodingException; import java.net.URL; import java.nio.charset.StandardCharsets; @@ -54,8 +53,7 @@ public class RemoteTestUtils { return readFromURL(url); } - public static String readFromURL(URL url) throws IOException, - UnsupportedEncodingException { + public static String readFromURL(URL url) throws IOException { try (InputStream is = url.openStream(); InputStreamReader inputStreamReader = new InputStreamReader(is, StandardCharsets.UTF_8)) { StringBuffer buffer = new StringBuffer(); diff --git a/org.eclipse.ui.intro/src/org/eclipse/ui/internal/intro/impl/model/url/IntroURLParser.java b/org.eclipse.ui.intro/src/org/eclipse/ui/internal/intro/impl/model/url/IntroURLParser.java index a6118f666..308d774e5 100644 --- a/org.eclipse.ui.intro/src/org/eclipse/ui/internal/intro/impl/model/url/IntroURLParser.java +++ b/org.eclipse.ui.intro/src/org/eclipse/ui/internal/intro/impl/model/url/IntroURLParser.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2003, 2006 IBM Corporation and others. + * Copyright (c) 2003, 2016 IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -11,9 +11,9 @@ package org.eclipse.ui.internal.intro.impl.model.url; import java.io.ByteArrayOutputStream; -import java.io.UnsupportedEncodingException; import java.net.MalformedURLException; import java.net.URL; +import java.nio.charset.StandardCharsets; import java.util.Properties; import org.eclipse.ui.internal.intro.impl.util.Log; @@ -198,32 +198,28 @@ public class IntroURLParser { /* * Note: This was copied and adapted from org.eclipse.help.internal.util.URLCoder */ - private static String urlDecode(String encodedURL) { + private static String urlDecode(String encodedURL) { int len = encodedURL.length(); ByteArrayOutputStream os = new ByteArrayOutputStream(len); - try { - for (int i = 0; i < len;) { - switch (encodedURL.charAt(i)) { - case '%': - if (len >= i + 3) { - os.write(Integer.parseInt(encodedURL.substring(i + 1, i + 3), 16)); - } - i += 3; - break; - case '+': // exception from standard - os.write(' '); - i++; - break; - default: - os.write(encodedURL.charAt(i++)); - break; + for (int i = 0; i < len;) { + switch (encodedURL.charAt(i)) { + case '%': + if (len >= i + 3) { + os.write(Integer.parseInt(encodedURL.substring(i + 1, i + 3), 16)); } + i += 3; + break; + case '+': // exception from standard + os.write(' '); + i++; + break; + default: + os.write(encodedURL.charAt(i++)); + break; } - return new String(os.toByteArray(), "UTF8"); //$NON-NLS-1$ - } catch (UnsupportedEncodingException ex) { - return null; } + return new String(os.toByteArray(), StandardCharsets.UTF_8); } } |