From 66158c723e127ef41a4a60566fb8f1f53c680e54 Mon Sep 17 00:00:00 2001
From: fguigues <fguigues@localhost>
Date: Thu, 22 May 2008 07:37:52 +0000
Subject: [PATCH] Fixes: 3142: SNMP: SNMP Connection Handler should accept snmp requests on localhost 3239: On Windows, server can't load jdmkrt.jar file 3253: SNMP: wrong value for dsServerType entry
---
opendj-sdk/opends/src/snmp/src/org/opends/server/snmp/DsTableEntryImpl.java | 295 +++++++++++++++++++++++++++++++---------------------------
1 files changed, 158 insertions(+), 137 deletions(-)
diff --git a/opendj-sdk/opends/src/snmp/src/org/opends/server/snmp/DsTableEntryImpl.java b/opendj-sdk/opends/src/snmp/src/org/opends/server/snmp/DsTableEntryImpl.java
index 8432284..b78f2d5 100644
--- a/opendj-sdk/opends/src/snmp/src/org/opends/server/snmp/DsTableEntryImpl.java
+++ b/opendj-sdk/opends/src/snmp/src/org/opends/server/snmp/DsTableEntryImpl.java
@@ -41,150 +41,171 @@
*/
public class DsTableEntryImpl extends DsTableEntry implements DsEntry {
- /**
- * The serial version identifier required to satisfy the compiler because
- * this class implements the <CODE>java.io.Serializable</CODE> interface.
- * This value was generated using the <CODE>serialver</CODE> command-line
- * utility included with the Java SDK.
- */
- private static final long serialVersionUID = -3346380035687141480L;
- /**
- * The debug log tracer for this class.
- */
- private static final DebugTracer TRACER = DebugLogger.getTracer();
- /**
- * Directory Server MBeanServer.
- */
- private MBeanServer server;
- /**
- * Mapping Class.
- */
- private SNMPMonitor monitor;
- /**
- * ObjectName of the entry.
- */
- private ObjectName entryName;
- /**
- * Index of the Directory Server Instance (applIndex).
- */
- private Integer applIndex;
+ /**
+ * The serial version identifier required to satisfy the compiler because
+ * this class implements the <CODE>java.io.Serializable</CODE> interface.
+ * This value was generated using the <CODE>serialver</CODE> command-line
+ * utility included with the Java SDK.
+ */
+ private static final long serialVersionUID = -3346380035687141480L;
+ /**
+ * The debug log tracer for this class.
+ */
+ private static final DebugTracer TRACER = DebugLogger.getTracer();
+ /**
+ * Directory Server MBeanServer.
+ */
+ private MBeanServer server;
+ /**
+ * Mapping Class.
+ */
+ private SNMPMonitor monitor;
+ /**
+ * ObjectName of the entry.
+ */
+ private ObjectName entryName;
+ /**
+ * Index of the Directory Server Instance (applIndex).
+ */
+ private Integer applIndex;
- /**
- * Creates a DsTableEntry.
- * @param mib the SNMP Mib where the entry will be created
- * @param server where the mapping objects will be found
- * @param index of the entry in the DsTable
- */
- public DsTableEntryImpl(SnmpMib mib,
- MBeanServer server,
- int index) {
- super(mib);
- this.server = server;
- this.monitor = SNMPMonitor.getMonitor(server);
- this.applIndex = new Integer(index);
- }
-
- /**
- * {@inheritDoc}
- * @return DsCacheHits as Long
- */
- @Override
- public Long getDsCacheHits() {
- try {
- Long value = Long.parseLong((String) this.monitor.getAttribute(
- SNMPConnectionHandlerDefinitions.MONITOR_ENTRY_CACHES_OBJECTNANE,
- "entryCacheHits"));
- return SNMPMonitor.counter32Value(value);
- } catch (Exception ex) {
- if (DebugLogger.debugEnabled()) {
- TRACER.debugCaught(DebugLogLevel.ERROR, ex);
- }
+ /**
+ * Creates a DsTableEntry.
+ * @param mib the SNMP Mib where the entry will be created
+ * @param server where the mapping objects will be found
+ * @param index of the entry in the DsTable
+ */
+ public DsTableEntryImpl(SnmpMib mib,
+ MBeanServer server,
+ int index) {
+ super(mib);
+ this.server = server;
+ this.monitor = SNMPMonitor.getMonitor(server);
+ this.applIndex = new Integer(index);
}
- return 0L;
- }
- /**
- * {@inheritDoc}
- * @return DsCacheEntries as Long
- */
- @Override
- public Long getDsCacheEntries() {
- try {
- Long value = Long.parseLong((String) this.monitor.getAttribute(
- SNMPConnectionHandlerDefinitions.MONITOR_ENTRY_CACHES_OBJECTNANE,
- "currentEntryCacheCount"));
- return SNMPMonitor.gauge32Value(value);
- } catch (Exception ex) {
- if (DebugLogger.debugEnabled()) {
- TRACER.debugCaught(DebugLogLevel.ERROR, ex);
- }
- }
- return 0L;
- }
-
- /**
- * {@inheritDoc}
- * @return DsMasterEntries as Long
- */
- @Override
- public Long getDsMasterEntries() {
- Set monitorBackends = null;
- Long result = 0L;
- try {
- monitorBackends = this.server.queryNames(SNMPMonitor.pattern, null);
- for (Iterator iter = monitorBackends.iterator(); iter.hasNext();) {
- ObjectName name = (ObjectName) iter.next();
- Object value = this.monitor.getAttribute(name,
- "ds-backend-entry-count");
- if (value != null) {
- result = result + new Long((String) value);
+ /**
+ * Getter for the "DsServerType" variable.
+ * @return a Byte[] representing the Ds Server Type
+ */
+ public Byte[] getDsServerType() {
+ try {
+ String value1 = (String) this.monitor.getAttribute(
+ SNMPConnectionHandlerDefinitions.MONITOR_VERSION_OBJECTNAME,
+ "fullVersion");
+ String value2 = (String) this.monitor.getAttribute(
+ SNMPConnectionHandlerDefinitions.MONITOR_VERSION_OBJECTNAME,
+ "buildID");
+ return SNMPMonitor.string2ByteArray(value1 + " - " + value2);
+ } catch (Exception ex) {
+ if (DebugLogger.debugEnabled()) {
+ TRACER.debugCaught(DebugLogLevel.ERROR, ex);
+ }
+ return null;
}
- }
- return SNMPMonitor.gauge32Value(result);
- } catch (Exception ex) {
- if (DebugLogger.debugEnabled()) {
- TRACER.debugCaught(DebugLogLevel.ERROR, ex);
- }
}
- return 0L;
- }
- /**
- * {@inheritDoc}
- * @return DsServerDescription as String
- */
- @Override
- public String getDsServerDescription() {
- String result = null;
- try {
- result = (String) this.monitor.getAttribute(
+ /**
+ * {@inheritDoc}
+ * @return DsCacheHits as Long
+ */
+ @Override
+ public Long getDsCacheHits() {
+ try {
+ Long value = Long.parseLong((String) this.monitor.getAttribute(
+ SNMPConnectionHandlerDefinitions.MONITOR_ENTRY_CACHES_OBJECTNANE,
+ "entryCacheHits"));
+ return SNMPMonitor.counter32Value(value);
+ } catch (Exception ex) {
+ if (DebugLogger.debugEnabled()) {
+ TRACER.debugCaught(DebugLogLevel.ERROR, ex);
+ }
+ }
+ return 0L;
+ }
+
+ /**
+ * {@inheritDoc}
+ * @return DsCacheEntries as Long
+ */
+ @Override
+ public Long getDsCacheEntries() {
+ try {
+ Long value = Long.parseLong((String) this.monitor.getAttribute(
+ SNMPConnectionHandlerDefinitions.MONITOR_ENTRY_CACHES_OBJECTNANE,
+ "currentEntryCacheCount"));
+ return SNMPMonitor.gauge32Value(value);
+ } catch (Exception ex) {
+ if (DebugLogger.debugEnabled()) {
+ TRACER.debugCaught(DebugLogLevel.ERROR, ex);
+ }
+ }
+ return 0L;
+ }
+
+ /**
+ * {@inheritDoc}
+ * @return DsMasterEntries as Long
+ */
+ @Override
+ public Long getDsMasterEntries() {
+ Set monitorBackends = null;
+ Long result = 0L;
+ try {
+ monitorBackends = this.server.queryNames(SNMPMonitor.pattern, null);
+ for (Iterator iter = monitorBackends.iterator(); iter.hasNext();) {
+ ObjectName name = (ObjectName) iter.next();
+ Object value = this.monitor.getAttribute(name,
+ "ds-backend-entry-count");
+ if (value != null) {
+ result = result + new Long((String) value);
+ }
+ }
+ return SNMPMonitor.gauge32Value(result);
+ } catch (Exception ex) {
+ if (DebugLogger.debugEnabled()) {
+ TRACER.debugCaught(DebugLogLevel.ERROR, ex);
+ }
+ }
+ return 0L;
+ }
+
+ /**
+ * {@inheritDoc}
+ * @return DsServerDescription as String
+ */
+ @Override
+ public String getDsServerDescription() {
+ String result = null;
+ try {
+ result = (String) this.monitor.getAttribute(
SNMPConnectionHandlerDefinitions.MONITOR_SYSTEM_INFORMATION_OBJECTNAME,
- "workingDirectory");
- } catch (Exception ex) {
- if (DebugLogger.debugEnabled()) {
- TRACER.debugCaught(DebugLogLevel.ERROR, ex);
- }
- }
- return result;
- }
-
- /**
- * Gets the object of the entry.
- * @return ObjectName of the entry
- */
- public ObjectName getObjectName() {
- if (this.entryName == null) {
- try {
- this.entryName = new ObjectName(
- SNMPConnectionHandlerDefinitions.SNMP_DOMAIN +
- "type=DsTableEntry,name=" +
- SNMPConnectionHandlerDefinitions.MONITOR_SYSTEM_INFORMATION_OBJECTNAME);
- } catch (Exception ex) {
- if (DebugLogger.debugEnabled()) {
- TRACER.debugCaught(DebugLogLevel.ERROR, ex);
+ "workingDirectory");
+ } catch (Exception ex) {
+ if (DebugLogger.debugEnabled()) {
+ TRACER.debugCaught(DebugLogLevel.ERROR, ex);
+ }
}
- }
+ return result;
}
- return this.entryName;
- }
+
+ /**
+ * Gets the object of the entry.
+ * @return ObjectName of the entry
+ */
+ public ObjectName getObjectName() {
+ if (this.entryName == null) {
+ try {
+ this.entryName = new ObjectName(
+ SNMPConnectionHandlerDefinitions.SNMP_DOMAIN +
+ "type=DsTableEntry,name=" +
+ SNMPConnectionHandlerDefinitions.MONITOR_SYSTEM_INFORMATION_OBJECTNAME);
+ } catch (Exception ex) {
+ if (DebugLogger.debugEnabled()) {
+ TRACER.debugCaught(DebugLogLevel.ERROR, ex);
+ }
+ }
+ }
+ return this.entryName;
+ }
}
--
Gitblit v1.10.0