public override IPreloads preload(GadgetContext context, GadgetSpec gadget, PreloadPhase phase) { if (preloaders.Count == 0) { return null; } var tasks = new List<Preloader.preloadProcessor>(); foreach(Preloader preloader in preloaders) { ICollection<Preloader.preloadProcessor> taskCollection = preloader.createPreloadTasks(context, gadget, phase); tasks.AddRange(taskCollection); } ConcurrentPreloads preloads = new ConcurrentPreloads(); foreach (var task in tasks) { preloads.add(task.BeginInvoke(null, null)); } return preloads; }
public override IPreloads preload(GadgetContext context, GadgetSpec gadget, PreloadPhase phase) { if (preloaders.Count == 0) { return(null); } var tasks = new List <Preloader.preloadProcessor>(); foreach (Preloader preloader in preloaders) { ICollection <Preloader.preloadProcessor> taskCollection = preloader.createPreloadTasks(context, gadget, phase); tasks.AddRange(taskCollection); } ConcurrentPreloads preloads = new ConcurrentPreloads(); foreach (var task in tasks) { preloads.add(task.BeginInvoke(null, null)); } return(preloads); }
/** * Begin all preload operations. * * @param context The request that needs preloading. * @param gadget The gadget that the operations will be performed for. * @return The preloads for the gadget. * * TODO: This should probably have a read only input. If we can */ public abstract IPreloads preload(GadgetContext context, GadgetSpec gadget, PreloadPhase phase);