Skip to content
Copy of the JmDNS CVS repository
Java
Find file
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
.settings
docs
lib
src
.classpath
.cvsignore
.gitignore
.project
CHANGELOG.txt
LICENSE
LICENSE-LGPL.txt
NOTICE.txt
README.txt
build.xml
fulllogging.properties
jmdns.iml
jmdns.ipr

README.txt

// %Z%%M%, %I%, %G%
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
// License as published by the Free Software Foundation; either
// version 2.1 of the License, or (at your option) any later version.
// 
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
// Lesser General Public License for more details.
// 
// You should have received a copy of the GNU Lesser General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA


//This library is now licensed under the Apache License Version 2.0  Please 
//see the file NOTICE.txt.  


Arthur van Hoff
avh@strangeberry.com

Rick Blair
rickblair@mac.com

** JmDNS

This is an implemenation of multi-cast DNS in Java. It currently
supports service discovery and service registration. It is fully
interoperable with Apple's Rendezvous. 



** Requirements

jmdns has been tested using the JDK 1.3.1 and JDK 1.4.0
on the following platforms:

Windows 9x, XP, 2000
Linux   RedHat 7.3-9.0, Mandrake
Mac OSX



** Running jmdns from the Command Line

GUI browser:

  java -jar lib/jmdns.jar -browse

TTY browser for a particular service type:

  java -jar lib/jmdns.jar -bs _http._tcp local.

Register a service:

  java -jar lib/jmdns.jar -rs foobar _http._tcp local. 1234 path=index.html

List service types:

  java -jar lib/jmdns.jar -bt
  
To print debugging output specify -d as the first argument.  



** Sample Code for Service Registration

    import javax.jmdns.*;

    JmDNS jmdns = new JmDNS();
    jmdns.registerService(
    	new ServiceInfo("_http._tcp.local.", "foo._http._tcp.local.", 1234, 0, 0, "path=index.html")
    );


** Sample code for Serivice Discovery

    import javax.jmdns.*;

    static class SampleListener implements ServiceListener
    {
	public void addService(JmDNS jmdns, String type, String name)
	{
	    System.out.println("ADD: " + jmdns.getServiceInfo(type, name));
	}
	public void removeService(JmDNS jmdns, String type, String name)
	{
	    System.out.println("REMOVE: " + name);
	}
	public void resolveService(JmDNS jmdns, String type, String name, ServiceInfo info)
	{
	    System.out.println("RESOLVED: " + info);
	}
    }

    JmDNS jmdns = new JmDNS();
    jmdns.addServiceListener("_http._tcp.local.", new SampleListener());


** Changes since October 2003

- Renamed package com.strangeberry.rendezvous to javax.jmdns
- fixed unicast queries
- fixed property handling
- use the hostname instead of the service name is address resolution
- Added Apache License.
Something went wrong with that request. Please try again.