Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / 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
- DataContractJsonSerializerOperationBehavior.cs
- TextTreeInsertUndoUnit.cs
- XamlRtfConverter.cs
- Literal.cs
- BinHexEncoding.cs
- PriorityQueue.cs
- DBSchemaTable.cs
- WebConvert.cs
- CompilerParameters.cs
- XmlObjectSerializerReadContext.cs
- XmlILStorageConverter.cs
- DeferredElementTreeState.cs
- WindowsSlider.cs
- LostFocusEventManager.cs
- Buffer.cs
- DataObject.cs
- GorillaCodec.cs
- RangeValidator.cs
- _NestedSingleAsyncResult.cs
- XmlDownloadManager.cs
- URLIdentityPermission.cs
- InvokeMethodActivityDesigner.cs
- EditBehavior.cs
- UnaryExpression.cs
- XamlUtilities.cs
- GregorianCalendarHelper.cs
- BrowserDefinition.cs
- SqlProcedureAttribute.cs
- HttpException.cs
- DefinitionBase.cs
- DllNotFoundException.cs
- DataBinder.cs
- X509Certificate2.cs
- OutOfProcStateClientManager.cs
- ConfigUtil.cs
- ResourceManagerWrapper.cs
- ExpressionBuilderContext.cs
- Claim.cs
- BlockExpression.cs
- MissingSatelliteAssemblyException.cs
- ScaleTransform.cs
- ToolStripPanelCell.cs
- SkewTransform.cs
- TransactionWaitAsyncResult.cs
- FocusWithinProperty.cs
- SplitterEvent.cs
- TimelineGroup.cs
- LayoutEvent.cs
- AuthenticationManager.cs
- NonClientArea.cs
- CompilationRelaxations.cs
- TextSerializer.cs
- DrawListViewColumnHeaderEventArgs.cs
- QilTypeChecker.cs
- UpnEndpointIdentityExtension.cs
- DBCommand.cs
- QuestionEventArgs.cs
- ParameterToken.cs
- WebPartMovingEventArgs.cs
- CookielessData.cs
- TreeViewItem.cs
- TableRow.cs
- StreamInfo.cs
- SspiSecurityTokenParameters.cs
- GlobalEventManager.cs
- PartitionResolver.cs
- HttpConfigurationContext.cs
- TableItemPatternIdentifiers.cs
- ForeignKeyConstraint.cs
- DataServiceEntityAttribute.cs
- ContentDisposition.cs
- Padding.cs
- ConfigurationLocationCollection.cs
- PeerCredential.cs
- SetterBase.cs
- CallSiteBinder.cs
- DataControlLinkButton.cs
- ChangePassword.cs
- TextEvent.cs
- HtmlInputButton.cs
- Timer.cs
- DynamicDataResources.Designer.cs
- __Filters.cs
- CFStream.cs
- GroupBox.cs
- SerializationException.cs
- NotImplementedException.cs
- BinaryFormatterWriter.cs
- ByteAnimationBase.cs
- VectorAnimationBase.cs
- EventPropertyMap.cs
- MessageProperties.cs
- MetricEntry.cs
- ListManagerBindingsCollection.cs
- FixedSOMPageConstructor.cs
- SelectionProcessor.cs
- SecurityPermission.cs
- MimeMapping.cs
- SessionStateItemCollection.cs
- MetadataItemCollectionFactory.cs