Line data Source code
1 : #region Copyright
2 : // // -----------------------------------------------------------------------
3 : // // <copyright company="Chinchilla Software Limited">
4 : // // Copyright Chinchilla Software Limited. All rights reserved.
5 : // // </copyright>
6 : // // -----------------------------------------------------------------------
7 : #endregion
8 :
9 : using System;
10 :
11 : namespace Cqrs.Events
12 : {
13 : /// <summary>
14 : /// Builds <see cref="EventData"/> from various input formats.
15 : /// </summary>
16 : /// <typeparam name="TAuthenticationToken">The <see cref="Type"/> of the authentication token.</typeparam>
17 : public interface IEventBuilder<TAuthenticationToken>
18 : {
19 : /// <summary>
20 : /// Create an <see cref="EventData">framework event</see> with the provided <paramref name="eventData"/>.
21 : /// </summary>
22 : /// <param name="eventData">The <see cref="IEvent{TAuthenticationToken}"/> to add to the <see cref="EventData"/>.</param>
23 1 : EventData CreateFrameworkEvent(IEvent<TAuthenticationToken> eventData);
24 :
25 : /// <summary>
26 : /// Create an <see cref="EventData">framework event</see> with the provided <paramref name="eventData"/>.
27 : /// </summary>
28 : /// <param name="type">The name of the <see cref="Type"/> of the target object the serialised data is.</param>
29 : /// <param name="eventData">The <see cref="IEvent{TAuthenticationToken}"/> to add to the <see cref="EventData"/>.</param>
30 1 : EventData CreateFrameworkEvent(string type, IEvent<TAuthenticationToken> eventData);
31 : }
32 : }
|