📄 messageshowjob.java
字号:
package com.cn.darkblue.job;
import java.util.HashMap;
import java.util.Queue;
import net.jxta.endpoint.Message;
import net.jxta.peergroup.PeerGroup;
import net.jxta.util.JxtaBiDiPipe;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.core.runtime.IStatus;
import org.eclipse.ui.progress.UIJob;
import com.cn.darkblue.helper.IGroupChat;
import com.cn.darkblue.helper.IMsgScreen;
import com.cn.darkblue.helper.IPGResource;
import com.cn.darkblue.listener.CFPGQueryListener;
import com.cn.darkblue.listener.SecChatListener;
import com.cn.darkblue.util.CFResource;
import com.cn.darkblue.util.MessageUtil;
public class MessageShowJob extends UIJob{
private static final Log log = LogFactory.getLog(MessageShowJob.class);
HashMap joinMap = null;
PeerGroup peergroup;
IGroupChat gc;
IGroupChat tempgc;
IMsgScreen oScreens;
JxtaBiDiPipe bidiPipe = null;
HashMap msgMap;
Queue queue = null;
public MessageShowJob(){
super("Message show job");
}
@Override
public IStatus runInUIThread(IProgressMonitor monitor) {
try{
if(CFResource.getInstance().getGroupItrtWins().size()>0){
joinMap = CFResource.getInstance().getJoinPGMap();
//Object[] keys = joinMap.keySet().toArray();
for(int i =0;i<CFResource.getInstance().getGroupItrtWins().size();i++){
gc = (IGroupChat)CFResource.getInstance().getGroupItrtWins().get(i);
peergroup = gc.getPeerGroup();
IPGResource res = (IPGResource)joinMap.get(peergroup);
//组聊天信息输入
queue = (Queue)res.getMsgQueues().get(peergroup);
if(queue!=null){
try{
Object obj = queue.remove();
while(obj!=null){
gc.println(obj.toString());
obj = queue.remove();
}
}catch(Exception ex){}
}
//好友私聊信息输出
Object[] keys = res.getOScreens().keySet().toArray();
for(int j=0;j<keys.length;j++){
oScreens = (IMsgScreen)res.getOScreens().get(keys[j]);
queue = (Queue)res.getMsgQueues().get(keys[j]);
try{
Object obj = queue.remove();
while(obj!=null){
oScreens.println(obj.toString());
System.out.println("will print friend message "+obj.toString());
obj = queue.remove();
}
}catch(Exception ex){
}
/*
oScreens = (IMsgScreen)res.getOScreens().get(keys[j]);
bidiPipe = (JxtaBiDiPipe)res.getOutputPipes().get(keys[j]);
if(bidiPipe!=null){
try{
System.out.println("Will print the message...");
//bidiPipe.isBound();
Message message = bidiPipe.getMessage(1000*60);
if (message != null){
System.out.println("Message is not null...");
String mes = (String)MessageUtil.getStringFromMessage(message,SecChatListener.CHAT_COMM_SPACE,
SecChatListener.CHAT_COMM_MSG );
System.out.println("the message String is = "+mes);
if(mes!=null)
oScreens.println(mes);
}
}catch(Exception ex){
ex.printStackTrace();
}
}*/
}
}
}
}catch(Exception e){
log.error(e.getMessage());
e.printStackTrace();
}finally{
schedule(1000);
}
return null;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -