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

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

?? mmservlet.java

?? mobile to system control
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
/* *   This file is part of MobiMon. * *   MobiMon is free software; you can redistribute it and/or modify *   it under the terms of the GNU General Public License as published by *   the Free Software Foundation; either version 2 of the License, or *   (at your option) any later version. * *   MobiMon is distributed in the hope that it will be useful, *   but WITHOUT ANY WARRANTY; without even the implied warranty of *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the *   GNU General Public License for more details. *   You should have received a copy of the GNU General Public License *   along with MobiMon; if not, write to the Free Software *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA *//* * MMServlet.java * * Created on February 1, 2003, 5:53 PM */package mobimon.servlet;import java.net.*;import java.util.*;import javax.servlet.*;import javax.servlet.http.*;import javax.management.*;import javax.management.monitor.*;import com.sun.jdmk.comm.ConnectorAddress;import com.sun.jdmk.comm.HeartBeatNotification;import com.sun.jdmk.comm.RmiConnectorAddress;import com.sun.jdmk.comm.RmiConnectorClient;import com.sun.jdmk.ServiceName;import mobimon.common.*;/** * * @author  jan * @version */public class MMServlet extends HttpServlet implements NotificationListener {        private ResourceBundle servletResources;        private Hashtable hostConnections = new Hashtable();        private static String SERVLET_RESOURCE_FILE = "mobimon.servlet.MMServlet";        private int reconnectMaxRetries = 5;        private Object lock;        /** Initializes the servlet.     */    public void init(ServletConfig config) throws ServletException {        super.init(config);        lock = new Object();        readProperties();        if (servletResources != null) {            log("Properties read");            String hosts = servletResources.getString("mobimon.hosts");            StringTokenizer st = new StringTokenizer(hosts);            while (st.hasMoreTokens()) {                String host = st.nextToken();                RmiConnectorClient rcc = new RmiConnectorClient();                RmiConnectorAddress address = new RmiConnectorAddress                (host, ServiceName.RMI_CONNECTOR_PORT,                ServiceName.RMI_CONNECTOR_SERVER);                try {                    log("Trying connection to " + host);                    rcc.connect(address) ; // CONNECTION                    rcc.addHeartBeatNotificationListener(this, null, null);                    subscribeToMonitorNotifications(rcc);                    hostConnections.put(host, rcc);                    log("Connected to " + host);                } catch (Exception e) {                    log("Unable to connect to host " + host);                }            }        }    }        /** Destroys the servlet.     */    public void destroy() {        for (Enumeration e = hostConnections.elements(); e.hasMoreElements();) {            RmiConnectorClient rcc = (RmiConnectorClient)e.nextElement();            try {                rcc.disconnect();            } catch (Exception ex) {}        }    }        /** Processes requests for both HTTP <code>GET</code> and <code>POST</code> methods.     * @param request servlet request     * @param response servlet response     */    protected void processRequest(HttpServletRequest request,    HttpServletResponse response) throws ServletException, java.io.IOException {        response.setContentType("text/plain");        ServletOutputStream sos = response.getOutputStream();        byte[] barr = null;        int pageNo = 0;                String whatNext = request.getParameter("nodes");        if (whatNext != null) {            barr = listNodes();        } else {            whatNext = request.getParameter("host");            if (whatNext != null) {                String hostName = whatNext;                whatNext = request.getParameter("domain");                if (whatNext != null) {                    String domain = whatNext;                    barr = listMBeans(hostName, domain);                } else {                    whatNext = request.getParameter("mbean");                    if (whatNext != null) {                        String mBeanName = whatNext;                        whatNext = request.getParameter("action");                        if (whatNext != null) {                            String action = whatNext;                            whatNext = request.getParameter("desc");                            if (whatNext != null) {                                if (whatNext.equals("a")) {                                    barr =                                    getDescription(hostName, mBeanName, action);                                } else if (whatNext.equals("p")) {                                    barr =                                    getParameters(hostName, mBeanName, action);                                }                            } else {                                Object o = performAction                                (hostName, mBeanName, action, request);                                if (o instanceof Page) {                                    Page p = (Page)o;                                    barr = p.getPageContents();                                    pageNo = p.getPageNo();                                } else {                                    barr = (byte[])o;                                }                            }                        } else {                            barr = listActions(hostName, mBeanName);                        }                    } else {                        barr = listDomains(hostName);                    }                }            } else {                barr = "Unrecognized request".getBytes();            }        }        if (barr != null) {            response.setContentLength(barr.length);            response.setIntHeader("Page", pageNo);            sos.write(barr);        }                sos.close();    }        /** Handles the HTTP <code>GET</code> method.     * @param request servlet request     * @param response servlet response     */    protected void doGet(HttpServletRequest request, HttpServletResponse response)    throws ServletException, java.io.IOException {        processRequest(request, response);    }        /** Handles the HTTP <code>POST</code> method.     * @param request servlet request     * @param response servlet response     */    protected void doPost(HttpServletRequest request, HttpServletResponse response)    throws ServletException, java.io.IOException {        processRequest(request, response);    }        /** Returns a short description of the servlet.     */    public String getServletInfo() {        return "MobiMon Servlet";    }        private byte[] listNodes() {        StringBuffer sb = new StringBuffer();        for (Enumeration e = hostConnections.keys(); e.hasMoreElements();) {            sb.append((String)e.nextElement()).append("\n");        }        return sb.toString().getBytes();    }        private byte[] listMBeans(String host, String domain) {        StringBuffer sb = new StringBuffer();        RmiConnectorClient connectorClient = null;        try {            connectorClient = connect(host);            Set s = connectorClient.queryNames(new ObjectName(domain + ":*"),            null);            Iterator it = s.iterator();            while (it.hasNext()) {                ObjectName mBeanName = (ObjectName)it.next();                String name = mBeanName.getKeyPropertyListString();                sb.append(name).append("\n");            }        } catch (Exception e) {            log(e.getClass().getName(), e);            sb.append("Exception occured: ").append(e.getMessage());        }        return sb.toString().getBytes();    }        private byte[] listActions(String host, String mbean) {        StringBuffer sb = new StringBuffer();        RmiConnectorClient connectorClient = null;        try {            connectorClient = connect(host);            ObjectName mBeanName = new ObjectName(mbean);            MBeanInfo mbi = connectorClient.getMBeanInfo(mBeanName);            MBeanAttributeInfo[] mai = mbi.getAttributes();            for (int i = 0; i < mai.length; i++) {                if (mai[i].isReadable()) {                    if (mai[i].getType().equals("boolean")) {                        sb.append(mai[i].isIs() ? "is" : "get");                    } else {                        sb.append("get");                    }                }                sb.append(mai[i].getName()).append("\n");                if (mai[i].isWritable()) {                    sb.append("set").append(mai[i].getName()).append("\n");                }            }            MBeanOperationInfo[] moi = mbi.getOperations();            for (int i = 0; i < moi.length; i++) {                sb.append(moi[i].getName()).append("\n");            }        } catch (Exception e) {            log(e.getClass().getName(), e);            sb.append("Exception occured: ").append(e.getMessage());        }        return sb.toString().getBytes();    }        private Object performAction(String host, String mbean, String action,    HttpServletRequest request) {        Object o = null;        byte[] barr = null;        RmiConnectorClient connectorClient = null;        try {            connectorClient = connect(host);            ObjectName mBeanName = new ObjectName(mbean);            log("Performing action " + action);            boolean getterAction = false;            boolean setterAction = false;            String attrName = null;            if (action.startsWith("get") || action.startsWith("set")            || action.startsWith("is")) {                attrName = action.startsWith("is")                ? action.substring(2) : action.substring(3);                MBeanInfo mbi = connectorClient.getMBeanInfo(mBeanName);                MBeanAttributeInfo[] mai = mbi.getAttributes();                for (int i = 0; i < mai.length; i++) {                    if (mai[i].getName().equals(attrName)) {                        getterAction = (action.startsWith("get")                        || action.startsWith("is"));                        setterAction = action.startsWith("set");                        break;                    }                }            }            if (getterAction) {                if (request.getHeader("Page") != null) {                    int pageNo = request.getIntHeader("Page");                    if (pageNo != 0) {                        o = invokePageOperation                        (connectorClient, mBeanName, action, pageNo);                    } else {                        o = getMBeanAttribute                        (connectorClient, mBeanName, attrName);                    }                } else {                    o = getMBeanAttribute(connectorClient, mBeanName, attrName);                }            } else if (setterAction) {                String value = request.getParameter(attrName);                if ((value == null) || (value.length() < 1)) {                    barr = ("No attribute value specified for action "                    + action).getBytes();                } else {                    barr = setMBeanAttribute                    (connectorClient, mBeanName, attrName, value);                }            } else {                o = invokeMBeanOperation                (connectorClient, mBeanName, action, request);            }        } catch (Exception e) {            log(e.getClass().getName(), e);            barr = ("Exception occured: " + e.getMessage()).getBytes();        }        if (barr != null) o = barr;        return o;    }        private Object getMBeanAttribute(RmiConnectorClient connectorClient,    ObjectName mBeanName, String attrName) {        try {            Object o = connectorClient.getAttribute(mBeanName, attrName);            if (o instanceof Page) return o;            return convertReturnValue(o, "");        } catch (Exception e) {            log(e.getClass().getName(), e);            return("Exception occured: " + e.getMessage()).getBytes();        }    }        private byte[] setMBeanAttribute(RmiConnectorClient connectorClient,    ObjectName mBeanName, String attrName, String value) {        try {            MBeanInfo mbi = connectorClient.getMBeanInfo(mBeanName);            MBeanAttributeInfo[] mai = mbi.getAttributes();            for (int i = 0; i < mai.length; i++) {                if (mai[i].getName().equals(attrName)) {                    String type = mai[i].getType();                    try {                        Attribute a =                        new Attribute(attrName, convertValue(value, type));                        connectorClient.setAttribute(mBeanName, a);                        return ("Attribute " + attrName + " set").getBytes();                    } catch (MMParameterException mpe) {                        return                        ((attrName + ": " + mpe.getMessage()).getBytes());                    }                }            }            return("Attribute " + attrName + " not found").getBytes();        } catch (Exception e) {            log(e.getClass().getName(), e);            return("Exception occured: " + e.getMessage()).getBytes();        }    }        private Object invokeMBeanOperation(RmiConnectorClient connectorClient,    ObjectName mBeanName, String action, HttpServletRequest request) {        try {            MBeanInfo mbi = connectorClient.getMBeanInfo(mBeanName);            MBeanOperationInfo moi[] = mbi.getOperations();            for (int i = 0; i < moi.length; i++) {                if (moi[i].getName().equals(action)) {                    String retType = moi[i].getReturnType();                    Object retVal;                    MBeanParameterInfo mpi[] = moi[i].getSignature();                    if (mpi.length > 0) {

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
色播五月激情综合网| 欧美日韩一区二区电影| 不卡一卡二卡三乱码免费网站| 韩国v欧美v日本v亚洲v| 国产精品中文欧美| 蜜臀av性久久久久av蜜臀妖精| 麻豆精品久久精品色综合| 精品亚洲免费视频| 国产激情偷乱视频一区二区三区| 国产成人免费视频一区| 91免费精品国自产拍在线不卡| 国产激情一区二区三区四区| 99久久99久久久精品齐齐| 色诱亚洲精品久久久久久| 精品视频在线免费观看| 日韩欧美一卡二卡| 日本一区二区视频在线| 国产精品家庭影院| 亚洲一区二区影院| 亚洲午夜久久久久中文字幕久| 日韩精品欧美精品| 国产露脸91国语对白| 北条麻妃国产九九精品视频| 欧美日韩精品欧美日韩精品一| 欧美r级在线观看| 亚洲国产精品精华液ab| 亚洲日本丝袜连裤袜办公室| 日韩精品三区四区| 国产91在线看| 欧美自拍丝袜亚洲| 欧美videossexotv100| 国产偷国产偷亚洲高清人白洁| 亚洲男人天堂av网| 久久国产婷婷国产香蕉| 北岛玲一区二区三区四区| 3d动漫精品啪啪一区二区竹菊| 久久久久国产一区二区三区四区| 一区二区成人在线| 国产一区二区影院| 欧美色图免费看| 欧美激情综合在线| 五月激情综合网| 成人视屏免费看| 精品视频一区二区不卡| 国产日韩精品一区| 亚洲动漫第一页| 国产91露脸合集magnet| 欧美一区二区性放荡片| 亚洲视频免费在线| 蜜臀久久99精品久久久久宅男| a级高清视频欧美日韩| 欧美zozozo| 夜夜嗨av一区二区三区四季av| 精久久久久久久久久久| 欧亚洲嫩模精品一区三区| 久久这里只精品最新地址| 香蕉加勒比综合久久| 波多野结衣在线aⅴ中文字幕不卡| 9191久久久久久久久久久| 亚洲三级免费观看| 精品一区二区三区久久久| 欧美日韩在线播放三区四区| 国产夜色精品一区二区av| 婷婷丁香久久五月婷婷| 国产成人丝袜美腿| 日韩亚洲欧美一区| 午夜欧美电影在线观看| 成人app下载| 久久久久久**毛片大全| 伊人色综合久久天天| 成人丝袜视频网| 久久毛片高清国产| 久草热8精品视频在线观看| 欧美三电影在线| 亚洲精品高清视频在线观看| 成年人午夜久久久| 日本一区二区三区视频视频| 国产在线一区二区综合免费视频| 欧美电影在线免费观看| 亚洲国产裸拍裸体视频在线观看乱了| caoporen国产精品视频| 久久精品夜色噜噜亚洲a∨| 久久国产夜色精品鲁鲁99| 欧美一区二区三区视频在线观看| 亚洲综合色噜噜狠狠| 一本久道中文字幕精品亚洲嫩| 国产精品国产三级国产aⅴ原创| 国产乱淫av一区二区三区| 日韩一区二区电影网| 日本女优在线视频一区二区| 91在线码无精品| 中文字幕一区二区在线播放| 成人黄动漫网站免费app| 精品日韩在线一区| 最新不卡av在线| 成人免费看视频| 大白屁股一区二区视频| 婷婷久久综合九色综合绿巨人| 色综合天天综合网天天看片| 2020国产精品自拍| 亚洲欧洲精品一区二区三区| 不卡的电影网站| 国产精品色哟哟网站| 菠萝蜜视频在线观看一区| 久久久影视传媒| 国产69精品久久777的优势| 国产精品青草久久| 99久久er热在这里只有精品15| 亚洲综合一二区| 国产白丝精品91爽爽久久 | 欧美色综合久久| 天堂蜜桃一区二区三区| 91精品欧美综合在线观看最新| 亚洲成人高清在线| 日韩精品最新网址| 国产精品18久久久久久vr| 国产三级久久久| 欧美图区在线视频| 免费不卡在线观看| 久久久久久久性| 成人aaaa免费全部观看| 亚洲一区二区欧美日韩| 欧美二区乱c少妇| 奇米四色…亚洲| 成人免费一区二区三区视频| 在线观看免费成人| 美女视频第一区二区三区免费观看网站| 精品国产伦一区二区三区观看体验| 国产成人亚洲综合a∨婷婷图片| 日韩理论电影院| 91麻豆精品国产自产在线| 国产精品高潮呻吟| 欧美日韩一区久久| 国产成人av一区二区三区在线观看| 亚洲午夜免费视频| 国产欧美一区二区三区网站| 欧美日韩国产免费| 国产成人鲁色资源国产91色综| 亚洲aⅴ怡春院| 国产丝袜在线精品| 4438x成人网最大色成网站| 99精品偷自拍| 激情图区综合网| 亚洲成人资源网| 日韩理论片网站| 久久久久久电影| 日韩片之四级片| 91高清视频在线| 国产91清纯白嫩初高中在线观看| 视频在线观看一区| 亚洲欧美偷拍另类a∨色屁股| 欧美xxx久久| 久久久五月婷婷| 尤物视频一区二区| 国产成人超碰人人澡人人澡| 91激情五月电影| 久久色视频免费观看| 亚洲午夜在线视频| 97精品久久久久中文字幕| 91国偷自产一区二区使用方法| 欧美久久久久中文字幕| 日本一区二区三区在线观看| 午夜精品免费在线观看| 成人高清伦理免费影院在线观看| 2023国产精品视频| 捆绑变态av一区二区三区| 亚洲色图制服诱惑| 国产三级欧美三级日产三级99| 精品欧美黑人一区二区三区| 欧美狂野另类xxxxoooo| 在线观看视频一区二区| 97精品电影院| eeuss影院一区二区三区| 国产剧情一区二区三区| 国产乱码精品一区二区三区忘忧草 | 91免费观看国产| 丁香婷婷综合五月| 国产成人精品www牛牛影视| 国内精品伊人久久久久av影院| 亚洲二区视频在线| 午夜精品久久久久久久久| 亚洲福利视频三区| 亚洲一区二区av电影| 一卡二卡三卡日韩欧美| 亚洲图片激情小说| 国产精品久久福利| 亚洲少妇中出一区| 国产精品第13页| 亚洲特黄一级片| 亚洲男人电影天堂| 亚洲精品大片www| 亚洲午夜一区二区| 午夜精品福利在线| 免费成人av资源网| 久久精品国产免费| 国产尤物一区二区| 国产凹凸在线观看一区二区| 国产成人午夜精品影院观看视频 | 国产精品电影一区二区| 亚洲男人的天堂在线aⅴ视频 |