Revision: 5047
          http://sourceforge.net/p/jump-pilot/code/5047
Author:   michaudm
Date:     2016-10-06 06:44:39 +0000 (Thu, 06 Oct 2016)
Log Message:
-----------
Use URI_KEY and FILE_KEY properties for file based datasources in order to keep 
compatibility with legacy plugins

Modified Paths:
--------------
    core/trunk/ChangeLog
    core/trunk/src/com/vividsolutions/jump/io/CompressedFile.java
    core/trunk/src/com/vividsolutions/jump/io/datasource/DataSource.java
    
core/trunk/src/com/vividsolutions/jump/io/datasource/ReaderWriterFileDataSource.java
    
core/trunk/src/com/vividsolutions/jump/workbench/datasource/FileDataSourceQueryChooser.java
    
core/trunk/src/com/vividsolutions/jump/workbench/ui/plugin/OpenProjectPlugIn.java
    core/trunk/src/jumptest/io/Playground.java
    core/trunk/src/language/jump.properties
    core/trunk/src/language/jump_cz.properties
    core/trunk/src/language/jump_de.properties
    core/trunk/src/language/jump_es.properties
    core/trunk/src/language/jump_fi.properties
    core/trunk/src/language/jump_fr.properties
    core/trunk/src/language/jump_hu.properties
    core/trunk/src/language/jump_it.properties
    core/trunk/src/language/jump_ja_JP.properties
    core/trunk/src/language/jump_ml.properties
    core/trunk/src/language/jump_pt.properties
    core/trunk/src/language/jump_pt_BR.properties
    core/trunk/src/language/jump_ta_IN.properties
    core/trunk/src/language/jump_te.properties
    core/trunk/src/language/jump_zh_CN.properties
    core/trunk/src/language/jump_zh_HK.properties
    core/trunk/src/org/openjump/core/ccordsys/utils/ProjUtils.java
    core/trunk/src/org/openjump/core/ui/io/file/DataSourceFileLayerLoader.java
    
core/trunk/src/org/openjump/core/ui/plugin/file/SaveLayersWithoutDataSourcePlugIn.java
    core/trunk/src/org/openjump/core/ui/plugin/file/open/OpenProjectWizard.java
    
core/trunk/src/org/openjump/core/ui/plugin/layer/NewLayerPropertiesPlugIn.java
    core/trunk/src/org/openjump/core/ui/plugin/mousemenu/SaveDatasetsPlugIn.java

Modified: core/trunk/ChangeLog
===================================================================
--- core/trunk/ChangeLog        2016-10-05 14:15:10 UTC (rev 5046)
+++ core/trunk/ChangeLog        2016-10-06 06:44:39 UTC (rev 5047)
@@ -3,6 +3,10 @@
 # 2. make sure that lines break at 80 chars for constricted display situations
 #<-------------------------------- 80 chars 
---------------------------------->#
 
+2016-10-06 mmichaud <[email protected]>
+  * Use URI_KEY and FILE_KEY properties for file based datasources
+    in order to keep compatibility with legacy plugins
+
 2016-10-05 mmichaud <[email protected]>
   * Fix #431 : Save project with unsaved layers
 

Modified: core/trunk/src/com/vividsolutions/jump/io/CompressedFile.java
===================================================================
--- core/trunk/src/com/vividsolutions/jump/io/CompressedFile.java       
2016-10-05 14:15:10 UTC (rev 5046)
+++ core/trunk/src/com/vividsolutions/jump/io/CompressedFile.java       
2016-10-06 06:44:39 UTC (rev 5047)
@@ -207,7 +207,7 @@
 
     String extractMsg = compressedEntry != null ? " extract '" + 
compressedEntry
         + "'" : "";
-    Logger.debug("open '" + filePath + "'" + extractMsg);
+    Logger.debug("Open '" + filePath + "'" + extractMsg);
 
     // check file accessibility beforehand
     File file = new File(filePath);

Modified: core/trunk/src/com/vividsolutions/jump/io/datasource/DataSource.java
===================================================================
--- core/trunk/src/com/vividsolutions/jump/io/datasource/DataSource.java        
2016-10-05 14:15:10 UTC (rev 5046)
+++ core/trunk/src/com/vividsolutions/jump/io/datasource/DataSource.java        
2016-10-06 06:44:39 UTC (rev 5047)
@@ -75,6 +75,7 @@
   /**
    * Filename property, used for file-based DataSources
    */
+  @Deprecated
   public static final String FILE_KEY = "File";
 
   /**

Modified: 
core/trunk/src/com/vividsolutions/jump/io/datasource/ReaderWriterFileDataSource.java
===================================================================
--- 
core/trunk/src/com/vividsolutions/jump/io/datasource/ReaderWriterFileDataSource.java
        2016-10-05 14:15:10 UTC (rev 5046)
+++ 
core/trunk/src/com/vividsolutions/jump/io/datasource/ReaderWriterFileDataSource.java
        2016-10-06 06:44:39 UTC (rev 5047)
@@ -31,6 +31,7 @@
  */
 package com.vividsolutions.jump.io.datasource;
 
+import java.io.File;
 import java.net.URI;
 import java.util.ArrayList;
 import java.util.Collection;
