Author: tcp
Date: Mon Mar  5 23:57:43 2012
New Revision: 1297298

URL: http://svn.apache.org/viewvc?rev=1297298&view=rev
Log:
Cleanups to address Jenkins violations

Modified:
    
mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/FPGrowthDriver.java
    
mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/PFPGrowth.java
    
mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/ParallelFPGrowthMapper.java
    
mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/ParallelFPGrowthReducer.java
    
mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/TransactionTree.java
    
mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/fpgrowth/FPGrowth.java
    
mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/fpgrowth/FrequentPatternMaxHeap.java
    
mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/fpgrowth2/FPGrowthIds.java
    
mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/fpgrowth2/FPTree.java
    
mahout/trunk/core/src/test/java/org/apache/mahout/fpm/pfpgrowth/FPGrowthRetailDataTestVs.java
    
mahout/trunk/core/src/test/java/org/apache/mahout/fpm/pfpgrowth/FPGrowthSyntheticDataTest.java
    
mahout/trunk/core/src/test/java/org/apache/mahout/fpm/pfpgrowth/PFPGrowthRetailDataTestVs.java

Modified: 
mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/FPGrowthDriver.java
URL: 
http://svn.apache.org/viewvc/mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/FPGrowthDriver.java?rev=1297298&r1=1297297&r2=1297298&view=diff
==============================================================================
--- 
mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/FPGrowthDriver.java
 (original)
+++ 
mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/FPGrowthDriver.java
 Mon Mar  5 23:57:43 2012
@@ -64,16 +64,18 @@ public final class FPGrowthDriver extend
     addInputOption();
     addOutputOption();
 
