//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //------------------------------------------------------------------------------ namespace System.ServiceModel.Configuration { using System.Configuration; using System.ServiceModel.Channels; using System.Globalization; using System.Net; using System.Net.Security; using System.ServiceModel; using System.ServiceModel.Security; using System.ComponentModel; public sealed partial class NamedPipeTransportSecurityElement : ServiceModelConfigurationElement { [ConfigurationProperty(ConfigurationStrings.ProtectionLevel, DefaultValue = NamedPipeTransportSecurity.DefaultProtectionLevel)] [ServiceModelEnumValidator(typeof(ProtectionLevelHelper))] public ProtectionLevel ProtectionLevel { get { return (ProtectionLevel)base[ConfigurationStrings.ProtectionLevel]; } set { base[ConfigurationStrings.ProtectionLevel] = value; } } internal void ApplyConfiguration(NamedPipeTransportSecurity security) { if (security == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("security"); } security.ProtectionLevel = this.ProtectionLevel; } internal void InitializeFrom(NamedPipeTransportSecurity security) { if (security == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("security"); } SetPropertyValueIfNotDefaultValue(ConfigurationStrings.ProtectionLevel, security.ProtectionLevel); } } }