Mercurial > silverbladetech
view MetroWpf/Stocks.Common/ConfigurationService.cs @ 102:db05a55e3536
INPC tests added
author | stevenhollidge <stevenhollidge@hotmail.com> |
---|---|
date | Sun, 06 May 2012 12:13:29 +0100 |
parents | dfc81f8bb838 |
children |
line wrap: on
line source
using System; using System.Collections.Generic; using Stocks.Common; using Stocks.Common.Core; using Stocks.Common.Models; using Newtonsoft.Json; namespace Stocks.Common { public class ConfigurationService : IConfigurationService { private string jsonFilename; private string serviceUrlPrefix = "http://finance.yahoo.com/d/quotes.csv?s="; private string serviceUrlSuffix = "&f=snl1"; public ConfigurationService(string filename) { jsonFilename = filename; } public List<Company> GetCompanies() { return new FileSerializer().DeserializeJson<Company>(jsonFilename); } public string GetServiceUrl(string symbolCsv) { if (string.IsNullOrEmpty(symbolCsv)) throw new ArgumentException(); return string.Concat(serviceUrlPrefix, symbolCsv, serviceUrlSuffix); } public string GetServiceUrl(string[] symbols) { if (symbols == null || symbols.Length == 0) throw new ArgumentException(); var symbolCsv = string.Join(",", symbols); return GetServiceUrl(symbolCsv); } } }