[jboss-cvs] JBossAS SVN: r97478 - in branches/snmp4j-integration: build and 5 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Fri Dec 4 17:19:21 EST 2009


Author: bshim
Date: 2009-12-04 17:19:20 -0500 (Fri, 04 Dec 2009)
New Revision: 97478

Modified:
   branches/snmp4j-integration/build/build.xml
   branches/snmp4j-integration/component-matrix/pom.xml
   branches/snmp4j-integration/pom.xml
   branches/snmp4j-integration/varia/pom.xml
   branches/snmp4j-integration/varia/src/main/java/org/jboss/jmx/adaptor/snmp/agent/SnmpAgentService.java
   branches/snmp4j-integration/varia/src/main/java/org/jboss/jmx/adaptor/snmp/agent/SnmpVarBindFactory.java
   branches/snmp4j-integration/varia/src/main/java/org/jboss/jmx/adaptor/snmp/agent/TrapEmitter.java
   branches/snmp4j-integration/varia/src/main/java/org/jboss/jmx/adaptor/snmp/agent/TrapFactorySupport.java
   branches/snmp4j-integration/varia/src/main/java/org/jboss/jmx/adaptor/snmp/trapd/TrapdService.java
   branches/snmp4j-integration/varia/src/resources/services/snmp/deploy/META-INF/jboss-service.xml
Log:
Snmp v1 traps send correctly. Trapd logs the heartbeats now

Modified: branches/snmp4j-integration/build/build.xml
===================================================================
--- branches/snmp4j-integration/build/build.xml	2009-12-04 20:31:52 UTC (rev 97477)
+++ branches/snmp4j-integration/build/build.xml	2009-12-04 22:19:20 UTC (rev 97478)
@@ -2022,6 +2022,7 @@
       <fileset refid="jboss.messaging:jboss-messaging:jar"/>
       <fileset refid="org.beanshell:bsh:jar"/>
       <fileset refid="joesnmp:joesnmp:jar"/>
+      <fileset refid="snmp4j:snmp4j:jar"/>
       <fileset refid="wutka-dtdparser:dtdparser:jar"/>
       <fileset refid="apache-bsf:bsf:jar"/>
       <fileset refid="jboss.web:el-api:jar"/>

Modified: branches/snmp4j-integration/component-matrix/pom.xml
===================================================================
--- branches/snmp4j-integration/component-matrix/pom.xml	2009-12-04 20:31:52 UTC (rev 97477)
+++ branches/snmp4j-integration/component-matrix/pom.xml	2009-12-04 22:19:20 UTC (rev 97478)
@@ -124,6 +124,7 @@
     <version.xdoclet>1.2.3</version.xdoclet>
     <version.weld.api>1.0-CR1</version.weld.api>
     <version.spring.integration>1.0.0.CR2</version.spring.integration>
+    <version.snmp4j>1.10.1</version.snmp4j>
   </properties>
 
   <!-- Build Configuration -->
@@ -2175,6 +2176,12 @@
       </dependency>
       
       <dependency>
+        <groupId>snmp4j</groupId>
+        <artifactId>snmp4j</artifactId>
+        <version>1.10.1</version>
+      </dependency>
+      
+      <dependency>
         <groupId>snmptrapappender</groupId>
         <artifactId>snmpTrapAppender</artifactId>
         <version>1.2.8</version>

Modified: branches/snmp4j-integration/pom.xml
===================================================================
--- branches/snmp4j-integration/pom.xml	2009-12-04 20:31:52 UTC (rev 97477)
+++ branches/snmp4j-integration/pom.xml	2009-12-04 22:19:20 UTC (rev 97478)
@@ -4,7 +4,6 @@
     <groupId>org.jboss.jbossas</groupId>
     <artifactId>jboss-as-component-matrix</artifactId>
     <version>6.0.0-SNAPSHOT</version>
-    <relativePath>component-matrix/pom.xml</relativePath>
   </parent>
   <modelVersion>4.0.0</modelVersion>
   <groupId>org.jboss.jbossas</groupId>
