org.apache.log4j.ext

Class JoeSNMPTrapSender

public class JoeSNMPTrapSender extends Object implements SnmpTrapHandler, SnmpTrapSenderFacade

This class makes use of the JoeSNMP library to implement the underlying SNMP protocol(s). The JoeSNMP library is a part of the OpenNMS project, and is available/distributed under the GNU Lesser General Public License (LGPL).

To quote the JoeSNMP FAQ:

 "What license is JoeSNMP released under?

JoeSNMP is released under the GNU Lesser General Public License (LGPL),
documented fully at http://www.fsf.org/copyleft/lesser.html.
Effectively, this means that JoeSNMP is free to distribute and modify as
long as you provide your modified code back to the community. And if
you'd like to use JoeSNMP as a library within your commercial product,
you are welcome to do so as well, but again, any changes to the
library itself need to be contributed back."

You can get more information about OpenNMS here. You can get a copy of JoeSNMP here.
You will need a copy of the library ("joesnmp-0.2.6.jar" at a minimum) to use and/or compile this class.
WARNING: The JoeSNMP library requires a minimum of JDK 1.2.

Version: 2.0.3
2002-10-03
changes ---
2001-09-31: mwm : cleaned up the coding style errors, modified the addTrapMessageVariable(String value) to addTrapMessageVariable(String value, String applicationTrapOIDValue) so that the Facade is more flexible.
2001-10-03: mwm : swapped the SNMP library out, replacing the AdventNet commercial library with the one from OpenNMS. Thanks to Jin Zhao for pointing me towards this!
2001-11-04: mwm : fixed a minor bug with use of the SnmpTrapSession object. General tidying up.
2002-10-03: mwm : changed the name of the class to "JoeSNMPTrapSender", to reflect the fact that this is now simply the concrete implementation of the new "SnmpTrapSenderFacade" interface that uses JoeSNMP as it's underlying library. Made changes to deal with the new architecture.
2002-10-15: mwm : fixed a bug that caused some NMS software to receive a the IP address of the sending host incorrectly formatted.
2002-10-15: mwm : changed the sysUpTime value to a long, to cope with the SysUpTimeResolver mechanism.
2002-12-10: mwm : minor tweaks and prettying up of code.
2003-03-21: mwm : fixed a big, nasty, RTFM bug in #sendTrap
2003-05-24: mwm : minor changes to accomodate the changes in the SnmpTrapSenderFacade interface.

Author: Mark Masterson (m.masterson@computer.org)

Constructor Summary
JoeSNMPTrapSender()
Default constructor.
Method Summary
voidaddTrapMessageVariable(String applicationTrapOIDValue, String value)
voidinitialize(SNMPTrapAppender appender)
voidsendTrap()
voidsnmpReceivedTrap(SnmpTrapSession parm1, InetAddress parm2, int parm3, SnmpOctetString parm4, SnmpPduPacket parm5)
Skeleton method, implemented only to satisfy the requirements of the JoeSNMP API.
voidsnmpReceivedTrap(SnmpTrapSession parm1, InetAddress parm2, int parm3, SnmpOctetString parm4, SnmpPduTrap parm5)
Skeleton method, implemented only to satisfy the requirements of the JoeSNMP API.
voidsnmpTrapSessionError(SnmpTrapSession parm1, int parm2, Object parm3)
Skeleton method, implemented only to satisfy the requirements of the JoeSNMP API.

Constructor Detail

JoeSNMPTrapSender

public JoeSNMPTrapSender()
Default constructor.

Method Detail

addTrapMessageVariable

public void addTrapMessageVariable(String applicationTrapOIDValue, String value)

initialize

public void initialize(SNMPTrapAppender appender)

sendTrap

public void sendTrap()

snmpReceivedTrap

public void snmpReceivedTrap(SnmpTrapSession parm1, InetAddress parm2, int parm3, SnmpOctetString parm4, SnmpPduPacket parm5)
Skeleton method, implemented only to satisfy the requirements of the JoeSNMP API. Does nothing except spit out an error message via LogLog.

snmpReceivedTrap

public void snmpReceivedTrap(SnmpTrapSession parm1, InetAddress parm2, int parm3, SnmpOctetString parm4, SnmpPduTrap parm5)
Skeleton method, implemented only to satisfy the requirements of the JoeSNMP API. Does nothing except spit out an error message via LogLog.

snmpTrapSessionError

public void snmpTrapSessionError(SnmpTrapSession parm1, int parm2, Object parm3)
Skeleton method, implemented only to satisfy the requirements of the JoeSNMP API. Does nothing except spit out an error message via LogLog.