PageRenderTime 44ms CodeModel.GetById 19ms RepoModel.GetById 0ms app.codeStats 0ms

/Source/Bifrost/Events/IEvent.cs

#
C# | 85 lines | 19 code | 10 blank | 56 comment | 0 complexity | 44384f41b252897a2761eeadc033c69b MD5 | raw file
Possible License(s): CC-BY-SA-3.0
  1. #region License
  2. //
  3. // Copyright (c) 2008-2012, DoLittle Studios and Komplett ASA
  4. //
  5. // Licensed under the Microsoft Permissive License (Ms-PL), Version 1.1 (the "License")
  6. // With one exception :
  7. // Commercial libraries that is based partly or fully on Bifrost and is sold commercially,
  8. // must obtain a commercial license.
  9. //
  10. // You may not use this file except in compliance with the License.
  11. // You may obtain a copy of the license at
  12. //
  13. // http://bifrost.codeplex.com/license
  14. //
  15. // Unless required by applicable law or agreed to in writing, software
  16. // distributed under the License is distributed on an "AS IS" BASIS,
  17. // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  18. // See the License for the specific language governing permissions and
  19. // limitations under the License.
  20. //
  21. #endregion
  22. using System;
  23. namespace Bifrost.Events
  24. {
  25. /// <summary>
  26. /// Defines the basics of an event
  27. /// </summary>
  28. public interface IEvent
  29. {
  30. /// <summary>
  31. /// Gets the id of the event
  32. /// </summary>
  33. Guid Id { get; set; }
  34. /// <summary>
  35. /// Gets or sets the name of the command causing the event
  36. /// </summary>
  37. string CommandName { get; set; }
  38. /// <summary>
  39. /// Gets or sets the name of the event
  40. /// </summary>
  41. string Name { get; set; }
  42. /// <summary>
  43. /// Gets the EventSource id (Aggregate Root) to which these events belong.
  44. /// </summary>
  45. Guid EventSourceId { get; set; }
  46. /// <summary>
  47. /// Gets and sets the aggregated root name
  48. /// </summary>
  49. string AggregatedRoot { get; set; }
  50. /// <summary>
  51. /// Gets and sets the name of the eventsource
  52. /// </summary>
  53. string EventSourceName { get; set; }
  54. /// <summary>
  55. /// Gets or sets the version of the event (ChangeSet or something)
  56. /// </summary>
  57. EventSourceVersion Version { get; set; }
  58. /// <summary>
  59. /// Gets or sets who or what the event was caused by.
  60. ///
  61. /// Typically this would be the name of the user or system causing it
  62. /// </summary>
  63. string CausedBy { get; set; }
  64. /// <summary>
  65. /// Gets or sets the origin of the event.
  66. ///
  67. /// Typically this would be what part of the system the event indirectly is coming from
  68. /// </summary>
  69. string Origin { get; set; }
  70. /// <summary>
  71. /// Gets or sets the time the event occured
  72. /// </summary>
  73. DateTime Occured { get; set; }
  74. }
  75. }