Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / Dispatcher / EndpointFilterProvider.cs / 1 / EndpointFilterProvider.cs
//------------------------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//-----------------------------------------------------------------------------
namespace System.ServiceModel.Dispatcher
{
using System.Collections.Generic;
using System.ServiceModel.Channels;
using System.Runtime.Serialization;
class EndpointFilterProvider
{
SynchronizedCollection initiatingActions;
object mutex;
public EndpointFilterProvider(params string[] initiatingActions)
{
this.mutex = new object();
this.initiatingActions = new SynchronizedCollection(this.mutex, initiatingActions);
}
public SynchronizedCollection InitiatingActions
{
get { return this.initiatingActions; }
}
public MessageFilter CreateFilter(out int priority)
{
lock (this.mutex)
{
priority = 1;
if (initiatingActions.Count == 0)
return new MatchNoneMessageFilter();
string[] actions = new string[initiatingActions.Count];
int index = 0;
for (int i = 0; i < initiatingActions.Count; i++)
{
string currentAction = initiatingActions[i];
if (currentAction == MessageHeaders.WildcardAction)
{
priority = 0;
return new MatchAllMessageFilter();
}
actions[index] = currentAction;
++index;
}
return new ActionMessageFilter(actions);
}
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- TextTreeObjectNode.cs
- SqlVisitor.cs
- PropertyChangedEventArgs.cs
- DataRowView.cs
- TypeForwardedToAttribute.cs
- NetMsmqBinding.cs
- PerformanceCounterLib.cs
- ItemType.cs
- CookielessHelper.cs
- RTLAwareMessageBox.cs
- ByteAnimationUsingKeyFrames.cs
- HttpProfileBase.cs
- SendSecurityHeader.cs
- XmlBindingWorker.cs
- ScriptingWebServicesSectionGroup.cs
- FrameAutomationPeer.cs
- ScrollViewerAutomationPeer.cs
- FolderBrowserDialog.cs
- HttpAsyncResult.cs
- ImageClickEventArgs.cs
- BooleanFunctions.cs
- IndexedString.cs
- DataListItemEventArgs.cs
- DesignBindingPropertyDescriptor.cs
- HitTestParameters3D.cs
- BindStream.cs
- ValidatingPropertiesEventArgs.cs
- EntityDataSourceStatementEditor.cs
- SrgsDocument.cs
- VersionedStream.cs
- Gdiplus.cs
- TextOnlyOutput.cs
- BasicCellRelation.cs
- DayRenderEvent.cs
- FieldToken.cs
- AppDomainAttributes.cs
- TabControlDesigner.cs
- InProcStateClientManager.cs
- DataGridViewImageColumn.cs
- StreamWithDictionary.cs
- DataGridItemAutomationPeer.cs
- TabItem.cs
- XPathSelfQuery.cs
- HostSecurityManager.cs
- ButtonBaseAutomationPeer.cs
- MouseWheelEventArgs.cs
- ProcessModule.cs
- VectorAnimationUsingKeyFrames.cs
- WeakHashtable.cs
- WebPartMenu.cs
- Argument.cs
- SystemSounds.cs
- XamlSerializationHelper.cs
- DSASignatureDeformatter.cs
- RegexReplacement.cs
- LogReservationCollection.cs
- figurelengthconverter.cs
- DataKeyCollection.cs
- RawKeyboardInputReport.cs
- SoapHelper.cs
- TextWriterTraceListener.cs
- DataPagerFieldCollection.cs
- VScrollProperties.cs
- DetailsViewDeleteEventArgs.cs
- TraceUtility.cs
- TextElementAutomationPeer.cs
- PlatformCulture.cs
- ComponentConverter.cs
- SignatureDescription.cs
- Model3D.cs
- ObjectParameter.cs
- OptimisticConcurrencyException.cs
- TextSelectionProcessor.cs
- ConsoleTraceListener.cs
- CapiHashAlgorithm.cs
- OracleConnectionFactory.cs
- OleDbWrapper.cs
- ToolboxComponentsCreatingEventArgs.cs
- DelegateSerializationHolder.cs
- ResourceSetExpression.cs
- FileSystemEventArgs.cs
- ToolStripMenuItemCodeDomSerializer.cs
- ExcCanonicalXml.cs
- Transform.cs
- ReflectTypeDescriptionProvider.cs
- ObjectQueryState.cs
- HtmlInputSubmit.cs
- AuthenticateEventArgs.cs
- XmlILConstructAnalyzer.cs
- TcpTransportBindingElement.cs
- LiteralLink.cs
- PositiveTimeSpanValidatorAttribute.cs
- ObjectViewEntityCollectionData.cs
- sqlnorm.cs
- DataGridTemplateColumn.cs
- XsdDataContractExporter.cs
- DesignerActionGlyph.cs
- HtmlPanelAdapter.cs
- ProcessProtocolHandler.cs
- MimeTextImporter.cs