public void ConvertFile(string inputFilePath, string targetFilePath, string language) { // read input file var fileContent = _fileHandlerService.ReadFileAsString(inputFilePath); // parse file var sourceModel = _sourceModelSerializerService.Deserialize(fileContent); // convert source to intermediate model var intermediateModel = _sourceModelConverterService.ConvertToIntermediate(sourceModel, language); // convert intermediate to target model var targetModel = _targetModelConverterService.ConvertFromIntermediate(intermediateModel); // serialize model var serializedTargetModel = _targetModelSerializerService.Serialize(targetModel); // save output _fileHandlerService.WriteFileAsString(targetFilePath, serializedTargetModel); }