/// <summary> /// Validates the Interference Query request. /// </summary> /// <param name="interferenceQueryRequest">The Interference Query request.</param> /// <param name="errorMessages">The error messages.</param> /// <returns><c>true</c> if XXXX, <c>false</c> otherwise</returns> public virtual bool ValidateInterferenceQueryRequest(IInterferenceQueryRequest interferenceQueryRequest, out List <string> errorMessages) { errorMessages = new List <string>(); return(true); }
/// <summary> /// Validates the interference query request. /// </summary> /// <param name="interferenceQueryRequest">The interference query request request.</param> /// <param name="errorMessages">The error messages.</param> /// <returns><c>true</c> if XXXX, <c>false</c> otherwise</returns> public override bool ValidateInterferenceQueryRequest(IInterferenceQueryRequest interferenceQueryRequest, out List <string> errorMessages) { errorMessages = new List <string>(); if (string.IsNullOrEmpty(interferenceQueryRequest.TimeStamp)) { errorMessages.Add(Constants.ErrorMessageTimeStampRequired); return(false); } if (!this.IsValid(interferenceQueryRequest.TimeStamp, out errorMessages)) { return(false); } if (!this.ValidateTimeStamp(interferenceQueryRequest.TimeStamp)) { errorMessages.Add(Constants.InvalidTimeStamp); return(false); } if (string.IsNullOrEmpty(interferenceQueryRequest.StartTime)) { errorMessages.Add(Constants.ErrorMessageInterferenceQueryStartTimeRequired); return(false); } if (!this.ValidateTimeStamp(interferenceQueryRequest.StartTime)) { errorMessages.Add(Constants.InvalidStartDate); return(false); } if (string.IsNullOrEmpty(interferenceQueryRequest.EndTime)) { errorMessages.Add(Constants.ErrorMessageEndTimeRequired); return(false); } if (!this.ValidateTimeStamp(interferenceQueryRequest.EndTime)) { errorMessages.Add(Constants.InvalidEndDate); return(false); } if (!this.IsValid(interferenceQueryRequest.Location, out errorMessages)) { return(false); } if (!this.IsValid(interferenceQueryRequest.Requestor, out errorMessages)) { return(false); } if (interferenceQueryRequest.Requestor != null && !(interferenceQueryRequest.Requestor.Owner.Email == null) && !string.IsNullOrEmpty(interferenceQueryRequest.Requestor.Owner.Email.Text)) { bool isValidEmail = this.email.IsMatch(interferenceQueryRequest.Requestor.Owner.Email.Text); if (!isValidEmail) { return(false); } } if (!this.IsValid(interferenceQueryRequest.StartTime, out errorMessages)) { return(false); } if (!this.IsValid(interferenceQueryRequest.EndTime, out errorMessages)) { return(false); } if (!this.IsValidRequestor(interferenceQueryRequest.Requestor, out errorMessages)) { return(false); } var result = this.IsValidLocationInterferenceQuery(out errorMessages, interferenceQueryRequest.Location); return(result); }