@@ -90,7 +91,7 @@
                 .setTitle(
                     monitor,
                     I18N.getMessage(
-                        
"com.vividsolutions.jump.io.datasource.ReaderWriterFileDataSource.open-{0}",
+                        
"com.vividsolutions.jump.io.datasource.ReaderWriterFileDataSource.open",
                         createDescriptiveName(uri)));
           }
 
@@ -115,14 +116,21 @@
         
         // make readers task monitor aware
         DriverProperties dp = getWriterDriverProperties();
-        URI uri = new URI(dp.getProperty(DataSource.URI_KEY));
+        URI uri = null;
+        if (dp.getProperty(DataSource.URI_KEY) != null) {
+          uri = new URI(dp.getProperty(DataSource.URI_KEY));
+        }
+        // for legacy plugins
+        else if (dp.getProperty(DataSource.FILE_KEY) != null) {
+          uri = new File(dp.getProperty(DataSource.FILE_KEY)).toURI();
+        }
         if (writer instanceof TaskMonitorSupport) {
           ((TaskMonitorSupport) writer).setTaskMonitor(monitor);
           TaskMonitorUtil
               .setTitle(
                   monitor,
                   I18N.getMessage(
-                      
"com.vividsolutions.jump.io.datasource.ReaderWriterFileDataSource.write-{0}",
+                      
"com.vividsolutions.jump.io.datasource.ReaderWriterFileDataSource.write",
                       createDescriptiveName(uri)));
         }
 

Modified: 
core/trunk/src/com/vividsolutions/jump/workbench/datasource/FileDataSourceQueryChooser.java
===================================================================
--- 
core/trunk/src/com/vividsolutions/jump/workbench/datasource/FileDataSourceQueryChooser.java
 2016-10-05 14:15:10 UTC (rev 5046)
+++ 
core/trunk/src/com/vividsolutions/jump/workbench/datasource/FileDataSourceQueryChooser.java
 2016-10-06 06:44:39 UTC (rev 5047)
