public MainViewModel(ITransformationFileService fileService, ITransformationService transformationService) { this.details = new TransformationDetails(@"C:\ArmTemplate\Output", true); this.ValidationErrors = new ObservableCollection <ValidationError>(); this.transformationFileService = fileService; this.transformationService = transformationService; }
private static IArmPropertyValueResolver CreatePropertyValueResolver(TransformationDetails transformationDetails) { if (transformationDetails.DashboardIsCompleteTemplate) { return(new ArmParameterPropertyValueResolver()); } return(new ArmTemplatePropertyValueResolver()); }
public static string CreateParameters(List <string> additionalParameters, TransformationDetails transformationDetails) { var rootObject = new JObject(); if (transformationDetails.DashboardIsCompleteTemplate) { rootObject.Add(new JProperty(ArmTemplatePropertyNameConstants.Schema, ArmPropertyValueConstants.ParametersSchema)); rootObject.Add(new JProperty(ArmTemplatePropertyNameConstants.ContentVersion, ArmPropertyValueConstants.ContentVersion)); rootObject.Add(new JProperty(ArmTemplatePropertyNameConstants.Parameters, CreateParametersObject(additionalParameters))); } return(JsonWriter.CreateOutputJsonWithFormatting(rootObject)); }
public InputDashboardArmTemplate GetInputDashboardArmTemplate(TransformationDetails transformationDetails) { return(new InputDashboardArmTemplate(File.ReadAllText(transformationDetails.SourceFilePath))); }
public void SaveOutputDashboardArmTemplate(OutputDashboardArmTemplate outputDashboardArmTemplate, TransformationDetails transformationDetails) { Directory.CreateDirectory(transformationDetails.OutputFilePath); File.WriteAllText($@"{transformationDetails.OutputFilePath}\dashboard.json", outputDashboardArmTemplate.TemplateJson); File.WriteAllText($@"{transformationDetails.OutputFilePath}\parameters.json", outputDashboardArmTemplate.ParametersJson); }
public OutputDashboardArmTemplate Transform(InputDashboardArmTemplate inputTemplate, TransformationDetails transformationDetails) { var armTemplate = DashboardJsonTemplateTransformationService.TransformTemplate(inputTemplate, transformationDetails); var parametersJson = DashboardJsonParametersService.CreateParameters(armTemplate.AdditionalResourceNames, transformationDetails); var outputJson = JsonWriter.CreateOutputJsonWithFormatting(armTemplate.Json); return(new OutputDashboardArmTemplate(outputJson, parametersJson)); }
private static ArmTemplateTransformer CreateTransformer(TransformationDetails transformationDetails) { return((transformationDetails.DashboardIsCompleteTemplate) ? CreateCompleteTemplateTransformer() : CreatePartialTemplateTransformer()); }
internal static ArmTemplate TransformTemplate(InputDashboardArmTemplate inputTemplate, TransformationDetails transformationDetails) { try { var inputJson = JObject.Parse(inputTemplate.TemplateJson); var armTemplate = new ArmTemplate(inputJson); ArmTemplateTransformer rootTransformer = CreateTransformer(transformationDetails); IArmPropertyValueResolver armPropertyValueResolver = CreatePropertyValueResolver(transformationDetails); rootTransformer.Transform(armTemplate, armPropertyValueResolver); return(armTemplate); } catch (Exception e) { throw new InvalidInputTemplateException(e); } }
public void Setup() { this.transformationDetails = new TransformationDetails(); }