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 2013/04/27 00:17:27 UTC

svn commit: r1476420 - in /uima/sandbox/uimafit/trunk/uimafit: ./ src/main/java/org/apache/uima/fit/component/initialize/ src/main/java/org/apache/uima/fit/factory/ src/main/java/org/apache/uima/fit/factory/initializable/ src/main/java/org/apache/uima/...

Author: rec
Date: Fri Apr 26 22:17:26 2013
New Revision: 1476420

URL: http://svn.apache.org/r1476420
Log:
[UIMA-2847] Address some PMD issues 
- Changed several things that PMD was complaining about
- Ignored some more PMD warnings

Modified:
    uima/sandbox/uimafit/trunk/uimafit/pmd.xml
    uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/component/initialize/ExternalResourceInitializer.java
    uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/factory/FsIndexFactory.java
    uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/factory/TypeSystemDescriptionFactory.java
    uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/factory/initializable/InitializableFactory.java
    uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/pipeline/CpePipeline.java
    uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/testing/factory/TokenBuilder.java
    uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/util/CasUtil.java
    uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/util/ContainmentIndex.java
    uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/util/FSCollectionFactory.java
    uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/util/JCasUtil.java

Modified: uima/sandbox/uimafit/trunk/uimafit/pmd.xml
URL: http://svn.apache.org/viewvc/uima/sandbox/uimafit/trunk/uimafit/pmd.xml?rev=1476420&r1=1476419&r2=1476420&view=diff
==============================================================================
--- uima/sandbox/uimafit/trunk/uimafit/pmd.xml (original)
+++ uima/sandbox/uimafit/trunk/uimafit/pmd.xml Fri Apr 26 22:17:26 2013
@@ -33,7 +33,9 @@
 		<exclude name="CyclomaticComplexity" />
 		<exclude name="TooManyMethods" />
 	</rule>
-	<rule ref="rulesets/coupling.xml"></rule>
+	<rule ref="rulesets/coupling.xml">
+		<exclude name="ExcessiveImports" />
+	</rule>
 	<rule ref="rulesets/design.xml">
 		<exclude name="ConfusingTernary" />
 		<exclude name="ConstructorCallsOverridableMethod" />
@@ -44,6 +46,7 @@
 		<exclude name="TooManyStaticImports" />
 	</rule>
 	<rule ref="rulesets/naming.xml">
+		<exclude name="AbstractNaming"/>
 		<exclude name="LongVariable" />
 		<exclude name="ShortVariable" />
 	</rule>
@@ -53,7 +56,9 @@
 		<exclude name="MethodArgumentCouldBeFinal" />
 	</rule>
 	<rule ref="rulesets/strictexception.xml"></rule>
-	<rule ref="rulesets/strings.xml"></rule>
+	<rule ref="rulesets/strings.xml">
+		<exclude name="AvoidDuplicateLiterals" />
+	</rule>
 	<rule ref="rulesets/sunsecure.xml"></rule>
 	<rule ref="rulesets/typeresolution.xml"></rule>
 	<rule ref="rulesets/unusedcode.xml"></rule>

Modified: uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/component/initialize/ExternalResourceInitializer.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/component/initialize/ExternalResourceInitializer.java?rev=1476420&r1=1476419&r2=1476420&view=diff
==============================================================================
--- uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/component/initialize/ExternalResourceInitializer.java (original)
+++ uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/component/initialize/ExternalResourceInitializer.java Fri Apr 26 22:17:26 2013
@@ -48,12 +48,16 @@ import org.apache.uima.resource.impl.Res
  * Configurator class for {@link ExternalResource} annotations.
  * 
  */
