You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@creadur.apache.org by bo...@apache.org on 2010/08/04 22:00:12 UTC

svn commit: r982385 - in /incubator/rat/main/trunk/apache-rat-core/src/main/java/org/apache/rat/document/impl/guesser: ArchiveGuesser.java BinaryGuesser.java NoteGuesser.java

Author: bodewig
Date: Wed Aug  4 20:00:12 2010
New Revision: 982385

URL: http://svn.apache.org/viewvc?rev=982385&view=rev
Log:
simplify guesser code, submitted by Hyrum Wright

Modified:
    incubator/rat/main/trunk/apache-rat-core/src/main/java/org/apache/rat/document/impl/guesser/ArchiveGuesser.java
    incubator/rat/main/trunk/apache-rat-core/src/main/java/org/apache/rat/document/impl/guesser/BinaryGuesser.java
    incubator/rat/main/trunk/apache-rat-core/src/main/java/org/apache/rat/document/impl/guesser/NoteGuesser.java

Modified: incubator/rat/main/trunk/apache-rat-core/src/main/java/org/apache/rat/document/impl/guesser/ArchiveGuesser.java
URL: http://svn.apache.org/viewvc/incubator/rat/main/trunk/apache-rat-core/src/main/java/org/apache/rat/document/impl/guesser/ArchiveGuesser.java?rev=982385&r1=982384&r2=982385&view=diff
==============================================================================
--- incubator/rat/main/trunk/apache-rat-core/src/main/java/org/apache/rat/document/impl/guesser/ArchiveGuesser.java (original)
+++ incubator/rat/main/trunk/apache-rat-core/src/main/java/org/apache/rat/document/impl/guesser/ArchiveGuesser.java Wed Aug  4 20:00:12 2010
@@ -32,10 +32,7 @@ public class ArchiveGuesser {
     };
 
     public static final boolean isArchive(final Document document) {
-        
-        final String name = document.getName();
-        final boolean result = isArchive(name);
-        return result;
+        return isArchive(document.getName());
     }
 
     /**
@@ -44,11 +41,12 @@ public class ArchiveGuesser {
     public static final boolean isArchive(final String name) {
         if (name == null) {return false;}
         String nameToLower = name.toLowerCase(Locale.US);
-        boolean result = false;
-        for (int i = 0; !result && i < ArchiveGuesser.ARCHIVE_EXTENSIONS.length; i++) {
-            result = nameToLower.endsWith("." + ArchiveGuesser.ARCHIVE_EXTENSIONS[i]);
+        for (int i = 0; i < ArchiveGuesser.ARCHIVE_EXTENSIONS.length; i++) {
+            if (nameToLower.endsWith("." + ArchiveGuesser.ARCHIVE_EXTENSIONS[i])) {
+                return true;
+            }
         }
-        return result;
+        return false;
     }
 
 }

Modified: incubator/rat/main/trunk/apache-rat-core/src/main/java/org/apache/rat/document/impl/guesser/BinaryGuesser.java
URL: http://svn.apache.org/viewvc/incubator/rat/main/trunk/apache-rat-core/src/main/java/org/apache/rat/document/impl/guesser/BinaryGuesser.java?rev=982385&r1=982384&r2=982385&view=diff
==============================================================================
--- incubator/rat/main/trunk/apache-rat-core/src/main/java/org/apache/rat/document/impl/guesser/BinaryGuesser.java (original)
+++ incubator/rat/main/trunk/apache-rat-core/src/main/java/org/apache/rat/document/impl/guesser/BinaryGuesser.java Wed Aug  4 20:00:12 2010
@@ -62,7 +62,6 @@ public class BinaryGuesser {
      * Do the first few bytes of the stream hint at a binary file?
      */
     public static boolean isBinary(Reader in) {
-        boolean result = false;
         char[] taste = new char[100];
         try {
             int bytesRead = in.read(taste);
@@ -76,13 +75,13 @@ public class BinaryGuesser {
                 }
                 if (highBytes * BinaryGuesser.HIGH_BYTES_RATIO
                     > bytesRead * BinaryGuesser.TOTAL_READ_RATIO) {
-                    result = true;
+                    return true;
                 }
             }
         } catch (IOException e) {
             // SWALLOW 
         }
-        return result;
+        return false;
     }
 
     public static final boolean isBinaryData(final String name) {
@@ -105,20 +104,22 @@ public class BinaryGuesser {
 
     public static boolean containsExtension(final String name,
                                              final String[] exts) {
-        boolean result = false;
-        for (int i = 0; !result && i < exts.length; i++) {
-            result = name.indexOf("." + exts[i] + ".") >= 0;
+        for (int i = 0; i < exts.length; i++) {
+            if (name.indexOf("." + exts[i] + ".") >= 0) {
+                return true;
+            }
         }
-        return result;
+        return false;
     }
 
     public static boolean extensionMatches(final String name,
                                             final String[] exts) {
-        boolean result = false;
-        for (int i = 0; !result && i < exts.length; i++) {
-            result = name.endsWith("." + exts[i]);
+        for (int i = 0; i < exts.length; i++) {
+            if (name.endsWith("." + exts[i])) {
+                return true;
+            }
         }
-        return result;
+        return false;
     }
 
     public static boolean isBytecode(final String name) {
@@ -272,14 +273,10 @@ public class BinaryGuesser {
         // TODO: reimplement the binary test algorithm?
         // TODO: more efficient to move into standard analysis
         // TODO: then use binary as default
-        final String name = document.getName();
-        boolean result = isBinary(name);
-        if (!result)
-        {
+        return isBinary(document.getName())
+            ||
             // try a taste
-            result = isBinaryDocument(document);
-        }
-        return result;
+            isBinaryDocument(document);
     }
 
 

Modified: incubator/rat/main/trunk/apache-rat-core/src/main/java/org/apache/rat/document/impl/guesser/NoteGuesser.java
URL: http://svn.apache.org/viewvc/incubator/rat/main/trunk/apache-rat-core/src/main/java/org/apache/rat/document/impl/guesser/NoteGuesser.java?rev=982385&r1=982384&r2=982385&view=diff
==============================================================================
--- incubator/rat/main/trunk/apache-rat-core/src/main/java/org/apache/rat/document/impl/guesser/NoteGuesser.java (original)
+++ incubator/rat/main/trunk/apache-rat-core/src/main/java/org/apache/rat/document/impl/guesser/NoteGuesser.java Wed Aug  4 20:00:12 2010
@@ -60,17 +60,21 @@ public class NoteGuesser {
         List l = Arrays.asList(NoteGuesser.NOTE_FILE_NAMES);
         String normalisedName = GuessUtils.normalise(name);
         
-        boolean result = l.contains(name) || l.contains(normalisedName);
-        for (int i = 0; !result && i < NoteGuesser.NOTE_FILE_EXTENSIONS.length; i++) {
-            result = normalisedName.endsWith("." + NoteGuesser.NOTE_FILE_EXTENSIONS[i]);
+        if (l.contains(name) || l.contains(normalisedName)) {
+            return true;
         }
-        return result;
+
+        for (int i = 0; i < NoteGuesser.NOTE_FILE_EXTENSIONS.length; i++) {
+            if (normalisedName.endsWith("." + NoteGuesser.NOTE_FILE_EXTENSIONS[i])) {
+                return true;
+            }
+        }
+        
+        return false;
     }
 
     public static final boolean isNote(final Document document) {
-        final String name = document.getName();
-        final boolean result = isNote(name);
-        return result;
+        return isNote(document.getName());
     }
 
 }