Ignore:
Timestamp:
2016-01-11T19:07:11+01:00 (8 years ago)
Author:
simon04
Message:

see #8824 - Fail fast when initializing imagery entries while starting

Use a short HTTP connect timeout of 1s for fetching the entries

File:
1 edited

Legend:

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

    r9412 r9414  
    6363    }
    6464
    65     public void load() {
     65    /**
     66     * Loads the custom as well as default imagery entries.
     67     * @param fastFail whether opening HTTP connections should fail fast, see {@link ImageryReader#setFastFail(boolean)}
     68     */
     69     public void load(boolean fastFail) {
    6670        clear();
    6771        List<ImageryPreferenceEntry> entries = Main.pref.getListOfStructs("imagery.entries", null, ImageryPreferenceEntry.class);
     
    7781            Collections.sort(layers);
    7882        }
    79         loadDefaults(false, true);
     83        loadDefaults(false, true, fastFail);
    8084    }
    8185
     
    8993     * @param clearCache if true, clear the cache and start a fresh download.
    9094     * @param quiet whether not the loading should be performed using a {@link PleaseWaitRunnable} in the background
    91      */
    92     public void loadDefaults(boolean clearCache, boolean quiet) {
    93         final DefaultEntryLoader loader = new DefaultEntryLoader(clearCache);
     95     * @param fastFail whether opening HTTP connections should fail fast, see {@link ImageryReader#setFastFail(boolean)}
     96     */
     97    public void loadDefaults(boolean clearCache, boolean quiet, boolean fastFail) {
     98        final DefaultEntryLoader loader = new DefaultEntryLoader(clearCache, fastFail);
    9499        if (quiet) {
    95100            loader.realRun();
    96101            loader.finish();
    97102        } else {
    98             Main.worker.execute(new DefaultEntryLoader(clearCache));
     103            Main.worker.execute(new DefaultEntryLoader(clearCache, fastFail));
    99104        }
    100105    }
     
    106111
    107112        private final boolean clearCache;
     113        private final boolean fastFail;
    108114        private final List<ImageryInfo> newLayers = new ArrayList<>();
    109115        private transient ImageryReader reader;
    110116        private transient boolean canceled;
    111117
    112         DefaultEntryLoader(boolean clearCache) {
     118        DefaultEntryLoader(boolean clearCache, boolean fastFail) {
    113119            super(tr("Update default entries"));
    114120            this.clearCache = clearCache;
     121            this.fastFail = fastFail;
    115122        }
    116123
     
    144151            try {
    145152                reader = new ImageryReader(source);
     153                reader.setFastFail(fastFail);
    146154                Collection<ImageryInfo> result = reader.parse();
    147155                newLayers.addAll(result);
Note: See TracChangeset for help on using the changeset viewer.