Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / fx / src / CompMod / System / Diagnostics / SourceElementsCollection.cs / 1 / SourceElementsCollection.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
using System.Configuration;
using System.Collections;
using System.Collections.Specialized;
using System.Xml;
namespace System.Diagnostics {
[ConfigurationCollection(typeof(SourceElement), AddItemName = "source",
CollectionType = ConfigurationElementCollectionType.BasicMap)]
internal class SourceElementsCollection : ConfigurationElementCollection {
new public SourceElement this[string name] {
get {
return (SourceElement) BaseGet(name);
}
}
protected override string ElementName {
get {
return "source";
}
}
public override ConfigurationElementCollectionType CollectionType {
get {
return ConfigurationElementCollectionType.BasicMap;
}
}
protected override ConfigurationElement CreateNewElement() {
SourceElement se = new SourceElement();
se.Listeners.InitializeDefaultInternal();
return se;
}
protected override Object GetElementKey(ConfigurationElement element) {
return ((SourceElement) element).Name;
}
}
internal class SourceElement : ConfigurationElement {
private static readonly ConfigurationPropertyCollection _properties;
private static readonly ConfigurationProperty _propName = new ConfigurationProperty("name", typeof(string), "", ConfigurationPropertyOptions.IsRequired);
private static readonly ConfigurationProperty _propSwitchName = new ConfigurationProperty("switchName", typeof(string), null, ConfigurationPropertyOptions.None);
private static readonly ConfigurationProperty _propSwitchValue = new ConfigurationProperty("switchValue", typeof(string), null, ConfigurationPropertyOptions.None);
private static readonly ConfigurationProperty _propSwitchType = new ConfigurationProperty("switchType", typeof(string), null, ConfigurationPropertyOptions.None);
private static readonly ConfigurationProperty _propListeners = new ConfigurationProperty("listeners", typeof(ListenerElementsCollection), new ListenerElementsCollection(), ConfigurationPropertyOptions.None);
private Hashtable _attributes;
static SourceElement() {
_properties = new ConfigurationPropertyCollection();
_properties.Add(_propName);
_properties.Add(_propSwitchName);
_properties.Add(_propSwitchValue);
_properties.Add(_propSwitchType);
_properties.Add(_propListeners);
}
public Hashtable Attributes {
get {
if (_attributes == null)
_attributes = new Hashtable(StringComparer.OrdinalIgnoreCase);
return _attributes;
}
}
[ConfigurationProperty("listeners")]
public ListenerElementsCollection Listeners {
get {
return (ListenerElementsCollection) this[_propListeners];
}
}
[ConfigurationProperty("name", IsRequired=true, DefaultValue="")]
public string Name {
get {
return (string) this[_propName];
}
}
protected override ConfigurationPropertyCollection Properties {
get {
return _properties;
}
}
[ConfigurationProperty("switchName")]
public string SwitchName {
get {
return (string) this[_propSwitchName];
}
}
[ConfigurationProperty("switchValue")]
public string SwitchValue {
get {
return (string) this[_propSwitchValue];
}
}
[ConfigurationProperty("switchType")]
public string SwitchType {
get {
return (string) this[_propSwitchType];
}
}
protected override void DeserializeElement(XmlReader reader, bool serializeCollectionKey)
{
base.DeserializeElement(reader, serializeCollectionKey);
if (!String.IsNullOrEmpty(SwitchName) && !String.IsNullOrEmpty(SwitchValue))
throw new ConfigurationErrorsException(SR.GetString(SR.Only_specify_one, Name));
}
protected override bool OnDeserializeUnrecognizedAttribute(String name, String value)
{
ConfigurationProperty _propDynamic = new ConfigurationProperty(name, typeof(string), value);
_properties.Add(_propDynamic);
base[_propDynamic] = value; // Add them to the property bag
Attributes.Add(name, value);
return true;
}
internal void ResetProperties()
{
// blow away any UnrecognizedAttributes that we have deserialized earlier
if (_attributes != null) {
_attributes.Clear();
_properties.Clear();
_properties.Add(_propName);
_properties.Add(_propSwitchName);
_properties.Add(_propSwitchValue);
_properties.Add(_propSwitchType);
_properties.Add(_propListeners);
}
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
using System.Configuration;
using System.Collections;
using System.Collections.Specialized;
using System.Xml;
namespace System.Diagnostics {
[ConfigurationCollection(typeof(SourceElement), AddItemName = "source",
CollectionType = ConfigurationElementCollectionType.BasicMap)]
internal class SourceElementsCollection : ConfigurationElementCollection {
new public SourceElement this[string name] {
get {
return (SourceElement) BaseGet(name);
}
}
protected override string ElementName {
get {
return "source";
}
}
public override ConfigurationElementCollectionType CollectionType {
get {
return ConfigurationElementCollectionType.BasicMap;
}
}
protected override ConfigurationElement CreateNewElement() {
SourceElement se = new SourceElement();
se.Listeners.InitializeDefaultInternal();
return se;
}
protected override Object GetElementKey(ConfigurationElement element) {
return ((SourceElement) element).Name;
}
}
internal class SourceElement : ConfigurationElement {
private static readonly ConfigurationPropertyCollection _properties;
private static readonly ConfigurationProperty _propName = new ConfigurationProperty("name", typeof(string), "", ConfigurationPropertyOptions.IsRequired);
private static readonly ConfigurationProperty _propSwitchName = new ConfigurationProperty("switchName", typeof(string), null, ConfigurationPropertyOptions.None);
private static readonly ConfigurationProperty _propSwitchValue = new ConfigurationProperty("switchValue", typeof(string), null, ConfigurationPropertyOptions.None);
private static readonly ConfigurationProperty _propSwitchType = new ConfigurationProperty("switchType", typeof(string), null, ConfigurationPropertyOptions.None);
private static readonly ConfigurationProperty _propListeners = new ConfigurationProperty("listeners", typeof(ListenerElementsCollection), new ListenerElementsCollection(), ConfigurationPropertyOptions.None);
private Hashtable _attributes;
static SourceElement() {
_properties = new ConfigurationPropertyCollection();
_properties.Add(_propName);
_properties.Add(_propSwitchName);
_properties.Add(_propSwitchValue);
_properties.Add(_propSwitchType);
_properties.Add(_propListeners);
}
public Hashtable Attributes {
get {
if (_attributes == null)
_attributes = new Hashtable(StringComparer.OrdinalIgnoreCase);
return _attributes;
}
}
[ConfigurationProperty("listeners")]
public ListenerElementsCollection Listeners {
get {
return (ListenerElementsCollection) this[_propListeners];
}
}
[ConfigurationProperty("name", IsRequired=true, DefaultValue="")]
public string Name {
get {
return (string) this[_propName];
}
}
protected override ConfigurationPropertyCollection Properties {
get {
return _properties;
}
}
[ConfigurationProperty("switchName")]
public string SwitchName {
get {
return (string) this[_propSwitchName];
}
}
[ConfigurationProperty("switchValue")]
public string SwitchValue {
get {
return (string) this[_propSwitchValue];
}
}
[ConfigurationProperty("switchType")]
public string SwitchType {
get {
return (string) this[_propSwitchType];
}
}
protected override void DeserializeElement(XmlReader reader, bool serializeCollectionKey)
{
base.DeserializeElement(reader, serializeCollectionKey);
if (!String.IsNullOrEmpty(SwitchName) && !String.IsNullOrEmpty(SwitchValue))
throw new ConfigurationErrorsException(SR.GetString(SR.Only_specify_one, Name));
}
protected override bool OnDeserializeUnrecognizedAttribute(String name, String value)
{
ConfigurationProperty _propDynamic = new ConfigurationProperty(name, typeof(string), value);
_properties.Add(_propDynamic);
base[_propDynamic] = value; // Add them to the property bag
Attributes.Add(name, value);
return true;
}
internal void ResetProperties()
{
// blow away any UnrecognizedAttributes that we have deserialized earlier
if (_attributes != null) {
_attributes.Clear();
_properties.Clear();
_properties.Add(_propName);
_properties.Add(_propSwitchName);
_properties.Add(_propSwitchValue);
_properties.Add(_propSwitchType);
_properties.Add(_propListeners);
}
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- WebPartsPersonalizationAuthorization.cs
- ConversionContext.cs
- WmfPlaceableFileHeader.cs
- XmlSchemaGroupRef.cs
- RemoteX509Token.cs
- DrawingCollection.cs
- ResourceBinder.cs
- EntityException.cs
- Html32TextWriter.cs
- StatusBarPanel.cs
- dbenumerator.cs
- StrongNameMembershipCondition.cs
- GlobalProxySelection.cs
- DesignerHelpers.cs
- BitmapEffectInputData.cs
- SetterBaseCollection.cs
- SqlMethodAttribute.cs
- ContextMenuStripActionList.cs
- ViewSimplifier.cs
- MarkupCompilePass1.cs
- OutputScopeManager.cs
- Typeface.cs
- NextPreviousPagerField.cs
- Emitter.cs
- RequestCacheEntry.cs
- Socket.cs
- XmlSerializerFactory.cs
- EffectiveValueEntry.cs
- _LocalDataStoreMgr.cs
- CodeTypeDelegate.cs
- TextTreeInsertElementUndoUnit.cs
- LayoutTable.cs
- SpecialFolderEnumConverter.cs
- EmptyQuery.cs
- WebConfigurationManager.cs
- MemberAccessException.cs
- CodeExpressionRuleDeclaration.cs
- FactoryRecord.cs
- DataSourceComponent.cs
- StreamWriter.cs
- XDRSchema.cs
- SingleResultAttribute.cs
- XmlFormatExtensionPointAttribute.cs
- ExtendedProperty.cs
- DefaultValidator.cs
- MenuDesigner.cs
- ProxyWebPartManager.cs
- KeyedPriorityQueue.cs
- CompoundFileReference.cs
- RemotingConfiguration.cs
- HtmlFormWrapper.cs
- ResXResourceReader.cs
- SQLSingleStorage.cs
- M3DUtil.cs
- IdnElement.cs
- StateBag.cs
- BitmapData.cs
- NotFiniteNumberException.cs
- AppLevelCompilationSectionCache.cs
- JsonFormatWriterGenerator.cs
- RijndaelCryptoServiceProvider.cs
- Assert.cs
- Rect3DValueSerializer.cs
- StateMachineExecutionState.cs
- ForeignConstraint.cs
- NotifyParentPropertyAttribute.cs
- LightweightCodeGenerator.cs
- ListParaClient.cs
- List.cs
- SplitContainerDesigner.cs
- DataGridViewLayoutData.cs
- StorageMappingItemCollection.cs
- LedgerEntry.cs
- GeometryValueSerializer.cs
- ToolStripDropDownClosedEventArgs.cs
- SafeFileMappingHandle.cs
- ObfuscationAttribute.cs
- Stack.cs
- XmlSchemaRedefine.cs
- FileVersionInfo.cs
- FilteredSchemaElementLookUpTable.cs
- DeadCharTextComposition.cs
- TextElementAutomationPeer.cs
- FixedSOMLineRanges.cs
- UnsafeNativeMethods.cs
- ObjectDataSourceEventArgs.cs
- EventHandlers.cs
- CodeMethodReturnStatement.cs
- ProfileModule.cs
- BindingCollection.cs
- QuaternionAnimationUsingKeyFrames.cs
- PointLight.cs
- HttpRawResponse.cs
- AdapterDictionary.cs
- TextEncodedRawTextWriter.cs
- CompressedStack.cs
- OdbcConnectionString.cs
- RectangleF.cs
- MemberDescriptor.cs
- MailMessageEventArgs.cs