You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by al...@apache.org on 2006/12/07 18:59:15 UTC

svn commit: r483574 - in /incubator/uima/uimaj/trunk/uimaj-core/src: main/java/org/apache/uima/resource/metadata/impl/ test/java/org/apache/uima/resource/metadata/impl/

Author: alally
Date: Thu Dec  7 09:59:12 2006
New Revision: 483574

URL: http://svn.apache.org/viewvc?view=rev&rev=483574
Log:
UIMA-105: fixed problem with circular imports leaving duplicates.
https://issues.apache.org/jira/browse/UIMA-105

Modified:
    incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/metadata/impl/FsIndexCollection_impl.java
    incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/metadata/impl/ResourceManagerConfiguration_impl.java
    incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/metadata/impl/TypePriorities_impl.java
    incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/metadata/impl/TypeSystemDescription_impl.java
    incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/metadata/impl/FsIndexCollection_implTest.java
    incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/metadata/impl/TypePriorities_implTest.java
    incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/metadata/impl/TypeSystemDescription_implTest.java

Modified: incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/metadata/impl/FsIndexCollection_impl.java
URL: http://svn.apache.org/viewvc/incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/metadata/impl/FsIndexCollection_impl.java?view=diff&rev=483574&r1=483573&r2=483574
==============================================================================
--- incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/metadata/impl/FsIndexCollection_impl.java (original)
+++ incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/metadata/impl/FsIndexCollection_impl.java Thu Dec  7 09:59:12 2006
@@ -198,6 +198,11 @@
 
   public void resolveImports(Collection aAlreadyImportedFsIndexURLs,
           ResourceManager aResourceManager) throws InvalidXMLException {
+    // add our own URL, if known, to the collection of already imported URLs
+    if (getSourceUrl() != null) {
+      aAlreadyImportedFsIndexURLs.add(getSourceUrl().toString());
+    }
+    
     List importedIndexes = new ArrayList();
     Import[] imports = getImports();
     for (int i = 0; i < imports.length; i++) {

Modified: incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/metadata/impl/ResourceManagerConfiguration_impl.java
URL: http://svn.apache.org/viewvc/incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/metadata/impl/ResourceManagerConfiguration_impl.java?view=diff&rev=483574&r1=483573&r2=483574
==============================================================================
--- incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/metadata/impl/ResourceManagerConfiguration_impl.java (original)
+++ incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/metadata/impl/ResourceManagerConfiguration_impl.java Thu Dec  7 09:59:12 2006
@@ -238,9 +238,7 @@
     }
   }
 
-  /*
-   * (non-Javadoc)
-   * 
+  /**
    * @see org.apache.uima.resource.metadata.ResourceManagerConfiguration#getImport()
    * @deprecated
    */
@@ -252,9 +250,7 @@
     }
   }
 
-  /*
-   * (non-Javadoc)
-   * 
+  /**
    * @see org.apache.uima.resource.metadata.ResourceManagerConfiguration#setImport(org.apache.uima.resource.metadata.Import)
    * @deprecated
    */