-public class ExternalResourceInitializer {
+public final class ExternalResourceInitializer {
 
   private static final Object INITIALIZED = new Object();
 
   private static Map<Object, Object> initializedResources = new WeakHashMap<Object, Object>();
 
+  private ExternalResourceInitializer() {
+    // No instances
+  }
+
   /**
    * Configure a component from the given context.
    * 

Modified: uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/factory/FsIndexFactory.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/factory/FsIndexFactory.java?rev=1476420&r1=1476419&r2=1476420&view=diff
==============================================================================
--- uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/factory/FsIndexFactory.java (original)
+++ uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/factory/FsIndexFactory.java Fri Apr 26 22:17:26 2013
@@ -20,7 +20,7 @@ package org.apache.uima.fit.factory;
 
 import static java.util.Arrays.asList;
 import static org.apache.uima.UIMAFramework.getXMLParser;
-import static org.apache.uima.fit.util.MetaDataUtil.*;
+import static org.apache.uima.fit.util.MetaDataUtil.scanDescriptors;
 import static org.apache.uima.fit.util.ReflectionUtil.getInheritableAnnotation;
 
 import java.io.IOException;
@@ -50,6 +50,8 @@ public final class FsIndexFactory {
   public static final int STANDARD_COMPARE = FsIndexKeyDescription.STANDARD_COMPARE;
 
   public static final int REVERSE_STANDARD_COMPARE = FsIndexKeyDescription.STANDARD_COMPARE;
+  
+  private static final Object SCAN_LOCK = new Object();
 
   private FsIndexFactory() {
     // Factory class
@@ -228,10 +230,12 @@ public final class FsIndexFactory {
    *           if the locations could not be resolved.
    */
   public static String[] scanIndexDescriptors() throws ResourceInitializationException {
-    if (indexDescriptorLocations == null) {
-      indexDescriptorLocations = scanDescriptors(MetaDataType.FS_INDEX);
+    synchronized (SCAN_LOCK) {
+      if (indexDescriptorLocations == null) {
+        indexDescriptorLocations = scanDescriptors(MetaDataType.FS_INDEX);
+      }
+      return indexDescriptorLocations;
     }
-    return indexDescriptorLocations;
   }
 
   /**

Modified: uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/factory/TypeSystemDescriptionFactory.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/factory/TypeSystemDescriptionFactory.java?rev=1476420&r1=1476419&r2=1476420&view=diff
==============================================================================
--- uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/factory/TypeSystemDescriptionFactory.java (original)
+++ uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/factory/TypeSystemDescriptionFactory.java Fri Apr 26 22:17:26 2013
@@ -39,12 +39,14 @@ import org.apache.uima.util.XMLInputSour
 /**
  */
 public final class TypeSystemDescriptionFactory {
+  private static final Object SCAN_LOCK = new Object();
+
+  private static String[] typeDescriptorLocations;
+
   private TypeSystemDescriptionFactory() {
     // This class is not meant to be instantiated
   }
 
-  private static String[] typeDescriptorLocations;
-
   /**
    * Creates a TypeSystemDescription from a list of classes belonging to a type system - i.e.
    * classes generated by JCasGen. It is expected that for each of the classes passed to this
@@ -151,10 +153,12 @@ public final class TypeSystemDescription
    *           if the locations could not be resolved.
    */
   public static String[] scanTypeDescriptors() throws ResourceInitializationException {
-    if (typeDescriptorLocations == null) {
-      typeDescriptorLocations = scanDescriptors(MetaDataType.TYPE_SYSTEM);
+    synchronized (SCAN_LOCK) {
+      if (typeDescriptorLocations == null) {
+        typeDescriptorLocations = scanDescriptors(MetaDataType.TYPE_SYSTEM);
+      }
+      return typeDescriptorLocations;
     }
-    return typeDescriptorLocations;
   }
 
   /**

Modified: uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/factory/initializable/InitializableFactory.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/factory/initializable/InitializableFactory.java?rev=1476420&r1=1476419&r2=1476420&view=diff
==============================================================================
--- uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/factory/initializable/InitializableFactory.java (original)
+++ uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/factory/initializable/InitializableFactory.java Fri Apr 26 22:17:26 2013
@@ -45,8 +45,7 @@ public final class InitializableFactory 
   public static <T> Class<? extends T> getClass(String className, Class<T> superClass)
           throws ResourceInitializationException {
     try {
-      Class<? extends T> cls = Class.forName(className).asSubclass(superClass);
-      return cls;
+      return Class.forName(className).asSubclass(superClass);
     } catch (Exception e) {
       throw new ResourceInitializationException(new IllegalStateException("classname = "
               + className + " superClass = " + superClass.getName(), e));

Modified: uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/pipeline/CpePipeline.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/pipeline/CpePipeline.java?rev=1476420&r1=1476419&r2=1476420&view=diff
==============================================================================
--- uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/pipeline/CpePipeline.java (original)
+++ uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/pipeline/CpePipeline.java Fri Apr 26 22:17:26 2013
@@ -38,7 +38,11 @@ import org.xml.sax.SAXException;
 
 /**
  */
-public class CpePipeline {
+public final class CpePipeline {
+  private CpePipeline() {
+    // No instances
+  }
+  
   /**
    * Run the CollectionReader and AnalysisEngines as a multi-threaded pipeline.
    * 

Modified: uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/testing/factory/TokenBuilder.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/testing/factory/TokenBuilder.java?rev=1476420&r1=1476419&r2=1476420&view=diff
==============================================================================
--- uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/testing/factory/TokenBuilder.java (original)
+++ uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/testing/factory/TokenBuilder.java Fri Apr 26 22:17:26 2013
@@ -243,7 +243,7 @@ public class TokenBuilder<TOKEN_TYPE ext
         }
         tokenIndex++;
       }
-      if (tokenAnnotations.size() > 0) {
+      if (!tokenAnnotations.isEmpty()) {
         int begin = tokenAnnotations.get(0).getBegin();
         int end = tokenAnnotations.get(tokenAnnotations.size() - 1).getEnd();
         AnnotationFactory.createAnnotation(aJCas, begin, end, sentenceClass);

Modified: uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/util/CasUtil.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/util/CasUtil.java?rev=1476420&r1=1476419&r2=1476420&view=diff
==============================================================================
--- uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/util/CasUtil.java (original)
+++ uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/util/CasUtil.java Fri Apr 26 22:17:26 2013
@@ -51,12 +51,16 @@ import org.apache.uima.jcas.tcas.Annotat
  * Utility methods for convenient access to the {@link CAS}.
  * 
  */
-public class CasUtil {
+public final class CasUtil {
   /**
    * Package name of JCas wrapper classes built into UIMA.
    */
   public static final String UIMA_BUILTIN_JCAS_PREFIX = "org.apache.uima.jcas.";
 
+  private CasUtil() {
+    // No instances
+  }
+  
   /**
    * Convenience method to iterator over all feature structures of a given type.
    * 

Modified: uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/util/ContainmentIndex.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/util/ContainmentIndex.java?rev=1476420&r1=1476419&r2=1476420&view=diff
==============================================================================
--- uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/util/ContainmentIndex.java (original)
+++ uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/util/ContainmentIndex.java Fri Apr 26 22:17:26 2013
@@ -47,9 +47,9 @@ public class ContainmentIndex<S extends 
     DIRECT, REVERSE, BOTH
   }
 
-  private Map<AnnotationFS, Collection<AnnotationFS>> data = new LinkedHashMap<AnnotationFS, Collection<AnnotationFS>>();
+  private final Map<AnnotationFS, Collection<AnnotationFS>> data = new LinkedHashMap<AnnotationFS, Collection<AnnotationFS>>();
 
-  private Map<AnnotationFS, Collection<AnnotationFS>> dataRev = new LinkedHashMap<AnnotationFS, Collection<AnnotationFS>>();
+  private final Map<AnnotationFS, Collection<AnnotationFS>> dataRev = new LinkedHashMap<AnnotationFS, Collection<AnnotationFS>>();
 
   /**
    * Create a new index on the given JCas using the specified two types. The last argument indicates

Modified: uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/util/FSCollectionFactory.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/util/FSCollectionFactory.java?rev=1476420&r1=1476419&r2=1476420&view=diff
==============================================================================
--- uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/util/FSCollectionFactory.java (original)
+++ uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/util/FSCollectionFactory.java Fri Apr 26 22:17:26 2013
@@ -490,7 +490,7 @@ public abstract class FSCollectionFactor
   }
 
   public static FSList createFSList(JCas aJCas, Collection<? extends TOP> aCollection) {
-    if (aCollection.size() == 0) {
+    if (aCollection.isEmpty()) {
       return new EmptyFSList(aJCas);
     }
 
@@ -511,7 +511,7 @@ public abstract class FSCollectionFactor
   }
 
   public static FloatList createFloatList(JCas aJCas, Collection<Float> aCollection) {
-    if (aCollection.size() == 0) {
+    if (aCollection.isEmpty()) {
       return new EmptyFloatList(aJCas);
     }
 
@@ -532,7 +532,7 @@ public abstract class FSCollectionFactor
   }
 
   public static IntegerList createIntegerList(JCas aJCas, Collection<Integer> aCollection) {
-    if (aCollection.size() == 0) {
+    if (aCollection.isEmpty()) {
       return new EmptyIntegerList(aJCas);
     }
 
@@ -553,7 +553,7 @@ public abstract class FSCollectionFactor
   }
 
   public static StringList createStringList(JCas aJCas, Collection<String> aCollection) {
-    if (aCollection.size() == 0) {
+    if (aCollection.isEmpty()) {
       return new EmptyStringList(aJCas);
     }
 

Modified: uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/util/JCasUtil.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/util/JCasUtil.java?rev=1476420&r1=1476419&r2=1476420&view=diff
==============================================================================
--- uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/util/JCasUtil.java (original)
+++ uima/sandbox/uimafit/trunk/uimafit/src/main/java/org/apache/uima/fit/util/JCasUtil.java Fri Apr 26 22:17:26 2013
@@ -40,7 +40,11 @@ import org.apache.uima.jcas.tcas.Annotat
  * Utility methods for convenient access to the {@link JCas}.
  * 
  */
-public class JCasUtil {
+public final class JCasUtil {
+  private JCasUtil() {
+    // No instances
+  }
+  
   /**
    * Convenience method to iterator over all features structures of a given type.
    *