internal static bool Serialize(string filePath, PersistentSettings settingsData) { try { XmlSerializer serializer = new XmlSerializer(typeof(PersistentSettings)); FileStream fileStream = new FileStream(filePath, FileMode.Create, FileAccess.Write); serializer.Serialize(fileStream, settingsData); } catch (Exception) { return false; } return true; }
internal static PersistentSettings Deserialize(string filePath) { PersistentSettings settingsInstance = null; if (!string.IsNullOrEmpty(filePath) && (File.Exists(filePath) != false)) { try { XmlSerializer serializer = new XmlSerializer(typeof(PersistentSettings)); FileStream fileStream = new FileStream(filePath, FileMode.Open, FileAccess.Read); settingsInstance = serializer.Deserialize(fileStream) as PersistentSettings; } catch (Exception) { } } if (null == settingsInstance) // Default settings. settingsInstance = new PersistentSettings(); return settingsInstance; }
private CoreComponent(IGraphUiContainer uiContainer, bool enableGeometricPreview) { // Either create or reuse a session name. EstablishSessionName(uiContainer); this.uiContainer = uiContainer; if (false != enableGeometricPreview) this.renderService = new RenderService(this); if (this.HostApplication != null) { object filteredClasses = null; Dictionary<string, object> configs = this.HostApplication.Configurations; if (configs.TryGetValue(ConfigurationKeys.FilteredClasses, out filteredClasses)) { this.filteredClasses = ((string)filteredClasses).ToLower(); if (!this.filteredClasses.EndsWith(";")) this.filteredClasses += ';'; } } this.heartbeat = Heartbeat.GetInstance(); this.studioSettings = StudioSettings; }
public void Shutdown() { if (null != studioSettings) { string settingsFilePath = GetSettingsFilePath(); PersistentSettings.Serialize(settingsFilePath, studioSettings); studioSettings = null; } if (null != this.renderService) { this.renderService.Shutdown(); this.renderService = null; } }