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

📄 testfrm.java~16~

📁 Firewall Application & source code.
💻 JAVA~16~
字号:
/**
 * <p>Title: </p>
 *
 * <p>Description: </p>
 *
 * <p>Copyright: Copyright (c) 2005</p>
 *
 * <p>Company: </p>
 *
 * @author not attributable
 * @version 1.0
 */
//public class testFrm  {
package fwserver;

import java.awt.BorderLayout;

import javax.swing.JFrame;
import javax.swing.JPanel;
import java.awt.*;
import javax.swing.JButton;
import javax.swing.JTextArea;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.net.Socket;
import java.io.IOException;
import java.io.FileWriter;
import java.net.ServerSocket;
import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.io.FileNotFoundException;
import java.io.PrintStream;
import java.io.FileReader;
import java.io.BufferedWriter;
import java.io.BufferedReader;
import javax.swing.*;
import javax.swing.border.TitledBorder;
import java.io.DataInputStream;
import java.io.ObjectInputStream;
import com.borland.jbcl.layout.XYLayout;
import com.borland.jbcl.layout.*;
import java.io.OutputStreamWriter;
import java.io.ObjectOutputStream;

/**
 * <p>Title: </p>
 *
 * <p>Description: </p>
 *
 * <p>Copyright: Copyright (c) 2005</p>
 *
 * <p>Company: </p>
 *
 * @author
 * @version 1.0
 */
public class testFrm extends JFrame implements Runnable {
    Thread servert;
    ServerSocket ssock;
    Socket sock;
    JPanel jPanel1 = new JPanel();
    JButton jButton1 = new JButton();
    JButton jButton2 = new JButton();
    JTextArea jTextAreaShow = new JTextArea();
    TitledBorder titledBorder1 = new TitledBorder("");
    FlowLayout flowLayout2 = new FlowLayout();
    XYLayout xYLayout1 = new XYLayout();
    public testFrm() {
        try {
            jbInit();
        } catch (Exception exception) {
            exception.printStackTrace();
        }
    }

    private void jbInit() throws Exception {
        getContentPane().setLayout(xYLayout1);
        jButton1.setFont(new java.awt.Font("宋体", Font.PLAIN, 12));
        jButton1.setActionCommand("jBtnListen");
        jButton1.addActionListener(new testFrm_jButton1_actionAdapter(this));
        jButton2.setFont(new java.awt.Font("宋体", Font.PLAIN, 12));
        jTextAreaShow.setEditable(false);
        jTextAreaShow.setText("在1234端口监听");
        jPanel1.setBorder(null);
        jPanel1.setMinimumSize(new Dimension(1000, 1000));
        jPanel1.setLayout(flowLayout2);
        jButton2.setText("关闭");
        jButton2.addActionListener(new testFrm_jButton2_actionAdapter(this));
        xYLayout1.setWidth(334);
        xYLayout1.setHeight(177);
        this.getContentPane().add(jButton1, new XYConstraints(19, 24, -1, -1));
        this.getContentPane().add(jButton2, new XYConstraints(107, 23, -1, -1));
        this.getContentPane().add(jTextAreaShow,
                                  new XYConstraints(25, 57, 238, 74));
        jButton1.setText("监听 ");
        this.getContentPane().add(jPanel1, new XYConstraints(10, 10, 337, 151));
    }

