summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Wu <peter@lekensteyn.nl>2014-05-22 17:32:02 +0200
committerPeter Wu <peter@lekensteyn.nl>2014-05-22 17:32:02 +0200
commit88996448351b561c772b9be296eb0db4ea01e840 (patch)
tree27735e45cec63e334f94200c1e183b84879ed506
parente70eebea5575a5447432a2e3a99f9e9e71a23019 (diff)
downloadTwitterDataAnalytics-88996448351b561c772b9be296eb0db4ea01e840.tar.gz
Properly close files after load/save
-rw-r--r--src/io/SearchImpl.java30
1 files changed, 14 insertions, 16 deletions
diff --git a/src/io/SearchImpl.java b/src/io/SearchImpl.java
index 82925cf..5bceadc 100644
--- a/src/io/SearchImpl.java
+++ b/src/io/SearchImpl.java
@@ -3,14 +3,13 @@ package io;
import com.google.gson.JsonArray;
import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
-import com.google.gson.JsonPrimitive;
-import java.io.BufferedWriter;
+import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
-import java.io.FileOutputStream;
+import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
-import java.io.Writer;
+import java.io.Reader;
import static java.lang.Thread.sleep;
import java.util.Scanner;
import java.util.concurrent.BlockingQueue;
@@ -87,29 +86,28 @@ public class SearchImpl implements Search {
@Override
public final void save(String filename) {
- try {
- FileWriter writer = new FileWriter(filename);
-
+ try (FileWriter writer = new FileWriter(filename)) {
for (Request req : requestQueue) {
writer.append(req.toString() + "\n");
}
} catch (IOException ex) {
- Logger.getLogger(SearchImpl.class.getName()).log(Level.SEVERE, null, ex);
+ Logger.getLogger(SearchImpl.class.getName()).log(Level.SEVERE,
+ "save error", ex);
}
}
@Override
public final void load(String filename) {
- try {
- FileInputStream inputFile = new FileInputStream(filename);
- Scanner input = new Scanner(inputFile);
-
- while (input.hasNext()) {
- String line = input.nextLine();
+ try (Reader fileReader = new FileReader(filename)) {
+ BufferedReader reader = new BufferedReader(fileReader);
+
+ String line;
+ while ((line = reader.readLine()) != null) {
requestQueue.offer(new Request(line));
}
- } catch (FileNotFoundException ex) {
- save(filename);
+ } catch (IOException ex) {
+ Logger.getLogger(SearchImpl.class.getName()).log(Level.SEVERE,
+ "load error", ex);
}
}