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

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

?? utils.java

?? Peers is a very minimalistic SIP User-Agent. It s a softphone, written in java, and it has been test
?? JAVA
字號:
/*    This file is part of Peers.    This program 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 3 of the License, or    any later version.    This program 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 this program.  If not, see <http://www.gnu.org/licenses/>.        Copyright 2007, 2008 Yohann Martineau */package net.sourceforge.peers.sip;import static net.sourceforge.peers.sip.RFC3261.HDR_VIA;import java.net.InetAddress;import java.net.NetworkInterface;import java.net.SocketException;import java.net.UnknownHostException;import java.util.Enumeration;import net.sourceforge.peers.sip.core.Config;import net.sourceforge.peers.sip.core.useragent.UserAgent;import net.sourceforge.peers.sip.syntaxencoding.SipHeaderFieldMultiValue;import net.sourceforge.peers.sip.syntaxencoding.SipHeaderFieldName;import net.sourceforge.peers.sip.syntaxencoding.SipHeaderFieldValue;import net.sourceforge.peers.sip.syntaxencoding.SipHeaders;import net.sourceforge.peers.sip.transaction.Transaction;import net.sourceforge.peers.sip.transaction.TransactionManager;import net.sourceforge.peers.sip.transport.SipMessage;import net.sourceforge.peers.sip.transport.SipRequest;import net.sourceforge.peers.sip.transport.SipResponse;import org.dom4j.Node;public class Utils {    private static Utils INSTANCE;        public static Utils getInstance() {        if (INSTANCE == null) {            INSTANCE = new Utils();        }        return INSTANCE;    }        private InetAddress myAddress;    private int sipPort;    private int rtpPort;    private int cseqCounter;    private Utils() {        super();                Config config = UserAgent.getInstance().getConfig();        Node node = config.selectSingleNode("//peers:address");        if (node == null) {          try {                boolean found = false;                Enumeration<NetworkInterface> e = NetworkInterface                        .getNetworkInterfaces();                while (e.hasMoreElements() && !found) {                    NetworkInterface networkInterface = e.nextElement();//                    Logger.getInstance().debug(networkInterface.getDisplayName());                    Enumeration<InetAddress> f = networkInterface                            .getInetAddresses();                    while (f.hasMoreElements() && !found) {                        InetAddress inetAddress = f.nextElement();                        if (inetAddress.isSiteLocalAddress()) {                            this.myAddress = inetAddress;                            found = true;                        }                    }                }            } catch (SocketException e) {                e.printStackTrace();            }        } else {            try {                myAddress = InetAddress.getByName(node.getText());            } catch (UnknownHostException e) {                e.printStackTrace();            }        }        node = config.selectSingleNode("//peers:sip/peers:profile/peers:port");        if (node == null) {            sipPort = RFC3261.TRANSPORT_DEFAULT_PORT;        } else {            sipPort = Integer.parseInt(node.getText());        }                node = config.selectSingleNode("//peers:rtp/peers:port");        rtpPort = Integer.parseInt(node.getText());        cseqCounter = 0;    }    public InetAddress getMyAddress() {        return myAddress;    }        public int getSipPort() {        return sipPort;    }    public int getRtpPort() {        return rtpPort;    }    public SipHeaderFieldValue getTopVia(SipMessage sipMessage) {        SipHeaders sipHeaders = sipMessage.getSipHeaders();        SipHeaderFieldName viaName = new SipHeaderFieldName(HDR_VIA);        SipHeaderFieldValue via = sipHeaders.get(viaName);        if (via instanceof SipHeaderFieldMultiValue) {            via = ((SipHeaderFieldMultiValue)via).getValues().get(0);        }        return via;    }        public String generateTag() {        return randomString(8);    }        public String generateCallID() {        //TODO make a hash using current time millis, public ip @, private @, and a random string        StringBuffer buf = new StringBuffer();        buf.append(randomString(8));        buf.append('-');        buf.append(String.valueOf(System.currentTimeMillis()));        buf.append('@');        buf.append(myAddress.getHostName());        return buf.toString();    }        public String generateCSeq(String method) {        StringBuffer buf = new StringBuffer();        buf.append(cseqCounter++);        buf.append(' ');        buf.append(method);        return buf.toString();    }        public String generateBranchId() {        StringBuffer buf = new StringBuffer();        buf.append(RFC3261.BRANCHID_MAGIC_COOKIE);        //TODO must be unique across space and time...        buf.append(randomString(9));        return buf.toString();    }        public String getMessageCallId(SipMessage sipMessage) {        SipHeaderFieldValue callId = sipMessage.getSipHeaders().get(                new SipHeaderFieldName(RFC3261.HDR_CALLID));        return callId.getValue();    }        public String randomString(int length) {        String chars = "abcdefghijklmnopqrstuvwxyz" +                       "ABCDEFGHIFKLMNOPRSTUVWXYZ" +                       "0123456789";        StringBuffer buf = new StringBuffer(length);        for (int i = 0; i < length; ++i) {            int pos = (int)Math.round(Math.random() * (chars.length() - 1));            buf.append(chars.charAt(pos));        }        return buf.toString();    }        public void copyHeader(SipMessage src, SipMessage dst, String name) {        SipHeaderFieldName sipHeaderFieldName = new SipHeaderFieldName(name);        SipHeaderFieldValue sipHeaderFieldValue = src.getSipHeaders().get(sipHeaderFieldName);        if (sipHeaderFieldValue != null) {            dst.getSipHeaders().add(sipHeaderFieldName, sipHeaderFieldValue);        }    }        /**     * adds Max-Forwards Supported and Require headers     * @param headers     */    public void addCommonHeaders(SipHeaders headers) {        //Max-Forwards                headers.add(new SipHeaderFieldName(RFC3261.HDR_MAXFORWARDS),                new SipHeaderFieldValue(                        String.valueOf(RFC3261.DEFAULT_MAXFORWARDS)));                //TODO Supported and Require    }            public String getUserPart(String sipUri) {        int start = sipUri.indexOf(RFC3261.SCHEME_SEPARATOR);        int end = sipUri.indexOf(RFC3261.AT);        return sipUri.substring(start + 1, end);    }    /**     * Gives the sipMessage if sipMessage is a SipRequest or      * the SipRequest corresponding to the SipResponse     * if sipMessage is a SipResponse     * @param sipMessage     * @return null if sipMessage is neither a SipRequest neither a SipResponse     */    public SipRequest getSipRequest(SipMessage sipMessage) {        if (sipMessage instanceof SipRequest) {            return (SipRequest) sipMessage;        } else if (sipMessage instanceof SipResponse) {            SipResponse sipResponse = (SipResponse) sipMessage;            Transaction transaction = (Transaction)TransactionManager                .getInstance().getClientTransaction(sipResponse);            if (transaction == null) {                transaction = (Transaction)TransactionManager                    .getInstance().getServerTransaction(sipResponse);            }            if (transaction == null) {                return null;            }            return transaction.getRequest();        } else {            return null;        }    }}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
jizzjizzjizz欧美| 蜜臀久久99精品久久久画质超高清 | 色视频成人在线观看免| 国产一区二区三区不卡在线观看| 日韩高清不卡一区二区| 亚洲国产欧美一区二区三区丁香婷| 久久久久久久av麻豆果冻| 日韩精品中文字幕一区二区三区 | 欧美在线free| 色综合夜色一区| aaa亚洲精品| 色偷偷一区二区三区| 96av麻豆蜜桃一区二区| 色999日韩国产欧美一区二区| 成人黄色综合网站| 99久久国产综合精品色伊| 99热精品国产| 91久久人澡人人添人人爽欧美| 91福利视频久久久久| 欧美日韩一区二区电影| 日韩一区二区三区电影在线观看| 欧美一区二区免费| 国产偷v国产偷v亚洲高清| 国产精品亲子伦对白| 亚洲三级理论片| 婷婷中文字幕综合| 国内精品国产三级国产a久久| 国产综合色产在线精品| 99re视频精品| 国产精品自拍在线| 一区二区在线电影| 日韩va欧美va亚洲va久久| 免费成人美女在线观看.| 国产黄人亚洲片| 91麻豆自制传媒国产之光| 色婷婷亚洲综合| 91精品婷婷国产综合久久竹菊| 精品久久久久99| 亚洲色图另类专区| 久久福利资源站| 一本色道久久综合亚洲aⅴ蜜桃| 欧美在线观看视频一区二区| 精品乱人伦一区二区三区| 中文字幕亚洲一区二区av在线| 亚洲国产成人av好男人在线观看| 国内国产精品久久| 在线视频综合导航| 国产午夜精品在线观看| 亚洲综合一区二区三区| 韩国成人在线视频| 欧美日韩一区二区三区高清| 久久噜噜亚洲综合| 日韩精品电影在线| 97精品国产露脸对白| 精品国产乱码久久久久久牛牛 | 26uuu国产在线精品一区二区| 国产视频一区在线播放| 亚洲成av人片一区二区| 国产一区二区不卡老阿姨| 精品视频资源站| 国产精品三级电影| 久草热8精品视频在线观看| 色综合色狠狠天天综合色| 久久综合一区二区| 久久精品国产亚洲aⅴ| 欧洲一区二区三区免费视频| 国产精品网站在线播放| 精品一区二区三区免费| 91精品国产综合久久香蕉麻豆| 亚洲天堂精品在线观看| 国产传媒久久文化传媒| 日韩精品在线一区二区| 亚洲成人先锋电影| 日本韩国欧美在线| 亚洲色图制服诱惑 | 99久久免费国产| 中文av一区二区| 国产成人av自拍| 久久精品一区八戒影视| 国产精品中文字幕欧美| 精品福利在线导航| 国内精品自线一区二区三区视频| 欧美电影免费观看高清完整版在线 | 日韩一区二区三区av| 日本不卡在线视频| 日韩一区二区不卡| 精品一区二区三区免费| 国产日韩欧美一区二区三区乱码| 狠狠v欧美v日韩v亚洲ⅴ| 日韩女优av电影在线观看| 蜜臀av国产精品久久久久| 欧美一区二区三区视频在线| 五月天亚洲精品| 日韩区在线观看| 国产毛片精品一区| 中文字幕不卡一区| 91浏览器入口在线观看| 一区二区三区资源| 777色狠狠一区二区三区| 麻豆精品在线视频| 日本一区免费视频| 欧美日韩一区在线| 亚洲国产成人精品视频| 日韩欧美国产高清| 国产盗摄精品一区二区三区在线| 国产精品毛片大码女人| 欧美三级电影在线看| 久久疯狂做爰流白浆xx| 国产精品国产三级国产普通话99| 色综合久久中文综合久久97| 天天综合日日夜夜精品| 久久久国际精品| 在线看日本不卡| 激情综合色播激情啊| 亚洲人成精品久久久久久| 欧美一区二区免费观在线| 丁香啪啪综合成人亚洲小说| 一个色综合网站| 日韩精品一区二区在线| 91片在线免费观看| 久久超碰97人人做人人爱| 国产精品国产三级国产aⅴ无密码 国产精品国产三级国产aⅴ原创 | 国产精品对白交换视频 | 日韩一区二区免费在线电影 | 色94色欧美sute亚洲线路一久| 日本不卡视频在线| 亚洲欧洲性图库| 日韩欧美高清dvd碟片| 色综合亚洲欧洲| 国产精品一线二线三线精华| 夜夜精品视频一区二区| 国产农村妇女毛片精品久久麻豆| 欧美色偷偷大香| 99综合电影在线视频| 黄色日韩三级电影| 午夜不卡在线视频| 亚洲男人电影天堂| 中文av一区特黄| 2017欧美狠狠色| 欧美一级黄色录像| 欧美精品粉嫩高潮一区二区| 91美女视频网站| av亚洲产国偷v产偷v自拍| 国产一区二区三区蝌蚪| 人人精品人人爱| 全国精品久久少妇| 五月天视频一区| 日日夜夜一区二区| 亚洲福利一二三区| 亚洲观看高清完整版在线观看| 亚洲免费电影在线| 亚洲人精品午夜| 亚洲特黄一级片| 国产精品久久毛片av大全日韩| 国产欧美视频一区二区三区| 日韩精品一区二区三区中文不卡| 欧美电影一区二区三区| 欧美日韩精品免费观看视频| 欧美日韩综合一区| 欧美日韩国产成人在线免费| 欧美视频一区二区三区在线观看 | 欧美图片一区二区三区| 日本高清不卡aⅴ免费网站| 91一区二区三区在线观看| 95精品视频在线| 欧美在线不卡视频| 欧美精品一二三四| 日韩三级电影网址| 久久久久99精品一区| 国产精品三级视频| 亚洲一区二区三区视频在线| 午夜精品视频在线观看| 久久狠狠亚洲综合| 国产一区二区精品久久| 成人免费视频免费观看| 91蜜桃在线观看| 欧美高清视频一二三区| 久久综合久久鬼色| 国产精品欧美极品| 亚洲一区在线观看免费观看电影高清| 亚洲国产乱码最新视频| 久久er99热精品一区二区| 成人久久久精品乱码一区二区三区 | 自拍视频在线观看一区二区| 亚洲六月丁香色婷婷综合久久| 午夜精品福利在线| 国产麻豆91精品| 日本精品视频一区二区| 91精品欧美一区二区三区综合在| 亚洲精品一区二区在线观看| 国产精品不卡视频| 午夜电影一区二区| 国产成人亚洲精品青草天美| 欧洲精品在线观看| 精品日韩一区二区| 亚洲色欲色欲www| 久久99国产精品成人| 在线免费av一区| 日本一区二区三区四区在线视频| 亚洲码国产岛国毛片在线|