Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / System.ServiceModel.Discovery / System / ServiceModel / Discovery / UdpAnnouncementEndpoint.cs / 1305376 / UdpAnnouncementEndpoint.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 UdpAnnouncementEndpoint : AnnouncementEndpoint { [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 UdpAnnouncementEndpoint() : this(DefaultIPv4MulticastAddress) { } public UdpAnnouncementEndpoint(string multicastAddress) : this(new Uri(multicastAddress)) { } public UdpAnnouncementEndpoint(Uri multicastAddress) : this(DiscoveryVersion.DefaultDiscoveryVersion, multicastAddress) { } public UdpAnnouncementEndpoint(DiscoveryVersion discoveryVersion) : this(discoveryVersion, DefaultIPv4MulticastAddress) { } public UdpAnnouncementEndpoint(DiscoveryVersion discoveryVersion, string multicastAddress) : this(discoveryVersion, new Uri(multicastAddress)) { } public UdpAnnouncementEndpoint(DiscoveryVersion discoveryVersion, Uri multicastAddress) : base(discoveryVersion) { 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.MaxAnnouncementDelay = DiscoveryDefaults.Udp.AppMaxDelay; base.Address = new EndpointAddress(base.DiscoveryVersion.Implementation.DiscoveryAddress); base.Binding = binding; base.Behaviors.Add(this.viaBehavior); 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
- AnonymousIdentificationModule.cs
- MessageHeaderDescriptionCollection.cs
- ListItem.cs
- SplitContainer.cs
- CharacterHit.cs
- UseLicense.cs
- TextRenderer.cs
- EventOpcode.cs
- DESCryptoServiceProvider.cs
- PenContexts.cs
- SoapEnvelopeProcessingElement.cs
- MediaScriptCommandRoutedEventArgs.cs
- CustomErrorsSectionWrapper.cs
- BaseValidator.cs
- TemplatedAdorner.cs
- ManipulationLogic.cs
- ActivityTypeDesigner.xaml.cs
- TabItemAutomationPeer.cs
- MetadataItemEmitter.cs
- SmiEventSink_DeferedProcessing.cs
- TagPrefixAttribute.cs
- GACMembershipCondition.cs
- CapabilitiesPattern.cs
- MasterPageParser.cs
- TitleStyle.cs
- SqlRecordBuffer.cs
- TranslateTransform.cs
- FlowDocumentPage.cs
- UncommonField.cs
- TextEditor.cs
- ProfileParameter.cs
- AutomationEvent.cs
- IgnoreSection.cs
- SQLBinaryStorage.cs
- ConnectionInterfaceCollection.cs
- IndexedEnumerable.cs
- BindingSourceDesigner.cs
- TdsParserStaticMethods.cs
- UpDownBase.cs
- DataControlExtensions.cs
- GC.cs
- NamedPipeTransportManager.cs
- PageRequestManager.cs
- XamlSerializer.cs
- TemplateBamlTreeBuilder.cs
- StyleCollection.cs
- AsyncStreamReader.cs
- ObjectDataSourceView.cs
- SrgsElementFactoryCompiler.cs
- CopyAction.cs
- HostingMessageProperty.cs
- TypeConverters.cs
- COSERVERINFO.cs
- DataSourceControlBuilder.cs
- MetadataSerializer.cs
- Range.cs
- EpmSourcePathSegment.cs
- DetailsViewInsertEventArgs.cs
- XmlCountingReader.cs
- BooleanStorage.cs
- TextModifierScope.cs
- XmlSchemaObject.cs
- BrowserTree.cs
- DynamicAttribute.cs
- ToolBar.cs
- ProcessHostFactoryHelper.cs
- SoundPlayer.cs
- NotFiniteNumberException.cs
- PanelStyle.cs
- HttpApplication.cs
- EventManager.cs
- NameValueConfigurationElement.cs
- XPathArrayIterator.cs
- ReachDocumentReferenceCollectionSerializerAsync.cs
- TransformDescriptor.cs
- XsdBuilder.cs
- DocobjHost.cs
- AffineTransform3D.cs
- ValueUnavailableException.cs
- log.cs
- Console.cs
- path.cs
- MobileControlDesigner.cs
- httpserverutility.cs
- TagPrefixAttribute.cs
- AssemblyNameProxy.cs
- TempFiles.cs
- AuthenticationModuleElementCollection.cs
- XmlMapping.cs
- Drawing.cs
- ScriptingWebServicesSectionGroup.cs
- SamlAuthenticationClaimResource.cs
- ScriptReferenceEventArgs.cs
- IItemProperties.cs
- IconEditor.cs
- TcpSocketManager.cs
- DefaultPropertyAttribute.cs
- BindToObject.cs
- VirtualDirectoryMappingCollection.cs
- IdentityHolder.cs