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
- autovalidator.cs
- StorageEndPropertyMapping.cs
- ZoneMembershipCondition.cs
- VisualStyleTypesAndProperties.cs
- GroupDescription.cs
- LoadedOrUnloadedOperation.cs
- ForceCopyBuildProvider.cs
- HtmlPanelAdapter.cs
- dataSvcMapFileLoader.cs
- APCustomTypeDescriptor.cs
- SqlCrossApplyToCrossJoin.cs
- ListControl.cs
- ConnectionStringSettings.cs
- MachineKeyConverter.cs
- ComAwareEventInfo.cs
- ProvideValueServiceProvider.cs
- WebUtil.cs
- IdentityElement.cs
- XmlProcessingInstruction.cs
- TemplateNodeContextMenu.cs
- JavascriptCallbackResponseProperty.cs
- TextCompositionManager.cs
- ClipboardData.cs
- LoadedEvent.cs
- Menu.cs
- UIElementHelper.cs
- TaskFormBase.cs
- ListBase.cs
- DataBoundLiteralControl.cs
- FillErrorEventArgs.cs
- AssemblyFilter.cs
- CodePropertyReferenceExpression.cs
- AssemblyAssociatedContentFileAttribute.cs
- HtmlInputPassword.cs
- Page.cs
- WebScriptMetadataMessageEncoderFactory.cs
- TraceListeners.cs
- SqlDelegatedTransaction.cs
- RNGCryptoServiceProvider.cs
- ListDesigner.cs
- JsonDeserializer.cs
- SkipStoryboardToFill.cs
- ModelUIElement3D.cs
- UInt16.cs
- TraceHandler.cs
- TextComposition.cs
- CodeMemberEvent.cs
- ToolCreatedEventArgs.cs
- CompleteWizardStep.cs
- TimerElapsedEvenArgs.cs
- unitconverter.cs
- SmiRecordBuffer.cs
- CommandDesigner.cs
- RadioButtonRenderer.cs
- HttpServerVarsCollection.cs
- ScriptingRoleServiceSection.cs
- ValidationHelper.cs
- DataStreams.cs
- XmlChoiceIdentifierAttribute.cs
- LayoutTableCell.cs
- AssemblyAttributesGoHere.cs
- ContainsSearchOperator.cs
- TableStyle.cs
- Assert.cs
- PlainXmlWriter.cs
- UInt32Converter.cs
- StorageMappingItemLoader.cs
- TextServicesPropertyRanges.cs
- XmlSchemaSimpleContent.cs
- SingleQueryOperator.cs
- AccessControlEntry.cs
- WebBrowsableAttribute.cs
- UnsafeNativeMethods.cs
- QueryResultOp.cs
- PartitionResolver.cs
- ComponentDispatcher.cs
- XmlUtf8RawTextWriter.cs
- ResXBuildProvider.cs
- PseudoWebRequest.cs
- CompositeScriptReferenceEventArgs.cs
- OrderByLifter.cs
- FormViewRow.cs
- ObjectSet.cs
- PlainXmlSerializer.cs
- UIElementPropertyUndoUnit.cs
- xmlsaver.cs
- ResourceCodeDomSerializer.cs
- Array.cs
- ServicesUtilities.cs
- Package.cs
- EmptyControlCollection.cs
- DependencyObjectPropertyDescriptor.cs
- DefaultAssemblyResolver.cs
- Pkcs7Recipient.cs
- MaskedTextBox.cs
- ProxyHwnd.cs
- NavigationPropertyEmitter.cs
- XmlSchemaType.cs
- Int32AnimationBase.cs
- WorkflowApplicationIdleEventArgs.cs