You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mahout.apache.org by sm...@apache.org on 2015/03/25 07:49:23 UTC

[2/3] mahout git commit: MAHOUT-1652: Java 7 update

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/model/file/FileDataModel.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/model/file/FileDataModel.java b/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/model/file/FileDataModel.java
index 1ffdfa0..da6845e 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/model/file/FileDataModel.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/model/file/FileDataModel.java
@@ -128,7 +128,6 @@ public class FileDataModel extends AbstractDataModel {
   private final File dataFile;
   private long lastModified;
   private long lastUpdateFileModified;
-  private final char delimiter;
   private final Splitter delimiterPattern;
   private final boolean hasPrefValues;
   private DataModel delegate;
@@ -197,6 +196,7 @@ public class FileDataModel extends AbstractDataModel {
     }
     Closeables.close(iterator, true);
 
+    char delimiter;
     if (delimiterRegex == null) {
       delimiter = determineDelimiter(firstLine);
       delimiterPattern = Splitter.on(delimiter);
@@ -248,13 +248,13 @@ public class FileDataModel extends AbstractDataModel {
     lastModified = newLastModified;
     lastUpdateFileModified = newLastUpdateFileModified;
 
-    FastByIDMap<FastByIDMap<Long>> timestamps = new FastByIDMap<FastByIDMap<Long>>();
+    FastByIDMap<FastByIDMap<Long>> timestamps = new FastByIDMap<>();
 
     if (hasPrefValues) {
 
       if (loadFreshData) {
 
-        FastByIDMap<Collection<Preference>> data = new FastByIDMap<Collection<Preference>>();
+        FastByIDMap<Collection<Preference>> data = new FastByIDMap<>();
         FileLineIterator iterator = new FileLineIterator(dataFile, false);
         processFile(iterator, data, timestamps, false);
 
@@ -280,7 +280,7 @@ public class FileDataModel extends AbstractDataModel {
 
       if (loadFreshData) {
 
-        FastByIDMap<FastIDSet> data = new FastByIDMap<FastIDSet>();
+        FastByIDMap<FastIDSet> data = new FastByIDMap<>();
         FileLineIterator iterator = new FileLineIterator(dataFile, false);
         processFileWithoutID(iterator, data, timestamps);
 
@@ -316,7 +316,7 @@ public class FileDataModel extends AbstractDataModel {
     int period = dataFileName.indexOf('.');
     String startName = period < 0 ? dataFileName : dataFileName.substring(0, period);
     File parentDir = dataFile.getParentFile();
-    Map<Long, File> modTimeToUpdateFile = new TreeMap<Long,File>();
+    Map<Long, File> modTimeToUpdateFile = new TreeMap<>();
     FileFilter onlyFiles = new FileFilter() {
       @Override
       public boolean accept(File file) {
@@ -612,7 +612,7 @@ public class FileDataModel extends AbstractDataModel {
     if (timestampString != null) {
       FastByIDMap<Long> itemTimestamps = timestamps.get(userID);
       if (itemTimestamps == null) {
-        itemTimestamps = new FastByIDMap<Long>();
+        itemTimestamps = new FastByIDMap<>();
         timestamps.put(userID, itemTimestamps);
       }
       long timestamp = readTimestampFromString(timestampString);

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/model/file/FileIDMigrator.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/model/file/FileIDMigrator.java b/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/model/file/FileIDMigrator.java
index 6a60b5c..1bcb4ef 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/model/file/FileIDMigrator.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/model/file/FileIDMigrator.java
@@ -61,7 +61,7 @@ public class FileIDMigrator extends AbstractIDMigrator {
   }
 
   public FileIDMigrator(File dataFile, long minReloadIntervalMS) throws FileNotFoundException {
-    longToString = new FastByIDMap<String>(100);
+    longToString = new FastByIDMap<>(100);
     this.dataFile = Preconditions.checkNotNull(dataFile);
     if (!dataFile.exists() || dataFile.isDirectory()) {
       throw new FileNotFoundException(dataFile.toString());
@@ -94,7 +94,7 @@ public class FileIDMigrator extends AbstractIDMigrator {
   }
 
   private FastByIDMap<String> buildMapping() throws IOException {
-    FastByIDMap<String> mapping = new FastByIDMap<String>();
+    FastByIDMap<String> mapping = new FastByIDMap<>();
     for (String line : new FileLineIterable(dataFile)) {
       mapping.put(toLongID(line), line);
     }

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/neighborhood/CachingUserNeighborhood.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/neighborhood/CachingUserNeighborhood.java b/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/neighborhood/CachingUserNeighborhood.java
index fa48a57..998e476 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/neighborhood/CachingUserNeighborhood.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/neighborhood/CachingUserNeighborhood.java
@@ -39,7 +39,7 @@ public final class CachingUserNeighborhood implements UserNeighborhood {
     Preconditions.checkArgument(neighborhood != null, "neighborhood is null");
     this.neighborhood = neighborhood;
     int maxCacheSize = dataModel.getNumUsers(); // just a dumb heuristic for sizing
-    this.neighborhoodCache = new Cache<Long,long[]>(new NeighborhoodRetriever(neighborhood), maxCacheSize);
+    this.neighborhoodCache = new Cache<>(new NeighborhoodRetriever(neighborhood), maxCacheSize);
   }
   
   @Override

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/recommender/CachingRecommender.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/recommender/CachingRecommender.java b/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/recommender/CachingRecommender.java
index 6d430eb..7ed8cc3 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/recommender/CachingRecommender.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/recommender/CachingRecommender.java
@@ -65,8 +65,8 @@ public final class CachingRecommender implements Recommender {
     // Use "num users" as an upper limit on cache size. Rough guess.
     int numUsers = recommender.getDataModel().getNumUsers();
     recommendationsRetriever = new RecommendationRetriever();
-    recommendationCache = new Cache<Long, Recommendations>(recommendationsRetriever, numUsers);
-    estimatedPrefCache = new Cache<LongPair, Float>(new EstimatedPrefRetriever(), numUsers);
+    recommendationCache = new Cache<>(recommendationsRetriever, numUsers);
+    estimatedPrefCache = new Cache<>(new EstimatedPrefRetriever(), numUsers);
     refreshHelper = new RefreshHelper(new Callable<Object>() {
       @Override
       public Object call() {

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/recommender/ItemAverageRecommender.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/recommender/ItemAverageRecommender.java b/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/recommender/ItemAverageRecommender.java
index fdb8a82..618c65f 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/recommender/ItemAverageRecommender.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/recommender/ItemAverageRecommender.java
@@ -58,7 +58,7 @@ public final class ItemAverageRecommender extends AbstractRecommender {
   
   public ItemAverageRecommender(DataModel dataModel) throws TasteException {
     super(dataModel);
-    this.itemAverages = new FastByIDMap<RunningAverage>();
+    this.itemAverages = new FastByIDMap<>();
     this.buildAveragesLock = new ReentrantReadWriteLock();
     this.refreshHelper = new RefreshHelper(new Callable<Object>() {
       @Override

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/recommender/ItemUserAverageRecommender.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/recommender/ItemUserAverageRecommender.java b/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/recommender/ItemUserAverageRecommender.java
index fa53f99..b2bcd24 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/recommender/ItemUserAverageRecommender.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/recommender/ItemUserAverageRecommender.java
@@ -61,8 +61,8 @@ public final class ItemUserAverageRecommender extends AbstractRecommender {
   
   public ItemUserAverageRecommender(DataModel dataModel) throws TasteException {
     super(dataModel);
-    this.itemAverages = new FastByIDMap<RunningAverage>();
-    this.userAverages = new FastByIDMap<RunningAverage>();
+    this.itemAverages = new FastByIDMap<>();
+    this.userAverages = new FastByIDMap<>();
     this.overallAveragePrefValue = new FullRunningAverage();
     this.buildAveragesLock = new ReentrantReadWriteLock();
     this.refreshHelper = new RefreshHelper(new Callable<Object>() {

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/recommender/NullRescorer.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/recommender/NullRescorer.java b/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/recommender/NullRescorer.java
index bc86ec3..14e9ec6 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/recommender/NullRescorer.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/recommender/NullRescorer.java
@@ -29,8 +29,8 @@ import org.apache.mahout.common.LongPair;
 public final class NullRescorer<T> implements Rescorer<T>, IDRescorer {
   
   private static final IDRescorer USER_OR_ITEM_INSTANCE = new NullRescorer<Long>();
-  private static final Rescorer<LongPair> ITEM_ITEM_PAIR_INSTANCE = new NullRescorer<LongPair>();
-  private static final Rescorer<LongPair> USER_USER_PAIR_INSTANCE = new NullRescorer<LongPair>();
+  private static final Rescorer<LongPair> ITEM_ITEM_PAIR_INSTANCE = new NullRescorer<>();
+  private static final Rescorer<LongPair> USER_USER_PAIR_INSTANCE = new NullRescorer<>();
 
   private NullRescorer() {
   }

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/recommender/SamplingCandidateItemsStrategy.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/recommender/SamplingCandidateItemsStrategy.java b/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/recommender/SamplingCandidateItemsStrategy.java
index 0ff02a0..623a60b 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/recommender/SamplingCandidateItemsStrategy.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/recommender/SamplingCandidateItemsStrategy.java
@@ -134,7 +134,7 @@ public class SamplingCandidateItemsStrategy extends AbstractCandidateItemsStrate
       int prefsLength = prefs.length();
       if (prefsLength > maxUsersPerItem) {
         Iterator<Preference> sampledPrefs =
-            new FixedSizeSamplingIterator<Preference>(maxUsersPerItem, prefs.iterator());
+            new FixedSizeSamplingIterator<>(maxUsersPerItem, prefs.iterator());
         while (sampledPrefs.hasNext()) {
           addSomeOf(possibleItemsIDs, dataModel.getItemIDsFromUser(sampledPrefs.next().getUserID()));
         }

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/recommender/TopItems.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/recommender/TopItems.java b/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/recommender/TopItems.java
index 5c9bb62..3c27145 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/recommender/TopItems.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/recommender/TopItems.java
@@ -53,7 +53,7 @@ public final class TopItems {
     Preconditions.checkArgument(possibleItemIDs != null, "possibleItemIDs is null");
     Preconditions.checkArgument(estimator != null, "estimator is null");
 
-    Queue<RecommendedItem> topItems = new PriorityQueue<RecommendedItem>(howMany + 1,
+    Queue<RecommendedItem> topItems = new PriorityQueue<>(howMany + 1,
       Collections.reverseOrder(ByValueRecommendedItemComparator.getInstance()));
     boolean full = false;
     double lowestTopValue = Double.NEGATIVE_INFINITY;
@@ -93,7 +93,7 @@ public final class TopItems {
                                    LongPrimitiveIterator allUserIDs,
                                    IDRescorer rescorer,
                                    Estimator<Long> estimator) throws TasteException {
-    Queue<SimilarUser> topUsers = new PriorityQueue<SimilarUser>(howMany + 1, Collections.reverseOrder());
+    Queue<SimilarUser> topUsers = new PriorityQueue<>(howMany + 1, Collections.reverseOrder());
     boolean full = false;
     double lowestTopValue = Double.NEGATIVE_INFINITY;
     while (allUserIDs.hasNext()) {
@@ -147,7 +147,7 @@ public final class TopItems {
     int howMany, Iterator<GenericItemSimilarity.ItemItemSimilarity> allSimilarities) {
     
     Queue<GenericItemSimilarity.ItemItemSimilarity> topSimilarities
-      = new PriorityQueue<GenericItemSimilarity.ItemItemSimilarity>(howMany + 1, Collections.reverseOrder());
+      = new PriorityQueue<>(howMany + 1, Collections.reverseOrder());
     boolean full = false;
     double lowestTopValue = Double.NEGATIVE_INFINITY;
     while (allSimilarities.hasNext()) {
@@ -178,7 +178,7 @@ public final class TopItems {
     int howMany, Iterator<GenericUserSimilarity.UserUserSimilarity> allSimilarities) {
     
     Queue<GenericUserSimilarity.UserUserSimilarity> topSimilarities
-      = new PriorityQueue<GenericUserSimilarity.UserUserSimilarity>(howMany + 1, Collections.reverseOrder());
+      = new PriorityQueue<>(howMany + 1, Collections.reverseOrder());
     boolean full = false;
     double lowestTopValue = Double.NEGATIVE_INFINITY;
     while (allSimilarities.hasNext()) {

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/similarity/AveragingPreferenceInferrer.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/similarity/AveragingPreferenceInferrer.java b/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/similarity/AveragingPreferenceInferrer.java
index 37149b3..7c655fe 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/similarity/AveragingPreferenceInferrer.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/similarity/AveragingPreferenceInferrer.java
@@ -46,7 +46,7 @@ public final class AveragingPreferenceInferrer implements PreferenceInferrer {
   public AveragingPreferenceInferrer(DataModel dataModel) throws TasteException {
     this.dataModel = dataModel;
     Retriever<Long,Float> retriever = new PrefRetriever();
-    averagePreferenceValue = new Cache<Long,Float>(retriever, dataModel.getNumUsers());
+    averagePreferenceValue = new Cache<>(retriever, dataModel.getNumUsers());
     refresh(null);
   }
   

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/similarity/CachingItemSimilarity.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/similarity/CachingItemSimilarity.java b/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/similarity/CachingItemSimilarity.java
index 2fbc13d..87aeae9 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/similarity/CachingItemSimilarity.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/similarity/CachingItemSimilarity.java
@@ -54,7 +54,7 @@ public final class CachingItemSimilarity implements ItemSimilarity {
   public CachingItemSimilarity(ItemSimilarity similarity, int maxCacheSize) {
     Preconditions.checkArgument(similarity != null, "similarity is null");
     this.similarity = similarity;
-    this.similarityCache = new Cache<LongPair,Double>(new SimilarityRetriever(similarity), maxCacheSize);
+    this.similarityCache = new Cache<>(new SimilarityRetriever(similarity), maxCacheSize);
     this.refreshHelper = new RefreshHelper(new Callable<Void>() {
       @Override
       public Void call() {

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/similarity/CachingUserSimilarity.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/similarity/CachingUserSimilarity.java b/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/similarity/CachingUserSimilarity.java
index a26d9df..873568a 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/similarity/CachingUserSimilarity.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/similarity/CachingUserSimilarity.java
@@ -56,7 +56,7 @@ public final class CachingUserSimilarity implements UserSimilarity {
   public CachingUserSimilarity(UserSimilarity similarity, int maxCacheSize) {
     Preconditions.checkArgument(similarity != null, "similarity is null");
     this.similarity = similarity;
-    this.similarityCache = new Cache<LongPair,Double>(new SimilarityRetriever(similarity), maxCacheSize);
+    this.similarityCache = new Cache<>(new SimilarityRetriever(similarity), maxCacheSize);
     this.refreshHelper = new RefreshHelper(new Callable<Void>() {
       @Override
       public Void call() {

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/similarity/GenericItemSimilarity.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/similarity/GenericItemSimilarity.java b/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/similarity/GenericItemSimilarity.java
index 6f49caa..d0c9b8c 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/similarity/GenericItemSimilarity.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/similarity/GenericItemSimilarity.java
@@ -50,8 +50,8 @@ public final class GenericItemSimilarity implements ItemSimilarity {
 
   private static final long[] NO_IDS = new long[0];
   
-  private final FastByIDMap<FastByIDMap<Double>> similarityMaps = new FastByIDMap<FastByIDMap<Double>>();
-  private final FastByIDMap<FastIDSet> similarItemIDsIndex = new FastByIDMap<FastIDSet>();
+  private final FastByIDMap<FastByIDMap<Double>> similarityMaps = new FastByIDMap<>();
+  private final FastByIDMap<FastIDSet> similarItemIDsIndex = new FastByIDMap<>();
 
   /**
    * <p>
@@ -166,7 +166,7 @@ public final class GenericItemSimilarity implements ItemSimilarity {
         }
         FastByIDMap<Double> map = similarityMaps.get(itemID1);
         if (map == null) {
-          map = new FastByIDMap<Double>();
+          map = new FastByIDMap<>();
           similarityMaps.put(itemID1, map);
         }
         map.put(itemID2, iic.getValue());

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/similarity/GenericUserSimilarity.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/similarity/GenericUserSimilarity.java b/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/similarity/GenericUserSimilarity.java
index 3aa7f30..1c221c2 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/similarity/GenericUserSimilarity.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/similarity/GenericUserSimilarity.java
@@ -35,7 +35,7 @@ import com.google.common.base.Preconditions;
 
 public final class GenericUserSimilarity implements UserSimilarity {
   
-  private final FastByIDMap<FastByIDMap<Double>> similarityMaps = new FastByIDMap<FastByIDMap<Double>>();
+  private final FastByIDMap<FastByIDMap<Double>> similarityMaps = new FastByIDMap<>();
   
   public GenericUserSimilarity(Iterable<UserUserSimilarity> similarities) {
     initSimilarityMaps(similarities.iterator());
@@ -98,7 +98,7 @@ public final class GenericUserSimilarity implements UserSimilarity {
         }
         FastByIDMap<Double> map = similarityMaps.get(user1);
         if (map == null) {
-          map = new FastByIDMap<Double>();
+          map = new FastByIDMap<>();
           similarityMaps.put(user1, map);
         }
         map.put(user2, uuc.getValue());

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/similarity/precompute/MultithreadedBatchItemSimilarities.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/similarity/precompute/MultithreadedBatchItemSimilarities.java b/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/similarity/precompute/MultithreadedBatchItemSimilarities.java
index 9c889ba..09ca57a 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/similarity/precompute/MultithreadedBatchItemSimilarities.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/cf/taste/impl/similarity/precompute/MultithreadedBatchItemSimilarities.java
@@ -84,7 +84,7 @@ public class MultithreadedBatchItemSimilarities extends BatchItemSimilarities {
       DataModel dataModel = getRecommender().getDataModel();
 
       BlockingQueue<long[]> itemsIDsInBatches = queueItemIDsInBatches(dataModel, batchSize, degreeOfParallelism);
-      BlockingQueue<List<SimilarItems>> results = new LinkedBlockingQueue<List<SimilarItems>>();
+      BlockingQueue<List<SimilarItems>> results = new LinkedBlockingQueue<>();
 
       AtomicInteger numActiveWorkers = new AtomicInteger(degreeOfParallelism);
       for (int n = 0; n < degreeOfParallelism; n++) {
@@ -118,7 +118,7 @@ public class MultithreadedBatchItemSimilarities extends BatchItemSimilarities {
     LongPrimitiveIterator itemIDs = dataModel.getItemIDs();
     int numItems = dataModel.getNumItems();
 
-    BlockingQueue<long[]> itemIDBatches = new LinkedBlockingQueue<long[]>((numItems / batchSize) + 1);
+    BlockingQueue<long[]> itemIDBatches = new LinkedBlockingQueue<>((numItems / batchSize) + 1);
 
     long[] batch = new long[batchSize];
     int pos = 0;

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/cf/taste/model/IDMigrator.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/cf/taste/model/IDMigrator.java b/mrlegacy/src/main/java/org/apache/mahout/cf/taste/model/IDMigrator.java
index dd95112..cc477fe 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/cf/taste/model/IDMigrator.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/cf/taste/model/IDMigrator.java
@@ -50,8 +50,6 @@ public interface IDMigrator extends Refreshable {
   /**
    * @return the top 8 bytes of the MD5 hash of the bytes of the given {@link String}'s UTF-8 encoding as a
    *         long.
-   * @throws TasteException
-   *           if an error occurs while storing the mapping
    */
   long toLongID(String stringID);
   

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/classifier/naivebayes/BayesUtils.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/classifier/naivebayes/BayesUtils.java b/mrlegacy/src/main/java/org/apache/mahout/classifier/naivebayes/BayesUtils.java
index 9904f22..1e5171c 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/classifier/naivebayes/BayesUtils.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/classifier/naivebayes/BayesUtils.java
@@ -137,7 +137,7 @@ public final class BayesUtils {
   }
 
   public static Map<Integer, String> readLabelIndex(Configuration conf, Path indexPath) {
-    Map<Integer, String> labelMap = new HashMap<Integer, String>();
+    Map<Integer, String> labelMap = new HashMap<>();
     for (Pair<Text, IntWritable> pair : new SequenceFileIterable<Text, IntWritable>(indexPath, true, conf)) {
       labelMap.put(pair.getSecond().get(), pair.getFirst().toString());
     }
@@ -145,7 +145,7 @@ public final class BayesUtils {
   }
 
   public static OpenObjectIntHashMap<String> readIndexFromCache(Configuration conf) throws IOException {
-    OpenObjectIntHashMap<String> index = new OpenObjectIntHashMap<String>();
+    OpenObjectIntHashMap<String> index = new OpenObjectIntHashMap<>();
     for (Pair<Writable,IntWritable> entry
         : new SequenceFileIterable<Writable,IntWritable>(HadoopUtil.getSingleCachedFile(conf), conf)) {
       index.put(entry.getFirst().toString(), entry.getSecond().get());

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/classifier/naivebayes/test/BayesTestMapper.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/classifier/naivebayes/test/BayesTestMapper.java b/mrlegacy/src/main/java/org/apache/mahout/classifier/naivebayes/test/BayesTestMapper.java
index fb381fa..37a3b71 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/classifier/naivebayes/test/BayesTestMapper.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/classifier/naivebayes/test/BayesTestMapper.java
@@ -56,7 +56,7 @@ public class BayesTestMapper extends Mapper<Text, VectorWritable, Text, VectorWr
     // trained complementary. a complementarty model will work for standard classification
     // a standard model will not work for complementary classification
     if (isComplementary) {
-      Preconditions.checkArgument((model.isComplemtary() == isComplementary),
+      Preconditions.checkArgument((model.isComplemtary()),
           "Complementary mode in model is different than test mode");
     }
     

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/classifier/naivebayes/test/TestNaiveBayesDriver.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/classifier/naivebayes/test/TestNaiveBayesDriver.java b/mrlegacy/src/main/java/org/apache/mahout/classifier/naivebayes/test/TestNaiveBayesDriver.java
index c169f78..8fd422f 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/classifier/naivebayes/test/TestNaiveBayesDriver.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/classifier/naivebayes/test/TestNaiveBayesDriver.java
@@ -100,7 +100,7 @@ public class TestNaiveBayesDriver extends AbstractJob {
 
     //loop over the results and create the confusion matrix
     SequenceFileDirIterable<Text, VectorWritable> dirIterable =
-        new SequenceFileDirIterable<Text, VectorWritable>(getOutputPath(), PathType.LIST, PathFilters.partFilter(), getConf());
+        new SequenceFileDirIterable<>(getOutputPath(), PathType.LIST, PathFilters.partFilter(), getConf());
     ResultAnalyzer analyzer = new ResultAnalyzer(labelMap.values(), "DEFAULT");
     analyzeResults(labelMap, dirIterable, analyzer);
 
@@ -117,7 +117,7 @@ public class TestNaiveBayesDriver extends AbstractJob {
     // trained complementary. a complementarty model will work for standard classification
     // a standard model will not work for complementary classification
     if (complementary){
-        Preconditions.checkArgument((model.isComplemtary() == complementary),
+        Preconditions.checkArgument((model.isComplemtary()),
             "Complementary mode in model is different from test mode");
     }
     
@@ -132,7 +132,7 @@ public class TestNaiveBayesDriver extends AbstractJob {
 
     try {
       SequenceFileDirIterable<Text, VectorWritable> dirIterable =
-          new SequenceFileDirIterable<Text, VectorWritable>(getInputPath(), PathType.LIST, PathFilters.partFilter(), getConf());
+          new SequenceFileDirIterable<>(getInputPath(), PathType.LIST, PathFilters.partFilter(), getConf());
       // loop through the part-r-* files in getInputPath() and get classification scores for all entries
       for (Pair<Text, VectorWritable> pair : dirIterable) {
         writer.append(new Text(SLASH.split(pair.getFirst().toString())[1]),

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/classifier/sequencelearning/hmm/BaumWelchTrainer.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/classifier/sequencelearning/hmm/BaumWelchTrainer.java b/mrlegacy/src/main/java/org/apache/mahout/classifier/sequencelearning/hmm/BaumWelchTrainer.java
index 27b5e1d..942a101 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/classifier/sequencelearning/hmm/BaumWelchTrainer.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/classifier/sequencelearning/hmm/BaumWelchTrainer.java
@@ -98,13 +98,10 @@ public final class BaumWelchTrainer {
       List<Integer> observations = Lists.newArrayList();
 
       //reading observations
-      Scanner scanner = new Scanner(new FileInputStream(input), "UTF-8");
-      try {
+      try (Scanner scanner = new Scanner(new FileInputStream(input), "UTF-8")) {
         while (scanner.hasNextInt()) {
           observations.add(scanner.nextInt());
         }
-      } finally {
-        scanner.close();
       }
 
       int[] observationsArray = new int[observations.size()];

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/classifier/sequencelearning/hmm/ViterbiEvaluator.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/classifier/sequencelearning/hmm/ViterbiEvaluator.java b/mrlegacy/src/main/java/org/apache/mahout/classifier/sequencelearning/hmm/ViterbiEvaluator.java
index 4d70d20..fb64385 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/classifier/sequencelearning/hmm/ViterbiEvaluator.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/classifier/sequencelearning/hmm/ViterbiEvaluator.java
@@ -92,13 +92,10 @@ public final class ViterbiEvaluator {
 
       //reading observations
       List<Integer> observations = Lists.newArrayList();
-      Scanner scanner = new Scanner(new FileInputStream(input), "UTF-8");
-      try {
+      try (Scanner scanner = new Scanner(new FileInputStream(input), "UTF-8")) {
         while (scanner.hasNextInt()) {
           observations.add(scanner.nextInt());
         }
-      } finally {
-        scanner.close();
       }
 
       int[] observationsArray = new int[observations.size()];

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/clustering/AbstractCluster.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/clustering/AbstractCluster.java b/mrlegacy/src/main/java/org/apache/mahout/clustering/AbstractCluster.java
index 582ac0d..cc05beb 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/clustering/AbstractCluster.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/clustering/AbstractCluster.java
@@ -301,7 +301,7 @@ public abstract class AbstractCluster implements Cluster {
   }
 
   public Map<String,Object> asJson(String[] bindings) {
-    Map<String,Object> dict = new HashMap<String,Object>();
+    Map<String,Object> dict = new HashMap<>();
     dict.put("identifier", getIdentifier());
     dict.put("n", getNumObservations());
     if (getCenter() != null) {

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/clustering/classify/WeightedPropertyVectorWritable.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/clustering/classify/WeightedPropertyVectorWritable.java b/mrlegacy/src/main/java/org/apache/mahout/clustering/classify/WeightedPropertyVectorWritable.java
index c96f030..567659b 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/clustering/classify/WeightedPropertyVectorWritable.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/clustering/classify/WeightedPropertyVectorWritable.java
@@ -56,7 +56,7 @@ public class WeightedPropertyVectorWritable extends WeightedVectorWritable {
     super.readFields(in);
     int size = in.readInt();
     if (size > 0) {
-      properties = new HashMap<Text, Text>();
+      properties = new HashMap<>();
       for (int i = 0; i < size; i++) {
         Text key = new Text(in.readUTF());
         Text val = new Text(in.readUTF());

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/clustering/fuzzykmeans/FuzzyKMeansUtil.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/clustering/fuzzykmeans/FuzzyKMeansUtil.java b/mrlegacy/src/main/java/org/apache/mahout/clustering/fuzzykmeans/FuzzyKMeansUtil.java
index 052e45e..25621bb 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/clustering/fuzzykmeans/FuzzyKMeansUtil.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/clustering/fuzzykmeans/FuzzyKMeansUtil.java
@@ -45,7 +45,7 @@ final class FuzzyKMeansUtil {
    *          a List<Cluster> to put values into
    */
   public static void configureWithClusterInfo(Configuration conf, Path clusterPath, List<Cluster> clusters) {
-    for (Writable value : new SequenceFileDirValueIterable<Writable>(clusterPath, PathType.LIST,
+    for (Writable value : new SequenceFileDirValueIterable<>(clusterPath, PathType.LIST,
         PathFilters.partFilter(), conf)) {
       Class<? extends Writable> valueClass = value.getClass();
       

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/clustering/iterator/ClusterIterator.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/clustering/iterator/ClusterIterator.java b/mrlegacy/src/main/java/org/apache/mahout/clustering/iterator/ClusterIterator.java
index b940cc2..516177f 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/clustering/iterator/ClusterIterator.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/clustering/iterator/ClusterIterator.java
@@ -204,7 +204,7 @@ public final class ClusterIterator {
    */
   private static boolean isConverged(Path filePath, Configuration conf, FileSystem fs) throws IOException {
     for (FileStatus part : fs.listStatus(filePath, PathFilters.partFilter())) {
-      SequenceFileValueIterator<ClusterWritable> iterator = new SequenceFileValueIterator<ClusterWritable>(
+      SequenceFileValueIterator<ClusterWritable> iterator = new SequenceFileValueIterator<>(
           part.getPath(), true, conf);
       while (iterator.hasNext()) {
         ClusterWritable value = iterator.next();

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/clustering/kmeans/KMeansUtil.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/clustering/kmeans/KMeansUtil.java b/mrlegacy/src/main/java/org/apache/mahout/clustering/kmeans/KMeansUtil.java
index b3ca507..3365f70 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/clustering/kmeans/KMeansUtil.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/clustering/kmeans/KMeansUtil.java
@@ -48,7 +48,7 @@ final class KMeansUtil {
    *          a List<Cluster> to put values into
    */
   public static void configureWithClusterInfo(Configuration conf, Path clusterPath, Collection<Cluster> clusters) {
-    for (Writable value : new SequenceFileDirValueIterable<Writable>(clusterPath, PathType.LIST,
+    for (Writable value : new SequenceFileDirValueIterable<>(clusterPath, PathType.LIST,
         PathFilters.partFilter(), conf)) {
       Class<? extends Writable> valueClass = value.getClass();
       if (valueClass.equals(ClusterWritable.class)) {

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/clustering/kmeans/RandomSeedGenerator.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/clustering/kmeans/RandomSeedGenerator.java b/mrlegacy/src/main/java/org/apache/mahout/clustering/kmeans/RandomSeedGenerator.java
index c3b97a2..a151338 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/clustering/kmeans/RandomSeedGenerator.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/clustering/kmeans/RandomSeedGenerator.java
@@ -78,7 +78,7 @@ public final class RandomSeedGenerator {
     if (newFile) {
       Path inputPathPattern;
 
-      if (fs.getFileStatus(input).isDir()) {
+      if (fs.getFileStatus(input).isDirectory()) {
         inputPathPattern = new Path(input, "*");
       } else {
         inputPathPattern = input;
@@ -95,7 +95,7 @@ public final class RandomSeedGenerator {
 
       int index = 0;
       for (FileStatus fileStatus : inputFiles) {
-        if (fileStatus.isDir()) {
+        if (fileStatus.isDirectory()) {
           continue;
         }
         for (Pair<Writable,VectorWritable> record

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/clustering/lda/cvb/InMemoryCollapsedVariationalBayes0.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/clustering/lda/cvb/InMemoryCollapsedVariationalBayes0.java b/mrlegacy/src/main/java/org/apache/mahout/clustering/lda/cvb/InMemoryCollapsedVariationalBayes0.java
index 69c86ea..07ae100 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/clustering/lda/cvb/InMemoryCollapsedVariationalBayes0.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/clustering/lda/cvb/InMemoryCollapsedVariationalBayes0.java
@@ -447,7 +447,7 @@ public class InMemoryCollapsedVariationalBayes0 extends AbstractJob {
      // key is word value is id
     for (Pair<Writable, IntWritable> record
             : new SequenceFileIterable<Writable, IntWritable>(dictionaryFile, true, conf)) {
-      termList.add(new Pair<Integer, String>(record.getSecond().get(),
+      termList.add(new Pair<>(record.getSecond().get(),
           record.getFirst().toString()));
       maxTermId = Math.max(maxTermId, record.getSecond().get());
     }

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/clustering/lda/cvb/ModelTrainer.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/clustering/lda/cvb/ModelTrainer.java b/mrlegacy/src/main/java/org/apache/mahout/clustering/lda/cvb/ModelTrainer.java
index dcf43ec..912b6d5 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/clustering/lda/cvb/ModelTrainer.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/clustering/lda/cvb/ModelTrainer.java
@@ -97,7 +97,7 @@ public class ModelTrainer {
 
   public void start() {
     log.info("Starting training threadpool with {} threads", numTrainThreads);
-    workQueue = new ArrayBlockingQueue<Runnable>(numTrainThreads * 10);
+    workQueue = new ArrayBlockingQueue<>(numTrainThreads * 10);
     threadPool = new ThreadPoolExecutor(numTrainThreads, numTrainThreads, 0, TimeUnit.SECONDS,
         workQueue);
     threadPool.allowCoreThreadTimeOut(false);

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/clustering/lda/cvb/TopicModel.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/clustering/lda/cvb/TopicModel.java b/mrlegacy/src/main/java/org/apache/mahout/clustering/lda/cvb/TopicModel.java
index 1a7dc03..7b7816c 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/clustering/lda/cvb/TopicModel.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/clustering/lda/cvb/TopicModel.java
@@ -454,7 +454,7 @@ public class TopicModel implements Configurable, Iterable<MatrixSlice> {
 
   private final class Updater implements Runnable {
     private final ArrayBlockingQueue<Pair<Integer, Vector>> queue =
-        new ArrayBlockingQueue<Pair<Integer, Vector>>(100);
+        new ArrayBlockingQueue<>(100);
     private boolean shutdown = false;
     private boolean shutdownComplete = false;
 

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/clustering/spectral/VectorCache.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/clustering/spectral/VectorCache.java b/mrlegacy/src/main/java/org/apache/mahout/clustering/spectral/VectorCache.java
index c401bb6..60e0a2e 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/clustering/spectral/VectorCache.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/clustering/spectral/VectorCache.java
@@ -113,7 +113,7 @@ public final class VectorCache {
   public static Vector load(Configuration conf, Path input) throws IOException {
     log.info("Loading vector from: {}", input);
     SequenceFileValueIterator<VectorWritable> iterator =
-            new SequenceFileValueIterator<VectorWritable>(input, true, conf);
+            new SequenceFileValueIterator<>(input, true, conf);
     try {
       return iterator.next().get();
     } finally {

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/clustering/spectral/kmeans/EigenSeedGenerator.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/clustering/spectral/kmeans/EigenSeedGenerator.java b/mrlegacy/src/main/java/org/apache/mahout/clustering/spectral/kmeans/EigenSeedGenerator.java
index 5f9c1a6..bc1a1c7 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/clustering/spectral/kmeans/EigenSeedGenerator.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/clustering/spectral/kmeans/EigenSeedGenerator.java
@@ -65,7 +65,7 @@ public final class EigenSeedGenerator {
     if (newFile) {
       Path inputPathPattern;
 
-      if (fs.getFileStatus(input).isDir()) {
+      if (fs.getFileStatus(input).isDirectory()) {
         inputPathPattern = new Path(input, "*");
       } else {
         inputPathPattern = input;
@@ -83,7 +83,7 @@ public final class EigenSeedGenerator {
       Map<Integer,ClusterWritable> chosenClusters = Maps.newHashMapWithExpectedSize(k);
 
       for (FileStatus fileStatus : inputFiles) {
-        if (!fileStatus.isDir()) {
+        if (!fileStatus.isDirectory()) {
           for (Pair<Writable,VectorWritable> record : new SequenceFileIterable<Writable,VectorWritable>(
               fileStatus.getPath(), true, conf)) {
             Writable key = record.getFirst();

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/clustering/streaming/cluster/BallKMeans.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/clustering/streaming/cluster/BallKMeans.java b/mrlegacy/src/main/java/org/apache/mahout/clustering/streaming/cluster/BallKMeans.java
index a0365d7..25a4022 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/clustering/streaming/cluster/BallKMeans.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/clustering/streaming/cluster/BallKMeans.java
@@ -250,7 +250,7 @@ public class BallKMeans implements Iterable<Centroid> {
     for (WeightedVector datapoint : datapoints) {
       totalWeight += datapoint.getWeight();
     }
-    Multinomial<Integer> seedSelector = new Multinomial<Integer>();
+    Multinomial<Integer> seedSelector = new Multinomial<>();
     for (int i = 0; i < numDatapoints; ++i) {
       seedSelector.add(i, datapoints.get(i).getWeight() / totalWeight);
     }
@@ -316,7 +316,7 @@ public class BallKMeans implements Iterable<Centroid> {
 
     // Multinomial distribution of vector indices for the selection seeds. These correspond to
     // the indices of the vectors in the original datapoints list.
-    Multinomial<Integer> seedSelector = new Multinomial<Integer>();
+    Multinomial<Integer> seedSelector = new Multinomial<>();
     for (int i = 0; i < datapoints.size(); ++i) {
       double selectionProbability =
           deltaX + datapoints.size() * distanceMeasure.distance(datapoints.get(i), center);

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/clustering/topdown/postprocessor/ClusterCountReader.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/clustering/topdown/postprocessor/ClusterCountReader.java b/mrlegacy/src/main/java/org/apache/mahout/clustering/topdown/postprocessor/ClusterCountReader.java
index 42233e2..083b543 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/clustering/topdown/postprocessor/ClusterCountReader.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/clustering/topdown/postprocessor/ClusterCountReader.java
@@ -73,11 +73,11 @@ public final class ClusterCountReader {
    */
   public static Map<Integer, Integer> getClusterIDs(Path clusterOutputPath, Configuration conf, boolean keyIsClusterId)
     throws IOException {
-    Map<Integer, Integer> clusterIds = new HashMap<Integer, Integer>();
+    Map<Integer, Integer> clusterIds = new HashMap<>();
     FileSystem fileSystem = clusterOutputPath.getFileSystem(conf);
     FileStatus[] clusterFiles = fileSystem.listStatus(clusterOutputPath, PathFilters.finalPartFilter());
     //System.out.println("LOOK HERE: " + clusterOutputPath);
-    Iterator<ClusterWritable> it = new SequenceFileDirValueIterator<ClusterWritable>(clusterFiles[0].getPath(),
+    Iterator<ClusterWritable> it = new SequenceFileDirValueIterator<>(clusterFiles[0].getPath(),
             PathType.LIST,
             PathFilters.partFilter(),
             null,

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/clustering/topdown/postprocessor/ClusterOutputPostProcessorDriver.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/clustering/topdown/postprocessor/ClusterOutputPostProcessorDriver.java b/mrlegacy/src/main/java/org/apache/mahout/clustering/topdown/postprocessor/ClusterOutputPostProcessorDriver.java
index e4b62a3..82a3071 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/clustering/topdown/postprocessor/ClusterOutputPostProcessorDriver.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/clustering/topdown/postprocessor/ClusterOutputPostProcessorDriver.java
@@ -159,7 +159,7 @@ public final class ClusterOutputPostProcessorDriver extends AbstractJob {
     FileSystem fileSystem = output.getFileSystem(conf);
     for (FileStatus fileStatus : fileSystem.listStatus(output, PathFilters.partFilter())) {
       SequenceFileIterator<Writable, Writable> it =
-              new SequenceFileIterator<Writable, Writable>(fileStatus.getPath(), true, conf);
+              new SequenceFileIterator<>(fileStatus.getPath(), true, conf);
       if (it.hasNext()) {
         renameFile(it.next().getFirst(), fileStatus, conf);
       }

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/common/ClassUtils.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/common/ClassUtils.java b/mrlegacy/src/main/java/org/apache/mahout/common/ClassUtils.java
index 18707d8..8052ef1 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/common/ClassUtils.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/common/ClassUtils.java
@@ -45,14 +45,8 @@ public final class ClassUtils {
                                     Object[] args) {
     try {
       return clazz.asSubclass(asSubclassOfClass).getConstructor(params).newInstance(args);
-    } catch (InstantiationException ie) {
+    } catch (InstantiationException | IllegalAccessException | NoSuchMethodException | InvocationTargetException ie) {
       throw new IllegalStateException(ie);
-    } catch (IllegalAccessException iae) {
-      throw new IllegalStateException(iae);
-    } catch (NoSuchMethodException nsme) {
-      throw new IllegalStateException(nsme);
-    } catch (InvocationTargetException ite) {
-      throw new IllegalStateException(ite);
     }
   }
 
@@ -60,14 +54,8 @@ public final class ClassUtils {
   public static <T> T instantiateAs(Class<? extends T> clazz, Class<T> asSubclassOfClass) {
     try {
       return clazz.asSubclass(asSubclassOfClass).getConstructor().newInstance();
-    } catch (InstantiationException ie) {
+    } catch (InstantiationException | IllegalAccessException | NoSuchMethodException | InvocationTargetException ie) {
       throw new IllegalStateException(ie);
-    } catch (IllegalAccessException iae) {
-      throw new IllegalStateException(iae);
-    } catch (NoSuchMethodException nsme) {
-      throw new IllegalStateException(nsme);
-    } catch (InvocationTargetException ite) {
-      throw new IllegalStateException(ite);
     }
   }
 }

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/common/HadoopUtil.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/common/HadoopUtil.java b/mrlegacy/src/main/java/org/apache/mahout/common/HadoopUtil.java
index dfbe760..54e213d 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/common/HadoopUtil.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/common/HadoopUtil.java
@@ -233,7 +233,7 @@ public final class HadoopUtil {
 
   public static InputStream openStream(Path path, Configuration conf) throws IOException {
     FileSystem fs = FileSystem.get(path.toUri(), conf);
-    return fs.open(path.makeQualified(fs));
+    return fs.open(path.makeQualified(path.toUri(), path));
   }
 
   public static FileStatus[] getFileStatus(Path path, PathType pathType, PathFilter filter,
@@ -355,7 +355,7 @@ public final class HadoopUtil {
     boolean containsFiles = false;
     List<String> directoriesList = Lists.newArrayList();
     for (FileStatus childFileStatus : fs.listStatus(fileStatus.getPath())) {
-      if (childFileStatus.isDir()) {
+      if (childFileStatus.isDirectory()) {
         String subDirectoryList = buildDirList(fs, childFileStatus);
         directoriesList.add(subDirectoryList);
       } else {
@@ -381,7 +381,7 @@ public final class HadoopUtil {
     boolean containsFiles = false;
     List<String> directoriesList = Lists.newArrayList();
     for (FileStatus childFileStatus : fs.listStatus(fileStatus.getPath(), pathFilter)) {
-      if (childFileStatus.isDir()) {
+      if (childFileStatus.isDirectory()) {
         String subDirectoryList = buildDirList(fs, childFileStatus);
         directoriesList.add(subDirectoryList);
       } else {

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/common/IOUtils.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/common/IOUtils.java b/mrlegacy/src/main/java/org/apache/mahout/common/IOUtils.java
index 25193d9..0372ed4 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/common/IOUtils.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/common/IOUtils.java
@@ -141,12 +141,8 @@ public final class IOUtils {
         throw (IOException) lastThr;
       } else if (lastThr instanceof RuntimeException) {
         throw (RuntimeException) lastThr;
-      } else if (lastThr instanceof Error) {
-        throw (Error) lastThr;
       } else {
-        // should not happen
-        throw (IOException) new IOException("Unexpected exception during close")
-            .initCause(lastThr);
+        throw (Error) lastThr;
       }
     }
 

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/common/Pair.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/common/Pair.java b/mrlegacy/src/main/java/org/apache/mahout/common/Pair.java
index 405ade0..d2ad6a1 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/common/Pair.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/common/Pair.java
@@ -39,11 +39,11 @@ public final class Pair<A,B> implements Comparable<Pair<A,B>>, Serializable {
   }
   
   public Pair<B, A> swap() {
-    return new Pair<B, A>(second, first);
+    return new Pair<>(second, first);
   }
 
   public static <A,B> Pair<A,B> of(A a, B b) {
-    return new Pair<A, B>(a, b);
+    return new Pair<>(a, b);
   }
   
   @Override

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/common/Parameters.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/common/Parameters.java b/mrlegacy/src/main/java/org/apache/mahout/common/Parameters.java
index 7954e50..e74c534 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/common/Parameters.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/common/Parameters.java
@@ -69,7 +69,7 @@ public class Parameters {
     conf.set("io.serializations",
              "org.apache.hadoop.io.serializer.JavaSerialization,"
              + "org.apache.hadoop.io.serializer.WritableSerialization");
-    DefaultStringifier<Map<String,String>> mapStringifier = new DefaultStringifier<Map<String,String>>(conf,
+    DefaultStringifier<Map<String,String>> mapStringifier = new DefaultStringifier<>(conf,
         GenericsUtil.getClass(params));
     try {
       return mapStringifier.toString(params);
@@ -90,7 +90,7 @@ public class Parameters {
              "org.apache.hadoop.io.serializer.JavaSerialization,"
              + "org.apache.hadoop.io.serializer.WritableSerialization");
     Map<String,String> params = Maps.newHashMap();
-    DefaultStringifier<Map<String,String>> mapStringifier = new DefaultStringifier<Map<String,String>>(conf,
+    DefaultStringifier<Map<String,String>> mapStringifier = new DefaultStringifier<>(conf,
         GenericsUtil.getClass(params));
     return mapStringifier.fromString(serializedString);
   }

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/common/iterator/CopyConstructorIterator.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/common/iterator/CopyConstructorIterator.java b/mrlegacy/src/main/java/org/apache/mahout/common/iterator/CopyConstructorIterator.java
index 3efb3bb..73cc821 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/common/iterator/CopyConstructorIterator.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/common/iterator/CopyConstructorIterator.java
@@ -49,11 +49,7 @@ public final class CopyConstructorIterator<T> extends ForwardingIterator<T> {
             }
             try {
               return constructor.newInstance(from);
-            } catch (InstantiationException e) {
-              throw new IllegalStateException(e);
-            } catch (IllegalAccessException e) {
-              throw new IllegalStateException(e);
-            } catch (InvocationTargetException e) {
+            } catch (InstantiationException | IllegalAccessException | InvocationTargetException e) {
               throw new IllegalStateException(e);
             }
           }

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/common/iterator/StableFixedSizeSamplingIterator.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/common/iterator/StableFixedSizeSamplingIterator.java b/mrlegacy/src/main/java/org/apache/mahout/common/iterator/StableFixedSizeSamplingIterator.java
index 1f1aef9..c4ddf7b 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/common/iterator/StableFixedSizeSamplingIterator.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/common/iterator/StableFixedSizeSamplingIterator.java
@@ -45,11 +45,11 @@ public class StableFixedSizeSamplingIterator<T> extends ForwardingIterator<T> {
       T v = source.next();
       sofar++;
       if (buf.size() < size) {
-        buf.add(new Pair<Integer,T>(sofar, v));
+        buf.add(new Pair<>(sofar, v));
       } else {
         int position = random.nextInt(sofar);
         if (position < buf.size()) {
-          buf.set(position, new Pair<Integer,T>(sofar, v));
+          buf.set(position, new Pair<>(sofar, v));
         }
       }
     }

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/common/iterator/StringRecordIterator.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/common/iterator/StringRecordIterator.java b/mrlegacy/src/main/java/org/apache/mahout/common/iterator/StringRecordIterator.java
index bc3757d..73b841e 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/common/iterator/StringRecordIterator.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/common/iterator/StringRecordIterator.java
@@ -42,7 +42,7 @@ public class StringRecordIterator extends ForwardingIterator<Pair<List<String>,L
           @Override
           public Pair<List<String>,Long> apply(String from) {
             String[] items = splitter.split(from);
-            return new Pair<List<String>,Long>(Arrays.asList(items), ONE);
+            return new Pair<>(Arrays.asList(items), ONE);
           }
         });
   }

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/common/iterator/sequencefile/SequenceFileDirIterable.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/common/iterator/sequencefile/SequenceFileDirIterable.java b/mrlegacy/src/main/java/org/apache/mahout/common/iterator/sequencefile/SequenceFileDirIterable.java
index 341672b..ca4d6b8 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/common/iterator/sequencefile/SequenceFileDirIterable.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/common/iterator/sequencefile/SequenceFileDirIterable.java
@@ -74,7 +74,7 @@ public final class SequenceFileDirIterable<K extends Writable,V extends Writable
   @Override
   public Iterator<Pair<K,V>> iterator() {
     try {
-      return new SequenceFileDirIterator<K, V>(path, pathType, filter, ordering, reuseKeyValueInstances, conf);
+      return new SequenceFileDirIterator<>(path, pathType, filter, ordering, reuseKeyValueInstances, conf);
     } catch (IOException ioe) {
       throw new IllegalStateException(path.toString(), ioe);
     }

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/common/iterator/sequencefile/SequenceFileDirIterator.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/common/iterator/sequencefile/SequenceFileDirIterator.java b/mrlegacy/src/main/java/org/apache/mahout/common/iterator/sequencefile/SequenceFileDirIterator.java
index baf1bd4..cf6a871 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/common/iterator/sequencefile/SequenceFileDirIterator.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/common/iterator/sequencefile/SequenceFileDirIterator.java
@@ -107,7 +107,7 @@ public final class SequenceFileDirIterator<K extends Writable,V extends Writable
           @Override
           public Iterator<Pair<K, V>> apply(FileStatus from) {
             try {
-              SequenceFileIterator<K, V> iterator = new SequenceFileIterator<K, V>(from.getPath(),
+              SequenceFileIterator<K, V> iterator = new SequenceFileIterator<>(from.getPath(),
                   reuseKeyValueInstances, conf);
               iterators.add(iterator);
               return iterator;

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/common/iterator/sequencefile/SequenceFileDirValueIterable.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/common/iterator/sequencefile/SequenceFileDirValueIterable.java b/mrlegacy/src/main/java/org/apache/mahout/common/iterator/sequencefile/SequenceFileDirValueIterable.java
index 5784837..1cb4ebc 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/common/iterator/sequencefile/SequenceFileDirValueIterable.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/common/iterator/sequencefile/SequenceFileDirValueIterable.java
@@ -73,7 +73,7 @@ public final class SequenceFileDirValueIterable<V extends Writable> implements I
   @Override
   public Iterator<V> iterator() {
     try {
-      return new SequenceFileDirValueIterator<V>(path, pathType, filter, ordering, reuseKeyValueInstances, conf);
+      return new SequenceFileDirValueIterator<>(path, pathType, filter, ordering, reuseKeyValueInstances, conf);
     } catch (IOException ioe) {
       throw new IllegalStateException(path.toString(), ioe);
     }

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/common/iterator/sequencefile/SequenceFileDirValueIterator.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/common/iterator/sequencefile/SequenceFileDirValueIterator.java b/mrlegacy/src/main/java/org/apache/mahout/common/iterator/sequencefile/SequenceFileDirValueIterator.java
index 8f65fda..908c8bb 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/common/iterator/sequencefile/SequenceFileDirValueIterator.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/common/iterator/sequencefile/SequenceFileDirValueIterator.java
@@ -121,7 +121,7 @@ public final class SequenceFileDirValueIterator<V extends Writable> extends
             @Override
             public Iterator<V> apply(FileStatus from) {
               try {
-                SequenceFileValueIterator<V> iterator = new SequenceFileValueIterator<V>(from.getPath(),
+                SequenceFileValueIterator<V> iterator = new SequenceFileValueIterator<>(from.getPath(),
                     reuseKeyValueInstances, conf);
                 iterators.add(iterator);
                 return iterator;

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/common/iterator/sequencefile/SequenceFileIterable.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/common/iterator/sequencefile/SequenceFileIterable.java b/mrlegacy/src/main/java/org/apache/mahout/common/iterator/sequencefile/SequenceFileIterable.java
index 710f6ac..f17c2a1 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/common/iterator/sequencefile/SequenceFileIterable.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/common/iterator/sequencefile/SequenceFileIterable.java
@@ -58,7 +58,7 @@ public final class SequenceFileIterable<K extends Writable,V extends Writable> i
   @Override
   public Iterator<Pair<K, V>> iterator() {
     try {
-      return new SequenceFileIterator<K, V>(path, reuseKeyValueInstances, conf);
+      return new SequenceFileIterator<>(path, reuseKeyValueInstances, conf);
     } catch (IOException ioe) {
       throw new IllegalStateException(path.toString(), ioe);
     }

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/common/iterator/sequencefile/SequenceFileIterator.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/common/iterator/sequencefile/SequenceFileIterator.java b/mrlegacy/src/main/java/org/apache/mahout/common/iterator/sequencefile/SequenceFileIterator.java
index 5c29701..bc5c549 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/common/iterator/sequencefile/SequenceFileIterator.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/common/iterator/sequencefile/SequenceFileIterator.java
@@ -104,7 +104,7 @@ public final class SequenceFileIterator<K extends Writable,V extends Writable>
         close();
         return null;
       }
-      return new Pair<K,V>(key, value);
+      return new Pair<>(key, value);
     } catch (IOException ioe) {
       try {
         close();

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/common/iterator/sequencefile/SequenceFileValueIterable.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/common/iterator/sequencefile/SequenceFileValueIterable.java b/mrlegacy/src/main/java/org/apache/mahout/common/iterator/sequencefile/SequenceFileValueIterable.java
index 964bedd..d2fdf8d 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/common/iterator/sequencefile/SequenceFileValueIterable.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/common/iterator/sequencefile/SequenceFileValueIterable.java
@@ -57,7 +57,7 @@ public final class SequenceFileValueIterable<V extends Writable> implements Iter
   @Override
   public Iterator<V> iterator() {
     try {
-      return new SequenceFileValueIterator<V>(path, reuseKeyValueInstances, conf);
+      return new SequenceFileValueIterator<>(path, reuseKeyValueInstances, conf);
     } catch (IOException ioe) {
       throw new IllegalStateException(path.toString(), ioe);
     }

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/common/iterator/sequencefile/SequenceFileValueIterator.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/common/iterator/sequencefile/SequenceFileValueIterator.java b/mrlegacy/src/main/java/org/apache/mahout/common/iterator/sequencefile/SequenceFileValueIterator.java
index 5483982..49d64c7 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/common/iterator/sequencefile/SequenceFileValueIterator.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/common/iterator/sequencefile/SequenceFileValueIterator.java
@@ -52,7 +52,7 @@ public final class SequenceFileValueIterator<V extends Writable> extends Abstrac
   public SequenceFileValueIterator(Path path, boolean reuseKeyValueInstances, Configuration conf) throws IOException {
     value = null;
     FileSystem fs = path.getFileSystem(conf);
-    path = path.makeQualified(fs);
+    path = path.makeQualified(path.toUri(), path);
     reader = new SequenceFile.Reader(fs, path, conf);
     this.conf = conf;
     Class<? extends Writable> keyClass = (Class<? extends Writable>) reader.getKeyClass();

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/driver/MahoutDriver.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/driver/MahoutDriver.java b/mrlegacy/src/main/java/org/apache/mahout/driver/MahoutDriver.java
index 63bc3a0..1fd5506 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/driver/MahoutDriver.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/driver/MahoutDriver.java
@@ -236,8 +236,6 @@ public final class MahoutDriver {
     try {
       Class<?> clazz = Class.forName(classString);
       driver.addClass(shortName(descString), clazz, desc(descString));
-    } catch (ClassNotFoundException e) {
-      log.warn("Unable to add class: {}", classString, e);
     } catch (Throwable t) {
       log.warn("Unable to add class: {}", classString, t);
     }

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/ep/State.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/ep/State.java b/mrlegacy/src/main/java/org/apache/mahout/ep/State.java
index c3dd14a..7a0fb5e 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/ep/State.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/ep/State.java
@@ -85,7 +85,7 @@ public class State<T extends Payload<U>, U> implements Comparable<State<T, U>>,
    * Deep copies a state, useful in mutation.
    */
   public State<T, U> copy() {
-    State<T, U> r = new State<T, U>();
+    State<T, U> r = new State<>();
     r.params = Arrays.copyOf(this.params, this.params.length);
     r.omni = this.omni;
     r.step = Arrays.copyOf(this.step, this.step.length);

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/math/MatrixUtils.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/math/MatrixUtils.java b/mrlegacy/src/main/java/org/apache/mahout/math/MatrixUtils.java
index 28a882f..f9ca52e 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/math/MatrixUtils.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/math/MatrixUtils.java
@@ -88,7 +88,7 @@ public final class MatrixUtils {
   }
 
   public static OpenObjectIntHashMap<String> readDictionary(Configuration conf, Path... dictPath) {
-    OpenObjectIntHashMap<String> dictionary = new OpenObjectIntHashMap<String>();
+    OpenObjectIntHashMap<String> dictionary = new OpenObjectIntHashMap<>();
     for (Path dictionaryFile : dictPath) {
       for (Pair<Writable, IntWritable> record
               : new SequenceFileIterable<Writable, IntWritable>(dictionaryFile, true, conf)) {

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/DistributedRowMatrix.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/DistributedRowMatrix.java b/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/DistributedRowMatrix.java
index 1a6ff16..1faf661 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/DistributedRowMatrix.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/DistributedRowMatrix.java
@@ -136,7 +136,7 @@ public class DistributedRowMatrix implements VectorIterable, Configurable {
   public Iterator<MatrixSlice> iterateAll() {
     try {
       Path pathPattern = rowPath;
-      if (FileSystem.get(conf).getFileStatus(rowPath).isDir()) {
+      if (FileSystem.get(conf).getFileStatus(rowPath).isDirectory()) {
         pathPattern = new Path(rowPath, "*");
       }
       return Iterators.transform(

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/MatrixColumnMeansJob.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/MatrixColumnMeansJob.java b/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/MatrixColumnMeansJob.java
index 7385a86..b4f459a 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/MatrixColumnMeansJob.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/MatrixColumnMeansJob.java
@@ -107,7 +107,7 @@ public final class MatrixColumnMeansJob {
 
       Path tmpFile = new Path(outputVectorTmpPath, "part-r-00000");
       SequenceFileValueIterator<VectorWritable> iterator =
-        new SequenceFileValueIterator<VectorWritable>(tmpFile, true, initialConf);
+        new SequenceFileValueIterator<>(tmpFile, true, initialConf);
       try {
         if (iterator.hasNext()) {
           return iterator.next().get();

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/TimesSquaredJob.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/TimesSquaredJob.java b/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/TimesSquaredJob.java
index 1433bd6..e234eb9 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/TimesSquaredJob.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/TimesSquaredJob.java
@@ -143,7 +143,7 @@ public final class TimesSquaredJob {
     throws IOException {
     Path outputFile = new Path(outputVectorTmpPath, OUTPUT_VECTOR_FILENAME + "/part-r-00000");
     SequenceFileValueIterator<VectorWritable> iterator =
-        new SequenceFileValueIterator<VectorWritable>(outputFile, true, conf);
+        new SequenceFileValueIterator<>(outputFile, true, conf);
     try {
       return iterator.next().get();
     } finally {
@@ -172,7 +172,7 @@ public final class TimesSquaredJob {
         Path inputVectorPath = HadoopUtil.getSingleCachedFile(conf);
 
         SequenceFileValueIterator<VectorWritable> iterator =
-            new SequenceFileValueIterator<VectorWritable>(inputVectorPath, true, conf);
+            new SequenceFileValueIterator<>(inputVectorPath, true, conf);
         try {
           inputVector = iterator.next().get();
         } finally {

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/similarity/SeedVectorUtil.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/similarity/SeedVectorUtil.java b/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/similarity/SeedVectorUtil.java
index 64f6cd5..9119f69 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/similarity/SeedVectorUtil.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/similarity/SeedVectorUtil.java
@@ -52,7 +52,7 @@ final class SeedVectorUtil {
     List<NamedVector> seedVectors = Lists.newArrayList();
     long item = 0;
     for (Writable value
-        : new SequenceFileDirValueIterable<Writable>(new Path(seedPathStr),
+        : new SequenceFileDirValueIterable<>(new Path(seedPathStr),
                                                     PathType.LIST,
                                                     PathFilters.partFilter(),
                                                     conf)) {

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/similarity/cooccurrence/Vectors.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/similarity/cooccurrence/Vectors.java b/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/similarity/cooccurrence/Vectors.java
index 5feef71..66fb0ae 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/similarity/cooccurrence/Vectors.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/similarity/cooccurrence/Vectors.java
@@ -47,7 +47,7 @@ public final class Vectors {
     }
     Vector sample = new RandomAccessSparseVector(original.size(), sampleSize);
     Iterator<Element> sampledElements =
-        new FixedSizeSamplingIterator<Vector.Element>(sampleSize, original.nonZeroes().iterator());
+        new FixedSizeSamplingIterator<>(sampleSize, original.nonZeroes().iterator());
     while (sampledElements.hasNext()) {
       Element elem = sampledElements.next();
       sample.setQuick(elem.index(), elem.get());

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/solver/DistributedConjugateGradientSolver.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/solver/DistributedConjugateGradientSolver.java b/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/solver/DistributedConjugateGradientSolver.java
index d6ebf16..dd38971 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/solver/DistributedConjugateGradientSolver.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/solver/DistributedConjugateGradientSolver.java
@@ -112,26 +112,20 @@ public class DistributedConjugateGradientSolver extends ConjugateGradientSolver
   
   private Vector loadInputVector(Path path) throws IOException {
     FileSystem fs = path.getFileSystem(conf);
-    SequenceFile.Reader reader = new SequenceFile.Reader(fs, path, conf);
-    try {
+    try (SequenceFile.Reader reader = new SequenceFile.Reader(fs, path, conf)) {
       VectorWritable value = new VectorWritable();
       if (!reader.next(new IntWritable(), value)) {
-        throw new IOException("Input vector file is empty.");      
+        throw new IOException("Input vector file is empty.");
       }
       return value.get();
-    } finally {
-      reader.close();
     }
   }
   
   private void saveOutputVector(Path path, Vector v) throws IOException {
     FileSystem fs = path.getFileSystem(conf);
-    SequenceFile.Writer writer = new SequenceFile.Writer(fs, conf, path, IntWritable.class, VectorWritable.class);
-    
-    try {
+    try (SequenceFile.Writer writer =
+             new SequenceFile.Writer(fs, conf, path, IntWritable.class, VectorWritable.class)) {
       writer.append(new IntWritable(0), new VectorWritable(v));
-    } finally {
-      writer.close();
     }
   }
   

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/stats/BasicStats.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/stats/BasicStats.java b/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/stats/BasicStats.java
index 70b5b62..ad0baf3 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/stats/BasicStats.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/stats/BasicStats.java
@@ -94,7 +94,7 @@ public final class BasicStats {
     double sumOfSquares = 0;
     double sum = 0;
     double totalCount = 0;
-    for (Pair<Writable, Writable> record : new SequenceFileDirIterable<Writable, Writable>(
+    for (Pair<Writable, Writable> record : new SequenceFileDirIterable<>(
             filesPattern, PathType.GLOB, null, null, true, conf)) {
 
       int key = ((IntWritable) record.getFirst()).get();

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/stochasticsvd/ABtDenseOutJob.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/stochasticsvd/ABtDenseOutJob.java b/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/stochasticsvd/ABtDenseOutJob.java
index 0280c9d..359b281 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/stochasticsvd/ABtDenseOutJob.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/stochasticsvd/ABtDenseOutJob.java
@@ -94,7 +94,7 @@ public final class ABtDenseOutJob {
       Mapper<Writable, VectorWritable, SplitPartitionedWritable, DenseBlockWritable> {
 
     private SplitPartitionedWritable outKey;
-    private final Deque<Closeable> closeables = new ArrayDeque<Closeable>();
+    private final Deque<Closeable> closeables = new ArrayDeque<>();
     private SequenceFileDirIterator<IntWritable, VectorWritable> btInput;
     private Vector[] aCols;
     private double[][] yiCols;
@@ -190,19 +190,12 @@ public final class ABtDenseOutJob {
           if (distributedBt) {
 
             btInput =
-              new SequenceFileDirIterator<IntWritable, VectorWritable>(btLocalPath,
-                                                                       true,
-                                                                       localFsConfig);
+              new SequenceFileDirIterator<>(btLocalPath, true, localFsConfig);
 
           } else {
 
             btInput =
-              new SequenceFileDirIterator<IntWritable, VectorWritable>(btPath,
-                                                                       PathType.GLOB,
-                                                                       null,
-                                                                       null,
-                                                                       true,
-                                                                       context.getConfiguration());
+              new SequenceFileDirIterator<>(btPath, PathType.GLOB, null, null, true, context.getConfiguration());
           }
           closeables.addFirst(btInput);
           Validate.isTrue(btInput.hasNext(), "Empty B' input!");
@@ -368,7 +361,6 @@ public final class ABtDenseOutJob {
 
     protected int blockHeight;
 
-    protected int accumSize;
     protected int lastTaskId = -1;
 
     protected OutputCollector<Writable, DenseBlockWritable> qhatCollector;

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/stochasticsvd/ABtJob.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/stochasticsvd/ABtJob.java b/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/stochasticsvd/ABtJob.java
index 61d9caa..afa1463 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/stochasticsvd/ABtJob.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/stochasticsvd/ABtJob.java
@@ -90,7 +90,7 @@ public final class ABtJob {
       Mapper<Writable, VectorWritable, SplitPartitionedWritable, SparseRowBlockWritable> {
 
     private SplitPartitionedWritable outKey;
-    private final Deque<Closeable> closeables = new ArrayDeque<Closeable>();
+    private final Deque<Closeable> closeables = new ArrayDeque<>();
     private SequenceFileDirIterator<IntWritable, VectorWritable> btInput;
     private Vector[] aCols;
     // private Vector[] yiRows;
@@ -226,7 +226,7 @@ public final class ABtJob {
         }
 
         btInput =
-          new SequenceFileDirIterator<IntWritable, VectorWritable>(new Path(btLocalPath.toString()),
+          new SequenceFileDirIterator<>(new Path(btLocalPath.toString()),
                                                                    PathType.LIST,
                                                                    null,
                                                                    null,
@@ -236,12 +236,7 @@ public final class ABtJob {
       } else {
 
         btInput =
-          new SequenceFileDirIterator<IntWritable, VectorWritable>(btPath,
-                                                                   PathType.GLOB,
-                                                                   null,
-                                                                   null,
-                                                                   true,
-                                                                   context.getConfiguration());
+          new SequenceFileDirIterator<>(btPath, PathType.GLOB, null, null, true, context.getConfiguration());
       }
       // TODO: how do i release all that stuff??
       closeables.addFirst(btInput);
@@ -298,7 +293,6 @@ public final class ABtJob {
 
     protected int blockHeight;
 
-    protected int accumSize;
     protected int lastTaskId = -1;
 
     protected OutputCollector<Writable, DenseBlockWritable> qhatCollector;

http://git-wip-us.apache.org/repos/asf/mahout/blob/87c15bea/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/stochasticsvd/BtJob.java
----------------------------------------------------------------------
diff --git a/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/stochasticsvd/BtJob.java b/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/stochasticsvd/BtJob.java
index 3a126ec..1277bae 100644
--- a/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/stochasticsvd/BtJob.java
+++ b/mrlegacy/src/main/java/org/apache/mahout/math/hadoop/stochasticsvd/BtJob.java
@@ -95,8 +95,6 @@ public final class BtJob {
   public static final String PROP_XI_PATH = "ssvdpca.xi.path";
   public static final String PROP_NV = "ssvd.nv";
 
-  static final double SPARSE_ZEROS_PCT_THRESHOLD = 0.1;
-
   private BtJob() {
   }
 
@@ -104,7 +102,7 @@ public final class BtJob {
     Mapper<Writable, VectorWritable, LongWritable, SparseRowBlockWritable> {
 
     private QRLastStep qr;
-    private final Deque<Closeable> closeables = new ArrayDeque<Closeable>();
+    private final Deque<Closeable> closeables = new ArrayDeque<>();
 
     private int blockNum;
     private MultipleOutputs outputs;
@@ -190,7 +188,7 @@ public final class BtJob {
       blockNum = context.getTaskAttemptID().getTaskID().getId();
 
       SequenceFileValueIterator<DenseBlockWritable> qhatInput =
-        new SequenceFileValueIterator<DenseBlockWritable>(qInputPath,
+        new SequenceFileValueIterator<>(qInputPath,
                                                           true,
                                                           conf);
       closeables.addFirst(qhatInput);
@@ -217,7 +215,7 @@ public final class BtJob {
         lconf.set("fs.default.name", "file:///");
 
         rhatInput =
-          new SequenceFileDirValueIterator<VectorWritable>(rFiles,
+          new SequenceFileDirValueIterator<>(rFiles,
                                                            SSVDHelper.PARTITION_COMPARATOR,
                                                            true,
                                                            lconf);
@@ -225,7 +223,7 @@ public final class BtJob {
       } else {
         Path rPath = new Path(qJobPath, QJob.OUTPUT_RHAT + "-*");
         rhatInput =
-          new SequenceFileDirValueIterator<VectorWritable>(rPath,
+          new SequenceFileDirValueIterator<>(rPath,
                                                            PathType.GLOB,
                                                            null,
                                                            SSVDHelper.PARTITION_COMPARATOR,
@@ -312,7 +310,7 @@ public final class BtJob {
     Reducer<Writable, SparseRowBlockWritable, Writable, SparseRowBlockWritable> {
 
     protected final SparseRowBlockWritable accum = new SparseRowBlockWritable();
-    protected final Deque<Closeable> closeables = new ArrayDeque<Closeable>();
+    protected final Deque<Closeable> closeables = new ArrayDeque<>();
     protected int blockHeight;
 
     @Override
@@ -347,7 +345,7 @@ public final class BtJob {
     Reducer<LongWritable, SparseRowBlockWritable, IntWritable, VectorWritable> {
 
     protected final SparseRowBlockWritable accum = new SparseRowBlockWritable();
-    protected final Deque<Closeable> closeables = new ArrayDeque<Closeable>();
+    protected final Deque<Closeable> closeables = new ArrayDeque<>();
 
     protected int blockHeight;
     private boolean outputBBt;