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/04/06 04:22:15 UTC
[3/5] mahout git commit: MAHOUT-1652: Java 7 upgrade,
this closes apache/mahout#112
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/integration/src/test/java/org/apache/mahout/text/TestSequenceFilesFromDirectory.java
----------------------------------------------------------------------
diff --git a/integration/src/test/java/org/apache/mahout/text/TestSequenceFilesFromDirectory.java b/integration/src/test/java/org/apache/mahout/text/TestSequenceFilesFromDirectory.java
index aec5e39..040c8e4 100644
--- a/integration/src/test/java/org/apache/mahout/text/TestSequenceFilesFromDirectory.java
+++ b/integration/src/test/java/org/apache/mahout/text/TestSequenceFilesFromDirectory.java
@@ -20,12 +20,10 @@ package org.apache.mahout.text;
import java.io.File;
import java.io.IOException;
import java.io.OutputStreamWriter;
+import java.util.HashMap;
import java.util.Map;
-import com.google.common.base.Charsets;
-import com.google.common.collect.Maps;
-import com.google.common.io.Closeables;
-
+import org.apache.commons.io.Charsets;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileStatus;
import org.apache.hadoop.fs.FileSystem;
@@ -162,13 +160,10 @@ public final class TestSequenceFilesFromDirectory extends MahoutTestCase {
private static void createFilesFromArrays(Configuration conf, Path inputDir, String[][] data) throws IOException {
FileSystem fs = FileSystem.get(conf);
- OutputStreamWriter writer;
for (String[] aData : data) {
- writer = new OutputStreamWriter(fs.create(new Path(inputDir, aData[0])), Charsets.UTF_8);
- try {
+ try (OutputStreamWriter writer =
+ new OutputStreamWriter(fs.create(new Path(inputDir, aData[0])), Charsets.UTF_8)){
writer.write(aData[1]);
- } finally {
- Closeables.close(writer, false);
}
}
}
@@ -182,21 +177,15 @@ public final class TestSequenceFilesFromDirectory extends MahoutTestCase {
String currentRecursiveDir = inputDir.toString();
for (String[] aData : data) {
- OutputStreamWriter writer;
-
currentRecursiveDir += "/" + aData[0];
File subDir = new File(currentRecursiveDir);
subDir.mkdir();
curPath = new Path(subDir.toString(), "file.txt");
- writer = new OutputStreamWriter(fs.create(curPath), Charsets.UTF_8);
-
logger.info("Created file: {}", curPath.toString());
- try {
+ try (OutputStreamWriter writer = new OutputStreamWriter(fs.create(curPath), Charsets.UTF_8)){
writer.write(aData[1]);
- } finally {
- Closeables.close(writer, false);
}
}
}
@@ -212,23 +201,20 @@ public final class TestSequenceFilesFromDirectory extends MahoutTestCase {
assertEquals(1, fileStatuses.length); // only one
assertEquals("chunk-0", fileStatuses[0].getPath().getName());
- Map<String, String> fileToData = Maps.newHashMap();
+ Map<String, String> fileToData = new HashMap<>();
for (String[] aData : data) {
fileToData.put(prefix + Path.SEPARATOR + aData[0], aData[1]);
}
// read a chunk to check content
- SequenceFileIterator<Text, Text> iterator =
- new SequenceFileIterator<>(fileStatuses[0].getPath(), true, configuration);
- try {
+ try (SequenceFileIterator<Text, Text> iterator =
+ new SequenceFileIterator<>(fileStatuses[0].getPath(), true, configuration)){
while (iterator.hasNext()) {
Pair<Text, Text> record = iterator.next();
String retrievedData = fileToData.get(record.getFirst().toString().trim());
assertNotNull(retrievedData);
assertEquals(retrievedData, record.getSecond().toString().trim());
}
- } finally {
- Closeables.close(iterator, true);
}
}
@@ -246,7 +232,7 @@ public final class TestSequenceFilesFromDirectory extends MahoutTestCase {
assertEquals("chunk-0", fileStatuses[0].getPath().getName());
- Map<String, String> fileToData = Maps.newHashMap();
+ Map<String, String> fileToData = new HashMap<>();
String currentPath = prefix;
for (String[] aData : data) {
currentPath += Path.SEPARATOR + aData[0];
@@ -254,9 +240,8 @@ public final class TestSequenceFilesFromDirectory extends MahoutTestCase {
}
// read a chunk to check content
- SequenceFileIterator<Text, Text> iterator =
- new SequenceFileIterator<>(fileStatuses[0].getPath(), true, configuration);
- try {
+ try (SequenceFileIterator<Text, Text> iterator =
+ new SequenceFileIterator<>(fileStatuses[0].getPath(), true, configuration)) {
while (iterator.hasNext()) {
Pair<Text, Text> record = iterator.next();
String retrievedData = fileToData.get(record.getFirst().toString().trim());
@@ -266,8 +251,6 @@ public final class TestSequenceFilesFromDirectory extends MahoutTestCase {
assertEquals(retrievedData, record.getSecond().toString().trim());
System.out.printf(">>> k: %s, v: %s\n", record.getFirst().toString(), record.getSecond().toString());
}
- } finally {
- Closeables.close(iterator, true);
}
}
@@ -279,16 +262,15 @@ public final class TestSequenceFilesFromDirectory extends MahoutTestCase {
FileStatus[] fileStatuses = fs.listStatus(outputDir.suffix("/part-m-00000"), PathFilters.logsCRCFilter());
assertEquals(1, fileStatuses.length); // only one
assertEquals("part-m-00000", fileStatuses[0].getPath().getName());
- Map<String, String> fileToData = Maps.newHashMap();
+ Map<String, String> fileToData = new HashMap<>();
for (String[] aData : data) {
System.out.printf("map.put: %s %s\n", prefix + Path.SEPARATOR + aData[0], aData[1]);
fileToData.put(prefix + Path.SEPARATOR + aData[0], aData[1]);
}
// read a chunk to check content
- SequenceFileIterator<Text, Text> iterator = new SequenceFileIterator<>(
- fileStatuses[0].getPath(), true, conf);
- try {
+ try (SequenceFileIterator<Text, Text> iterator = new SequenceFileIterator<>(
+ fileStatuses[0].getPath(), true, conf)) {
while (iterator.hasNext()) {
Pair<Text, Text> record = iterator.next();
String retrievedData = fileToData.get(record.getFirst().toString().trim());
@@ -297,8 +279,6 @@ public final class TestSequenceFilesFromDirectory extends MahoutTestCase {
assertNotNull(retrievedData);
assertEquals(retrievedData, record.getSecond().toString().trim());
}
- } finally {
- Closeables.close(iterator, true);
}
}
@@ -310,7 +290,7 @@ public final class TestSequenceFilesFromDirectory extends MahoutTestCase {
FileStatus[] fileStatuses = fs.listStatus(outputDir.suffix("/part-m-00000"), PathFilters.logsCRCFilter());
assertEquals(1, fileStatuses.length); // only one
assertEquals("part-m-00000", fileStatuses[0].getPath().getName());
- Map<String, String> fileToData = Maps.newHashMap();
+ Map<String, String> fileToData = new HashMap<>();
String currentPath = prefix;
for (String[] aData : data) {
@@ -319,9 +299,8 @@ public final class TestSequenceFilesFromDirectory extends MahoutTestCase {
}
// read a chunk to check content
- SequenceFileIterator<Text, Text> iterator = new SequenceFileIterator<>(
- fileStatuses[0].getPath(), true, configuration);
- try {
+ try (SequenceFileIterator<Text, Text> iterator = new SequenceFileIterator<>(
+ fileStatuses[0].getPath(), true, configuration)){
while (iterator.hasNext()) {
Pair<Text, Text> record = iterator.next();
System.out.printf("MR-Recur > Trying to check: %s\n", record.getFirst().toString().trim());
@@ -329,9 +308,6 @@ public final class TestSequenceFilesFromDirectory extends MahoutTestCase {
assertNotNull(retrievedData);
assertEquals(retrievedData, record.getSecond().toString().trim());
}
- } finally {
- Closeables.close(iterator, true);
}
}
}
-
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/integration/src/test/java/org/apache/mahout/text/doc/NumericFieldDocument.java
----------------------------------------------------------------------
diff --git a/integration/src/test/java/org/apache/mahout/text/doc/NumericFieldDocument.java b/integration/src/test/java/org/apache/mahout/text/doc/NumericFieldDocument.java
index 5a4f9fa..55d6e0f 100644
--- a/integration/src/test/java/org/apache/mahout/text/doc/NumericFieldDocument.java
+++ b/integration/src/test/java/org/apache/mahout/text/doc/NumericFieldDocument.java
@@ -22,7 +22,6 @@ import org.apache.lucene.document.IntField;
import org.apache.lucene.document.StringField;
import org.apache.lucene.document.TextField;
-
/**
* Document with numeric field.
*/
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/integration/src/test/java/org/apache/mahout/utils/SplitInputTest.java
----------------------------------------------------------------------
diff --git a/integration/src/test/java/org/apache/mahout/utils/SplitInputTest.java b/integration/src/test/java/org/apache/mahout/utils/SplitInputTest.java
index 72d60ec..7ffa690 100644
--- a/integration/src/test/java/org/apache/mahout/utils/SplitInputTest.java
+++ b/integration/src/test/java/org/apache/mahout/utils/SplitInputTest.java
@@ -23,17 +23,14 @@ import java.io.OutputStreamWriter;
import java.io.Writer;
import java.nio.charset.Charset;
-import com.google.common.base.Charsets;
import com.google.common.io.Closeables;
-
+import org.apache.commons.io.Charsets;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
-import org.apache.hadoop.io.IOUtils;
import org.apache.hadoop.io.IntWritable;
import org.apache.hadoop.io.SequenceFile;
import org.apache.hadoop.io.Text;
-import org.apache.hadoop.io.Writable;
import org.apache.hadoop.util.ToolRunner;
import org.apache.mahout.classifier.ClassifierData;
import org.apache.mahout.common.MahoutTestCase;
@@ -68,7 +65,7 @@ public final class SplitInputTest extends MahoutTestCase {
super.setUp();
- countMap = new OpenObjectIntHashMap<String>();
+ countMap = new OpenObjectIntHashMap<>();
charset = Charsets.UTF_8;
tempSequenceDirectory = getTestTempFilePath("tmpsequence");
@@ -192,15 +189,13 @@ public final class SplitInputTest extends MahoutTestCase {
* @param path path for test SequenceFile
* @param testPoints number of records in test SequenceFile
*/
- private void writeVectorSequenceFile(Path path, int testPoints)
- throws IOException {
+ private void writeVectorSequenceFile(Path path, int testPoints) throws IOException {
Path tempSequenceFile = new Path(path, "part-00000");
Configuration conf = getConfiguration();
IntWritable key = new IntWritable();
VectorWritable value = new VectorWritable();
- SequenceFile.Writer writer = null;
- try {
- writer = SequenceFile.createWriter(fs, conf, tempSequenceFile, IntWritable.class, VectorWritable.class);
+ try (SequenceFile.Writer writer =
+ SequenceFile.createWriter(fs, conf, tempSequenceFile, IntWritable.class, VectorWritable.class)) {
for (int i = 0; i < testPoints; i++) {
key.set(i);
Vector v = new SequentialAccessSparseVector(4);
@@ -208,8 +203,6 @@ public final class SplitInputTest extends MahoutTestCase {
value.set(v);
writer.append(key, value);
}
- } finally {
- IOUtils.closeStream(writer);
}
}
@@ -223,18 +216,12 @@ public final class SplitInputTest extends MahoutTestCase {
Configuration conf = getConfiguration();
Text key = new Text();
Text value = new Text();
- SequenceFile.Writer writer = null;
- try {
- writer =
- SequenceFile.createWriter(fs, conf, tempSequenceFile,
- Text.class, Text.class);
+ try (SequenceFile.Writer writer = SequenceFile.createWriter(fs, conf, tempSequenceFile, Text.class, Text.class)){
for (int i = 0; i < testPoints; i++) {
key.set(Integer.toString(i));
value.set("Line " + i);
writer.append(key, value);
}
- } finally {
- IOUtils.closeStream(writer);
}
}
@@ -243,7 +230,7 @@ public final class SplitInputTest extends MahoutTestCase {
* @param sequenceFilePath path to SequenceFile
*/
private void displaySequenceFile(Path sequenceFilePath) throws IOException {
- for (Pair<?,?> record : new SequenceFileIterable<Writable,Writable>(sequenceFilePath, true, getConfiguration())) {
+ for (Pair<?,?> record : new SequenceFileIterable<>(sequenceFilePath, true, getConfiguration())) {
System.out.println(record.getFirst() + "\t" + record.getSecond());
}
}
@@ -255,7 +242,7 @@ public final class SplitInputTest extends MahoutTestCase {
*/
private int getNumberRecords(Path sequenceFilePath) throws IOException {
int numberRecords = 0;
- for (Object value : new SequenceFileValueIterable<Writable>(sequenceFilePath, true, getConfiguration())) {
+ for (Object value : new SequenceFileValueIterable<>(sequenceFilePath, true, getConfiguration())) {
numberRecords++;
}
return numberRecords;
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/integration/src/test/java/org/apache/mahout/utils/TestConcatenateVectorsJob.java
----------------------------------------------------------------------
diff --git a/integration/src/test/java/org/apache/mahout/utils/TestConcatenateVectorsJob.java b/integration/src/test/java/org/apache/mahout/utils/TestConcatenateVectorsJob.java
index 329b590..98f5ca8 100644
--- a/integration/src/test/java/org/apache/mahout/utils/TestConcatenateVectorsJob.java
+++ b/integration/src/test/java/org/apache/mahout/utils/TestConcatenateVectorsJob.java
@@ -17,9 +17,9 @@
package org.apache.mahout.utils;
+import java.util.ArrayList;
import java.util.List;
-import com.google.common.collect.Lists;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.io.IntWritable;
import org.apache.hadoop.mapreduce.Reducer;
@@ -66,7 +66,7 @@ public class TestConcatenateVectorsJob extends MahoutTestCase {
for(int i = 0; i < 3; i++) {
double[] values = DATA_A[i];
- List<VectorWritable> vwList = Lists.newArrayList();
+ List<VectorWritable> vwList = new ArrayList<>();
if (values.length > 0) {
Vector v = new DenseVector(values);
VectorWritable vw = new VectorWritable();
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/integration/src/test/java/org/apache/mahout/utils/email/MailProcessorTest.java
----------------------------------------------------------------------
diff --git a/integration/src/test/java/org/apache/mahout/utils/email/MailProcessorTest.java b/integration/src/test/java/org/apache/mahout/utils/email/MailProcessorTest.java
index 77307bb..c519f85 100644
--- a/integration/src/test/java/org/apache/mahout/utils/email/MailProcessorTest.java
+++ b/integration/src/test/java/org/apache/mahout/utils/email/MailProcessorTest.java
@@ -17,15 +17,15 @@
package org.apache.mahout.utils.email;
-import com.google.common.base.Charsets;
-import org.apache.mahout.common.MahoutTestCase;
-import org.junit.Test;
-
import java.io.File;
import java.io.StringWriter;
import java.net.URL;
import java.util.regex.Pattern;
+import org.apache.commons.io.Charsets;
+import org.apache.mahout.common.MahoutTestCase;
+import org.junit.Test;
+
public final class MailProcessorTest extends MahoutTestCase {
@Test
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/integration/src/test/java/org/apache/mahout/utils/nlp/collocations/llr/BloomTokenFilterTest.java
----------------------------------------------------------------------
diff --git a/integration/src/test/java/org/apache/mahout/utils/nlp/collocations/llr/BloomTokenFilterTest.java b/integration/src/test/java/org/apache/mahout/utils/nlp/collocations/llr/BloomTokenFilterTest.java
index 9df4930..37efc01 100644
--- a/integration/src/test/java/org/apache/mahout/utils/nlp/collocations/llr/BloomTokenFilterTest.java
+++ b/integration/src/test/java/org/apache/mahout/utils/nlp/collocations/llr/BloomTokenFilterTest.java
@@ -26,8 +26,7 @@ import java.nio.ByteBuffer;
import java.nio.CharBuffer;
import java.nio.charset.CharsetEncoder;
-import com.google.common.base.Charsets;
-
+import org.apache.commons.io.Charsets;
import org.apache.hadoop.util.bloom.BloomFilter;
import org.apache.hadoop.util.bloom.Filter;
import org.apache.hadoop.util.bloom.Key;
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/integration/src/test/java/org/apache/mahout/utils/regex/RegexMapperTest.java
----------------------------------------------------------------------
diff --git a/integration/src/test/java/org/apache/mahout/utils/regex/RegexMapperTest.java b/integration/src/test/java/org/apache/mahout/utils/regex/RegexMapperTest.java
index 728a78c..d569acf 100644
--- a/integration/src/test/java/org/apache/mahout/utils/regex/RegexMapperTest.java
+++ b/integration/src/test/java/org/apache/mahout/utils/regex/RegexMapperTest.java
@@ -60,7 +60,7 @@ public final class RegexMapperTest extends MahoutTestCase {
conf.set(RegexMapper.REGEX, "(\\d+)\\.(\\d+)\\.(\\d+)");
conf.set(RegexMapper.TRANSFORMER_CLASS, URLDecodeTransformer.class.getName());
conf.setStrings(RegexMapper.GROUP_MATCHERS, "1", "3");
- DummyRecordWriter<LongWritable, Text> mapWriter = new DummyRecordWriter<LongWritable, Text>();
+ DummyRecordWriter<LongWritable, Text> mapWriter = new DummyRecordWriter<>();
Mapper<LongWritable, Text, LongWritable, Text>.Context mapContext = DummyRecordWriter
.build(mapper, conf, mapWriter);
@@ -83,7 +83,7 @@ public final class RegexMapperTest extends MahoutTestCase {
conf.set(RegexMapper.REGEX, "(?<=(\\?|&)q=).*?(?=&|$)");
conf.set(RegexMapper.TRANSFORMER_CLASS, URLDecodeTransformer.class.getName());
conf.set(RegexMapper.FORMATTER_CLASS, FPGFormatter.class.getName());
- DummyRecordWriter<LongWritable, Text> mapWriter = new DummyRecordWriter<LongWritable, Text>();
+ DummyRecordWriter<LongWritable, Text> mapWriter = new DummyRecordWriter<>();
Mapper<LongWritable, Text, LongWritable, Text>.Context mapContext = DummyRecordWriter
.build(mapper, conf, mapWriter);
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/integration/src/test/java/org/apache/mahout/utils/regex/RegexUtilsTest.java
----------------------------------------------------------------------
diff --git a/integration/src/test/java/org/apache/mahout/utils/regex/RegexUtilsTest.java b/integration/src/test/java/org/apache/mahout/utils/regex/RegexUtilsTest.java
index 0599028..8ae10a5 100644
--- a/integration/src/test/java/org/apache/mahout/utils/regex/RegexUtilsTest.java
+++ b/integration/src/test/java/org/apache/mahout/utils/regex/RegexUtilsTest.java
@@ -17,14 +17,14 @@
package org.apache.mahout.utils.regex;
-import com.google.common.collect.Lists;
-import org.apache.mahout.common.MahoutTestCase;
-import org.junit.Test;
-
+import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.regex.Pattern;
+import org.apache.mahout.common.MahoutTestCase;
+import org.junit.Test;
+
public final class RegexUtilsTest extends MahoutTestCase {
static final String[] TEST_STRS = {
@@ -53,7 +53,7 @@ public final class RegexUtilsTest extends MahoutTestCase {
assertEquals(res, "import statement 1", res);
pattern = Pattern.compile("(start=1) HTTP");
- Collection<Integer> groupsToKeep = Lists.newArrayList();
+ Collection<Integer> groupsToKeep = new ArrayList<>();
groupsToKeep.add(1);
res = RegexUtils.extract(line, pattern, groupsToKeep, " ", RegexUtils.IDENTITY_TRANSFORMER);
assertEquals(res, "start=1", res);
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/integration/src/test/java/org/apache/mahout/utils/vectors/VectorHelperTest.java
----------------------------------------------------------------------
diff --git a/integration/src/test/java/org/apache/mahout/utils/vectors/VectorHelperTest.java b/integration/src/test/java/org/apache/mahout/utils/vectors/VectorHelperTest.java
index 3fcfbf8..c55fd8d 100644
--- a/integration/src/test/java/org/apache/mahout/utils/vectors/VectorHelperTest.java
+++ b/integration/src/test/java/org/apache/mahout/utils/vectors/VectorHelperTest.java
@@ -17,9 +17,8 @@
package org.apache.mahout.utils.vectors;
-import com.google.common.collect.Iterables;
+import java.util.Random;
-import com.google.common.io.Closeables;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
@@ -33,8 +32,6 @@ import org.apache.mahout.math.Vector;
import org.junit.Before;
import org.junit.Test;
-import java.util.Random;
-
public final class VectorHelperTest extends MahoutTestCase {
private static final int NUM_DOCS = 100;
@@ -52,28 +49,24 @@ public final class VectorHelperTest extends MahoutTestCase {
inputPathOne = getTestTempFilePath("documents/docs-one.file");
FileSystem fs = FileSystem.get(inputPathOne.toUri(), conf);
- SequenceFile.Writer writer = new SequenceFile.Writer(fs, conf, inputPathOne, Text.class, IntWritable.class);
- try {
+ try (SequenceFile.Writer writer =
+ new SequenceFile.Writer(fs, conf, inputPathOne, Text.class, IntWritable.class)) {
Random rd = RandomUtils.getRandom();
for (int i = 0; i < NUM_DOCS; i++) {
// Make all indices higher than dictionary size
writer.append(new Text("Document::ID::" + i), new IntWritable(NUM_DOCS + rd.nextInt(NUM_DOCS)));
}
- } finally {
- Closeables.close(writer, false);
}
inputPathTwo = getTestTempFilePath("documents/docs-two.file");
fs = FileSystem.get(inputPathTwo.toUri(), conf);
- writer = new SequenceFile.Writer(fs, conf, inputPathTwo, Text.class, IntWritable.class);
- try {
+ try (SequenceFile.Writer writer =
+ new SequenceFile.Writer(fs, conf, inputPathTwo, Text.class, IntWritable.class)) {
Random rd = RandomUtils.getRandom();
for (int i = 0; i < NUM_DOCS; i++) {
// Keep indices within number of documents
writer.append(new Text("Document::ID::" + i), new IntWritable(rd.nextInt(NUM_DOCS)));
}
- } finally {
- Closeables.close(writer, false);
}
}
@@ -120,7 +113,7 @@ public final class VectorHelperTest extends MahoutTestCase {
// check if sizeOfNonZeroElementsInVector < maxEntries
assertTrue(VectorHelper.topEntries(v, 9).size() < 9);
// check if sizeOfNonZeroElementsInVector > maxEntries
- assertTrue(VectorHelper.topEntries(v, 5).size() < Iterables.size(v.nonZeroes()));
+ assertTrue(VectorHelper.topEntries(v, 5).size() < v.getNumNonZeroElements());
}
@Test
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/integration/src/test/java/org/apache/mahout/utils/vectors/arff/ARFFVectorIterableTest.java
----------------------------------------------------------------------
diff --git a/integration/src/test/java/org/apache/mahout/utils/vectors/arff/ARFFVectorIterableTest.java b/integration/src/test/java/org/apache/mahout/utils/vectors/arff/ARFFVectorIterableTest.java
index bf7415f..4c7f17a 100644
--- a/integration/src/test/java/org/apache/mahout/utils/vectors/arff/ARFFVectorIterableTest.java
+++ b/integration/src/test/java/org/apache/mahout/utils/vectors/arff/ARFFVectorIterableTest.java
@@ -25,9 +25,8 @@ import java.util.Iterator;
import java.util.Locale;
import java.util.Map;
-import com.google.common.base.Charsets;
import com.google.common.io.Resources;
-
+import org.apache.commons.io.Charsets;
import org.apache.mahout.common.MahoutTestCase;
import org.apache.mahout.math.DenseVector;
import org.apache.mahout.math.RandomAccessSparseVector;
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/integration/src/test/java/org/apache/mahout/utils/vectors/arff/DriverTest.java
----------------------------------------------------------------------
diff --git a/integration/src/test/java/org/apache/mahout/utils/vectors/arff/DriverTest.java b/integration/src/test/java/org/apache/mahout/utils/vectors/arff/DriverTest.java
index 693a8db..7e7623e 100644
--- a/integration/src/test/java/org/apache/mahout/utils/vectors/arff/DriverTest.java
+++ b/integration/src/test/java/org/apache/mahout/utils/vectors/arff/DriverTest.java
@@ -18,9 +18,8 @@ package org.apache.mahout.utils.vectors.arff;
import java.io.IOException;
import java.io.StringWriter;
-import com.google.common.base.Charsets;
import com.google.common.io.Resources;
-
+import org.apache.commons.io.Charsets;
import org.apache.mahout.common.MahoutTestCase;
import org.junit.Test;
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/integration/src/test/java/org/apache/mahout/utils/vectors/arff/MapBackedARFFModelTest.java
----------------------------------------------------------------------
diff --git a/integration/src/test/java/org/apache/mahout/utils/vectors/arff/MapBackedARFFModelTest.java b/integration/src/test/java/org/apache/mahout/utils/vectors/arff/MapBackedARFFModelTest.java
index 1e3b8f8..2867640 100644
--- a/integration/src/test/java/org/apache/mahout/utils/vectors/arff/MapBackedARFFModelTest.java
+++ b/integration/src/test/java/org/apache/mahout/utils/vectors/arff/MapBackedARFFModelTest.java
@@ -21,7 +21,6 @@ import org.junit.Test;
import java.util.Map;
-
public class MapBackedARFFModelTest extends MahoutTestCase {
@Test
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/integration/src/test/java/org/apache/mahout/utils/vectors/csv/CSVVectorIteratorTest.java
----------------------------------------------------------------------
diff --git a/integration/src/test/java/org/apache/mahout/utils/vectors/csv/CSVVectorIteratorTest.java b/integration/src/test/java/org/apache/mahout/utils/vectors/csv/CSVVectorIteratorTest.java
index ca3781b..e76cf70 100644
--- a/integration/src/test/java/org/apache/mahout/utils/vectors/csv/CSVVectorIteratorTest.java
+++ b/integration/src/test/java/org/apache/mahout/utils/vectors/csv/CSVVectorIteratorTest.java
@@ -5,9 +5,9 @@
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * <p/>
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * <p/>
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
@@ -22,8 +22,6 @@ import java.io.StringReader;
import java.io.StringWriter;
import java.util.Iterator;
-import com.google.common.io.Closeables;
-
import org.apache.mahout.common.MahoutTestCase;
import org.apache.mahout.math.Vector;
import org.apache.mahout.utils.vectors.RandomVectorIterable;
@@ -37,19 +35,17 @@ public class CSVVectorIteratorTest extends MahoutTestCase {
public void testCount() throws Exception {
StringWriter sWriter = new StringWriter();
- TextualVectorWriter writer = new TextualVectorWriter(sWriter) {
+ try (TextualVectorWriter writer = new TextualVectorWriter(sWriter) {
@Override
public void write(Vector vector) throws IOException {
String vecStr = VectorHelper.vectorToCSVString(vector, false);
getWriter().write(vecStr);
}
- };
- try {
+ }) {
Iterable<Vector> iter = new RandomVectorIterable(50);
writer.write(iter);
- } finally {
- Closeables.close(writer, false);
}
+
Iterator<Vector> csvIter = new CSVVectorIterator(new StringReader(sWriter.getBuffer().toString()));
int count = 0;
while (csvIter.hasNext()) {
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/integration/src/test/java/org/apache/mahout/utils/vectors/io/VectorWriterTest.java
----------------------------------------------------------------------
diff --git a/integration/src/test/java/org/apache/mahout/utils/vectors/io/VectorWriterTest.java b/integration/src/test/java/org/apache/mahout/utils/vectors/io/VectorWriterTest.java
index 96b2704..e2f7032 100644
--- a/integration/src/test/java/org/apache/mahout/utils/vectors/io/VectorWriterTest.java
+++ b/integration/src/test/java/org/apache/mahout/utils/vectors/io/VectorWriterTest.java
@@ -18,11 +18,9 @@
package org.apache.mahout.utils.vectors.io;
import java.io.StringWriter;
+import java.util.ArrayList;
import java.util.Collection;
-import com.google.common.collect.Lists;
-import com.google.common.io.Closeables;
-
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
@@ -44,11 +42,8 @@ public final class VectorWriterTest extends MahoutTestCase {
Configuration conf = getConfiguration();
FileSystem fs = FileSystem.get(conf);
SequenceFile.Writer seqWriter = new SequenceFile.Writer(fs, conf, path, LongWritable.class, VectorWritable.class);
- SequenceFileVectorWriter writer = new SequenceFileVectorWriter(seqWriter);
- try {
+ try (SequenceFileVectorWriter writer = new SequenceFileVectorWriter(seqWriter)) {
writer.write(new RandomVectorIterable(50));
- } finally {
- Closeables.close(writer, false);
}
long count = HadoopUtil.countRecords(path, conf);
@@ -58,14 +53,11 @@ public final class VectorWriterTest extends MahoutTestCase {
@Test
public void testTextOutputSize() throws Exception {
StringWriter strWriter = new StringWriter();
- VectorWriter writer = new TextualVectorWriter(strWriter);
- try {
- Collection<Vector> vectors = Lists.newArrayList();
+ try (VectorWriter writer = new TextualVectorWriter(strWriter)) {
+ Collection<Vector> vectors = new ArrayList<>();
vectors.add(new DenseVector(new double[]{0.3, 1.5, 4.5}));
vectors.add(new DenseVector(new double[]{1.3, 1.5, 3.5}));
writer.write(vectors);
- } finally {
- Closeables.close(writer, false);
}
String buffer = strWriter.toString();
assertNotNull(buffer);
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/math/src/main/java/org/apache/mahout/math/QRDecomposition.java
----------------------------------------------------------------------
diff --git a/math/src/main/java/org/apache/mahout/math/QRDecomposition.java b/math/src/main/java/org/apache/mahout/math/QRDecomposition.java
index 732529a..5a3d918 100644
--- a/math/src/main/java/org/apache/mahout/math/QRDecomposition.java
+++ b/math/src/main/java/org/apache/mahout/math/QRDecomposition.java
@@ -27,7 +27,6 @@ import org.apache.mahout.math.function.Functions;
import java.util.Locale;
-
/**
For an <tt>m x n</tt> matrix <tt>A</tt> with <tt>m >= n</tt>, the QR decomposition is an <tt>m x n</tt>
orthogonal matrix <tt>Q</tt> and an <tt>n x n</tt> upper triangular matrix <tt>R</tt> so that
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/math/src/main/java/org/apache/mahout/math/SingularValueDecomposition.java
----------------------------------------------------------------------
diff --git a/math/src/main/java/org/apache/mahout/math/SingularValueDecomposition.java b/math/src/main/java/org/apache/mahout/math/SingularValueDecomposition.java
index ecb34c6..2abff10 100644
--- a/math/src/main/java/org/apache/mahout/math/SingularValueDecomposition.java
+++ b/math/src/main/java/org/apache/mahout/math/SingularValueDecomposition.java
@@ -589,7 +589,7 @@ public class SingularValueDecomposition implements java.io.Serializable {
}
/**
- * @parameter minSingularValue
+ * @param minSingularValue
* minSingularValue - value below which singular values are ignored (a 0 or negative
* value implies all singular value will be used)
* @return Returns the n × n covariance matrix.
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/math/src/main/java/org/apache/mahout/math/SparseColumnMatrix.java
----------------------------------------------------------------------
diff --git a/math/src/main/java/org/apache/mahout/math/SparseColumnMatrix.java b/math/src/main/java/org/apache/mahout/math/SparseColumnMatrix.java
index 6a75716..c678b35 100644
--- a/math/src/main/java/org/apache/mahout/math/SparseColumnMatrix.java
+++ b/math/src/main/java/org/apache/mahout/math/SparseColumnMatrix.java
@@ -42,8 +42,8 @@ public class SparseColumnMatrix extends AbstractMatrix {
/**
* Construct a matrix of the given cardinality
*
- * @param rows
- * @param columns
+ * @param rows # of rows
+ * @param columns # of columns
*/
public SparseColumnMatrix(int rows, int columns) {
super(rows, columns);
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/math/src/main/java/org/apache/mahout/math/decomposer/hebbian/HebbianSolver.java
----------------------------------------------------------------------
diff --git a/math/src/main/java/org/apache/mahout/math/decomposer/hebbian/HebbianSolver.java b/math/src/main/java/org/apache/mahout/math/decomposer/hebbian/HebbianSolver.java
index fe3d11c..5b5cc9b 100644
--- a/math/src/main/java/org/apache/mahout/math/decomposer/hebbian/HebbianSolver.java
+++ b/math/src/main/java/org/apache/mahout/math/decomposer/hebbian/HebbianSolver.java
@@ -17,21 +17,21 @@
package org.apache.mahout.math.decomposer.hebbian;
+import java.util.ArrayList;
import java.util.List;
import java.util.Properties;
import java.util.Random;
-import com.google.common.collect.Lists;
import org.apache.mahout.common.RandomUtils;
import org.apache.mahout.math.DenseMatrix;
import org.apache.mahout.math.DenseVector;
import org.apache.mahout.math.Matrix;
+import org.apache.mahout.math.Vector;
import org.apache.mahout.math.decomposer.AsyncEigenVerifier;
import org.apache.mahout.math.decomposer.EigenStatus;
import org.apache.mahout.math.decomposer.SingularVectorVerifier;
-import org.apache.mahout.math.function.TimesFunction;
-import org.apache.mahout.math.Vector;
import org.apache.mahout.math.function.PlusMult;
+import org.apache.mahout.math.function.TimesFunction;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -171,7 +171,7 @@ public class HebbianSolver {
int desiredRank) {
int cols = corpus.numCols();
Matrix eigens = new DenseMatrix(desiredRank, cols);
- List<Double> eigenValues = Lists.newArrayList();
+ List<Double> eigenValues = new ArrayList<>();
log.info("Finding {} singular vectors of matrix with {} rows, via Hebbian", desiredRank, corpus.numRows());
/*
* The corpusProjections matrix is a running cache of the residual projection of each corpus vector against all
@@ -278,7 +278,7 @@ public class HebbianSolver {
currentPseudoEigen.assign(previousEigen, new PlusMult(-state.getHelperVector().get(i)));
state.getHelperVector().set(i, 0);
}
- if (DEBUG && currentPseudoEigen.norm(2) > 0) {
+ if (currentPseudoEigen.norm(2) > 0) {
for (int i = 0; i < state.getNumEigensProcessed(); i++) {
Vector previousEigen = previousEigens.viewRow(i);
log.info("dot with previous: {}", previousEigen.dot(currentPseudoEigen) / currentPseudoEigen.norm(2));
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/math/src/main/java/org/apache/mahout/math/decomposer/hebbian/TrainingState.java
----------------------------------------------------------------------
diff --git a/math/src/main/java/org/apache/mahout/math/decomposer/hebbian/TrainingState.java b/math/src/main/java/org/apache/mahout/math/decomposer/hebbian/TrainingState.java
index d1fcb6a..af6c2ef 100644
--- a/math/src/main/java/org/apache/mahout/math/decomposer/hebbian/TrainingState.java
+++ b/math/src/main/java/org/apache/mahout/math/decomposer/hebbian/TrainingState.java
@@ -17,9 +17,9 @@
package org.apache.mahout.math.decomposer.hebbian;
+import java.util.ArrayList;
import java.util.List;
-import com.google.common.collect.Lists;
import org.apache.mahout.math.DenseVector;
import org.apache.mahout.math.Matrix;
import org.apache.mahout.math.Vector;
@@ -44,7 +44,7 @@ public class TrainingState {
trainingIndex = 0;
helperVector = new DenseVector(eigens.numRows());
firstPass = true;
- statusProgress = Lists.newArrayList();
+ statusProgress = new ArrayList<>();
activationNumerator = 0;
activationDenominatorSquared = 0;
numEigensProcessed = 0;
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/math/src/main/java/org/apache/mahout/math/stats/LogLikelihood.java
----------------------------------------------------------------------
diff --git a/math/src/main/java/org/apache/mahout/math/stats/LogLikelihood.java b/math/src/main/java/org/apache/mahout/math/stats/LogLikelihood.java
index 336449c..d2c8434 100644
--- a/math/src/main/java/org/apache/mahout/math/stats/LogLikelihood.java
+++ b/math/src/main/java/org/apache/mahout/math/stats/LogLikelihood.java
@@ -18,10 +18,10 @@
package org.apache.mahout.math.stats;
import com.google.common.base.Preconditions;
-import com.google.common.collect.Lists;
import com.google.common.collect.Multiset;
import com.google.common.collect.Ordering;
+import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.PriorityQueue;
@@ -159,7 +159,7 @@ public final class LogLikelihood {
return Double.compare(tScoredItem.score, tScoredItem1.score);
}
};
- Queue<ScoredItem<T>> best = new PriorityQueue<ScoredItem<T>>(maxReturn + 1, byScoreAscending);
+ Queue<ScoredItem<T>> best = new PriorityQueue<>(maxReturn + 1, byScoreAscending);
for (T t : a.elementSet()) {
compareAndAdd(a, b, maxReturn, threshold, totalA, totalB, best, t);
@@ -175,7 +175,7 @@ public final class LogLikelihood {
}
}
- List<ScoredItem<T>> r = Lists.newArrayList(best);
+ List<ScoredItem<T>> r = new ArrayList<>(best);
Collections.sort(r, byScoreAscending.reverse());
return r;
}
@@ -192,7 +192,7 @@ public final class LogLikelihood {
int kB = b.count(t);
double score = rootLogLikelihoodRatio(kA, totalA - kA, kB, totalB - kB);
if (score >= threshold) {
- ScoredItem<T> x = new ScoredItem<T>(t, score);
+ ScoredItem<T> x = new ScoredItem<>(t, score);
best.add(x);
while (best.size() > maxReturn) {
best.poll();
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/math/src/test/java/org/apache/mahout/common/RandomUtilsTest.java
----------------------------------------------------------------------
diff --git a/math/src/test/java/org/apache/mahout/common/RandomUtilsTest.java b/math/src/test/java/org/apache/mahout/common/RandomUtilsTest.java
index 29ef6f8..973cee5 100644
--- a/math/src/test/java/org/apache/mahout/common/RandomUtilsTest.java
+++ b/math/src/test/java/org/apache/mahout/common/RandomUtilsTest.java
@@ -23,7 +23,7 @@ import org.junit.Test;
import java.util.Random;
/**
- * Tests {@linkRandomUtils}.
+ * Tests {@link RandomUtils}.
*/
public final class RandomUtilsTest extends MahoutTestCase {
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/RecommendedItemsWritable.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/RecommendedItemsWritable.java b/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/RecommendedItemsWritable.java
index 947204d..bc832aa 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/RecommendedItemsWritable.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/RecommendedItemsWritable.java
@@ -20,9 +20,9 @@ package org.apache.mahout.cf.taste.hadoop;
import java.io.DataInput;
import java.io.DataOutput;
import java.io.IOException;
+import java.util.ArrayList;
import java.util.List;
-import com.google.common.collect.Lists;
import org.apache.hadoop.io.Writable;
import org.apache.mahout.cf.taste.impl.recommender.GenericRecommendedItem;
import org.apache.mahout.cf.taste.recommender.RecommendedItem;
@@ -65,7 +65,7 @@ public final class RecommendedItemsWritable implements Writable {
@Override
public void readFields(DataInput in) throws IOException {
int size = in.readInt();
- recommended = Lists.newArrayListWithCapacity(size);
+ recommended = new ArrayList<>(size);
for (int i = 0; i < size; i++) {
long itemID = Varint.readSignedVarLong(in);
float value = in.readFloat();
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/TopItemsQueue.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/TopItemsQueue.java b/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/TopItemsQueue.java
index 0f9ea75..8f563b0 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/TopItemsQueue.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/TopItemsQueue.java
@@ -17,13 +17,13 @@
package org.apache.mahout.cf.taste.hadoop;
-import com.google.common.collect.Lists;
-import org.apache.lucene.util.PriorityQueue;
-import org.apache.mahout.cf.taste.recommender.RecommendedItem;
-
+import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
+import org.apache.lucene.util.PriorityQueue;
+import org.apache.mahout.cf.taste.recommender.RecommendedItem;
+
public class TopItemsQueue extends PriorityQueue<MutableRecommendedItem> {
private static final long SENTINEL_ID = Long.MIN_VALUE;
@@ -36,7 +36,7 @@ public class TopItemsQueue extends PriorityQueue<MutableRecommendedItem> {
}
public List<RecommendedItem> getTopItems() {
- List<RecommendedItem> recommendedItems = Lists.newArrayListWithCapacity(maxSize);
+ List<RecommendedItem> recommendedItems = new ArrayList<>(maxSize);
while (size() > 0) {
MutableRecommendedItem topItem = pop();
// filter out "sentinel" objects necessary for maintaining an efficient priority queue
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/als/ALS.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/als/ALS.java b/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/als/ALS.java
index c5ccf38..1c07b67 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/als/ALS.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/als/ALS.java
@@ -17,9 +17,12 @@
package org.apache.mahout.cf.taste.hadoop.als;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+
import com.google.common.base.Preconditions;
-import com.google.common.collect.Lists;
-import com.google.common.io.Closeables;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.LocalFileSystem;
@@ -37,10 +40,6 @@ import org.apache.mahout.math.VectorWritable;
import org.apache.mahout.math.als.AlternatingLeastSquaresSolver;
import org.apache.mahout.math.map.OpenIntObjectHashMap;
-import java.io.IOException;
-import java.util.Iterator;
-import java.util.List;
-
final class ALS {
private ALS() {}
@@ -65,15 +64,10 @@ final class ALS {
LocalFileSystem localFs = FileSystem.getLocal(conf);
for (Path cachedFile : cachedFiles) {
-
- SequenceFile.Reader reader = null;
- try {
- reader = new SequenceFile.Reader(localFs, cachedFile, conf);
+ try (SequenceFile.Reader reader = new SequenceFile.Reader(localFs, cachedFile, conf)){
while (reader.next(rowIndex, row)) {
featureMatrix.put(rowIndex.get(), row.get());
}
- } finally {
- Closeables.close(reader, true);
}
}
@@ -96,7 +90,7 @@ final class ALS {
double lambda, int numFeatures) {
Vector ratings = ratingsWritable.get();
- List<Vector> featureVectors = Lists.newArrayListWithCapacity(ratings.getNumNondefaultElements());
+ List<Vector> featureVectors = new ArrayList<>(ratings.getNumNondefaultElements());
for (Vector.Element e : ratings.nonZeroes()) {
int index = e.index();
featureVectors.add(uOrM.get(index));
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/als/FactorizationEvaluator.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/als/FactorizationEvaluator.java b/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/als/FactorizationEvaluator.java
index 3048b77..e69053c 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/als/FactorizationEvaluator.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/als/FactorizationEvaluator.java
@@ -23,8 +23,7 @@ import java.io.OutputStreamWriter;
import java.util.List;
import java.util.Map;
-import com.google.common.base.Charsets;
-import com.google.common.io.Closeables;
+import org.apache.commons.io.Charsets;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FSDataOutputStream;
import org.apache.hadoop.fs.FileSystem;
@@ -104,17 +103,12 @@ public class FactorizationEvaluator extends AbstractJob {
return -1;
}
- BufferedWriter writer = null;
- try {
- FileSystem fs = FileSystem.get(getOutputPath().toUri(), getConf());
- FSDataOutputStream outputStream = fs.create(getOutputPath("rmse.txt"));
+ FileSystem fs = FileSystem.get(getOutputPath().toUri(), getConf());
+ FSDataOutputStream outputStream = fs.create(getOutputPath("rmse.txt"));
+ try (BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(outputStream, Charsets.UTF_8))){
double rmse = computeRmse(errors);
- writer = new BufferedWriter(new OutputStreamWriter(outputStream, Charsets.UTF_8));
writer.write(String.valueOf(rmse));
- } finally {
- Closeables.close(writer, false);
}
-
return 0;
}
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/als/ParallelALSFactorizationJob.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/als/ParallelALSFactorizationJob.java b/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/als/ParallelALSFactorizationJob.java
index 624a8c4..2ce9b61 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/als/ParallelALSFactorizationJob.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/als/ParallelALSFactorizationJob.java
@@ -23,7 +23,6 @@ import java.util.Map;
import java.util.Random;
import com.google.common.base.Preconditions;
-import com.google.common.io.Closeables;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.filecache.DistributedCache;
import org.apache.hadoop.fs.FileStatus;
@@ -218,11 +217,9 @@ public class ParallelALSFactorizationJob extends AbstractJob {
Random random = RandomUtils.getRandom();
FileSystem fs = FileSystem.get(pathToM(-1).toUri(), getConf());
- SequenceFile.Writer writer = null;
- try {
- writer = new SequenceFile.Writer(fs, getConf(), new Path(pathToM(-1), "part-m-00000"), IntWritable.class,
- VectorWritable.class);
-
+ try (SequenceFile.Writer writer =
+ new SequenceFile.Writer(fs, getConf(), new Path(pathToM(-1), "part-m-00000"),
+ IntWritable.class, VectorWritable.class)) {
IntWritable index = new IntWritable();
VectorWritable featureVector = new VectorWritable();
@@ -236,8 +233,6 @@ public class ParallelALSFactorizationJob extends AbstractJob {
featureVector.set(row);
writer.append(index, featureVector);
}
- } finally {
- Closeables.close(writer, false);
}
}
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/item/IDReader.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/item/IDReader.java b/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/item/IDReader.java
index b8cf6bb..7797fe9 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/item/IDReader.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/item/IDReader.java
@@ -17,12 +17,12 @@
package org.apache.mahout.cf.taste.hadoop.item;
-import com.google.common.collect.Maps;
-import com.google.common.io.Closeables;
import java.io.IOException;
import java.io.InputStream;
+import java.util.HashMap;
import java.util.Map;
import java.util.regex.Pattern;
+
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.Path;
import org.apache.mahout.cf.taste.impl.common.FastIDSet;
@@ -142,10 +142,9 @@ public class IDReader {
}
private Map<Long, FastIDSet> readUserItemFilter(String pathString) throws IOException {
- Map<Long, FastIDSet> result = Maps.newHashMap();
- InputStream in = openFile(pathString);
+ Map<Long, FastIDSet> result = new HashMap<>();
- try {
+ try (InputStream in = openFile(pathString)) {
for (String line : new FileLineIterable(in)) {
try {
String[] tokens = SEPARATOR.split(line);
@@ -157,8 +156,6 @@ public class IDReader {
log.warn("userItemFile line ignored: {}", line);
}
}
- } finally {
- Closeables.close(in, true);
}
return result;
@@ -202,9 +199,8 @@ public class IDReader {
if (pathString != null) {
result = new FastIDSet();
- InputStream in = openFile(pathString);
- try {
+ try (InputStream in = openFile(pathString)){
for (String line : new FileLineIterable(in)) {
try {
result.add(Long.parseLong(line));
@@ -212,8 +208,6 @@ public class IDReader {
log.warn("line ignored: {}", line);
}
}
- } finally {
- Closeables.close(in, true);
}
}
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/item/ItemFilterAsVectorAndPrefsReducer.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/item/ItemFilterAsVectorAndPrefsReducer.java b/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/item/ItemFilterAsVectorAndPrefsReducer.java
index d9a7d25..4415a55 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/item/ItemFilterAsVectorAndPrefsReducer.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/item/ItemFilterAsVectorAndPrefsReducer.java
@@ -17,7 +17,10 @@
package org.apache.mahout.cf.taste.hadoop.item;
-import com.google.common.collect.Lists;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
+
import org.apache.hadoop.mapreduce.Reducer;
import org.apache.mahout.cf.taste.hadoop.TasteHadoopUtils;
import org.apache.mahout.math.RandomAccessSparseVector;
@@ -25,9 +28,6 @@ import org.apache.mahout.math.VarIntWritable;
import org.apache.mahout.math.VarLongWritable;
import org.apache.mahout.math.Vector;
-import java.io.IOException;
-import java.util.List;
-
/**
* we use a neat little trick to explicitly filter items for some users: we inject a NaN summand into the preference
* estimation for those items, which makes {@link org.apache.mahout.cf.taste.hadoop.item.AggregateAndRecommendReducer}
@@ -48,8 +48,8 @@ public class ItemFilterAsVectorAndPrefsReducer
/* artificial NaN summand to exclude this item from the recommendations for all users specified in userIDs */
vector.set(itemIDIndex, Double.NaN);
- List<Long> userIDs = Lists.newArrayList();
- List<Float> prefValues = Lists.newArrayList();
+ List<Long> userIDs = new ArrayList<>();
+ List<Float> prefValues = new ArrayList<>();
for (VarLongWritable userID : values) {
userIDs.add(userID.get());
prefValues.add(1.0f);
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/item/ToVectorAndPrefReducer.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/item/ToVectorAndPrefReducer.java b/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/item/ToVectorAndPrefReducer.java
index 74d30cb..9167437 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/item/ToVectorAndPrefReducer.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/item/ToVectorAndPrefReducer.java
@@ -18,9 +18,9 @@
package org.apache.mahout.cf.taste.hadoop.item;
import java.io.IOException;
+import java.util.ArrayList;
import java.util.List;
-import com.google.common.collect.Lists;
import org.apache.hadoop.mapreduce.Reducer;
import org.apache.mahout.math.VarIntWritable;
import org.apache.mahout.math.Vector;
@@ -35,8 +35,8 @@ public final class ToVectorAndPrefReducer extends
Iterable<VectorOrPrefWritable> values,
Context context) throws IOException, InterruptedException {
- List<Long> userIDs = Lists.newArrayList();
- List<Float> prefValues = Lists.newArrayList();
+ List<Long> userIDs = new ArrayList<>();
+ List<Float> prefValues = new ArrayList<>();
Vector similarityMatrixColumn = null;
for (VectorOrPrefWritable value : values) {
if (value.getVector() == null) {
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/item/VectorAndPrefsWritable.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/item/VectorAndPrefsWritable.java b/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/item/VectorAndPrefsWritable.java
index 495a920..11d496f 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/item/VectorAndPrefsWritable.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/item/VectorAndPrefsWritable.java
@@ -20,9 +20,9 @@ package org.apache.mahout.cf.taste.hadoop.item;
import java.io.DataInput;
import java.io.DataOutput;
import java.io.IOException;
+import java.util.ArrayList;
import java.util.List;
-import com.google.common.collect.Lists;
import org.apache.hadoop.io.Writable;
import org.apache.mahout.math.Varint;
import org.apache.mahout.math.Vector;
@@ -77,8 +77,8 @@ public final class VectorAndPrefsWritable implements Writable {
writable.readFields(in);
vector = writable.get();
int size = Varint.readUnsignedVarInt(in);
- userIDs = Lists.newArrayListWithCapacity(size);
- values = Lists.newArrayListWithCapacity(size);
+ userIDs = new ArrayList<>(size);
+ values = new ArrayList<>(size);
for (int i = 0; i < size; i++) {
userIDs.add(Varint.readSignedVarLong(in));
values.add(in.readFloat());
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/similarity/item/TopSimilarItemsQueue.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/similarity/item/TopSimilarItemsQueue.java b/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/similarity/item/TopSimilarItemsQueue.java
index b0ba24d..acb6392 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/similarity/item/TopSimilarItemsQueue.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/hadoop/similarity/item/TopSimilarItemsQueue.java
@@ -17,13 +17,13 @@
package org.apache.mahout.cf.taste.hadoop.similarity.item;
-import com.google.common.collect.Lists;
-import org.apache.lucene.util.PriorityQueue;
-import org.apache.mahout.cf.taste.similarity.precompute.SimilarItem;
-
+import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
+import org.apache.lucene.util.PriorityQueue;
+import org.apache.mahout.cf.taste.similarity.precompute.SimilarItem;
+
public class TopSimilarItemsQueue extends PriorityQueue<SimilarItem> {
private static final long SENTINEL_ID = Long.MIN_VALUE;
@@ -36,7 +36,7 @@ public class TopSimilarItemsQueue extends PriorityQueue<SimilarItem> {
}
public List<SimilarItem> getTopItems() {
- List<SimilarItem> items = Lists.newArrayListWithCapacity(maxSize);
+ List<SimilarItem> items = new ArrayList<>(maxSize);
while (size() > 0) {
SimilarItem topItem = pop();
// filter out "sentinel" objects necessary for maintaining an efficient priority queue
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/impl/common/RefreshHelper.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/impl/common/RefreshHelper.java b/mr/src/main/java/org/apache/mahout/cf/taste/impl/common/RefreshHelper.java
index cc91560..3e03108 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/impl/common/RefreshHelper.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/impl/common/RefreshHelper.java
@@ -17,13 +17,13 @@
package org.apache.mahout.cf.taste.impl.common;
+import java.util.ArrayList;
import java.util.Collection;
+import java.util.HashSet;
import java.util.List;
import java.util.concurrent.Callable;
import java.util.concurrent.locks.ReentrantLock;
-import com.google.common.collect.Lists;
-import com.google.common.collect.Sets;
import org.apache.mahout.cf.taste.common.Refreshable;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -47,7 +47,7 @@ public final class RefreshHelper implements Refreshable {
* encapsulates the containing object's own refresh logic
*/
public RefreshHelper(Callable<?> refreshRunnable) {
- this.dependencies = Lists.newArrayListWithCapacity(3);
+ this.dependencies = new ArrayList<>(3);
this.refreshLock = new ReentrantLock();
this.refreshRunnable = refreshRunnable;
}
@@ -99,7 +99,7 @@ public final class RefreshHelper implements Refreshable {
* param.
*/
public static Collection<Refreshable> buildRefreshed(Collection<Refreshable> currentAlreadyRefreshed) {
- return currentAlreadyRefreshed == null ? Sets.<Refreshable>newHashSetWithExpectedSize(3) : currentAlreadyRefreshed;
+ return currentAlreadyRefreshed == null ? new HashSet<Refreshable>(3) : currentAlreadyRefreshed;
}
/**
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/impl/eval/AbstractDifferenceRecommenderEvaluator.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/impl/eval/AbstractDifferenceRecommenderEvaluator.java b/mr/src/main/java/org/apache/mahout/cf/taste/impl/eval/AbstractDifferenceRecommenderEvaluator.java
index f6598f3..f926f18 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/impl/eval/AbstractDifferenceRecommenderEvaluator.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/impl/eval/AbstractDifferenceRecommenderEvaluator.java
@@ -17,6 +17,7 @@
package org.apache.mahout.cf.taste.impl.eval;
+import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.Map;
@@ -29,7 +30,7 @@ import java.util.concurrent.Future;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicInteger;
-import com.google.common.collect.Lists;
+import com.google.common.base.Preconditions;
import org.apache.mahout.cf.taste.common.NoSuchItemException;
import org.apache.mahout.cf.taste.common.NoSuchUserException;
import org.apache.mahout.cf.taste.common.TasteException;
@@ -51,8 +52,6 @@ import org.apache.mahout.common.RandomUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import com.google.common.base.Preconditions;
-
/**
* Abstract superclass of a couple implementations, providing shared functionality.
*/
@@ -142,12 +141,12 @@ public abstract class AbstractDifferenceRecommenderEvaluator implements Recommen
Preference newPref = new GenericPreference(userID, prefs.getItemID(i), prefs.getValue(i));
if (random.nextDouble() < trainingPercentage) {
if (oneUserTrainingPrefs == null) {
- oneUserTrainingPrefs = Lists.newArrayListWithCapacity(3);
+ oneUserTrainingPrefs = new ArrayList<>(3);
}
oneUserTrainingPrefs.add(newPref);
} else {
if (oneUserTestPrefs == null) {
- oneUserTestPrefs = Lists.newArrayListWithCapacity(3);
+ oneUserTestPrefs = new ArrayList<>(3);
}
oneUserTestPrefs.add(newPref);
}
@@ -173,7 +172,7 @@ public abstract class AbstractDifferenceRecommenderEvaluator implements Recommen
private double getEvaluation(FastByIDMap<PreferenceArray> testPrefs, Recommender recommender)
throws TasteException {
reset();
- Collection<Callable<Void>> estimateCallables = Lists.newArrayList();
+ Collection<Callable<Void>> estimateCallables = new ArrayList<>();
AtomicInteger noEstimateCounter = new AtomicInteger();
for (Map.Entry<Long,PreferenceArray> entry : testPrefs.entrySet()) {
estimateCallables.add(
@@ -217,7 +216,7 @@ public abstract class AbstractDifferenceRecommenderEvaluator implements Recommen
private static Collection<Callable<Void>> wrapWithStatsCallables(Iterable<Callable<Void>> callables,
AtomicInteger noEstimateCounter,
RunningAverageAndStdDev timing) {
- Collection<Callable<Void>> wrapped = Lists.newArrayList();
+ Collection<Callable<Void>> wrapped = new ArrayList<>();
int count = 0;
for (Callable<Void> callable : callables) {
boolean logStats = count++ % 1000 == 0; // log every 1000 or so iterations
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/impl/eval/GenericRelevantItemsDataSplitter.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/impl/eval/GenericRelevantItemsDataSplitter.java b/mr/src/main/java/org/apache/mahout/cf/taste/impl/eval/GenericRelevantItemsDataSplitter.java
index b0ef18c..f4e4522 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/impl/eval/GenericRelevantItemsDataSplitter.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/impl/eval/GenericRelevantItemsDataSplitter.java
@@ -17,7 +17,6 @@
package org.apache.mahout.cf.taste.impl.eval;
-import com.google.common.collect.Lists;
import org.apache.mahout.cf.taste.common.TasteException;
import org.apache.mahout.cf.taste.eval.RelevantItemsDataSplitter;
import org.apache.mahout.cf.taste.impl.common.FastByIDMap;
@@ -27,6 +26,7 @@ import org.apache.mahout.cf.taste.model.DataModel;
import org.apache.mahout.cf.taste.model.Preference;
import org.apache.mahout.cf.taste.model.PreferenceArray;
+import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
@@ -62,7 +62,7 @@ public final class GenericRelevantItemsDataSplitter implements RelevantItemsData
// If we're dealing with the very user that we're evaluating for precision/recall,
if (userID == otherUserID) {
// then must remove all the test IDs, the "relevant" item IDs
- List<Preference> prefs2 = Lists.newArrayListWithCapacity(prefs2Array.length());
+ List<Preference> prefs2 = new ArrayList<>(prefs2Array.length());
for (Preference pref : prefs2Array) {
prefs2.add(pref);
}
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/impl/eval/LoadEvaluator.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/impl/eval/LoadEvaluator.java b/mr/src/main/java/org/apache/mahout/cf/taste/impl/eval/LoadEvaluator.java
index abb5ed8..2d27a37 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/impl/eval/LoadEvaluator.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/impl/eval/LoadEvaluator.java
@@ -17,11 +17,11 @@
package org.apache.mahout.cf.taste.impl.eval;
+import java.util.ArrayList;
import java.util.Collection;
import java.util.concurrent.Callable;
import java.util.concurrent.atomic.AtomicInteger;
-import com.google.common.collect.Lists;
import org.apache.mahout.cf.taste.common.TasteException;
import org.apache.mahout.cf.taste.impl.common.FullRunningAverageAndStdDev;
import org.apache.mahout.cf.taste.impl.common.LongPrimitiveIterator;
@@ -48,7 +48,7 @@ public final class LoadEvaluator {
LongPrimitiveIterator userSampler =
SamplingLongPrimitiveIterator.maybeWrapIterator(dataModel.getUserIDs(), sampleRate);
recommender.recommend(userSampler.next(), howMany); // Warm up
- Collection<Callable<Void>> callables = Lists.newArrayList();
+ Collection<Callable<Void>> callables = new ArrayList<>();
while (userSampler.hasNext()) {
callables.add(new LoadCallable(recommender, userSampler.next()));
}
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/impl/model/AbstractIDMigrator.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/impl/model/AbstractIDMigrator.java b/mr/src/main/java/org/apache/mahout/cf/taste/impl/model/AbstractIDMigrator.java
index 94f2d0b..6efa6fa 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/impl/model/AbstractIDMigrator.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/impl/model/AbstractIDMigrator.java
@@ -19,10 +19,9 @@ package org.apache.mahout.cf.taste.impl.model;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
-
import java.util.Collection;
-import com.google.common.base.Charsets;
+import org.apache.commons.io.Charsets;
import org.apache.mahout.cf.taste.common.Refreshable;
import org.apache.mahout.cf.taste.model.IDMigrator;
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/impl/model/file/FileDataModel.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/impl/model/file/FileDataModel.java b/mr/src/main/java/org/apache/mahout/cf/taste/impl/model/file/FileDataModel.java
index da6845e..aa8e8d2 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/impl/model/file/FileDataModel.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/impl/model/file/FileDataModel.java
@@ -21,6 +21,7 @@ import java.io.File;
import java.io.FileFilter;
import java.io.FileNotFoundException;
import java.io.IOException;
+import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
import java.util.List;
@@ -28,6 +29,9 @@ import java.util.Map;
import java.util.TreeMap;
import java.util.concurrent.locks.ReentrantLock;
+import com.google.common.base.Preconditions;
+import com.google.common.base.Splitter;
+import com.google.common.io.Closeables;
import org.apache.mahout.cf.taste.common.Refreshable;
import org.apache.mahout.cf.taste.common.TasteException;
import org.apache.mahout.cf.taste.impl.common.FastByIDMap;
@@ -45,11 +49,6 @@ import org.apache.mahout.common.iterator.FileLineIterator;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import com.google.common.base.Preconditions;
-import com.google.common.base.Splitter;
-import com.google.common.collect.Lists;
-import com.google.common.io.Closeables;
-
/**
* <p>
* A {@link DataModel} backed by a delimited file. This class expects a file where each line
@@ -207,7 +206,7 @@ public class FileDataModel extends AbstractDataModel {
throw new IllegalArgumentException("Did not find a delimiter(pattern) in first line");
}
}
- List<String> firstLineSplit = Lists.newArrayList();
+ List<String> firstLineSplit = new ArrayList<>();
for (String token : delimiterPattern.split(firstLine)) {
firstLineSplit.add(token);
}
@@ -526,7 +525,7 @@ public class FileDataModel extends AbstractDataModel {
if (!exists) {
if (prefs == null) {
- prefs = Lists.newArrayListWithCapacity(2);
+ prefs = new ArrayList<>(2);
((FastByIDMap<Collection<Preference>>) data).put(userID, prefs);
}
prefs.add(new GenericPreference(userID, itemID, preferenceValue));
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/GenericItemBasedRecommender.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/GenericItemBasedRecommender.java b/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/GenericItemBasedRecommender.java
index 413db4b..6dc8aa5 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/GenericItemBasedRecommender.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/GenericItemBasedRecommender.java
@@ -17,7 +17,6 @@
package org.apache.mahout.cf.taste.impl.recommender;
-import org.apache.mahout.cf.taste.recommender.CandidateItemsStrategy;
import java.util.Collection;
import java.util.Collections;
import java.util.List;
@@ -31,6 +30,7 @@ import org.apache.mahout.cf.taste.impl.common.RefreshHelper;
import org.apache.mahout.cf.taste.impl.common.RunningAverage;
import org.apache.mahout.cf.taste.model.DataModel;
import org.apache.mahout.cf.taste.model.PreferenceArray;
+import org.apache.mahout.cf.taste.recommender.CandidateItemsStrategy;
import org.apache.mahout.cf.taste.recommender.IDRescorer;
import org.apache.mahout.cf.taste.recommender.ItemBasedRecommender;
import org.apache.mahout.cf.taste.recommender.MostSimilarItemsCandidateItemsStrategy;
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/RandomRecommender.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/RandomRecommender.java b/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/RandomRecommender.java
index ef11f0d..08aa5ae 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/RandomRecommender.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/RandomRecommender.java
@@ -17,11 +17,11 @@
package org.apache.mahout.cf.taste.impl.recommender;
+import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.Random;
-import com.google.common.collect.Lists;
import org.apache.mahout.cf.taste.common.Refreshable;
import org.apache.mahout.cf.taste.common.TasteException;
import org.apache.mahout.cf.taste.impl.common.LongPrimitiveIterator;
@@ -68,7 +68,7 @@ public final class RandomRecommender extends AbstractRecommender {
throws TasteException {
DataModel dataModel = getDataModel();
int numItems = dataModel.getNumItems();
- List<RecommendedItem> result = Lists.newArrayListWithCapacity(howMany);
+ List<RecommendedItem> result = new ArrayList<>(howMany);
while (result.size() < howMany) {
LongPrimitiveIterator it = dataModel.getItemIDs();
it.skip(random.nextInt(numItems));
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/TopItems.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/TopItems.java b/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/TopItems.java
index 3c27145..f7b4385 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/TopItems.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/TopItems.java
@@ -17,13 +17,14 @@
package org.apache.mahout.cf.taste.impl.recommender;
+import java.util.ArrayList;
import java.util.Collections;
import java.util.Iterator;
import java.util.List;
import java.util.PriorityQueue;
import java.util.Queue;
-import com.google.common.collect.Lists;
+import com.google.common.base.Preconditions;
import org.apache.mahout.cf.taste.common.NoSuchItemException;
import org.apache.mahout.cf.taste.common.NoSuchUserException;
import org.apache.mahout.cf.taste.common.TasteException;
@@ -33,8 +34,6 @@ import org.apache.mahout.cf.taste.impl.similarity.GenericUserSimilarity;
import org.apache.mahout.cf.taste.recommender.IDRescorer;
import org.apache.mahout.cf.taste.recommender.RecommendedItem;
-import com.google.common.base.Preconditions;
-
/**
* <p>
* A simple class that refactors the "find top N things" logic that is used in several places.
@@ -83,7 +82,7 @@ public final class TopItems {
if (size == 0) {
return Collections.emptyList();
}
- List<RecommendedItem> result = Lists.newArrayListWithCapacity(size);
+ List<RecommendedItem> result = new ArrayList<>(size);
result.addAll(topItems);
Collections.sort(result, ByValueRecommendedItemComparator.getInstance());
return result;
@@ -123,7 +122,7 @@ public final class TopItems {
if (size == 0) {
return NO_IDS;
}
- List<SimilarUser> sorted = Lists.newArrayListWithCapacity(size);
+ List<SimilarUser> sorted = new ArrayList<>(size);
sorted.addAll(topUsers);
Collections.sort(sorted);
long[] result = new long[size];
@@ -168,7 +167,7 @@ public final class TopItems {
if (size == 0) {
return Collections.emptyList();
}
- List<GenericItemSimilarity.ItemItemSimilarity> result = Lists.newArrayListWithCapacity(size);
+ List<GenericItemSimilarity.ItemItemSimilarity> result = new ArrayList<>(size);
result.addAll(topSimilarities);
Collections.sort(result);
return result;
@@ -199,7 +198,7 @@ public final class TopItems {
if (size == 0) {
return Collections.emptyList();
}
- List<GenericUserSimilarity.UserUserSimilarity> result = Lists.newArrayListWithCapacity(size);
+ List<GenericUserSimilarity.UserUserSimilarity> result = new ArrayList<>(size);
result.addAll(topSimilarities);
Collections.sort(result);
return result;
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/svd/ALSWRFactorizer.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/svd/ALSWRFactorizer.java b/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/svd/ALSWRFactorizer.java
index 33be59d..0ba5139 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/svd/ALSWRFactorizer.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/svd/ALSWRFactorizer.java
@@ -17,7 +17,13 @@
package org.apache.mahout.cf.taste.impl.recommender.svd;
-import com.google.common.collect.Lists;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Random;
+import java.util.concurrent.ExecutorService;
+import java.util.concurrent.Executors;
+import java.util.concurrent.TimeUnit;
+
import org.apache.mahout.cf.taste.common.TasteException;
import org.apache.mahout.cf.taste.impl.common.FullRunningAverage;
import org.apache.mahout.cf.taste.impl.common.LongPrimitiveIterator;
@@ -31,17 +37,10 @@ import org.apache.mahout.math.SequentialAccessSparseVector;
import org.apache.mahout.math.Vector;
import org.apache.mahout.math.als.AlternatingLeastSquaresSolver;
import org.apache.mahout.math.als.ImplicitFeedbackAlternatingLeastSquaresSolver;
+import org.apache.mahout.math.map.OpenIntObjectHashMap;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import org.apache.mahout.math.map.OpenIntObjectHashMap;
-
-import java.util.List;
-import java.util.Random;
-import java.util.concurrent.ExecutorService;
-import java.util.concurrent.Executors;
-import java.util.concurrent.TimeUnit;
-
/**
* factorizes the rating matrix using "Alternating-Least-Squares with Weighted-λ-Regularization" as described in
* <a href="http://www.hpl.hp.com/personal/Robert_Schreiber/papers/2008%20AAIM%20Netflix/netflix_aaim08(submitted).pdf">
@@ -191,7 +190,7 @@ public class ALSWRFactorizer extends AbstractFactorizer {
queue.execute(new Runnable() {
@Override
public void run() {
- List<Vector> featureVectors = Lists.newArrayList();
+ List<Vector> featureVectors = new ArrayList<>();
while (itemIDsFromUser.hasNext()) {
long itemID = itemIDsFromUser.nextLong();
featureVectors.add(features.getItemFeatureColumn(itemIndex(itemID)));
@@ -229,7 +228,7 @@ public class ALSWRFactorizer extends AbstractFactorizer {
queue.execute(new Runnable() {
@Override
public void run() {
- List<Vector> featureVectors = Lists.newArrayList();
+ List<Vector> featureVectors = new ArrayList<>();
for (Preference pref : itemPrefs) {
long userID = pref.getUserID();
featureVectors.add(features.getUserFeatureColumn(userIndex(userID)));
@@ -272,7 +271,7 @@ public class ALSWRFactorizer extends AbstractFactorizer {
//TODO find a way to get rid of the object overhead here
protected OpenIntObjectHashMap<Vector> itemFeaturesMapping(LongPrimitiveIterator itemIDs, int numItems,
double[][] featureMatrix) {
- OpenIntObjectHashMap<Vector> mapping = new OpenIntObjectHashMap<Vector>(numItems);
+ OpenIntObjectHashMap<Vector> mapping = new OpenIntObjectHashMap<>(numItems);
while (itemIDs.hasNext()) {
long itemID = itemIDs.next();
int itemIndex = itemIndex(itemID);
@@ -284,7 +283,7 @@ public class ALSWRFactorizer extends AbstractFactorizer {
protected OpenIntObjectHashMap<Vector> userFeaturesMapping(LongPrimitiveIterator userIDs, int numUsers,
double[][] featureMatrix) {
- OpenIntObjectHashMap<Vector> mapping = new OpenIntObjectHashMap<Vector>(numUsers);
+ OpenIntObjectHashMap<Vector> mapping = new OpenIntObjectHashMap<>(numUsers);
while (userIDs.hasNext()) {
long userID = userIDs.next();
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/svd/FilePersistenceStrategy.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/svd/FilePersistenceStrategy.java b/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/svd/FilePersistenceStrategy.java
index d1d23a5..08c038a 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/svd/FilePersistenceStrategy.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/svd/FilePersistenceStrategy.java
@@ -30,7 +30,6 @@ import java.io.IOException;
import java.util.Map;
import com.google.common.base.Preconditions;
-import com.google.common.io.Closeables;
import org.apache.mahout.cf.taste.common.NoSuchItemException;
import org.apache.mahout.cf.taste.common.NoSuchUserException;
import org.apache.mahout.cf.taste.impl.common.FastByIDMap;
@@ -57,25 +56,17 @@ public class FilePersistenceStrategy implements PersistenceStrategy {
log.info("{} does not yet exist, no factorization found", file.getAbsolutePath());
return null;
}
- DataInputStream in = null;
- try {
+ try (DataInputStream in = new DataInputStream(new BufferedInputStream(new FileInputStream(file)))){
log.info("Reading factorization from {}...", file.getAbsolutePath());
- in = new DataInputStream(new BufferedInputStream(new FileInputStream(file)));
return readBinary(in);
- } finally {
- Closeables.close(in, true);
}
}
@Override
public void maybePersist(Factorization factorization) throws IOException {
- DataOutputStream out = null;
- try {
+ try (DataOutputStream out = new DataOutputStream(new BufferedOutputStream(new FileOutputStream(file)))){
log.info("Writing factorization to {}...", file.getAbsolutePath());
- out = new DataOutputStream(new BufferedOutputStream(new FileOutputStream(file)));
writeBinary(factorization, out);
- } finally {
- Closeables.close(out, false);
}
}
@@ -118,7 +109,7 @@ public class FilePersistenceStrategy implements PersistenceStrategy {
int numUsers = in.readInt();
int numItems = in.readInt();
- FastByIDMap<Integer> userIDMapping = new FastByIDMap<Integer>(numUsers);
+ FastByIDMap<Integer> userIDMapping = new FastByIDMap<>(numUsers);
double[][] userFeatures = new double[numUsers][numFeatures];
for (int n = 0; n < numUsers; n++) {
@@ -130,7 +121,7 @@ public class FilePersistenceStrategy implements PersistenceStrategy {
}
}
- FastByIDMap<Integer> itemIDMapping = new FastByIDMap<Integer>(numItems);
+ FastByIDMap<Integer> itemIDMapping = new FastByIDMap<>(numItems);
double[][] itemFeatures = new double[numItems][numFeatures];
for (int n = 0; n < numItems; n++) {
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/svd/SVDPlusPlusFactorizer.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/svd/SVDPlusPlusFactorizer.java b/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/svd/SVDPlusPlusFactorizer.java
index 8967134..20446f8 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/svd/SVDPlusPlusFactorizer.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/impl/recommender/svd/SVDPlusPlusFactorizer.java
@@ -17,14 +17,14 @@
package org.apache.mahout.cf.taste.impl.recommender.svd;
-import com.google.common.collect.Lists;
-import com.google.common.collect.Maps;
+import org.apache.mahout.cf.taste.common.TasteException;
import org.apache.mahout.cf.taste.impl.common.FastIDSet;
import org.apache.mahout.cf.taste.impl.common.LongPrimitiveIterator;
+import org.apache.mahout.cf.taste.model.DataModel;
import org.apache.mahout.common.RandomUtils;
-import org.apache.mahout.cf.taste.common.TasteException;
-import org.apache.mahout.cf.taste.model.DataModel;
+import java.util.ArrayList;
+import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Random;
@@ -80,13 +80,13 @@ public final class SVDPlusPlusFactorizer extends RatingSGDFactorizer {
}
/* get internal item IDs which we will need several times */
- itemsByUser = Maps.newHashMap();
+ itemsByUser = new HashMap<>();
LongPrimitiveIterator userIDs = dataModel.getUserIDs();
while (userIDs.hasNext()) {
long userId = userIDs.nextLong();
int userIndex = userIndex(userId);
FastIDSet itemIDsFromUser = dataModel.getItemIDsFromUser(userId);
- List<Integer> itemIndexes = Lists.newArrayListWithCapacity(itemIDsFromUser.size());
+ List<Integer> itemIndexes = new ArrayList<>(itemIDsFromUser.size());
itemsByUser.put(userIndex, itemIndexes);
for (long itemID2 : itemIDsFromUser) {
int i2 = itemIndex(itemID2);
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/cf/taste/impl/similarity/precompute/FileSimilarItemsWriter.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/cf/taste/impl/similarity/precompute/FileSimilarItemsWriter.java b/mr/src/main/java/org/apache/mahout/cf/taste/impl/similarity/precompute/FileSimilarItemsWriter.java
index ca0e0b2..631ec9b 100644
--- a/mr/src/main/java/org/apache/mahout/cf/taste/impl/similarity/precompute/FileSimilarItemsWriter.java
+++ b/mr/src/main/java/org/apache/mahout/cf/taste/impl/similarity/precompute/FileSimilarItemsWriter.java
@@ -23,8 +23,8 @@ import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
-import com.google.common.base.Charsets;
import com.google.common.io.Closeables;
+import org.apache.commons.io.Charsets;
import org.apache.mahout.cf.taste.similarity.precompute.SimilarItem;
import org.apache.mahout.cf.taste.similarity.precompute.SimilarItems;
import org.apache.mahout.cf.taste.similarity.precompute.SimilarItemsWriter;
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/classifier/ConfusionMatrix.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/classifier/ConfusionMatrix.java b/mr/src/main/java/org/apache/mahout/classifier/ConfusionMatrix.java
index 0baa4bf..73ba521 100644
--- a/mr/src/main/java/org/apache/mahout/classifier/ConfusionMatrix.java
+++ b/mr/src/main/java/org/apache/mahout/classifier/ConfusionMatrix.java
@@ -19,17 +19,17 @@ package org.apache.mahout.classifier;
import java.util.Collection;
import java.util.Collections;
+import java.util.HashMap;
+import java.util.LinkedHashMap;
import java.util.Map;
+import com.google.common.base.Preconditions;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.math3.stat.descriptive.moment.Mean;
import org.apache.mahout.cf.taste.impl.common.FullRunningAverageAndStdDev;
import org.apache.mahout.cf.taste.impl.common.RunningAverageAndStdDev;
import org.apache.mahout.math.DenseMatrix;
import org.apache.mahout.math.Matrix;
-
-import com.google.common.base.Preconditions;
-import com.google.common.collect.Maps;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -42,7 +42,7 @@ import org.slf4j.LoggerFactory;
*/
public class ConfusionMatrix {
private static final Logger LOG = LoggerFactory.getLogger(ConfusionMatrix.class);
- private final Map<String,Integer> labelMap = Maps.newLinkedHashMap();
+ private final Map<String,Integer> labelMap = new LinkedHashMap<>();
private final int[][] confusionMatrix;
private int samples = 0;
private String defaultLabel = "unknown";
@@ -333,7 +333,7 @@ public class ConfusionMatrix {
m.set(r, c, confusionMatrix[r][c]);
}
}
- Map<String,Integer> labels = Maps.newHashMap();
+ Map<String,Integer> labels = new HashMap<>();
for (Map.Entry<String, Integer> entry : labelMap.entrySet()) {
labels.put(entry.getKey(), entry.getValue());
}
http://git-wip-us.apache.org/repos/asf/mahout/blob/85f9ece6/mr/src/main/java/org/apache/mahout/classifier/RegressionResultAnalyzer.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/classifier/RegressionResultAnalyzer.java b/mr/src/main/java/org/apache/mahout/classifier/RegressionResultAnalyzer.java
index 5d8b9ed..35c11ee 100644
--- a/mr/src/main/java/org/apache/mahout/classifier/RegressionResultAnalyzer.java
+++ b/mr/src/main/java/org/apache/mahout/classifier/RegressionResultAnalyzer.java
@@ -19,10 +19,10 @@ package org.apache.mahout.classifier;
import java.text.DecimalFormat;
import java.text.NumberFormat;
+import java.util.ArrayList;
import java.util.List;
import java.util.Locale;
-import com.google.common.collect.Lists;
import org.apache.commons.lang3.StringUtils;
/**
@@ -56,7 +56,7 @@ public class RegressionResultAnalyzer {
*/
public void addInstance(double actual, double result) {
if (results == null) {
- results = Lists.newArrayList();
+ results = new ArrayList<>();
}
results.add(new Result(actual, result));
}