/// <summary>
        /// Create a new SetSessionEventReport response.
        /// </summary>
        /// <param name="Request">The SetSessionEventReport request leading to this response.</param>
        /// <param name="TransactionId">A transaction identification.</param>
        /// <param name="RequestStatus">The status of the request.</param>
        /// <param name="ServiceSessionId">The service session identification.</param>
        /// <param name="SessionActionId">The unique identification of the session action.</param>
        ///
        /// <param name="HTTPResponse">The correlated HTTP response of this eMIP response.</param>
        /// <param name="CustomData">Optional additional customer-specific data.</param>
        public SetSessionEventReportResponse(SetSessionEventReportRequest Request,
                                             Transaction_Id TransactionId,
                                             RequestStatus RequestStatus,
                                             ServiceSession_Id ServiceSessionId,
                                             SessionAction_Id SessionActionId,

                                             HTTPResponse HTTPResponse = null,
                                             IReadOnlyDictionary <String, Object> CustomData = null)

            : base(Request,
                   TransactionId,
                   RequestStatus,
                   HTTPResponse,
                   CustomData)

        {
            this.ServiceSessionId = ServiceSessionId;
            this.SessionActionId  = SessionActionId;
        }
            /// <summary>
            /// Create a new SetSessionEventReport response builder.
            /// </summary>
            /// <param name="SetSessionEventReportResponse">A SetSessionEventReport response.</param>
            /// <param name="CustomData">Optional custom data.</param>
            public Builder(SetSessionEventReportResponse SetSessionEventReportResponse = null,
                           IReadOnlyDictionary <String, Object> CustomData             = null)

                : base(SetSessionEventReportResponse?.Request,
                       SetSessionEventReportResponse.HasInternalData
                           ? CustomData?.Count > 0
                                 ? SetSessionEventReportResponse.InternalData.Concat(CustomData)
                                 : SetSessionEventReportResponse.InternalData
                           : CustomData)

            {
                if (SetSessionEventReportResponse != null)
                {
                    this.TransactionId    = SetSessionEventReportResponse.TransactionId;
                    this.RequestStatus    = SetSessionEventReportResponse.RequestStatus;
                    this.ServiceSessionId = SetSessionEventReportResponse.ServiceSessionId;
                    this.SessionActionId  = SetSessionEventReportResponse.SessionActionId;
                }
            }