?? workspacediscovery.java
字號(hào):
package connex.core.WS;
import net.jxta.peergroup.*;
import net.jxta.discovery.*;
import net.jxta.protocol.*;
import java.util.*;
import net.jxta.document.*;
public class WorkspaceDiscovery extends Thread implements DiscoveryListener{
private DiscoveryService discovery;
//
/**
* @directed
*/
private WorkspaceSearchListener dlistener;
private String peerid = null;
private int type = DiscoveryService.GROUP;
private String attribute = null;
private String value = null;
private PeerGroup peerGroup;
private int max = 0;
private boolean b = true;
private int myQueryID;
public WorkspaceDiscovery(WorkspaceSearchListener dlistener) {
this.dlistener = dlistener;
this.discovery = Boot.netPeerGroup.getDiscoveryService();
}
public void activateDicovery(String value){
this.value = value;
this.start();
}
protected void deactivatediscovery(WorkspaceSearchListener dlistener){
discovery.removeDiscoveryListener(this);
}
public void run() {
try {
// Add ourselves as a DiscoveryListener for DiscoveryResponse events
discovery.addDiscoveryListener(this);
System.out.println("Discovery Service started...");
while (max < 5) {
// wait a bit before sending a discovery message
max++;
System.out.println("Sending a Discovery Message");
// look for any peergroup
myQueryID = discovery.getRemoteAdvertisements(
null,
DiscoveryService.GROUP ,
"Name",
"ConneX: "+value+ "*",
20);
try {
Thread.sleep(5 * 1000); //5 sec
} catch (Exception e) {
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
public void discoveryEvent(DiscoveryEvent ev) {
DiscoveryResponseMsg msg = ev.getResponse();
int advCount = msg.getResponseCount();
System.out.println(advCount + " Workspaces found");
Enumeration enumer = msg.getAdvertisements();
while (enumer.hasMoreElements()) {
Object obj = enumer.nextElement();
PeerGroupAdvertisement adv = (PeerGroupAdvertisement) obj;
System.out.println("Workspace found: " + adv.getName() );
dlistener.receiveWorkspace(new Workspace(adv)) ;
}
}
}
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -