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
- Helpers.cs
- PolicyLevel.cs
- TabControlAutomationPeer.cs
- TabControlAutomationPeer.cs
- SqlUserDefinedAggregateAttribute.cs
- DataGridViewRowEventArgs.cs
- FixedSOMTextRun.cs
- XmlText.cs
- propertyentry.cs
- DataGridSortCommandEventArgs.cs
- ChannelCacheDefaults.cs
- WCFModelStrings.Designer.cs
- WebHeaderCollection.cs
- FileDataSourceCache.cs
- XmlMembersMapping.cs
- FilterFactory.cs
- ScrollProperties.cs
- Triangle.cs
- AtomParser.cs
- ClientOptions.cs
- LinkedList.cs
- HttpBufferlessInputStream.cs
- ExpressionParser.cs
- LineServicesCallbacks.cs
- HostingEnvironmentException.cs
- updateconfighost.cs
- HyperLinkDataBindingHandler.cs
- WebPartTransformerAttribute.cs
- ApplicationCommands.cs
- BindingManagerDataErrorEventArgs.cs
- KeyValuePair.cs
- SqlTopReducer.cs
- HasCopySemanticsAttribute.cs
- XmlLanguage.cs
- TransformCollection.cs
- IntegerFacetDescriptionElement.cs
- WhitespaceRuleLookup.cs
- DataTableMapping.cs
- Html32TextWriter.cs
- ControlCollection.cs
- NullableIntMinMaxAggregationOperator.cs
- oledbmetadatacollectionnames.cs
- AssociationTypeEmitter.cs
- SimpleTextLine.cs
- SharedPerformanceCounter.cs
- NativeRightsManagementAPIsStructures.cs
- SiteMapSection.cs
- DelegatingMessage.cs
- SiteMapNodeCollection.cs
- SmtpSpecifiedPickupDirectoryElement.cs
- ZipFileInfoCollection.cs
- DataPagerCommandEventArgs.cs
- OutputCacheProfileCollection.cs
- odbcmetadatacolumnnames.cs
- ChtmlCommandAdapter.cs
- filewebrequest.cs
- ReachDocumentPageSerializer.cs
- ServiceErrorHandler.cs
- HttpListenerPrefixCollection.cs
- Timer.cs
- SQLDoubleStorage.cs
- EventBuilder.cs
- HtmlControlPersistable.cs
- DataGridViewComboBoxColumnDesigner.cs
- AdjustableArrowCap.cs
- URL.cs
- WebServiceEnumData.cs
- FileLoadException.cs
- EdmProviderManifest.cs
- TiffBitmapDecoder.cs
- GridViewRowCollection.cs
- PeerObject.cs
- SchemaCollectionCompiler.cs
- GeneralTransform3D.cs
- HebrewCalendar.cs
- ContainerParaClient.cs
- ProcessHostFactoryHelper.cs
- ALinqExpressionVisitor.cs
- PreProcessInputEventArgs.cs
- UIElement3DAutomationPeer.cs
- ComboBoxRenderer.cs
- MemberDescriptor.cs
- InputManager.cs
- InvariantComparer.cs
- SingleAnimationBase.cs
- XmlSchemaComplexContentRestriction.cs
- MouseEventArgs.cs
- Vector3DAnimationBase.cs
- SemaphoreSecurity.cs
- BaseInfoTable.cs
- DataViewManager.cs
- _WebProxyDataBuilder.cs
- ThicknessAnimation.cs
- UserMapPath.cs
- DefaultTypeArgumentAttribute.cs
- SuppressMergeCheckAttribute.cs
- ChildrenQuery.cs
- DispatcherEventArgs.cs
- CodeStatement.cs
- InvariantComparer.cs