Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / XmlUtils / System / Xml / Xsl / XsltOld / CopyNamespacesAction.cs / 1305376 / CopyNamespacesAction.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //----------------------------------------------------------------------------- namespace System.Xml.Xsl.XsltOld { using Res = System.Xml.Utils.Res; using System; using System.Diagnostics; using System.Xml; using System.Xml.XPath; internal sealed class CopyNamespacesAction : Action { private const int BeginEvent = 2; private const int TextEvent = 3; private const int EndEvent = 4; private const int Advance = 5; private static CopyNamespacesAction s_Action = new CopyNamespacesAction(); internal static CopyNamespacesAction GetAction() { Debug.Assert(s_Action != null); return s_Action; } internal override void Execute(Processor processor, ActionFrame frame) { Debug.Assert(processor != null && frame != null); while (processor.CanContinue) { switch (frame.State) { case Initialized: if (frame.Node.MoveToFirstNamespace(XPathNamespaceScope.ExcludeXml) == false) { frame.Finished(); break; } frame.State = BeginEvent; goto case BeginEvent; case BeginEvent: Debug.Assert(frame.State == BeginEvent); Debug.Assert(frame.Node.NodeType == XPathNodeType.Namespace); if (processor.BeginEvent(XPathNodeType.Namespace, null, frame.Node.LocalName, frame.Node.Value, false) == false) { // This one wasn't output break; } frame.State = EndEvent; continue; case EndEvent: Debug.Assert(frame.State == EndEvent); Debug.Assert(frame.Node.NodeType == XPathNodeType.Namespace); if (processor.EndEvent(XPathNodeType.Namespace) == false) { // This one wasn't output break; } frame.State = Advance; continue; case Advance: Debug.Assert(frame.State == Advance); Debug.Assert(frame.Node.NodeType == XPathNodeType.Namespace); if (frame.Node.MoveToNextNamespace(XPathNamespaceScope.ExcludeXml)) { frame.State = BeginEvent; continue; } else { frame.Node.MoveToParent(); frame.Finished(); break; } } break; }// while } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- TypeConverterValueSerializer.cs
- TableChangeProcessor.cs
- SystemColors.cs
- basenumberconverter.cs
- DesignerAttributeInfo.cs
- IsolatedStorageFilePermission.cs
- ConfigXmlComment.cs
- LeaseManager.cs
- XmlUtf8RawTextWriter.cs
- Button.cs
- HScrollProperties.cs
- HMACRIPEMD160.cs
- LabelEditEvent.cs
- ImpersonateTokenRef.cs
- MappingItemCollection.cs
- Triangle.cs
- CodeTryCatchFinallyStatement.cs
- Journaling.cs
- ImmutableObjectAttribute.cs
- Rect3D.cs
- HijriCalendar.cs
- ZoomComboBox.cs
- FixedTextView.cs
- Parameter.cs
- PartDesigner.cs
- ObjectManager.cs
- cookiecollection.cs
- EpmHelper.cs
- InvalidFilterCriteriaException.cs
- CursorInteropHelper.cs
- FixedSOMPageConstructor.cs
- Vector3dCollection.cs
- MemberJoinTreeNode.cs
- SchemaManager.cs
- PeerApplicationLaunchInfo.cs
- EndPoint.cs
- WindowHideOrCloseTracker.cs
- Vector3DKeyFrameCollection.cs
- EditorResources.cs
- MimeMapping.cs
- ConstraintCollection.cs
- HashStream.cs
- SqlInternalConnectionSmi.cs
- VectorKeyFrameCollection.cs
- NullableBoolConverter.cs
- XPathScanner.cs
- SchemaImporterExtensionElement.cs
- ContainerParaClient.cs
- AssemblyHelper.cs
- RegexWriter.cs
- WebPartDisplayModeEventArgs.cs
- CompressedStack.cs
- CommandLibraryHelper.cs
- Interlocked.cs
- EndpointDispatcher.cs
- NetMsmqBindingCollectionElement.cs
- SharedTcpTransportManager.cs
- FreeFormDesigner.cs
- EasingQuaternionKeyFrame.cs
- WebResourceAttribute.cs
- BitmapEffectOutputConnector.cs
- TabControlCancelEvent.cs
- UriTemplateMatchException.cs
- DisplayNameAttribute.cs
- SiteMapNodeItemEventArgs.cs
- TableLayout.cs
- MonthCalendar.cs
- UnsafeNativeMethods.cs
- EventsTab.cs
- Hashtable.cs
- RangeValueProviderWrapper.cs
- InvokeWebService.cs
- ProtocolsConfiguration.cs
- BindingGroup.cs
- DBCommand.cs
- WsrmMessageInfo.cs
- MbpInfo.cs
- QilUnary.cs
- SingleConverter.cs
- Util.cs
- MediaPlayerState.cs
- UserCancellationException.cs
- ComNativeDescriptor.cs
- ThreadPool.cs
- ListenerSessionConnection.cs
- SafeFileMapViewHandle.cs
- AutomationPropertyInfo.cs
- ModuleBuilder.cs
- UITypeEditor.cs
- CatalogPartChrome.cs
- SessionEndedEventArgs.cs
- OperationAbortedException.cs
- DataListItem.cs
- OptionalMessageQuery.cs
- SoapTypeAttribute.cs
- TailCallAnalyzer.cs
- EditorAttributeInfo.cs
- DataServiceException.cs
- BitmapCodecInfoInternal.cs
- PropertyPathConverter.cs