From 09484dd10bba52e2bc2c7bc2ce742e4a8e58a8be Mon Sep 17 00:00:00 2001
From: Jean-Noël Rouvignac <jean-noel.rouvignac@forgerock.com>
Date: Thu, 10 Mar 2016 08:40:41 +0000
Subject: [PATCH] Added MonitorData class to simplify writing monitored objects
---
opendj-server-legacy/src/main/java/org/opends/server/monitors/ParallelWorkQueueMonitor.java | 40 +++++++---------------------------------
1 files changed, 7 insertions(+), 33 deletions(-)
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/monitors/ParallelWorkQueueMonitor.java b/opendj-server-legacy/src/main/java/org/opends/server/monitors/ParallelWorkQueueMonitor.java
index 1f14dc3..6fafe52 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/monitors/ParallelWorkQueueMonitor.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/monitors/ParallelWorkQueueMonitor.java
@@ -16,18 +16,13 @@
*/
package org.opends.server.monitors;
-import static org.opends.server.core.DirectoryServer.*;
-
-import java.util.ArrayList;
import java.util.concurrent.TimeUnit;
import org.forgerock.opendj.config.server.ConfigException;
import org.opends.server.admin.std.server.MonitorProviderCfg;
+import org.opends.server.api.MonitorData;
import org.opends.server.api.MonitorProvider;
import org.opends.server.extensions.ParallelWorkQueue;
-import org.opends.server.types.Attribute;
-import org.forgerock.opendj.ldap.schema.AttributeType;
-import org.opends.server.types.Attributes;
import org.opends.server.types.InitializationException;
/**
@@ -105,8 +100,6 @@
return "Work Queue";
}
-
- /** {@inheritDoc} */
@Override
public void run()
{
@@ -120,18 +113,8 @@
}
}
-
-
- /**
- * Retrieves a set of attributes containing monitor data that should be
- * returned to the client if the corresponding monitor entry is requested.
- *
- * @return A set of attributes containing monitor data that should be
- * returned to the client if the corresponding monitor entry is
- * requested.
- */
@Override
- public ArrayList<Attribute> getMonitorData()
+ public MonitorData getMonitorData()
{
int backlog = workQueue.size();
totalBacklog += backlog;
@@ -142,21 +125,12 @@
}
long averageBacklog = (long) (1.0 * totalBacklog / numPolls);
- long opsSubmitted = workQueue.getOpsSubmitted();
- ArrayList<Attribute> monitorAttrs = new ArrayList<>();
- putAttribute(monitorAttrs, ATTR_CURRENT_BACKLOG, backlog);
- putAttribute(monitorAttrs, ATTR_AVERAGE_BACKLOG, averageBacklog);
- putAttribute(monitorAttrs, ATTR_MAX_BACKLOG, maxBacklog);
- // The total number of operations submitted.
- putAttribute(monitorAttrs, ATTR_OPS_SUBMITTED, opsSubmitted);
-
+ final MonitorData monitorAttrs = new MonitorData(4);
+ monitorAttrs.add(ATTR_CURRENT_BACKLOG, backlog);
+ monitorAttrs.add(ATTR_AVERAGE_BACKLOG, averageBacklog);
+ monitorAttrs.add(ATTR_MAX_BACKLOG, maxBacklog);
+ monitorAttrs.add(ATTR_OPS_SUBMITTED, workQueue.getOpsSubmitted());
return monitorAttrs;
}
-
- private void putAttribute(ArrayList<Attribute> monitorAttrs, String attrName, Object value)
- {
- AttributeType attrType = getAttributeType(attrName, getDefaultIntegerSyntax());
- monitorAttrs.add(Attributes.create(attrType, String.valueOf(value)));
- }
}
--
Gitblit v1.10.0