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 : using System.Runtime.Serialization;
11 :
12 : namespace Cqrs.Services
13 : {
14 : /// <summary>
15 : /// A <see cref="IServiceResponse">response message envelope</see> that holds request state, correlation information as well as the response data returned from making a public API request.
16 : /// </summary>
17 : /// <typeparam name="TResultData">The <see cref="Type">type</see> of data returned from making a public API request.</typeparam>
18 : [Serializable]
19 : [DataContract]
20 : public class ServiceResponseWithResultData<TResultData> : ServiceResponse, IServiceResponseWithResultData<TResultData>
21 1 : {
22 : /// <summary>
23 : /// The data returned from making a public API request.
24 : /// </summary>
25 : [DataMember]
26 : public TResultData ResultData { get; set; }
27 :
28 : /// <summary>
29 : /// Instantiate a new instance of the <see cref="ServiceResponseWithResultData{TResultData}"/> class.
30 : /// </summary>
31 1 : public ServiceResponseWithResultData()
32 : {
33 : }
34 :
35 : /// <summary>
36 : /// Instantiate a new instance of the <see cref="ServiceResponseWithResultData{TResultData}"/> class providing <paramref name="resultData"/>.
37 : /// </summary>
38 1 : public ServiceResponseWithResultData(TResultData resultData)
39 : {
40 : State = ServiceResponseStateType.Succeeded;
41 : ResultData = resultData;
42 : }
43 : }
44 : }
|