public ExportingVstExpressionMapResponse Execute(ExportingVstExpressionMapRequest request) { var developerName = request.DeveloperName; var productName = request.ProductName; var instrumentName = request.InstrumentName; return(CreateResponse( SearchHelper.Search(Repository, request.Guid, developerName, productName, instrumentName) )); }
public int Execute(ICommandOption opt) { var option = (CommandOption)opt; using var repository = new LiteDbKeySwitchRepository(option.DatabasePath); var translator = new KeySwitchToVstExpressionMapModel(); var presenter = new IExportingVstExpressionMapPresenter.Null(); var interactor = new ExportingVstExpressionMapInteractor(repository, translator, presenter); var input = new ExportingVstExpressionMapRequest(option.Developer, option.Product, option.Instrument); Console.WriteLine($"Developer=\"{option.Developer}\", Product=\"{option.Product}\", Instrument=\"{option.Instrument}\""); var response = interactor.Execute(input); if (!response.Elements.Any()) { Console.WriteLine("records not found"); return(0); } foreach (var i in response.Elements) { var outputDirectory = option.OutputDirectory; if (option.DirectoryStructure) { outputDirectory = EntityDirectoryHelper.CreateDirectoryTree( i.KeySwitch, new DirectoryPath(outputDirectory) ).Path; } else { PathUtility.CreateDirectory(outputDirectory); } var prefix = $"{i.KeySwitch.ProductName} {i.KeySwitch.InstrumentName}"; var path = $"{prefix}.expressionmap"; path = PathUtility.GenerateFilePathWhenExist(path, outputDirectory, option.OverWrite); Console.Out.WriteLine($"export to {path}"); File.WriteAllText(path, i.XmlText.Value, Encoding.UTF8); } return(0); }
public void ExportTest() { #region Adding To DB var dbRepository = new LiteDbKeySwitchRepository(new MemoryStream()); var entity = TestDataGenerator.CreateKeySwitch(); dbRepository.Save(entity); #endregion var inputData = new ExportingVstExpressionMapRequest(entity.DeveloperName.Value, entity.ProductName.Value); var interactor = new ExportingVstExpressionMapInteractor( dbRepository, new KeySwitchToVstExpressionMapModel(), new IExportingVstExpressionMapPresenter.Null() ); var response = interactor.Execute(inputData); foreach (var i in response.Elements) { Console.WriteLine($"Expressionmap of {i.KeySwitch.InstrumentName}"); Console.WriteLine(i.XmlText); } }