Exemple #1
0
        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;
        }
Exemple #2
0
 private void HandleGluxUnload()
 {
     model = null;
     codeGenerator.Values = null;
 }