@@ -277,6 +273,10 @@
 
   public void resolveImports(Collection aAlreadyImportedURLs, ResourceManager aResourceManager)
           throws InvalidXMLException {
+    // add our own URL, if known, to the collection of already imported URLs
+    if (getSourceUrl() != null) {
+      aAlreadyImportedURLs.add(getSourceUrl().toString());
+    }
     List importedResources = new ArrayList();
     List importedBindings = new ArrayList();
     Import[] imports = getImports();

Modified: incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/metadata/impl/TypePriorities_impl.java
URL: http://svn.apache.org/viewvc/incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/metadata/impl/TypePriorities_impl.java?view=diff&rev=483574&r1=483573&r2=483574
==============================================================================
--- incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/metadata/impl/TypePriorities_impl.java (original)
+++ incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/metadata/impl/TypePriorities_impl.java Thu Dec  7 09:59:12 2006
@@ -195,6 +195,11 @@
 
   public void resolveImports(Collection aAlreadyImportedTypePrioritiesURLs,
           ResourceManager aResourceManager) throws InvalidXMLException {
+    // add our own URL, if known, to the collection of already imported URLs
+    if (getSourceUrl() != null) {
+      aAlreadyImportedTypePrioritiesURLs.add(getSourceUrl().toString());
+    }
+    
     List importedPriorityLists = new ArrayList();
     Import[] imports = getImports();
     for (int i = 0; i < imports.length; i++) {

Modified: incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/metadata/impl/TypeSystemDescription_impl.java
URL: http://svn.apache.org/viewvc/incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/metadata/impl/TypeSystemDescription_impl.java?view=diff&rev=483574&r1=483573&r2=483574
==============================================================================
--- incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/metadata/impl/TypeSystemDescription_impl.java (original)
+++ incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/metadata/impl/TypeSystemDescription_impl.java Thu Dec  7 09:59:12 2006
@@ -208,6 +208,11 @@
 
   public void resolveImports(Collection aAlreadyImportedTypeSystemURLs,
           ResourceManager aResourceManager) throws InvalidXMLException {
+    // add our own URL, if known, to the collection of already imported URLs
+    if (getSourceUrl() != null) {
+      aAlreadyImportedTypeSystemURLs.add(getSourceUrl().toString());
+    }
+
     List importedTypes = new ArrayList();
     Import[] imports = getImports();
     for (int i = 0; i < imports.length; i++) {

Modified: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/metadata/impl/FsIndexCollection_implTest.java
URL: http://svn.apache.org/viewvc/incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/metadata/impl/FsIndexCollection_implTest.java?view=diff&rev=483574&r1=483573&r2=483574
==============================================================================
--- incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/metadata/impl/FsIndexCollection_implTest.java (original)
+++ incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/metadata/impl/FsIndexCollection_implTest.java Thu Dec  7 09:59:12 2006
@@ -123,11 +123,6 @@
       descriptor = JUnitExtension.getFile("FsIndexCollectionImplTest/Circular1.xml");
       ic = UIMAFramework.getXMLParser().parseFsIndexCollection(new XMLInputSource(descriptor));
       ic.resolveImports();
-      // TODO: currently, there will be duplicates, so we need to call mergeTypeSystems.
-      // when we fix this, the next 3 lines should be deleted.
-      ArrayList l = new ArrayList();
-      l.add(ic);
-      ic = CasCreationUtils.mergeFsIndexes(l, resMgr);
       assertEquals(2, ic.getFsIndexes().length);
     } catch (Exception e) {
       JUnitExtension.handleException(e);

Modified: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/metadata/impl/TypePriorities_implTest.java
URL: http://svn.apache.org/viewvc/incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/metadata/impl/TypePriorities_implTest.java?view=diff&rev=483574&r1=483573&r2=483574
==============================================================================
--- incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/metadata/impl/TypePriorities_implTest.java (original)
+++ incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/metadata/impl/TypePriorities_implTest.java Thu Dec  7 09:59:12 2006
@@ -131,9 +131,7 @@
       descriptor = JUnitExtension.getFile("TypePrioritiesImplTest/Circular1.xml");
       pri = UIMAFramework.getXMLParser().parseTypePriorities(new XMLInputSource(descriptor));
       pri.resolveImports();
-      // TODO: currently, the circular import leaves duplicates.
-      // when we fix this, the "3" on the next line should become a "2".
-      assertEquals(3, pri.getPriorityLists().length);
+      assertEquals(2, pri.getPriorityLists().length);
 
       // calling resolveImports when there are none should do nothing
       descriptor = JUnitExtension.getFile("TypePrioritiesImplTest/SimpleTypePriorities.xml");

Modified: incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/metadata/impl/TypeSystemDescription_implTest.java
URL: http://svn.apache.org/viewvc/incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/metadata/impl/TypeSystemDescription_implTest.java?view=diff&rev=483574&r1=483573&r2=483574
==============================================================================
--- incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/metadata/impl/TypeSystemDescription_implTest.java (original)
+++ incubator/uima/uimaj/trunk/uimaj-core/src/test/java/org/apache/uima/resource/metadata/impl/TypeSystemDescription_implTest.java Thu Dec  7 09:59:12 2006
@@ -137,11 +137,6 @@
       descriptor = JUnitExtension.getFile("TypeSystemDescriptionImplTest/Circular1.xml");
       ts = UIMAFramework.getXMLParser().parseTypeSystemDescription(new XMLInputSource(descriptor));
       ts.resolveImports();
-      // TODO: currently, there will be duplicates, so we need to call mergeTypeSystems.
-      // when we fix this, the next 3 lines should be deleted.
-      ArrayList l = new ArrayList();
-      l.add(ts);
-      ts = CasCreationUtils.mergeTypeSystems(l);
       assertEquals(2, ts.getTypes().length);
 
       // calling resolveImports when there are none should do nothing