WSHttpBindingElement.cs 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. //------------------------------------------------------------------------------
  2. // Copyright (c) Microsoft Corporation. All rights reserved.
  3. //------------------------------------------------------------------------------
  4. namespace System.ServiceModel.Configuration
  5. {
  6. using System.Configuration;
  7. using System.ServiceModel;
  8. using System.Globalization;
  9. using System.ServiceModel.Security;
  10. using System.ComponentModel;
  11. using System.Text;
  12. using System.ServiceModel.Channels;
  13. public partial class WSHttpBindingElement : WSHttpBindingBaseElement
  14. {
  15. public WSHttpBindingElement(string name)
  16. : base(name)
  17. {
  18. }
  19. public WSHttpBindingElement()
  20. : this(null)
  21. {
  22. }
  23. protected override Type BindingElementType
  24. {
  25. get { return typeof(WSHttpBinding); }
  26. }
  27. [ConfigurationProperty(ConfigurationStrings.AllowCookies, DefaultValue = HttpTransportDefaults.AllowCookies)]
  28. public bool AllowCookies
  29. {
  30. get { return (bool)base[ConfigurationStrings.AllowCookies]; }
  31. set { base[ConfigurationStrings.AllowCookies] = value; }
  32. }
  33. [ConfigurationProperty(ConfigurationStrings.Security)]
  34. public WSHttpSecurityElement Security
  35. {
  36. get { return (WSHttpSecurityElement)base[ConfigurationStrings.Security]; }
  37. }
  38. protected internal override void InitializeFrom(Binding binding)
  39. {
  40. base.InitializeFrom(binding);
  41. WSHttpBinding wspBinding = (WSHttpBinding) binding;
  42. SetPropertyValueIfNotDefaultValue(ConfigurationStrings.AllowCookies, wspBinding.AllowCookies);
  43. this.Security.InitializeFrom(wspBinding.Security);
  44. }
  45. protected override void OnApplyConfiguration(Binding binding)
  46. {
  47. base.OnApplyConfiguration(binding);
  48. WSHttpBinding wspBinding = (WSHttpBinding) binding;
  49. wspBinding.AllowCookies = this.AllowCookies;
  50. this.Security.ApplyConfiguration(wspBinding.Security);
  51. }
  52. }
  53. }