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

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

?? tictactoeinviteaction.java

?? Myjxta的源代碼 基于JXTA的P2P即時通信系統
?? JAVA
字號:
/* * Created on Feb 25, 2005 * */package net.jxta.myjxta.plugins.tictactoe;import net.jxta.document.*;import net.jxta.endpoint.MessageElement;import net.jxta.endpoint.TextDocumentMessageElement;import net.jxta.logging.Logging;import net.jxta.myjxta.View;import net.jxta.myjxta.dialog.Dialog;import net.jxta.myjxta.dialog.DialogManager;import net.jxta.myjxta.dialog.DialogMessage;import net.jxta.myjxta.dialog.util.RemoteCommandInvoker;import net.jxta.myjxta.plugins.tictactoe.commands.TicTacToeCommand;import net.jxta.myjxta.util.Group;import net.jxta.myjxta.util.Peer;import net.jxta.myjxta.util.Resources;import net.jxta.myjxta.util.objectmodel.PeerNode;import net.jxta.pipe.PipeService;import net.jxta.protocol.PipeAdvertisement;import javax.swing.*;import java.awt.event.ActionEvent;import java.io.IOException;import java.util.HashMap;import java.util.Map;import java.util.ResourceBundle;import java.util.logging.Level;import java.util.logging.Logger;public class TicTacToeInviteAction extends AbstractAction {    private static final int INTERVAL = 250;    private static final int MAX = INTERVAL * 4 * 75;    private static final Logger LOG = Logger.getLogger(TicTacToeInviteAction.class.getName());    private View view = null;    private static final ResourceBundle STRINGS = Resources.getStrings();    public TicTacToeInviteAction(String name, View view) {        super(name);        this.view = view;        if (Logging.SHOW_FINE && LOG.isLoggable(Level.FINE)) {            LOG.fine("TicTavToeAction instantiated");        }    }    public void actionPerformed(ActionEvent ae) {        PeerNode pn = (PeerNode) this.view.getJxtaNode(PeerNode.class);        final Peer p = pn != null ? pn.getPeer() : null;        final Group g = pn != null ? pn.getParent().getGroup() : null;        String status;        if (p != null && g != null) {            status = STRINGS.getString("status.command.initiate") +                    ": " + p.getName();            if (Logging.SHOW_INFO && LOG.isLoggable(Level.INFO)) {                LOG.info(status);            }            new Thread(new Runnable() {                public void run() {                    process(g, p);                }            }, getClass().getName() + ":getConnection").start();        } else {            String peerName=p==null?"null":p.getName();            status = STRINGS.getString("error.peer.invalid") + " " + peerName;            if (Logging.SHOW_SEVERE && LOG.isLoggable(Level.SEVERE)) {                LOG.severe(status);            }        }        if (status != null) {            this.view.setStatus(status);        }    }    private void process(Group g, Peer p) {        LOG.setLevel(Level.INFO);        String status = "initiating tictactoe action";        this.view.setStatus(status);        if (Logging.SHOW_INFO && LOG.isLoggable(Level.INFO)) {            LOG.info(status);        }        //get pipe adv from DialogManager - this is the tictactoePipe        StructuredDocument d = getPipeAdv(g);        //attach it as a message element        TextDocumentMessageElement te = d != null ?                new TextDocumentMessageElement(TicTacToeCommand.PIPE,                        (StructuredTextDocument) d, null) :                null;        if (te != null) {            if (Logging.SHOW_INFO && LOG.isLoggable(Level.INFO)) {                LOG.info(status);                LOG.info("instantiating tictactoeCommand");            }            //command fetecher will send out a command on the command pipe            RemoteCommandInvoker cf = new RemoteCommandInvoker(g, p.getPipeAdvertisement(),                    new TicTacToeCommand(), this.view.getControl());            Map<String, MessageElement> m = new HashMap<String, MessageElement>();            // add the our pipe element            m.put(TicTacToeCommand.PIPE, te);            if (Logging.SHOW_INFO && LOG.isLoggable(Level.INFO)) {                LOG.info("dispatch tictactoecommand");            }            cf.invoke(MAX, m);            //get respsonse            DialogMessage r = cf.getResponse();            if (Logging.SHOW_INFO && LOG.isLoggable(Level.INFO)) {                LOG.info("tictactoeInvitationCommand response: " + r);            }            //this is why its important to have a consistent PIPE element in TestCommand            MessageElement pae = r != null ?                    r.getMessageElement(TicTacToeCommand.PIPE) :                    null;            if (pae != null) {                status = "tictactoe pipe import" +                        ": " + p.getName();                this.view.setStatus(status);                if (Logging.SHOW_INFO && LOG.isLoggable(Level.INFO)) {                    LOG.info(status);                    LOG.info("adding dialog");                }                PipeAdvertisement pipeAdv = getPipeAdv(pae);                if (pipeAdv != null) {                    TicTacToeDialog dialog = (TicTacToeDialog) DialogManager.getDialog(TicTacToeDialog.class,                            g, pipeAdv, this.view.getControl());                    dialog.setLocallyInitiated(true);                    this.view.getControl().addDialog(                            dialog);                } else {                    //this can happen! maybe if the user connects to his own peer?                }            } else {                status = "request tictactoe pipe" +                        ": " + p.getName();                this.view.setStatus(status);                if (Logging.SHOW_SEVERE && LOG.isLoggable(Level.SEVERE)) {                    LOG.severe(status);                }            }        } else {            if (Logging.SHOW_SEVERE && LOG.isLoggable(Level.SEVERE)) {                LOG.severe("invalid response");            }        }        LOG.setLevel(Level.SEVERE);    }    private PipeAdvertisement getPipeAdv(MessageElement me) {        if (Logging.SHOW_INFO && LOG.isLoggable(Level.INFO)) {            LOG.info("get pipeAdv");        }        StructuredDocument sd = null;        try {            sd = StructuredDocumentFactory.newStructuredDocument(MimeMediaType.XMLUTF8,                    me.getStream());        } catch (IOException e) {            LOG.log(Level.SEVERE, "can\'t document", e);        }//        if (me instanceof ByteArrayMessageElement) {//            if (LOG.isEnabledFor (Level.INFO)) {//                LOG.info ("me instanceof ByteMessageElement");//            }////            try {//                sd = StructuredDocumentFactory.newStructuredDocument (MimeMediaType.XMLUTF8,//                        ((ByteArrayMessageElement)me).getStream ());//            } catch (IOException ioe) {//                if (LOG.isEnabledFor (Level.SEVERE)) {//                    LOG.error ("can't document", ioe);//                }//            }//        } else {//            if (LOG.isEnabledFor (Level.INFO)) {//                LOG.info ("me not instanceof ByteMessageElement");//            }//        }        PipeAdvertisement pa = null;        if (sd != null) {            try {                XMLDocument xml = (XMLDocument) StructuredDocumentFactory.newStructuredDocument( MimeMediaType.XMLUTF8, sd.getStream() );                pa = (PipeAdvertisement) AdvertisementFactory.                        newAdvertisement(xml);            } catch (IOException ioe) {                if (Logging.SHOW_SEVERE && LOG.isLoggable(Level.SEVERE)) {                    LOG.log(Level.SEVERE, "can\'t get pipe advertisement", ioe);                }            }        }        return pa;    }    private StructuredDocument getPipeAdv(Group g) {        if (Logging.SHOW_INFO && LOG.isLoggable(Level.INFO)) {            LOG.info("getPipeAdvl");        }        System.out.println("TTT Dilaog in invite action");        String pn = Dialog.getDialogNamer(TicTacToeDialog.class).                getDialogName(g.getPeerGroup().getPeerName());        PipeAdvertisement pa = DialogManager.getInstance(g, pn,                PipeService.UnicastType).getPipeAdv(g.getPeerGroup());        return (StructuredDocument) pa.getDocument(MimeMediaType.XMLUTF8);    }}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
丝袜脚交一区二区| 精品日韩欧美在线| 亚洲成a人v欧美综合天堂| 欧美日韩中文字幕精品| 国产不卡在线播放| 日韩av电影免费观看高清完整版在线观看| 久久精品一区二区三区不卡| 欧美日韩五月天| 91丝袜高跟美女视频| 国内精品第一页| 秋霞午夜av一区二区三区| 亚洲色图制服丝袜| 中文一区一区三区高中清不卡| 欧美电影免费观看高清完整版在线观看 | 亚洲国产综合在线| 日韩毛片在线免费观看| 欧美国产精品久久| 欧美激情一区在线| 久久久久九九视频| 久久精品亚洲精品国产欧美| 日韩视频在线观看一区二区| 在线观看免费亚洲| 色国产综合视频| 91一区二区在线观看| 成人av一区二区三区| 99综合电影在线视频| 99在线精品免费| 91小视频在线观看| 在线精品视频小说1| 91国在线观看| 欧美日本不卡视频| 91精品国产一区二区三区蜜臀| 欧美剧情片在线观看| 在线播放中文一区| 精品国产免费一区二区三区四区| 日韩欧美国产三级电影视频| 精品国产91久久久久久久妲己| 91精品国产欧美一区二区18| 这里只有精品免费| 国产网红主播福利一区二区| 中文字幕中文字幕一区二区| 亚洲免费av高清| 天天色天天操综合| 国产中文字幕精品| 91蝌蚪porny成人天涯| 欧美三级中文字幕| 久久久久久一二三区| |精品福利一区二区三区| 亚洲综合视频在线观看| 男女男精品视频网| av电影一区二区| 777奇米四色成人影色区| 国产日韩欧美制服另类| 亚洲激情校园春色| 国产在线视视频有精品| 91影院在线观看| 日韩精品在线一区| 中文字幕日韩精品一区| 日本视频一区二区| 99v久久综合狠狠综合久久| 91精品国产入口在线| ...av二区三区久久精品| 奇米影视一区二区三区小说| 高清成人免费视频| 正在播放亚洲一区| 亚洲一区免费在线观看| 韩国精品久久久| 欧美人与禽zozo性伦| 最新中文字幕一区二区三区| 人禽交欧美网站| 欧洲精品在线观看| 国产精品伦一区二区三级视频| 日本不卡在线视频| 欧亚一区二区三区| 亚洲欧美日韩在线不卡| 成人动漫av在线| 欧美刺激午夜性久久久久久久| 亚洲老司机在线| 不卡一卡二卡三乱码免费网站| 精品久久久久久综合日本欧美| 丝袜亚洲精品中文字幕一区| 色吊一区二区三区| 亚洲精品免费电影| 色呦呦一区二区三区| 中文字幕一区二区不卡| 成人免费的视频| 国产精品视频免费| 99久久精品一区| 成人欧美一区二区三区在线播放| 高清久久久久久| 中文字幕在线不卡视频| 国产69精品久久久久毛片| 久久综合狠狠综合久久综合88| 六月丁香婷婷色狠狠久久| 日韩欧美一级二级三级久久久 | 91精品国产一区二区| 日日骚欧美日韩| 欧美成人vr18sexvr| 极品少妇xxxx精品少妇偷拍| 欧美www视频| 国产成人欧美日韩在线电影| 久久久国产精品麻豆| 99视频超级精品| 亚洲一区免费观看| 日韩欧美成人一区| 成人夜色视频网站在线观看| 国产精品你懂的| 欧美日韩成人激情| 国产精品一区二区在线看| 国产清纯美女被跳蛋高潮一区二区久久w | 国产福利91精品一区二区三区| 亚洲三级在线免费观看| 欧美日韩视频专区在线播放| 久久99久久精品| 欧美国产成人精品| 欧美日韩三级在线| 高清免费成人av| 视频一区二区不卡| 国产精品美女久久久久av爽李琼 | 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆| 91成人看片片| 国产麻豆日韩欧美久久| 亚洲一区二区高清| 欧美激情一区二区| 在线综合视频播放| 91亚洲午夜精品久久久久久| 青青草91视频| 一级中文字幕一区二区| 国产肉丝袜一区二区| 欧美日韩三级一区二区| 成人激情综合网站| 狠狠色丁香九九婷婷综合五月| 亚洲女同ⅹxx女同tv| 国产欧美一区二区三区沐欲| 欧美日韩一级视频| 色综合天天综合网天天狠天天| 国产69精品久久777的优势| 2023国产精华国产精品| 成人久久视频在线观看| 麻豆精品新av中文字幕| 亚洲一区二区在线观看视频| 中文无字幕一区二区三区 | 99热在这里有精品免费| 国产成人高清在线| 国产一二精品视频| 极品少妇xxxx精品少妇| 麻豆91精品91久久久的内涵| 亚洲sss视频在线视频| 亚洲最色的网站| 亚洲色图在线看| 一区二区三区四区蜜桃| 亚洲视频网在线直播| 一区二区三区国产豹纹内裤在线| 国产精品美女久久久久久久久久久 | 国产日韩欧美一区二区三区乱码| 亚洲精品一区二区三区在线观看| 欧美一卡2卡3卡4卡| 欧美成人综合网站| 久久久久久久久久久久久女国产乱| 日韩一区二区电影网| 欧美日韩视频第一区| 风间由美一区二区av101| 国产在线精品不卡| 福利一区二区在线观看| 国产91清纯白嫩初高中在线观看| 国产激情91久久精品导航 | 日韩高清一区在线| 精品在线视频一区| 国产91高潮流白浆在线麻豆 | 91同城在线观看| 欧美日韩黄色影视| 26uuuu精品一区二区| 久久精品免视看| 亚洲乱码中文字幕综合| 亚洲一区二区在线观看视频| 日本特黄久久久高潮| 国产综合色在线视频区| 99精品国产91久久久久久| 欧美日韩一区二区三区视频| 欧美大黄免费观看| 最新欧美精品一区二区三区| 亚洲123区在线观看| 国产精品一级片| 在线免费观看日本一区| 久久久久久久电影| 国产日韩v精品一区二区| 久久九九99视频| 日本一区二区综合亚洲| 亚洲一区在线观看免费| 极品少妇xxxx偷拍精品少妇| 色婷婷av一区二区三区之一色屋| 日韩三级精品电影久久久| 成人免费在线视频| 精品一区二区三区影院在线午夜| 99视频国产精品| 久久精品视频一区二区三区| 亚洲www啪成人一区二区麻豆| 国产精品一区二区男女羞羞无遮挡| 日本久久电影网| 国产精品拍天天在线|