private void InitializeConfigElement(ChoBaseConfigurationElement configElement, Type type) { if (configElement == null) { return; } configElement.DefaultConfigSectionHandlerType = ConfigSectionHandlerType; configElement.ConfigFilePath = ConfigFilePath; ChoStandardConfigurationMetaDataInfo standardConfigurationMetaDataInfo = new ChoStandardConfigurationMetaDataInfo(); standardConfigurationMetaDataInfo.BindingMode = BindingMode; if (ConfigStorageType != null) { standardConfigurationMetaDataInfo.ConfigStorageType = ConfigStorageType.AssemblyQualifiedName; } standardConfigurationMetaDataInfo.ConfigurationMetaDataLogInfo = new ChoConfigurationMetaDataLogInfo(); standardConfigurationMetaDataInfo.ConfigurationMetaDataLogInfo.LogCondition = LogCondition; standardConfigurationMetaDataInfo.ConfigurationMetaDataLogInfo.LogTimeStampFormat = LogTimeStampFormat; standardConfigurationMetaDataInfo.ConfigurationMetaDataLogInfo.LogDirectory = LogDirectory; standardConfigurationMetaDataInfo.ConfigurationMetaDataLogInfo.LogFileName = LogFileName.IsNullOrEmpty() ? ChoPath.AddExtension(type.FullName, ChoReservedFileExt.Log) : LogFileName; standardConfigurationMetaDataInfo.Defaultable = Defaultable; standardConfigurationMetaDataInfo.IgnoreCase = IgnoreCase; standardConfigurationMetaDataInfo.Silent = Silent; configElement.MetaDataInfo = standardConfigurationMetaDataInfo; LoadParameters(configElement); ChoConfigurationMetaDataManager.SetDefaultMetaDataInfo(configElement); }
public override bool Equals(ChoBaseConfigurationMetaDataInfo obj) { if (object.ReferenceEquals(obj, null)) { return(false); } if (!(obj is ChoStandardConfigurationMetaDataInfo)) { return(false); } if (!base.Equals(obj)) { return(false); } ChoStandardConfigurationMetaDataInfo other = obj as ChoStandardConfigurationMetaDataInfo; if (other != null) { if (BindingMode != other.BindingMode) { return(false); } if (Defaultable != other.Defaultable) { return(false); } if (IgnoreCase != other.IgnoreCase) { return(false); } if (Silent != other.Silent) { return(false); } if (Parameters != other.Parameters) { return(false); } if (ConfigFilePath != other.ConfigFilePath) { return(false); } if (!ChoObject.Equals <ChoConfigurationMetaDataLogInfo>(ConfigurationMetaDataLogInfo, other.ConfigurationMetaDataLogInfo)) { return(false); } } return(true); }
public override void Merge(ChoBaseConfigurationMetaDataInfo source) { base.Merge(source); ChoStandardConfigurationMetaDataInfo other = source as ChoStandardConfigurationMetaDataInfo; if (other != null) { ConfigurationMetaDataLogInfo = ChoObject.Merge(ConfigurationMetaDataLogInfo, other.ConfigurationMetaDataLogInfo); } }
public override ChoBaseConfigurationMetaDataInfo Clone() { ChoStandardConfigurationMetaDataInfo info = new ChoStandardConfigurationMetaDataInfo(); info.ConfigStorageType = ConfigStorageType; info.BindingMode = BindingMode; info.Defaultable = Defaultable; info.Silent = Silent; info.IgnoreCase = IgnoreCase; info.ConfigurationMetaDataLogInfo = ConfigurationMetaDataLogInfo != null?ConfigurationMetaDataLogInfo.Clone() : null; info.Parameters = Parameters; info.ConfigFilePath = ConfigFilePath; return(info); }
public override ChoBaseConfigurationElement GetMe(Type type) { ChoGuard.ArgumentNotNull(type, "Type"); if (_configurationElement == null) { lock (SyncRoot) { if (_configurationElement == null) { object customConfigurationSectionHandler = Activator.CreateInstance(_configurationSectionHandlerType) as IChoCustomConfigurationSectionHandler; if (customConfigurationSectionHandler == null) { throw new ChoConfigurationConstructionException(String.Format("Missing {0} custom configuration section handler.", _configurationSectionHandlerType.FullName)); } if (!(customConfigurationSectionHandler is IChoCustomConfigurationSectionHandler)) { throw new ChoConfigurationConstructionException(String.Format("Mismatched {0} custom configuration section handler type specified.", _configurationSectionHandlerType.FullName)); } _configurationElement = new ChoCustomConfigurationElement(customConfigurationSectionHandler as IChoCustomConfigurationSectionHandler, _parameters); _configurationElement.DefaultConfigSectionHandlerType = ConfigSectionHandlerType; _configurationElement.ConfigFilePath = ConfigFilePath; ChoStandardConfigurationMetaDataInfo standardConfigurationMetaDataInfo = new ChoStandardConfigurationMetaDataInfo(); standardConfigurationMetaDataInfo.BindingMode = BindingMode; if (ConfigStorageType != null) { standardConfigurationMetaDataInfo.ConfigStorageType = ConfigStorageType.AssemblyQualifiedName; } standardConfigurationMetaDataInfo.ConfigurationMetaDataLogInfo = new ChoConfigurationMetaDataLogInfo(); standardConfigurationMetaDataInfo.ConfigurationMetaDataLogInfo.LogCondition = LogCondition; standardConfigurationMetaDataInfo.ConfigurationMetaDataLogInfo.LogTimeStampFormat = LogTimeStampFormat; standardConfigurationMetaDataInfo.ConfigurationMetaDataLogInfo.LogDirectory = LogDirectory; standardConfigurationMetaDataInfo.ConfigurationMetaDataLogInfo.LogFileName = LogFileName.IsNullOrEmpty() ? ChoPath.AddExtension(type.FullName, ChoReservedFileExt.Log) : LogFileName; standardConfigurationMetaDataInfo.Defaultable = Defaultable; _configurationElement.MetaDataInfo = standardConfigurationMetaDataInfo; LoadParameters(_configurationElement); } } } return(_configurationElement); }
protected override void ApplyConfigMetaData(ChoBaseConfigurationMetaDataInfo configurationMetaDataInfo) { if (configurationMetaDataInfo == null || !(configurationMetaDataInfo is ChoStandardConfigurationMetaDataInfo)) { return; } ChoStandardConfigurationMetaDataInfo standardConfigurationMetaDataInfo = configurationMetaDataInfo as ChoStandardConfigurationMetaDataInfo; BindingMode = standardConfigurationMetaDataInfo.BindingMode; Silent = standardConfigurationMetaDataInfo.Silent; Defaultable = standardConfigurationMetaDataInfo.Defaultable; IgnoreCase = standardConfigurationMetaDataInfo.IgnoreCase; if (standardConfigurationMetaDataInfo.ConfigurationMetaDataLogInfo != null) { LogCondition = standardConfigurationMetaDataInfo.ConfigurationMetaDataLogInfo.LogCondition; LogTimeStampFormat = standardConfigurationMetaDataInfo.ConfigurationMetaDataLogInfo.LogTimeStampFormat; LogDirectory = standardConfigurationMetaDataInfo.ConfigurationMetaDataLogInfo.LogDirectory; LogFileName = standardConfigurationMetaDataInfo.ConfigurationMetaDataLogInfo.LogFileName; } }