Updates referencesource to .NET 4.7
[mono-project.git] / mcs / class / referencesource / System.ServiceModel / System / ServiceModel / Configuration / HttpsTransportElement.cs
blob5e54dbf2fbd56b5381e75db44bf21638ede23686
1 //------------------------------------------------------------------------------
2 // Copyright (c) Microsoft Corporation. All rights reserved.
3 //------------------------------------------------------------------------------
5 namespace System.ServiceModel.Configuration
7 using System.Configuration;
8 using System.ServiceModel.Channels;
10 public partial class HttpsTransportElement : HttpTransportElement
12 public HttpsTransportElement()
16 public override void ApplyConfiguration(BindingElement bindingElement)
18 base.ApplyConfiguration(bindingElement);
19 HttpsTransportBindingElement binding = (HttpsTransportBindingElement)bindingElement;
20 binding.RequireClientCertificate = this.RequireClientCertificate;
23 public override Type BindingElementType
25 get { return typeof(HttpsTransportBindingElement); }
28 public override void CopyFrom(ServiceModelExtensionElement from)
30 base.CopyFrom(from);
32 HttpsTransportElement source = (HttpsTransportElement)from;
33 #pragma warning suppress 56506 // Microsoft, base.CopyFrom() validates the argument
34 this.RequireClientCertificate = source.RequireClientCertificate;
37 protected override TransportBindingElement CreateDefaultBindingElement()
39 return new HttpsTransportBindingElement();
42 protected internal override void InitializeFrom(BindingElement bindingElement)
44 base.InitializeFrom(bindingElement);
45 HttpsTransportBindingElement binding = (HttpsTransportBindingElement)bindingElement;
46 SetPropertyValueIfNotDefaultValue(ConfigurationStrings.RequireClientCertificate, binding.RequireClientCertificate);
49 [ConfigurationProperty(ConfigurationStrings.RequireClientCertificate, DefaultValue = TransportDefaults.RequireClientCertificate)]
50 public bool RequireClientCertificate
52 get { return (bool)base[ConfigurationStrings.RequireClientCertificate]; }
53 set { base[ConfigurationStrings.RequireClientCertificate] = value; }