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

SNMP编程

开发平台:

C/C++

  1. /* $Id: CompleteExample.java,v 1.2 2002/06/18 10:26:21 kousalya Exp $ */
  2. /* CompleteExample.java
  3.  * Copyright (c) 1996-2003 AdventNet, Inc. All Rights Reserved.
  4.  * Please read the associated COPYRIGHTS file for more details.
  5.  */
  6. import javax.swing.*;
  7. import java.awt.*;
  8. import java.awt.event.*;
  9. import java.io.*;
  10. import com.adventnet.snmp.beans.*;
  11. import com.adventnet.snmp.ui.*;
  12. public class CompleteExample implements ResultListener, ActionListener   {
  13.   
  14.     SnmpPoller poller = new SnmpPoller();
  15.     SnmpTarget target = new SnmpTarget();
  16.     PropertySettings pptysettings = new PropertySettings();
  17.     LineGraphBean linegraph = new LineGraphBean();
  18.     MibTree mibtree = new MibTree();
  19.     
  20.     JButton button = new JButton();
  21.     JTextArea textfield = new JTextArea();
  22.     JButton button1 = new JButton();
  23.     JButton loadbutton = new JButton();
  24.     JButton unloadbutton = new JButton();
  25.     JButton describebutton = new JButton();
  26.     JButton clearbutton = new JButton();
  27.     JButton graphbutton = new JButton();
  28.     JButton setbutton = new JButton();
  29.     JTextField textfield1 = new JTextField();
  30.     JLabel label = new JLabel();
  31. public static void main(String args[]) {
  32.  
  33.     CompleteExample builder = new CompleteExample();
  34.     JFrame frame = new JFrame();
  35.     frame.setVisible(true); 
  36.     frame.addWindowListener(new WindowAdapter() 
  37.           {
  38.               public void windowClosing(WindowEvent evt)
  39.               { 
  40.                   System.exit(0);
  41.               } 
  42.           });
  43.     frame.setSize(800,600); 
  44.     frame.setTitle( " AdventNet SNMP Tutorial - Putting it all together"  ); 
  45.     frame.getContentPane().setLayout(null);
  46.     frame.getContentPane().add(builder.textfield);
  47.     builder.textfield.setBounds(220,180,390,235);
  48.     frame.getContentPane().add(builder.loadbutton);
  49.     builder.loadbutton.setBounds(10,10,105,35);
  50.     builder.loadbutton.setText("Load MIB");
  51.     frame.getContentPane().add(builder.unloadbutton);
  52.     builder.unloadbutton.setBounds(115,10,105,35);
  53.     builder.unloadbutton.setText("Unload MIB");
  54.     frame.getContentPane().add(builder.button);
  55.     builder.button.setBounds(220,10,105,35);
  56.     builder.button.setText("GET");
  57.     frame.getContentPane().add(builder.button1);
  58.     builder.button1.setBounds(325,10,105,35);
  59.     builder.button1.setText("GET NEXT");
  60.     frame.getContentPane().add(builder.describebutton);
  61.     builder.describebutton.setBounds(430,10,105,35);
  62.     builder.describebutton.setText("Description");
  63.     
  64.     frame.getContentPane().add(builder.clearbutton);
  65.     builder.clearbutton.setBounds(535,10,105,35);
  66.     builder.clearbutton.setText("Clear");
  67.     
  68.     frame.getContentPane().add(builder.graphbutton);
  69.     builder.graphbutton.setBounds(640,10,105,35);
  70.     builder.graphbutton.setText("Graph");
  71.     
  72.     frame.getContentPane().add(builder.setbutton);
  73.     builder.setbutton.setBounds(10,50,105,35);
  74.     builder.setbutton.setText("SET");
  75.     
  76.     frame.getContentPane().add(builder.pptysettings);
  77.     builder.pptysettings.setBounds(115,50,85,55);
  78.     frame.getContentPane().add(builder.mibtree);
  79.     builder.mibtree.setBounds(5,110,205,405);
  80.     
  81.     try {
  82. builder.mibtree.addMib("RFC1213-MIB");
  83.     }
  84.     catch (Exception ex) {
  85. }
  86.     
  87.     frame.getContentPane().add(builder.label);
  88.     builder.label.setBounds(250,110,105,25);
  89.     builder.label.setText("SET Value");
  90.     frame.getContentPane().add(builder.textfield1);
  91.     builder.textfield1.setBounds(330,110,140,25);     
  92.     builder.target.setTargetHost("localhost");  
  93.     builder.poller.setTargetHost("localhost");  
  94.     
  95.     builder.pptysettings.addVetoableChangeListener(builder.target);
  96.     builder.pptysettings.addVetoableChangeListener(builder.poller);
  97.     builder.target.addResultListener(builder);
  98.     builder.poller.addResultListener(builder.linegraph);
  99.     builder.button.addActionListener(builder); 
  100.     builder.button1.addActionListener(builder); 
  101.     builder.loadbutton.addActionListener(builder); 
  102.     builder.unloadbutton.addActionListener(builder); 
  103.     builder.describebutton.addActionListener(builder); 
  104.     builder.clearbutton.addActionListener(builder); 
  105.     builder.graphbutton.addActionListener(builder); 
  106.     builder.setbutton.addActionListener(builder); 
  107.     frame.show();
  108.  }
  109.     
  110.     public void actionPerformed(ActionEvent e) {
  111. if (e.getActionCommand().equals("Load MIB")) {
  112.     
  113.     JFileChooser filechooser = new JFileChooser();
  114.     filechooser.showDialog(mibtree, "open");
  115.     try {
  116. mibtree.addMib(filechooser.getSelectedFile().toString());
  117.     }
  118.     catch (Exception ex) {
  119. }
  120. }
  121. else if (e.getActionCommand().equals("Unload MIB")) {
  122.     
  123.      try {
  124. mibtree.deleteMib(mibtree.getSelectedMibModule().getName().toString());
  125.     }
  126.     catch (Exception ex) {
  127. }
  128. }    
  129. else if (e.getActionCommand().equals("GET")) {
  130.     target.setObjectID((mibtree.getSelectedMibNode().getNumberedOIDString().toString()+".0"));  
  131.     target.snmpGet();
  132. }
  133. else if (e.getActionCommand().equals("GET NEXT")) {
  134.     target.snmpGetNext();
  135. }
  136. else if (e.getActionCommand().equals("Description")) {
  137.     textfield.setText("Syntax:"+mibtree.getSelectedMibNode().getSyntax()+"n"+
  138.       "Access:"+mibtree.getSelectedMibNode().printAccess()+"n"+
  139.       "Status:"+mibtree.getSelectedMibNode().getStatus()+"n"+
  140.       "Reference:"+mibtree.getSelectedMibNode().getReference()+"n"+
  141.       "OID:"+mibtree.getSelectedMibNode().getNumberedOIDString()+"n"+
  142.       "Node:"+mibtree.getSelectedMibNode().getOIDString()+"n"+
  143.       "Description:"+mibtree.getSelectedMibNode().getDescription()+"n");
  144.       
  145.  }
  146. else if (e.getActionCommand().equals("Clear")) {
  147.      textfield.setText("");
  148.      textfield1.setText("");
  149. }
  150. else if (e.getActionCommand().equals("Graph")) {
  151.     
  152.     
  153.     JFrame frame1 = new JFrame();
  154.     frame1.setVisible(true); 
  155.     frame1.addWindowListener(new WindowAdapter() 
  156.     {
  157. public void windowClosing(WindowEvent evt)
  158.     { 
  159.     } 
  160.     });
  161.     frame1.setSize(247,228); 
  162.     frame1.setTitle( " Line Graph Bean"  ); 
  163.     frame1.getContentPane().setLayout(null);
  164.     frame1.getContentPane().add(linegraph);
  165.     linegraph.setBounds(5,10,230,205);
  166.     poller.setObjectID((mibtree.getSelectedMibNode().getNumberedOIDString().toString()+".0"));  
  167. }
  168. else if (e.getActionCommand().equals("SET")) {
  169.     target.setObjectID((mibtree.getSelectedMibNode().getNumberedOIDString().toString()+".0"));  
  170.     try {
  171.  target.snmpSet(textfield1.getText());
  172.      }catch (Exception ex) {
  173.  System.err.println("Set Error: "+ex.getMessage());
  174.      }
  175. }
  176.  }
  177.     
  178.  
  179.     public void setNumericResult(long l){
  180.      
  181. linegraph.setNumericResult(l);
  182.     }
  183.     public void setResult(ResultEvent result){
  184.  try { 
  185.             System.out.println(result.getStringValue());
  186.   textfield.setText("Response PDU received from " +target.getTargetHost()+ ",  community: " + target.getCommunity()+"n"+
  187.        "OBJECT ID: "+target.getObjectID()+"n"+ 
  188.        "RESPONSE: "+result.getStringValue());
  189. } catch (DataException de) {
  190.             System.out.println("Error in getting agent data: "+de +
  191.                        result.getErrorString());
  192.         }
  193.     }
  194.     
  195.    
  196.      public void setStringResult(String s){
  197.      
  198.      }
  199. }
  200.