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
- RtfFormatStack.cs
- ServiceReference.cs
- TextServicesProperty.cs
- ImageKeyConverter.cs
- GridEntry.cs
- ImageCodecInfoPrivate.cs
- BitmapPalettes.cs
- KeyedHashAlgorithm.cs
- ActivationProxy.cs
- RoutedEventValueSerializer.cs
- EntityDataSourceDataSelectionPanel.cs
- OleDbRowUpdatingEvent.cs
- BamlWriter.cs
- UiaCoreTypesApi.cs
- Int32Animation.cs
- Pair.cs
- AppSecurityManager.cs
- ScrollData.cs
- DataGridViewCellToolTipTextNeededEventArgs.cs
- PartialCachingControl.cs
- TagPrefixAttribute.cs
- EncodingTable.cs
- ServiceDefaults.cs
- BinaryUtilClasses.cs
- ArrayExtension.cs
- ExpressionNormalizer.cs
- FileClassifier.cs
- PropertyDescriptor.cs
- EncryptedPackageFilter.cs
- OracleBoolean.cs
- FullTextState.cs
- IntSecurity.cs
- BitmapSizeOptions.cs
- ToolboxItemCollection.cs
- DBDataPermission.cs
- DataTableMappingCollection.cs
- CharacterBuffer.cs
- DataGridViewComboBoxColumnDesigner.cs
- BuildProvidersCompiler.cs
- TextProperties.cs
- AddInPipelineAttributes.cs
- TimeZoneInfo.cs
- SuppressIldasmAttribute.cs
- ValidationSummary.cs
- ProgressBar.cs
- WeakReferenceList.cs
- ButtonBase.cs
- SqlExpander.cs
- RadialGradientBrush.cs
- ValidationErrorCollection.cs
- WorkflowValidationFailedException.cs
- OrderedDictionary.cs
- EndpointFilterProvider.cs
- XmlBinaryReader.cs
- IdentifierService.cs
- _ContextAwareResult.cs
- Binding.cs
- SimpleTextLine.cs
- MemberCollection.cs
- UserControlParser.cs
- MimeImporter.cs
- OperationInfoBase.cs
- FaultException.cs
- DynamicFilter.cs
- ReadContentAsBinaryHelper.cs
- SettingsPropertyValueCollection.cs
- WindowsToolbarAsMenu.cs
- ColorIndependentAnimationStorage.cs
- UnsafeNativeMethods.cs
- EditorPartChrome.cs
- PipelineModuleStepContainer.cs
- HMACSHA512.cs
- ColorInterpolationModeValidation.cs
- DisposableCollectionWrapper.cs
- ContentControl.cs
- LinearKeyFrames.cs
- TreeNodeBindingCollection.cs
- CodeTypeMemberCollection.cs
- DataGridBoolColumn.cs
- RadioButtonList.cs
- CounterCreationData.cs
- FileRecordSequenceHelper.cs
- UnsignedPublishLicense.cs
- Column.cs
- CollectionViewGroupRoot.cs
- SoapParser.cs
- OrderedDictionaryStateHelper.cs
- SafeCryptHandles.cs
- Variant.cs
- BindingValueChangedEventArgs.cs
- ImportedNamespaceContextItem.cs
- InitiatorServiceModelSecurityTokenRequirement.cs
- MeshGeometry3D.cs
- CheckedPointers.cs
- SqlInternalConnectionSmi.cs
- DiagnosticStrings.cs
- XmlAttributeHolder.cs
- SchemaImporterExtensionElementCollection.cs
- SendKeys.cs
- SetUserLanguageRequest.cs