You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by re...@apache.org on 2018/05/29 18:43:07 UTC

[uima-uimafit] 01/01: [UIMA-3928] createExternalResourceDescription() signatures shadowing each other

This is an automated email from the ASF dual-hosted git repository.

rec pushed a commit to branch feature/3928-create-external-resource-description-shadowing
in repository https://gitbox.apache.org/repos/asf/uima-uimafit.git

commit 71ebfc4d24faffa0e62a0c6be98a8db17e91870b
Author: Richard Eckart de Castilho <re...@apache.org>
AuthorDate: Tue May 29 20:43:00 2018 +0200

    [UIMA-3928] createExternalResourceDescription() signatures shadowing each other
    
    - Changed order of parameters to move the resource key away from the variadic parameters
    - Changed several method names to avoid ambiguities
---
 .gitignore                                         |  1 +
 .../uima/fit/factory/ExternalResourceFactory.java  | 69 +++++++++++-----------
 .../AnalysisEngineFactoryExternalResourceTest.java | 30 +++++-----
 ...ollectionReaderFactoryExternalResourceTest.java |  3 +
 .../fit/factory/ExternalResourceFactoryTest.java   |  6 +-
 .../FlowControllerFactoryExternalResourceTest.java |  1 +
 .../apache/uima/fit/pipeline/JCasIterableTest.java |  2 +
 .../uima/fit/pipeline/SimplePipelineTest.java      |  2 +
 .../uima/fit/cpe/ExternalResourceFactoryTest.java  |  6 +-
 .../examples/resource/ExternalResourceExample.java |  7 ++-
 .../resource/ExternalResourceExample2.java         |  7 ++-
 .../tutorial/ex6/UimaAcronymAnnotator.java         |  8 ++-
 .../tutorial/ex6/UimaMeetingAnnotator.java         |  8 +--
 .../fit/examples/tutorial/ex6/Example6Test.java    |  8 +--
 .../AnalysisEngineFactoryExternalResourceTest.java | 13 ++--
 ...ollectionReaderFactoryExternalResourceTest.java |  3 +
 .../fit/factory/ExternalResourceFactoryTest.java   |  2 +-
 .../FlowControllerFactoryExternalResourceTest.java |  1 +
 18 files changed, 101 insertions(+), 76 deletions(-)

diff --git a/.gitignore b/.gitignore
index e00ec70..19c577d 100644
--- a/.gitignore
+++ b/.gitignore
@@ -2,3 +2,4 @@
 .classpath
 .settings/
 target/
