private void LoadManagementValues() { var performanceFilePath = GetPerformanceFilePath(); var doesPerformanceFileExist = performanceFilePath.Exists(); if (doesPerformanceFileExist) { var text = System.IO.File.ReadAllText(performanceFilePath.FullPath); model = JsonConvert.DeserializeObject <ProjectManagementValues>(text); foreach (var element in GlueState.Self.CurrentGlueProject.Entities) { var managementValues = model?.EntityManagementValueList?.FirstOrDefault(item => item.Name == element.Name); if (managementValues != null) { if (element.IsManuallyUpdated) { managementValues.PropertyManagementMode = Enums.PropertyManagementMode.SelectManagedProperties; } else { managementValues.PropertyManagementMode = Enums.PropertyManagementMode.FullyManaged; } foreach (var instance in element.AllNamedObjects) { var instanceModel = managementValues.InstanceManagementValuesList .FirstOrDefault(item => item.Name == instance.InstanceName); if (instanceModel != null) { UpdateInstanceValuesToInstance(instanceModel, instance); } } } } } if (model == null) { model = new ProjectManagementValues(); } codeGenerator.Values = model; }
private void HandleGluxUnload() { model = null; codeGenerator.Values = null; }