    public void CreatAServer() throws Exception {
        FileInputStream fin;
        FileWriter fout = null;
        StringBuffer buffer = new StringBuffer();
        String line;
        String rule;
        int charindex;
        int i = 1;
        while(true){
        ssock = new ServerSocket(1234);
        System.out.println("Listening");
        sock = ssock.accept();
        ssock.close();
        try {
            fin = new FileInputStream("1234.txt");
        } catch (FileNotFoundException e) {
            System.out.println("InputFileNotFoud");
            return;
        }
        /**
         *  Display the FireWall Ini  in the Client Consle;
         */

   /*     PrintStream pstream = new PrintStream(sock.getOutputStream());
        do {
            i = fin.read();
            if (i != -1) {
                pstream.print((char) i);
            }
        } while (i != -1);
        fin.close();
        pstream.println();
        pstream.println("input text");*/
        OutputStreamWriter pstest = new OutputStreamWriter(sock.getOutputStream());
        try {
            FileReader freadtest = new FileReader("1234.txt");
            BufferedReader finputtest = new BufferedReader(freadtest);
            String tempss = new String();
            StringBuffer testbuffer = new StringBuffer();
            tempss = finputtest.readLine();
            while (tempss != null) {
                testbuffer.append(tempss + "\r\n");
                tempss = finputtest.readLine();
            }
            pstest.write(testbuffer.toString());
            pstest.flush();
            testbuffer.delete(0,testbuffer.length());
        } catch (Exception eee) {
            System.err.println("Error In Read FireRule ");
        }

        /**
         *  Receive the Client's Information about the FireWall Rule
         *  Write The Rule to FireWall Ini File
         */

        try {
            FileReader fread = new FileReader("1234.txt");
            BufferedReader finput = new BufferedReader(fread);
            // Receive the Client's Information
            try {
                // ObjectInputStream input = new ObjectInputStream(sock.
                //         getInputStream());
                // line = (String) input.readObject();
                InputStreamReader pss = new InputStreamReader(sock.
                        getInputStream());
                BufferedReader ins = new BufferedReader(pss);
                line = ins.readLine();
                rule = ins.readLine();
            } catch (Exception ee) {
                System.err.println("Net Transport Error !!");
                return;
            }
            byte buf[] = line.getBytes();
            String temp = new String();
            temp = finput.readLine();
            while (temp != null) {
                if (line.equals("[MANUAL UDP low REJECT]")) {
                    while (temp != null) {
                        buffer.append(temp + "\r\n");
                        temp = finput.readLine();
                        if (temp != null) {
                            while (temp != null) {
                                if (temp.equals("[MANUAL UDP low REJECT]")) {
                                    buffer.append(temp + "\r\n");
                                    //buffer.append(
                                    //        "REJECT, 1024 - 60000, default, 2005-01-01 00:00:00, PERPETUAL, 1000, unknown" +
                                    //        "\r\n");
                                    buffer.append(rule + "\r\n");
                                    temp = finput.readLine();
                                } else {
                                    buffer.append(temp + "\r\n");
                                    temp = finput.readLine();
                                }
                            }
                        }
                    }
                    break;
                }
                temp = finput.readLine();
            }

        } catch (IOException e) {
            System.out.println("Read File Error");
        }
        try {
            fout = new FileWriter("1234.txt");
            BufferedWriter writer = new BufferedWriter(fout);
            /*String str ="[auto IP xxxx]";
                                 int indextemp=buffer.indexOf(str);
             buffer.insert(indextemp+str.length()+1,"\r\n"+"insert a line rule"+  "\r\n");*/
            fout.write(buffer.toString());
            int bufferlen =buffer.length();
            buffer.delete(0,bufferlen);
        } catch (FileNotFoundException e) {
            System.out.println("Write  File  Error ");
        }

      //  pstream.close();
        sock.close();
        fout.close();
    }
    }


    public void jButton1_actionPerformed(ActionEvent e) {
        try {
            this.CreatAServer();


        } catch (Exception ee) {
            System.err.print(ee);
        }
    }

    public void jButton2_actionPerformed(ActionEvent e) {
        this.dispose();
    }

    public void run() {
        try {
            this.CreatAServer();
        } catch (Exception eee) {
        }
    }
}


class testFrm_jButton2_actionAdapter implements ActionListener {
    private testFrm adaptee;
    testFrm_jButton2_actionAdapter(testFrm adaptee) {
        this.adaptee = adaptee;
    }

    public void actionPerformed(ActionEvent e) {
        adaptee.jButton2_actionPerformed(e);
    }
}


class testFrm_jButton1_actionAdapter implements ActionListener {
    private testFrm adaptee;
    testFrm_jButton1_actionAdapter(testFrm adaptee) {
        this.adaptee = adaptee;
    }

    public void actionPerformed(ActionEvent e) {
        adaptee.jButton1_actionPerformed(e);
    }
}

⌨️ 快捷键说明

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