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

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

?? main.java

?? apache的log4j源碼
?? JAVA
字號:
/* * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements.  See the NOTICE file distributed with * this work for additional information regarding copyright ownership. * The ASF licenses this file to You 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一区二区三区免费野_久草精品视频
亚洲免费在线看| 亚洲一区二区偷拍精品| 91精彩视频在线观看| 欧美aaa在线| 亚洲人成电影网站色mp4| 精品粉嫩超白一线天av| 欧美美女喷水视频| 色综合天天做天天爱| 国产一区二区精品在线观看| 五月婷婷综合在线| 亚洲黄色尤物视频| 国产日韩精品一区二区三区 | 成人免费毛片高清视频| 日日夜夜免费精品| 亚洲精品大片www| 国产精品福利av| 国产午夜精品一区二区三区视频 | 久久久久久久综合日本| 91精品国产全国免费观看| 97久久人人超碰| 国产91精品一区二区| 激情文学综合网| 奇米色一区二区三区四区| 亚洲午夜久久久久| 亚洲男女一区二区三区| 国产精品久久久久精k8| 中文字幕二三区不卡| 久久久久亚洲蜜桃| 日韩精品中文字幕一区| 欧美一区二区不卡视频| 欧美久久久久久久久久| 欧美视频一二三区| 欧美日韩亚洲综合| 欧美亚洲一区三区| 日本韩国精品一区二区在线观看| jvid福利写真一区二区三区| 成人国产精品免费| 99re热这里只有精品免费视频| 成人网男人的天堂| 99九九99九九九视频精品| 成人国产精品免费观看动漫| 99视频在线观看一区三区| 不卡的av中国片| 91女人视频在线观看| 91啪亚洲精品| 欧美视频你懂的| 欧美一区三区四区| 日韩一区二区电影在线| 精品少妇一区二区三区视频免付费 | 久久久久久99精品| 国产亚洲精品超碰| 国产精品短视频| 亚洲久草在线视频| 天天av天天翘天天综合网色鬼国产| 亚洲v精品v日韩v欧美v专区| 天堂一区二区在线| 精品一区中文字幕| 风流少妇一区二区| 91丨九色丨黑人外教| 欧美日韩高清影院| 久久综合九色综合欧美就去吻| 久久久国产综合精品女国产盗摄| 国产精品美女视频| 亚洲 欧美综合在线网络| 蜜桃av噜噜一区| 国产精品中文有码| 在线看国产一区二区| 欧美一卡在线观看| 国产欧美视频一区二区| 亚洲一区在线看| 精品影院一区二区久久久| 成人av先锋影音| 欧美体内she精高潮| 久久尤物电影视频在线观看| 中文字幕一区不卡| 香蕉成人啪国产精品视频综合网| 精品综合久久久久久8888| 成人av高清在线| 91精品久久久久久久久99蜜臂| www激情久久| 亚洲va欧美va天堂v国产综合| 韩日精品视频一区| 欧洲亚洲国产日韩| 欧美精品一区在线观看| 亚洲激情在线播放| 国产精品一区二区三区乱码| 精品视频123区在线观看| 欧美激情中文字幕一区二区| 图片区小说区国产精品视频| 国产高清精品在线| 欧美日韩高清影院| 国产精品的网站| 久久99精品视频| 欧美色精品天天在线观看视频| 欧美精品一区二区久久久| 一区二区三区鲁丝不卡| 豆国产96在线|亚洲| 欧美一级欧美三级| 一区二区三区免费看视频| 色婷婷国产精品| 欧美成人三级电影在线| 亚洲一区在线观看视频| 成人国产精品免费观看| 精品1区2区在线观看| 日韩中文欧美在线| 在线看国产一区二区| 中文字幕一区在线观看视频| 国内久久婷婷综合| 制服丝袜日韩国产| 一区二区三区四区中文字幕| 成人性生交大片免费看在线播放| 日韩欧美国产wwwww| 一二三四社区欧美黄| 99国内精品久久| 日本一区二区三区免费乱视频| 蜜桃视频在线一区| 91麻豆精品91久久久久同性| 亚洲精品国产a久久久久久| www.综合网.com| 中文字幕av免费专区久久| 国产在线精品免费| 26uuu国产电影一区二区| 麻豆久久久久久久| 欧美一区二区性放荡片| 亚洲一区二区三区激情| 在线观看欧美日本| 亚洲免费大片在线观看| 91在线观看污| 日韩一区在线播放| 色综合激情五月| 亚洲人成精品久久久久| 91日韩精品一区| 一区二区三区中文免费| 色偷偷成人一区二区三区91 | 蜜臀va亚洲va欧美va天堂 | 91在线观看地址| 国产精品不卡一区| 99久久精品免费精品国产| 亚洲欧美日韩精品久久久久| 91在线一区二区| 亚洲激情欧美激情| 欧美日韩国产综合久久| 亚洲第一精品在线| 欧美一级日韩一级| 韩国av一区二区三区| 久久久亚洲高清| 成人午夜在线播放| 亚洲精品免费视频| 欧美视频在线一区二区三区 | 国产精品网站在线观看| 粉嫩在线一区二区三区视频| 中文字幕在线不卡一区| 欧美性感一类影片在线播放| 亚洲大片在线观看| 精品国产一区二区亚洲人成毛片| 国产一区二区免费视频| 国产精品动漫网站| 欧美日韩在线播放| 麻豆91精品91久久久的内涵| 久久蜜臀中文字幕| 91亚洲精华国产精华精华液| 午夜av一区二区| 亚洲午夜激情网页| 欧美精品一区二区三区蜜臀| 9色porny自拍视频一区二区| 亚洲一区二区精品视频| 亚洲精品一区二区三区精华液| www.视频一区| 天天色综合成人网| 国产欧美日韩综合| 欧美日韩久久一区| 狠狠色狠狠色合久久伊人| 中文字幕制服丝袜一区二区三区| 在线一区二区三区做爰视频网站| 美女一区二区在线观看| 国产精品国产自产拍在线| 欧美欧美午夜aⅴ在线观看| 久草中文综合在线| 一区二区免费视频| 久久人人97超碰com| 欧美在线观看视频在线| 国产精品自在欧美一区| 亚洲一级电影视频| 久久久91精品国产一区二区三区| 色欧美片视频在线观看| 国产美女精品在线| 午夜激情久久久| 国产精品国产三级国产aⅴ中文| 在线综合+亚洲+欧美中文字幕| 国产成人免费视| 日韩精品一卡二卡三卡四卡无卡| 欧美激情一区二区在线| 日韩一区二区三区视频| 色一情一伦一子一伦一区| 国产毛片精品一区| 日本免费新一区视频| 一区二区三区产品免费精品久久75| 久久久久久免费毛片精品| 欧美日韩视频在线第一区 | 欧美日韩国产高清一区|