@@ -501,7 +500,20 @@
         <enabled>true</enabled>
       </snapshots>
     </repository>
-  </repositories>
+    
+    <repository>
+      <id>local.maven.repo</id>
+      <name>Local Maven Repo</name>
+      <url>file:///notnfs/bshim/local-maven-repo</url>
+      <releases>
+        <enabled>true</enabled>
+      </releases>
+      <snapshots>
+        <enabled>false</enabled>
+      </snapshots>
+    </repository>
+    
+   </repositories>
 
   <!-- Plugin Repositories -->
   <pluginRepositories>

Modified: branches/snmp4j-integration/varia/pom.xml
===================================================================
--- branches/snmp4j-integration/varia/pom.xml	2009-12-04 20:31:52 UTC (rev 97477)
+++ branches/snmp4j-integration/varia/pom.xml	2009-12-04 22:19:20 UTC (rev 97478)
@@ -233,6 +233,11 @@
     </dependency>
     
     <dependency>
+      <groupId>snmp4j</groupId>
+      <artifactId>snmp4j</artifactId>
+    </dependency>
+    
+    <dependency>
       <groupId>javax.mail</groupId>
       <artifactId>mail</artifactId>
     </dependency>

Modified: branches/snmp4j-integration/varia/src/main/java/org/jboss/jmx/adaptor/snmp/agent/SnmpAgentService.java
===================================================================
--- branches/snmp4j-integration/varia/src/main/java/org/jboss/jmx/adaptor/snmp/agent/SnmpAgentService.java	2009-12-04 20:31:52 UTC (rev 97477)
+++ branches/snmp4j-integration/varia/src/main/java/org/jboss/jmx/adaptor/snmp/agent/SnmpAgentService.java	2009-12-04 22:19:20 UTC (rev 97478)
@@ -510,6 +510,8 @@
 
       // initialise the snmp agent
       log.debug("Starting snmp agent ...");
+      
+      //At the moment does nothing
       startAgent();
       
       log.info("SNMP agent going active");
@@ -581,11 +583,11 @@
 	   ********************************************************************/	  
 	   
       // cater for possible global -b option, if no override has been specified
-      InetAddress address = this.bindAddress != null ? this.bindAddress :
-            toInetAddress(System.getProperty(JBossASServerConfig.PROP_KEY_JBOSSAS_BIND_ADDRESS));
+//      InetAddress address = this.bindAddress != null ? this.bindAddress :
+//            toInetAddress(System.getProperty(JBossASServerConfig.PROP_KEY_JBOSSAS_BIND_ADDRESS));
       
       // the listening address
-      SnmpPeer peer = new SnmpPeer(address, this.port);
+      //SnmpPeer peer = new SnmpPeer(address, this.port);
       
       /********************************************************************
        * 
@@ -593,10 +595,10 @@
        * 
        ********************************************************************/
       
-      TcpAddress tcpAddr = new TcpAddress(address, this.port);
-      DefaultTcpTransportMapping tcpMapping = new DefaultTcpTransportMapping(tcpAddr);
-      Snmp snmpPeer = new Snmp(tcpMapping);      
-      
+//      TcpAddress tcpAddr = new TcpAddress(address, this.port);
+//      DefaultTcpTransportMapping tcpMapping = new DefaultTcpTransportMapping(tcpAddr);
+//      Snmp snmpPeer = new Snmp(tcpMapping);      
+//      
       /********************************************************************
        * 
        * END OF MINE!!!! 
@@ -609,20 +611,20 @@
        * 
        ********************************************************************/
       
