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

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

?? dispatcher.java

?? jxta平臺的開發包
?? JAVA
字號:
/* *  Copyright (c) 2001 Sun Microsystems, Inc.  All rights *  reserved. * *  Redistribution and use in source and binary forms, with or without *  modification, are permitted provided that the following conditions *  are met: * *  1. Redistributions of source code must retain the above copyright *  notice, this list of conditions and the following disclaimer. * *  2. Redistributions in binary form must reproduce the above copyright *  notice, this list of conditions and the following disclaimer in *  the documentation and/or other materials provided with the *  distribution. * *  3. The end-user documentation included with the redistribution, *  if any, must include the following acknowledgment: *  "This product includes software developed by the *  Sun Microsystems, Inc. for Project JXTA." *  Alternately, this acknowledgment may appear in the software itself, *  if and wherever such third-party acknowledgments normally appear. * *  4. The names "Sun", "Sun Microsystems, Inc.", "JXTA" and "Project JXTA" must *  not be used to endorse or promote products derived from this *  software without prior written permission. For written *  permission, please contact Project JXTA at http://www.jxta.org. * *  5. Products derived from this software may not be called "JXTA", *  nor may "JXTA" appear in their name, without prior written *  permission of Sun. * *  THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED *  WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES *  OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE *  DISCLAIMED.  IN NO EVENT SHALL SUN MICROSYSTEMS OR *  ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, *  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT *  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF *  USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND *  ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, *  OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT *  OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF *  SUCH DAMAGE. *  ==================================================================== * *  This software consists of voluntary contributions made by many *  individuals on behalf of Project JXTA.  For more *  information on Project JXTA, please see *  <http://www.jxta.org/>. * *  This license is based on the BSD license adopted by the Apache Foundation. * *  $Id: Dispatcher.java,v 1.1 2003/08/01 17:41:02 gonzo Exp $ */package net.jxta.test.http;import java.net.URL;import java.net.MalformedURLException;import java.net.URLEncoder;import java.util.Map;import java.util.List;import java.util.ArrayList;import java.util.Iterator;import java.util.Timer;import java.util.TimerTask;import java.io.IOException;import java.io.UnsupportedEncodingException;/** * * @version $Id: Dispatcher.java,v 1.1 2003/08/01 17:41:02 gonzo Exp $ * * @author james todd [gonzo at jxta dot org] */public class Dispatcher {    private static final String QUESTION_MARK = "?";    private static final String EQUAL = "=";    private static final String AMPERSAND = "&";    private static final String DEFAULT_URL_ENCODING = "UTF-8";    private static final int SLEEP = 100;    private static final boolean VERBOSE = false;    private List cookies = new ArrayList();    private boolean isCookieEnabled = false;    private int maxWait = 0;    public Dispatcher() {}    public boolean isCookieEnabled() {        return this.isCookieEnabled;    }    public void setCookieEnabled(boolean isCookieEnabled) {        this.isCookieEnabled = isCookieEnabled;    }    public void setMaxWait(int maxWait) {        this.maxWait = maxWait;    }    public int getMaxWait() {        return this.maxWait;    }    public Message dispatch(URL url)    throws IOException {        return dispatch(url, (Map)null);    }    public Message dispatch(URL url, Map queryString)    throws IOException {        return dispatch(url, queryString, (Message)null);    }    public Message dispatch(URL url, Message message)    throws IOException {        return dispatch(url, (Map)null, message);    }    public Message dispatch(URL url, Map queryString, Message message)    throws IOException {        URL u = bindQueryString(url, queryString);        Dispatchable dispatcher = DispatchableFactory.create(u, message);        String header = null;        for (Iterator c = this.cookies.iterator(); c.hasNext(); ) {            header = (String)c.next();            if (isCookieEnabled()) {                dispatcher.setHeader(Constants.MIME.Key.COOKIE, header);            }        }        Dispatch dispatch = new Dispatch(dispatcher);        new Thread(dispatch, Dispatcher.class.getName() + ":dispatch").start();        Timer timer = null;        if (getMaxWait() > 0) {            timer = new Timer();            timer.schedule(new DispatchTimerTask(dispatch), getMaxWait());        }        while (! dispatch.isDone()) {            try {                Thread.sleep(SLEEP);            } catch (InterruptedException ie) {                if (VERBOSE) {                    ie.printStackTrace();                }            }        }        Message response = dispatch.getResponse();        dispatcher.close();        if (timer != null) {            timer.cancel();        }        if (response != null) {            for (Iterator h =                     response.getHeaders(Constants.MIME.Key.SET_COOKIE);                 h.hasNext(); ) {                this.cookies.add((String)h.next());            }        }        return response;    }    private URL bindQueryString(URL requestURL, Map queryString) {        URL u = requestURL;        if (u != null &&            queryString != null) {            StringBuffer sb = new StringBuffer();            Iterator keys = queryString.keySet().iterator();            String key = null;            String value = null;            while (keys.hasNext()) {                key = (String)keys.next();                value = (String)queryString.get(key);                if (sb.length() > 0) {                    sb.append(AMPERSAND);                }                sb.append(urlEncode(key) + EQUAL + urlEncode(value));            }            String s = sb.toString().trim();            try {                u = new URL(u.toString() +                            ((s.length() > 0 ? QUESTION_MARK + s : "")));            } catch (MalformedURLException mue) {                if (VERBOSE) {                    mue.printStackTrace();                }            }        }        return u;    }    private String urlEncode(String value) {        return urlEncode(value, DEFAULT_URL_ENCODING);    }    private String urlEncode(String value, String encoding) {        String s = null;        try {            s = URLEncoder.encode(value, encoding);        } catch (UnsupportedEncodingException use) {            if (VERBOSE) {                use.printStackTrace();            }        }        return s;    }}class DispatchTimerTask extends TimerTask {    private Dispatch dispatcher = null;    public DispatchTimerTask(Dispatch dispatcher) {        this.dispatcher = dispatcher;    }    public void run() {        if (! this.dispatcher.isDone()) {            this.dispatcher.interrupt();        }    }}class Dispatch implements Runnable {    private static int SLEEP = 100;    private Dispatchable dispatchable = null;    private Message response = null;    private boolean isDone = false;    private boolean interrupted = false;    public Dispatch(Dispatchable dispatchable) {        this.dispatchable = dispatchable;    }    public Message getResponse() {        return this.response;    }    public boolean isDone() {        return this.isDone;    }    public void interrupt() {        setInterrupted(true);    }    public void run() {        Thread t = new Thread(new Runnable() {                                  public void run() {                                      try {                                          response = dispatchable.dispatch();                                      } catch (IOException ioe) {}                                      isDone = true;                                  }                              }                              , Dispatcher.class.getName() + ":timer");        t.start();        while (! this.isDone &&               ! isInterrupted()) {            try {                Thread.sleep(SLEEP);            } catch (InterruptedException ie) {                setInterrupted(true);            }        }        if (isInterrupted()) {            this.dispatchable.close();            t.interrupt();        }        this.isDone = true;    }    private boolean isInterrupted() {        return (this.interrupted = this.interrupted ?                                   true : Thread.interrupted());    }    private void setInterrupted(boolean interrupted) {        this.interrupted = interrupted;    }}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
av资源网一区| 午夜精品在线视频一区| 精品无码三级在线观看视频| 欧美午夜不卡视频| 日本少妇一区二区| 日韩免费在线观看| 国产成人鲁色资源国产91色综| 久久蜜臀精品av| 99精品欧美一区| 亚洲最新在线观看| 26uuu另类欧美亚洲曰本| 日本亚洲一区二区| 久久精品亚洲麻豆av一区二区| 蜜桃精品视频在线| 国产午夜精品在线观看| av在线不卡免费看| 亚洲成人av福利| 久久综合视频网| 91在线精品一区二区三区| 亚洲成人av在线电影| 欧美精品一区二| 在线看一区二区| 国产自产视频一区二区三区 | 色综合色狠狠综合色| 亚洲欧美另类小说| 精品三级av在线| 91女厕偷拍女厕偷拍高清| 免费人成精品欧美精品| 国产日韩欧美综合一区| 色综合久久久久网| 久久91精品久久久久久秒播| 中文字幕在线观看一区二区| 欧美日本一道本| 国产不卡视频在线观看| 天天操天天综合网| 国产日韩欧美高清| 91麻豆精品久久久久蜜臀| 成人app下载| 日本不卡免费在线视频| 国产精品国产自产拍在线| 制服丝袜亚洲播放| 成人黄动漫网站免费app| 色综合久久久久综合体| 久久精品99国产精品日本| 亚洲视频一区在线观看| 久久综合九色综合久久久精品综合| 一本一道久久a久久精品| 另类小说色综合网站| 一区二区三区在线免费视频| 国产情人综合久久777777| 91精品国产乱| 91极品美女在线| 国产成人精品免费| 免费看日韩a级影片| 亚洲永久精品国产| 亚洲精选一二三| 国产精品少妇自拍| 精品国产露脸精彩对白 | 欧美性色aⅴ视频一区日韩精品| 国产毛片精品国产一区二区三区| 日韩综合在线视频| 偷窥国产亚洲免费视频| 亚洲一区二区三区小说| 亚洲天堂精品在线观看| 国产精品情趣视频| 欧美国产成人在线| 国产拍欧美日韩视频二区| 精品成人免费观看| 精品国内二区三区| 精品久久久久久久人人人人传媒 | 国产精品久久影院| 国产夜色精品一区二区av| 久久久久久97三级| 国产亚洲欧美日韩俺去了| 久久久久久综合| 国产视频一区在线观看| 国产偷国产偷亚洲高清人白洁 | 欧美日韩精品系列| 欧美性欧美巨大黑白大战| 精品视频在线视频| 777亚洲妇女| 欧美一区二区三区色| 欧美一区二区三区免费观看视频| 这里只有精品电影| 日韩欧美一级二级| 久久久不卡网国产精品一区| 国产日韩高清在线| 中文成人综合网| 亚洲视频一区在线| 亚洲第一成年网| 日本中文字幕一区二区视频| 蜜臀精品一区二区三区在线观看 | 国产精品一区二区黑丝| 狠狠色狠狠色综合系列| 国产一区二区在线观看免费| 国产suv精品一区二区三区| 91免费国产在线| 欧美日韩不卡一区| 精品国产免费久久 | 亚洲九九爱视频| 日日夜夜免费精品| 国产成人午夜精品影院观看视频| 成人高清免费在线播放| 欧洲中文字幕精品| 亚洲精品一区二区三区四区高清 | 一区二区成人在线观看| 日本欧美一区二区三区乱码| 国产精品亚洲а∨天堂免在线| www.66久久| 欧美一区二区三区影视| 国产喷白浆一区二区三区| 亚洲国产精品视频| 国产东北露脸精品视频| 色婷婷综合中文久久一本| 91精品国产综合久久精品app| 国产日产欧产精品推荐色 | 老色鬼精品视频在线观看播放| 紧缚奴在线一区二区三区| 懂色一区二区三区免费观看 | 日韩av一级片| 成人在线综合网| 91.成人天堂一区| 国产精品免费av| 免费在线视频一区| av不卡一区二区三区| 欧美精品乱码久久久久久按摩| 国产农村妇女精品| 丝袜美腿高跟呻吟高潮一区| 国产精品 欧美精品| 欧美日韩国产另类一区| 中文字幕一区免费在线观看| 蜜桃av噜噜一区| 在线亚洲精品福利网址导航| 国产米奇在线777精品观看| 精品一区二区三区av| 在线观看亚洲成人| 欧美高清在线一区二区| 日本视频免费一区| 欧美性生活久久| 亚洲人吸女人奶水| 国产精品夜夜嗨| 日韩免费视频一区| 亚洲v日本v欧美v久久精品| 99久久伊人久久99| 久久免费电影网| 激情综合五月婷婷| 欧美日韩高清影院| 一区av在线播放| 一本色道久久综合亚洲91| 中文字幕欧美国产| 国产成人日日夜夜| 欧美精品一区二区高清在线观看 | 91亚洲精品久久久蜜桃网站 | 精品综合免费视频观看| 欧美日韩精品专区| 亚洲成人综合视频| 欧美日韩视频在线一区二区| 夜夜嗨av一区二区三区网页| 99视频精品在线| 中文字幕在线观看一区| thepron国产精品| 国产精品毛片无遮挡高清| 国产91精品露脸国语对白| 国产视频不卡一区| 高清国产午夜精品久久久久久| 26uuu亚洲综合色| 国产乱妇无码大片在线观看| 日韩一区二区电影| 国产综合色在线视频区| 中文字幕亚洲不卡| 欧美三级日韩在线| 亚洲不卡av一区二区三区| 欧美人与z0zoxxxx视频| 爽好多水快深点欧美视频| 欧美日韩国产综合久久| 性做久久久久久免费观看欧美| 欧美日韩成人一区| 奇米精品一区二区三区四区| 3atv在线一区二区三区| 精品在线视频一区| 国产亚洲一本大道中文在线| 懂色av一区二区三区蜜臀| 最新日韩av在线| 欧美做爰猛烈大尺度电影无法无天| 一区二区三区加勒比av| 91精品国产综合久久小美女| 久久精品久久综合| 国产人久久人人人人爽| 色激情天天射综合网| 日韩中文字幕1| 久久久欧美精品sm网站| 91在线云播放| 亚洲成人免费在线| 26uuu亚洲综合色欧美| 99国产精品久久久久久久久久久 | 久久久精品日韩欧美| 色综合视频在线观看| 日本欧美大码aⅴ在线播放| 久久精品人人做人人爽97| 在线观看视频一区二区欧美日韩|