PayloadBase.cs 788 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. using System;
  2. namespace AipGateway.Messaging.Models
  3. {
  4. [Serializable]
  5. public abstract class PayloadBase
  6. {
  7. private DateTime timeStamp;
  8. public PayloadBase()
  9. {
  10. }
  11. public PayloadBase(DateTime timeStamp)
  12. {
  13. this.timeStamp = timeStamp;
  14. }
  15. public abstract PayloadType PayloadType
  16. {
  17. get;
  18. }
  19. public virtual void Initialize()
  20. {
  21. timeStamp = DateTime.UtcNow;
  22. }
  23. public DateTime TimeStamp
  24. {
  25. get
  26. {
  27. return timeStamp;
  28. }
  29. set
  30. {
  31. if (timeStamp == value)
  32. return;
  33. timeStamp = value;
  34. }
  35. }
  36. }
  37. }