Ignore:
Timestamp:
2014-10-19T01:27:04+02:00 (10 years ago)
Author:
donvip
Message:

[josm_plugins] fix java 7 warnings / global usage of try-with-resource

File:
1 edited

Legend:

Unmodified
Added
Removed
  • applications/editors/josm/plugins/imagerycache/src/org/openstreetmap/josm/plugins/imagerycache/OsmDBTilesLoader.java

    r29769 r30738  
    1111import java.util.Map;
    1212import java.util.Random;
     13
    1314import org.openstreetmap.gui.jmapviewer.JobDispatcher;
    1415import org.openstreetmap.gui.jmapviewer.OsmTileLoader;
     
    2021import org.openstreetmap.gui.jmapviewer.interfaces.TileSource;
    2122import org.openstreetmap.gui.jmapviewer.interfaces.TileSource.TileUpdate;
     23import org.openstreetmap.josm.Main;
    2224import org.openstreetmap.josm.data.preferences.BooleanProperty;
    2325
    2426/**
    25  * 
     27 *
    2628 * @author Alexei Kasatkin, based on OsmFileCacheTileLoader by @author Jan Peter Stotz, @author Stefan Zeller
    2729 */
    2830class OsmDBTilesLoader extends OsmTileLoader implements CachedTileLoader {
    29    
    30    
     31
     32
    3133    public static final long FILE_AGE_ONE_DAY = 1000 * 60 * 60 * 24;
    3234    public static final long FILE_AGE_ONE_WEEK = FILE_AGE_ONE_DAY * 7;
    33    
     35
    3436    public static final boolean debug = new BooleanProperty("imagerycache.debug", false).get();
    35            
     37
    3638    TileDAOMapDB dao;
    37    
     39
    3840    protected long maxCacheFileAge = FILE_AGE_ONE_WEEK;
    3941    protected long recheckAfter = FILE_AGE_ONE_DAY;
    4042
    41    
     43
    4244    public OsmDBTilesLoader(TileLoaderListener smap, File cacheFolder) {
    4345        super(smap);
     
    4547        dao.setCacheFolder(cacheFolder);
    4648    }
    47    
     49
    4850    @Override
    4951    public TileJob createTileLoaderJob(final Tile tile) {
     
    6062        dao.cleanStorage(source.getName());
    6163    }
    62    
     64
    6365    protected class DatabaseLoadJob implements TileJob {
    6466
    6567        private final Tile tile;
    6668        File tileCacheDir;
    67        
     69
    6870        /**
    69          * Stores the tile loaded from database, null if nothing found. 
     71         * Stores the tile loaded from database, null if nothing found.
    7072         */
    7173        DBTile dbTile = null;
    7274        long fileAge = 0;
    73        
     75
    7476        long id;
    7577        String sourceName;
    76        
     78
    7779        public DatabaseLoadJob(Tile tile) {
    7880            this.tile = tile;
     
    112114
    113115        /**
    114          * Loads tile from database. 
     116         * Loads tile from database.
    115117         * There can be dbTile != null but the tile is outdated and reload is still needed
    116118         * @return true if no loading from server is needed.
     
    120122            try {
    121123                dbTile = dao.getById(sourceName, id);
    122                
     124
    123125                if (dbTile == null) return false;
    124                
    125                 loadMetadata(); 
     126
     127                loadMetadata();
    126128                if (debug) System.out.println(id+": found in cache, metadata ="+dbTile.metaData);
    127129
     
    149151                }
    150152            } catch (Exception e) {
    151                 System.out.println("Error: Can not load tile from database: "+sourceName+":"+id);
    152                 e.printStackTrace(System.out);
     153                Main.error("Error: Can not load tile from database: "+sourceName+":"+id);
     154                Main.error(e);
    153155                try {
    154156                    if (bin != null) {
     
    161163                return false; // tile is not because of some error (corrupted database, etc.)
    162164            } catch (Error e) { // this is bad, bat MapDB throws it
    163                 System.out.println("Serious database error: Can not load tile from database: "+sourceName+":"+id);
    164                 e.printStackTrace(System.out);
    165                 dbTile = null;  fileAge = 0;  return false;                                           
     165                Main.error("Serious database error: Can not load tile from database: "+sourceName+":"+id);
     166                Main.error(e);
     167                dbTile = null;  fileAge = 0;  return false;
    166168            }
    167169        }
     
    170172            return System.currentTimeMillis() - maxCacheFileAge + recheckAfter;
    171173        }
    172                
     174
    173175        private void loadOrUpdateTileFromServer() {
    174            
     176
    175177            try {
    176178                URLConnection urlConn = loadTileFromOsm(tile);
     
    195197                    dbTile = new DBTile();
    196198                }
    197                
     199
    198200                if (tileUpdate == TileSource.TileUpdate.ETag || tileUpdate == TileSource.TileUpdate.IfNoneMatch) {
    199201                    String fileETag = tile.getValue("etag");
     
    224226                loadTileMetadata(tile, urlConn);
    225227                dbTile.metaData = tile.getMetadata();
    226                
     228
    227229                if ("no-tile".equals(tile.getValue("tile-info")))
    228230                {
     
    248250                    }
    249251                }
    250                
     252
    251253            } catch (Exception e) {
    252254                tile.setError(e.getMessage());
     
    261263            }
    262264        }
    263        
    264        
     265
     266
    265267        protected byte[] loadTileInBuffer(URLConnection urlConn) throws IOException {
    266268            InputStream input = urlConn.getInputStream();
     
    292294         * </ul>
    293295         *
    294          * @param fileAge time of the 
     296         * @param fileAge time of the
    295297         * @return <code>true</code> if the tile on the server is newer than the
    296298         *         file
Note: See TracChangeset for help on using the changeset viewer.