-      // set community strings and protocol version
-      peer.getParameters().setReadCommunity(this.readCommunity);
-      peer.getParameters().setWriteCommunity(this.writeCommunity);
-      peer.getParameters().setVersion(this.snmpVersion == SNMPV2 ? SnmpSMI.SNMPV2 : SnmpSMI.SNMPV1);
-      
-      // Instantiate and initialize the RequestHandler implementation
-      requestHandler = (RequestHandler)Class.forName(
-         this.requestHandlerClassName, true, this.getClass().getClassLoader()).newInstance();
-      requestHandler.initialize(this.requestHandlerResName, this.getServer(), this.log, this.clock);
-      
-      // Instantiate the AgentSession with an optional thread pool
-      this.agentSession = this.numberOfThreads > 1
-         ? new SnmpAgentSession(requestHandler, peer, this.numberOfThreads)
-         : new SnmpAgentSession(requestHandler, peer);
+//      // set community strings and protocol version
+//      peer.getParameters().setReadCommunity(this.readCommunity);
+//      peer.getParameters().setWriteCommunity(this.writeCommunity);
+//      peer.getParameters().setVersion(this.snmpVersion == SNMPV2 ? SnmpSMI.SNMPV2 : SnmpSMI.SNMPV1);
+//      
+//      // Instantiate and initialize the RequestHandler implementation
+//      requestHandler = (RequestHandler)Class.forName(
+//         this.requestHandlerClassName, true, this.getClass().getClassLoader()).newInstance();
+//      requestHandler.initialize(this.requestHandlerResName, this.getServer(), this.log, this.clock);
+//      
+//      // Instantiate the AgentSession with an optional thread pool
+//      this.agentSession = this.numberOfThreads > 1
+//         ? new SnmpAgentSession(requestHandler, peer, this.numberOfThreads)
+//         : new SnmpAgentSession(requestHandler, peer);
    }
    
    /**

Modified: branches/snmp4j-integration/varia/src/main/java/org/jboss/jmx/adaptor/snmp/agent/SnmpVarBindFactory.java
===================================================================
--- branches/snmp4j-integration/varia/src/main/java/org/jboss/jmx/adaptor/snmp/agent/SnmpVarBindFactory.java	2009-12-04 20:31:52 UTC (rev 97477)
+++ branches/snmp4j-integration/varia/src/main/java/org/jboss/jmx/adaptor/snmp/agent/SnmpVarBindFactory.java	2009-12-04 22:19:20 UTC (rev 97478)
@@ -29,6 +29,7 @@
 import org.opennms.protocols.snmp.SnmpObjectId;
 import org.opennms.protocols.snmp.SnmpOctetString;
 import org.opennms.protocols.snmp.SnmpVarBind;
+import org.snmp4j.smi.Counter32;
 import org.snmp4j.smi.Counter64;
 import org.snmp4j.smi.Integer32;
 import org.snmp4j.smi.OID;
@@ -66,7 +67,7 @@
    {
       makers.put("java.lang.String", new SnmpOctetStringMaker());
       makers.put("java.lang.Integer", new SnmpInt32Maker());
-      makers.put("java.lang.Long", new SnmpCounter64Maker());
+      makers.put("java.lang.Long", new SnmpCounter32Maker());
       makers.put("java.math.BigInteger", new SnmpCounter64Maker());
       makers.put("java.util.Date", new SnmpDateMaker());
    }
@@ -118,6 +119,22 @@
                                 new Integer32(i));
       }
    } // class SnmpInt32Maker
+   
+   /**
+    * Generates unsigned long integer SNMP variable bindings
+   **/         
+   class SnmpCounter32Maker
+      implements Maker
+   {
+      public VariableBinding make(String oid, Object value) 
+         throws MappingFailedException
+      {
+         Long l = (Long)value;
+            
+         return new VariableBinding(new OID(oid), 
+                                new Counter32(l.longValue()));
+      }
+   } // class SnmpCounter64Maker    
 
    /**
     * Generates unsigned long integer SNMP variable bindings

Modified: branches/snmp4j-integration/varia/src/main/java/org/jboss/jmx/adaptor/snmp/agent/TrapEmitter.java
===================================================================
--- branches/snmp4j-integration/varia/src/main/java/org/jboss/jmx/adaptor/snmp/agent/TrapEmitter.java	2009-12-04 20:31:52 UTC (rev 97477)
+++ branches/snmp4j-integration/varia/src/main/java/org/jboss/jmx/adaptor/snmp/agent/TrapEmitter.java	2009-12-04 22:19:20 UTC (rev 97478)
@@ -19,6 +19,7 @@
 **/
 package org.jboss.jmx.adaptor.snmp.agent;
 
