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
- AccessibleObject.cs
- _RequestCacheProtocol.cs
- Panel.cs
- DeleteIndexBinder.cs
- bindurihelper.cs
- fixedPageContentExtractor.cs
- XmlCharCheckingWriter.cs
- IBuiltInEvidence.cs
- ToolStripSystemRenderer.cs
- PointAnimation.cs
- ConfigurationStrings.cs
- FixedBufferAttribute.cs
- FileDialogCustomPlacesCollection.cs
- ContractInferenceHelper.cs
- Clause.cs
- XmlSchemaComplexContent.cs
- JournalNavigationScope.cs
- ShapeTypeface.cs
- ScriptingJsonSerializationSection.cs
- TextControl.cs
- PropertyPushdownHelper.cs
- QilReplaceVisitor.cs
- MetadataFile.cs
- DbConnectionHelper.cs
- DataGridViewComboBoxColumn.cs
- FunctionNode.cs
- ElementProxy.cs
- ObjectListCommandsPage.cs
- XmlNullResolver.cs
- Profiler.cs
- TableItemPattern.cs
- TextSerializer.cs
- StorageEntityContainerMapping.cs
- SecurityPermission.cs
- ContextBase.cs
- SymmetricKeyWrap.cs
- EmptyCollection.cs
- TouchPoint.cs
- XmlParserContext.cs
- EntityDataSourceContextDisposingEventArgs.cs
- RealProxy.cs
- SigningProgress.cs
- RepeatButtonAutomationPeer.cs
- SqlTriggerContext.cs
- ProfileSettingsCollection.cs
- GeometryConverter.cs
- ConfigurationManagerHelperFactory.cs
- TemplatedMailWebEventProvider.cs
- ReaderContextStackData.cs
- KeyboardNavigation.cs
- DesignerCalendarAdapter.cs
- DriveNotFoundException.cs
- WebPartExportVerb.cs
- IfAction.cs
- XamlStackWriter.cs
- StrokeRenderer.cs
- SafeUserTokenHandle.cs
- StringValidator.cs
- RelationshipEntry.cs
- DataGridViewUtilities.cs
- CodeDOMUtility.cs
- WorkflowDurableInstance.cs
- SoapHeader.cs
- XmlSchemaSimpleTypeList.cs
- TracePayload.cs
- DateTimeConverter.cs
- StylusSystemGestureEventArgs.cs
- BrowserCapabilitiesCodeGenerator.cs
- DataGridViewUtilities.cs
- ServiceOperationListItem.cs
- __Filters.cs
- GridViewColumn.cs
- FlowDocument.cs
- XmlSerializerSection.cs
- ActivityDesignerLayoutSerializers.cs
- FileLogRecordHeader.cs
- ContextStack.cs
- Simplifier.cs
- SerializationObjectManager.cs
- DbDataSourceEnumerator.cs
- CodeExporter.cs
- PathSegmentCollection.cs
- CollectionViewGroupRoot.cs
- DrawingCollection.cs
- x509store.cs
- ObjectDataSourceMethodEventArgs.cs
- Utilities.cs
- SmtpNetworkElement.cs
- FontStyle.cs
- SQLRoleProvider.cs
- OptimizedTemplateContentHelper.cs
- ExceptionUtil.cs
- Tuple.cs
- AlignmentYValidation.cs
- ConnectivityStatus.cs
- CodeIdentifier.cs
- ConvertersCollection.cs
- ClearCollection.cs
- XmlExceptionHelper.cs
- Debug.cs