
import com.apple.dnssd.RegisterListener;
import com.apple.dnssd.DNSSDRegistration;
import com.apple.dnssd.DNSSDService;
import com.apple.dnssd.DNSSD;
import com.apple.dnssd.DNSSDException;
import com.apple.dnssd.BrowseListener;

public class RegistrationMonitor implements RegisterListener, BrowseListener{
  
  public void serviceRegistered(DNSSDRegistration dnssdRegistration,
                                int i, String s, String s1, String s2) {
    System.out.println("Roster:");
    try{
      DNSSD.browse("_example-rolecall._tcp", this);
    } catch (DNSSDException e){
      System.err.println("couldn't browse");
    }
  }

  public void serviceFound(DNSSDService dnssdService, int i, int i1, String s, String s1, String s2) {
    System.out.println(s + " has arrived");
  }

  public void serviceLost(DNSSDService dnssdService, int i, int i1, String s, String s1, String s2) {
    System.out.println("bye-bye " + s);
  }


  public void operationFailed(DNSSDService dnssdService, int i) {
    System.err.println("Could not register service.");
  }

  
}
