modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/measurement/MeasurementDataManagerBean.java
| 11 ++++++++--
1 file changed, 9 insertions(+), 2 deletions(-)
New commits:
commit 6f6ab84ee7ed815fd450df877a13aa533a49d8c7
Author: Jirka Kremser <jkremser(a)redhat.com>
Date: Fri Nov 29 12:19:47 2013 +0100
[BZ 1035280] - Cannot load metrics for platform resource created using rest api -
check for dummy agent in MeasurementDataManagerBean.findLiveDataForGroup()
(cherry picked from commit f0bb4247151bf0bbb80f0e3de90c631d988e718c)
diff --git
a/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/measurement/MeasurementDataManagerBean.java
b/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/measurement/MeasurementDataManagerBean.java
index d1aa970..861921a 100644
---
a/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/measurement/MeasurementDataManagerBean.java
+++
b/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/measurement/MeasurementDataManagerBean.java
@@ -853,7 +853,6 @@ public class MeasurementDataManagerBean implements
MeasurementDataManagerLocal,
}
@Override
- @SuppressWarnings("unchecked")
public Set<MeasurementData> findLiveData(Subject subject, int resourceId, int[]
definitionIds) {
// use default timeout
return findLiveData(subject, resourceId, definitionIds, null);
@@ -870,7 +869,7 @@ public class MeasurementDataManagerBean implements
MeasurementDataManagerLocal,
Query query = entityManager.createNamedQuery(Agent.QUERY_FIND_BY_RESOURCE_ID);
query.setParameter("resourceId", resourceId);
Agent agent = (Agent) query.getSingleResult();
-
+
// return empty data if the agent is the dummy one
if (agent.getName().startsWith(ResourceHandlerBean.DUMMY_AGENT_NAME_PREFIX)
&&
agent.getAgentToken().startsWith(ResourceHandlerBean.DUMMY_AGENT_TOKEN_PREFIX)) {
@@ -932,6 +931,14 @@ public class MeasurementDataManagerBean implements
MeasurementDataManagerLocal,
List<ResourceIdWithAgentComposite> resourceIdsWithAgents =
query.getResultList();
for (ResourceIdWithAgentComposite resourceIdWithAgent :
resourceIdsWithAgents) {
+ // return empty data if the agent is the dummy one
+ if
(resourceIdWithAgent.getAgent().getName().startsWith(ResourceHandlerBean.DUMMY_AGENT_NAME_PREFIX)
+ && resourceIdWithAgent.getAgent().getAgentToken()
+ .startsWith(ResourceHandlerBean.DUMMY_AGENT_TOKEN_PREFIX)) {
+ values.addAll(Collections.<MeasurementData> emptySet());
+ continue;
+ }
+
query =
entityManager.createNamedQuery(MeasurementSchedule.FIND_BY_RESOURCE_IDS_AND_DEFINITION_IDS);
query.setParameter("definitionIds",
ArrayUtils.wrapInList(definitionIds));
query.setParameter("resourceIds",
Arrays.asList(resourceIdWithAgent.getResourceId()));
Show replies by date