-instead of that stupid job_status RPC, just provide get_host_queue_entries directly.
-improve reporting of metahost entries in web frontend
-fix bugs in models code which didn't surface until I started querying host queue entries
-fix bug with job detail page refreshing



git-svn-id: http://test.kernel.org/svn/autotest/trunk@1464 592f7852-d20e-0410-864c-8624ca9c26a4
diff --git a/frontend/afe/rpc_interface.py b/frontend/afe/rpc_interface.py
index 1e74db8..a053929 100644
--- a/frontend/afe/rpc_interface.py
+++ b/frontend/afe/rpc_interface.py
@@ -308,40 +308,6 @@
 	return models.Job.query_count(filter_data)
 
 
-def job_status(job_id, **filter_data):
-	"""\
-	Get status of job with the given id number.  Returns a dictionary
-	mapping hostnames to dictionaries with two keys each:
-	 * 'status' : the job status for that host
-	 * 'meta_count' : For meta host entires, gives a count of how many
-	                  entries there are for this label (the hostname is
-			  then a label name).  For real host entries,
-			  meta_count is None.
-	"""
-	filter_data['job'] = job_id
-	job_entries = models.HostQueueEntry.query_objects(filter_data)
-	hosts_status = {}
-	for queue_entry in job_entries:
-		is_meta = queue_entry.is_meta_host_entry()
-		if is_meta:
-			name = queue_entry.meta_host.name
-			hosts_status.setdefault(name, {'meta_count': 0})
-			hosts_status[name]['meta_count'] += 1
-		else:
-			name = queue_entry.host.hostname
-			hosts_status[name] = {'meta_count': None}
-		hosts_status[name]['status'] = queue_entry.status
-	return hosts_status
-
-
-def job_num_entries(job_id, **filter_data):
-	"""\
-	Get the number of host queue entries associated with this job.
-	"""
-	filter_data['job'] = job_id
-	return models.HostQueueEntry.query_count(filter_data)
-
-
 def get_jobs_summary(**filter_data):
 	"""\
 	Like get_jobs(), but adds a 'stauts_counts' field, which is a dictionary
@@ -356,6 +322,24 @@
 	return rpc_utils.prepare_for_serialization(jobs)
 
 
+# host queue entries
+
+def get_host_queue_entries(**filter_data):
+	"""\
+	TODO
+	"""
+	return rpc_utils.prepare_for_serialization(
+	    models.HostQueueEntry.list_objects(filter_data))
+
+
+def get_num_host_queue_entries(**filter_data):
+	"""\
+	Get the number of host queue entries associated with this job.
+	"""
+	return models.HostQueueEntry.query_count(filter_data)
+
+
+
 # other
 
 def get_static_data():