WSFederationHttpSecurityElement.cs 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. //------------------------------------------------------------------------------
  2. // Copyright (c) Microsoft Corporation. All rights reserved.
  3. //------------------------------------------------------------------------------
  4. namespace System.ServiceModel.Configuration
  5. {
  6. using System.Configuration;
  7. using System.ServiceModel.Channels;
  8. using System.Globalization;
  9. using System.Net;
  10. using System.Net.Security;
  11. using System.ServiceModel;
  12. using System.ServiceModel.Security;
  13. using System.ComponentModel;
  14. public sealed partial class WSFederationHttpSecurityElement : ServiceModelConfigurationElement
  15. {
  16. [ConfigurationProperty(ConfigurationStrings.Mode, DefaultValue = WSFederationHttpSecurity.DefaultMode)]
  17. [ServiceModelEnumValidator(typeof(WSFederationHttpSecurityModeHelper))]
  18. public WSFederationHttpSecurityMode Mode
  19. {
  20. get { return (WSFederationHttpSecurityMode)base[ConfigurationStrings.Mode]; }
  21. set { base[ConfigurationStrings.Mode] = value; }
  22. }
  23. [ConfigurationProperty(ConfigurationStrings.Message)]
  24. public FederatedMessageSecurityOverHttpElement Message
  25. {
  26. get { return (FederatedMessageSecurityOverHttpElement)base[ConfigurationStrings.Message]; }
  27. }
  28. internal void ApplyConfiguration(WSFederationHttpSecurity security)
  29. {
  30. if (security == null)
  31. {
  32. throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("security");
  33. }
  34. security.Mode = this.Mode;
  35. this.Message.ApplyConfiguration(security.Message);
  36. }
  37. internal void InitializeFrom(WSFederationHttpSecurity security)
  38. {
  39. if (security == null)
  40. {
  41. throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("security");
  42. }
  43. SetPropertyValueIfNotDefaultValue(ConfigurationStrings.Mode, security.Mode);
  44. this.Message.InitializeFrom(security.Message);
  45. }
  46. }
  47. }