亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? main.java

?? log4j的源碼
?? JAVA
字號:
/* * Copyright 1999-2005 The Apache Software Foundation. *  * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at *  *      http://www.apache.org/licenses/LICENSE-2.0 *  * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */package org.apache.log4j.chainsaw;import java.awt.BorderLayout;import java.awt.Dimension;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;import java.io.IOException;import java.util.Properties;import javax.swing.BorderFactory;import javax.swing.JFrame;import javax.swing.JMenu;import javax.swing.JMenuBar;import javax.swing.JMenuItem;import javax.swing.JOptionPane;import javax.swing.JPanel;import javax.swing.JScrollPane;import javax.swing.JSplitPane;import javax.swing.JTable;import javax.swing.ListSelectionModel;import org.apache.log4j.Logger;import org.apache.log4j.PropertyConfigurator;/** * The main application. * * @author <a href="mailto:oliver@puppycrawl.com">Oliver Burn</a> */public class Main    extends JFrame{    /** the default port number to listen on **/    private static final int DEFAULT_PORT = 4445;    /** name of property for port name **/    public static final String PORT_PROP_NAME = "chainsaw.port";    /** use to log messages **/    private static final Logger LOG = Logger.getLogger(Main.class);    /**     * Creates a new <code>Main</code> instance.     */    private Main() {        super("CHAINSAW - Log4J Log Viewer");        // create the all important model        final MyTableModel model = new MyTableModel();        //Create the menu bar.        final JMenuBar menuBar = new JMenuBar();        setJMenuBar(menuBar);        final JMenu menu = new JMenu("File");        menuBar.add(menu);        try {            final LoadXMLAction lxa = new LoadXMLAction(this, model);            final JMenuItem loadMenuItem = new JMenuItem("Load file...");            menu.add(loadMenuItem);            loadMenuItem.addActionListener(lxa);        } catch (NoClassDefFoundError e) {            LOG.info("Missing classes for XML parser", e);            JOptionPane.showMessageDialog(                this,                "XML parser not in classpath - unable to load XML events.",                "CHAINSAW",                JOptionPane.ERROR_MESSAGE);        } catch (Exception e) {            LOG.info("Unable to create the action to load XML files", e);            JOptionPane.showMessageDialog(                this,                "Unable to create a XML parser - unable to load XML events.",                "CHAINSAW",                JOptionPane.ERROR_MESSAGE);        }        final JMenuItem exitMenuItem = new JMenuItem("Exit");        menu.add(exitMenuItem);        exitMenuItem.addActionListener(ExitAction.INSTANCE);        // Add control panel        final ControlPanel cp = new ControlPanel(model);        getContentPane().add(cp, BorderLayout.NORTH);        // Create the table        final JTable table = new JTable(model);        table.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);        final JScrollPane scrollPane = new JScrollPane(table);        scrollPane.setBorder(BorderFactory.createTitledBorder("Events: "));        scrollPane.setPreferredSize(new Dimension(900, 300));        // Create the details        final JPanel details = new DetailPanel(table, model);        details.setPreferredSize(new Dimension(900, 300));        // Add the table and stack trace into a splitter        final JSplitPane jsp =            new JSplitPane(JSplitPane.VERTICAL_SPLIT, scrollPane, details);        getContentPane().add(jsp, BorderLayout.CENTER);        addWindowListener(new WindowAdapter() {                public void windowClosing(WindowEvent aEvent) {                    ExitAction.INSTANCE.actionPerformed(null);                }            });        pack();        setVisible(true);        setupReceiver(model);    }    /**     * Setup recieving messages.     *     * @param aModel a <code>MyTableModel</code> value     */    private void setupReceiver(MyTableModel aModel) {        int port = DEFAULT_PORT;        final String strRep = System.getProperty(PORT_PROP_NAME);        if (strRep != null) {            try {                port = Integer.parseInt(strRep);            } catch (NumberFormatException nfe) {                LOG.fatal("Unable to parse " + PORT_PROP_NAME +                          " property with value " + strRep + ".");                JOptionPane.showMessageDialog(                    this,                    "Unable to parse port number from '" + strRep +                    "', quitting.",                    "CHAINSAW",                    JOptionPane.ERROR_MESSAGE);                System.exit(1);            }        }        try {            final LoggingReceiver lr = new LoggingReceiver(aModel, port);            lr.start();        } catch (IOException e) {            LOG.fatal("Unable to connect to socket server, quiting", e);            JOptionPane.showMessageDialog(                this,                "Unable to create socket on port " + port + ", quitting.",                "CHAINSAW",                JOptionPane.ERROR_MESSAGE);            System.exit(1);        }    }    ////////////////////////////////////////////////////////////////////////////    // static methods    ////////////////////////////////////////////////////////////////////////////    /** initialise log4j **/    private static void initLog4J() {        final Properties props = new Properties();        props.setProperty("log4j.rootLogger", "DEBUG, A1");        props.setProperty("log4j.appender.A1",                          "org.apache.log4j.ConsoleAppender");        props.setProperty("log4j.appender.A1.layout",                          "org.apache.log4j.TTCCLayout");        PropertyConfigurator.configure(props);    }    /**     * The main method.     *     * @param aArgs ignored     */    public static void main(String[] aArgs) {        initLog4J();        new Main();    }}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲成av人片在线观看| 欧美日韩国产精品自在自线| 成人手机在线视频| 欧美日韩国产bt| 中文字幕一区二区三区视频| 午夜成人在线视频| 99久久精品免费观看| 精品国产乱码久久久久久闺蜜 | 日韩一级二级三级精品视频| 国产精品初高中害羞小美女文| 丝袜诱惑制服诱惑色一区在线观看| 成人午夜视频网站| 久久综合色一综合色88| 日韩精品三区四区| 欧美曰成人黄网| 国产精品久久久久久久久免费相片 | 日韩美女视频在线| 亚洲成人免费在线观看| 91麻豆免费观看| 国产精品免费视频一区| 国产高清不卡二三区| 日韩欧美一卡二卡| 午夜不卡在线视频| 欧美午夜免费电影| 亚洲第一精品在线| 欧美日韩在线三区| 亚洲伊人色欲综合网| 91麻豆精品在线观看| 亚洲欧美日韩小说| 日本韩国欧美一区| 亚洲欧美日韩系列| 色偷偷88欧美精品久久久| 综合久久国产九一剧情麻豆| 不卡一二三区首页| 中文字幕在线一区免费| 成人免费毛片app| 亚洲欧美综合另类在线卡通| www.66久久| 亚洲精品高清在线| 欧美午夜精品一区二区三区 | 一本大道久久a久久综合婷婷| 国产精品私房写真福利视频| 成人久久18免费网站麻豆| 日本一区二区视频在线观看| 成人爽a毛片一区二区免费| 国产精品毛片无遮挡高清| 99久久综合精品| 亚洲在线中文字幕| 欧美一区二区三区四区五区| 九九**精品视频免费播放| 久久久久国色av免费看影院| 国产99精品在线观看| 中文字幕一区二区三区视频 | 成人精品高清在线| 一区二区三区在线观看网站| 6080yy午夜一二三区久久| 六月婷婷色综合| 欧美国产日韩在线观看| 色狠狠一区二区| 久久99久久精品| 国产女主播视频一区二区| 色综合天天综合网天天看片| 日本成人在线网站| 欧美韩国日本一区| 欧美性欧美巨大黑白大战| 激情欧美一区二区三区在线观看| 欧美国产97人人爽人人喊| 欧美性高清videossexo| 国产一区二区福利| 亚洲你懂的在线视频| 日韩一级完整毛片| 不卡视频在线看| 天天色综合天天| 国产日本亚洲高清| 欧美疯狂做受xxxx富婆| 丁香激情综合五月| 免费在线观看日韩欧美| 亚洲美女视频一区| 2023国产精品| 欧美人xxxx| 成人av资源在线观看| 青青草97国产精品免费观看无弹窗版 | 一区二区欧美国产| 久久美女高清视频| 欧美区在线观看| 99久久免费精品| 久久国产精品第一页| 亚洲第一搞黄网站| 日韩理论片一区二区| 欧美成人精精品一区二区频| 欧美日韩一级片在线观看| 成人午夜av在线| 国产精选一区二区三区| 五月综合激情婷婷六月色窝| 亚洲精品视频在线看| 国产日韩精品一区二区三区在线| 欧美日韩国产综合视频在线观看| 成人少妇影院yyyy| 国产精品中文字幕一区二区三区| 天堂av在线一区| 亚洲国产成人av网| 一区二区三区成人| 亚洲欧美日韩人成在线播放| 国产精品色在线| 国产精品网曝门| 国产午夜久久久久| 精品毛片乱码1区2区3区| 91精品国产色综合久久不卡电影| 欧美影院一区二区| 色综合久久天天| 色综合久久综合中文综合网| 99久久精品一区| av色综合久久天堂av综合| 不卡的av网站| 97se亚洲国产综合自在线| 岛国精品在线播放| 懂色中文一区二区在线播放| 国产酒店精品激情| 粉嫩av一区二区三区在线播放 | 日本久久电影网| 欧美在线色视频| 欧美综合一区二区三区| 91久久久免费一区二区| 精品视频色一区| 91精品久久久久久蜜臀| 欧美一区二区三区婷婷月色| 日韩一级片网址| 国产三级三级三级精品8ⅰ区| 国产亚洲欧美在线| 国产精品久久久久久久岛一牛影视| 国产精品久久久久一区二区三区| 一区免费观看视频| 亚洲一区在线观看免费观看电影高清| 亚洲夂夂婷婷色拍ww47| 日韩电影免费在线| 国产一二精品视频| eeuss鲁一区二区三区| 在线精品观看国产| 日韩精品在线一区| 久久先锋资源网| 国产精品久久久久久妇女6080 | 欧美日韩大陆一区二区| 91精品国产品国语在线不卡| 精品国产一区久久| 国产精品美女久久福利网站| 亚洲一区二区三区四区五区黄| 日韩精品国产精品| 国产精品88888| 一本色道a无线码一区v| 欧美一区二区三区色| 国产欧美精品国产国产专区| 亚洲黄网站在线观看| 免费成人在线视频观看| 97久久精品人人做人人爽50路| 欧美日韩久久久| 国产精品网站在线观看| 亚洲va在线va天堂| 国产精品自拍一区| 欧美影视一区二区三区| ww亚洲ww在线观看国产| 亚洲精品亚洲人成人网在线播放| 免费在线观看精品| 色久优优欧美色久优优| 国产亚洲成aⅴ人片在线观看| 亚洲综合色视频| 高清在线观看日韩| 欧美一区二区三区的| 国产精品美女久久久久久| 日韩中文字幕亚洲一区二区va在线| 国产成人福利片| 欧美丰满少妇xxxxx高潮对白| 国产欧美一区视频| 美洲天堂一区二卡三卡四卡视频| 不卡区在线中文字幕| 欧美xxxxx牲另类人与| 亚洲一区二区三区小说| 国产精品一区二区黑丝| 69堂国产成人免费视频| 亚洲欧美日本韩国| 高清不卡一二三区| 欧美一区二区三区四区久久| 亚洲一区二区三区不卡国产欧美| 国产精品一区二区免费不卡| 欧美电视剧免费观看| 亚洲国产日韩一区二区| 在线一区二区三区做爰视频网站| 中文子幕无线码一区tr| 精品在线免费观看| 欧美大片一区二区| 免费在线看成人av| 欧美一区二区三区小说| 日韩国产精品大片| 欧美高清视频在线高清观看mv色露露十八| 国产精品乱子久久久久| 国产精品99久久久久| 亚洲精品在线一区二区| 久久99九九99精品| 欧美精品一区二区三区高清aⅴ| 污片在线观看一区二区| 欧美日韩专区在线|