Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / Configuration / PeerCustomResolverElement.cs / 1 / PeerCustomResolverElement.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.ServiceModel.Configuration { using System.Configuration; using System.ServiceModel.Description; using System.Globalization; using System.Net; using System.Net.Security; using System.ServiceModel; using System.ServiceModel.Channels; using System.ServiceModel.PeerResolvers; using System.ComponentModel; public sealed partial class PeerCustomResolverElement : ConfigurationElement { [ConfigurationProperty(ConfigurationStrings.Address, DefaultValue = null, Options = ConfigurationPropertyOptions.None)] public Uri Address { get {return (Uri) base[ConfigurationStrings.Address]; } set {base[ConfigurationStrings.Address] = value; } } [ConfigurationProperty(ConfigurationStrings.Headers)] public AddressHeaderCollectionElement Headers { get { return (AddressHeaderCollectionElement)base[ConfigurationStrings.Headers]; } } [ConfigurationProperty(ConfigurationStrings.Identity)] public IdentityElement Identity { get { return (IdentityElement)base[ConfigurationStrings.Identity]; } } [ConfigurationProperty(ConfigurationStrings.Binding, DefaultValue = "")] [StringValidator(MinLength = 0)] public string Binding { get { return (string)base[ConfigurationStrings.Binding]; } set { base[ConfigurationStrings.Binding] = value; } } [ConfigurationProperty(ConfigurationStrings.BindingConfiguration, DefaultValue = "")] [StringValidator(MinLength = 0)] public string BindingConfiguration { get { return (string)base[ConfigurationStrings.BindingConfiguration]; } set { base[ConfigurationStrings.BindingConfiguration] = value; } } [ConfigurationProperty(ConfigurationStrings.PeerResolverType, DefaultValue = "")] [StringValidator(MinLength = 0)] public string ResolverType { get { return (string)base[ConfigurationStrings.PeerResolverType]; } set { base[ConfigurationStrings.PeerResolverType] = value; } } internal void ApplyConfiguration(PeerCustomResolverSettings settings) { if (settings == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("settings"); } if (this.Address != null) { settings.Address = new EndpointAddress(this.Address, ConfigLoader.LoadIdentity(this.Identity), this.Headers.Headers); } settings.BindingSection = this.Binding; settings.BindingConfiguration = this.BindingConfiguration; if (!String.IsNullOrEmpty(this.Binding) && !String.IsNullOrEmpty(this.BindingConfiguration)) settings.Binding = ConfigLoader.LookupBinding(this.Binding, this.BindingConfiguration); if (!String.IsNullOrEmpty(this.ResolverType)) { Type myResolverType = Type.GetType(this.ResolverType, false); if (myResolverType != null) { settings.Resolver = Activator.CreateInstance(myResolverType) as PeerResolver; } else { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ConfigurationErrorsException( SR.GetString(SR.PeerResolverInvalid, this.ResolverType))); } } } internal void InitializeFrom(PeerCustomResolverSettings settings) { if (settings == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("settings"); } if(settings.Address != null) { this.Address = settings.Address.Uri; this.Identity.InitializeFrom(settings.Address.Identity); } if(settings.Resolver != null) { this.ResolverType = settings.Resolver.GetType().AssemblyQualifiedName; } if(settings.Binding != null) { this.BindingConfiguration = PeerStrings.PeerCustomResolver+Guid.NewGuid().ToString(); string sectionName; BindingsSection.TryAdd(this.BindingConfiguration, settings.Binding, out sectionName); this.Binding = sectionName; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- XmlProcessingInstruction.cs
- DataGridCommandEventArgs.cs
- RectangleF.cs
- LabelEditEvent.cs
- EntityDataSourceWrapper.cs
- HttpResponseHeader.cs
- TextComposition.cs
- StackSpiller.Generated.cs
- Rijndael.cs
- List.cs
- UnknownWrapper.cs
- ConnectionStringsExpressionBuilder.cs
- AddingNewEventArgs.cs
- RepeaterItem.cs
- CodeBinaryOperatorExpression.cs
- XmlAttributeAttribute.cs
- AsmxEndpointPickerExtension.cs
- DependencyObjectProvider.cs
- CustomAttributeFormatException.cs
- AsyncCallback.cs
- PenThread.cs
- ErrorTableItemStyle.cs
- _Connection.cs
- NumberSubstitution.cs
- ViewBox.cs
- PrintingPermissionAttribute.cs
- ClientRoleProvider.cs
- Converter.cs
- WebPartCatalogCloseVerb.cs
- XmlSubtreeReader.cs
- ResourceContainerWrapper.cs
- DataGridViewIntLinkedList.cs
- ConfigXmlSignificantWhitespace.cs
- FastPropertyAccessor.cs
- DataSet.cs
- SimpleRecyclingCache.cs
- ObjectSpanRewriter.cs
- XPathQilFactory.cs
- EncryptionUtility.cs
- XmlAttributes.cs
- TextDpi.cs
- PropertyState.cs
- httpserverutility.cs
- StringWriter.cs
- KeyFrames.cs
- DataRowCollection.cs
- RegistryKey.cs
- UIElement3DAutomationPeer.cs
- IOException.cs
- x509utils.cs
- EnumBuilder.cs
- AppSettingsReader.cs
- TimelineCollection.cs
- CompiledQueryCacheEntry.cs
- InternalsVisibleToAttribute.cs
- ZipIOFileItemStream.cs
- CacheMemory.cs
- AsymmetricSignatureDeformatter.cs
- TextElementEnumerator.cs
- FirstMatchCodeGroup.cs
- HebrewCalendar.cs
- AppDomainGrammarProxy.cs
- HttpModuleAction.cs
- VersionUtil.cs
- OptionalRstParameters.cs
- ApplicationHost.cs
- Aggregates.cs
- ErrorInfoXmlDocument.cs
- VSDExceptions.cs
- InternalsVisibleToAttribute.cs
- SigningCredentials.cs
- GeometryDrawing.cs
- EditorZone.cs
- Image.cs
- JournalNavigationScope.cs
- NavigatingCancelEventArgs.cs
- RelationshipEndMember.cs
- __ConsoleStream.cs
- WebPartVerb.cs
- CollectionViewGroupInternal.cs
- CodeIdentifiers.cs
- FormsAuthenticationModule.cs
- WebPartEditorApplyVerb.cs
- RelationshipNavigation.cs
- CharUnicodeInfo.cs
- Bitmap.cs
- InstanceOwnerQueryResult.cs
- AsyncPostBackTrigger.cs
- RegisteredExpandoAttribute.cs
- ILGenerator.cs
- AutoGeneratedField.cs
- SecurityContext.cs
- FormCollection.cs
- SecurityState.cs
- SrgsElementFactory.cs
- SpecialTypeDataContract.cs
- _WinHttpWebProxyDataBuilder.cs
- AdapterUtil.cs
- ReferenceService.cs
- SpotLight.cs