Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / System.ServiceModel.Discovery / System / ServiceModel / Discovery / UdpDiscoveryEndpoint.cs / 1305376 / UdpDiscoveryEndpoint.cs
//---------------------------------------------------------------- // Copyright (c) Microsoft Corporation. All rights reserved. //--------------------------------------------------------------- namespace System.ServiceModel.Discovery { using System.Diagnostics.CodeAnalysis; using System.Runtime; using System.ServiceModel.Channels; [Fx.Tag.XamlVisible(false)] public class UdpDiscoveryEndpoint : DiscoveryEndpoint { [SuppressMessage(FxCop.Category.Security, FxCop.Rule.DoNotDeclareReadOnlyMutableReferenceTypes)] [SuppressMessage(FxCop.Category.Naming, "CA1709:IdentifiersShouldBeCasedCorrectly", MessageId = "Pv", Justification="IPv4 is valid.")] public static readonly Uri DefaultIPv4MulticastAddress = DiscoveryDefaults.Udp.IPv4MulticastAddress; [SuppressMessage(FxCop.Category.Security, FxCop.Rule.DoNotDeclareReadOnlyMutableReferenceTypes)] [SuppressMessage(FxCop.Category.Naming, "CA1709:IdentifiersShouldBeCasedCorrectly", MessageId = "Pv", Justification = "IPv6 is valid.")] public static readonly Uri DefaultIPv6MulticastAddress = DiscoveryDefaults.Udp.IPv6MulticastAddress; DiscoveryViaBehavior viaBehavior; UdpTransportSettings udpTransportSettings; public UdpDiscoveryEndpoint() : this(DefaultIPv4MulticastAddress) { } public UdpDiscoveryEndpoint(string multicastAddress) : this(new Uri(multicastAddress)) { } public UdpDiscoveryEndpoint(Uri multicastAddress) : this(DiscoveryVersion.DefaultDiscoveryVersion, multicastAddress) { } public UdpDiscoveryEndpoint(DiscoveryVersion discoveryVersion) : this(discoveryVersion, DefaultIPv4MulticastAddress) { } public UdpDiscoveryEndpoint(DiscoveryVersion discoveryVersion, string multicastAddress) : this(discoveryVersion, new Uri(multicastAddress)) { } public UdpDiscoveryEndpoint(DiscoveryVersion discoveryVersion, Uri multicastAddress) : base(discoveryVersion, ServiceDiscoveryMode.Adhoc) { if (multicastAddress == null) { throw FxTrace.Exception.ArgumentNull("multicastAddress"); } if (discoveryVersion == null) { throw FxTrace.Exception.ArgumentNull("discoveryVersion"); } Initialize(multicastAddress); } public Uri MulticastAddress { get { return this.viaBehavior.Via; } set { if (value == null) { throw FxTrace.Exception.ArgumentNull("value"); } this.viaBehavior.Via = value; base.ListenUri = value; } } public UdpTransportSettings TransportSettings { get { return this.udpTransportSettings; } } void Initialize(Uri multicastAddress) { this.viaBehavior = new DiscoveryViaBehavior(multicastAddress); base.ListenUri = multicastAddress; TextMessageEncodingBindingElement textBE = new TextMessageEncodingBindingElement(); textBE.MessageVersion = base.DiscoveryVersion.Implementation.MessageVersion; UdpTransportBindingElement udpBE = DiscoveryDefaults.Udp.CreateUdpTransportBindingElement(); this.udpTransportSettings = new UdpTransportSettings(udpBE); CustomBinding binding = new CustomBinding(); binding.Elements.Add(textBE); binding.Elements.Add(udpBE); base.MaxResponseDelay = DiscoveryDefaults.Udp.AppMaxDelay; base.Address = new EndpointAddress(base.DiscoveryVersion.Implementation.DiscoveryAddress); base.Binding = binding; base.Behaviors.Add(this.viaBehavior); base.Behaviors.Add(new UdpReplyToBehavior(udpBE.Scheme)); base.Behaviors.Add(new UdpContractFilterBehavior()); } } } // 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
- RequestCachingSection.cs
- EncoderNLS.cs
- HttpModuleAction.cs
- PropertyChangingEventArgs.cs
- QilInvoke.cs
- DocumentsTrace.cs
- LinqMaximalSubtreeNominator.cs
- VerificationAttribute.cs
- ObjectConverter.cs
- userdatakeys.cs
- Model3DCollection.cs
- StylusPointCollection.cs
- SapiInterop.cs
- SetStateEventArgs.cs
- login.cs
- DataGridViewSelectedRowCollection.cs
- LinearGradientBrush.cs
- MailMessage.cs
- IdentityManager.cs
- EntityCommand.cs
- TableStyle.cs
- ByeMessageApril2005.cs
- Ipv6Element.cs
- ReadWriteObjectLock.cs
- DataGridViewAutoSizeColumnsModeEventArgs.cs
- UserCancellationException.cs
- RootBrowserWindow.cs
- TextCompositionEventArgs.cs
- PingReply.cs
- Border.cs
- MatrixValueSerializer.cs
- ColorInterpolationModeValidation.cs
- PropertyChange.cs
- FixedElement.cs
- MetadataArtifactLoaderResource.cs
- CodeParameterDeclarationExpressionCollection.cs
- StyleBamlTreeBuilder.cs
- GetWinFXPath.cs
- VisualStateManager.cs
- WSHttpBinding.cs
- HtmlImage.cs
- DesignerProperties.cs
- Accessible.cs
- StorageModelBuildProvider.cs
- UserNameSecurityTokenProvider.cs
- nulltextnavigator.cs
- EdmItemCollection.OcAssemblyCache.cs
- MaskedTextBoxTextEditor.cs
- EditorZoneBase.cs
- CustomAttributeFormatException.cs
- Mouse.cs
- StreamReader.cs
- WindowsAltTab.cs
- HierarchicalDataTemplate.cs
- XmlMapping.cs
- UidManager.cs
- DataSourceDescriptorCollection.cs
- DBConnectionString.cs
- DataSetMappper.cs
- XmlImplementation.cs
- BooleanExpr.cs
- XmlSchemas.cs
- SmiSettersStream.cs
- ParallelTimeline.cs
- ColorConverter.cs
- WebPartAddingEventArgs.cs
- SortedSet.cs
- Switch.cs
- AutoResizedEvent.cs
- DataException.cs
- SecurityResources.cs
- ReachDocumentReferenceSerializer.cs
- XmlRootAttribute.cs
- AspNetSynchronizationContext.cs
- Drawing.cs
- DataGridViewBindingCompleteEventArgs.cs
- OpenCollectionAsyncResult.cs
- StructuredTypeInfo.cs
- SubMenuStyle.cs
- EncryptedXml.cs
- WebBrowserContainer.cs
- SurrogateSelector.cs
- Membership.cs
- EventProviderClassic.cs
- CertificateElement.cs
- AttributeAction.cs
- Wizard.cs
- AttachmentCollection.cs
- Monitor.cs
- CachedPathData.cs
- ByteStreamGeometryContext.cs
- ListViewGroup.cs
- ServiceReference.cs
- GridProviderWrapper.cs
- Stopwatch.cs
- EnumerableRowCollectionExtensions.cs
- SQLBytes.cs
- BaseParaClient.cs
- AppSettingsExpressionBuilder.cs
- Int32.cs