public void LoadInvestors(string fileName) { StreamReader sr = new StreamReader(fileName); while (!sr.EndOfStream) { string InvestorName = sr.ReadLine(); string line = sr.ReadLine(); Dictionary <string, ComodityItem> comodities = new Dictionary <string, ComodityItem>(); while (line != "*****") { IComodity com; if (ComoditiesOnMarket.TryGetValue(line, out com)) { } else { throw new MarketException("Unknown comodity in input file."); } line = sr.ReadLine(); double amount = Double.Parse(line); ComodityItem item = new ComodityItem(amount, com); comodities.Add(item.Comodity.Name, item); line = sr.ReadLine(); } Investor investor = new Investor(InvestorName, comodities); investors.Add(InvestorName, investor); } }
public double GetPrice(string comodityName) { IComodity com; if (ComoditiesOnMarket.TryGetValue(comodityName, out com)) { return(com.CurrentValue); } else { throw new MarketException("Unknown comodity"); } }
public void ShiftComodity(string comodityName, double shift) { IComodity com; if (ComoditiesOnMarket.TryGetValue(comodityName, out com)) { com.ShiftComodityValue(shift); } else { throw new MarketException("Unknown comodity"); } }
public void SetNewTarget(string comodityName, double target) { IComodity com; if (ComoditiesOnMarket.TryGetValue(comodityName, out com)) { com.SetNewTarget(target); } else { throw new MarketException("Unknown comodity"); } }
public void BuyComodity(string investorName, string comodityName, double amount) { Investor inv; IComodity com; if (ComoditiesOnMarket.TryGetValue(comodityName, out com)) { } else { throw new MarketException("Unknown comodity"); } if (investors.TryGetValue(investorName, out inv)) { inv.BuyComodity(comodityName, amount, com); } else { throw new MarketException("Unknown investor"); } }