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

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

?? p2psocket.java

?? 利用Socket開發包開以簡單的聊天程序
?? JAVA
字號:

package demo.p2psocket;
import java.net.*;
import java.io.*;

import net.jxta.pipe.*;
import net.jxta.protocol.*;
import net.jxta.peergroup.*;
import net.jxta.document.*;
import net.jxta.discovery.*;
import net.jxta.exception.*;
import net.jxta.endpoint.*;
import net.jxta.impl.endpoint.*;

// 源程序 P2PSocket.java

public class P2PSocket extends Thread implements OutputListener,PipeMsgListener{
	private String inputPipeName=null;   			//輸入管道的名稱
	private String outputPipeName=null;  			//輸出管道的名稱
	private PipeAdvertisement inputPipeAdv=null;    //輸入管道廣告
	private PipeAdvertisement outputPipeAdv=null;   //輸出管道廣告
	private InputPipe ip=null;                      //輸入管道
	private OutputPipe op=null;                     //輸出管道 
	private PipeMsgListener pml=null;				//輸入管道的監聽器
	private OutputListener opl=null;                //輸出管道的監聽器
	private PeerGroup pg=null;						//所屬的組
	private PipeService ps=null;					//管道服務
	private DiscoveryService disc=null;  			//發現服務
	
	public P2PSocket() {
			if (pg==null) this.newPeerGroup();
			ps = pg.getPipeService();
			disc=pg.getDiscoveryService();
	}
	
	
	public P2PSocket(String inputPipeName, String outputPipeName) {
		if (pg==null) this.newPeerGroup();
		ps = pg.getPipeService();
		disc=pg.getDiscoveryService();
		this.setInputPipeName(inputPipeName);
		this.setOutputPipeName(outputPipeName);
	}
	
	
	public boolean bind() {
		for (int i=0;i<5;i++) {
			try {
				this.start();
				if (pml!=null) ip = ps.createInputPipe(inputPipeAdv, pml);
				else ip=ps.createInputPipe(inputPipeAdv,this);
			}catch (Exception e) {
				System.out.println("Error creating input pipe.");			
			}
			if (ip != null) {
				return true;
			}
		}
		return false;
	}
	
	
	public void run() {
		try {
			disc.remotePublish(inputPipeAdv,DiscoveryService.ADV,10*60*1000);
			disc.publish(inputPipeAdv,DiscoveryService.ADV,10*60*1000,10*60*1000);	
			this.sleep(10*60*1000);
		}catch (InterruptedException ie) {
			System.out.println("出錯 "+ie);
			System.exit(-1);
		}catch(IOException ioe) {
			System.out.println("出錯! "+ioe);
			System.exit(-1);
		}
	}
	
	
	public boolean connect() { 
		for (int i=0;i<10;i++) {
			try {
				System.out.println("Create Outpipe");					
				if (opl!=null)	ps.createOutputPipe(outputPipeAdv, opl);
				else ps.createOutputPipe(outputPipeAdv,this);
			}catch (IOException e) {
				System.out.println("Error: OutputPipe creation failure");
				e.printStackTrace();
			}
			if (opl!=null && opl.getOutputPipe()!=null) break;
			try {
				Thread.sleep(5*1000);
			}catch (InterruptedException ie) {
				System.out.println("出錯 "+ie);
				System.exit(-1);
			}
		}
		if (opl!=null && opl.getOutputPipe()!=null) {
			this.op=opl.getOutputPipe();
			return true;
		}else {
			System.out.println("通訊連接失敗!");
			System.exit(-1);
		}
		return false;
	}
	
	
	public boolean connect(String outputPipeName) {
		this.setOutputPipeName(outputPipeName);
		if (this.connect()) return true;
		else return false;
	}
	
	
	public void outputPipeEvent(OutputPipeEvent event) {
			op = event.getOutputPipe();	
	}
	
	 
	public boolean send(Message mess) {
	if (opl!=null) op=opl.getOutputPipe();
	while (op==null) 
	try {
		Thread.sleep(5*1000);
	}catch (InterruptedException ie) {
		System.out.println("出錯 "+ie);
		System.exit(-1);
	} 
		try {
			op.send(mess);
			return true;		
		}catch (IOException ioe) {
			System.out.println("發送消息失敗!");
			return false;
		}
	}
	
	
	public void pipeMsgEvent ( PipeMsgEvent event ){
		
	}
	
