Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / PeerTransportSecuritySettings.cs / 1 / PeerTransportSecuritySettings.cs
//------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.ServiceModel { using System; using System.ComponentModel; using System.Net; using System.Net.Security; using System.ServiceModel.Channels; using System.ServiceModel.Configuration; using System.ServiceModel.Description; using System.ServiceModel.Security; using System.Xml; public sealed class PeerTransportSecuritySettings { internal const PeerTransportCredentialType DefaultCredentialType = PeerTransportCredentialType.Password; PeerTransportCredentialType credentialType; internal PeerTransportSecuritySettings() { this.credentialType = DefaultCredentialType; } internal PeerTransportSecuritySettings(PeerTransportSecuritySettings other) { this.credentialType = other.credentialType; } internal PeerTransportSecuritySettings(PeerTransportSecurityElement element) { credentialType = element.CredentialType; } public PeerTransportCredentialType CredentialType { get { return this.credentialType; } set { if (!PeerTransportCredentialTypeHelper.IsDefined(value)) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new InvalidEnumArgumentException("value", (int)value, typeof(PeerTransportCredentialType))); } this.credentialType = value; } } internal void OnImportPolicy(MetadataImporter importer, PolicyConversionContext context) { XmlElement element = PolicyConversionContext.FindAssertion(context.GetBindingAssertions(), PeerTransportPolicyConstants.PeerTransportCredentialType, TransportPolicyConstants.PeerTransportUri, true); PeerTransportCredentialType credentialType = PeerTransportCredentialType.Password; if (element != null) { switch (element.InnerText) { case PeerTransportPolicyConstants.PeerTransportCredentialTypePassword: credentialType = PeerTransportCredentialType.Password; break; case PeerTransportPolicyConstants.PeerTransportCredentialTypeCertificate: credentialType = PeerTransportCredentialType.Certificate; break; default: break; } } this.CredentialType = credentialType; } internal void OnExportPolicy(MetadataExporter exporter, PolicyConversionContext context) { string assertion = ""; switch (this.CredentialType) { case PeerTransportCredentialType.Password: assertion = PeerTransportPolicyConstants.PeerTransportCredentialTypePassword; break; case PeerTransportCredentialType.Certificate: assertion = PeerTransportPolicyConstants.PeerTransportCredentialTypeCertificate; break; default: DiagnosticUtility.DebugAssert("Unsupported value for PeerTransportSecuritySettings.CredentialType"); throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new NotSupportedException()); } XmlDocument doc = new XmlDocument(); XmlElement element = doc.CreateElement(PeerTransportPolicyConstants.PeerTransportPrefix, PeerTransportPolicyConstants.PeerTransportCredentialType, TransportPolicyConstants.PeerTransportUri); element.InnerText = assertion; context.GetBindingAssertions().Add(element); } } } // 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
- CodeTypeMember.cs
- DocumentOrderQuery.cs
- InputManager.cs
- DragDrop.cs
- QueryOpeningEnumerator.cs
- ThumbButtonInfoCollection.cs
- XamlClipboardData.cs
- BitmapEffectGroup.cs
- ActionFrame.cs
- CFStream.cs
- Membership.cs
- FormsAuthenticationModule.cs
- PolyLineSegment.cs
- RawStylusInputCustomData.cs
- UIElementParagraph.cs
- WebResourceAttribute.cs
- XmlSchemaDocumentation.cs
- XmlAttributeAttribute.cs
- CodeGenerator.cs
- RequestCacheValidator.cs
- PeerService.cs
- ExtenderControl.cs
- _Semaphore.cs
- Primitive.cs
- XmlNavigatorFilter.cs
- SessionStateUtil.cs
- ConfigXmlAttribute.cs
- Quad.cs
- DataTablePropertyDescriptor.cs
- DirectoryNotFoundException.cs
- DefaultCommandConverter.cs
- WorkflowMarkupSerializerMapping.cs
- EmptyControlCollection.cs
- UnsafeNativeMethodsMilCoreApi.cs
- TypedElement.cs
- SqlMethodAttribute.cs
- XmlSerializerNamespaces.cs
- XmlComment.cs
- EncoderExceptionFallback.cs
- Msec.cs
- EncodingNLS.cs
- InstanceData.cs
- WebPartVerbCollection.cs
- WebPartCloseVerb.cs
- _Rfc2616CacheValidators.cs
- TraceLevelHelper.cs
- DataGridLinkButton.cs
- SubtreeProcessor.cs
- XPathException.cs
- StateChangeEvent.cs
- EventEntry.cs
- BinaryConverter.cs
- DateTime.cs
- WindowsFormsSynchronizationContext.cs
- GifBitmapDecoder.cs
- PopupRoot.cs
- ObjectPersistData.cs
- AspNetHostingPermission.cs
- HostUtils.cs
- TrackingMemoryStreamFactory.cs
- CompilerScope.Storage.cs
- DrawingVisualDrawingContext.cs
- SecurityHelper.cs
- XmlSchemaChoice.cs
- NonParentingControl.cs
- IdentityHolder.cs
- BlurEffect.cs
- XmlSchemaCompilationSettings.cs
- CategoryNameCollection.cs
- DebugController.cs
- ScrollBarRenderer.cs
- SqlClientMetaDataCollectionNames.cs
- safemediahandle.cs
- ValidationEventArgs.cs
- CommentAction.cs
- WebResponse.cs
- Activity.cs
- DBParameter.cs
- TypedOperationInfo.cs
- StubHelpers.cs
- SiteMapPath.cs
- MetadataArtifactLoaderCompositeFile.cs
- SimpleExpression.cs
- FileUpload.cs
- MetadataSource.cs
- WorkflowMessageEventHandler.cs
- TextDocumentView.cs
- PeerToPeerException.cs
- SvcMapFileLoader.cs
- ConnectionPoint.cs
- Internal.cs
- ErrorTableItemStyle.cs
- XmlDataContract.cs
- PatternMatcher.cs
- DefaultIfEmptyQueryOperator.cs
- EndEvent.cs
- DataGridViewCellCollection.cs
- SaveFileDialog.cs
- ContentOperations.cs
- BooleanKeyFrameCollection.cs