Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / fx / src / XmlUtils / System / Xml / Xsl / XsltOld / CopyNamespacesAction.cs / 1 / 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. //------------------------------------------------------------------------------ //// 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
- DataShape.cs
- WeakEventManager.cs
- PropertyChangedEventManager.cs
- OleDbInfoMessageEvent.cs
- RunWorkerCompletedEventArgs.cs
- FixedLineResult.cs
- LateBoundBitmapDecoder.cs
- PropertyChangedEventArgs.cs
- TransportSecurityProtocolFactory.cs
- ElementFactory.cs
- WindowsEditBox.cs
- DataServiceProviderMethods.cs
- TextChange.cs
- PropertyToken.cs
- Point.cs
- IisTraceWebEventProvider.cs
- UserPersonalizationStateInfo.cs
- DataService.cs
- UserNameSecurityTokenAuthenticator.cs
- WebReferencesBuildProvider.cs
- OlePropertyStructs.cs
- IgnoreSection.cs
- SystemTcpConnection.cs
- SecurityChannelListener.cs
- InputManager.cs
- ISO2022Encoding.cs
- GenericFlowSwitchHelper.cs
- ParameterCollection.cs
- PickBranchDesigner.xaml.cs
- UserPersonalizationStateInfo.cs
- pingexception.cs
- ToolStripDropDown.cs
- HttpStaticObjectsCollectionWrapper.cs
- PointKeyFrameCollection.cs
- InfoCardRSAOAEPKeyExchangeDeformatter.cs
- SmtpSection.cs
- SAPIEngineTypes.cs
- UserNamePasswordValidator.cs
- XsdValidatingReader.cs
- ComContractElement.cs
- PackageRelationshipCollection.cs
- LoginStatusDesigner.cs
- InputEventArgs.cs
- WebServiceBindingAttribute.cs
- URI.cs
- _NegoStream.cs
- RegexCompiler.cs
- SwitchLevelAttribute.cs
- PrincipalPermissionMode.cs
- InitiatorSessionSymmetricTransportSecurityProtocol.cs
- CodeRegionDirective.cs
- RenderOptions.cs
- ScriptServiceAttribute.cs
- DataGridHyperlinkColumn.cs
- RootAction.cs
- SecurityStandardsManager.cs
- EventQueueState.cs
- MemberJoinTreeNode.cs
- Choices.cs
- XpsS0ValidatingLoader.cs
- PersonalizableAttribute.cs
- Path.cs
- WindowsUserNameSecurityTokenAuthenticator.cs
- Image.cs
- BinaryMethodMessage.cs
- StatusBarPanel.cs
- SqlDataAdapter.cs
- DataSourceExpression.cs
- Stroke.cs
- XmlSchemaComplexContentRestriction.cs
- List.cs
- SoapServerProtocol.cs
- ParameterCollection.cs
- PeerNodeTraceRecord.cs
- NGCUIElementCollectionSerializerAsync.cs
- HostedHttpContext.cs
- RadioButton.cs
- CompareValidator.cs
- ReadonlyMessageFilter.cs
- StubHelpers.cs
- CollectionExtensions.cs
- BrowserCapabilitiesCompiler.cs
- DeflateEmulationStream.cs
- Frame.cs
- WindowsGraphicsCacheManager.cs
- SafeFindHandle.cs
- ProgressPage.cs
- DBSchemaTable.cs
- PatternMatcher.cs
- FrameworkTemplate.cs
- SatelliteContractVersionAttribute.cs
- COM2FontConverter.cs
- SqlGatherProducedAliases.cs
- MediaContextNotificationWindow.cs
- PreservationFileWriter.cs
- DataExpression.cs
- Baml2006ReaderFrame.cs
- SqlPersonalizationProvider.cs
- ResourceFallbackManager.cs
- ImageField.cs