-    addOption("minSupport", "s", "(Optional) The minimum number of times a 
co-occurrence must be present. Default Value: 3", "3");
-    addOption("maxHeapSize", "k", "(Optional) Maximum Heap Size k, to denote 
the requirement to mine top K items. Default value: 50", "50");
+    addOption("minSupport", "s", "(Optional) The minimum number of times a 
co-occurrence must be present."
+              + " Default Value: 3", "3");
+    addOption("maxHeapSize", "k", "(Optional) Maximum Heap Size k, to denote 
the requirement to mine top K items."
+              + " Default value: 50", "50");
     addOption("numGroups", "g", "(Optional) Number of groups the features 
should be divided in the map-reduce version."
-            + " Doesn't work in sequential version Default Value:" + 
PFPGrowth.NUM_GROUPS_DEFAULT,
-             Integer.toString(PFPGrowth.NUM_GROUPS_DEFAULT));
-    addOption("splitterPattern", "regex", "Regular Expression pattern used to 
split given string transaction into itemsets."
-            + " Default value splits comma separated itemsets.  Default Value:"
+              + " Doesn't work in sequential version Default Value:" + 
PFPGrowth.NUM_GROUPS_DEFAULT,
+              Integer.toString(PFPGrowth.NUM_GROUPS_DEFAULT));
+    addOption("splitterPattern", "regex", "Regular Expression pattern used to 
split given string transaction into"
+            + " itemsets. Default value splits comma separated itemsets.  
Default Value:"
             + " \"[ ,\\t]*[,|\\t][ ,\\t]*\" ", "[ ,\t]*[,|\t][ ,\t]*");
-    addOption("numTreeCacheEntries", "tc", "(Optional) Number of entries in 
the tree cache to prevent duplicate tree building. "
-            + "(Warning) a first level conditional FP-Tree might consume a lot 
of memory, "
+    addOption("numTreeCacheEntries", "tc", "(Optional) Number of entries in 
the tree cache to prevent duplicate"
+            + " tree building. (Warning) a first level conditional FP-Tree 
might consume a lot of memory, "
             + "so keep this value small, but big enough to prevent duplicate 
tree building. "
             + "Default Value:5 Recommended Values: [5-10]", "5");
     addOption("method", "method", "Method of processing: 
sequential|mapreduce", "sequential");
@@ -171,9 +173,9 @@ public final class FPGrowthDriver extend
                 features,
                 new StringOutputConverter(new 
SequenceFileOutputCollector<Text, TopKStringPatterns>(writer)),
                 new ContextStatusUpdater(null));
-        } finally {
-          Closeables.closeQuietly(writer);
-        }
+      } finally {
+        Closeables.closeQuietly(writer);
+      }
     } else {
       FPGrowth<String> fp = new FPGrowth<String>();
       Collection<String> features = new HashSet<String>();

Modified: 
mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/PFPGrowth.java
URL: 
http://svn.apache.org/viewvc/mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/PFPGrowth.java?rev=1297298&r1=1297297&r2=1297298&view=diff
==============================================================================
--- 
mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/PFPGrowth.java 
(original)
+++ 
mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/PFPGrowth.java 
Mon Mar  5 23:57:43 2012
@@ -81,9 +81,7 @@ public final class PFPGrowth {
 
   public static final Pattern SPLITTER = Pattern.compile("[ ,\t]*[,|\t][ 
,\t]*");
   
-  private static final Logger log = LoggerFactory.getLogger(PFPGrowth.class);
-  
-  private PFPGrowth() {}
+  private PFPGrowth() { }
   
   /**
    * Generates the fList from the serialized string representation
@@ -97,23 +95,23 @@ public final class PFPGrowth {
       throw new IOException("Cannot read Frequency list from Distributed 
Cache");
     }
     if (files.length != 1) {
-      throw new IOException("Cannot read Frequency list from Distributed Cache 
("+files.length+")");
+      throw new IOException("Cannot read Frequency list from Distributed Cache 
(" + files.length + ")");
     }
     FileSystem fs = FileSystem.getLocal(conf);
     Path fListLocalPath = fs.makeQualified(files[0]);
     // Fallback if we are running locally.
-    if (! fs.exists(fListLocalPath)) {
+    if (!fs.exists(fListLocalPath)) {
       URI[] filesURIs = DistributedCache.getCacheFiles(conf);
       if (filesURIs == null) {
         throw new IOException("Cannot read Frequency list from Distributed 
Cache");
       }
       if (filesURIs.length != 1) {
-        throw new IOException("Cannot read Frequency list from Distributed 
Cache ("+files.length+")");
+        throw new IOException("Cannot read Frequency list from Distributed 
Cache (" + files.length + ")");
       }
       fListLocalPath = new Path(filesURIs[0].getPath());
     }
-    for (Pair<Text,LongWritable> record :
-         new SequenceFileIterable<Text,LongWritable>(fListLocalPath, true, 
conf)) {
+    for (Pair<Text,LongWritable> record
+         : new SequenceFileIterable<Text,LongWritable>(fListLocalPath, true, 
conf)) {
       list.add(new Pair<String,Long>(record.getFirst().toString(), 
record.getSecond().get()));
     }
     return list;
@@ -164,8 +162,8 @@ public final class PFPGrowth {
           }
         });
 
-    for (Pair<Text,LongWritable> record :
-         new SequenceFileDirIterable<Text,LongWritable>(new 
Path(parallelCountingPath, FILE_PATTERN),
+    for (Pair<Text,LongWritable> record
+         : new SequenceFileDirIterable<Text,LongWritable>(new 
Path(parallelCountingPath, FILE_PATTERN),
                                                         PathType.GLOB, null, 
null, true, conf)) {
       long value = record.getSecond().get();
       if (value >= minSupport) {
@@ -190,7 +188,7 @@ public final class PFPGrowth {
     int start = groupId * maxPerGroup;
     int end = start + maxPerGroup;
     if (end > numFeatures) 
-      end= numFeatures;
+      end = numFeatures;
     for (int i = start; i < end; i++) {
       ret.add(i);
     }

Modified: 
mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/ParallelFPGrowthMapper.java
URL: 
http://svn.apache.org/viewvc/mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/ParallelFPGrowthMapper.java?rev=1297298&r1=1297297&r2=1297298&view=diff
==============================================================================
--- 
mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/ParallelFPGrowthMapper.java
 (original)
+++ 
mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/ParallelFPGrowthMapper.java
 Mon Mar  5 23:57:43 2012
@@ -31,9 +31,6 @@ import org.apache.mahout.math.list.IntAr
 import org.apache.mahout.math.map.OpenObjectIntHashMap;
 import org.apache.mahout.math.set.OpenIntHashSet;
 
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
 /**
  *  maps each transaction to all unique items groups in the transaction. mapper
  * outputs the group id as key and the transaction as value
@@ -41,16 +38,14 @@ import org.slf4j.LoggerFactory;
  */
 public class ParallelFPGrowthMapper extends 
Mapper<LongWritable,Text,IntWritable,TransactionTree> {
 
-  private static final Logger log = 
LoggerFactory.getLogger(ParallelFPGrowthMapper.class);
-
   private final OpenObjectIntHashMap<String> fMap = new 
OpenObjectIntHashMap<String>();
   private Pattern splitter;
   private int maxPerGroup;
 
-  private IntWritable wGroupID= new IntWritable();
+  private IntWritable wGroupID = new IntWritable();
 
   @Override
-    protected void map(LongWritable offset, Text input, Context context)
+  protected void map(LongWritable offset, Text input, Context context)
     throws IOException, InterruptedException {
 
     String[] items = splitter.split(input.toString());

Modified: 
mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/ParallelFPGrowthReducer.java
URL: 
http://svn.apache.org/viewvc/mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/ParallelFPGrowthReducer.java?rev=1297298&r1=1297297&r2=1297298&view=diff
==============================================================================
--- 
mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/ParallelFPGrowthReducer.java
 (original)
+++ 
mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/ParallelFPGrowthReducer.java
 Mon Mar  5 23:57:43 2012
@@ -39,9 +39,6 @@ import org.apache.mahout.fpm.pfpgrowth.f
 import org.apache.mahout.math.list.IntArrayList;
 import org.apache.mahout.math.list.LongArrayList;
 
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
 /**
  *  takes each group of transactions and runs Vanilla FPGrowth on it and
  * outputs the the Top K frequent Patterns for each group.
@@ -49,9 +46,6 @@ import org.slf4j.LoggerFactory;
  */
 public class ParallelFPGrowthReducer extends 
Reducer<IntWritable,TransactionTree,Text,TopKStringPatterns> {
 
-  private static final Logger log = 
-      LoggerFactory.getLogger(ParallelFPGrowthReducer.class);
-  
   private final List<String> featureReverseMap = Lists.newArrayList();
   private final LongArrayList freqList = new LongArrayList();
   
@@ -59,12 +53,12 @@ public class ParallelFPGrowthReducer ext
   
   private int minSupport = 3;
 
-  private int numFeatures = 0;
-  private int maxPerGroup = 0;
+  private int numFeatures;
+  private int maxPerGroup;
 
-  private boolean useFP2 = false;
+  private boolean useFP2;
 
-  private class IteratorAdapter implements Iterator<Pair<List<Integer>,Long>> {
+  private static class IteratorAdapter implements 
Iterator<Pair<List<Integer>,Long>> {
     private Iterator<Pair<IntArrayList,Long>> innerIter;
 
     private IteratorAdapter(Iterator<Pair<IntArrayList,Long>> transactionIter) 
{
@@ -148,8 +142,8 @@ public class ParallelFPGrowthReducer ext
     maxHeapSize = Integer.valueOf(params.get(PFPGrowth.MAX_HEAPSIZE, "50"));
     minSupport = Integer.valueOf(params.get(PFPGrowth.MIN_SUPPORT, "3"));
 
-    maxPerGroup= params.getInt(PFPGrowth.MAX_PER_GROUP, 0);
-    numFeatures= featureReverseMap.size();
+    maxPerGroup = params.getInt(PFPGrowth.MAX_PER_GROUP, 0);
+    numFeatures = featureReverseMap.size();
     useFP2 = "true".equals(params.get(PFPGrowth.USE_FPG2));
   }
 }

Modified: 
mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/TransactionTree.java
URL: 
http://svn.apache.org/viewvc/mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/TransactionTree.java?rev=1297298&r1=1297297&r2=1297298&view=diff
==============================================================================
--- 
mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/TransactionTree.java
 (original)
+++ 
mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/TransactionTree.java
 Mon Mar  5 23:57:43 2012
@@ -175,13 +175,9 @@ public final class TransactionTree imple
   public Map<Integer,MutableLong> generateFList() {
     Map<Integer,MutableLong> frequencyList = Maps.newHashMap();
     Iterator<Pair<IntArrayList,Long>> it = iterator();
-    //int items = 0;
-    //int count = 0;
     while (it.hasNext()) {
       Pair<IntArrayList,Long> p = it.next();
-      //items += p.getFirst().size();
-      //count++;
-      IntArrayList items= p.getFirst();
+      IntArrayList items = p.getFirst();
       for (int idx = 0; idx < items.size(); idx++) {
         if (!frequencyList.containsKey(items.get(idx))) {
           frequencyList.put(items.get(idx), new MutableLong(0));

Modified: 
mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/fpgrowth/FPGrowth.java
URL: 
http://svn.apache.org/viewvc/mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/fpgrowth/FPGrowth.java?rev=1297298&r1=1297297&r2=1297298&view=diff
==============================================================================
--- 
mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/fpgrowth/FPGrowth.java
 (original)
+++ 
mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/fpgrowth/FPGrowth.java
 Mon Mar  5 23:57:43 2012
@@ -566,8 +566,8 @@ public class FPGrowth<A extends Comparab
           int prevParent = conditionalTree.parent(prevConditional);
           if (prevParent == -1) {
             conditionalTree.setParent(prevConditional, conditional);
-               } else if (prevParent != conditional) {
-                 throw new IllegalStateException();
+          } else if (prevParent != conditional) {
+            throw new IllegalStateException();
           }
         }
 
@@ -582,7 +582,7 @@ public class FPGrowth<A extends Comparab
         int prevParent = conditionalTree.parent(prevConditional);
         if (prevParent == -1) {
           conditionalTree.setParent(prevConditional, FPTree.ROOTNODEID);
-             } else if (prevParent != FPTree.ROOTNODEID) {
+        } else if (prevParent != FPTree.ROOTNODEID) {
           throw new IllegalStateException();
         }
         if (conditionalTree.childCount(FPTree.ROOTNODEID) > 1 && 
conditionalTree.singlePath()) {

Modified: 
mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/fpgrowth/FrequentPatternMaxHeap.java
URL: 
http://svn.apache.org/viewvc/mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/fpgrowth/FrequentPatternMaxHeap.java?rev=1297298&r1=1297297&r2=1297298&view=diff
==============================================================================
--- 
mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/fpgrowth/FrequentPatternMaxHeap.java
 (original)
+++ 
mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/fpgrowth/FrequentPatternMaxHeap.java
 Mon Mar  5 23:57:43 2012
@@ -168,7 +168,7 @@ public final class FrequentPatternMaxHea
     String sep = "";
     for (Pattern p : getHeap()) {
       sb.append(sep).append(p);
-      sep= ", ";
+      sep = ", ";
     }
     return sb.toString();
   }

Modified: 
mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/fpgrowth2/FPGrowthIds.java
URL: 
http://svn.apache.org/viewvc/mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/fpgrowth2/FPGrowthIds.java?rev=1297298&r1=1297297&r2=1297298&view=diff
==============================================================================
--- 
mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/fpgrowth2/FPGrowthIds.java
 (original)
+++ 
mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/fpgrowth2/FPGrowthIds.java
 Mon Mar  5 23:57:43 2012
@@ -39,7 +39,6 @@ import org.apache.mahout.fpm.pfpgrowth.c
 import org.apache.mahout.fpm.pfpgrowth.convertors.string.TopKStringPatterns;
 import org.apache.mahout.math.list.LongArrayList;
 import org.apache.mahout.math.list.IntArrayList;
-import org.apache.mahout.math.set.OpenIntHashSet;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -115,7 +114,7 @@ public class FPGrowthIds {
         new TopKPatternsOutputConverter<Integer>(output, new 
IdentityMapping()), updater);
   }
 
-  private class IdentityMapping extends AbstractMap<Integer, Integer> {
+  private static class IdentityMapping extends AbstractMap<Integer, Integer> {
 
     public Set<Map.Entry<Integer,Integer>> entrySet() {
       throw new IllegalStateException();

Modified: 
mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/fpgrowth2/FPTree.java
URL: 
http://svn.apache.org/viewvc/mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/fpgrowth2/FPTree.java?rev=1297298&r1=1297297&r2=1297298&view=diff
==============================================================================
--- 
mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/fpgrowth2/FPTree.java
 (original)
+++ 
mahout/trunk/core/src/main/java/org/apache/mahout/fpm/pfpgrowth/fpgrowth2/FPTree.java
 Mon Mar  5 23:57:43 2012
@@ -22,9 +22,6 @@ import java.util.Comparator;
 import java.util.List;
 import com.google.common.collect.Lists;
 
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
 import org.apache.mahout.common.Pair;
 import org.apache.mahout.math.list.IntArrayList;
 import org.apache.mahout.math.list.LongArrayList;
@@ -34,7 +31,6 @@ import org.apache.mahout.math.map.OpenIn
  * A straightforward implementation of FPTrees as described in Han et. al.
  */
 public class FPTree {
-  private static final Logger log = LoggerFactory.getLogger(FPTree.class);
 
   private final AttrComparator attrComparator = new AttrComparator();
   private FPNode root;
@@ -42,7 +38,7 @@ public class FPTree {
   private LongArrayList attrCountList;
   private OpenIntObjectHashMap attrNodeLists; 
 
-  public class FPNode {
+  public static final class FPNode {
     private FPNode parent;
     private OpenIntObjectHashMap childMap;
     private int attribute;

Modified: 
mahout/trunk/core/src/test/java/org/apache/mahout/fpm/pfpgrowth/FPGrowthRetailDataTestVs.java
URL: 
http://svn.apache.org/viewvc/mahout/trunk/core/src/test/java/org/apache/mahout/fpm/pfpgrowth/FPGrowthRetailDataTestVs.java?rev=1297298&r1=1297297&r2=1297298&view=diff
==============================================================================
--- 
mahout/trunk/core/src/test/java/org/apache/mahout/fpm/pfpgrowth/FPGrowthRetailDataTestVs.java
 (original)
+++ 
mahout/trunk/core/src/test/java/org/apache/mahout/fpm/pfpgrowth/FPGrowthRetailDataTestVs.java
 Mon Mar  5 23:57:43 2012
@@ -67,6 +67,28 @@ public final class FPGrowthRetailDataTes
     return best;
   }
 
+  private static class MapCollector implements 
OutputCollector<String,List<Pair<List<String>,Long>>> {
+    private Map<Set<String>,Long> results;
+
+    public MapCollector(Map<Set<String>,Long> results) {
+      this.results = results;
+    }
+
+    @Override
+    public void collect(String key, List<Pair<List<String>,Long>> value) {
+      for (Pair<List<String>,Long> v : value) {
+        List<String> l = v.getFirst();
+        results.put(new HashSet<String>(l), v.getSecond());
+        log.info("found pat ["+v.getSecond()+"]: "+ v.getFirst());
+      }
+    }
+  }
+
+  private class DummyUpdater implements StatusUpdater {
+    @Override
+    public void update(String status) { }
+  }
+
   @Test
   public void testVsWithRetailData() throws IOException {
     String inputFilename = "retail.dat";
@@ -76,7 +98,7 @@ public final class FPGrowthRetailDataTes
     org.apache.mahout.fpm.pfpgrowth.fpgrowth.
       FPGrowth<String> fp1 = new 
org.apache.mahout.fpm.pfpgrowth.fpgrowth.FPGrowth<String>();
 
-    final Map<Set<String>,Long> results1 = Maps.newHashMap();
+    Map<Set<String>,Long> results1 = Maps.newHashMap();
     
     fp1.generateTopKFrequentPatterns(
       new StringRecordIterator(new 
FileLineIterable(Resources.getResource(inputFilename).openStream()), "\\s+"),
@@ -84,49 +106,17 @@ public final class FPGrowthRetailDataTes
       fp1.generateFList(new StringRecordIterator(new 
FileLineIterable(Resources.getResource(inputFilename)
            .openStream()), "\\s+"), minSupport), minSupport, 100000, 
       returnableFeatures,
-      new OutputCollector<String,List<Pair<List<String>,Long>>>() {
-        
-        @Override
-        public void collect(String key, List<Pair<List<String>,Long>> value) {
-          
-          for (Pair<List<String>,Long> v : value) {
-            List<String> l = v.getFirst();
-            results1.put(new HashSet<String>(l), v.getSecond());
-            log.info("found pat ["+v.getSecond()+"]: "+ v.getFirst());
-          }
-        }
-        
-      }, new StatusUpdater() {
-        
-        @Override
-        public void update(String status) {}
-      });
+      new MapCollector(results1), new DummyUpdater());
 
     FPGrowthObj<String> fp2 = new FPGrowthObj<String>();
-    final Map<Set<String>,Long> initialResults2 = Maps.newHashMap();
+    Map<Set<String>,Long> initialResults2 = Maps.newHashMap();
     fp2.generateTopKFrequentPatterns(
       new StringRecordIterator(new 
FileLineIterable(Resources.getResource(inputFilename).openStream()), "\\s+"),
 
       fp2.generateFList(new StringRecordIterator(new 
FileLineIterable(Resources.getResource(inputFilename)
            .openStream()), "\\s+"), minSupport), minSupport, 100000, 
       new HashSet<String>(),
-      new OutputCollector<String,List<Pair<List<String>,Long>>>() {
-        
-        @Override
-        public void collect(String key, List<Pair<List<String>,Long>> value) {
-          
-          for (Pair<List<String>,Long> v : value) {
-            List<String> l = v.getFirst();
-            initialResults2.put(new HashSet<String>(l), v.getSecond());
-            log.info("found pat ["+v.getSecond()+"]: "+ v.getFirst());
-          }
-        }
-        
-      }, new StatusUpdater() {
-        
-        @Override
-        public void update(String status) {}
-      });
+      new MapCollector(initialResults2), new DummyUpdater());
 
     Map<Set<String>, Long> results2 = new HashMap<Set<String>, Long>();    
     if (!returnableFeatures.isEmpty()) {
@@ -146,35 +136,31 @@ public final class FPGrowthRetailDataTes
       results2 = tmpResult;
     } else {
       results2 = initialResults2;
-    }
+  }
 
     boolean allMatch = true;
-    int itemsetsChecked = 0;
-    for (Map.Entry<Set<String>, Long> result1 : results1.entrySet()) {
-      itemsetsChecked++;
-      Set<String> feats = result1.getKey();
-      long supp1 = result1.getValue();
-      long supp2 = bestResults(results2, feats);
-      if (supp1 != supp2) {
-        allMatch = false;
-        log.info("mismatch checking results1 ["+supp1+" vs "+supp2+"]: 
"+feats);
-      }
-    }
-    log.info("checked "+itemsetsChecked+" itemsets iterating through #1");
+    allMatch &= hasAll(results1, results2);
+    log.info("checked "+results1.size()+" itemsets iterating through #1");
 
-    itemsetsChecked = 0;
-    for (Map.Entry<Set<String>, Long> result2 : results2.entrySet()) { 
-      itemsetsChecked++;
-      Set<String> feats = result2.getKey();
-      long supp2 = result2.getValue();
-      long supp1 = bestResults(results1, feats);
+    allMatch &= hasAll(results2, results1);
+    log.info("checked "+results2.size()+" itemsets iterating through #2");
+
+    assertEquals( "Had mismatches!", allMatch, true);
+  }
+
+  public boolean hasAll(Map<Set<String>, Long> ref, Map<Set<String>, Long> 
other) {
+    boolean hasAll = true;
+    for (Map.Entry<Set<String>, Long> refEnt : ref.entrySet()) {
+      Set<String> feats = refEnt.getKey();
+      long supp1 = refEnt.getValue();
+      long supp2 = bestResults(other, feats);
       if (supp1 != supp2) {
-        allMatch = false;
-        log.info("mismatch checking results2 [ "+supp1+" vs "+supp2+"]: 
"+feats);
+        hasAll = false;
+        log.info("mismatch checking results ["+supp1+" vs "+supp2+"]: "+feats);
       }
     }
-    log.info("checked "+itemsetsChecked+" itemsets iterating through #2");
 
-    assertEquals( "Had mismatches!", allMatch, true);
+    return hasAll;
   }
+
 }

Modified: 
mahout/trunk/core/src/test/java/org/apache/mahout/fpm/pfpgrowth/FPGrowthSyntheticDataTest.java
URL: 
http://svn.apache.org/viewvc/mahout/trunk/core/src/test/java/org/apache/mahout/fpm/pfpgrowth/FPGrowthSyntheticDataTest.java?rev=1297298&r1=1297297&r2=1297298&view=diff
==============================================================================
--- 
mahout/trunk/core/src/test/java/org/apache/mahout/fpm/pfpgrowth/FPGrowthSyntheticDataTest.java
 (original)
+++ 
mahout/trunk/core/src/test/java/org/apache/mahout/fpm/pfpgrowth/FPGrowthSyntheticDataTest.java
 Mon Mar  5 23:57:43 2012
@@ -40,7 +40,7 @@ import com.google.common.io.Resources;
 public final class FPGrowthSyntheticDataTest extends MahoutTestCase {
 
   @Test
-    public void testSpecificCasesFromSynthData() throws IOException {
+  public void testSpecificCasesFromSynthData() throws IOException {
     FPGrowthObj<String> fp = new FPGrowthObj<String>();
     
     String inputFilename = "FPGsynth.dat";

Modified: 
mahout/trunk/core/src/test/java/org/apache/mahout/fpm/pfpgrowth/PFPGrowthRetailDataTestVs.java
URL: 
http://svn.apache.org/viewvc/mahout/trunk/core/src/test/java/org/apache/mahout/fpm/pfpgrowth/PFPGrowthRetailDataTestVs.java?rev=1297298&r1=1297297&r2=1297298&view=diff
==============================================================================
--- 
mahout/trunk/core/src/test/java/org/apache/mahout/fpm/pfpgrowth/PFPGrowthRetailDataTestVs.java
 (original)
+++ 
mahout/trunk/core/src/test/java/org/apache/mahout/fpm/pfpgrowth/PFPGrowthRetailDataTestVs.java
 Mon Mar  5 23:57:43 2012
@@ -37,10 +37,6 @@ import org.apache.mahout.common.iterator
 import org.apache.mahout.fpm.pfpgrowth.convertors.string.TopKStringPatterns;
 import org.junit.Test;
 
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-
 import com.google.common.base.Charsets;
 import com.google.common.io.Closeables;
 import com.google.common.io.Files;
@@ -50,7 +46,6 @@ public final class PFPGrowthRetailDataTe
 
   private final Parameters paramsImpl1 = new Parameters();
   private final Parameters paramsImpl2 = new Parameters();
-  private static final Logger log = 
LoggerFactory.getLogger(PFPGrowthRetailDataTestVs.class);
 
   @Override
   public void setUp() throws Exception {


Reply via email to