Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / 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
- X509CertificateValidator.cs
- XPathScanner.cs
- HtmlInputHidden.cs
- PersianCalendar.cs
- InputScopeManager.cs
- DataGridPageChangedEventArgs.cs
- DBParameter.cs
- ConfigurationManagerInternalFactory.cs
- Image.cs
- LabelDesigner.cs
- RelationshipManager.cs
- ScriptControlManager.cs
- WebPartConnectionsEventArgs.cs
- RegistryHandle.cs
- CompressionTransform.cs
- Math.cs
- MetadataHelper.cs
- ParameterBuilder.cs
- TemplateXamlTreeBuilder.cs
- SqlTriggerContext.cs
- EntityParameterCollection.cs
- EdmToObjectNamespaceMap.cs
- Literal.cs
- SortableBindingList.cs
- ColorBlend.cs
- JavaScriptObjectDeserializer.cs
- AdjustableArrowCap.cs
- AppDomainManager.cs
- HwndMouseInputProvider.cs
- HtmlSelect.cs
- DoubleAnimation.cs
- metadatamappinghashervisitor.cs
- QEncodedStream.cs
- Drawing.cs
- MetadataItemCollectionFactory.cs
- Helper.cs
- TransformGroup.cs
- CompressStream.cs
- ObsoleteAttribute.cs
- CompileXomlTask.cs
- CompilerCollection.cs
- CompiledAction.cs
- FixedDocumentPaginator.cs
- SchemaTableColumn.cs
- LinkLabelLinkClickedEvent.cs
- ThumbButtonInfoCollection.cs
- WindowsHyperlink.cs
- OrthographicCamera.cs
- OdbcParameterCollection.cs
- TextElementEnumerator.cs
- LocalBuilder.cs
- ContainerUIElement3D.cs
- TextServicesContext.cs
- SqlConnectionPoolGroupProviderInfo.cs
- FormParameter.cs
- FormViewRow.cs
- ModelVisual3D.cs
- XmlSchemaInferenceException.cs
- DataBoundLiteralControl.cs
- BehaviorEditorPart.cs
- OleDbReferenceCollection.cs
- BuildProvider.cs
- MarshalByValueComponent.cs
- BoolExpr.cs
- ContractSearchPattern.cs
- CreateDataSourceDialog.cs
- SendContent.cs
- WCFModelStrings.Designer.cs
- CompoundFileIOPermission.cs
- TemplatePropertyEntry.cs
- ControlIdConverter.cs
- ImplicitInputBrush.cs
- OneOfConst.cs
- IdentifierService.cs
- ScriptReferenceBase.cs
- PriorityQueue.cs
- DataGridViewRowHeightInfoPushedEventArgs.cs
- DiscardableAttribute.cs
- ZipPackagePart.cs
- InvokeHandlers.cs
- ParameterToken.cs
- SqlClientFactory.cs
- ColorAnimationBase.cs
- SelectionGlyphBase.cs
- BoundingRectTracker.cs
- CounterSet.cs
- BackStopAuthenticationModule.cs
- ShaperBuffers.cs
- HwndProxyElementProvider.cs
- GeneralTransformGroup.cs
- QueryContinueDragEventArgs.cs
- XmlSchemaParticle.cs
- StylusButtonCollection.cs
- ObjRef.cs
- MailWriter.cs
- BufferModesCollection.cs
- SendContent.cs
- SQLUtility.cs
- PointAnimation.cs
- SplitterCancelEvent.cs