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
- Model3DGroup.cs
- XmlBinaryWriter.cs
- RowBinding.cs
- SafeFileMapViewHandle.cs
- ChannelServices.cs
- SoapSchemaExporter.cs
- PageVisual.cs
- InteropEnvironment.cs
- XmlSecureResolver.cs
- SiteMapPath.cs
- DataGridDetailsPresenterAutomationPeer.cs
- NumericUpDownAcceleration.cs
- InfoCardBaseException.cs
- OrderedDictionaryStateHelper.cs
- PageBreakRecord.cs
- TemplateKey.cs
- ProtocolsConfigurationEntry.cs
- NCryptNative.cs
- SqlDataSourceView.cs
- SizeChangedInfo.cs
- RSAPKCS1SignatureFormatter.cs
- DbParameterCollection.cs
- UIElement3D.cs
- CodeDomSerializationProvider.cs
- ComponentEditorPage.cs
- TraversalRequest.cs
- AudioException.cs
- GradientStop.cs
- XPathDocumentNavigator.cs
- MethodCallConverter.cs
- CompilerScope.Storage.cs
- WCFModelStrings.Designer.cs
- DiagnosticsConfigurationHandler.cs
- DesignerMetadata.cs
- CodePageUtils.cs
- XmlCharCheckingReader.cs
- CharacterString.cs
- BitmapPalettes.cs
- TagMapCollection.cs
- FileVersion.cs
- OracleDateTime.cs
- XmlnsPrefixAttribute.cs
- DrawItemEvent.cs
- StreamAsIStream.cs
- QueryContinueDragEventArgs.cs
- ScriptControlDescriptor.cs
- RelatedView.cs
- XslAstAnalyzer.cs
- DBDataPermission.cs
- EllipseGeometry.cs
- UInt64Storage.cs
- MatrixCamera.cs
- SqlDataSourceSelectingEventArgs.cs
- CommandField.cs
- TemplateControlParser.cs
- EndpointDiscoveryMetadataCD1.cs
- KnowledgeBase.cs
- StoryFragments.cs
- CheckBoxRenderer.cs
- RenameRuleObjectDialog.Designer.cs
- SqlComparer.cs
- ImmutablePropertyDescriptorGridEntry.cs
- SynchronizingStream.cs
- NullExtension.cs
- RowVisual.cs
- EndpointConfigContainer.cs
- IntermediatePolicyValidator.cs
- SelfIssuedAuthRSAPKCS1SignatureFormatter.cs
- SiteMapNodeItemEventArgs.cs
- PermissionSetTriple.cs
- GuidelineCollection.cs
- LoginUtil.cs
- MouseActionConverter.cs
- CleanUpVirtualizedItemEventArgs.cs
- SerialPort.cs
- XmlUTF8TextWriter.cs
- UDPClient.cs
- CompositeKey.cs
- ValidatorAttribute.cs
- DataListItemCollection.cs
- EdmError.cs
- FilterEventArgs.cs
- OdbcParameter.cs
- PrtTicket_Public.cs
- InternalsVisibleToAttribute.cs
- _ConnectionGroup.cs
- LayoutDump.cs
- TraceListener.cs
- DataGridViewRowsAddedEventArgs.cs
- FontFamilyConverter.cs
- StatusStrip.cs
- TagPrefixCollection.cs
- TreeBuilder.cs
- URLAttribute.cs
- ItemDragEvent.cs
- WindowsListViewGroup.cs
- QueryableDataSourceEditData.cs
- PathSegment.cs
- AutoGeneratedFieldProperties.cs
- XPathParser.cs