SecurityPolicyVersion.cs 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. //------------------------------------------------------------
  2. // Copyright (c) Microsoft Corporation. All rights reserved.
  3. //------------------------------------------------------------
  4. using System;
  5. using System.Collections.Generic;
  6. using System.Text;
  7. using System.Xml;
  8. namespace System.ServiceModel.Security
  9. {
  10. public abstract class SecurityPolicyVersion
  11. {
  12. readonly String spNamespace;
  13. readonly String prefix;
  14. internal SecurityPolicyVersion(String ns, String prefix)
  15. {
  16. this.spNamespace = ns;
  17. this.prefix = prefix;
  18. }
  19. public String Namespace
  20. {
  21. get
  22. {
  23. return this.spNamespace;
  24. }
  25. }
  26. public String Prefix
  27. {
  28. get
  29. {
  30. return this.prefix;
  31. }
  32. }
  33. public static SecurityPolicyVersion WSSecurityPolicy11
  34. {
  35. get { return WSSecurityPolicyVersion11.Instance; }
  36. }
  37. public static SecurityPolicyVersion WSSecurityPolicy12
  38. {
  39. get { return WSSecurityPolicyVersion12.Instance; }
  40. }
  41. class WSSecurityPolicyVersion11 : SecurityPolicyVersion
  42. {
  43. static readonly WSSecurityPolicyVersion11 instance = new WSSecurityPolicyVersion11();
  44. protected WSSecurityPolicyVersion11()
  45. : base(System.ServiceModel.Security.WSSecurityPolicy11.WsspNamespace, WSSecurityPolicy.WsspPrefix)
  46. {
  47. }
  48. public static SecurityPolicyVersion Instance
  49. {
  50. get
  51. {
  52. return instance;
  53. }
  54. }
  55. }
  56. class WSSecurityPolicyVersion12 : SecurityPolicyVersion
  57. {
  58. static readonly WSSecurityPolicyVersion12 instance = new WSSecurityPolicyVersion12();
  59. protected WSSecurityPolicyVersion12()
  60. : base(System.ServiceModel.Security.WSSecurityPolicy12.WsspNamespace, WSSecurityPolicy.WsspPrefix)
  61. {
  62. }
  63. public static SecurityPolicyVersion Instance
  64. {
  65. get
  66. {
  67. return instance;
  68. }
  69. }
  70. }
  71. }
  72. }