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

SNMP编程

开发平台:

C/C++

  1. /* $Id: SnmpSetUI.java,v 1.2 2002/06/18 07:19:36 kousalya Exp $ */
  2. /* SnmpSetUI.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 com.adventnet.snmp.beans.*;
  10. import com.adventnet.snmp.ui.*;
  11. public class SnmpSetUI implements ActionListener   {
  12.   
  13.     SnmpTarget target = new SnmpTarget();
  14.     PropertySettings pptysettings = new PropertySettings();
  15.     JTextArea textfield = new JTextArea();
  16.     MibTree mibtree = new MibTree();
  17.     JButton loadbutton = new JButton();
  18.     JButton unloadbutton = new JButton();
  19.     JButton setbutton = new JButton();
  20.     JButton clearbutton = new JButton();
  21.     JTextField textfield1 = new JTextField();
  22.     JLabel label = new JLabel();
  23. public static void main(String args[]) {
  24.  
  25.     SnmpSetUI snmpops = new SnmpSetUI();
  26.     
  27.     JFrame frame = new JFrame();
  28.     frame.setVisible(true); 
  29.     frame.addWindowListener(new WindowAdapter() 
  30.           {
  31.               public void windowClosing(WindowEvent evt)
  32.               { 
  33.                   System.exit(0);
  34.               } 
  35.           });
  36.     frame.setSize(600,400); 
  37.     frame.setTitle( " AdventNet SNMP Tutorial - doing a SNMP Set operation"  ); 
  38.     frame.getContentPane().setLayout(null);
  39.     
  40.     frame.getContentPane().add(snmpops.label);
  41.     snmpops.label.setBounds(105,40,105,25);
  42.     snmpops.label.setText("SET Value");
  43.     frame.getContentPane().add(snmpops.textfield1);
  44.     snmpops.textfield1.setBounds(210,40,140,25);
  45.     frame.getContentPane().add(snmpops.textfield);
  46.     snmpops.textfield.setBounds(220,80,490,85);
  47.    
  48.     frame.getContentPane().add(snmpops.loadbutton);
  49.     snmpops.loadbutton.setBounds(230,195,105,35);
  50.     snmpops.loadbutton.setText("Load MIB");
  51.     frame.getContentPane().add(snmpops.unloadbutton);
  52.     snmpops.unloadbutton.setBounds(335,195,105,35);
  53.     snmpops.unloadbutton.setText("Unload MIB");
  54.     frame.getContentPane().add(snmpops.setbutton);
  55.     snmpops.setbutton.setBounds(440,195,105,35);
  56.     snmpops.setbutton.setText("SET");
  57.     
  58.     frame.getContentPane().add(snmpops.clearbutton);
  59.     snmpops.clearbutton.setBounds(545,195,105,35);
  60.     snmpops.clearbutton.setText("Clear");
  61.     frame.getContentPane().add(snmpops.pptysettings);
  62.     snmpops.pptysettings.setBounds(650,190,85,55);
  63.     frame.getContentPane().add(snmpops.mibtree);
  64.     snmpops.mibtree.setBounds(5,80,205,405);
  65.     
  66.     try {
  67. snmpops.mibtree.addMib("RFC1213-MIB");
  68.     }
  69.     catch (Exception ex) {
  70. }
  71.     
  72.     snmpops.target.setTargetHost("localhost");       
  73.     snmpops.pptysettings.addVetoableChangeListener(snmpops.target);
  74.     snmpops.loadbutton.addActionListener(snmpops); 
  75.     snmpops.unloadbutton.addActionListener(snmpops); 
  76.     snmpops.setbutton.addActionListener(snmpops); 
  77.     snmpops.clearbutton.addActionListener(snmpops); 
  78.     frame.show();
  79.  }
  80.     
  81.     public void actionPerformed(ActionEvent e) {
  82. if (e.getActionCommand().equals("Load MIB")) {
  83.     
  84.     JFileChooser filechooser = new JFileChooser();
  85.     filechooser.showDialog(mibtree, "open");
  86.     try {
  87. mibtree.addMib(filechooser.getSelectedFile().toString());
  88.     }
  89.     catch (Exception ex) {
  90. }
  91. }
  92. else if (e.getActionCommand().equals("Unload MIB")) {
  93.     
  94.      try {
  95. mibtree.deleteMib(mibtree.getSelectedMibModule().getName().toString());
  96.     }
  97.     catch (Exception ex) {
  98. }
  99. }    
  100. else if (e.getActionCommand().equals("SET")) {
  101.      target.setObjectID((mibtree.getSelectedMibNode().getNumberedOIDString().toString()+".0"));  
  102.      String response =  null;
  103.      try {
  104.       response =  target.snmpSet(textfield1.getText());
  105.      }catch (Exception ex) {
  106.  System.err.println("Set Error: "+ex.getMessage());
  107.      }
  108.      if(response == null) {
  109.       textfield.setText("Response received from : " + target.getTargetHost() + " Error : " + target.getErrorString());
  110.      }
  111.      else {
  112.       textfield.setText("Response PDU received from " +target.getTargetHost()+ ", community: " + target.getCommunity()+"n"+
  113.       "OBJECT ID: "+target.getObjectID()+"n"+  "RESPONSE: "+ response);
  114.      }
  115.      
  116. }
  117. else if (e.getActionCommand().equals("Clear")) {
  118.      textfield.setText("");
  119. }
  120.     }
  121.        
  122. }
  123.