	public void setOutListener(OutputListener opl) {
		this.opl=opl;
	}
	
	
	public void setInListener(PipeMsgListener pml) {
		this.pml=pml;
	}
	
	
	public void setPeerGroup(PeerGroup pg) {
		this.pg=pg;
		this.ps=pg.getPipeService();
		this.disc=pg.getDiscoveryService();
	}
	
	public void setInputPipeName(String inputPipeName) {
		this.inputPipeName=inputPipeName;
		inputPipeAdv=createPipeAdvFromFile("adv/"+inputPipeName+".xml");
	}
	
	
	public void setOutputPipeName(String outputPipeName) {
		this.outputPipeName=outputPipeName;
		outputPipeAdv=createPipeAdvFromFile("adv/"+outputPipeName+".xml");
	}
	
	public InputPipe getInputPipe() {
		return this.ip;
	}
	
	public String getInputPipeName() {
		return this.inputPipeName;
	}
	
    public OutputPipe getOutputPipe() {
    	return this.op;
    }
	
	public String getOutputPipeName() {
		return this.outputPipeName;
	}
	
	
	private void newPeerGroup(){
		try {
			pg = PeerGroupFactory.newNetPeerGroup();            
		} 
		catch (PeerGroupException e) {
			System.out.println("fatal error : group creation failure");
			e.printStackTrace();
			System.exit(-1);
		}	
	}
	
	
	private PipeAdvertisement createPipeAdvFromFile(String filename) {
    	PipeAdvertisement pipeAdv=null;
    	try {
    		FileInputStream is=new FileInputStream(filename);
    		pipeAdv=(PipeAdvertisement) 
    				AdvertisementFactory.newAdvertisement(
    					new MimeMediaType("text/xml"),is);
    		is.close();
    	}catch(Exception e) {
    		System.err.println("Error to create pipeAdvertisement from file");
    		e.printStackTrace();
    		System.exit(1);
    	}
    	return pipeAdv;    		
    }
    
    
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产美女久久久久| 欧美猛男gaygay网站| 色婷婷一区二区三区四区| 欧美久久久久中文字幕| 国产精品国产三级国产aⅴ原创| 成人动漫一区二区在线| 欧美日韩视频一区二区| 国产午夜精品福利| 奇米色777欧美一区二区| thepron国产精品| 欧美精品一区二区高清在线观看| 一区二区三区日韩欧美| 成人午夜av电影| 精品久久久久av影院| 亚洲va中文字幕| a美女胸又www黄视频久久| 欧美精品一区二区高清在线观看| 亚洲成人av在线电影| 91免费国产视频网站| 国产欧美日韩视频一区二区| 黄色日韩网站视频| 精品欧美一区二区久久| 日本视频一区二区三区| 欧美伦理影视网| 亚洲一级电影视频| 欧美日韩精品电影| 亚洲成人免费看| 欧美日本精品一区二区三区| 亚洲动漫第一页| 精品1区2区3区| 亚洲成人免费电影| 欧美日韩中文字幕一区二区| 亚洲一区免费视频| 欧美性受极品xxxx喷水| 亚洲高清免费在线| 欧美精品在线观看一区二区| 日韩中文字幕一区二区三区| 欧美一级电影网站| 久久66热re国产| 欧美哺乳videos| 国产一区二区三区免费看| 国产日韩欧美麻豆| 99精品偷自拍| 亚洲国产欧美在线人成| 91精品国产麻豆| 国产在线精品免费| 国产精品丝袜一区| 色综合天天狠狠| 亚洲高清免费在线| 欧美不卡视频一区| 波多野结衣在线一区| 亚洲人亚洲人成电影网站色| 欧美系列日韩一区| 久久99久国产精品黄毛片色诱| 日韩欧美国产一区二区三区 | 日韩不卡一区二区三区| 欧美一区二区精美| 国产成人精品综合在线观看 | 99久久婷婷国产| 亚洲午夜私人影院| 精品国偷自产国产一区| 不卡影院免费观看| 丝袜美腿亚洲综合| 国产视频在线观看一区二区三区| kk眼镜猥琐国模调教系列一区二区| 亚洲尤物视频在线| 久久精品免视看| 欧美性受xxxx黑人xyx| 国产乱码精品一品二品| 亚洲夂夂婷婷色拍ww47| 精品粉嫩aⅴ一区二区三区四区| aaa亚洲精品一二三区| 老司机免费视频一区二区三区| 中文字幕第一区二区| 欧美日韩亚洲另类| 国产成人亚洲综合a∨婷婷| 一区二区三区在线影院| 精品久久久久99| 欧美精品亚洲一区二区在线播放| 成人av影视在线观看| 日韩av电影免费观看高清完整版| 亚洲欧洲精品一区二区三区| 日韩欧美在线影院| 在线观看亚洲精品| 91在线一区二区| 国产成人小视频| 蜜桃在线一区二区三区| 亚洲乱码国产乱码精品精可以看| 精品久久人人做人人爱| 91精品国产一区二区人妖| 97久久超碰国产精品电影| 激情综合色播激情啊| 日韩av二区在线播放| 亚洲国产精品影院| 一区二区三区中文字幕精品精品 | 日本中文字幕一区二区有限公司| 亚洲三级在线免费观看| 国产日韩欧美一区二区三区综合| 欧美一区二区三区在线看| 欧洲色大大久久| 在线免费观看日本一区| 一本久道久久综合中文字幕| 国产大陆亚洲精品国产| 激情亚洲综合在线| 韩国中文字幕2020精品| 另类小说图片综合网| 日本一道高清亚洲日美韩| 亚洲一区在线免费观看| 一区二区三区视频在线看| 1024成人网色www| 国产精品久久一级| 中文字幕一区视频| 一区二区中文视频| 亚洲女人的天堂| 一级中文字幕一区二区| 亚洲欧美日韩小说| 亚洲最色的网站| 日韩中文字幕一区二区三区| 奇米888四色在线精品| 裸体健美xxxx欧美裸体表演| 日本美女视频一区二区| 美女脱光内衣内裤视频久久影院| 极品美女销魂一区二区三区| 韩国女主播一区二区三区| 国产999精品久久久久久| 成人免费视频视频在线观看免费| 成人理论电影网| 色悠悠久久综合| 欧美日韩专区在线| 日韩欧美中文一区二区| 国产亚洲精品中文字幕| 中文字幕一区在线观看| 亚洲综合久久av| 美女一区二区三区在线观看| 国产精品123| 色哟哟欧美精品| 7777精品伊人久久久大香线蕉的| 欧美不卡123| 亚洲视频 欧洲视频| 五月激情六月综合| 国产一区二区三区国产| 91丨九色丨国产丨porny| 欧美色精品在线视频| 日韩精品一区二区三区在线| 中文字幕+乱码+中文字幕一区| 亚洲欧美日韩电影| 另类人妖一区二区av| av成人老司机| 日韩亚洲欧美成人一区| 国产精品欧美一级免费| 视频在线在亚洲| 国产精品12区| 欧美群妇大交群中文字幕| 久久久久88色偷偷免费| 亚洲v中文字幕| 波多野洁衣一区| 欧美成人女星排行榜| 亚洲精品自拍动漫在线| 国产剧情一区二区| 欧美午夜宅男影院| 日本一区二区电影| 美女在线观看视频一区二区| 色欧美片视频在线观看| 久久久久久久久免费| 亚洲成人av电影| eeuss鲁片一区二区三区| 日韩写真欧美这视频| 亚洲国产精品嫩草影院| 成人中文字幕在线| 日韩一级免费观看| 一区二区三区电影在线播| 国产河南妇女毛片精品久久久 | 日韩和欧美的一区| 99riav一区二区三区| 精品久久久久久久久久久久久久久 | 国模少妇一区二区三区| 欧美日韩精品一区二区三区四区| 中文字幕二三区不卡| 国产精品99久久久久| 日韩精品综合一本久道在线视频| 亚洲成精国产精品女| 色狠狠av一区二区三区| 欧美国产成人在线| 国产一区不卡视频| 日韩一级二级三级精品视频| 亚洲国产裸拍裸体视频在线观看乱了| 97久久精品人人爽人人爽蜜臀 | 久久综合一区二区| 日韩二区三区在线观看| 欧美久久一二区| 五月天久久比比资源色| 欧美视频一区二区三区在线观看 | 最新热久久免费视频| 大桥未久av一区二区三区中文| 精品久久一区二区| 激情成人综合网| 国产亚洲一区二区在线观看| 精品亚洲成a人| 久久麻豆一区二区| 国产91露脸合集magnet|