Ignore:
Timestamp:
2016-01-03T16:30:55+01:00 (8 years ago)
Author:
Don-vip
Message:

improve performance and simplify file copy operations (major performance gain when downloading geotools plugin)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/plugins/Plugin.java

    r9231 r9280  
    44import java.io.File;
    55import java.io.FileNotFoundException;
    6 import java.io.FileOutputStream;
    76import java.io.IOException;
    87import java.io.InputStream;
    98import java.net.URL;
    109import java.net.URLClassLoader;
     10import java.nio.file.Files;
     11import java.nio.file.StandardCopyOption;
    1112import java.security.AccessController;
    1213import java.security.PrivilegedAction;
     
    119120            pluginDir.mkdirs();
    120121        }
    121         try (
    122             FileOutputStream out = new FileOutputStream(new File(pluginDirName, to));
    123             InputStream in = getClass().getResourceAsStream(from)
    124         ) {
     122        try (InputStream in = getClass().getResourceAsStream(from)) {
    125123            if (in == null) {
    126124                throw new IOException("Resource not found: "+from);
    127125            }
    128             byte[] buffer = new byte[8192];
    129             for (int len = in.read(buffer); len > 0; len = in.read(buffer)) {
    130                 out.write(buffer, 0, len);
    131             }
     126            Files.copy(in, new File(pluginDirName, to).toPath(), StandardCopyOption.REPLACE_EXISTING);
    132127        }
    133128    }
Note: See TracChangeset for help on using the changeset viewer.