+import java.io.IOException;
 import java.io.InputStream;
 import java.net.InetAddress;
 import java.net.UnknownHostException;
@@ -46,9 +47,18 @@
 import org.snmp4j.Target;
 import org.snmp4j.Snmp;
 import org.snmp4j.UserTarget;
+import org.snmp4j.mp.MPv3;
 import org.snmp4j.mp.SnmpConstants;
+import org.snmp4j.security.SecurityModels;
+import org.snmp4j.security.SecurityProtocols;
+import org.snmp4j.security.USM;
+import org.snmp4j.smi.Address;
+import org.snmp4j.smi.IpAddress;
 import org.snmp4j.smi.OctetString;
 import org.snmp4j.smi.TcpAddress;
+import org.snmp4j.transport.AbstractTransportMapping;
+import org.snmp4j.transport.DefaultTcpTransportMapping;
+import org.snmp4j.transport.DefaultUdpTransportMapping;
 
 /**
  * <tt>TrapEmitter</tt> is a class that manages SNMP trap emission.
@@ -174,29 +184,38 @@
       // Send trap. Synchronise on the subscription collection while 
       // iterating 
       synchronized(this.managers) {
-            
+    	  
+    	  //The Snmp Session
+    	  Snmp snmp = null;
+    	  
          // Iterate over sessions and emit the trap on each one
          Iterator i = this.managers.iterator();
          while (i.hasNext()) {
-            ManagerRecord s = (ManagerRecord)i.next();       
+            //ManagerRecord t = (ManagerRecord)i.next();
+        	 Target t = (Target)i.next();
 
             try {
-               switch (s.getVersion()) {
-                  case SnmpAgentService.SNMPV1:
+               switch (t.getVersion()) {
+               		case SnmpConstants.version1:
+                  //case SnmpAgentService.SNMPV1:
                      if (v1TrapPdu == null)
                         v1TrapPdu = this.trapFactory.generateV1Trap(n);
                      
                      // fix the agent ip in the trap depending on which local address is bound
-                     v1TrapPdu.setAgentAddress(new SnmpIPAddress(s.getLocalAddress()));
-                            
+                     //Should work, but need to upgrade to snmp4j v.1.10.2
+                     //v1TrapPdu.setAgentAddress((IpAddress)t.getAddress());
+                   
                      // Advance the trap counter
                      this.trapCount.advance();
                             
                      // Send
-                     s.getSession().send(v1TrapPdu);
+                     //s.getSession().send(v1TrapPdu);
+                     snmp = createSnmpSession(t.getAddress());
+                     snmp.send(v1TrapPdu, t);
                      break;
                   
-                  case SnmpAgentService.SNMPV2:
+               		case SnmpConstants.version2c:
+                  //case SnmpAgentService.SNMPV2:
                      if (v2TrapPdu == null)
                         v2TrapPdu = this.trapFactory.generateV2V3Trap(n);
                      
@@ -204,10 +223,16 @@
                      this.trapCount.advance();
                             
                      // Send
-                     s.getSession().send(v2TrapPdu);
+                     //t.getSession().send(v2TrapPdu);
+                     snmp = createSnmpSession(t.getAddress());
+                     snmp.send(v2TrapPdu, t);
+                     
                      break;
                      
-                  case SnmpAgentService.SNMPV
+               		case SnmpConstants.version3:
+                  //case SnmpAgentService.SNMPV3:
+                	 //do something
+                	 break;
                      
                   default:    
                      log.error("Skipping session: Unknown SNMP version found");    
@@ -218,11 +243,17 @@
             }    
             catch(Exception e) {
               log.error("SNMP send error for " + 
-                        s.getAddress().toString() + ":" +
-                        s.getPort() + ": <" + e +
+                        t.getAddress().toString() + ":" +
+                        ": <" + e +
                         ">");                    
             }
-         }    
+         }
+         if (snmp != null){
+        	 snmp.close();
+         }
+         else {
+        	 log.warn("No SNMP managers to send traps to");
+         }
       }
    }
 
@@ -278,8 +309,10 @@
             // Create a record of the manager's interest
         	 
         	 Target target = createTarget(m);
-        	 if (target == null)
+        	 if (target == null){
+        		 log.warn("createTarget: manager m: "+m.toString() + " is null!");
         	 	continue;
+        	 }
         	 
 //            ManagerRecord mr = new ManagerRecord(
 //                    InetAddress.getByName(m.getAddress()),
@@ -328,11 +361,21 @@
    
    private Target createTarget(Manager m){
 	   Target target;
+	   String newAddr;
+	   if (m.getAddress() != null){
+		   System.out.println("*************************************");
+		   System.out.println("Address" + m.getAddress());
+		   System.out.println("Port" + m.getPort());
+		   System.out.println("*************************************");
+		   newAddr = m.getAddress()+"/"+m.getPort();		   
+	   }
+	   else {return null;}
+	   
 	   int version = m.getVersion();
 	   
 	   if (version == SnmpConstants.version1 || version == SnmpConstants.version2c){
 		   //change 'public' to a constant somewhere
-		   target = new CommunityTarget(new TcpAddress(m.getAddress()), new OctetString("public"));
+		   target = new CommunityTarget(new TcpAddress(newAddr), new OctetString("public"));
 	   }
 	   else if (version == SnmpConstants.version3) {
 		   //won't be used at the moment
@@ -345,4 +388,32 @@
 	   return target;
    }
    
+   private Snmp createSnmpSession(Address address) throws IOException {
+	    AbstractTransportMapping transport;
+	    if (address instanceof TcpAddress) {
+	      transport = new DefaultTcpTransportMapping();
+	    }
+	    else {
+	      transport = new DefaultUdpTransportMapping();
+	    }
+	    // Could save some CPU cycles:
+	    // transport.setAsyncMsgProcessingSupported(false);
+	    
+	    Snmp snmp =  new Snmp(transport);
+	    
+// SNMPv3 stuff ~ add and fix later
+//	    
+//	    ((MPv3)snmp.getMessageProcessingModel(MPv3.ID)).
+//	        setLocalEngineID(localEngineID.getValue());
+//
+//	    if (version == SnmpConstants.version3) {
+//	      USM usm = new USM(SecurityProtocols.getInstance(),
+//	                        localEngineID,
+//	                        engineBootCount);
+//	      SecurityModels.getInstance().addSecurityModel(usm);
+//	      addUsmUser(snmp);
+//	    }
+	    return snmp;
+	  }
+   
 } // class TrapEmitter

Modified: branches/snmp4j-integration/varia/src/main/java/org/jboss/jmx/adaptor/snmp/agent/TrapFactorySupport.java
===================================================================
--- branches/snmp4j-integration/varia/src/main/java/org/jboss/jmx/adaptor/snmp/agent/TrapFactorySupport.java	2009-12-04 20:31:52 UTC (rev 97477)
+++ branches/snmp4j-integration/varia/src/main/java/org/jboss/jmx/adaptor/snmp/agent/TrapFactorySupport.java	2009-12-04 22:19:20 UTC (rev 97478)
@@ -41,6 +41,7 @@
 import org.opennms.protocols.snmp.SnmpPduPacket;
 import org.opennms.protocols.snmp.SnmpPduRequest;
 import org.opennms.protocols.snmp.SnmpPduTrap;
+import org.snmp4j.PDU;
 import org.snmp4j.PDUv1;
 import org.snmp4j.ScopedPDU;
 import org.snmp4j.smi.OID;
@@ -290,6 +291,7 @@
       PDUv1 trapPdu = new PDUv1();
         
       trapPdu.setTimestamp(this.clock.uptime());
+      trapPdu.setType(PDU.V1TRAP);
         
       // Organise the 'variable' payload 
       trapPdu.setGenericTrap(m.getGeneric());
@@ -364,6 +366,8 @@
       // Create trap
       ScopedPDU trapPdu = new ScopedPDU();
       
+      //**remember to set trap type ie) ScopedPDU.setType(distinguish types) ....
+      
       //--SnmpPduRequest trapPdu = new SnmpPduRequest(SnmpPduPacket.V2TRAP);
         
       // Append the specified varbinds. Get varbinds from mapping and for

Modified: branches/snmp4j-integration/varia/src/main/java/org/jboss/jmx/adaptor/snmp/trapd/TrapdService.java
===================================================================
--- branches/snmp4j-integration/varia/src/main/java/org/jboss/jmx/adaptor/snmp/trapd/TrapdService.java	2009-12-04 20:31:52 UTC (rev 97477)
+++ branches/snmp4j-integration/varia/src/main/java/org/jboss/jmx/adaptor/snmp/trapd/TrapdService.java	2009-12-04 22:19:20 UTC (rev 97478)
@@ -21,11 +21,29 @@
 
 import java.net.InetAddress;
 import java.net.UnknownHostException;
+import java.util.Iterator;
+import java.util.Vector;
 
 import org.jboss.bootstrap.spi.as.config.JBossASServerConfig;
 import org.jboss.system.ServiceMBeanSupport;
+import org.opennms.protocols.snmp.SnmpPduRequest;
 import org.opennms.protocols.snmp.SnmpTrapSession;
+import org.opennms.protocols.snmp.SnmpVarBind;
 
+import org.snmp4j.CommandResponder;
+import org.snmp4j.CommandResponderEvent;
+import org.snmp4j.MessageDispatcher;
+import org.snmp4j.MessageDispatcherImpl;
+import org.snmp4j.PDU;
+import org.snmp4j.PDUv1;
+import org.snmp4j.Snmp;
+import org.snmp4j.TransportMapping;
+import org.snmp4j.mp.MPv1;
+import org.snmp4j.mp.SnmpConstants;
+import org.snmp4j.smi.TcpAddress;
+import org.snmp4j.smi.VariableBinding;
+import org.snmp4j.transport.DefaultTcpTransportMapping;
+
 /**
  * MBean wrapper class that acts as an SNMP trap receiver/logger.
  * It logs traps as INFO messages - change log4j configuration to
@@ -42,7 +60,7 @@
 **/
 public class TrapdService 
    extends ServiceMBeanSupport
