/ Published in: Java
Requires jmdns.jar from http://sourceforge.net/projects/jmdns/
Expand |
Embed | Plain Text
Copy this code and paste it in your HTML
import javax.jmdns.JmDNS; import javax.jmdns.ServiceInfo; import java.io.IOException; import java.util.ArrayList; import java.util.Hashtable; public mDNSAgent(){ this.mdnsType = "_myservice._tcp.local."; this.mdnsName = "MyService"; running = false; paused=false; waitInterval=500L; status="initialized"; servers = new ArrayList<ServerInfo>(); } this.mdnsType = mdnsType; this.mdnsName = mdnsName; running = false; paused=false; waitInterval=500L; status="initialized"; servers = new ArrayList<ServerInfo>(); } private boolean running; private boolean paused; private JmDNS jmdns; private long waitInterval; private ArrayList<ServerInfo> servers; public ArrayList<ServerInfo> getServers(){return servers;} public boolean isRunning(){return running;} public boolean isPaused(){return paused;} public void stopService(){running=false;paused=false;} public void pauseService(){paused=true;} public void resumeService(){paused=false;} public void setWaitInterval(long input){waitInterval=input;} public long getWaitInterval(){return waitInterval;} public void checkPause(){while(isRunning()&&isPaused()){sleep(waitInterval);}} settings.put("host", hostName); settings.put("web_port", webServerPort.toString()); settings.put("secure_web_port", webServerPort.toString()); try { ServiceInfo info = ServiceInfo.create(mdnsType, mdnsName, webServerPort,1,1,settings); jmdns.registerService(info); } public void run(){ while (isRunning()) { checkPause(); ServiceInfo[] infos = jmdns.list(mdnsType); if(infos!=null&&infos.length>0){ ArrayList<ServerInfo> temp = new ArrayList<ServerInfo>(); for (int i=0; i < infos.length; i++) { } servers = temp; } } } }