You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mahout.apache.org by sr...@apache.org on 2011/10/15 12:12:37 UTC

svn commit: r1183613 - /mahout/trunk/integration/src/main/java/org/apache/mahout/utils/clustering/ClusterDumper.java

Author: srowen
Date: Sat Oct 15 10:12:37 2011
New Revision: 1183613

URL: http://svn.apache.org/viewvc?rev=1183613&view=rev
Log:
MAHOUT-701 add special handling of dumping to s3n:// / Amazon S3

Modified:
    mahout/trunk/integration/src/main/java/org/apache/mahout/utils/clustering/ClusterDumper.java

Modified: mahout/trunk/integration/src/main/java/org/apache/mahout/utils/clustering/ClusterDumper.java
URL: http://svn.apache.org/viewvc/mahout/trunk/integration/src/main/java/org/apache/mahout/utils/clustering/ClusterDumper.java?rev=1183613&r1=1183612&r2=1183613&view=diff
==============================================================================
--- mahout/trunk/integration/src/main/java/org/apache/mahout/utils/clustering/ClusterDumper.java (original)
+++ mahout/trunk/integration/src/main/java/org/apache/mahout/utils/clustering/ClusterDumper.java Sat Oct 15 10:12:37 2011
@@ -22,6 +22,7 @@ import com.google.common.collect.Lists;
 import com.google.common.io.Closeables;
 import com.google.common.io.Files;
 import org.apache.hadoop.conf.Configuration;
+import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.fs.Path;
 import org.apache.hadoop.io.IntWritable;
 import org.apache.mahout.clustering.Cluster;
@@ -146,7 +147,13 @@ public final class ClusterDumper extends
       writer = new OutputStreamWriter(System.out);
     } else {
       shouldClose = true;
-      writer = Files.newWriter(new File(this.outputFile), Charsets.UTF_8);
+      if (outputFile.startsWith("s3n://")) {
+        Path p = new Path(this.outputFile);
+        FileSystem fs = FileSystem.get(p.toUri(), conf);
+        writer = new OutputStreamWriter(fs.create(p), Charsets.UTF_8);
+      } else {
+        writer = Files.newWriter(new File(this.outputFile), Charsets.UTF_8);
+      }
     }
     ClusterWriter clusterWriter = createClusterWriter(writer, dictionary);
     try {