summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Wu <peter@lekensteyn.nl>2014-05-11 15:42:37 +0200
committerPeter Wu <peter@lekensteyn.nl>2014-05-11 15:42:37 +0200
commit60f8b6404af678e4a382c8a5f05ffbf1767e788e (patch)
treede3c488c0e8572d326d855bd80671ac55e6cde25
parentb848cb5d3bbe11b69462b2bb8d8a0bd331c902ff (diff)
downloadDatafiller-60f8b6404af678e4a382c8a5f05ffbf1767e788e.tar.gz
Support compressed tweets
-rw-r--r--src/io/CompressedTweetReader.java18
-rw-r--r--src/main/Main.java3
2 files changed, 21 insertions, 0 deletions
diff --git a/src/io/CompressedTweetReader.java b/src/io/CompressedTweetReader.java
new file mode 100644
index 0000000..a6077ae
--- /dev/null
+++ b/src/io/CompressedTweetReader.java
@@ -0,0 +1,18 @@
+package io;
+
+import java.io.FileInputStream;
+import java.io.IOException;
+import java.util.zip.GZIPInputStream;
+
+/**
+ * Read files from a compressed file.
+ *
+ * @author Peter Wu
+ */
+public class CompressedTweetReader extends TweetReader {
+
+ public CompressedTweetReader(String filename) throws IOException {
+ super(new GZIPInputStream(new FileInputStream(filename)));
+ }
+
+}
diff --git a/src/main/Main.java b/src/main/Main.java
index e076d32..2644db9 100644
--- a/src/main/Main.java
+++ b/src/main/Main.java
@@ -4,6 +4,7 @@ import com.google.gson.JsonParseException;
import com.google.gson.JsonSyntaxException;
import data.Tweet;
import database.ConnectionBuilder;
+import io.CompressedTweetReader;
import io.FileTweetReader;
import io.ITweetReader;
import io.TweetReader;
@@ -145,6 +146,8 @@ public class Main implements Callable<Boolean> {
try {
if (m_filename == null) {
reader = new TweetReader(System.in);
+ } else if (m_filename.endsWith(".gz")) {
+ reader = new CompressedTweetReader(m_filename);
} else {
reader = new FileTweetReader(m_filename);
}