OciBindHandle.cs 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. //
  2. // OciBindHandle.cs
  3. //
  4. // Part of managed C#/.NET library System.Data.OracleClient.dll
  5. //
  6. // Part of the Mono class libraries at
  7. // mcs/class/System.Data.OracleClient/System.Data.OracleClient.Oci
  8. //
  9. // Assembly: System.Data.OracleClient.dll
  10. // Namespace: System.Data.OracleClient.Oci
  11. //
  12. // Author:
  13. // Tim Coleman <[email protected]>
  14. //
  15. // Copyright (C) Tim Coleman, 2003
  16. //
  17. using System;
  18. using System.Runtime.InteropServices;
  19. using System.Text;
  20. namespace System.Data.OracleClient.Oci {
  21. internal sealed class OciBindHandle : OciHandle, IDisposable
  22. {
  23. #region Fields
  24. bool disposed = false;
  25. IntPtr value;
  26. #endregion // Fields
  27. #region Constructors
  28. public OciBindHandle (OciHandle parent)
  29. : base (OciHandleType.Bind, parent, IntPtr.Zero)
  30. {
  31. }
  32. #endregion // Constructors
  33. #region Properties
  34. public IntPtr Value {
  35. get { return value; }
  36. set { this.value = value; }
  37. }
  38. #endregion // Properties
  39. #region Methods
  40. protected override void Dispose (bool disposing)
  41. {
  42. if (!disposed) {
  43. try {
  44. Marshal.FreeHGlobal (value);
  45. disposed = true;
  46. } finally {
  47. base.Dispose (disposing);
  48. }
  49. }
  50. }
  51. #endregion // Methods
  52. }
  53. }