OleDbError.cs 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. //
  2. // System.Data.OleDb.OleDbError
  3. //
  4. // Authors:
  5. // Rodrigo Moya ([email protected])
  6. // Tim Coleman ([email protected])
  7. //
  8. // Copyright (C) Rodrigo Moya, 2002
  9. // Copyright (C) Tim Coleman, 2002
  10. //
  11. //
  12. // Copyright (C) 2004 Novell, Inc (http://www.novell.com)
  13. //
  14. // Permission is hereby granted, free of charge, to any person obtaining
  15. // a copy of this software and associated documentation files (the
  16. // "Software"), to deal in the Software without restriction, including
  17. // without limitation the rights to use, copy, modify, merge, publish,
  18. // distribute, sublicense, and/or sell copies of the Software, and to
  19. // permit persons to whom the Software is furnished to do so, subject to
  20. // the following conditions:
  21. //
  22. // The above copyright notice and this permission notice shall be
  23. // included in all copies or substantial portions of the Software.
  24. //
  25. // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
  26. // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
  27. // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
  28. // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
  29. // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
  30. // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
  31. // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
  32. //
  33. using System.Data;
  34. using System.Data.Common;
  35. namespace System.Data.OleDb
  36. {
  37. public sealed class OleDbError
  38. {
  39. private string errorMessage;
  40. private int nativeError;
  41. private string errorSource;
  42. private string sqlState;
  43. #region Constructors
  44. internal OleDbError (string msg, int code, string source, string sql)
  45. {
  46. errorMessage = msg;
  47. nativeError = code;
  48. errorSource = source;
  49. sqlState = sql;
  50. }
  51. #endregion // Constructors
  52. #region Properties
  53. public string Message {
  54. get {
  55. return errorMessage;
  56. }
  57. }
  58. public int NativeError {
  59. get {
  60. return nativeError;
  61. }
  62. }
  63. public string Source {
  64. get {
  65. return errorSource;
  66. }
  67. }
  68. public string SQLState {
  69. get {
  70. return sqlState;
  71. }
  72. }
  73. #endregion
  74. #region Methods
  75. [MonoTODO]
  76. public override string ToString ()
  77. {
  78. string toStr;
  79. String stackTrace;
  80. stackTrace = " <Stack Trace>";
  81. // FIXME: generate the correct SQL error string
  82. toStr = "OleDbError:" + errorMessage + stackTrace;
  83. return toStr;
  84. }
  85. #endregion
  86. }
  87. }