MsmqIntegrationSecurityElement.cs 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  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.MsmqIntegration;
  13. using System.ServiceModel.Security;
  14. using System.ComponentModel;
  15. public sealed partial class MsmqIntegrationSecurityElement : ServiceModelConfigurationElement
  16. {
  17. [ConfigurationProperty(ConfigurationStrings.Mode, DefaultValue = MsmqIntegrationSecurity.DefaultMode)]
  18. [ServiceModelEnumValidator(typeof(MsmqIntegrationSecurityModeHelper))]
  19. public MsmqIntegrationSecurityMode Mode
  20. {
  21. get { return (MsmqIntegrationSecurityMode)base[ConfigurationStrings.Mode]; }
  22. set { base[ConfigurationStrings.Mode] = value; }
  23. }
  24. [ConfigurationProperty(ConfigurationStrings.Transport)]
  25. public MsmqTransportSecurityElement Transport
  26. {
  27. get { return (MsmqTransportSecurityElement)base[ConfigurationStrings.Transport]; }
  28. }
  29. internal void ApplyConfiguration(MsmqIntegrationSecurity security)
  30. {
  31. if (security == null)
  32. {
  33. throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("security");
  34. }
  35. security.Mode = this.Mode;
  36. this.Transport.ApplyConfiguration(security.Transport);
  37. }
  38. internal void InitializeFrom(MsmqIntegrationSecurity security)
  39. {
  40. if (security == null)
  41. {
  42. throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("security");
  43. }
  44. SetPropertyValueIfNotDefaultValue(ConfigurationStrings.Mode, security.Mode);
  45. this.Transport.InitializeFrom(security.Transport);
  46. }
  47. }
  48. }