diff --git a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/Stock.java b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/Stock.java index e69de29..943fb88 100644 --- a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/Stock.java +++ b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/Stock.java @@ -0,0 +1,63 @@ +package edu.ntnu.idi.idatt2003.g40.mappe; + +import java.math.BigDecimal; +import java.util.ArrayList; +import java.util.List; + +/** + * Represents a stock listed on an exchange. + */ +public class Stock { + + private final String symbol; + private final String company; + private final List prices = new ArrayList<>(); + + /** + * Creates a new {@code Stock} with an initial sales price. + * + * @param symbol the unique stock symbol + * @param company the name of the company + * @param salesPrice the initial sales price of the stock + */ + public Stock(String symbol, String company, BigDecimal salesPrice){ + this.symbol = symbol; + this.company = company; + } + + /** + * Returns the stock symbol. + * + * @return the stock symbol + */ + public String getSymbol(){ + return symbol; + } + + /** + * Returns the stock company. + * + * @return the stocks company + */ + public String getCompany(){ + return company; + } + + /** + * Returns the current sales price of the stock. + * + * @return the curret sales price + */ + public BigDecimal getSalesPrice() { + return prices.getLast(); + } + + /** + * Adds a new sales price to the price history. + * + * @param price the new sales price + */ + public void addNewSalesPrice(BigDecimal price) { + prices.add(price); + } +}