⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 xmlblastertest.java

📁 java开源的企业总线.xmlBlaster
💻 JAVA
字号:
/*------------------------------------------------------------------------------Name:      XmlBlasterTest.javaProject:   xmlBlaster.orgCopyright: xmlBlaster.org, see xmlBlaster-LICENSE fileComment:   xmlBlaster to SNMP proxy class------------------------------------------------------------------------------*/package org.xmlBlaster.engine.admin.extern.snmp;import java.io.*;import java.util.Vector;import java.util.Enumeration;import java.net.*;import java.lang.Integer;import jax.*;/**  * XmlBlasterTest * - contains a constructor and the main program. * - runs the xmlblaster subagent. * * @version @VERSION@ * @author Udo Thalmann * @since 0.79g * @see <a href="http://www.xmlBlaster.org/xmlBlaster/doc/requirements/admin.snmp.html">admin.snmp requirement</a> */public class XmlBlasterTest{    /**     * XmlBlasterTest      * - opens an agentx connection to the master snmp agent.     * - initializes snmp mib objects.     * - sends traps, if trap conditions are true.     *     * @param String argv: contains optional host and port arguments.     *               argv[0] = host, argv[1] = port.     */    public XmlBlasterTest(String argv[])    {	AgentXConnection connection;	AgentXSession session;	AgentXRegistration registration;	String host;	int port;	long[] value = { 1, 3, 6, 1, 4, 1, 11662 };        NodeScalarImpl nodeScalarImpl;        NodeEntryImpl nodeEntryImpl;        NodeEntryImplPeer nodeEntryImplPeer1;        NodeEntryImplPeer nodeEntryImplPeer2;        NodeEntryImplPeer nodeEntryImplPeer3;        NodeEntryImplPeer nodeEntryImplPeer4;        ConnectionEntryImplPeer connectionEntryImplPeer1;        ConnectionEntryImplPeer connectionEntryImplPeer2;        ClientEntryImplPeer clientEntryImplPeer1;        ClientEntryImplPeer clientEntryImplPeer2;        SessionEntryImplPeer sessionEntryImplPeer1;        SessionEntryImplPeer sessionEntryImplPeer2;        NodeTable nodeTable;        NodeTableSubject nodeTableSubject;        NodeTableObserver nodeTableObserver;        ConnectionTableSubject connectionTableSubject;        ConnectionTableObserver connectionTableObserver;        ClientTableSubject clientTableSubject;        ClientTableObserver clientTableObserver;        SessionTableSubject sessionTableSubject;        SessionTableObserver sessionTableObserver;        boolean sleep = true;        //System.setProperty("jax.debug", "true");	if (argv.length >= 1) {	    host = argv[0];	} else {	    host = "localhost";	}	if (argv.length >= 2) {	    port = Integer.parseInt(argv[1]);	} else {	    port = 0;	}        if (argv.length >= 3) {            sleep = false;        }	try {	    System.out.print("connection to ");            if (port != 0) {	        System.out.print(host + ", " + port);		connection = new AgentXConnection(host, port);            }	    else		connection = new AgentXConnection(host);	    System.out.println(" ... established");	    session = new AgentXSession();	    connection.openSession(session);	    registration = new AgentXRegistration(new AgentXOID(value));	    session.register(registration);	} catch (Exception e) {	    System.out.println(" ... not established");	    System.err.println(e);	    return;	}        nodeScalarImpl = new NodeScalarImpl();      	session.addGroup(nodeScalarImpl);        // create concrete subjects and observers (observer pattern)        nodeTableSubject = new NodeTableSubject();        nodeTableObserver = new NodeTableObserver(nodeTableSubject, session);        connectionTableSubject = new ConnectionTableSubject(nodeTableObserver);        connectionTableObserver = new ConnectionTableObserver(connectionTableSubject, session);        clientTableSubject = new ClientTableSubject(nodeTableObserver);        clientTableObserver = new ClientTableObserver(clientTableSubject, session);        sessionTableSubject = new SessionTableSubject(nodeTableObserver, clientTableObserver);        sessionTableObserver = new SessionTableObserver(sessionTableSubject, session);        nodeEntryImplPeer1 = new NodeEntryImplPeer("node11", "host11", 111, 1161, 80, "err1.log", 1);        nodeEntryImplPeer2 = new NodeEntryImplPeer("node22", "host22", 222, 1162, 20, "err2.log", 2);        nodeEntryImplPeer3 = new NodeEntryImplPeer("node33", "host33", 333, 3333, 33, "err3.log", 3);        nodeEntryImplPeer4 = new NodeEntryImplPeer("node44", "host44", 444, 4444, 44, "err4.log", 4);        connectionEntryImplPeer1 = new ConnectionEntryImplPeer("hostAAA", 4711, "192.47.11", 5);        connectionEntryImplPeer2 = new ConnectionEntryImplPeer("hostBBB", 2222, "3.3.3.3.3", 335);        clientEntryImplPeer1 = new ClientEntryImplPeer("client111", 1, 1, 1111, 11, 1, 111, 11);        clientEntryImplPeer2 = new ClientEntryImplPeer("client222", 2, 2, 2222, 22, 2, 222, 22);        sessionEntryImplPeer1 = new SessionEntryImplPeer("session1", 111, 50, 1, 1);        sessionEntryImplPeer2 = new SessionEntryImplPeer("session2", 222, 60, 2, 2);        // add entries to concrete subjects using the observer pattern        nodeTableSubject.addEntry(nodeEntryImplPeer1);        nodeTableSubject.addEntry(nodeEntryImplPeer2);        nodeTableSubject.addEntry(nodeEntryImplPeer3);        nodeTableSubject.addEntry(nodeEntryImplPeer4);        connectionTableSubject.addEntry(nodeEntryImplPeer1.get_nodeName(), connectionEntryImplPeer1);        connectionTableSubject.addEntry(nodeEntryImplPeer2.get_nodeName(), connectionEntryImplPeer2);        clientTableSubject.addEntry(nodeEntryImplPeer3.get_nodeName(), clientEntryImplPeer1);        clientTableSubject.addEntry(nodeEntryImplPeer2.get_nodeName(), clientEntryImplPeer1);        clientTableSubject.addEntry(nodeEntryImplPeer2.get_nodeName(), clientEntryImplPeer2);        sessionTableSubject.addEntry(nodeEntryImplPeer2.get_nodeName(),                                      clientEntryImplPeer1.get_clientName(),                                     sessionEntryImplPeer1);        sessionTableSubject.addEntry(nodeEntryImplPeer2.get_nodeName(),                                      clientEntryImplPeer1.get_clientName(),                                     sessionEntryImplPeer2);        // remove entries        nodeTableSubject.removeEntry(nodeEntryImplPeer3);        nodeTableSubject.removeEntry(nodeEntryImplPeer1);        connectionTableSubject.removeEntry(nodeEntryImplPeer1.get_nodeName(), connectionEntryImplPeer1);        if (sleep) {           try {               Thread.sleep(2000);           } catch (InterruptedException e) {}        }        nodeTableObserver.sendTrap(session);        if (sleep) {           //while (true) {              try {                  Thread.sleep(90000);              } catch (InterruptedException e) {}           //}        }        else {           return;        }	try {	    session.unregister(registration);	    session.close(AgentXSession.REASON_SHUTDOWN);	    connection.close();	} catch (Exception e) {	    System.err.println(e);	}    }    /**     * Main program      * - calls XmlBlasterTest subagent constructor.     *     * @param String argv: contains optional host and port arguments.     *               argv[0] = host, argv[1] = port.     */    public static void main(String argv[])    {	new XmlBlasterTest(argv);    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -