From 7f4ee4da655df678d4adba3003ed030d31c557c3 Mon Sep 17 00:00:00 2001 From: Charles Gould Date: Sun, 15 Oct 2017 23:39:53 -0400 Subject: [PATCH] Simplify WordReader --- .../main/java/lingo/common/WordReader.java | 33 +++++-------------- .../java/lingo/server/WordRepository.java | 3 +- 2 files changed, 9 insertions(+), 27 deletions(-) diff --git a/common/src/main/java/lingo/common/WordReader.java b/common/src/main/java/lingo/common/WordReader.java index aa574fa..97cee99 100644 --- a/common/src/main/java/lingo/common/WordReader.java +++ b/common/src/main/java/lingo/common/WordReader.java @@ -1,38 +1,21 @@ package lingo.common; -import java.io.BufferedReader; -import java.io.IOException; -import java.io.InputStream; -import java.io.InputStreamReader; -import java.util.ArrayList; -import java.util.Collection; +import java.net.URI; +import java.nio.file.Files; +import java.nio.file.Paths; import java.util.HashSet; import java.util.List; import java.util.Set; public class WordReader { - private static void readFileToCollection(String filename, Collection c) throws IOException { - try (final InputStream stream = WordReader.class.getResourceAsStream(filename); - final InputStreamReader streamReader = new InputStreamReader(stream); - final BufferedReader bufferedReader = new BufferedReader(streamReader)) { - String line = null; - while ((line = bufferedReader.readLine()) != null) { - c.add(line); - } - } + public static List readFileToList(String filename) throws Exception { + final URI resource = WordReader.class.getResource(filename).toURI(); + return Files.readAllLines(Paths.get(resource)); } - public static List readFileToList(String filename) throws IOException { - final List list = new ArrayList<>(); - readFileToCollection(filename, list); - return list; - } - - public static Set readFileToSet(String filename) throws IOException { - final Set list = new HashSet<>(); - readFileToCollection(filename, list); - return list; + public static Set readFileToSet(String filename) throws Exception { + return new HashSet<>(readFileToList(filename)); } } diff --git a/server/src/main/java/lingo/server/WordRepository.java b/server/src/main/java/lingo/server/WordRepository.java index eaad226..27e2e59 100644 --- a/server/src/main/java/lingo/server/WordRepository.java +++ b/server/src/main/java/lingo/server/WordRepository.java @@ -1,6 +1,5 @@ package lingo.server; -import java.io.IOException; import java.util.ArrayList; import java.util.Collections; import java.util.List; @@ -17,7 +16,7 @@ public class WordRepository { private final List words; - public WordRepository() throws IOException { + public WordRepository() throws Exception { guesses = WordReader.readFileToSet("/guesses.txt"); words = WordReader.readFileToList("/words.txt"); }