// 

namespace ProCenter.Domain.AssessmentModule.Event
{
    #region Using Statements

    using System;

    using ProCenter.Common.Email;
    using ProCenter.Domain.CommonModule;

    #endregion

    /// <summary>Updates email sent date.</summary>
    public class UpdateEmailSentDateEvent : CommitEventBase
    {
        #region Constructors and Destructors

        /// <summary>
        /// Initializes a new instance of the <see cref="UpdateEmailSentDateEvent" /> class.
        /// </summary>
        /// <param name="key">The key.</param>
        /// <param name="version">The version.</param>
        /// <param name="emailSentDate">The email sent date.</param>
        /// <param name="emailFailedDate">The email failed date.</param>
        public UpdateEmailSentDateEvent ( Guid key, int version, DateTime? emailSentDate, DateTime? emailFailedDate)
            : base ( key, version )
        {
            EmailSentDate = emailSentDate;
            EmailFailedDate = emailFailedDate;
        }

        #endregion

        #region Public Properties

        /// <summary>
        /// Gets the email sent date.
        /// </summary>
        /// <value>
        /// The email sent date.
        /// </value>
        public DateTime? EmailSentDate { get; private set; }

        /// <summary>
        /// Gets the email failed date.
        /// </summary>
        /// <value>
        /// The email failed date.
        /// </value>
        public DateTime? EmailFailedDate { get; private set; }

        #endregion
    }
}