requestServerDemo.java
上传用户:aonuowh
上传日期:2021-05-23
资源大小:35390k
文件大小:4k
源码类别:

SNMP编程

开发平台:

C/C++

  1. /*
  2.     $Id: requestServerDemo.src,v 1.3 2002/09/09 05:36:28 tonyjpaul Exp $
  3. */
  4. /*
  5.  * @(#)requestServerDemo.java
  6.  * Copyright (c) 1996-2002 AdventNet, Inc. All Rights Reserved.
  7.  * Please read the COPYRIGHTS file for more details.
  8.  */
  9. /** 
  10.  *  An example of using the SnmpRequestServer object in your code.
  11.  *  This is an applet example.  
  12.  *  Please refer requestServerDemo.html for parameters. 
  13.  **/
  14. import java.awt.*;
  15. import java.awt.event.ActionListener;
  16. import java.awt.event.ActionEvent;
  17. import java.applet.Applet;
  18. import com.adventnet.snmp.beans.*;
  19. public class requestServerDemo extends Applet implements ActionListener {
  20.     // Some AWT widgets we'll use
  21.     Label l1;
  22.     Button b1;
  23.     TextField t1;
  24.     SnmpRequestServer server;  // The server class instance we'll use
  25.     /** The init method is first called for applets.  **/
  26.     public void init() {
  27.     l1 = new Label ( getParameter("OID") );
  28.     b1 = new Button();
  29.     b1.setLabel("Get Agent Data");
  30.     t1 = new TextField("The data from the agent is shown here");
  31.     //Listen for actions on button
  32.     b1.addActionListener(this);
  33.     //Add Components using the default FlowLayout. 
  34.     add(l1);
  35.     add(t1);
  36.     add(b1);
  37.     }
  38.     /** The start method is called when page with applet is visited.  **/
  39.     public void start() {
  40.     try {  // setup the SnmpRequestServer object as desired 
  41.            // use applet parameters wherever possible for easy changes
  42.         server = new SnmpRequestServer(this);
  43.         // load MIBs to allow us to use names
  44.         if(getParameter("MIBS") != null)
  45. server.loadMibs( getParameter("MIBS") );  
  46.         if(getParameter("HOSTNAME") != null)
  47. server.setTargetHost( getParameter("HOSTNAME") );
  48.         if(getParameter("COMMUNITY") != null)
  49. server.setCommunity( getParameter("COMMUNITY") );
  50.         if(getParameter("SNMP_PORT") != null)
  51.             server.setTargetPort(Integer.parseInt(getParameter("SNMP_PORT")));
  52.         if(getParameter("USERNAME") != null)
  53. server.setPrincipal( getParameter("USERNAME"));
  54.         if(getParameter("AUTHPASS") != null)
  55. server.setAuthPassword( getParameter("AUTHPASS"));
  56.         
  57. String protocol =  getParameter("AUTHPROTOCOL");
  58.         if(protocol!=null) {
  59.             if(protocol.equals("SHA"))
  60.                 server.setAuthProtocol(SnmpServer.SHA_AUTH);
  61.             else
  62.                 server.setAuthProtocol(SnmpServer.MD5_AUTH);
  63.         }
  64.         if(getParameter("PRIVPASS") != null)
  65. server.setPrivPassword( getParameter("PRIVPASS"));
  66.         if(getParameter("SEC_LEVEL") != null)
  67. server.setSecurityLevel((byte)Integer.parseInt(getParameter("SEC_LEVEL")));
  68.         if(getParameter("SNMP_VERSION") != null)
  69. server.setSnmpVersion(Integer.parseInt(getParameter("SNMP_VERSION")));
  70.         } catch (Exception ex) {
  71.             System.err.println("Error in starting applet: "+ex+":"+ex.getMessage());
  72.     }
  73. if(server.getSnmpVersion()==3) {
  74. server.create_v3_tables();
  75. }
  76.     // We need to add a listener to listen for responses
  77.     ResultAdapter listener = new ResultAdapter() {
  78.       // This method will be invoked when the response is received
  79.         public void setResult( ResultEvent e ) {
  80.         try { 
  81.             t1.setText(e.getStringValue());
  82.         } catch (DataException de) {
  83.             System.err.println("Error in getting agent data: "+de +
  84.                        e.getErrorString());
  85.         }
  86.         }
  87.     };
  88.     server.addResultListener(listener);  // register for responses
  89.     }  
  90.     /** This method is called when the button is clicked **/
  91.     public void actionPerformed(ActionEvent e) {
  92.         RequestEvent evt = // generate event to the SnmpRequestServer
  93.         new RequestEvent(b1, getParameter("OID"), RequestEvent.GET);
  94.         server.addRequest(evt);
  95.     }
  96.     
  97. }