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
- EmptyStringExpandableObjectConverter.cs
- APCustomTypeDescriptor.cs
- SecurityResources.cs
- Stream.cs
- XmlDocumentFragment.cs
- PointCollectionConverter.cs
- Baml2006SchemaContext.cs
- WizardForm.cs
- ResolveNameEventArgs.cs
- ProvideValueServiceProvider.cs
- SmiGettersStream.cs
- AssemblyHash.cs
- HashLookup.cs
- DbMetaDataColumnNames.cs
- DataGridViewCellContextMenuStripNeededEventArgs.cs
- OperatorExpressions.cs
- DefaultEvaluationContext.cs
- TextRangeBase.cs
- ContractUtils.cs
- CellTreeNodeVisitors.cs
- XPathArrayIterator.cs
- EdmItemCollection.cs
- ClientRequest.cs
- AppSettingsReader.cs
- DependencyPropertyKind.cs
- DocumentViewerAutomationPeer.cs
- DXD.cs
- CollectionBuilder.cs
- JsonReaderWriterFactory.cs
- ExceptionHandler.cs
- DataGridViewComboBoxColumn.cs
- ListBoxItemAutomationPeer.cs
- RegionData.cs
- HttpTransportElement.cs
- SplitterEvent.cs
- Number.cs
- TextElement.cs
- StaticFileHandler.cs
- httpapplicationstate.cs
- JournalEntry.cs
- SoapFault.cs
- controlskin.cs
- pingexception.cs
- CallbackValidatorAttribute.cs
- GridViewCancelEditEventArgs.cs
- CapabilitiesUse.cs
- FormViewDeletedEventArgs.cs
- DataKey.cs
- ParenthesizePropertyNameAttribute.cs
- Win32MouseDevice.cs
- FrameworkEventSource.cs
- BlockingCollection.cs
- IDReferencePropertyAttribute.cs
- AllMembershipCondition.cs
- IntPtr.cs
- FileChangesMonitor.cs
- PersonalizationProviderCollection.cs
- TextStore.cs
- PeekCompletedEventArgs.cs
- ElementHostPropertyMap.cs
- PropertyPushdownHelper.cs
- TableParagraph.cs
- TypeGenericEnumerableViewSchema.cs
- Parameter.cs
- FileClassifier.cs
- FreezableDefaultValueFactory.cs
- _PooledStream.cs
- SecurityRuntime.cs
- EditCommandColumn.cs
- XmlSchemaValidationException.cs
- MatrixTransform3D.cs
- FixedPageAutomationPeer.cs
- ADMembershipProvider.cs
- URL.cs
- TextShapeableCharacters.cs
- CodeDirectiveCollection.cs
- ContextMarshalException.cs
- ConfigXmlText.cs
- GlyphsSerializer.cs
- DirectoryObjectSecurity.cs
- GlyphManager.cs
- Nullable.cs
- Switch.cs
- PropertyPushdownHelper.cs
- LockedHandleGlyph.cs
- RunClient.cs
- BuildProviderAppliesToAttribute.cs
- Debug.cs
- BrushValueSerializer.cs
- HeaderedContentControl.cs
- MailFileEditor.cs
- AsmxEndpointPickerExtension.cs
- ModelProperty.cs
- TimeZone.cs
- XmlSchemaSimpleContent.cs
- SecurityTraceRecordHelper.cs
- InternalControlCollection.cs
- BindingCompleteEventArgs.cs
- Viewport3DVisual.cs
- FontStyle.cs