DbDataPermission.cs 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161
  1. //
  2. // System.Data.Common.DbDataPermission.cs
  3. //
  4. // Author:
  5. // Rodrigo Moya ([email protected])
  6. // Tim Coleman ([email protected])
  7. //
  8. // (C) Ximian, Inc
  9. // Copyright (C) Tim Coleman, 2002-2003
  10. //
  11. using System.Data;
  12. using System.Security;
  13. using System.Security.Permissions;
  14. namespace System.Data.Common {
  15. [Serializable]
  16. public abstract class DBDataPermission : CodeAccessPermission, IUnrestrictedPermission
  17. {
  18. #region Fields
  19. bool allowBlankPassword;
  20. PermissionState state;
  21. #endregion // Fields
  22. #region Constructors
  23. #if NET_1_2
  24. [Obsolete ("use DBDataPermission (PermissionState.None)", true)]
  25. #endif
  26. protected DBDataPermission ()
  27. : this (PermissionState.None, false)
  28. {
  29. }
  30. #if NET_1_2
  31. [MonoTODO]
  32. protected DBDataPermission (DbConnectionString constr)
  33. {
  34. }
  35. #endif
  36. protected DBDataPermission (PermissionState state)
  37. : this (state, false, false)
  38. {
  39. }
  40. #if NET_1_2
  41. [Obsolete ("use DBDataPermission (PermissionState.None)", true)]
  42. #endif
  43. public DBDataPermission (PermissionState state, bool allowBlankPassword)
  44. : this (state, allowBlankPassword, true)
  45. {
  46. }
  47. internal DBDataPermission (PermissionState state, bool allowBlankPassword, bool dummyArg)
  48. {
  49. this.state = state;
  50. this.allowBlankPassword = allowBlankPassword;
  51. }
  52. #endregion // Constructors
  53. #region Properties
  54. public bool AllowBlankPassword {
  55. get { return allowBlankPassword; }
  56. set { allowBlankPassword = value; }
  57. }
  58. internal PermissionState State {
  59. get { return state; }
  60. set { state = value; }
  61. }
  62. #endregion // Properties
  63. #region Methods
  64. #if NET_1_1
  65. [MonoTODO]
  66. public virtual void Add (string connectionString, string restrictions, KeyRestrictionBehavior behavior)
  67. {
  68. throw new NotImplementedException ();
  69. }
  70. #endif
  71. #if NET_1_2
  72. [MonoTODO]
  73. protected void AddConnectionString (DbConnectionString constr)
  74. {
  75. throw new NotImplementedException ();
  76. }
  77. #endif
  78. public override IPermission Copy ()
  79. {
  80. DBDataPermission copy = CreateInstance ();
  81. copy.AllowBlankPassword = this.allowBlankPassword;
  82. copy.State = this.state;
  83. return copy;
  84. }
  85. protected virtual DBDataPermission CreateInstance ()
  86. {
  87. return (DBDataPermission) Activator.CreateInstance (this.GetType ());
  88. }
  89. [MonoTODO]
  90. public override void FromXml (SecurityElement securityElement)
  91. {
  92. throw new NotImplementedException ();
  93. }
  94. [MonoTODO]
  95. public override IPermission Intersect (IPermission target)
  96. {
  97. throw new NotImplementedException ();
  98. }
  99. [MonoTODO]
  100. public override bool IsSubsetOf (IPermission target)
  101. {
  102. throw new NotImplementedException ();
  103. }
  104. public bool IsUnrestricted ()
  105. {
  106. return (state == PermissionState.Unrestricted);
  107. }
  108. #if NET_1_2
  109. [MonoTODO]
  110. protected void SetConnectionString (DbConnectionString constr)
  111. {
  112. throw new NotImplementedException ();
  113. }
  114. [MonoTODO]
  115. public virtual void SetRestriction (string connectionString, string restrictions, KeyRestrictionBehavior behavior)
  116. {
  117. throw new NotImplementedException ();
  118. }
  119. #endif
  120. [MonoTODO]
  121. public override SecurityElement ToXml ()
  122. {
  123. throw new NotImplementedException ();
  124. }
  125. [MonoTODO]
  126. public override IPermission Union (IPermission target)
  127. {
  128. throw new NotImplementedException ();
  129. }
  130. #endregion // Methods
  131. }
  132. }