Ignore:
Timestamp:
2014-07-18T23:30:23+02:00 (12 years ago)
Author:
Don-vip
Message:

code simplification with some Java 7 new NIO2 Files methods (newBufferedReader, newBufferedWriter, readAllLines)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/data/Preferences.java

    r7248 r7315  
    88import java.io.BufferedReader;
    99import java.io.File;
    10 import java.io.FileInputStream;
    1110import java.io.FileOutputStream;
    1211import java.io.IOException;
    1312import java.io.InputStream;
    14 import java.io.InputStreamReader;
    1513import java.io.OutputStreamWriter;
    1614import java.io.PrintWriter;
     
    2018import java.lang.reflect.Field;
    2119import java.nio.charset.StandardCharsets;
     20import java.nio.file.Files;
    2221import java.util.ArrayList;
    2322import java.util.Collection;
     
    5756import org.openstreetmap.josm.tools.I18n;
    5857import org.openstreetmap.josm.tools.Utils;
     58import org.xml.sax.SAXException;
    5959
    6060/**
     
    790790    }
    791791
    792     public void load() throws Exception {
     792    /**
     793     * Loads preferences from settings file.
     794     * @throws IOException if any I/O error occurs while reading the file
     795     * @throws SAXException if the settings file does not contain valid XML
     796     * @throws XMLStreamException if an XML error occurs while parsing the file (after validation)
     797     */
     798    public void load() throws IOException, SAXException, XMLStreamException {
    793799        settingsMap.clear();
    794800        File pref = getPreferenceFile();
    795         try (BufferedReader in = new BufferedReader(new InputStreamReader(new FileInputStream(pref), StandardCharsets.UTF_8))) {
     801        try (BufferedReader in = Files.newBufferedReader(pref.toPath(), StandardCharsets.UTF_8)) {
    796802            validateXML(in);
    797803        }
    798         try (BufferedReader in = new BufferedReader(new InputStreamReader(new FileInputStream(pref), StandardCharsets.UTF_8))) {
     804        try (BufferedReader in = Files.newBufferedReader(pref.toPath(), StandardCharsets.UTF_8)) {
    799805            fromXML(in);
    800806        }
     
    803809    }
    804810
    805     public void init(boolean reset){
     811    /**
     812     * Initializes preferences.
     813     * @param reset if {@code true}, current settings file is replaced by the default one
     814     */
     815    public void init(boolean reset) {
    806816        // get the preferences.
    807817        File prefDir = getPreferencesDirFile();
     
    13881398    protected XMLStreamReader parser;
    13891399
    1390     public void validateXML(Reader in) throws Exception {
     1400    public void validateXML(Reader in) throws IOException, SAXException {
    13911401        SchemaFactory factory = SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI);
    13921402        try (InputStream xsdStream = new CachedFile("resource://data/preferences.xsd").getInputStream()) {
Note: See TracChangeset for help on using the changeset viewer.