Mercurial > hg > release > thermostat-0.15
changeset 1251:ff7b684c65ef
Use appropriate encoding when reading files
Reviewed-by: vanaltj
Review-thread: http://icedtea.classpath.org/pipermail/thermostat/2013-September/008199.html
author | Omair Majid <omajid@redhat.com> |
---|---|
date | Wed, 11 Sep 2013 12:44:35 -0400 |
parents | 3a639bf4c6ce |
children | 4afcf1274915 |
files | agent/core/src/main/java/com/redhat/thermostat/agent/config/AgentConfigsUtils.java launcher/src/main/java/com/redhat/thermostat/launcher/internal/BuiltInCommandInfoSource.java system-backend/src/main/java/com/redhat/thermostat/backend/system/EtcOsRelease.java |
diffstat | 3 files changed, 10 insertions(+), 22 deletions(-) [+] |
line wrap: on
line diff
--- a/agent/core/src/main/java/com/redhat/thermostat/agent/config/AgentConfigsUtils.java Tue Aug 13 18:17:57 2013 +0200 +++ b/agent/core/src/main/java/com/redhat/thermostat/agent/config/AgentConfigsUtils.java Wed Sep 11 12:44:35 2013 -0400 @@ -38,8 +38,10 @@ import java.io.File; import java.io.FileInputStream; -import java.io.FileReader; import java.io.IOException; +import java.io.InputStreamReader; +import java.io.Reader; +import java.nio.charset.StandardCharsets; import java.util.Arrays; import java.util.Properties; @@ -115,7 +117,7 @@ if (authFile.canRead() && authFile.isFile()) { long length = authFile.length(); char[] authData = null; - try (FileReader reader = new FileReader(authFile)) { + try (Reader reader = new InputStreamReader(new FileInputStream(authFile), StandardCharsets.US_ASCII)) { if (length > Integer.MAX_VALUE || length < 0L) { throw new InvalidConfigurationException(t.localize(LocaleResources.FILE_NOT_VALID, authFile.getCanonicalPath())); }
--- a/launcher/src/main/java/com/redhat/thermostat/launcher/internal/BuiltInCommandInfoSource.java Tue Aug 13 18:17:57 2013 +0200 +++ b/launcher/src/main/java/com/redhat/thermostat/launcher/internal/BuiltInCommandInfoSource.java Wed Sep 11 12:44:35 2013 -0400 @@ -37,7 +37,7 @@ package com.redhat.thermostat.launcher.internal; import java.io.File; -import java.io.FileReader; +import java.io.FileInputStream; import java.io.FilenameFilter; import java.io.IOException; import java.util.Collection; @@ -72,7 +72,7 @@ for (File file : commandPropertyFiles) { Properties commandProps = new Properties(); try { - commandProps.load(new FileReader(file)); + commandProps.load(new FileInputStream(file)); } catch (IOException ignore) { // This means the command won't work, if it has dependencies it // needs to load. Also, it will not appear in help listing.
--- a/system-backend/src/main/java/com/redhat/thermostat/backend/system/EtcOsRelease.java Tue Aug 13 18:17:57 2013 +0200 +++ b/system-backend/src/main/java/com/redhat/thermostat/backend/system/EtcOsRelease.java Wed Sep 11 12:44:35 2013 -0400 @@ -37,17 +37,13 @@ package com.redhat.thermostat.backend.system; import java.io.BufferedReader; -import java.io.FileReader; +import java.io.FileInputStream; import java.io.IOException; -import java.util.logging.Level; -import java.util.logging.Logger; - -import com.redhat.thermostat.common.utils.LoggingUtils; +import java.io.InputStreamReader; +import java.nio.charset.StandardCharsets; public class EtcOsRelease implements DistributionInformationSource { - private static final Logger logger = LoggingUtils.getLogger(EtcOsRelease.class); - private static final String OS_RELEASE = "/etc/os-release"; @Override @@ -60,18 +56,8 @@ } public DistributionInformation getFromOsRelease(String releaseFile) throws IOException { - BufferedReader reader = null; - try { - reader = new BufferedReader(new FileReader(releaseFile)); + try (BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream(releaseFile), StandardCharsets.UTF_8))) { return getFromOsRelease(reader); - } finally { - try { - if (reader != null) { - reader.close(); - } - } catch (IOException e) { - logger.log(Level.WARNING, "unable to close input stream", e); - } } }