diff --git a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/FileConverter.java b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/FileConverter.java index 6075200..c2ef1f5 100644 --- a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/FileConverter.java +++ b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/FileConverter.java @@ -21,7 +21,6 @@ * @see FileParser * @author tohja * @version 1.0.0 - * * */ public class FileConverter { @@ -33,8 +32,12 @@ public class FileConverter { * representing stock objects. * * @return {@link List} + * + * @throws IllegalArgumentException if stock object(s) cannot be converted. + * * */ public List getStocksFromStrings(final List validStocks) { + List stocksFromFile = new ArrayList<>(); List stockSymbols = new ArrayList<>(); @@ -43,12 +46,17 @@ public List getStocksFromStrings(final List validStocks) { String stockSymbol = lineElements[0].trim(); String stockName = lineElements[1].trim(); BigDecimal stockPrice = new BigDecimal(lineElements[2].trim()); - // TODO: try-catch - Stock stockObject = new Stock(stockSymbol, stockName, stockPrice); - if (!stockSymbols.contains(stockSymbol)) { - stockSymbols.add(stockSymbol); - stocksFromFile.add(stockObject); + + try { + Stock stockObject = new Stock(stockSymbol, stockName, stockPrice); + if (!stockSymbols.contains(stockSymbol)) { + stockSymbols.add(stockSymbol); + stocksFromFile.add(stockObject); + } + } catch (IllegalArgumentException e) { + System.err.println(s + " is not a valid stock! Skipping..."); } + }); return stocksFromFile; }