Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / System.ServiceModel.Discovery / System / ServiceModel / Discovery / Configuration / AnnouncementEndpointElement.cs / 1305376 / AnnouncementEndpointElement.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 AnnouncementEndpointElement : StandardEndpointElement { ConfigurationPropertyCollection properties; public AnnouncementEndpointElement() : base() { } [ConfigurationProperty(ConfigurationStrings.MaxAnnouncementDelay, DefaultValue = ConfigurationStrings.TimeSpanZero)] [TypeConverter(typeof(TimeSpanOrInfiniteConverter))] [ServiceModelTimeSpanValidator(MinValueString = ConfigurationStrings.TimeSpanZero)] public TimeSpan MaxAnnouncementDelay { get { return (TimeSpan)base[ConfigurationStrings.MaxAnnouncementDelay]; } set { base[ConfigurationStrings.MaxAnnouncementDelay] = 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(AnnouncementEndpoint); } } protected override ConfigurationPropertyCollection Properties { get { if (this.properties == null) { ConfigurationPropertyCollection properties = base.Properties; properties.Add( new ConfigurationProperty( ConfigurationStrings.MaxAnnouncementDelay, 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)); this.properties = properties; } return this.properties; } } protected internal override ServiceEndpoint CreateServiceEndpoint(ContractDescription contractDescription) { return new AnnouncementEndpoint(this.DiscoveryVersion); } protected internal override void InitializeFrom(ServiceEndpoint endpoint) { base.InitializeFrom(endpoint); AnnouncementEndpoint source = (AnnouncementEndpoint)endpoint; this.MaxAnnouncementDelay = source.MaxAnnouncementDelay; this.DiscoveryVersion = source.DiscoveryVersion; } 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))); } } protected override void OnApplyConfiguration(ServiceEndpoint endpoint, ServiceEndpointElement serviceEndpointElement) { ApplyConfiguration(endpoint); } protected override void OnApplyConfiguration(ServiceEndpoint endpoint, ChannelEndpointElement serviceEndpointElement) { ApplyConfiguration(endpoint); } void ApplyConfiguration(ServiceEndpoint endpoint) { AnnouncementEndpoint announcementEndpoint = (AnnouncementEndpoint)endpoint; announcementEndpoint.MaxAnnouncementDelay = this.MaxAnnouncementDelay; } } } // 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
- WsdlBuildProvider.cs
- HttpAsyncResult.cs
- FormsAuthenticationCredentials.cs
- EventSchemaTraceListener.cs
- CodeTypeDelegate.cs
- ParseElement.cs
- DynamicPropertyHolder.cs
- ResponseBodyWriter.cs
- DataTableReader.cs
- SqlNodeAnnotation.cs
- RealProxy.cs
- ColorAnimationUsingKeyFrames.cs
- AssemblyCollection.cs
- RadioButtonStandardAdapter.cs
- ListDataBindEventArgs.cs
- UnsafeNativeMethods.cs
- CodeLinePragma.cs
- FixedLineResult.cs
- PartitionerStatic.cs
- MouseCaptureWithinProperty.cs
- ReflectionServiceProvider.cs
- ADConnectionHelper.cs
- SchemaDeclBase.cs
- EventRouteFactory.cs
- HttpFileCollectionWrapper.cs
- ConstructorExpr.cs
- CustomError.cs
- MimePart.cs
- GeneralTransform2DTo3DTo2D.cs
- EndEvent.cs
- Lookup.cs
- xsdvalidator.cs
- COM2PropertyBuilderUITypeEditor.cs
- AttachmentCollection.cs
- OracleParameter.cs
- TypeDescriptionProviderAttribute.cs
- Image.cs
- DefaultBinder.cs
- AppDomainProtocolHandler.cs
- SecurityValidationBehavior.cs
- SmtpClient.cs
- ListGeneralPage.cs
- OdbcParameterCollection.cs
- Propagator.Evaluator.cs
- SkewTransform.cs
- ThicknessAnimation.cs
- ReferentialConstraint.cs
- PreDigestedSignedInfo.cs
- HandlerWithFactory.cs
- AxisAngleRotation3D.cs
- ResourceAssociationSetEnd.cs
- StartUpEventArgs.cs
- ScrollViewer.cs
- ItemsChangedEventArgs.cs
- UITypeEditor.cs
- TdsValueSetter.cs
- OleDbMetaDataFactory.cs
- ServiceDescriptionData.cs
- DiscoveryClientDocuments.cs
- hresults.cs
- XmlILTrace.cs
- ClusterRegistryConfigurationProvider.cs
- ByteStreamGeometryContext.cs
- LinkedResourceCollection.cs
- CodeIterationStatement.cs
- JpegBitmapEncoder.cs
- CalendarTable.cs
- PerformanceCounterScope.cs
- SQLDateTimeStorage.cs
- XmlDataDocument.cs
- Point.cs
- TemplatePagerField.cs
- DbProviderFactories.cs
- TransactionProtocol.cs
- PrimarySelectionAdorner.cs
- SingleAnimationBase.cs
- StoreItemCollection.cs
- ArgumentNullException.cs
- ClientScriptManager.cs
- XmlLangPropertyAttribute.cs
- NgenServicingAttributes.cs
- HtmlTextBoxAdapter.cs
- log.cs
- XmlNodeList.cs
- CodeDefaultValueExpression.cs
- SystemColors.cs
- CustomCategoryAttribute.cs
- HtmlHistory.cs
- RestHandlerFactory.cs
- AtomPub10CategoriesDocumentFormatter.cs
- CreateUserWizardStep.cs
- SoapObjectInfo.cs
- ReflectionTypeLoadException.cs
- WebServiceClientProxyGenerator.cs
- ObjectDataSourceChooseTypePanel.cs
- AnnotationResourceChangedEventArgs.cs
- EdmRelationshipRoleAttribute.cs
- AgileSafeNativeMemoryHandle.cs
- ComplexBindingPropertiesAttribute.cs
- QueryExpr.cs