⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 publishtasklistener.java

📁 一个基于NetBeans平台开发的
💻 JAVA
字号:
/**publish任务的任务监听器,<br>
 *主要是监听输入管道的消息,<br>
 *一旦建立了此监听器,<br>
 *就等待请求的到来,<br>
 *不用在加以关注,<br>
 *它会把收到的请求消息自动加入缓冲区(MessageBuffer)。<br>
 *
 *直到收到了第一个请求消息,<br>
 *才创建一个PublishUpload对象,<br>
 *此对象是一个线程,<br>
 *作为MessageBuffer消息的消费者。<br>
 *
 *@author Sinpool<br>
 *
 *@version 1.0<br>
 */

package com.sinpool.rivercrescent.Listener;

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

import java.util.*;
import java.io.*;

import com.sinpool.rivercrescent.Task.*;
import com.sinpool.rivercrescent.BufferZone.*;
import com.sinpool.rivercrescent.interfaces.MyPipeMsgListener;

public class PublishTaskListener implements MyPipeMsgListener{
	private TaskInfo taskInfo = null;
        private InputPipe inputPipe = null;
	private MessageBuffer messageBuffer = new MessageBuffer();
	private PublishManagerControl publishManagerControl = new PublishManagerControl();
	
	private boolean fflag = true;
	
	public PublishTaskListener(TaskInfo ti){
		this.taskInfo = ti;
	}
	
	public void pipeMsgEvent(PipeMsgEvent event){
		Message msg = event.getMessage();
                messageBuffer.addElement(msg);

		if (fflag){
                        PublishUpload pu = new PublishUpload(messageBuffer,taskInfo,publishManagerControl);
                        pu.start();
                        fflag = false;
		}
	}
	
        public void startJoinDownloadListener() {}//
	public void stopListener(){
		publishManagerControl.stopUploadManager();
                
                //唤醒等待upload的线程,从而使之 停止。
                Message outmsg = new Message();
                ByteArrayMessageElement outMsgTypeElement = new ByteArrayMessageElement("Type",MimeMediaType.XMLUTF8,"Res".getBytes(),null);
                outmsg.addMessageElement(outMsgTypeElement);
                messageBuffer.addElement(outmsg);
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -