PumpReservationStateChangeEventArgs.cs 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. using System;
  2. namespace Wayne.ForecourtControl
  3. {
  4. /// <summary>
  5. /// Event argument for a PumpReservationStateChange Event.
  6. /// </summary>
  7. public class PumpReservationStateChangeEventArgs : EventArgs
  8. {
  9. #region Fields
  10. private IPump pump;
  11. private int reservedBy;
  12. #endregion
  13. #region Constructor
  14. /// <summary>
  15. /// Constructor
  16. /// </summary>
  17. /// <param name="pump"></param>
  18. /// <param name="reservedBy">Who is reserving this pump (0 if none)</param>
  19. public PumpReservationStateChangeEventArgs(IPump pump, int reservedBy)
  20. {
  21. this.pump = pump;
  22. this.reservedBy = reservedBy;
  23. }
  24. #endregion
  25. #region Properties
  26. /// <summary>
  27. /// The new reserving client id.
  28. /// </summary>
  29. public int ReservedBy { get { return reservedBy; } }
  30. /// <summary>
  31. /// The Pump whose reservation state was changed.
  32. /// </summary>
  33. public IPump Pump
  34. {
  35. get { return pump; }
  36. set { pump = value; }
  37. }
  38. #endregion
  39. #region Debug methods
  40. /// <summary>
  41. /// Presents the class as a string.
  42. /// </summary>
  43. /// <returns></returns>
  44. public virtual string ToString(string format, IFormatProvider provider)
  45. {
  46. return String.Format(System.Globalization.CultureInfo.InvariantCulture,"PumpReservationStateChange PumpId={0}, ReservedBy={1}", pump.Id, reservedBy.ToString()); ;
  47. }
  48. /// <summary>
  49. /// Presents the class as a string using the specified culture-specific format information.
  50. /// </summary>
  51. /// <returns></returns>
  52. public virtual string ToString(IFormatProvider provider)
  53. {
  54. return ToString("", provider);
  55. }
  56. /// <summary>
  57. /// Presents the class as a string using a format string.
  58. /// </summary>
  59. /// <returns></returns>
  60. public virtual string ToString(string format)
  61. {
  62. return ToString(format, System.Globalization.CultureInfo.InvariantCulture);
  63. }
  64. /// <summary>
  65. /// Presents the class as a string using a format string and the specified culture-specific format information.
  66. /// </summary>
  67. /// <returns></returns>
  68. public override string ToString()
  69. {
  70. return ToString("", System.Globalization.CultureInfo.InvariantCulture);
  71. }
  72. #endregion
  73. }
  74. }