Ignore:
Timestamp:
2016-01-11T18:49:59+01:00 (8 years ago)
Author:
simon04
Message:

see #8824 - Allow to cancel updating of imagery entries in the preferences

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/io/imagery/ImageryReader.java

    r9406 r9412  
    22package org.openstreetmap.josm.io.imagery;
    33
     4import java.io.BufferedReader;
     5import java.io.Closeable;
    46import java.io.IOException;
    5 import java.io.InputStream;
    67import java.util.ArrayList;
    78import java.util.Arrays;
     
    2829import org.xml.sax.helpers.DefaultHandler;
    2930
    30 public class ImageryReader {
     31public class ImageryReader implements Closeable {
    3132
    3233    private final String source;
     34    private transient CachedFile cachedFile;
    3335
    3436    private enum State {
     
    5355        Parser parser = new Parser();
    5456        try {
    55             try (InputStream in = new CachedFile(source)
    56                     .setMaxAge(1*CachedFile.DAYS)
     57            cachedFile = new CachedFile(source);
     58            try (BufferedReader in = cachedFile
     59                    .setMaxAge(CachedFile.DAYS)
    5760                    .setCachingStrategy(CachedFile.CachingStrategy.IfModifiedSince)
    58                     .getInputStream()) {
    59                 InputSource is = new InputSource(UTFInputStreamReader.create(in));
     61                    .getContentReader()) {
     62                InputSource is = new InputSource(in);
    6063                Utils.parseSafeSAX(is, parser);
    6164                return parser.entries;
     
    355358        }
    356359    }
     360
     361    @Override
     362    public void close() throws IOException {
     363        Utils.close(cachedFile);
     364    }
    357365}
Note: See TracChangeset for help on using the changeset viewer.