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

📄 discoveryclient.java

📁 JXTA发布公告的一个小程序
💻 JAVA
字号:
/* * To change this template, choose Tools | Templates * and open the template in the editor. */package jxta5;import net.jxta.discovery.DiscoveryEvent;import net.jxta.discovery.DiscoveryListener;import net.jxta.discovery.DiscoveryService;import net.jxta.document.Advertisement;import net.jxta.peergroup.PeerGroup;import net.jxta.protocol.DiscoveryResponseMsg;import net.jxta.platform.NetworkManager;import java.io.File;import java.util.Enumeration;/** * * @author m1m07a08 */public class DiscoveryClient implements DiscoveryListener{            private transient NetworkManager manager;      private transient DiscoveryService discovery;            public DiscoveryClient(){          try{              manager=new NetworkManager(NetworkManager.ConfigMode.EDGE,"DiscoveryClient",new File(new File(".cache"),"DiscoveryClient").toURI());             manager.startNetwork();                       }catch(Exception e){              e.printStackTrace();              System.exit(-1);                        }          PeerGroup netPeerGroup=manager.getNetPeerGroup();          discovery=netPeerGroup.getDiscoveryService();                }      public static void main(String args[]){          DiscoveryClient discoveryClient=new DiscoveryClient();          discoveryClient.start();                }public void start(){     long waittime=60*1000L;     try{         discovery.addDiscoveryListener(this);         discovery.getRemoteAdvertisements(null, DiscoveryService.ADV, null, null, 1,null);         while(true){             try{                  System.out.println("Sleeping for:"+waittime);                  Thread.sleep(waittime);             }catch(Exception e){                              }                 System.out.println("Sending a Discovery Message");                 discovery.getRemoteAdvertisements(null, DiscoveryService.ADV, "NAME", "Discovery tutorial", 1,null);                              }     }catch(Exception e){             e.printStackTrace();         }     }       public void discoveryEvent(DiscoveryEvent ev){             DiscoveryResponseMsg res=ev.getResponse();             System.out.println("[Got aDiscover Reaponse["+res.getResponseCount()+"elements] from peer:"+ev.getSource()+"]");             Advertisement adv;             Enumeration en=res.getAdvertisements();             if(en!=null){                 while(en.hasMoreElements()){                     adv=(Advertisement)en.nextElement();                     System.out.println(adv);                                      }             }       }     public void stop(){ manager.stopNetwork();   }    }

⌨️ 快捷键说明

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