Author: aadamchik
Date: Fri Jul  6 20:49:17 2012
New Revision: 1358412

URL: http://svn.apache.org/viewvc?rev=1358412&view=rev
Log:
CAY-1718 Remove everything deprecated in 3.1

in progress

Removed:
    
cayenne/main/trunk/framework/cayenne-wocompat-unpublished/src/main/java/org/apache/cayenne/wocompat/ResourceLocator.java
Modified:
    
cayenne/main/trunk/framework/cayenne-wocompat-unpublished/src/main/java/org/apache/cayenne/wocompat/EOModelHelper.java
    
cayenne/main/trunk/framework/cayenne-wocompat-unpublished/src/main/java/org/apache/cayenne/wocompat/EOModelProcessor.java
    
cayenne/main/trunk/framework/cayenne-wocompat-unpublished/src/test/java/org/apache/cayenne/wocompat/EOModelHelperTest.java
    
cayenne/main/trunk/framework/cayenne-wocompat-unpublished/src/test/java/org/apache/cayenne/wocompat/EOModelProcessorInheritanceTest.java
    
cayenne/main/trunk/framework/cayenne-wocompat-unpublished/src/test/java/org/apache/cayenne/wocompat/EOModelProcessorTest.java
    
cayenne/main/trunk/framework/cayenne-wocompat-unpublished/src/test/java/org/apache/cayenne/wocompat/EOModelPrototypesTest.java
    
cayenne/main/trunk/framework/cayenne-wocompat-unpublished/src/test/java/org/apache/cayenne/wocompat/EOQueryTest.java
    
cayenne/main/trunk/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/ImportEOModelAction.java

Modified: 
cayenne/main/trunk/framework/cayenne-wocompat-unpublished/src/main/java/org/apache/cayenne/wocompat/EOModelHelper.java
URL: 
http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-wocompat-unpublished/src/main/java/org/apache/cayenne/wocompat/EOModelHelper.java?rev=1358412&r1=1358411&r2=1358412&view=diff
==============================================================================
--- 
cayenne/main/trunk/framework/cayenne-wocompat-unpublished/src/main/java/org/apache/cayenne/wocompat/EOModelHelper.java
 (original)
+++ 
cayenne/main/trunk/framework/cayenne-wocompat-unpublished/src/main/java/org/apache/cayenne/wocompat/EOModelHelper.java
 Fri Jul  6 20:49:17 2012
@@ -17,9 +17,9 @@
  *  under the License.
  ****************************************************************/
 
-
 package org.apache.cayenne.wocompat;
 
+import java.io.File;
 import java.io.IOException;
 import java.io.InputStream;
 import java.math.BigDecimal;
@@ -31,9 +31,9 @@ import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
 
-import org.apache.commons.collections.IteratorUtils;
 import org.apache.cayenne.map.DataMap;
 import org.apache.cayenne.wocompat.parser.Parser;
