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
- TraceSection.cs
- DrawListViewSubItemEventArgs.cs
- X509Certificate2.cs
- FullTextBreakpoint.cs
- Int64AnimationBase.cs
- _HTTPDateParse.cs
- BorderGapMaskConverter.cs
- InputScopeAttribute.cs
- MsmqIntegrationMessagePool.cs
- OwnerDrawPropertyBag.cs
- PageContentCollection.cs
- Geometry.cs
- HttpHandlerActionCollection.cs
- SHA256CryptoServiceProvider.cs
- WindowsHyperlink.cs
- EntityModelSchemaGenerator.cs
- UnaryQueryOperator.cs
- HttpCookiesSection.cs
- WebBrowserNavigatingEventHandler.cs
- ProgressBar.cs
- PartialToken.cs
- IPAddress.cs
- XmlEntity.cs
- LinkConverter.cs
- XmlCDATASection.cs
- DefaultParameterValueAttribute.cs
- BitmapInitialize.cs
- FontNamesConverter.cs
- SafeCryptoHandles.cs
- DateRangeEvent.cs
- PolicyStatement.cs
- ReadWriteControlDesigner.cs
- ModelTypeConverter.cs
- AutoGeneratedFieldProperties.cs
- AudioFileOut.cs
- XmlWriterSettings.cs
- rsa.cs
- WebPartVerbsEventArgs.cs
- SamlEvidence.cs
- DataGridViewRowEventArgs.cs
- VectorValueSerializer.cs
- OSEnvironmentHelper.cs
- TracingConnection.cs
- StatusBarItem.cs
- ContractCodeDomInfo.cs
- TokenBasedSetEnumerator.cs
- ValidatingReaderNodeData.cs
- OdbcParameter.cs
- TaskFormBase.cs
- KeysConverter.cs
- SaveRecipientRequest.cs
- PngBitmapDecoder.cs
- BufferAllocator.cs
- EntryPointNotFoundException.cs
- WebPartExportVerb.cs
- SocketPermission.cs
- StrongNamePublicKeyBlob.cs
- XmlAttributeProperties.cs
- SqlPersonalizationProvider.cs
- DesignerDataSchemaClass.cs
- MetadataSource.cs
- StringTraceRecord.cs
- ObjectListDesigner.cs
- Delegate.cs
- PtsHost.cs
- ZipIORawDataFileBlock.cs
- InfiniteTimeSpanConverter.cs
- DataObjectEventArgs.cs
- PersonalizationAdministration.cs
- ProjectedSlot.cs
- DbParameterCollectionHelper.cs
- SHA384CryptoServiceProvider.cs
- SettingsBindableAttribute.cs
- WeakReferenceEnumerator.cs
- NetworkStream.cs
- PropertyOrder.cs
- SafeEventLogReadHandle.cs
- ChannelSinkStacks.cs
- RtfFormatStack.cs
- AddInToken.cs
- DataViewSetting.cs
- ColorInterpolationModeValidation.cs
- ClientTargetCollection.cs
- XPathException.cs
- UnicastIPAddressInformationCollection.cs
- DbProviderConfigurationHandler.cs
- OdbcDataAdapter.cs
- FillBehavior.cs
- _UriTypeConverter.cs
- PlainXmlSerializer.cs
- XmlDataLoader.cs
- WorkflowWebService.cs
- FamilyMapCollection.cs
- util.cs
- Util.cs
- GiveFeedbackEvent.cs
- TextTreeUndoUnit.cs
- RequestCacheEntry.cs
- ColumnWidthChangingEvent.cs
- NativeMethods.cs