@@ -210,8 +210,8 @@
 
     protected Map<?,?> toProperties(File file) {
         HashMap<String,String> properties = new HashMap<>();
+        properties.put(DataSource.URI_KEY, file.toURI().toString());
         properties.put(DataSource.FILE_KEY, file.getPath());
-        properties.put(DataSource.URI_KEY, file.toURI().toString());
         properties.put(DataSource.COORDINATE_SYSTEM_KEY,
             getFileChooserPanel().getSelectedCoordinateSystem().getName());
 

Modified: 
core/trunk/src/com/vividsolutions/jump/workbench/ui/plugin/OpenProjectPlugIn.java
===================================================================
--- 
core/trunk/src/com/vividsolutions/jump/workbench/ui/plugin/OpenProjectPlugIn.java
   2016-10-05 14:15:10 UTC (rev 5046)
+++ 
core/trunk/src/com/vividsolutions/jump/workbench/ui/plugin/OpenProjectPlugIn.java
   2016-10-06 06:44:39 UTC (rev 5047)
@@ -237,7 +237,8 @@
                         {
                             //set the new source for this layer
                                Map properties = 
layer.getDataSourceQuery().getDataSource().getProperties();
-                               properties.put(DataSource.FILE_KEY, filename);
+                            properties.put(DataSource.URI_KEY, new 
File(filename).toURI().toString());
+                            properties.put(DataSource.FILE_KEY, filename);
                                
layer.getDataSourceQuery().getDataSource().setProperties(properties);           
            
                                load(layer, registry, monitor);
                         }

Modified: core/trunk/src/jumptest/io/Playground.java
===================================================================
--- core/trunk/src/jumptest/io/Playground.java  2016-10-05 14:15:10 UTC (rev 
5046)
+++ core/trunk/src/jumptest/io/Playground.java  2016-10-06 06:44:39 UTC (rev 
5047)
@@ -10,6 +10,7 @@
 import com.vividsolutions.jump.task.DummyTaskMonitor;
 
 
+import java.io.File;
 import java.util.ArrayList;
 import java.util.Collections;
 import java.util.Iterator;

Modified: core/trunk/src/language/jump.properties
===================================================================
--- core/trunk/src/language/jump.properties     2016-10-05 14:15:10 UTC (rev 
5046)
+++ core/trunk/src/language/jump.properties     2016-10-06 06:44:39 UTC (rev 
5047)
@@ -22,12 +22,15 @@
 JUMPWorkbench.status.initialize-datasources = Initialize Datasources
 JUMPWorkbench.status.show-workbench = Show Workbench
 
+
 
com.vividsolutions.jump.datastore.spatialdatabases.AbstractSpatialDatabasesDSExtension.datastore-disabled
 = Datastore ''{0}'' disabled\: {1}
 
com.vividsolutions.jump.datastore.spatialdatabases.AbstractSpatialDatabasesDSExtension.missing-dependency-jars
 = Missing dependency jars {0}
 
com.vividsolutions.jump.datastore.spatialdatabases.AbstractSpatialDatabasesDSExtension.there-were-errors
 = There were errors\: {0}
 
com.vividsolutions.jump.datastore.spatialdatabases.SpatialDatabasesDSConnection.unsupported-query-type
 = Unsupported Query Type
 
com.vividsolutions.jump.datastore.spatialdatabases.SpatialDatabasesDSConnection.resultset-must-have-a-geometry-column
 = Result Set Must Have a Geometry Column
 
com.vividsolutions.jump.datastore.spatialdatabases.SpatialDatabasesDSConnection.SQL-error
 = SQL error\:
+com.vividsolutions.jump.io.datasource.ReaderWriterFileDataSource.open = Open 
{0}
+com.vividsolutions.jump.io.datasource.ReaderWriterFileDataSource.write = Write 
{0}
 com.vividsolutions.jump.io.ShapefileReader.shp-gt-dbf = Error reading 
shapefile ''{0}'' \:\n\
        \ number of records in shp ({1}) > number of records in dbf ({2}).
 com.vividsolutions.jump.io.ShapefileReader.shp-lt-dbf = Error reading 
shapefile ''{0}'' \:\n\

Modified: core/trunk/src/language/jump_cz.properties
===================================================================
--- core/trunk/src/language/jump_cz.properties  2016-10-05 14:15:10 UTC (rev 
5046)
+++ core/trunk/src/language/jump_cz.properties  2016-10-06 06:44:39 UTC (rev 
5047)
@@ -2710,4 +2710,6 @@
 
org.openjump.core.ui.plugin.datastore.DataStoreSaveDriverPanel.write-3d-geometries=#T:Write
 3D geometries
 
org.openjump.core.ui.plugin.datastore.postgis2.PostGISSaveDriverPanel.primary-key=#T:Primary
 Key
 ui.EditOptionsPanel.select-geometry=#T:Select the geometry after it has been 
drawn
-ui.EditOptionsPanel.select-geometry-warning=#T:Warning: this option deselects 
previous geometries selection
\ No newline at end of file
+ui.EditOptionsPanel.select-geometry-warning=#T:Warning: this option deselects 
previous geometries selection
+com.vividsolutions.jump.io.datasource.ReaderWriterFileDataSource.open=#T:Open 
{0}
+com.vividsolutions.jump.io.datasource.ReaderWriterFileDataSource.write=#T:Write
 {0}
\ No newline at end of file

Modified: core/trunk/src/language/jump_de.properties
===================================================================
--- core/trunk/src/language/jump_de.properties  2016-10-05 14:15:10 UTC (rev 
5046)
+++ core/trunk/src/language/jump_de.properties  2016-10-06 06:44:39 UTC (rev 
5047)
@@ -2706,4 +2706,6 @@
 
org.openjump.core.ui.plugin.datastore.DataStoreSaveDriverPanel.write-3d-geometries=#T:Write
 3D geometries
 
org.openjump.core.ui.plugin.datastore.postgis2.PostGISSaveDriverPanel.primary-key=#T:Primary
 Key
 ui.EditOptionsPanel.select-geometry=#T:Select the geometry after it has been 
drawn
-ui.EditOptionsPanel.select-geometry-warning=#T:Warning: this option deselects 
previous geometries selection
\ No newline at end of file
+ui.EditOptionsPanel.select-geometry-warning=#T:Warning: this option deselects 
previous geometries selection
+com.vividsolutions.jump.io.datasource.ReaderWriterFileDataSource.open=#T:Open 
{0}
+com.vividsolutions.jump.io.datasource.ReaderWriterFileDataSource.write=#T:Write
 {0}
\ No newline at end of file

Modified: core/trunk/src/language/jump_es.properties
===================================================================
--- core/trunk/src/language/jump_es.properties  2016-10-05 14:15:10 UTC (rev 
5046)
+++ core/trunk/src/language/jump_es.properties  2016-10-06 06:44:39 UTC (rev 
5047)
@@ -2689,4 +2689,6 @@
 
org.openjump.core.ui.plugin.datastore.DataStoreSaveDriverPanel.write-3d-geometries=#T:Write
 3D geometries
 
org.openjump.core.ui.plugin.datastore.postgis2.PostGISSaveDriverPanel.primary-key=#T:Primary
 Key
 ui.EditOptionsPanel.select-geometry=#T:Select the geometry after it has been 
drawn
-ui.EditOptionsPanel.select-geometry-warning=#T:Warning: this option deselects 
previous geometries selection
\ No newline at end of file
+ui.EditOptionsPanel.select-geometry-warning=#T:Warning: this option deselects 
previous geometries selection
+com.vividsolutions.jump.io.datasource.ReaderWriterFileDataSource.open=#T:Open 
{0}
+com.vividsolutions.jump.io.datasource.ReaderWriterFileDataSource.write=#T:Write
 {0}
\ No newline at end of file

Modified: core/trunk/src/language/jump_fi.properties
===================================================================
--- core/trunk/src/language/jump_fi.properties  2016-10-05 14:15:10 UTC (rev 
5046)
+++ core/trunk/src/language/jump_fi.properties  2016-10-06 06:44:39 UTC (rev 
5047)
@@ -2683,4 +2683,6 @@
 
org.openjump.core.ui.plugin.datastore.DataStoreSaveDriverPanel.write-3d-geometries=#T:Write
 3D geometries
 
org.openjump.core.ui.plugin.datastore.postgis2.PostGISSaveDriverPanel.primary-key=#T:Primary
 Key
 ui.EditOptionsPanel.select-geometry=#T:Select the geometry after it has been 
drawn
-ui.EditOptionsPanel.select-geometry-warning=#T:Warning: this option deselects 
previous geometries selection
\ No newline at end of file
+ui.EditOptionsPanel.select-geometry-warning=#T:Warning: this option deselects 
previous geometries selection
+com.vividsolutions.jump.io.datasource.ReaderWriterFileDataSource.open=#T:Open 
{0}
+com.vividsolutions.jump.io.datasource.ReaderWriterFileDataSource.write=#T:Write
 {0}
\ No newline at end of file

Modified: core/trunk/src/language/jump_fr.properties
===================================================================
--- core/trunk/src/language/jump_fr.properties  2016-10-05 14:15:10 UTC (rev 
5046)
+++ core/trunk/src/language/jump_fr.properties  2016-10-06 06:44:39 UTC (rev 
5047)
@@ -2713,4 +2713,6 @@
 
org.openjump.core.ui.plugin.datastore.DataStoreSaveDriverPanel.write-3d-geometries=Ecrire
 des geometries avec Z
 
org.openjump.core.ui.plugin.datastore.postgis2.PostGISSaveDriverPanel.primary-key=Cl\xE9
 primaire
 ui.EditOptionsPanel.select-geometry=#T:Select the geometry after it has been 
drawn
-ui.EditOptionsPanel.select-geometry-warning=#T:Warning: this option deselects 
previous geometries selection
\ No newline at end of file
+ui.EditOptionsPanel.select-geometry-warning=#T:Warning: this option deselects 
previous geometries selection
+com.vividsolutions.jump.io.datasource.ReaderWriterFileDataSource.open=Ouvrir 
{0}
+com.vividsolutions.jump.io.datasource.ReaderWriterFileDataSource.write=Enregistrer
 {0}
\ No newline at end of file

Modified: core/trunk/src/language/jump_hu.properties
===================================================================
--- core/trunk/src/language/jump_hu.properties  2016-10-05 14:15:10 UTC (rev 
5046)
+++ core/trunk/src/language/jump_hu.properties  2016-10-06 06:44:39 UTC (rev 
5047)
@@ -2706,4 +2706,6 @@
 
org.openjump.core.ui.plugin.datastore.DataStoreSaveDriverPanel.write-3d-geometries=#T:Write
 3D geometries
 
org.openjump.core.ui.plugin.datastore.postgis2.PostGISSaveDriverPanel.primary-key=#T:Primary
 Key
 ui.EditOptionsPanel.select-geometry=#T:Select the geometry after it has been 
drawn
-ui.EditOptionsPanel.select-geometry-warning=#T:Warning: this option deselects 
previous geometries selection
\ No newline at end of file
+ui.EditOptionsPanel.select-geometry-warning=#T:Warning: this option deselects 
previous geometries selection
+com.vividsolutions.jump.io.datasource.ReaderWriterFileDataSource.open=#T:Open 
{0}
+com.vividsolutions.jump.io.datasource.ReaderWriterFileDataSource.write=#T:Write
 {0}
\ No newline at end of file

Modified: core/trunk/src/language/jump_it.properties
===================================================================
--- core/trunk/src/language/jump_it.properties  2016-10-05 14:15:10 UTC (rev 
5046)
+++ core/trunk/src/language/jump_it.properties  2016-10-06 06:44:39 UTC (rev 
5047)
@@ -2690,3 +2690,5 @@
 
org.openjump.core.ui.plugin.datastore.postgis2.PostGISSaveDriverPanel.primary-key=Chiave
 primaria
 ui.EditOptionsPanel.select-geometry=Seleziona la geometria dopo che \xE8 stata 
disegnata
 ui.EditOptionsPanel.select-geometry-warning=Attenzione: questa opzione 
diseleziona geometrie selezionate precedentemente
+com.vividsolutions.jump.io.datasource.ReaderWriterFileDataSource.open=#T:Open 
{0}
+com.vividsolutions.jump.io.datasource.ReaderWriterFileDataSource.write=#T:Write
 {0}

Modified: core/trunk/src/language/jump_ja_JP.properties
===================================================================
--- core/trunk/src/language/jump_ja_JP.properties       2016-10-05 14:15:10 UTC 
(rev 5046)
+++ core/trunk/src/language/jump_ja_JP.properties       2016-10-06 06:44:39 UTC 
(rev 5047)
@@ -2708,4 +2708,6 @@
 
org.openjump.core.ui.plugin.datastore.DataStoreSaveDriverPanel.write-3d-geometries=#T:Write
 3D geometries
 
org.openjump.core.ui.plugin.datastore.postgis2.PostGISSaveDriverPanel.primary-key=#T:Primary
 Key
 ui.EditOptionsPanel.select-geometry=#T:Select the geometry after it has been 
drawn
-ui.EditOptionsPanel.select-geometry-warning=#T:Warning: this option deselects 
previous geometries selection
\ No newline at end of file
+ui.EditOptionsPanel.select-geometry-warning=#T:Warning: this option deselects 
previous geometries selection
+com.vividsolutions.jump.io.datasource.ReaderWriterFileDataSource.open=#T:Open 
{0}
+com.vividsolutions.jump.io.datasource.ReaderWriterFileDataSource.write=#T:Write
 {0}
\ No newline at end of file

Modified: core/trunk/src/language/jump_ml.properties
===================================================================
--- core/trunk/src/language/jump_ml.properties  2016-10-05 14:15:10 UTC (rev 
5046)
+++ core/trunk/src/language/jump_ml.properties  2016-10-06 06:44:39 UTC (rev 
5047)
@@ -3979,4 +3979,6 @@
 
org.openjump.core.ui.plugin.datastore.DataStoreSaveDriverPanel.write-3d-geometries=#T:Write
 3D geometries
 
org.openjump.core.ui.plugin.datastore.postgis2.PostGISSaveDriverPanel.primary-key=#T:Primary
 Key
 ui.EditOptionsPanel.select-geometry=#T:Select the geometry after it has been 
drawn
-ui.EditOptionsPanel.select-geometry-warning=#T:Warning: this option deselects 
previous geometries selection
\ No newline at end of file
+ui.EditOptionsPanel.select-geometry-warning=#T:Warning: this option deselects 
previous geometries selection
+com.vividsolutions.jump.io.datasource.ReaderWriterFileDataSource.open=#T:Open 
{0}
+com.vividsolutions.jump.io.datasource.ReaderWriterFileDataSource.write=#T:Write
 {0}
\ No newline at end of file

Modified: core/trunk/src/language/jump_pt.properties
===================================================================
--- core/trunk/src/language/jump_pt.properties  2016-10-05 14:15:10 UTC (rev 
5046)
+++ core/trunk/src/language/jump_pt.properties  2016-10-06 06:44:39 UTC (rev 
5047)
@@ -2704,4 +2704,6 @@
 
org.openjump.core.ui.plugin.datastore.DataStoreSaveDriverPanel.write-3d-geometries=#T:Write
 3D geometries
 
org.openjump.core.ui.plugin.datastore.postgis2.PostGISSaveDriverPanel.primary-key=#T:Primary
 Key
 ui.EditOptionsPanel.select-geometry=#T:Select the geometry after it has been 
drawn
-ui.EditOptionsPanel.select-geometry-warning=#T:Warning: this option deselects 
previous geometries selection
\ No newline at end of file
+ui.EditOptionsPanel.select-geometry-warning=#T:Warning: this option deselects 
previous geometries selection
+com.vividsolutions.jump.io.datasource.ReaderWriterFileDataSource.open=#T:Open 
{0}
+com.vividsolutions.jump.io.datasource.ReaderWriterFileDataSource.write=#T:Write
 {0}
\ No newline at end of file

Modified: core/trunk/src/language/jump_pt_BR.properties
===================================================================
--- core/trunk/src/language/jump_pt_BR.properties       2016-10-05 14:15:10 UTC 
(rev 5046)
+++ core/trunk/src/language/jump_pt_BR.properties       2016-10-06 06:44:39 UTC 
(rev 5047)
@@ -2705,4 +2705,6 @@
 
org.openjump.core.ui.plugin.datastore.DataStoreSaveDriverPanel.write-3d-geometries=#T:Write
 3D geometries
 
org.openjump.core.ui.plugin.datastore.postgis2.PostGISSaveDriverPanel.primary-key=#T:Primary
 Key
 ui.EditOptionsPanel.select-geometry=#T:Select the geometry after it has been 
drawn
-ui.EditOptionsPanel.select-geometry-warning=#T:Warning: this option deselects 
previous geometries selection
\ No newline at end of file
+ui.EditOptionsPanel.select-geometry-warning=#T:Warning: this option deselects 
previous geometries selection
+com.vividsolutions.jump.io.datasource.ReaderWriterFileDataSource.open=#T:Open 
{0}
+com.vividsolutions.jump.io.datasource.ReaderWriterFileDataSource.write=#T:Write
 {0}
\ No newline at end of file

Modified: core/trunk/src/language/jump_ta_IN.properties
===================================================================
--- core/trunk/src/language/jump_ta_IN.properties       2016-10-05 14:15:10 UTC 
(rev 5046)
+++ core/trunk/src/language/jump_ta_IN.properties       2016-10-06 06:44:39 UTC 
(rev 5047)
@@ -2707,4 +2707,6 @@
 
org.openjump.core.ui.plugin.datastore.DataStoreSaveDriverPanel.write-3d-geometries=#T:Write
 3D geometries
 
org.openjump.core.ui.plugin.datastore.postgis2.PostGISSaveDriverPanel.primary-key=#T:Primary
 Key
 ui.EditOptionsPanel.select-geometry=#T:Select the geometry after it has been 
drawn
-ui.EditOptionsPanel.select-geometry-warning=#T:Warning: this option deselects 
previous geometries selection
\ No newline at end of file
+ui.EditOptionsPanel.select-geometry-warning=#T:Warning: this option deselects 
previous geometries selection
+com.vividsolutions.jump.io.datasource.ReaderWriterFileDataSource.open=#T:Open 
{0}
+com.vividsolutions.jump.io.datasource.ReaderWriterFileDataSource.write=#T:Write
 {0}
\ No newline at end of file

Modified: core/trunk/src/language/jump_te.properties
===================================================================
--- core/trunk/src/language/jump_te.properties  2016-10-05 14:15:10 UTC (rev 
5046)
+++ core/trunk/src/language/jump_te.properties  2016-10-06 06:44:39 UTC (rev 
5047)
@@ -3213,4 +3213,6 @@
 
org.openjump.core.ui.plugin.datastore.DataStoreSaveDriverPanel.write-3d-geometries=#T:Write
 3D geometries
 
org.openjump.core.ui.plugin.datastore.postgis2.PostGISSaveDriverPanel.primary-key=#T:Primary
 Key
 ui.EditOptionsPanel.select-geometry=#T:Select the geometry after it has been 
drawn
-ui.EditOptionsPanel.select-geometry-warning=#T:Warning: this option deselects 
previous geometries selection
\ No newline at end of file
+ui.EditOptionsPanel.select-geometry-warning=#T:Warning: this option deselects 
previous geometries selection
+com.vividsolutions.jump.io.datasource.ReaderWriterFileDataSource.open=#T:Open 
{0}
+com.vividsolutions.jump.io.datasource.ReaderWriterFileDataSource.write=#T:Write
 {0}
\ No newline at end of file

Modified: core/trunk/src/language/jump_zh_CN.properties
===================================================================
--- core/trunk/src/language/jump_zh_CN.properties       2016-10-05 14:15:10 UTC 
(rev 5046)
+++ core/trunk/src/language/jump_zh_CN.properties       2016-10-06 06:44:39 UTC 
(rev 5047)
@@ -2868,4 +2868,6 @@
 
org.openjump.core.ui.plugin.datastore.DataStoreSaveDriverPanel.write-3d-geometries=#T:Write
 3D geometries
 
org.openjump.core.ui.plugin.datastore.postgis2.PostGISSaveDriverPanel.primary-key=#T:Primary
 Key
 ui.EditOptionsPanel.select-geometry=#T:Select the geometry after it has been 
drawn
-ui.EditOptionsPanel.select-geometry-warning=#T:Warning: this option deselects 
previous geometries selection
\ No newline at end of file
+ui.EditOptionsPanel.select-geometry-warning=#T:Warning: this option deselects 
previous geometries selection
+com.vividsolutions.jump.io.datasource.ReaderWriterFileDataSource.open=#T:Open 
{0}
+com.vividsolutions.jump.io.datasource.ReaderWriterFileDataSource.write=#T:Write
 {0}
\ No newline at end of file

Modified: core/trunk/src/language/jump_zh_HK.properties
===================================================================
--- core/trunk/src/language/jump_zh_HK.properties       2016-10-05 14:15:10 UTC 
(rev 5046)
+++ core/trunk/src/language/jump_zh_HK.properties       2016-10-06 06:44:39 UTC 
(rev 5047)
@@ -2869,4 +2869,6 @@
 
org.openjump.core.ui.plugin.datastore.DataStoreSaveDriverPanel.write-3d-geometries=#T:Write
 3D geometries
 
org.openjump.core.ui.plugin.datastore.postgis2.PostGISSaveDriverPanel.primary-key=#T:Primary
 Key
 ui.EditOptionsPanel.select-geometry=#T:Select the geometry after it has been 
drawn
-ui.EditOptionsPanel.select-geometry-warning=#T:Warning: this option deselects 
previous geometries selection
\ No newline at end of file
+ui.EditOptionsPanel.select-geometry-warning=#T:Warning: this option deselects 
previous geometries selection
+com.vividsolutions.jump.io.datasource.ReaderWriterFileDataSource.open=#T:Open 
{0}
+com.vividsolutions.jump.io.datasource.ReaderWriterFileDataSource.write=#T:Write
 {0}
\ No newline at end of file

Modified: core/trunk/src/org/openjump/core/ccordsys/utils/ProjUtils.java
===================================================================
--- core/trunk/src/org/openjump/core/ccordsys/utils/ProjUtils.java      
2016-10-05 14:15:10 UTC (rev 5046)
+++ core/trunk/src/org/openjump/core/ccordsys/utils/ProjUtils.java      
2016-10-06 06:44:39 UTC (rev 5047)
@@ -18,8 +18,10 @@
 
 import java.io.File;
 import java.io.IOException;
+import java.net.URI;
 import java.net.URISyntaxException;
 import java.util.Iterator;
+import java.util.Map;
 import java.util.Scanner;
 
 /**
@@ -301,9 +303,14 @@
         else {
             if (!isDataBaseLayer(layer)) {
                 DataSourceQuery dsq = layer.getDataSourceQuery();
-                Object fnameObj = 
dsq.getDataSource().getProperties().get(DataSource.FILE_KEY);
-                fileSourcePath = fnameObj.toString();
-                srsInfo = getSRSInfoFromAuxiliaryFile(fileSourcePath);
+                Map properties = dsq.getDataSource().getProperties();
+                if (properties.get(DataSource.URI_KEY) != null) {
+                    fileSourcePath = new 
URI(properties.get(DataSource.URI_KEY).toString()).getPath();
+                    srsInfo = getSRSInfoFromAuxiliaryFile(fileSourcePath);
+                } else if (properties.get(DataSource.FILE_KEY) != null) {
+                    fileSourcePath = 
properties.get(DataSource.FILE_KEY).toString();
+                    srsInfo = getSRSInfoFromAuxiliaryFile(fileSourcePath);
+                }
             }
         }
         return srsInfo;

Modified: 
core/trunk/src/org/openjump/core/ui/io/file/DataSourceFileLayerLoader.java
===================================================================
--- core/trunk/src/org/openjump/core/ui/io/file/DataSourceFileLayerLoader.java  
2016-10-05 14:15:10 UTC (rev 5046)
+++ core/trunk/src/org/openjump/core/ui/io/file/DataSourceFileLayerLoader.java  
2016-10-06 06:44:39 UTC (rev 5047)
@@ -27,6 +27,7 @@
 package org.openjump.core.ui.io.file;
 
 import java.io.File;
+import java.net.MalformedURLException;
 import java.net.URI;
 import java.net.URISyntaxException;
 import java.util.ArrayList;
@@ -396,6 +397,7 @@
       file = new File(uri);
     }
     String filePath = file.getAbsolutePath();
+    properties.put(DataSource.URI_KEY, uri.toString());
     properties.put(DataSource.FILE_KEY, filePath);
     properties.putAll(options);
     return properties;

Modified: 
core/trunk/src/org/openjump/core/ui/plugin/file/SaveLayersWithoutDataSourcePlugIn.java
===================================================================
--- 
core/trunk/src/org/openjump/core/ui/plugin/file/SaveLayersWithoutDataSourcePlugIn.java
      2016-10-05 14:15:10 UTC (rev 5046)
+++ 
core/trunk/src/org/openjump/core/ui/plugin/file/SaveLayersWithoutDataSourcePlugIn.java
      2016-10-06 06:44:39 UTC (rev 5047)
@@ -166,8 +166,8 @@
         String path = new File(dir, fileName.getName()).getAbsolutePath();
         
         DriverProperties dp = new DriverProperties();
-        dp.set("File", path);
-        dp.set(DataSource.URI_KEY, new 
File(path).toURI().toURL().toExternalForm());
+        dp.set(DataSource.URI_KEY, new File(path).toURI().toString());
+        dp.set(DataSource.FILE_KEY, path);
         dataSource.setProperties(dp);
                 
         DataSourceQuery dsq = new DataSourceQuery(dataSource, path, path);

Modified: 
core/trunk/src/org/openjump/core/ui/plugin/file/open/OpenProjectWizard.java
===================================================================
--- core/trunk/src/org/openjump/core/ui/plugin/file/open/OpenProjectWizard.java 
2016-10-05 14:15:10 UTC (rev 5046)
+++ core/trunk/src/org/openjump/core/ui/plugin/file/open/OpenProjectWizard.java 
2016-10-06 06:44:39 UTC (rev 5047)
@@ -35,6 +35,8 @@
 import java.awt.*;
 import java.awt.geom.NoninvertibleTransformException;
 import java.io.*;
+import java.net.MalformedURLException;
+import java.net.URI;
 import java.util.ArrayList;
 import java.util.Collections;
 import java.util.List;
@@ -299,11 +301,18 @@
                             DataSourceQuery dataSourceQuery = 
layer.getDataSourceQuery();
                             DataSource dataSource = 
dataSourceQuery.getDataSource();
                             Map properties = dataSource.getProperties();
-                            String fname = 
properties.get(DataSource.FILE_KEY).toString();
+                            String fname = null;
+                            if (properties.get(DataSource.URI_KEY) != null && 
properties.get(DataSource.URI_KEY).toString().length()>0) {
+                                fname = new 
URI(properties.get(DataSource.URI_KEY).toString()).getPath();
+                            }
+                            //if (fname == null) {
+                            //    fname = 
properties.get(DataSource.FILE_KEY).toString();
+                            //}
                             String filename = findFile.getFileName(fname);
                             if (filename.length() > 0) {
                                 // set the new source for this layer
-                                properties.put(DataSource.FILE_KEY, filename);
+                                //properties.put(DataSource.FILE_KEY, 
filename);
+                                properties.put(DataSource.URI_KEY, new 
File(filename).toURI().toString());
                                 dataSource.setProperties(properties);
                                 load(layer, registry, monitor);
                             } else {
@@ -424,14 +433,16 @@
       return false;
   }
 
-    private File getLayerFileProperty(Layer layer) {
+    private File getLayerFileProperty(Layer layer) throws 
MalformedURLException {
       DataSourceQuery dataSourceQuery = layer.getDataSourceQuery();
       DataSource dataSource = dataSourceQuery.getDataSource();
       Map properties = dataSource.getProperties();
-      Object property = properties.get(DataSource.FILE_KEY);
-      if(property == null || property.toString().equals(""))
-          return null;
-      File layerFile = new File(property.toString());
+      File layerFile = null;
+      if (properties.get(DataSource.URI_KEY) != null && 
properties.get(DataSource.URI_KEY).toString().length() > 0) {
+          layerFile = new 
File(URI.create(properties.get(DataSource.URI_KEY).toString()).toURL().toExternalForm());
+      } else if (properties.get(DataSource.FILE_KEY) != null && 
properties.get(DataSource.FILE_KEY).toString().length() > 0) {
+          layerFile = new File(properties.get(DataSource.FILE_KEY).toString());
+      }
       return layerFile;
    }
 
@@ -439,6 +450,7 @@
       DataSourceQuery dataSourceQuery = layer.getDataSourceQuery();
       DataSource dataSource = dataSourceQuery.getDataSource();
       Map properties = dataSource.getProperties();
+      properties.put(DataSource.URI_KEY, file.toURI().toString());
       properties.put(DataSource.FILE_KEY, file.getAbsolutePath());
    }
   

Modified: 
core/trunk/src/org/openjump/core/ui/plugin/layer/NewLayerPropertiesPlugIn.java
===================================================================
--- 
core/trunk/src/org/openjump/core/ui/plugin/layer/NewLayerPropertiesPlugIn.java  
    2016-10-05 14:15:10 UTC (rev 5046)
+++ 
core/trunk/src/org/openjump/core/ui/plugin/layer/NewLayerPropertiesPlugIn.java  
    2016-10-06 06:44:39 UTC (rev 5047)
@@ -37,6 +37,8 @@
 import java.awt.event.ActionListener;
 import java.io.File;
 import java.io.IOException;
+import java.net.URI;
+import java.net.URISyntaxException;
 import java.nio.charset.Charset;
 import java.text.DecimalFormat;
 import java.text.NumberFormat;
@@ -440,8 +442,7 @@
                         info = info
                                 + property(SOURCE_PATH, label_Path_R, 
bgColor1);
                         // Add charset if selected vector layer is a shapefile
-                        if ((layers.length == 1)
-                                && (layers[0].getDataSourceQuery() != null)) {
+                        if (layers[0].getDataSourceQuery() != null) {
                             if (layers[0]
                                     .getDataSourceQuery()
                                     .getDataSource()
@@ -460,8 +461,7 @@
                 info = info + header("", COORDINATE_SYSTEM);
                 setInfoProjection(layers);
                 info = info + property(CRS, label_Coordinate, bgColor0);
-                info = info
-                        + property(SOURCE_PATH, label_Coordinate_file, 
bgColor1);
+                info = info + property(SOURCE_PATH, label_Coordinate_file, 
bgColor1);
             }
             // if more than one layer.class is selected
             else {
@@ -526,7 +526,7 @@
         }
 
         // Set Info layer (excluded projection)
-        private void setInfo(Layer[] layers) throws IOException {
+        private void setInfo(Layer[] layers) throws IOException, 
URISyntaxException {
             if (layers.length == 1) {
                 // If only one layer is selected
                 if (layers[0].getName().startsWith("wfs")) {
@@ -568,7 +568,7 @@
                         }
                         String geoClassName = geo.getClass().getName();
                         int count = geometryModes.get(geoClassName) == null ? 0
-                                : ((Integer) geometryModes.get(geoClassName))
+                                : (geometryModes.get(geoClassName))
                                         .intValue();
                         geometryModes.put(new String(geoClassName),
                                 new Integer(count + 1));
@@ -576,22 +576,20 @@
                 }
                 DataSourceQuery dsq = layers[l].getDataSourceQuery();
                 if (dsq != null) {
-                    String dsqSourceClass = dsq.getDataSource().getClass()
-                            .getName();
+                    String dsqSourceClass = 
dsq.getDataSource().getClass().getName();
                     if (sourceClass.equals("")) {
                         sourceClass = dsqSourceClass;
                     } else if (!sourceClass.equals(dsqSourceClass)) {
                         multipleSourceTypes = true;
                     }
-                    Object fnameObj = dsq.getDataSource().getProperties()
-                            .get(DataSource.FILE_KEY);
-                    if (fnameObj == null) {
-                        fnameObj = dsq.getDataSource().getProperties()
-                                
.get(DataStoreQueryDataSource.CONNECTION_DESCRIPTOR_KEY);
+                    Map properties = dsq.getDataSource().getProperties();
+                    if (properties.get(DataSource.URI_KEY) != null) {
+                        sourcePath = new 
URI(properties.get(DataSource.URI_KEY).toString()).getPath();
+                    } else if (properties.get(DataSource.FILE_KEY) != null) {
+                        sourcePath = 
properties.get(DataSource.FILE_KEY).toString();
+                    } else if 
(properties.get(DataStoreQueryDataSource.CONNECTION_DESCRIPTOR_KEY) != null) {
+                        sourcePath = 
properties.get(DataStoreQueryDataSource.CONNECTION_DESCRIPTOR_KEY).toString();
                     }
-                    if (fnameObj != null) {
-                        sourcePath = fnameObj.toString();
-                    }
                 }
             }
             if (numFeatures == 0) {

Modified: 
core/trunk/src/org/openjump/core/ui/plugin/mousemenu/SaveDatasetsPlugIn.java
===================================================================
--- 
core/trunk/src/org/openjump/core/ui/plugin/mousemenu/SaveDatasetsPlugIn.java    
    2016-10-05 14:15:10 UTC (rev 5046)
+++ 
core/trunk/src/org/openjump/core/ui/plugin/mousemenu/SaveDatasetsPlugIn.java    
    2016-10-06 06:44:39 UTC (rev 5047)
@@ -627,8 +627,9 @@
           String newFileName = path + newLayer.getName() + ".shp";
           HashMap properties = new HashMap();
           properties.put(DataSource.COORDINATE_SYSTEM_KEY, "Unspecified");
+          properties.put(DataSource.URI_KEY, new 
File(newFileName).toURI().toString());
           properties.put(DataSource.FILE_KEY, newFileName);
-          DataSource dataSource = (DataSource) 
StandardReaderWriterFileDataSource.Shapefile.class
+          DataSource dataSource = 
StandardReaderWriterFileDataSource.Shapefile.class
               .newInstance();
           dataSource.setProperties(properties);
           DataSourceQuery dataSourceQuery = new DataSourceQuery(dataSource,


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most 
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Jump-pilot-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel

Reply via email to