+import org.apache.commons.collections.IteratorUtils;
 
 /**
  * Helper class used by EOModelProcessor. EOModelHelper loads an EOModel from 
the
@@ -41,8 +41,6 @@ import org.apache.cayenne.wocompat.parse
  */
 public class EOModelHelper {
 
-    private static final ResourceLocator locator = new ResourceLocator();
-
     private Parser plistParser = new Parser();
     protected URL modelUrl;
     protected Map entityIndex;
@@ -52,20 +50,20 @@ public class EOModelHelper {
     protected DataMap dataMap;
     private Map prototypeValues;
 
-    static {
-        // configure locator
-        locator.setSkipClasspath(false);
-        locator.setSkipCurrentDirectory(false);
-        locator.setSkipAbsolutePath(false);
-    }
-
     /**
      * Creates helper instance and tries to locate EOModel and load index file.
+     * 
+     * @deprecated since 3.2, use {@link #EOModelHelper(URL)}.
      */
+    @Deprecated
     public EOModelHelper(String path) throws Exception {
+        this(new File(path).toURI().toURL());
+    }
 
-        this.modelUrl = findModelUrl(path);
-        this.dataMap = new DataMap(findModelName(path));
+    public EOModelHelper(URL modelUrl) throws Exception {
+
+        this.modelUrl = modelUrl;
+        this.dataMap = new DataMap(findModelName(modelUrl.toExternalForm()));
 
         // load index file
         List modelIndex = (List) loadModelIndex().get("entities");
@@ -102,7 +100,7 @@ public class EOModelHelper {
             String name = (String) info.get("name");
             Map entityPlistMap = entityPListMap(name);
             List classProperties = (List) 
entityPlistMap.get("classProperties");
-            if(classProperties == null) {
+            if (classProperties == null) {
                 classProperties = Collections.EMPTY_LIST;
             }
 
@@ -198,8 +196,10 @@ public class EOModelHelper {
                 }
                 catch (ClassNotFoundException 
yetAnotherClassNotFoundException) {
                     try {
-                        return ClassLoader.getSystemClassLoader().loadClass(
-                                valueClassName).getName();
+                        return ClassLoader
+                                .getSystemClassLoader()
+                                .loadClass(valueClassName)
+                                .getName();
                     }
                     catch (ClassNotFoundException e) {
                         // likely a custom class
@@ -217,23 +217,32 @@ public class EOModelHelper {
     protected Class numericAttributeClass(String valueType) {
         if (valueType == null) {
             return null;
-        } else if ("b".equals(valueType)) {
+        }
+        else if ("b".equals(valueType)) {
             return Byte.class;
-        } else if ("s".equals(valueType)) {
+        }
+        else if ("s".equals(valueType)) {
             return Short.class;
-        } else if ("i".equals(valueType)) {
+        }
+        else if ("i".equals(valueType)) {
             return Integer.class;
-        } else if ("l".equals(valueType)) {
+        }
+        else if ("l".equals(valueType)) {
             return Long.class;
-        } else if ("f".equals(valueType)) {
+        }
+        else if ("f".equals(valueType)) {
             return Float.class;
-        } else if ("d".equals(valueType)) {
+        }
+        else if ("d".equals(valueType)) {
             return Double.class;
-        } else if ("B".equals(valueType)) {
+        }
+        else if ("B".equals(valueType)) {
             return BigDecimal.class;
-        } else if ("c".equals(valueType)) {
+        }
+        else if ("c".equals(valueType)) {
             return Boolean.class;
-        } else {
+        }
+        else {
             return null;
         }
     }
@@ -248,13 +257,13 @@ public class EOModelHelper {
         return modelUrl;
     }
 
-    /** 
-     * Returns an iterator of model names. 
+    /**
+     * Returns an iterator of model names.
      */
     public Iterator modelNames() {
         return entityClassIndex.keySet().iterator();
     }
-    
+
     /**
      * Returns a list of model entity names.
      * 
@@ -272,7 +281,8 @@ public class EOModelHelper {
             // no prototypes
             if (eoPrototypesEntityMap == null) {
                 prototypeValues = Collections.EMPTY_MAP;
-            } else {
+            }
+            else {
                 List eoPrototypeAttributes = (List) eoPrototypesEntityMap
                         .get("attributes");
 
@@ -283,7 +293,8 @@ public class EOModelHelper {
 
                     String attrName = (String) attrMap.get("name");
 
-                    // TODO: why are we copying the original map? can we just 
use it as is?
+                    // TODO: why are we copying the original map? can we just 
use it as
+                    // is?
                     Map prototypeAttrMap = new HashMap();
                     prototypeValues.put(attrName, prototypeAttrMap);
 
@@ -343,7 +354,8 @@ public class EOModelHelper {
     public String entityClass(String entityName, boolean getClientClass) {
         if (getClientClass) {
             return (String) entityClientClassIndex.get(entityName);
-        } else {
+        }
+        else {
             return (String) entityClassIndex.get(entityName);
         }
     }
@@ -421,21 +433,6 @@ public class EOModelHelper {
     }
 
     /**
-     * Returns a URL of the EOModel directory. Throws exception if it can't be 
found.
-     */
-    protected URL findModelUrl(String path) {
-        if (!path.endsWith(".eomodeld")) {
-            path += ".eomodeld";
-        }
-
-        URL base = locator.findDirectoryResource(path);
-        if (base == null) {
-            throw new IllegalArgumentException("Can't find EOModel: " + path);
-        }
-        return base;
-    }
-
-    /**
      * Returns InputStream to read an EOModel index file.
      */
     protected InputStream openIndexStream() throws Exception {
@@ -445,8 +442,7 @@ public class EOModelHelper {
     /**
      * Returns InputStream to read an EOEntity plist file.
      * 
-     * @param entityName
-     *            name of EOEntity to be loaded.
+     * @param entityName name of EOEntity to be loaded.
      * @return InputStream to read an EOEntity plist file or null if
      *         <code>entityname.plist</code> file can not be located.
      */
@@ -457,8 +453,7 @@ public class EOModelHelper {
     /**
      * Returns InputStream to read an EOFetchSpecification plist file.
      * 
-     * @param entityName
-     *            name of EOEntity to be loaded.
+     * @param entityName name of EOEntity to be loaded.
      * @return InputStream to read an EOEntity plist file or null if
      *         <code>entityname.plist</code> file can not be located.
      */

Modified: 
cayenne/main/trunk/framework/cayenne-wocompat-unpublished/src/main/java/org/apache/cayenne/wocompat/EOModelProcessor.java
URL: 
http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-wocompat-unpublished/src/main/java/org/apache/cayenne/wocompat/EOModelProcessor.java?rev=1358412&r1=1358411&r2=1358412&view=diff
==============================================================================
--- 
cayenne/main/trunk/framework/cayenne-wocompat-unpublished/src/main/java/org/apache/cayenne/wocompat/EOModelProcessor.java
 (original)
+++ 
cayenne/main/trunk/framework/cayenne-wocompat-unpublished/src/main/java/org/apache/cayenne/wocompat/EOModelProcessor.java
 Fri Jul  6 20:49:17 2012
@@ -19,6 +19,7 @@
 
 package org.apache.cayenne.wocompat;
 
+import java.io.File;
 import java.io.FileNotFoundException;
 import java.io.InputStream;
 import java.net.URL;
@@ -68,30 +69,29 @@ public class EOModelProcessor {
     }
 
     /**
+     * @deprecated since 3.2 in favor of {@link #loadModeIndex(URL)}.
+     */
+    public Map loadModeIndex(String path) throws Exception {
+        return loadModeIndex(new File(path).toURI().toURL());
+    }
+
+    /**
      * Returns index.eomodeld contents as a Map.
      * 
-     * @since 1.1
+     * @since 3.2
      */
     // TODO: refactor EOModelHelper to provide a similar method without loading
     // all entity files in memory... here we simply copied stuff from 
EOModelHelper
-    public Map loadModeIndex(String path) throws Exception {
+    public Map loadModeIndex(URL url) throws Exception {
 
-        ResourceLocator locator = new ResourceLocator();
-        locator.setSkipClasspath(false);
-        locator.setSkipCurrentDirectory(false);
-        locator.setSkipAbsolutePath(false);
-
-        if (!path.endsWith(".eomodeld")) {
-            path += ".eomodeld";
-        }
+        String urlString = url.toExternalForm();
 
-        URL base = locator.findDirectoryResource(path);
-        if (base == null) {
-            throw new FileNotFoundException("Can't find EOModel: " + path);
+        if (!urlString.endsWith(".eomodeld")) {
+            url = new URL(urlString + ".eomodeld");
         }
 
         Parser plistParser = new Parser();
-        InputStream in = new URL(base, "index.eomodeld").openStream();
+        InputStream in = new URL(url, "index.eomodeld").openStream();
 
         try {
             plistParser.ReInit(in);
@@ -103,26 +103,40 @@ public class EOModelProcessor {
     }
 
     /**
-     * Performs EOModel loading.
-     * 
-     * @param path A path to ".eomodeld" directory. If path doesn't end with 
".eomodeld",
-     *            ".eomodeld" suffix is automatically assumed.
+     * @deprecated since 3.2 in favor of {@link #loadEOModel(URL)}.
      */
+    @Deprecated
     public DataMap loadEOModel(String path) throws Exception {
         return loadEOModel(path, false);
     }
 
     /**
+     * @deprecated since 3.2 in favor of {@link #loadEOModel(URL, boolean)}.
+     */
+    @Deprecated
+    public DataMap loadEOModel(String path, boolean generateClientClass) 
throws Exception {
+        return loadEOModel(new File(path).toURI().toURL(), 
generateClientClass);
+    }
+
+    /**
      * Performs EOModel loading.
      * 
-     * @param path A path to ".eomodeld" directory. If path doesn't end with 
".eomodeld",
-     *            ".eomodeld" suffix is automatically assumed.
+     * @param url URL of ".eomodeld" directory.
+     */
+    public DataMap loadEOModel(URL url) throws Exception {
+        return loadEOModel(url, false);
+    }
+
+    /**
+     * Performs EOModel loading.
+     * 
+     * @param url URL of ".eomodeld" directory.
      * @param generateClientClass if true then loading of EOModel is java 
client classes
      *            aware and the following processing will work with Java 
client class
      *            settings of the EOModel.
      */
-    public DataMap loadEOModel(String path, boolean generateClientClass) 
throws Exception {
-        EOModelHelper helper = makeHelper(path, generateClientClass);
+    public DataMap loadEOModel(URL url, boolean generateClientClass) throws 
Exception {
+        EOModelHelper helper = makeHelper(url);
 
         // create empty map
         DataMap dataMap = helper.getDataMap();
@@ -208,9 +222,8 @@ public class EOModelProcessor {
      * Creates an returns new EOModelHelper to process EOModel. Exists mostly 
for the
      * benefit of subclasses.
      */
-    protected EOModelHelper makeHelper(String path, boolean 
genereateClientClass)
-            throws Exception {
-        return new EOModelHelper(path);
+    protected EOModelHelper makeHelper(URL url) throws Exception {
+        return new EOModelHelper(url);
     }
 
     /**

Modified: 
cayenne/main/trunk/framework/cayenne-wocompat-unpublished/src/test/java/org/apache/cayenne/wocompat/EOModelHelperTest.java
URL: 
http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-wocompat-unpublished/src/test/java/org/apache/cayenne/wocompat/EOModelHelperTest.java?rev=1358412&r1=1358411&r2=1358412&view=diff
==============================================================================
--- 
cayenne/main/trunk/framework/cayenne-wocompat-unpublished/src/test/java/org/apache/cayenne/wocompat/EOModelHelperTest.java
 (original)
+++ 
cayenne/main/trunk/framework/cayenne-wocompat-unpublished/src/test/java/org/apache/cayenne/wocompat/EOModelHelperTest.java
 Fri Jul  6 20:49:17 2012
@@ -21,6 +21,7 @@ package org.apache.cayenne.wocompat;
 
 import java.io.IOException;
 import java.io.InputStream;
+import java.net.URL;
 import java.util.ArrayList;
 import java.util.Iterator;
 import java.util.List;
@@ -28,15 +29,15 @@ import java.util.Map;
 
 import junit.framework.TestCase;
 
-/**
- */
 public class EOModelHelperTest extends TestCase {
 
     protected EOModelHelper helper;
 
     @Override
     protected void setUp() throws Exception {
-        helper = new EOModelHelper("wotests/art.eomodeld");
+        URL url = 
getClass().getClassLoader().getResource("wotests/art.eomodeld/");
+        assertNotNull(url);
+        helper = new EOModelHelper(url);
     }
 
     public void testModelNames() throws Exception {

Modified: 
cayenne/main/trunk/framework/cayenne-wocompat-unpublished/src/test/java/org/apache/cayenne/wocompat/EOModelProcessorInheritanceTest.java
URL: 
http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-wocompat-unpublished/src/test/java/org/apache/cayenne/wocompat/EOModelProcessorInheritanceTest.java?rev=1358412&r1=1358411&r2=1358412&view=diff
==============================================================================
--- 
cayenne/main/trunk/framework/cayenne-wocompat-unpublished/src/test/java/org/apache/cayenne/wocompat/EOModelProcessorInheritanceTest.java
 (original)
+++ 
cayenne/main/trunk/framework/cayenne-wocompat-unpublished/src/test/java/org/apache/cayenne/wocompat/EOModelProcessorInheritanceTest.java
 Fri Jul  6 20:49:17 2012
@@ -19,6 +19,8 @@
 
 package org.apache.cayenne.wocompat;
 
+import java.net.URL;
+
 import junit.framework.TestCase;
 
 import org.apache.cayenne.map.DataMap;
@@ -27,15 +29,19 @@ import org.apache.cayenne.map.ObjRelatio
 
 public class EOModelProcessorInheritanceTest extends TestCase {
 
+    private URL url;
     protected EOModelProcessor processor;
 
     @Override
     public void setUp() throws Exception {
         processor = new EOModelProcessor();
+
+        url = getClass().getClassLoader().getResource("inheritance.eomodeld/");
+        assertNotNull(url);
     }
 
     public void testLoadAbstractEntity() throws Exception {
-        DataMap map = processor.loadEOModel("inheritance.eomodeld");
+        DataMap map = processor.loadEOModel(url);
 
         ObjEntity abstractE = map.getObjEntity("AbstractEntity");
         assertNotNull(abstractE);
@@ -44,7 +50,7 @@ public class EOModelProcessorInheritance
     }
 
     public void testLoadConcreteEntity() throws Exception {
-        DataMap map = processor.loadEOModel("inheritance.eomodeld");
+        DataMap map = processor.loadEOModel(url);
 
         ObjEntity concreteE = map.getObjEntity("ConcreteEntityOne");
         assertNotNull(concreteE);
@@ -56,7 +62,7 @@ public class EOModelProcessorInheritance
     }
 
     public void testLoadFlattenedRelationship() throws Exception {
-        DataMap map = processor.loadEOModel("inheritance.eomodeld");
+        DataMap map = processor.loadEOModel(url);
 
         ObjEntity e1 = map.getObjEntity("HelperFlatEntity");
         assertNotNull(e1);

Modified: 
cayenne/main/trunk/framework/cayenne-wocompat-unpublished/src/test/java/org/apache/cayenne/wocompat/EOModelProcessorTest.java
URL: 
http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-wocompat-unpublished/src/test/java/org/apache/cayenne/wocompat/EOModelProcessorTest.java?rev=1358412&r1=1358411&r2=1358412&view=diff
==============================================================================
--- 
cayenne/main/trunk/framework/cayenne-wocompat-unpublished/src/test/java/org/apache/cayenne/wocompat/EOModelProcessorTest.java
 (original)
+++ 
cayenne/main/trunk/framework/cayenne-wocompat-unpublished/src/test/java/org/apache/cayenne/wocompat/EOModelProcessorTest.java
 Fri Jul  6 20:49:17 2012
@@ -20,6 +20,7 @@
 package org.apache.cayenne.wocompat;
 
 import java.io.PrintWriter;
+import java.net.URL;
 import java.util.Collection;
 
 import junit.framework.TestCase;
@@ -45,7 +46,11 @@ public class EOModelProcessorTest extend
     }
 
     public void testLoadModel() throws Exception {
-        DataMap map = processor.loadEOModel("wotests/art.eomodeld");
+        URL url = 
getClass().getClassLoader().getResource("wotests/art.eomodeld/");
+        assertNotNull(url);
+
+        
+        DataMap map = processor.loadEOModel(url);
         assertLoaded("art", map);
         assertLoadedQueries(map);
         assertOneWayRelationships(map);
@@ -53,7 +58,11 @@ public class EOModelProcessorTest extend
     }
 
     public void testLoadModelWithDependencies() throws Exception {
-        DataMap map = 
processor.loadEOModel("wotests/cross-model-relationships.eomodeld");
+        URL url = getClass().getClassLoader().getResource(
+                "wotests/cross-model-relationships.eomodeld/");
+        assertNotNull(url);
+
+        DataMap map = processor.loadEOModel(url);
 
         ObjEntity entity = map.getObjEntity("CrossModelRelTest");
         assertNotNull(entity);
@@ -72,7 +81,10 @@ public class EOModelProcessorTest extend
     }
 
     public void testLoadBrokenModel() throws Exception {
-        DataMap map = processor.loadEOModel("art-with-errors.eomodeld");
+        URL url = 
getClass().getClassLoader().getResource("art-with-errors.eomodeld/");
+        assertNotNull(url);
+
+        DataMap map = processor.loadEOModel(url);
         assertLoaded("art-with-errors", map);
     }
 

Modified: 
cayenne/main/trunk/framework/cayenne-wocompat-unpublished/src/test/java/org/apache/cayenne/wocompat/EOModelPrototypesTest.java
URL: 
http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-wocompat-unpublished/src/test/java/org/apache/cayenne/wocompat/EOModelPrototypesTest.java?rev=1358412&r1=1358411&r2=1358412&view=diff
==============================================================================
--- 
cayenne/main/trunk/framework/cayenne-wocompat-unpublished/src/test/java/org/apache/cayenne/wocompat/EOModelPrototypesTest.java
 (original)
+++ 
cayenne/main/trunk/framework/cayenne-wocompat-unpublished/src/test/java/org/apache/cayenne/wocompat/EOModelPrototypesTest.java
 Fri Jul  6 20:49:17 2012
@@ -19,6 +19,7 @@
 
 package org.apache.cayenne.wocompat;
 
+import java.net.URL;
 import java.sql.Types;
 
 import junit.framework.TestCase;
@@ -31,8 +32,16 @@ import org.apache.cayenne.map.ObjEntity;
 
 public class EOModelPrototypesTest extends TestCase {
 
+    private URL url;
+
+    @Override
+    protected void setUp() throws Exception {
+        url = getClass().getClassLoader().getResource("prototypes.eomodeld/");
+        assertNotNull(url);
+    }
+
     public void testSkipPrototypes() throws Exception {
-        DataMap map = new 
EOModelProcessor().loadEOModel("prototypes.eomodeld");
+        DataMap map = new EOModelProcessor().loadEOModel(url);
 
         assertNotNull(map.getObjEntity("Document"));
         assertNull(map.getObjEntity("EOPrototypes"));
@@ -40,7 +49,7 @@ public class EOModelPrototypesTest exten
     }
 
     public void testDbAttributeType() throws Exception {
-        DataMap map = new 
EOModelProcessor().loadEOModel("prototypes.eomodeld");
+        DataMap map = new EOModelProcessor().loadEOModel(url);
 
         DbEntity dbe = map.getDbEntity("DOCUMENT");
         assertNotNull(dbe);
@@ -62,7 +71,7 @@ public class EOModelPrototypesTest exten
     // nothing
     // to do with prototypes...
     public void testSameColumnMapping() throws Exception {
-        DataMap map = new 
EOModelProcessor().loadEOModel("prototypes.eomodeld");
+        DataMap map = new EOModelProcessor().loadEOModel(url);
 
         ObjEntity estimateOE = map.getObjEntity("Estimate");
         ObjEntity invoiceOE = map.getObjEntity("Invoice");
@@ -85,9 +94,8 @@ public class EOModelPrototypesTest exten
     // TODO: move this test to EOModelProcessorInheritanceTst. The original 
problem had
     // nothing to do with prototypes...
     public void testOverridingAttributes() throws Exception {
-        DataMap map = new 
EOModelProcessor().loadEOModel("prototypes.eomodeld");
+        DataMap map = new EOModelProcessor().loadEOModel(url);
 
-        ObjEntity documentOE = map.getObjEntity("Document");
         ObjEntity estimateOE = map.getObjEntity("Estimate");
 
         assertSame(estimateOE, estimateOE.getAttribute("created").getEntity());

Modified: 
cayenne/main/trunk/framework/cayenne-wocompat-unpublished/src/test/java/org/apache/cayenne/wocompat/EOQueryTest.java
URL: 
http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-wocompat-unpublished/src/test/java/org/apache/cayenne/wocompat/EOQueryTest.java?rev=1358412&r1=1358411&r2=1358412&view=diff
==============================================================================
--- 
cayenne/main/trunk/framework/cayenne-wocompat-unpublished/src/test/java/org/apache/cayenne/wocompat/EOQueryTest.java
 (original)
+++ 
cayenne/main/trunk/framework/cayenne-wocompat-unpublished/src/test/java/org/apache/cayenne/wocompat/EOQueryTest.java
 Fri Jul  6 20:49:17 2012
@@ -19,6 +19,7 @@
 
 package org.apache.cayenne.wocompat;
 
+import java.net.URL;
 import java.util.Collection;
 import java.util.Map;
 
@@ -30,9 +31,12 @@ import org.apache.cayenne.query.Prefetch
 public class EOQueryTest extends TestCase {
 
     public void testConstructor() throws Exception {
+        
+        URL url = 
getClass().getClassLoader().getResource("wotests/fetchspec.eomodeld/");
+        assertNotNull(url);
 
         EOModelProcessor processor = new EOModelProcessor();
-        DataMap map = processor.loadEOModel("wotests/fetchspec.eomodeld");
+        DataMap map = processor.loadEOModel(url);
 
         Map fspecMap = (Map) 
PropertyListSerialization.propertyListFromStream(getClass()
                 .getClassLoader()

Modified: 
cayenne/main/trunk/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/ImportEOModelAction.java
URL: 
http://svn.apache.org/viewvc/cayenne/main/trunk/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/ImportEOModelAction.java?rev=1358412&r1=1358411&r2=1358412&view=diff
==============================================================================
--- 
cayenne/main/trunk/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/ImportEOModelAction.java
 (original)
+++ 
cayenne/main/trunk/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/action/ImportEOModelAction.java
 Fri Jul  6 20:49:17 2012
@@ -23,6 +23,7 @@ import java.awt.Component;
 import java.awt.HeadlessException;
 import java.awt.event.ActionEvent;
 import java.io.File;
+import java.net.URL;
 import java.util.ArrayList;
 import java.util.Collection;
 import java.util.Iterator;
@@ -109,17 +110,17 @@ public class ImportEOModelAction extends
             DataMap currentMap = getProjectController().getCurrentDataMap();
 
             try {
-                String path = file.getCanonicalPath();
+                URL url = file.toURI().toURL();
 
                 EOModelProcessor processor = new EOModelProcessor();
 
                 // load DataNode if we are not merging with an existing map
                 if (currentMap == null) {
-                    loadDataNode(processor.loadModeIndex(path));
+                    loadDataNode(processor.loadModeIndex(url));
                 }
 
                 // load DataMap
-                DataMap map = processor.loadEOModel(path);
+                DataMap map = processor.loadEOModel(url);
                 addDataMap(map, currentMap);
 
             }


Reply via email to