From 461d256f746c9f10e314cd62655c992ebe8bf7d3 Mon Sep 17 00:00:00 2001 From: anthony Date: Mon, 27 Jun 2011 17:14:00 -0700 Subject: [PATCH] bug 10410: show template per zone status 10410: resolved fixed --- .../src/com/cloud/api/ApiResponseHelper.java | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/server/src/com/cloud/api/ApiResponseHelper.java b/server/src/com/cloud/api/ApiResponseHelper.java index 8afd4503feb..3029b891c2c 100755 --- a/server/src/com/cloud/api/ApiResponseHelper.java +++ b/server/src/com/cloud/api/ApiResponseHelper.java @@ -1459,7 +1459,7 @@ public class ApiResponseHelper implements ResponseGenerator { } boolean foundTheSameTemplate = false; for (TemplateResponse res : responses) { - if (res.getId() == templateHostRef.getTemplateId()) { + if (res.getId() == templateHostRef.getTemplateId() && res.getZoneId() == templateZonePair.second()) { foundTheSameTemplate = true; continue; } @@ -2045,6 +2045,23 @@ public class ApiResponseHelper implements ResponseGenerator { List isoHosts = ApiDBUtils.listTemplateHostBy(iso.getId(), isoZonePair.second(), readyOnly); for (VMTemplateHostVO isoHost : isoHosts) { + + if (readyOnly) { + if (isoHost.getDownloadState() != Status.DOWNLOADED) { + continue; + } + boolean foundTheSameTemplate = false; + for (TemplateResponse res : isoResponses) { + if (res.getId() == isoHost.getTemplateId() && res.getZoneId() == isoZonePair.second()) { + foundTheSameTemplate = true; + continue; + } + } + if (foundTheSameTemplate) { + continue; + } + } + TemplateResponse isoResponse = new TemplateResponse(); isoResponse.setId(iso.getId()); isoResponse.setName(iso.getName());