private ValueHolder GetAllBackupJobs() { AdapterMySql DbAdapter = new AdapterMySql("localhost", "backup", "root", "yala"); ValueHolder jobs = new ValueHolder("Tasks"); Message request = new Message("Command", System.Data.CommandType.Text.ToString()); request.AddData(new ValueHolder("Jobs", "select job.Name from tblbackupjobs job left outer join tblbackupjobexecution exec on job.JobId = exec.JobId where exec.JobId is null or (exec.Status is not null and exec.Status <> 'INPROGRESS');")); request.AddSender("GetAllBackupJobs", typeof(Job).ToString()); DbAdapter.Send(request); IRecordSet reply = (IRecordSet)DbAdapter.Receive(); if (reply.Data != null && reply.Data.GetAnnotation("Record") != null) { foreach (ValueHolder record in reply.Data.Annotations) { string name = (string)record.GetAnnotation("Name").Value; ValueHolder definition = new ValueHolder(name); definition.AddAnnotation("DbAdapter", DbAdapter); Job job = new Job(definition, _logger); jobs.AddAnnotation(record.Value.ToString(), job.Task); } } return(jobs); }