private JobAd CreateJobAd(IEmployer employer, DateTime lastUpdatedTime, DateTime?modifiedTime) { var jobAd = _jobAdsCommand.PostTestJobAd(employer); jobAd.CreatedTime = lastUpdatedTime; jobAd.LastUpdatedTime = lastUpdatedTime; _jobAdsRepository.UpdateJobAd(jobAd); // Delete what is already there. using (var dc = new MaintenanceDataContext(_connectionFactory.CreateConnection())) { var entity = (from i in dc.JobAdIndexingEntities where i.jobAdId == jobAd.Id select i).SingleOrDefault(); if (entity != null) { dc.JobAdIndexingEntities.DeleteOnSubmit(entity); dc.SubmitChanges(); } } if (modifiedTime != null) { using (var dc = new MaintenanceDataContext(_connectionFactory.CreateConnection())) { dc.JobAdIndexingEntities.InsertOnSubmit(new JobAdIndexingEntity { jobAdId = jobAd.Id, modifiedTime = modifiedTime.Value }); dc.SubmitChanges(); } } return(jobAd); }
private JobAd CreateJobAd(DateTime createdTime, DateTime expiryTime) { var jobAd = CreateJobAd(false); jobAd.CreatedTime = createdTime; jobAd.ExpiryTime = expiryTime; _repository.UpdateJobAd(jobAd); return(jobAd); }
void IJobAdsCommand.UpdateJobAd(JobAd jobAd) { // Ensure that the status is not changed. var existingJobAd = _repository.GetJobAd <JobAdEntry>(jobAd.Id); jobAd.Status = existingJobAd.Status; PrepareUpdate(jobAd); Validate(jobAd); _repository.UpdateJobAd(jobAd); // Fire events. var handlers = JobAdUpdated; if (handlers != null) { handlers(this, new JobAdEventArgs(jobAd.Id)); } }