diff options
Diffstat (limited to 'src')
4 files changed, 21 insertions, 12 deletions
diff --git a/src/main/java/edu/brown/cs/student/term/DatabaseQuerier.java b/src/main/java/edu/brown/cs/student/term/DatabaseQuerier.java index 7e9a184..f4be9b3 100644 --- a/src/main/java/edu/brown/cs/student/term/DatabaseQuerier.java +++ b/src/main/java/edu/brown/cs/student/term/DatabaseQuerier.java @@ -79,8 +79,9 @@ public class DatabaseQuerier{ while(rs.next()){ trades.add(new Trade(rs.getInt(1), rs.getString(2), - rs.getLong(4), rs.getInt(5), - rs.getInt(6), new Holder(rs.getInt(7), rs.getString(3)))); + rs.getLong(4), rs.getInt(5), + rs.getInt(6), new Holder(rs.getInt(7), rs.getString(3)), + rs.getDouble(8))); } return trades; diff --git a/src/main/java/edu/brown/cs/student/term/parsing/Transaction.java b/src/main/java/edu/brown/cs/student/term/parsing/Transaction.java index 2111048..45441b3 100644 --- a/src/main/java/edu/brown/cs/student/term/parsing/Transaction.java +++ b/src/main/java/edu/brown/cs/student/term/parsing/Transaction.java @@ -35,11 +35,9 @@ public class Transaction { ticker = ticker(); // There are two types of transactions within the xml - derivative and non derivative. + // We only look at non-derivative NodeList nonDerivative = document.getElementsByTagName("nonDerivativeTransaction"); - //NodeList derivative = document.getElementsByTagName("derivativeTransaction"); - // Processing both of their trades into the trades instance var. processTransactions(nonDerivative); - //processTransactions(derivative); } /** @@ -58,8 +56,9 @@ public class Transaction { int numShares = getNumShares(tradeValues); // TODO: update id? unique for each holder? Holder holder = new Holder(id, personName); + double pricePerShare = getPriceShares(tradeValues); - Trade trade = new Trade(id, ticker, ts, isBuy, numShares, holder); + Trade trade = new Trade(id, ticker, ts, isBuy, numShares, holder, pricePerShare); trades.add(trade); } @@ -124,6 +123,7 @@ public class Transaction { * @return The number of shares. */ public int getNumShares(NodeList values) { + // TODO: this might have to be double return Integer.parseInt(values.item(2).getTextContent()); } @@ -132,8 +132,8 @@ public class Transaction { * @param values The value array representing the trade. * @return The price of each share. */ - public int getPriceShares(NodeList values) { - return Integer.parseInt(values.item(3).getTextContent()); + public double getPriceShares(NodeList values) { + return Double.parseDouble(values.item(3).getTextContent()); } /** diff --git a/src/main/java/edu/brown/cs/student/term/repl/commands/LoadCommand.java b/src/main/java/edu/brown/cs/student/term/repl/commands/LoadCommand.java index a20c23b..09d98d2 100644 --- a/src/main/java/edu/brown/cs/student/term/repl/commands/LoadCommand.java +++ b/src/main/java/edu/brown/cs/student/term/repl/commands/LoadCommand.java @@ -59,9 +59,9 @@ public class LoadCommand implements Command { */ private static void loadTradeIntoDB(Trade trade) throws SQLException { PreparedStatement prep = CONN.prepareStatement( - "INSERT into trades (stock_name, holder_name, trade_timestamp, is_buy, " + - "number_of_shares, holder_id) " + - "VALUES (?, ?, ?, ?, ?, ?)"); + "INSERT INTO trades (stock_name, holder_name, trade_timestamp, is_buy, " + + "number_of_shares, holder_id, share_price) " + + "VALUES (?, ?, ?, ?, ?, ?, ?)"); prep.setString(1, trade.getStock()); prep.setString(2, trade.getHolder().getName()); @@ -70,7 +70,9 @@ public class LoadCommand implements Command { prep.setInt(4, trade.isBuy() ? 1 : 0); prep.setInt(5, trade.getNumShares()); prep.setInt(6, trade.getHolder().getId()); + prep.setDouble(7, trade.getPrice()); prep.execute(); + // TODO: close connection - when should we do this } }
\ No newline at end of file diff --git a/src/main/java/edu/brown/cs/student/term/trade/Trade.java b/src/main/java/edu/brown/cs/student/term/trade/Trade.java index 95770e4..353de8d 100644 --- a/src/main/java/edu/brown/cs/student/term/trade/Trade.java +++ b/src/main/java/edu/brown/cs/student/term/trade/Trade.java @@ -10,14 +10,16 @@ public class Trade { private double timestamp; private Holder holder; private int numShares; + private double price; - public Trade(int id, String stockName, double ts, int buy, int shares, Holder holder){ + public Trade(int id, String stockName, double ts, int buy, int shares, Holder holder, double price){ this.id = id; this.stock = stockName; this.isBuy = buy; this.timestamp = ts; this.holder = holder; this.numShares = shares; + this.price = price; } public int getId() { @@ -48,6 +50,10 @@ public class Trade { return numShares; } + public double getPrice() { + return price; + } + @Override public String toString() { return "Trade{" + |