-   implements TrapdServiceMBean
+   implements TrapdServiceMBean, CommandResponder
 {
    /** The listening port */
    private int port;
@@ -51,7 +69,7 @@
    private InetAddress bindAddress;
    
    /** The snmp session used to receive the traps*/
-   protected SnmpTrapSession trapSession;
+   protected Snmp snmp;
     
    /**
     * Empty CTOR
@@ -123,19 +141,21 @@
    {
       // Create the SNMP trap receiving session with the logging handler,
       // using Logger inherited from ServiceMBeanSupport
-      try {
+      
          // cater for possible global -b option, if no override has been specified
          InetAddress address = this.bindAddress != null ? this.bindAddress :
                toInetAddress(System.getProperty(JBossASServerConfig.PROP_KEY_JBOSSAS_BIND_ADDRESS));
-         
-         this.trapSession =
-            new SnmpTrapSession(new TrapReceiver(this.log), this.port, address);
-      }
-      catch (Exception e) {
-         log.error("Cannot instantiate trap session");
-            
-         throw e; // ServiceMBeanSupport will log this
-      }
+         MessageDispatcher mtDispatcher = new MessageDispatcherImpl();
+
+         // add message processing models
+         mtDispatcher.addMessageProcessingModel(new MPv1());
+         TransportMapping transport =
+        	    new DefaultTcpTransportMapping(new TcpAddress(address,port));
+        	this.snmp = new Snmp(mtDispatcher, transport);
+        	//if (version == SnmpConstants.version3) {}
+        	snmp.addCommandResponder(this);
+        	transport.listen();
+        	log.debug("listening on: "+address);
    }
     
    /**
@@ -144,8 +164,10 @@
    protected void stopService()
       throws Exception
    {
-      this.trapSession.close();
-      this.trapSession = null; // gc
+	   snmp.close();
+	 
+//      this.trapSession.close();
+//      this.trapSession = null; // gc
    }
    
    /**
@@ -159,5 +181,42 @@
       else
          return InetAddress.getByName(host);
    }
+
+	@Override
+	public void processPdu(CommandResponderEvent e) {
+		PDUv1 pdu = (PDUv1)e.getPDU(); 
+		if (pdu != null){
+		//*****
+	      StringBuffer sbuf = new StringBuffer();
+	      //sbuf.append("\n***************NEW SNMP4J ADAPTOR******************");
+	      sbuf.append("\nV1 Trap from agent ").append(this.bindAddress.toString());
+	      sbuf.append(" on port ").append(this.port);
+	      sbuf.append("\nIP Address......... ").append(pdu.getAgentAddress().toString());
+	      sbuf.append("\nEnterprise Id...... ").append(pdu.getEnterprise());
+	      sbuf.append("\nGeneric ........... ").append(pdu.getGenericTrap());
+	      sbuf.append("\nSpecific .......... ").append(pdu.getSpecificTrap());
+	      sbuf.append("\nTimeStamp ......... ").append(pdu.getTimestamp());
+	      
+	      //sbuf.append("\nCommunity string... ").append(community.toString());
+	      sbuf.append("\n");
+		
+	      Vector bindings = pdu.getVariableBindings();
+	      Iterator it = bindings.iterator();
+	      int counter = 0;
+	      while (it.hasNext())
+	      {
+	         VariableBinding vb = (VariableBinding)it.next();
+	         if (vb != null) {
+		         sbuf.append("Varbind[").append(counter++).append("] := ");
+//		         sbuf.append(vb.toString());
+		         sbuf.append(vb.getOid().toString()).append(" --> ");
+		         sbuf.append(vb.getVariable().toString()).append("\n");
+	         }
+	      }
+	      sbuf.append("\nLength............. ").append(counter);
+	      log.debug(sbuf.toString());
+		}
+		//*****	    
+	}
     
 } // class TrapdService

Modified: branches/snmp4j-integration/varia/src/resources/services/snmp/deploy/META-INF/jboss-service.xml
===================================================================
--- branches/snmp4j-integration/varia/src/resources/services/snmp/deploy/META-INF/jboss-service.xml	2009-12-04 20:31:52 UTC (rev 97477)
+++ branches/snmp4j-integration/varia/src/resources/services/snmp/deploy/META-INF/jboss-service.xml	2009-12-04 22:19:20 UTC (rev 97478)
@@ -94,7 +94,7 @@
     <attribute name="TrapFactoryClassName">org.jboss.jmx.adaptor.snmp.agent.TrapFactorySupport</attribute>
     <attribute name="NotificationMapResName">/notifications.xml</attribute>
     <attribute name="ManagersResName">/managers.xml</attribute>
-    <attribute name="HeartBeatPeriod">0</attribute>
+    <attribute name="HeartBeatPeriod">2</attribute>
     <attribute name="BindAddress">
        <!-- Get the interface from the ServiceBindingManager -->
        <value-factory bean="ServiceBindingManager" method="getStringBinding" 
@@ -154,4 +154,4 @@
   <mbean code="org.jboss.jmx.adaptor.snmp.test.NotificationProducerService"
          name="jboss.jmx:name=SnmpAgent,service=notification,type=producer"/>
   -->
-</service>
\ No newline at end of file
+</service>




More information about the jboss-cvs-commits mailing list