public virtual async Task <ActionResponse> Delete(
            int id)
        {
            ActionResponse response = ValidationResponseFactory <object> .ActionResponse(await this.CountryRequirementModelValidator.ValidateDeleteAsync(id));

            if (response.Success)
            {
                await this.CountryRequirementRepository.Delete(id);

                await this.mediator.Publish(new CountryRequirementDeletedNotification(id));
            }

            return(response);
        }
        public virtual async Task <ActionResponse> Delete(
            int id)
        {
            ActionResponse response = ValidationResponseFactory <object> .ActionResponse(await this.PipelineStepDestinationModelValidator.ValidateDeleteAsync(id));

            if (response.Success)
            {
                await this.PipelineStepDestinationRepository.Delete(id);

                await this.mediator.Publish(new PipelineStepDestinationDeletedNotification(id));
            }

            return(response);
        }