Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / XmlUtils / System / Xml / Xsl / XsltOld / WithParamAction.cs / 1305376 / WithParamAction.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.Collections; using System.Xml; using System.Xml.XPath; internal class WithParamAction : VariableAction { internal WithParamAction() : base(VariableType.WithParameter) {} internal override void Compile(Compiler compiler) { CompileAttributes(compiler); CheckRequiredAttribute(compiler, this.name, "name"); if (compiler.Recurse()) { CompileTemplate(compiler); compiler.ToParent(); if (this.selectKey != Compiler.InvalidQueryKey && this.containedActions != null) { throw XsltException.Create(Res.Xslt_VariableCntSel2, this.nameStr); } } } internal override void Execute(Processor processor, ActionFrame frame) { Debug.Assert(processor != null && frame != null); object ParamValue; switch(frame.State) { case Initialized: if (this.selectKey != Compiler.InvalidQueryKey) { ParamValue = processor.RunQuery(frame, this.selectKey); processor.SetParameter(this.name, ParamValue); frame.Finished(); } else { if (this.containedActions == null) { processor.SetParameter(this.name, string.Empty); frame.Finished(); break; } NavigatorOutput output = new NavigatorOutput(baseUri); processor.PushOutput(output); processor.PushActionFrame(frame); frame.State = ProcessingChildren; } break; case ProcessingChildren: RecordOutput recOutput = processor.PopOutput(); Debug.Assert(recOutput is NavigatorOutput); processor.SetParameter(this.name,((NavigatorOutput)recOutput).Navigator); frame.Finished(); break; default: Debug.Fail("Invalid execution state inside VariableAction.Execute"); break; } } } } // 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.Collections; using System.Xml; using System.Xml.XPath; internal class WithParamAction : VariableAction { internal WithParamAction() : base(VariableType.WithParameter) {} internal override void Compile(Compiler compiler) { CompileAttributes(compiler); CheckRequiredAttribute(compiler, this.name, "name"); if (compiler.Recurse()) { CompileTemplate(compiler); compiler.ToParent(); if (this.selectKey != Compiler.InvalidQueryKey && this.containedActions != null) { throw XsltException.Create(Res.Xslt_VariableCntSel2, this.nameStr); } } } internal override void Execute(Processor processor, ActionFrame frame) { Debug.Assert(processor != null && frame != null); object ParamValue; switch(frame.State) { case Initialized: if (this.selectKey != Compiler.InvalidQueryKey) { ParamValue = processor.RunQuery(frame, this.selectKey); processor.SetParameter(this.name, ParamValue); frame.Finished(); } else { if (this.containedActions == null) { processor.SetParameter(this.name, string.Empty); frame.Finished(); break; } NavigatorOutput output = new NavigatorOutput(baseUri); processor.PushOutput(output); processor.PushActionFrame(frame); frame.State = ProcessingChildren; } break; case ProcessingChildren: RecordOutput recOutput = processor.PopOutput(); Debug.Assert(recOutput is NavigatorOutput); processor.SetParameter(this.name,((NavigatorOutput)recOutput).Navigator); frame.Finished(); break; default: Debug.Fail("Invalid execution state inside VariableAction.Execute"); break; } } } } // 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
- RectAnimationClockResource.cs
- WebConfigurationHostFileChange.cs
- Converter.cs
- AuthenticationService.cs
- XmlNotation.cs
- CheckStoreFileValidityRequest.cs
- ProcessHostMapPath.cs
- PermissionAttributes.cs
- ConnectionManagementElement.cs
- DataStreamFromComStream.cs
- FixedSOMContainer.cs
- DeflateInput.cs
- UpdatePanel.cs
- UpDownEvent.cs
- OdbcConnectionHandle.cs
- SystemResourceKey.cs
- AppDomainFactory.cs
- ComponentEvent.cs
- XPathNodeIterator.cs
- ObjectTag.cs
- Enum.cs
- HGlobalSafeHandle.cs
- WebPartCancelEventArgs.cs
- AttributeSetAction.cs
- SchemaTableOptionalColumn.cs
- CultureMapper.cs
- RelationshipNavigation.cs
- XamlStream.cs
- WindowsRebar.cs
- DataServiceRequestException.cs
- _BufferOffsetSize.cs
- DeferredReference.cs
- ValidationSummaryDesigner.cs
- NameNode.cs
- SrgsElementList.cs
- SerializationEventsCache.cs
- FlowLayout.cs
- ForceCopyBuildProvider.cs
- SpinLock.cs
- WindowsTokenRoleProvider.cs
- RemoteWebConfigurationHostStream.cs
- ClickablePoint.cs
- Descriptor.cs
- MouseActionValueSerializer.cs
- DeriveBytes.cs
- ResourceReader.cs
- Activator.cs
- Transform3D.cs
- UInt16.cs
- ZipFileInfoCollection.cs
- ComponentSerializationService.cs
- Track.cs
- ClientScriptManagerWrapper.cs
- Effect.cs
- Int32AnimationBase.cs
- ArgumentsParser.cs
- WebPartDescription.cs
- TypedRowHandler.cs
- AssertFilter.cs
- TraceSwitch.cs
- ToolStripRenderEventArgs.cs
- HideDisabledControlAdapter.cs
- EventBuilder.cs
- SyntaxCheck.cs
- FactoryMaker.cs
- SendActivityEventArgs.cs
- FixedSOMLineCollection.cs
- WindowsUpDown.cs
- TextServicesHost.cs
- WebPartVerbCollection.cs
- DataSourceXmlSubItemAttribute.cs
- RectValueSerializer.cs
- LocationSectionRecord.cs
- CompilerParameters.cs
- PackageDigitalSignature.cs
- DataGridCellInfo.cs
- ExtensionWindow.cs
- HtmlTextViewAdapter.cs
- FrameworkTemplate.cs
- GroupLabel.cs
- OutputCacheProviderCollection.cs
- HandlerBase.cs
- ExclusiveTcpListener.cs
- WebPartConnectVerb.cs
- EntityAdapter.cs
- SchemaExporter.cs
- CacheMemory.cs
- WebScriptClientGenerator.cs
- JournalEntryListConverter.cs
- DataGridViewComboBoxColumn.cs
- InternalRelationshipCollection.cs
- WindowsAuthenticationEventArgs.cs
- ModifyActivitiesPropertyDescriptor.cs
- MaterialGroup.cs
- PeerInvitationResponse.cs
- ContentElementAutomationPeer.cs
- MergeFilterQuery.cs
- SwitchElementsCollection.cs
- GroupByExpressionRewriter.cs
- HopperCache.cs