Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / xsp / System / Web / UI / RootBuilder.cs / 2 / 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; } } } }[To be supplied.] ///
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- SQLInt16Storage.cs
- ArrayWithOffset.cs
- X509CertificateInitiatorServiceCredential.cs
- XmlSchemaValidator.cs
- MergeEnumerator.cs
- PatternMatcher.cs
- TransformGroup.cs
- FilterQueryOptionExpression.cs
- FrameworkElementFactory.cs
- PipelineModuleStepContainer.cs
- GridViewSortEventArgs.cs
- MouseActionConverter.cs
- DesignerObjectListAdapter.cs
- XmlSchemaComplexType.cs
- DirectoryInfo.cs
- WebPartDisplayModeCollection.cs
- MobileControlBuilder.cs
- EventHandlersDesigner.cs
- WsatTransactionInfo.cs
- TypeInitializationException.cs
- NavigationPropertyAccessor.cs
- DocumentXmlWriter.cs
- ProfileSettingsCollection.cs
- SlipBehavior.cs
- DynamicPropertyHolder.cs
- Translator.cs
- SchemaImporterExtensionsSection.cs
- ConnectionPool.cs
- HttpCookiesSection.cs
- IdnMapping.cs
- SyncOperationState.cs
- BindingNavigatorDesigner.cs
- SpecialFolderEnumConverter.cs
- SqlProvider.cs
- DictionaryBase.cs
- DocumentApplication.cs
- XmlDocumentType.cs
- SqlClientPermission.cs
- ListenerUnsafeNativeMethods.cs
- AssemblyResourceLoader.cs
- ColumnWidthChangingEvent.cs
- ThicknessAnimationUsingKeyFrames.cs
- StatusBarDrawItemEvent.cs
- ConnectionsZone.cs
- EdmSchemaAttribute.cs
- DbConnectionPoolCounters.cs
- ColumnHeaderConverter.cs
- ResourceReferenceExpression.cs
- IgnoreSection.cs
- BamlLocalizerErrorNotifyEventArgs.cs
- WindowPattern.cs
- ProtocolsConfigurationHandler.cs
- ProxyAttribute.cs
- MsmqNonTransactedPoisonHandler.cs
- GridProviderWrapper.cs
- LinearKeyFrames.cs
- AppDomainShutdownMonitor.cs
- DateTimeSerializationSection.cs
- ApplicationInfo.cs
- DataGridPagerStyle.cs
- FieldDescriptor.cs
- GeneralTransform3DTo2DTo3D.cs
- StrokeNode.cs
- ManipulationCompletedEventArgs.cs
- HtmlTableRow.cs
- VariableAction.cs
- ResourcesChangeInfo.cs
- UndoManager.cs
- sapiproxy.cs
- ActivityContext.cs
- ServiceAuthorizationBehavior.cs
- MimeTypePropertyAttribute.cs
- AttachedPropertyInfo.cs
- TypeToTreeConverter.cs
- GenericRootAutomationPeer.cs
- ContentFileHelper.cs
- GuidelineSet.cs
- BaseValidator.cs
- FtpWebResponse.cs
- PrimitiveXmlSerializers.cs
- HeaderUtility.cs
- AssemblyName.cs
- FusionWrap.cs
- PrintPreviewControl.cs
- ZipIOExtraFieldZip64Element.cs
- WCFServiceClientProxyGenerator.cs
- LineSegment.cs
- OracleInternalConnection.cs
- AppearanceEditorPart.cs
- SyndicationDeserializer.cs
- EntityDataSourceChangedEventArgs.cs
- DetailsViewUpdatedEventArgs.cs
- ViewStateAttachedPropertyFeature.cs
- SignatureToken.cs
- PixelFormat.cs
- ResXFileRef.cs
- SelectorItemAutomationPeer.cs
- RecordsAffectedEventArgs.cs
- DesigntimeLicenseContextSerializer.cs
- ExpressionEditorAttribute.cs