using EnVisage.Code.Integration; using EnVisage.Models; using System; using System.Collections.Generic; using System.Linq; using System.Threading; using System.Web; using System.Web.Hosting; namespace EnVisage.Code.ThreadedProcessing { public class BackgroundProcess { public static bool RunJob(Func JobName, RateModel model, Guid savedId) { HostingEnvironment.QueueBackgroundWorkItem(ct => JobName(model,savedId,ct)); return true; } public static bool RunJob(Func, Guid, CancellationToken, bool> JobName, List apiModels, Guid savedId) { HostingEnvironment.QueueBackgroundWorkItem(ct => JobName(apiModels, savedId, ct)); return true; } public static void RunJob(Func>,Guid,AccessInf,string, CancellationToken, bool> JobName, Dictionary> data,Guid parentKey, AccessInf crmDal,string action) { HostingEnvironment.QueueBackgroundWorkItem(ct => JobName(data, parentKey, crmDal, action,ct)); } public static void RunJob(Func JobName, Guid projectNumber,string resourceEmail, AccessInf crmDal) { HostingEnvironment.QueueBackgroundWorkItem(ct => JobName(projectNumber, resourceEmail, crmDal, ct)); } public static void RunJob(Func, Guid, CancellationToken, bool> JobName, List apiModel, Guid processId) { HostingEnvironment.QueueBackgroundWorkItem(ct => JobName(apiModel, processId, ct)); } } }