+api-change-report/
diff --git a/uimafit-core/src/main/java/org/apache/uima/fit/factory/ExternalResourceFactory.java b/uimafit-core/src/main/java/org/apache/uima/fit/factory/ExternalResourceFactory.java
index 842e042..7b52c6c 100644
--- a/uimafit-core/src/main/java/org/apache/uima/fit/factory/ExternalResourceFactory.java
+++ b/uimafit-core/src/main/java/org/apache/uima/fit/factory/ExternalResourceFactory.java
@@ -119,7 +119,7 @@ public final class ExternalResourceFactory {
    */
   public static ExternalResourceDescription createExternalResourceDescription(
           Class<? extends Resource> aInterface, Object... aParams) {
-    return createExternalResourceDescription(uniqueResourceKey(aInterface.getName()), aInterface,
+    return createNamedExternalResourceDescription(uniqueResourceKey(aInterface.getName()), aInterface,
             aParams);
   }
 
@@ -135,7 +135,7 @@ public final class ExternalResourceFactory {
    * @return the description.
    * @see CustomResourceSpecifier
    */
-  public static ExternalResourceDescription createExternalResourceDescription(final String aName,
+  public static ExternalResourceDescription createNamedExternalResourceDescription(final String aName,
           Class<? extends Resource> aInterface, Object... aParams) {
     ConfigurationParameterFactory.ensureParametersComeInPairs(aParams);
 
@@ -197,59 +197,59 @@ public final class ExternalResourceFactory {
 
   /**
    * Create an external resource description for a {@link SharedResourceObject}.
-   * 
-   * @param aInterface
-   *          the interface the resource should implement.
    * @param aUrl
    *          the URL from which the resource is initialized.
+   * @param aInterface
+   *          the interface the resource should implement.
    * @param aParams
    *          parameters passed to the resource when it is created.
+   * 
    * @return the description.
    * @see ConfigurableDataResourceSpecifier
    * @see SharedResourceObject
    */
-  public static ExternalResourceDescription createExternalResourceDescription(
-          Class<? extends SharedResourceObject> aInterface, String aUrl, Object... aParams) {
-    return createExternalResourceDescription(uniqueResourceKey(aInterface.getName()), aInterface,
+  public static ExternalResourceDescription createExternalSharedResourceDescription(
+          String aUrl, Class<? extends SharedResourceObject> aInterface, Object... aParams) {
+    return createNamedExternalResourceDescriptionUsingUrl(uniqueResourceKey(aInterface.getName()), aInterface,
             aUrl, aParams);
   }
 
   /**
    * Create an external resource description for a {@link SharedResourceObject}.
-   * 
-   * @param aInterface
-   *          the interface the resource should implement.
    * @param aUrl
    *          the URL from which the resource is initialized.
+   * @param aInterface
+   *          the interface the resource should implement.
    * @param aParams
    *          parameters passed to the resource when it is created.
+   * 
    * @return the description.
    * @see ConfigurableDataResourceSpecifier
    * @see SharedResourceObject
    */
-  public static ExternalResourceDescription createExternalResourceDescription(
-          Class<? extends SharedResourceObject> aInterface, URL aUrl, Object... aParams) {
-    return createExternalResourceDescription(uniqueResourceKey(aInterface.getName()), aInterface,
+  public static ExternalResourceDescription createExternalSharedResourceDescription(
+          URL aUrl, Class<? extends SharedResourceObject> aInterface, Object... aParams) {
+    return createNamedExternalResourceDescriptionUsingUrl(uniqueResourceKey(aInterface.getName()), aInterface,
             aUrl.toString(), aParams);
   }
 
   /**
    * Create an external resource description for a {@link SharedResourceObject}.
-   * 
-   * @param aInterface
-   *          the interface the resource should implement.
    * @param aFile
    *          the file from which the resource is initialized.
+   * @param aInterface
+   *          the interface the resource should implement.
    * @param aParams
    *          parameters passed to the resource when it is created.
+   * 
    * @return the description.
    * @see ConfigurableDataResourceSpecifier
    * @see SharedResourceObject
    */
-  public static ExternalResourceDescription createExternalResourceDescription(
-          Class<? extends SharedResourceObject> aInterface, File aFile, Object... aParams) {
+  public static ExternalResourceDescription createExternalSharedResourceDescription(
+          File aFile, Class<? extends SharedResourceObject> aInterface, Object... aParams) {
     try {
-      return createExternalResourceDescription(aInterface, aFile.toURI().toURL(), aParams);
+      return createExternalSharedResourceDescription(aFile.toURI().toURL(), aInterface, aParams);
     } catch (MalformedURLException e) {
       // This is something that usually cannot happen, so we degrade this to an
       // IllegalArgumentException which is a RuntimeException that does not need to be caught.
@@ -272,7 +272,7 @@ public final class ExternalResourceFactory {
    * @see ConfigurableDataResourceSpecifier
    * @see SharedResourceObject
    */
-  public static ExternalResourceDescription createExternalResourceDescription(final String aName,
+  public static ExternalResourceDescription createNamedExternalResourceDescriptionUsingUrl(final String aName,
           Class<? extends SharedResourceObject> aInterface, String aUrl, Object... aParams) {
     // Extract ExternalResourceDescriptions from configurationData
     List<ExternalResourceBinding> bindings = new ArrayList<ExternalResourceBinding>();
@@ -317,8 +317,8 @@ public final class ExternalResourceFactory {
    * @return the description.
    * @see FileResourceSpecifier
    */
-  public static ExternalResourceDescription createExternalResourceDescription(final String aName,
-          String aUrl) {
+  public static ExternalResourceDescription createNamedExternalFileResourceDescription(
+          final String aName, String aUrl) {
     ExternalResourceDescription extRes = new ExternalResourceDescription_impl();
     extRes.setName(aName);
     FileResourceSpecifier frs = new FileResourceSpecifier_impl();
@@ -540,7 +540,7 @@ public final class ExternalResourceFactory {
    */
   public static void bindResource(ResourceSpecifier aDesc, String aKey, String aUrl)
           throws InvalidXMLException {
-    ExternalResourceDescription extRes = createExternalResourceDescription(aKey, aUrl);
+    ExternalResourceDescription extRes = createNamedExternalFileResourceDescription(aKey, aUrl);
     bindResource(aDesc, aKey, extRes);
   }
 
@@ -588,7 +588,7 @@ public final class ExternalResourceFactory {
           ClassNotFoundException {
     // Appending a disambiguation suffix it possible to have multiple instances of the same
     // resource with different settings to different keys.
-    ExternalResourceDescription extRes = createExternalResourceDescription(
+    ExternalResourceDescription extRes = createNamedExternalResourceDescription(
             uniqueResourceKey(aRes.getName()), aRes, (Object[]) aParams);
     bindResource(aDesc, extRes);
   }
@@ -596,7 +596,6 @@ public final class ExternalResourceFactory {
   /**
    * Scan the given resource specifier for external resource dependencies and whenever a dependency
    * with a compatible type is found, the resource will be bound.
-   * 
    * @param aDesc
    *          a description.
    * @param aRes
@@ -611,10 +610,10 @@ public final class ExternalResourceFactory {
    *           if the resource implementation class or interface class could not be accessed
    * @see SharedResourceObject
    */
-  public static void bindResource(ResourceSpecifier aDesc,
+  public static void bindResourceUsingUrl(ResourceSpecifier aDesc,
           Class<? extends SharedResourceObject> aRes, String aUrl, Object... aParams)
           throws InvalidXMLException, ClassNotFoundException {
-    ExternalResourceDescription extRes = createExternalResourceDescription(
+    ExternalResourceDescription extRes = createNamedExternalResourceDescriptionUsingUrl(
             uniqueResourceKey(aRes.getName()), aRes, aUrl, aParams);
     bind((AnalysisEngineDescription) aDesc, extRes);
   }
@@ -637,10 +636,10 @@ public final class ExternalResourceFactory {
    *           if import resolution failed
    * @see SharedResourceObject
    */
-  public static void bindResource(ResourceSpecifier aDesc, Class<?> aApi,
+  public static void bindResourceUsingUrl(ResourceSpecifier aDesc, Class<?> aApi,
           Class<? extends SharedResourceObject> aRes, String aUrl, Object... aParams)
           throws InvalidXMLException {
-    bindResource(aDesc, aApi.getName(), aRes, aUrl, aParams);
+    bindResourceUsingUrl(aDesc, aApi.getName(), aRes, aUrl, aParams);
   }
 
   /**
@@ -661,10 +660,10 @@ public final class ExternalResourceFactory {
    *           if import resolution failed
    * @see SharedResourceObject
    */
-  public static void bindResource(ResourceSpecifier aDesc, String aKey,
+  public static void bindResourceUsingUrl(ResourceSpecifier aDesc, String aKey,
           Class<? extends SharedResourceObject> aRes, String aUrl, Object... aParams)
           throws InvalidXMLException {
-    ExternalResourceDescription extRes = createExternalResourceDescription(
+    ExternalResourceDescription extRes = createNamedExternalResourceDescriptionUsingUrl(
             uniqueResourceKey(aRes.getName()), aRes, aUrl, aParams);
     bind((AnalysisEngineDescription) aDesc, aKey, extRes);
   }
@@ -693,7 +692,7 @@ public final class ExternalResourceFactory {
 
     // Appending a disambiguation suffix it possible to have multiple instances of the same
     // resource with different settings to different keys.
-    ExternalResourceDescription extRes = createExternalResourceDescription(
+    ExternalResourceDescription extRes = createNamedExternalResourceDescription(
             uniqueResourceKey(aRes.getName()), aRes, (Object[]) aParams);
     bindResource(aDesc, aKey, extRes);
   }
@@ -880,7 +879,7 @@ public final class ExternalResourceFactory {
    * @throws InvalidXMLException
    *           if import resolution failed
    */
-  public static void createDependencyAndBind(AnalysisEngineDescription aDesc, String aKey,
+  public static void createDependencyAndBindUsingUrl(AnalysisEngineDescription aDesc, String aKey,
           Class<? extends SharedResourceObject> aImpl, String aUrl, Object... aParams)
           throws InvalidXMLException {
     if (aDesc.getExternalResourceDependency(aKey) == null) {
@@ -891,7 +890,7 @@ public final class ExternalResourceFactory {
       aDesc.setExternalResourceDependencies((ExternalResourceDependency[]) ArrayUtils.add(deps,
               createExternalResourceDependency(aKey, aImpl, false, null)));
     }
-    bindResource(aDesc, aKey, aImpl, aUrl, aParams);
+    bindResourceUsingUrl(aDesc, aKey, aImpl, aUrl, aParams);
   }
 
   /**
diff --git a/uimafit-core/src/test/java/org/apache/uima/fit/factory/AnalysisEngineFactoryExternalResourceTest.java b/uimafit-core/src/test/java/org/apache/uima/fit/factory/AnalysisEngineFactoryExternalResourceTest.java
index 7ad8d7c..dede1ba 100644
--- a/uimafit-core/src/test/java/org/apache/uima/fit/factory/AnalysisEngineFactoryExternalResourceTest.java
+++ b/uimafit-core/src/test/java/org/apache/uima/fit/factory/AnalysisEngineFactoryExternalResourceTest.java
@@ -22,7 +22,7 @@ package org.apache.uima.fit.factory;
 import static org.apache.uima.fit.factory.AnalysisEngineFactory.createEngine;
 import static org.apache.uima.fit.factory.AnalysisEngineFactory.createEngineDescription;
 import static org.apache.uima.fit.factory.ExternalResourceFactory.bindExternalResource;
-import static org.apache.uima.fit.factory.ExternalResourceFactory.createExternalResourceDescription;
+import static org.apache.uima.fit.factory.ExternalResourceFactory.*;
 import static org.junit.Assert.assertNotNull;
 
 import java.io.ByteArrayInputStream;
@@ -238,7 +238,7 @@ public class AnalysisEngineFactoryExternalResourceTest {
     AnalysisEngineDescription aeDesc = saveLoad(createEngineDescription(
             TestAnalysisEngineWithSharedResourceObject.class,
             TestAnalysisEngineWithSharedResourceObject.PARAM_RESOURCE,
-            createExternalResourceDescription(TestSharedResourceObject.class, "http://dumm.my",
+            createExternalSharedResourceDescription("http://dumm.my", TestSharedResourceObject.class,
                     TestSharedResourceObject.PARAM_VALUE, TestSharedResourceObject.EXPECTED_VALUE)));
 
     AnalysisEngine ae = createEngine(aeDesc);
@@ -250,8 +250,8 @@ public class AnalysisEngineFactoryExternalResourceTest {
    */
   @Test
   public void sharedObject_testSharedInjection() throws Exception {
-    ExternalResourceDescription resDesc = createExternalResourceDescription(
-            TestSharedResourceObject.class, "http://dumm.my", TestSharedResourceObject.PARAM_VALUE,
+    ExternalResourceDescription resDesc = createExternalSharedResourceDescription(
+            "http://dumm.my", TestSharedResourceObject.class, TestSharedResourceObject.PARAM_VALUE,
             TestSharedResourceObject.EXPECTED_VALUE);
 
     AnalysisEngineDescription aeDesc1 = saveLoad(createEngineDescription(
@@ -282,14 +282,14 @@ public class AnalysisEngineFactoryExternalResourceTest {
     AnalysisEngineDescription aeDesc = saveLoad(createEngineDescription(
             TestAnalysisEngineWithSharedResourceObject.class,
             TestAnalysisEngineWithSharedResourceObject.PARAM_RESOURCE,
-            createExternalResourceDescription(
-                    TestSharedResourceObject2.class,
+            createExternalSharedResourceDescription(
                     "http://dumm.my",
+                    TestSharedResourceObject2.class,
                     TestSharedResourceObject2.PARAM_VALUE,
                     TestSharedResourceObject2.EXPECTED_VALUE,
                     TestSharedResourceObject2.PARAM_RESOURCE,
-                    createExternalResourceDescription(TestSharedResourceObject.class,
-                            "http://dumm.my", TestSharedResourceObject.PARAM_VALUE,
+                    createExternalSharedResourceDescription("http://dumm.my",
+                            TestSharedResourceObject.class, TestSharedResourceObject.PARAM_VALUE,
                             TestSharedResourceObject.EXPECTED_VALUE))));
 
     AnalysisEngine ae = createEngine(aeDesc);
@@ -301,12 +301,12 @@ public class AnalysisEngineFactoryExternalResourceTest {
    */
   @Test
   public void sharedObject_testSimpleNestingViaBind() throws Exception {
-    ExternalResourceDescription res2 = createExternalResourceDescription(
-            TestSharedResourceObject.class, "http://dumm.my", 
+    ExternalResourceDescription res2 = createExternalSharedResourceDescription(
+            "http://dumm.my", TestSharedResourceObject.class, 
             TestSharedResourceObject.PARAM_VALUE, TestSharedResourceObject.EXPECTED_VALUE);
 
-    ExternalResourceDescription res1 = createExternalResourceDescription(
-            TestSharedResourceObject2.class, "http://dumm.my",
+    ExternalResourceDescription res1 = createExternalSharedResourceDescription(
+            "http://dumm.my", TestSharedResourceObject2.class,
             TestSharedResourceObject2.PARAM_VALUE, TestSharedResourceObject2.EXPECTED_VALUE);
 
     bindExternalResource(res1, TestSharedResourceObject2.PARAM_RESOURCE, res2);
@@ -326,8 +326,8 @@ public class AnalysisEngineFactoryExternalResourceTest {
    */
   @Test
   public void sharedObject_testSelfInjection() throws Exception {
-    ExternalResourceDescription resDesc = createExternalResourceDescription(
-            TestSharedResourceObject2.class, "http://dumm.my",
+    ExternalResourceDescription resDesc = createExternalSharedResourceDescription(
+            "http://dumm.my", TestSharedResourceObject2.class,
             TestSharedResourceObject.PARAM_VALUE, TestSharedResourceObject.EXPECTED_VALUE);
     bindExternalResource(resDesc, TestSharedResourceObject2.PARAM_RESOURCE, resDesc);
 
@@ -369,6 +369,7 @@ public class AnalysisEngineFactoryExternalResourceTest {
     @ConfigurationParameter(name = ExternalResourceFactory.PARAM_RESOURCE_NAME)
     private String resourceName;
 
+    @Override
     public void afterResourcesInitialized() {
       System.out.println(getClass().getSimpleName() + ".afterResourcesInitialized()");
       // Ensure the External Resource is bound
@@ -379,6 +380,7 @@ public class AnalysisEngineFactoryExternalResourceTest {
       assertConfiguredOk();
     }
 
+    @Override
     public String getResourceName() {
       return resourceName;
     }
diff --git a/uimafit-core/src/test/java/org/apache/uima/fit/factory/CollectionReaderFactoryExternalResourceTest.java b/uimafit-core/src/test/java/org/apache/uima/fit/factory/CollectionReaderFactoryExternalResourceTest.java
index daf29bf..2607684 100644
--- a/uimafit-core/src/test/java/org/apache/uima/fit/factory/CollectionReaderFactoryExternalResourceTest.java
+++ b/uimafit-core/src/test/java/org/apache/uima/fit/factory/CollectionReaderFactoryExternalResourceTest.java
@@ -74,16 +74,19 @@ public class CollectionReaderFactoryExternalResourceTest {
     @ExternalResource(key = PARAM_RESOURCE)
     private TestExternalResource resource;
 
+    @Override
     public boolean hasNext() throws IOException, CollectionException {
       assertNotNull(resource);
       resource.assertConfiguredOk();
       return false;
     }
 
+    @Override
     public void getNext(CAS aCAS) throws IOException, CollectionException {
       // This is never called
     }
 
+    @Override
     public Progress[] getProgress() {
       return new Progress[0];
     }
diff --git a/uimafit-core/src/test/java/org/apache/uima/fit/factory/ExternalResourceFactoryTest.java b/uimafit-core/src/test/java/org/apache/uima/fit/factory/ExternalResourceFactoryTest.java
index 8243413..40c9d41 100644
--- a/uimafit-core/src/test/java/org/apache/uima/fit/factory/ExternalResourceFactoryTest.java
+++ b/uimafit-core/src/test/java/org/apache/uima/fit/factory/ExternalResourceFactoryTest.java
@@ -24,7 +24,7 @@ import static org.apache.uima.fit.factory.AnalysisEngineFactory.createEngine;
 import static org.apache.uima.fit.factory.AnalysisEngineFactory.createEngineDescription;
 import static org.apache.uima.fit.factory.ExternalResourceFactory.bindExternalResource;
 import static org.apache.uima.fit.factory.ExternalResourceFactory.bindResource;
-import static org.apache.uima.fit.factory.ExternalResourceFactory.createExternalResourceDescription;
+import static org.apache.uima.fit.factory.ExternalResourceFactory.*;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertNotNull;
@@ -133,7 +133,7 @@ public class ExternalResourceFactoryTest extends ComponentTestBase {
   public void testAccessResourceFromAE() throws Exception {
     AnalysisEngine ae = createEngine(
             DummyAE3.class,
-            DummyAE3.RES_KEY_1, createExternalResourceDescription(
+            DummyAE3.RES_KEY_1, createNamedExternalResourceDescription(
                     "lala", AnnotatedResource.class,
                     AnnotatedResource.PARAM_VALUE, "1"));
 
@@ -654,7 +654,7 @@ public class ExternalResourceFactoryTest extends ComponentTestBase {
       List<String> params = new ArrayList<String>(Arrays.asList(aParams));
       params.add(AnnotatedDataResource.PARAM_EXTENSION);
       params.add(extension);
-      ExternalResourceDescription desc = ExternalResourceFactory.createExternalResourceDescription(
+      ExternalResourceDescription desc = ExternalResourceFactory.createNamedExternalResourceDescription(
               null, AnnotatedDataResource.class, params.toArray(new String[params.size()]));
       return (DataResource) UIMAFramework.produceResource(desc.getResourceSpecifier(), null);
     }
diff --git a/uimafit-core/src/test/java/org/apache/uima/fit/factory/FlowControllerFactoryExternalResourceTest.java b/uimafit-core/src/test/java/org/apache/uima/fit/factory/FlowControllerFactoryExternalResourceTest.java
index 0692d6a..e3402eb 100644
--- a/uimafit-core/src/test/java/org/apache/uima/fit/factory/FlowControllerFactoryExternalResourceTest.java
+++ b/uimafit-core/src/test/java/org/apache/uima/fit/factory/FlowControllerFactoryExternalResourceTest.java
@@ -86,6 +86,7 @@ public class FlowControllerFactoryExternalResourceTest {
   }
 
   public static class TestFlowObject extends CasFlow_ImplBase {
+    @Override
     public Step next() throws AnalysisEngineProcessException {
       return new FinalStep();
     }
diff --git a/uimafit-core/src/test/java/org/apache/uima/fit/pipeline/JCasIterableTest.java b/uimafit-core/src/test/java/org/apache/uima/fit/pipeline/JCasIterableTest.java
index 4167667..b3432b6 100644
--- a/uimafit-core/src/test/java/org/apache/uima/fit/pipeline/JCasIterableTest.java
+++ b/uimafit-core/src/test/java/org/apache/uima/fit/pipeline/JCasIterableTest.java
@@ -93,10 +93,12 @@ public class JCasIterableTest {
       initTypeSystemCalled = true;
     }
           
+    @Override
     public Progress[] getProgress() {
       return new Progress[] { new ProgressImpl(n, N, "document") };
     }
 
+    @Override
     public boolean hasNext() throws IOException, CollectionException {
       return n < N;
     }
diff --git a/uimafit-core/src/test/java/org/apache/uima/fit/pipeline/SimplePipelineTest.java b/uimafit-core/src/test/java/org/apache/uima/fit/pipeline/SimplePipelineTest.java
index 36dcdcc..a974eaf 100644
--- a/uimafit-core/src/test/java/org/apache/uima/fit/pipeline/SimplePipelineTest.java
+++ b/uimafit-core/src/test/java/org/apache/uima/fit/pipeline/SimplePipelineTest.java
@@ -70,10 +70,12 @@ public class SimplePipelineTest {
       initTypeSystemCalled = true;
     }
     
+    @Override
     public Progress[] getProgress() {
       return null;
     }
 
+    @Override
     public boolean hasNext() throws IOException, CollectionException {
       assertTrue("typeSystemInit() has not been called", initTypeSystemCalled);
       return this.current < this.size;
diff --git a/uimafit-cpe/src/test/java/org/apache/uima/fit/cpe/ExternalResourceFactoryTest.java b/uimafit-cpe/src/test/java/org/apache/uima/fit/cpe/ExternalResourceFactoryTest.java
index eae4b9e..68ee33a 100644
--- a/uimafit-cpe/src/test/java/org/apache/uima/fit/cpe/ExternalResourceFactoryTest.java
+++ b/uimafit-cpe/src/test/java/org/apache/uima/fit/cpe/ExternalResourceFactoryTest.java
@@ -262,14 +262,17 @@ public class ExternalResourceFactoryTest {
     @ConfigurationParameter(name = PARAM_EXTENSION, mandatory = true)
     private String extension;
 
+    @Override
     public InputStream getInputStream() throws IOException {
       return null;
     }
 
+    @Override
     public URI getUri() {
       return URI.create(uri + extension);
     }
 
+    @Override
     public URL getUrl() {
       return null;
     }
@@ -282,11 +285,12 @@ public class ExternalResourceFactoryTest {
     @ConfigurationParameter(name = PARAM_EXTENSION, mandatory = true)
     private String extension;
 
+    @Override
     public DataResource getDataResource(String[] aParams) throws ResourceInitializationException {
       List<String> params = new ArrayList<String>(Arrays.asList(aParams));
       params.add(AnnotatedDataResource.PARAM_EXTENSION);
       params.add(extension);
-      ExternalResourceDescription desc = ExternalResourceFactory.createExternalResourceDescription(
+      ExternalResourceDescription desc = ExternalResourceFactory.createNamedExternalResourceDescription(
               null, AnnotatedDataResource.class, params.toArray(new String[params.size()]));
       return (DataResource) UIMAFramework.produceResource(desc.getResourceSpecifier(), null);
     }
diff --git a/uimafit-examples/src/main/java/org/apache/uima/fit/examples/resource/ExternalResourceExample.java b/uimafit-examples/src/main/java/org/apache/uima/fit/examples/resource/ExternalResourceExample.java
index 9374f45..6315efd 100644
--- a/uimafit-examples/src/main/java/org/apache/uima/fit/examples/resource/ExternalResourceExample.java
+++ b/uimafit-examples/src/main/java/org/apache/uima/fit/examples/resource/ExternalResourceExample.java
@@ -21,7 +21,7 @@ package org.apache.uima.fit.examples.resource;
 
 import static org.apache.uima.fit.factory.AnalysisEngineFactory.createEngine;
 import static org.apache.uima.fit.factory.AnalysisEngineFactory.createEngineDescription;
-import static org.apache.uima.fit.factory.ExternalResourceFactory.createExternalResourceDescription;
+import static org.apache.uima.fit.factory.ExternalResourceFactory.createExternalSharedResourceDescription;
 
 import java.io.File;
 
@@ -48,6 +48,7 @@ public class ExternalResourceExample {
   public static final class SharedModel implements SharedResourceObject {
     private String uri;
 
+    @Override
     public void load(DataResource aData) throws ResourceInitializationException {
       uri = aData.getUri().toString();
     }
@@ -79,8 +80,8 @@ public class ExternalResourceExample {
    * Illustrate how to configure the annotator with the shared model object.
    */
   public static void main(String[] args) throws Exception {
-    ExternalResourceDescription extDesc = createExternalResourceDescription(SharedModel.class,
-            new File("somemodel.bin"));
+    ExternalResourceDescription extDesc = createExternalSharedResourceDescription(
+            new File("somemodel.bin"), SharedModel.class);
 
     // Binding external resource to each Annotator individually
     AnalysisEngineDescription aed1 = createEngineDescription(Annotator.class, Annotator.RES_MODEL,
diff --git a/uimafit-examples/src/main/java/org/apache/uima/fit/examples/resource/ExternalResourceExample2.java b/uimafit-examples/src/main/java/org/apache/uima/fit/examples/resource/ExternalResourceExample2.java
index d0d0935..c463875 100644
--- a/uimafit-examples/src/main/java/org/apache/uima/fit/examples/resource/ExternalResourceExample2.java
+++ b/uimafit-examples/src/main/java/org/apache/uima/fit/examples/resource/ExternalResourceExample2.java
@@ -21,7 +21,7 @@ package org.apache.uima.fit.examples.resource;
 
 import static org.apache.uima.fit.factory.AnalysisEngineFactory.createEngine;
 import static org.apache.uima.fit.factory.AnalysisEngineFactory.createEngineDescription;
-import static org.apache.uima.fit.factory.ExternalResourceFactory.bindResource;
+import static org.apache.uima.fit.factory.ExternalResourceFactory.bindResourceUsingUrl;
 
 import java.io.File;
 
@@ -46,6 +46,7 @@ public class ExternalResourceExample2 {
   public static final class SharedModel implements SharedResourceObject {
     private String uri;
 
+    @Override
     public void load(DataResource aData) throws ResourceInitializationException {
       uri = aData.getUri().toString();
     }
@@ -85,8 +86,8 @@ public class ExternalResourceExample2 {
 
     // Bind external resource to the aggregate
     AnalysisEngineDescription aaed = createEngineDescription(aed1, aed2);
-    bindResource(aaed, Annotator.RES_MODEL, SharedModel.class, new File("somemodel.bin").toURI()
-            .toURL().toString());
+    bindResourceUsingUrl(aaed, Annotator.RES_MODEL, SharedModel.class,
+            new File("somemodel.bin").toURI().toURL().toString());
 
     // Check the external resource was injected
     AnalysisEngine ae = createEngine(aaed);
diff --git a/uimafit-examples/src/main/java/org/apache/uima/fit/examples/tutorial/ex6/UimaAcronymAnnotator.java b/uimafit-examples/src/main/java/org/apache/uima/fit/examples/tutorial/ex6/UimaAcronymAnnotator.java
index 89a595c..0a6123a 100644
--- a/uimafit-examples/src/main/java/org/apache/uima/fit/examples/tutorial/ex6/UimaAcronymAnnotator.java
+++ b/uimafit-examples/src/main/java/org/apache/uima/fit/examples/tutorial/ex6/UimaAcronymAnnotator.java
@@ -19,7 +19,8 @@
 package org.apache.uima.fit.examples.tutorial.ex6;
 
 import static org.apache.uima.fit.factory.AnalysisEngineFactory.createEngineDescription;
-import static org.apache.uima.fit.factory.ExternalResourceFactory.createExternalResourceDescription;
+import static org.apache.uima.fit.factory.ExternalResourceFactory.createExternalSharedResourceDescription;
+
 import java.io.File;
 import java.io.FileOutputStream;
 import java.util.StringTokenizer;
@@ -74,8 +75,9 @@ public class UimaAcronymAnnotator extends JCasAnnotator_ImplBase {
     AnalysisEngineDescription aed = createEngineDescription(
             UimaAcronymAnnotator.class,
             UimaAcronymAnnotator.RES_ACRONYM_TABLE,
-            createExternalResourceDescription(StringMapResource_impl.class,
-                    "file:org/apache/uima/fit/examples/tutorial/ex6/uimaAcronyms.txt"));
+            createExternalSharedResourceDescription(
+                    "file:org/apache/uima/fit/examples/tutorial/ex6/uimaAcronyms.txt",
+                    StringMapResource_impl.class));
     
     aed.toXML(new FileOutputStream(new File(outputDirectory, "UimaAcronymAnnotator.xml")));
   }
diff --git a/uimafit-examples/src/main/java/org/apache/uima/fit/examples/tutorial/ex6/UimaMeetingAnnotator.java b/uimafit-examples/src/main/java/org/apache/uima/fit/examples/tutorial/ex6/UimaMeetingAnnotator.java
index e2fa8b4..8a03cd9 100644
--- a/uimafit-examples/src/main/java/org/apache/uima/fit/examples/tutorial/ex6/UimaMeetingAnnotator.java
+++ b/uimafit-examples/src/main/java/org/apache/uima/fit/examples/tutorial/ex6/UimaMeetingAnnotator.java
@@ -19,7 +19,7 @@
 package org.apache.uima.fit.examples.tutorial.ex6;
 
 import static org.apache.uima.fit.factory.AnalysisEngineFactory.createEngineDescription;
-import static org.apache.uima.fit.factory.ExternalResourceFactory.createExternalResourceDescription;
+import static org.apache.uima.fit.factory.ExternalResourceFactory.createExternalSharedResourceDescription;
 import static org.apache.uima.fit.util.JCasUtil.select;
 
 import java.io.File;
@@ -111,9 +111,9 @@ public class UimaMeetingAnnotator extends JCasAnnotator_ImplBase {
     File outputDirectory = new File("target/examples/tutorial/ex6/");
     outputDirectory.mkdirs();
 
-    ExternalResourceDescription resource = createExternalResourceDescription(
-            StringMapResource_impl.class,
-            "file:org/apache/uima/fit/examples/tutorial/ex6/uimaAcronyms.txt");
+    ExternalResourceDescription resource = createExternalSharedResourceDescription(
+            "file:org/apache/uima/fit/examples/tutorial/ex6/uimaAcronyms.txt",
+            StringMapResource_impl.class);
 
     AggregateBuilder builder = new AggregateBuilder();
     builder.add(createEngineDescription(UimaAcronymAnnotator.class,
diff --git a/uimafit-examples/src/test/java/org/apache/uima/fit/examples/tutorial/ex6/Example6Test.java b/uimafit-examples/src/test/java/org/apache/uima/fit/examples/tutorial/ex6/Example6Test.java
index 40cba4f..e78207e 100644
--- a/uimafit-examples/src/test/java/org/apache/uima/fit/examples/tutorial/ex6/Example6Test.java
+++ b/uimafit-examples/src/test/java/org/apache/uima/fit/examples/tutorial/ex6/Example6Test.java
@@ -20,7 +20,7 @@ package org.apache.uima.fit.examples.tutorial.ex6;
 
 import static org.apache.uima.fit.factory.AnalysisEngineFactory.createEngine;
 import static org.apache.uima.fit.factory.AnalysisEngineFactory.createEngineDescription;
-import static org.apache.uima.fit.factory.ExternalResourceFactory.createExternalResourceDescription;
+import static org.apache.uima.fit.factory.ExternalResourceFactory.createExternalSharedResourceDescription;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
 
@@ -39,9 +39,9 @@ public class Example6Test {
   @Test
   public void test1() throws Exception {
     // This resource is shared between the UimaAcronymAnnotator and UimaMeetingAnnotator
-    ExternalResourceDescription resource = createExternalResourceDescription(
-            StringMapResource_impl.class,
-            "file:src/main/resources/org/apache/uima/fit/examples/tutorial/ex6/uimaAcronyms.txt");
+    ExternalResourceDescription resource = createExternalSharedResourceDescription(
+            "file:src/main/resources/org/apache/uima/fit/examples/tutorial/ex6/uimaAcronyms.txt",
+            StringMapResource_impl.class);
 
     AggregateBuilder builder = new AggregateBuilder();
     builder.add(createEngineDescription(UimaAcronymAnnotator.class,
diff --git a/uimafit-legacy-support/src/test/java/org/apache/uima/fit/factory/AnalysisEngineFactoryExternalResourceTest.java b/uimafit-legacy-support/src/test/java/org/apache/uima/fit/factory/AnalysisEngineFactoryExternalResourceTest.java
index ed0b559..8d335f1 100644
--- a/uimafit-legacy-support/src/test/java/org/apache/uima/fit/factory/AnalysisEngineFactoryExternalResourceTest.java
+++ b/uimafit-legacy-support/src/test/java/org/apache/uima/fit/factory/AnalysisEngineFactoryExternalResourceTest.java
@@ -23,6 +23,7 @@ import static org.apache.uima.fit.factory.AnalysisEngineFactory.createEngine;
 import static org.apache.uima.fit.factory.AnalysisEngineFactory.createEngineDescription;
 import static org.apache.uima.fit.factory.ExternalResourceFactory.bindExternalResource;
 import static org.apache.uima.fit.factory.ExternalResourceFactory.createExternalResourceDescription;
+import static org.apache.uima.fit.factory.ExternalResourceFactory.createExternalSharedResourceDescription;
 import static org.junit.Assert.assertNotNull;
 
 import java.io.ByteArrayInputStream;
@@ -238,7 +239,7 @@ public class AnalysisEngineFactoryExternalResourceTest {
     AnalysisEngineDescription aeDesc = saveLoad(createEngineDescription(
             TestAnalysisEngineWithSharedResourceObject.class,
             TestAnalysisEngineWithSharedResourceObject.PARAM_RESOURCE,
-            createExternalResourceDescription(TestSharedResourceObject.class, "http://dumm.my",
+            createExternalSharedResourceDescription("http://dumm.my", TestSharedResourceObject.class,
                     TestSharedResourceObject.PARAM_VALUE, TestSharedResourceObject.EXPECTED_VALUE)));
 
     AnalysisEngine ae = createEngine(aeDesc);
@@ -250,8 +251,8 @@ public class AnalysisEngineFactoryExternalResourceTest {
    */
   @Test
   public void sharedObject_testSharedInjection() throws Exception {
-    ExternalResourceDescription resDesc = createExternalResourceDescription(
-            TestSharedResourceObject.class, "http://dumm.my", TestSharedResourceObject.PARAM_VALUE,
+    ExternalResourceDescription resDesc = createExternalSharedResourceDescription(
+            "http://dumm.my", TestSharedResourceObject.class, TestSharedResourceObject.PARAM_VALUE,
             TestSharedResourceObject.EXPECTED_VALUE);
 
     AnalysisEngineDescription aeDesc1 = saveLoad(createEngineDescription(
@@ -279,8 +280,8 @@ public class AnalysisEngineFactoryExternalResourceTest {
    */
   @Test
   public void sharedObject_testSelfInjection() throws Exception {
-    ExternalResourceDescription resDesc = createExternalResourceDescription(
-            TestSharedResourceObject2.class, "http://dumm.my",
+    ExternalResourceDescription resDesc = createExternalSharedResourceDescription(
+            "http://dumm.my", TestSharedResourceObject2.class,
             TestSharedResourceObject.PARAM_VALUE, TestSharedResourceObject.EXPECTED_VALUE);
     bindExternalResource(resDesc, TestSharedResourceObject2.PARAM_RESOURCE, resDesc);
 
@@ -322,6 +323,7 @@ public class AnalysisEngineFactoryExternalResourceTest {
     @ConfigurationParameter(name = ExternalResourceFactory.PARAM_RESOURCE_NAME)
     private String resourceName;
 
+    @Override
     public void afterResourcesInitialized() {
       System.out.println(getClass().getSimpleName() + ".afterResourcesInitialized()");
       // Ensure the External Resource is bound
@@ -332,6 +334,7 @@ public class AnalysisEngineFactoryExternalResourceTest {
       assertConfiguredOk();
     }
 
+    @Override
     public String getResourceName() {
       return resourceName;
     }
diff --git a/uimafit-legacy-support/src/test/java/org/apache/uima/fit/factory/CollectionReaderFactoryExternalResourceTest.java b/uimafit-legacy-support/src/test/java/org/apache/uima/fit/factory/CollectionReaderFactoryExternalResourceTest.java
index c1a4b03..a273b5c 100644
--- a/uimafit-legacy-support/src/test/java/org/apache/uima/fit/factory/CollectionReaderFactoryExternalResourceTest.java
+++ b/uimafit-legacy-support/src/test/java/org/apache/uima/fit/factory/CollectionReaderFactoryExternalResourceTest.java
@@ -74,16 +74,19 @@ public class CollectionReaderFactoryExternalResourceTest {
     @ExternalResource(key = PARAM_RESOURCE)
     private TestExternalResource resource;
 
+    @Override
     public boolean hasNext() throws IOException, CollectionException {
       assertNotNull(resource);
       resource.assertConfiguredOk();
       return false;
     }
 
+    @Override
     public void getNext(CAS aCAS) throws IOException, CollectionException {
       // This is never called
     }
 
+    @Override
     public Progress[] getProgress() {
       return new Progress[0];
     }
diff --git a/uimafit-legacy-support/src/test/java/org/apache/uima/fit/factory/ExternalResourceFactoryTest.java b/uimafit-legacy-support/src/test/java/org/apache/uima/fit/factory/ExternalResourceFactoryTest.java
index 876db45..dd407c6 100644
--- a/uimafit-legacy-support/src/test/java/org/apache/uima/fit/factory/ExternalResourceFactoryTest.java
+++ b/uimafit-legacy-support/src/test/java/org/apache/uima/fit/factory/ExternalResourceFactoryTest.java
@@ -383,7 +383,7 @@ public class ExternalResourceFactoryTest extends ComponentTestBase {
       List<String> params = new ArrayList<String>(Arrays.asList(aParams));
       params.add(ConfigurableDataResource.PARAM_EXTENSION);
       params.add(extension);
-      ExternalResourceDescription desc = ExternalResourceFactory.createExternalResourceDescription(
+      ExternalResourceDescription desc = ExternalResourceFactory.createNamedExternalResourceDescription(
               null, ConfigurableDataResource.class, params.toArray(new String[params.size()]));
       return (DataResource) UIMAFramework.produceResource(desc.getResourceSpecifier(), null);
     }
diff --git a/uimafit-legacy-support/src/test/java/org/apache/uima/fit/factory/FlowControllerFactoryExternalResourceTest.java b/uimafit-legacy-support/src/test/java/org/apache/uima/fit/factory/FlowControllerFactoryExternalResourceTest.java
index d4c4e5c..d5ab644 100644
--- a/uimafit-legacy-support/src/test/java/org/apache/uima/fit/factory/FlowControllerFactoryExternalResourceTest.java
+++ b/uimafit-legacy-support/src/test/java/org/apache/uima/fit/factory/FlowControllerFactoryExternalResourceTest.java
@@ -86,6 +86,7 @@ public class FlowControllerFactoryExternalResourceTest {
   }
 
   public static class TestFlowObject extends CasFlow_ImplBase {
+    @Override
     public Step next() throws AnalysisEngineProcessException {
       return new FinalStep();
     }

-- 
To stop receiving notification emails like this one, please contact
rec@apache.org.