Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / fx / src / xsp / System / Web / UI / RootBuilder.cs / 1 / RootBuilder.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /* * Implements the root builder * * Copyright (c) 1998 Microsoft Corporation */ namespace System.Web.UI { using System.Runtime.InteropServices; using System; using System.Collections; using System.IO; using System.Reflection; using System.Web; using System.Web.Util; using System.Security.Permissions; ////// /// [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] [AspNetHostingPermission(SecurityAction.InheritanceDemand, Level=AspNetHostingPermissionLevel.Minimal)] public class RootBuilder : TemplateBuilder { private MainTagNameToTypeMapper _typeMapper; // Contains a mapping of all objects to their associated builders private IDictionary _builtObjects; public RootBuilder() { } ///[To be supplied.] ////// public RootBuilder(TemplateParser parser) { } public IDictionary BuiltObjects { get { // Store any objects created by this control builder // so we can properly persist items if (_builtObjects == null) { _builtObjects = new Hashtable(ReferenceKeyComparer.Default); } return _builtObjects; } } internal void SetTypeMapper(MainTagNameToTypeMapper typeMapper) { _typeMapper = typeMapper; } ///[To be supplied.] ////// public override Type GetChildControlType(string tagName, IDictionary attribs) { // Is there a type to handle this control Type type = _typeMapper.GetControlType(tagName, attribs, true /*fAllowHtmlTags*/); return type; } internal override void PrepareNoCompilePageSupport() { base.PrepareNoCompilePageSupport(); // This is needed to break any connection with the TemplateParser, allowing it // to be fully collected when the parsing is complete _typeMapper = null; } private class ReferenceKeyComparer : IComparer, IEqualityComparer { internal static readonly ReferenceKeyComparer Default = new ReferenceKeyComparer(); bool IEqualityComparer.Equals(object x, object y) { return Object.ReferenceEquals(x, y); } int IEqualityComparer.GetHashCode(object obj) { return obj.GetHashCode(); } int IComparer.Compare(object x, object y) { if (Object.ReferenceEquals(x, y)) { return 0; } if (x == null) { return -1; } if (y == null) { return 1; } return 1; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //[To be supplied.] ///// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /* * Implements the root builder * * Copyright (c) 1998 Microsoft Corporation */ namespace System.Web.UI { using System.Runtime.InteropServices; using System; using System.Collections; using System.IO; using System.Reflection; using System.Web; using System.Web.Util; using System.Security.Permissions; ////// /// [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] [AspNetHostingPermission(SecurityAction.InheritanceDemand, Level=AspNetHostingPermissionLevel.Minimal)] public class RootBuilder : TemplateBuilder { private MainTagNameToTypeMapper _typeMapper; // Contains a mapping of all objects to their associated builders private IDictionary _builtObjects; public RootBuilder() { } ///[To be supplied.] ////// public RootBuilder(TemplateParser parser) { } public IDictionary BuiltObjects { get { // Store any objects created by this control builder // so we can properly persist items if (_builtObjects == null) { _builtObjects = new Hashtable(ReferenceKeyComparer.Default); } return _builtObjects; } } internal void SetTypeMapper(MainTagNameToTypeMapper typeMapper) { _typeMapper = typeMapper; } ///[To be supplied.] ////// public override Type GetChildControlType(string tagName, IDictionary attribs) { // Is there a type to handle this control Type type = _typeMapper.GetControlType(tagName, attribs, true /*fAllowHtmlTags*/); return type; } internal override void PrepareNoCompilePageSupport() { base.PrepareNoCompilePageSupport(); // This is needed to break any connection with the TemplateParser, allowing it // to be fully collected when the parsing is complete _typeMapper = null; } private class ReferenceKeyComparer : IComparer, IEqualityComparer { internal static readonly ReferenceKeyComparer Default = new ReferenceKeyComparer(); bool IEqualityComparer.Equals(object x, object y) { return Object.ReferenceEquals(x, y); } int IEqualityComparer.GetHashCode(object obj) { return obj.GetHashCode(); } int IComparer.Compare(object x, object y) { if (Object.ReferenceEquals(x, y)) { return 0; } if (x == null) { return -1; } if (y == null) { return 1; } return 1; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.[To be supplied.] ///
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ToolStripDesignerUtils.cs
- GroupBox.cs
- PrivateFontCollection.cs
- XslCompiledTransform.cs
- DataGridViewDataErrorEventArgs.cs
- EntityDataSourceReferenceGroup.cs
- FieldBuilder.cs
- ListViewItem.cs
- ImageList.cs
- RangeContentEnumerator.cs
- OleDbException.cs
- StorageConditionPropertyMapping.cs
- SliderAutomationPeer.cs
- DXD.cs
- ManagementOperationWatcher.cs
- _ReceiveMessageOverlappedAsyncResult.cs
- IndentedTextWriter.cs
- ConstrainedDataObject.cs
- ChineseLunisolarCalendar.cs
- CapabilitiesPattern.cs
- CryptoStream.cs
- Viewport3DAutomationPeer.cs
- SwitchAttribute.cs
- EncoderReplacementFallback.cs
- ProfileModule.cs
- ListBindingHelper.cs
- RootBrowserWindowProxy.cs
- StorageConditionPropertyMapping.cs
- PropertyGrid.cs
- CaseInsensitiveComparer.cs
- GAC.cs
- XhtmlConformanceSection.cs
- DebugInfoGenerator.cs
- StringBlob.cs
- PageEventArgs.cs
- FamilyMapCollection.cs
- PropertyCollection.cs
- CallbackValidator.cs
- MenuStrip.cs
- SafeRightsManagementSessionHandle.cs
- Serializer.cs
- GACMembershipCondition.cs
- EncryptedKeyIdentifierClause.cs
- MediaElement.cs
- MetafileHeaderWmf.cs
- PropertyMetadata.cs
- EndPoint.cs
- AVElementHelper.cs
- BaseValidator.cs
- TextUtf8RawTextWriter.cs
- SiteMapDataSource.cs
- StrokeIntersection.cs
- FixedSOMPage.cs
- MarshalByValueComponent.cs
- CalendarAutoFormatDialog.cs
- WizardStepBase.cs
- ThousandthOfEmRealDoubles.cs
- StateManagedCollection.cs
- EventNotify.cs
- Renderer.cs
- WebBrowserNavigatingEventHandler.cs
- BitmapFrame.cs
- PersistenceProviderDirectory.cs
- SortedSet.cs
- SettingsPropertyWrongTypeException.cs
- RectAnimationUsingKeyFrames.cs
- InputLanguageCollection.cs
- TreeViewItemAutomationPeer.cs
- EntityCommandCompilationException.cs
- SqlRecordBuffer.cs
- ReaderWriterLockSlim.cs
- InfiniteIntConverter.cs
- XmlEnumAttribute.cs
- GenericNameHandler.cs
- EventEntry.cs
- Process.cs
- BasicViewGenerator.cs
- GridViewSelectEventArgs.cs
- ObjectDataSourceSelectingEventArgs.cs
- HttpWebResponse.cs
- XmlObjectSerializerContext.cs
- SharedPerformanceCounter.cs
- RSAOAEPKeyExchangeDeformatter.cs
- InfiniteIntConverter.cs
- ipaddressinformationcollection.cs
- ActiveDesignSurfaceEvent.cs
- CrossAppDomainChannel.cs
- TextStore.cs
- log.cs
- AttributeProviderAttribute.cs
- SchemaEntity.cs
- TableItemPattern.cs
- ConfigXmlComment.cs
- ImageDrawing.cs
- DataSysAttribute.cs
- ComponentResourceManager.cs
- BamlLocalizableResourceKey.cs
- COM2ColorConverter.cs
- TextEditor.cs
- SqlCommandBuilder.cs