public StockDeliveryInfoRequest(MessageId id,
                                 SubscriberId source,
                                 SubscriberId destination,
                                 StockDeliveryInfoRequestTask task)
     :
     this(id, source, destination, task, includeTaskDetails : null)
 {
 }
        public static bool Equals(StockDeliveryInfoRequest?left, StockDeliveryInfoRequest?right)
        {
            bool result = SubscribedRequest.Equals(left, right);

            result &= (result ? StockDeliveryInfoRequestTask.Equals(left?.Task, right?.Task) : false);
            result &= (result ? EqualityComparer <bool?> .Default.Equals(left?.IncludeTaskDetails, right?.IncludeTaskDetails) : false);

            return(result);
        }
 public StockDeliveryInfoRequest(MessageId id,
                                 SubscriberId source,
                                 SubscriberId destination,
                                 StockDeliveryInfoRequestTask task,
                                 bool?includeTaskDetails)
     :
     base(id, StandardDialogs.StockDeliveryInfo, source, destination)
 {
     this.Task = task;
     this.IncludeTaskDetails = includeTaskDetails;
 }