public static IMarketFileParser GetXmlParser(ImportFileContext context, ILogger logger) { var fileType = context.FileType; switch (fileType) { case "248": return(new Import248Xml(logger)); case "650": return(new Import650Xml(logger)); case "810": return(new Import810Xml(logger)); case "814": var marketDataAccess = new MarketDataAccess(context.MarketConnectionString); return(new Import814Xml(marketDataAccess, logger)); case "820": return(new Import820Xml(logger)); case "824": return(new Import824Xml(logger)); case "867": return(new Import867Xml(logger)); case "997": return(new Import997Xml(logger)); } throw new ArgumentOutOfRangeException(fileType); }
private static IMarketFileExporter GetSsxExporter(ExportFileContext context, ILogger logger) { var clientDataAccess = new ClientDataAccess(context.ClientConnectionString); var marketDataAccess = new MarketDataAccess(context.MarketConnectionString); var fileType = context.FileType; switch (fileType) { case "814": { var dataAccess = new Export814SsxDataAccess(context.MarketConnectionString); return(new Export814Ssx(clientDataAccess, marketDataAccess, dataAccess, logger)); } } throw new ArgumentOutOfRangeException(fileType); }
public static IMarketFileExporter GetXmlExporter(ExportFileContext context, ILogger logger) { var clientDataAccess = new ClientDataAccess(context.ClientConnectionString); var marketDataAccess = new MarketDataAccess(context.MarketConnectionString); var fileType = context.FileType; switch (fileType) { case "650": { var dataAccess = new Export650XmlDataAccess(context.MarketConnectionString); return(new Export650Xml(clientDataAccess, marketDataAccess, dataAccess, logger)); } case "810": { var dataAccess = new Export810XmlDataAccess(context.MarketConnectionString); return(new Export810Xml(clientDataAccess, marketDataAccess, dataAccess, logger)); } case "814": { var dataAccess = new Export814XmlDataAccess(context.MarketConnectionString); return(new Export814Xml(clientDataAccess, marketDataAccess, dataAccess, logger)); } case "820": { var dataAccess = new Export820XmlDataAccess(context.MarketConnectionString); return(new Export820Xml(clientDataAccess, marketDataAccess, dataAccess, logger)); } case "824": { var dataAccess = new Export824XmlDataAccess(context.MarketConnectionString); return(new Export824Xml(clientDataAccess, marketDataAccess, dataAccess, logger)); } } throw new ArgumentOutOfRangeException(fileType); }
public IMiramarTask GetTask(IMiramarClientInfo clientInfo, string taskId) { var adminDataAccess = new AdminDataAccess(clientInfo.AdminConnection); var clientId = clientInfo.ClientId; var logName = string.Format("Client-{0}", clientId); var logTaskId = string.Format("client.{0}.{1}", clientId, taskId); var logger = InfrastructureFactory.CreateLogger(clientId, logName, logTaskId); if (taskId.StartsWith("market.file", StringComparison.OrdinalIgnoreCase)) { var clientDataAccess = new ClientDataAccess(clientInfo.ClientConnection); if (taskId.Equals("market.file.decrypt", StringComparison.OrdinalIgnoreCase)) { return(new DecryptFileTask(adminDataAccess, clientDataAccess, logger, clientId)); } var marketDataAccess = new MarketDataAccess(clientInfo.MarketConnection); if (taskId.Equals("market.file.import", StringComparison.OrdinalIgnoreCase)) { return(new ImportMarketFileTask(adminDataAccess, marketDataAccess, logger, clientId)); } if (taskId.Equals("market.file.export", StringComparison.OrdinalIgnoreCase)) { return(new ExportMarketFileTask(adminDataAccess, marketDataAccess, logger, clientId)); } if (taskId.Equals("market.file.encrypt", StringComparison.OrdinalIgnoreCase)) { return(new EncryptFileTask(adminDataAccess, clientDataAccess, marketDataAccess, logger, clientId)); } if (taskId.Equals("market.file.transmit", StringComparison.OrdinalIgnoreCase)) { return(new TransmitFileTask(adminDataAccess, clientDataAccess, marketDataAccess, logger, clientId)); } } if (taskId.StartsWith("ercot.cbf", StringComparison.OrdinalIgnoreCase)) { var clientDataAccess = new ClientDataAccess(clientInfo.ClientConnection); var marketDataAccess = new MarketDataAccess(clientInfo.MarketConnection); if (taskId.Equals("ercot.cbf.encrypt", StringComparison.OrdinalIgnoreCase)) { return(new ErcotEncryptFileTask(adminDataAccess, clientDataAccess, marketDataAccess, logger, clientId)); } if (taskId.Equals("ercot.cbf.transmit", StringComparison.OrdinalIgnoreCase)) { return(new ErcotTransmitFileTask(adminDataAccess, clientDataAccess, marketDataAccess, logger, clientId)); } } var message = string.Format("No Miramar Task could be identified for task \"{0}\".", taskId); throw new ArgumentOutOfRangeException("taskId", message); }