public static FileProcessorDefinition20 CreateFileProcessorDefinition(InputDefinitionFile20 inputDefinitionFile_20) { var aggregateManager = new AggregateManager(); var processorDefinition = new FileProcessorDefinition20(); InitializeFileProcessorDefinition(processorDefinition, inputDefinitionFile_20, aggregateManager); processorDefinition.DataRowProcessorDefinitions = LoadRowProcessorDefinitions(inputDefinitionFile_20.Datas, aggregateManager); processorDefinition.KeyField = inputDefinitionFile_20.Datas.KeyField; processorDefinition.DataTypeField = inputDefinitionFile_20.Datas.DataTypeField; ResolveDataTypeField(processorDefinition); var fieldProcessorDefinitionsInDataRows = processorDefinition.DataRowProcessorDefinitions.SelectMany(a => a.Value.RowProcessorDefinition.FieldProcessorDefinitions); InitializeRules(fieldProcessorDefinitionsInDataRows.SelectMany(a => a.Rules), aggregateManager.GetAggregates()); InitializeRules(processorDefinition.TrailerRowProcessorDefinition.FieldProcessorDefinitions.SelectMany(a => a.Rules), aggregateManager.GetAggregates()); return(processorDefinition); }
private static void InitializeFileProcessorDefinition( FileProcessorDefinition fileProcessorDefinition, InputDefinitionFile.Models.InputDefinitionFile inputDefinitionFile, AggregateManager aggregateManager) { fileProcessorDefinition.CreateRowJsonEnabled = inputDefinitionFile.CreateRowJsonEnabled; fileProcessorDefinition.HeaderRowProcessorDefinition = LoadRowProcessorDefinition(inputDefinitionFile.Header, aggregateManager); fileProcessorDefinition.TrailerRowProcessorDefinition = LoadRowProcessorDefinition(inputDefinitionFile.Trailer, aggregateManager); InitializeRules(fileProcessorDefinition.HeaderRowProcessorDefinition.FieldProcessorDefinitions.SelectMany(a => a.Rules), aggregateManager.GetAggregates()); }
public static FileProcessorDefinition10 CreateFileProcessorDefinition(InputDefinitionFile10 inputDefinitionFile_10) { var aggregateManager = new AggregateManager(); var processorDefinition = new FileProcessorDefinition10(); InitializeFileProcessorDefinition(processorDefinition, inputDefinitionFile_10, aggregateManager); processorDefinition.DataRowProcessorDefinition = LoadRowProcessorDefinition(inputDefinitionFile_10.Data, aggregateManager); InitializeRules(processorDefinition.DataRowProcessorDefinition.FieldProcessorDefinitions.SelectMany(a => a.Rules), aggregateManager.GetAggregates()); InitializeRules(processorDefinition.TrailerRowProcessorDefinition.FieldProcessorDefinitions.SelectMany(a => a.Rules), aggregateManager.GetAggregates()); return(processorDefinition); }