Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / Configuration / ServiceCredentialsElement.cs / 1 / ServiceCredentialsElement.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.ServiceModel.Configuration { using System.Configuration; using System.ServiceModel; using System.ServiceModel.Description; using System.Globalization; using System.Net.Security; using System.ServiceModel.Security; using System.Security.Cryptography.X509Certificates; public partial class ServiceCredentialsElement : BehaviorExtensionElement { public ServiceCredentialsElement() { } [ConfigurationProperty(ConfigurationStrings.Type, DefaultValue = "")] [StringValidator(MinLength = 0)] public string Type { get { return (string)base[ConfigurationStrings.Type]; } set { if (String.IsNullOrEmpty(value)) { value = String.Empty; } base[ConfigurationStrings.Type] = value; } } [ConfigurationProperty(ConfigurationStrings.ClientCertificate)] public X509InitiatorCertificateServiceElement ClientCertificate { get { return (X509InitiatorCertificateServiceElement)base[ConfigurationStrings.ClientCertificate]; } } [ConfigurationProperty(ConfigurationStrings.ServiceCertificate)] public X509RecipientCertificateServiceElement ServiceCertificate { get { return (X509RecipientCertificateServiceElement)base[ConfigurationStrings.ServiceCertificate]; } } [ConfigurationProperty(ConfigurationStrings.UserNameAuthentication)] public UserNameServiceElement UserNameAuthentication { get { return (UserNameServiceElement)base[ConfigurationStrings.UserNameAuthentication]; } } [ConfigurationProperty(ConfigurationStrings.WindowsAuthentication)] public WindowsServiceElement WindowsAuthentication { get { return (WindowsServiceElement)base[ConfigurationStrings.WindowsAuthentication]; } } [ConfigurationProperty(ConfigurationStrings.Peer)] public PeerCredentialElement Peer { get { return (PeerCredentialElement)base[ConfigurationStrings.Peer]; } } [ConfigurationProperty(ConfigurationStrings.IssuedTokenAuthentication)] public IssuedTokenServiceElement IssuedTokenAuthentication { get { return (IssuedTokenServiceElement)base[ConfigurationStrings.IssuedTokenAuthentication]; } } [ConfigurationProperty(ConfigurationStrings.SecureConversationAuthentication)] public SecureConversationServiceElement SecureConversationAuthentication { get { return (SecureConversationServiceElement)base[ConfigurationStrings.SecureConversationAuthentication]; } } public override void CopyFrom(ServiceModelExtensionElement from) { base.CopyFrom(from); ServiceCredentialsElement source = (ServiceCredentialsElement)from; #pragma warning suppress 56506 //[....]; base.CopyFrom() checks for 'from' being null this.ClientCertificate.Copy(source.ClientCertificate); this.ServiceCertificate.Copy(source.ServiceCertificate); this.UserNameAuthentication.Copy(source.UserNameAuthentication); this.WindowsAuthentication.Copy(source.WindowsAuthentication); this.Peer.Copy(source.Peer); this.IssuedTokenAuthentication.Copy(source.IssuedTokenAuthentication); this.SecureConversationAuthentication.Copy(source.SecureConversationAuthentication); this.Type = source.Type; } protected internal override object CreateBehavior() { ServiceCredentials behavior; if (string.IsNullOrEmpty(this.Type)) { behavior = new ServiceCredentials(); } else { Type credentialsType = System.Type.GetType(this.Type, true); if (!typeof(ServiceCredentials).IsAssignableFrom(credentialsType)) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ConfigurationErrorsException( SR.GetString(SR.ConfigInvalidServiceCredentialsType, this.Type, credentialsType.AssemblyQualifiedName))); } behavior = (ServiceCredentials)Activator.CreateInstance(credentialsType); } ApplyConfiguration(behavior); return behavior; } protected internal void ApplyConfiguration(ServiceCredentials behavior) { if (behavior == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("behavior"); } PropertyInformationCollection propertyInfo = this.ElementInformation.Properties; if (propertyInfo[ConfigurationStrings.UserNameAuthentication].ValueOrigin != PropertyValueOrigin.Default) { this.UserNameAuthentication.ApplyConfiguration(behavior.UserNameAuthentication); } if (propertyInfo[ConfigurationStrings.WindowsAuthentication].ValueOrigin != PropertyValueOrigin.Default) { this.WindowsAuthentication.ApplyConfiguration(behavior.WindowsAuthentication); } if (propertyInfo[ConfigurationStrings.ClientCertificate].ValueOrigin != PropertyValueOrigin.Default) { this.ClientCertificate.ApplyConfiguration(behavior.ClientCertificate); } if (propertyInfo[ConfigurationStrings.ServiceCertificate].ValueOrigin != PropertyValueOrigin.Default) { this.ServiceCertificate.ApplyConfiguration(behavior.ServiceCertificate); } if (propertyInfo[ConfigurationStrings.Peer].ValueOrigin != PropertyValueOrigin.Default) { this.Peer.ApplyConfiguration(behavior.Peer); } if (propertyInfo[ConfigurationStrings.IssuedTokenAuthentication].ValueOrigin != PropertyValueOrigin.Default) { this.IssuedTokenAuthentication.ApplyConfiguration(behavior.IssuedTokenAuthentication); } if (propertyInfo[ConfigurationStrings.SecureConversationAuthentication].ValueOrigin != PropertyValueOrigin.Default) { this.SecureConversationAuthentication.ApplyConfiguration(behavior.SecureConversationAuthentication); } } public override Type BehaviorType { get { return typeof(ServiceCredentials); } } } } // 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
- RotateTransform.cs
- Helpers.cs
- ApplicationSettingsBase.cs
- BodyWriter.cs
- GcSettings.cs
- MachineSettingsSection.cs
- PrintingPermissionAttribute.cs
- GraphicsContainer.cs
- AtomServiceDocumentSerializer.cs
- ScriptControlManager.cs
- LightweightEntityWrapper.cs
- ProjectionPlanCompiler.cs
- ConsumerConnectionPointCollection.cs
- NameSpaceEvent.cs
- FontUnit.cs
- FixedTextContainer.cs
- ProtectedUri.cs
- SpeechEvent.cs
- DrawingDrawingContext.cs
- DirectionalLight.cs
- CodeSnippetStatement.cs
- StreamReader.cs
- XmlSchemaSequence.cs
- AuthenticateEventArgs.cs
- TreeNodeStyleCollectionEditor.cs
- InputScopeConverter.cs
- ChangeTracker.cs
- SqlDataSourceQueryConverter.cs
- ListViewInsertedEventArgs.cs
- CompareInfo.cs
- RsaEndpointIdentity.cs
- Rectangle.cs
- GeometryCollection.cs
- DelegatingTypeDescriptionProvider.cs
- RemoteArgument.cs
- WebPartTracker.cs
- DocumentPage.cs
- RegexGroup.cs
- WebPartZoneBaseDesigner.cs
- StructuralType.cs
- OperationFormatUse.cs
- ContentElement.cs
- ScriptingWebServicesSectionGroup.cs
- SortedList.cs
- ServiceMemoryGates.cs
- TreeNodeCollection.cs
- GroupBoxRenderer.cs
- XmlBindingWorker.cs
- WebPartZone.cs
- WebPartDescriptionCollection.cs
- StrokeDescriptor.cs
- StylusEventArgs.cs
- DrawingContextDrawingContextWalker.cs
- StrongNameIdentityPermission.cs
- PagerSettings.cs
- BorderSidesEditor.cs
- DtdParser.cs
- ChangesetResponse.cs
- BindingManagerDataErrorEventArgs.cs
- ToolStripItemGlyph.cs
- HttpSessionStateBase.cs
- XmlCollation.cs
- CommunicationObjectManager.cs
- DeleteMemberBinder.cs
- MessageQueueException.cs
- BamlResourceSerializer.cs
- TextServicesProperty.cs
- CollectionView.cs
- GeneralTransform3DGroup.cs
- ObjectDataSourceMethodEventArgs.cs
- Empty.cs
- CalendarDayButton.cs
- ComAwareEventInfo.cs
- EntityRecordInfo.cs
- ClientConvert.cs
- ImageCollectionCodeDomSerializer.cs
- DataGridViewCellEventArgs.cs
- SrgsSemanticInterpretationTag.cs
- RowToParametersTransformer.cs
- ProcessHostConfigUtils.cs
- Int32CAMarshaler.cs
- TraceSwitch.cs
- CompiledRegexRunnerFactory.cs
- SerializationFieldInfo.cs
- XamlSerializerUtil.cs
- RangeBase.cs
- TokenizerHelper.cs
- EntityStoreSchemaGenerator.cs
- StackSpiller.cs
- ReadOnlyObservableCollection.cs
- Collection.cs
- FileClassifier.cs
- CaseInsensitiveOrdinalStringComparer.cs
- AbstractExpressions.cs
- XmlSchemaGroupRef.cs
- XmlObjectSerializerReadContextComplexJson.cs
- SqlFlattener.cs
- StructuredProperty.cs
- PathTooLongException.cs
- UIElement3D.cs