Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / System.ServiceModel.Discovery / System / ServiceModel / Discovery / Configuration / DiscoveryEndpointElement.cs / 1305376 / DiscoveryEndpointElement.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.ServiceModel.Discovery.Configuration { using System; using System.ComponentModel; using System.Configuration; using System.Diagnostics.CodeAnalysis; using System.Runtime; using System.ServiceModel.Configuration; using System.ServiceModel.Description; using SR2 = System.ServiceModel.Discovery.SR; public class DiscoveryEndpointElement : StandardEndpointElement { ConfigurationPropertyCollection properties; public DiscoveryEndpointElement() : base() { } [ConfigurationProperty(ConfigurationStrings.MaxResponseDelay, DefaultValue = ConfigurationStrings.TimeSpanZero)] [TypeConverter(typeof(TimeSpanOrInfiniteConverter))] [ServiceModelTimeSpanValidator(MinValueString = ConfigurationStrings.TimeSpanZero)] public TimeSpan MaxResponseDelay { get { return (TimeSpan)base[ConfigurationStrings.MaxResponseDelay]; } set { base[ConfigurationStrings.MaxResponseDelay] = value; } } [ConfigurationProperty(ConfigurationStrings.DiscoveryMode, DefaultValue = ServiceDiscoveryMode.Managed)] [SuppressMessage(FxCop.Category.Configuration, FxCop.Rule.ConfigurationValidatorAttributeRule)] public ServiceDiscoveryMode DiscoveryMode { get { return (ServiceDiscoveryMode)base[ConfigurationStrings.DiscoveryMode]; } set { base[ConfigurationStrings.DiscoveryMode] = value; } } [ConfigurationProperty(ConfigurationStrings.DiscoveryVersion, DefaultValue = ProtocolStrings.VersionNameDefault)] [TypeConverter(typeof(DiscoveryVersionConverter))] [SuppressMessage(FxCop.Category.Configuration, FxCop.Rule.ConfigurationValidatorAttributeRule)] public DiscoveryVersion DiscoveryVersion { get { return (DiscoveryVersion)base[ConfigurationStrings.DiscoveryVersion]; } set { base[ConfigurationStrings.DiscoveryVersion] = value; } } protected internal override Type EndpointType { get { return typeof(DiscoveryEndpoint); } } protected override ConfigurationPropertyCollection Properties { get { if (this.properties == null) { ConfigurationPropertyCollection properties = base.Properties; properties.Add( new ConfigurationProperty( ConfigurationStrings.MaxResponseDelay, typeof(TimeSpan), TimeSpan.Zero, new TimeSpanOrInfiniteConverter(), new TimeSpanOrInfiniteValidator(TimeSpan.Zero, TimeSpan.MaxValue), ConfigurationPropertyOptions.None)); properties.Add( new ConfigurationProperty( ConfigurationStrings.DiscoveryVersion, typeof(DiscoveryVersion), DiscoveryVersion.DefaultDiscoveryVersion, new DiscoveryVersionConverter(), null, ConfigurationPropertyOptions.None)); properties.Add( new ConfigurationProperty( ConfigurationStrings.DiscoveryMode, typeof(ServiceDiscoveryMode), ServiceDiscoveryMode.Managed, null, null, ConfigurationPropertyOptions.None)); this.properties = properties; } return this.properties; } } protected internal override ServiceEndpoint CreateServiceEndpoint(ContractDescription contractDescription) { return new DiscoveryEndpoint(this.DiscoveryVersion, this.DiscoveryMode); } protected internal override void InitializeFrom(ServiceEndpoint endpoint) { base.InitializeFrom(endpoint); DiscoveryEndpoint source = (DiscoveryEndpoint)endpoint; this.MaxResponseDelay = source.MaxResponseDelay; this.DiscoveryVersion = source.DiscoveryVersion; this.DiscoveryMode = source.DiscoveryMode; } protected override void OnInitializeAndValidate(ChannelEndpointElement channelEndpointElement) { if (!String.IsNullOrEmpty(channelEndpointElement.Contract)) { throw FxTrace.Exception.AsError(new ConfigurationErrorsException(SR2.DiscoveryConfigContractSpecified(channelEndpointElement.Kind))); } } protected override void OnInitializeAndValidate(ServiceEndpointElement serviceEndpointElement) { if (!String.IsNullOrEmpty(serviceEndpointElement.Contract)) { throw FxTrace.Exception.AsError(new ConfigurationErrorsException(SR2.DiscoveryConfigContractSpecified(serviceEndpointElement.Kind))); } if (PropertyValueOrigin.Default == serviceEndpointElement.ElementInformation.Properties[ConfigurationStrings.IsSystemEndpoint].ValueOrigin) { serviceEndpointElement.IsSystemEndpoint = true; } } protected override void OnApplyConfiguration(ServiceEndpoint endpoint, ServiceEndpointElement serviceEndpointElement) { ApplyConfiguration(endpoint); } protected override void OnApplyConfiguration(ServiceEndpoint endpoint, ChannelEndpointElement serviceEndpointElement) { ApplyConfiguration(endpoint); } void ApplyConfiguration(ServiceEndpoint endpoint) { DiscoveryEndpoint discoveryEndpoint = (DiscoveryEndpoint)endpoint; discoveryEndpoint.MaxResponseDelay = this.MaxResponseDelay; } } } // 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
- RenamedEventArgs.cs
- ParameterBuilder.cs
- IdleTimeoutMonitor.cs
- TokenBasedSet.cs
- PropertyChangingEventArgs.cs
- BookmarkUndoUnit.cs
- DataGridTableCollection.cs
- SqlServices.cs
- ObjectItemCollection.cs
- NonVisualControlAttribute.cs
- Storyboard.cs
- FigureHelper.cs
- MoveSizeWinEventHandler.cs
- SessionViewState.cs
- FolderLevelBuildProviderCollection.cs
- Transform3DCollection.cs
- Atom10FeedFormatter.cs
- InvalidDataException.cs
- ExecutedRoutedEventArgs.cs
- HandlerBase.cs
- XmlILOptimizerVisitor.cs
- ExceptionUtil.cs
- InfoCardSymmetricCrypto.cs
- MimeWriter.cs
- AmbientLight.cs
- PrinterUnitConvert.cs
- RoleManagerEventArgs.cs
- ConfigErrorGlyph.cs
- MobileControlsSection.cs
- RegexBoyerMoore.cs
- UpnEndpointIdentity.cs
- Regex.cs
- Pen.cs
- PageDeviceFont.cs
- CqlLexer.cs
- QuotedPrintableStream.cs
- SplitterEvent.cs
- ByteFacetDescriptionElement.cs
- FreeFormDragDropManager.cs
- VarRefManager.cs
- StringUtil.cs
- ColorInterpolationModeValidation.cs
- ScalarType.cs
- FixUp.cs
- IdentifierCollection.cs
- ImageMapEventArgs.cs
- CroppedBitmap.cs
- WpfPayload.cs
- _BufferOffsetSize.cs
- WindowsAuthenticationModule.cs
- BoundsDrawingContextWalker.cs
- ContainsRowNumberChecker.cs
- ParameterToken.cs
- RedirectionProxy.cs
- FilePrompt.cs
- CollectionContainer.cs
- ButtonField.cs
- ScriptModule.cs
- documentsequencetextcontainer.cs
- Int64.cs
- OracleInfoMessageEventArgs.cs
- Hyperlink.cs
- PaperSource.cs
- SponsorHelper.cs
- WindowsPen.cs
- ResourceSet.cs
- TableProviderWrapper.cs
- CompressedStack.cs
- TransformPattern.cs
- DataGridViewCellStyle.cs
- Propagator.JoinPropagator.cs
- XpsException.cs
- Section.cs
- BinaryMessageEncodingElement.cs
- DefaultAsyncDataDispatcher.cs
- EventSinkActivityDesigner.cs
- TableSectionStyle.cs
- OleDbException.cs
- _AutoWebProxyScriptHelper.cs
- XmlSchemaSimpleTypeRestriction.cs
- SQLInt16.cs
- SQLStringStorage.cs
- XmlDocument.cs
- TextBox.cs
- NgenServicingAttributes.cs
- TreeBuilder.cs
- DecoderFallbackWithFailureFlag.cs
- EllipseGeometry.cs
- PassportAuthenticationModule.cs
- MouseActionConverter.cs
- PrimitiveType.cs
- IndicFontClient.cs
- XPathNodeList.cs
- MailBnfHelper.cs
- ActivityPreviewDesigner.cs
- FixedTextContainer.cs
- CopyOnWriteList.cs
- OracleBFile.cs
- ListSurrogate.cs
- TransformerInfoCollection.cs