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
- ProfileSettingsCollection.cs
- ResourceWriter.cs
- NaturalLanguageHyphenator.cs
- SizeAnimationBase.cs
- XslAst.cs
- UInt32Converter.cs
- AdvancedBindingEditor.cs
- SplitContainer.cs
- GridEntry.cs
- DataColumn.cs
- ProgressBarBrushConverter.cs
- BufferCache.cs
- StylusPointProperty.cs
- PropertyConverter.cs
- ControlCollection.cs
- ComNativeDescriptor.cs
- TransformValueSerializer.cs
- UpdateCommand.cs
- TagMapInfo.cs
- MaterializeFromAtom.cs
- DescendentsWalkerBase.cs
- SpellerStatusTable.cs
- JavascriptCallbackResponseProperty.cs
- Row.cs
- WebServiceBindingAttribute.cs
- ToolStripProfessionalLowResolutionRenderer.cs
- TranslateTransform3D.cs
- DynamicDataResources.Designer.cs
- LabelEditEvent.cs
- WebHttpBehavior.cs
- SpeechSynthesizer.cs
- ReadonlyMessageFilter.cs
- SqlInternalConnection.cs
- BooleanKeyFrameCollection.cs
- OleDbCommandBuilder.cs
- Parsers.cs
- UnknownBitmapEncoder.cs
- ServiceRoute.cs
- FrameworkTextComposition.cs
- Parsers.cs
- WindowsNonControl.cs
- XmlAttributeCollection.cs
- XamlPoint3DCollectionSerializer.cs
- TextReader.cs
- Int64AnimationUsingKeyFrames.cs
- DummyDataSource.cs
- DesignerTransaction.cs
- IntSecurity.cs
- SchemaDeclBase.cs
- ViewRendering.cs
- elementinformation.cs
- PerspectiveCamera.cs
- GlyphsSerializer.cs
- WebPartDisplayMode.cs
- ObjectAssociationEndMapping.cs
- Pkcs9Attribute.cs
- ClassGenerator.cs
- DBCommandBuilder.cs
- SchemaNamespaceManager.cs
- MultiSelector.cs
- InheritanceAttribute.cs
- ObjectParameter.cs
- ElementHost.cs
- DecoderExceptionFallback.cs
- CharStorage.cs
- MemberPathMap.cs
- RedirectionProxy.cs
- RuntimeResourceSet.cs
- CachedBitmap.cs
- CqlParser.cs
- DynamicPropertyReader.cs
- BufferModeSettings.cs
- EventPrivateKey.cs
- AnnotationComponentChooser.cs
- DateTimePicker.cs
- FixedTextBuilder.cs
- DelayedRegex.cs
- _FtpControlStream.cs
- WebConfigurationHostFileChange.cs
- TypeTypeConverter.cs
- Model3DGroup.cs
- OperandQuery.cs
- NestPullup.cs
- ListViewTableRow.cs
- OpenFileDialog.cs
- ComplexPropertyEntry.cs
- CodeMemberEvent.cs
- TraceContext.cs
- _BaseOverlappedAsyncResult.cs
- DataViewSettingCollection.cs
- ClientRolePrincipal.cs
- ByteStack.cs
- FilterQuery.cs
- CodeTypeReferenceExpression.cs
- SimpleBitVector32.cs
- StringValueSerializer.cs
- ExecutorLocksHeldException.cs
- Utils.cs
- ResourceContainer.cs
- XmlSerializerOperationFormatter.cs