private IEnumerable <CloudPrintJob> UpdateCloudPrintJobs(CloudPrinter printer) { List <CloudPrintJob> jobs; dynamic fetchdata = HTTPHelper.PostCloudPrintUrlEncodedRequest(OAuthTicket, "fetch", new { printerid = printer.PrinterID }); if (fetchdata.success) { jobs = ((IEnumerable <dynamic>)fetchdata.jobs).Select(j => new CloudPrintJobImpl(this, printer, j)).OfType <CloudPrintJob>().ToList(); } else { jobs = new List <CloudPrintJob>(); } foreach (CloudPrintJob job in jobs) { if (!_PrintJobs.ContainsKey(job.JobID)) { _PrintJobs[job.JobID] = job; PrintJobProcessor.AddJob(job); //Logger.Log(LogLevel.Info, "Received new print job {0} [{1}] owned by {2} for printer [{3}]", job.JobID, job.JobTitle, job.Username, job.Printer.Name); } } return(jobs); }
public void EnqueuePrintJob(string jobid) { PrintJobProcessor.AddJob(GetCloudPrintJobById(jobid)); }