Class ServiceRegistry

  • All Implemented Interfaces:
    java.util.EventListener, javax.jmdns.ServiceListener

    public class ServiceRegistry
    extends java.lang.Object
    implements javax.jmdns.ServiceListener
    • Constructor Summary

      Constructors 
      Constructor Description
      ServiceRegistry​(java.net.Inet4Address address, java.lang.String hostname, java.lang.String serviceType, ConnectionHandler connHandler)
      creates a JmDNS instance and a service listener
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void changeService​(javax.jmdns.ServiceInfo oldInfo, javax.jmdns.ServiceInfo newInfo)  
      static javax.jmdns.ServiceInfo createServiceInfo​(java.lang.String serviceName, java.lang.String serviceInstance, int port, TxtRecord txt)
      creates service info, typically used to register a service
      javax.jmdns.ServiceInfo[] listServices()
      lists all identified services
      void registerService​(javax.jmdns.ServiceInfo serviceInfo)
      register a service in own JmDNS instance, other active JmDNS listening for the same service type will identify this service once registered
      void serviceAdded​(javax.jmdns.ServiceEvent event)  
      void serviceRemoved​(javax.jmdns.ServiceEvent event)  
      void serviceResolved​(javax.jmdns.ServiceEvent event)  
      void shutdown()
      unregisters all services in own JmDNS instance, removed service listener and closes JmDNS instance
      void unregisterService​(javax.jmdns.ServiceInfo serviceInfo)
      unregister a service in own JmDNS instance
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • ServiceRegistry

        public ServiceRegistry​(java.net.Inet4Address address,
                               java.lang.String hostname,
                               java.lang.String serviceType,
                               ConnectionHandler connHandler)
        creates a JmDNS instance and a service listener
        Parameters:
        address - the address to bind JmDNS instance to
        hostname - mDNS name for the service host
        serviceType - the service type to listen for
    • Method Detail

      • createServiceInfo

        public static javax.jmdns.ServiceInfo createServiceInfo​(java.lang.String serviceName,
                                                                java.lang.String serviceInstance,
                                                                int port,
                                                                TxtRecord txt)
        creates service info, typically used to register a service
        Parameters:
        serviceName - service name or service type, example: "_ship._tcp.local."
        serviceInstance - service instance, example: "Dishwasher ExampleCompany EEB01M3EU"
        port - the port the service is bound to
        txt - a description for the service
        Returns:
        ServiceInfo object which holds the compressed information passed in parameters
      • listServices

        public javax.jmdns.ServiceInfo[] listServices()
        lists all identified services
        Returns:
        identified services
      • registerService

        public void registerService​(javax.jmdns.ServiceInfo serviceInfo)
                             throws java.io.IOException
        register a service in own JmDNS instance, other active JmDNS listening for the same service type will identify this service once registered
        Parameters:
        serviceInfo - the ServiceInfo object to register
        Throws:
        java.io.IOException
      • changeService

        public void changeService​(javax.jmdns.ServiceInfo oldInfo,
                                  javax.jmdns.ServiceInfo newInfo)
                           throws java.io.IOException
        Throws:
        java.io.IOException
      • unregisterService

        public void unregisterService​(javax.jmdns.ServiceInfo serviceInfo)
        unregister a service in own JmDNS instance
        Parameters:
        serviceInfo - the ServiceInfo object to unregister
      • shutdown

        public void shutdown()
                      throws java.io.IOException
        unregisters all services in own JmDNS instance, removed service listener and closes JmDNS instance
        Throws:
        java.io.IOException
      • serviceAdded

        public void serviceAdded​(javax.jmdns.ServiceEvent event)
        Specified by:
        serviceAdded in interface javax.jmdns.ServiceListener
      • serviceRemoved

        public void serviceRemoved​(javax.jmdns.ServiceEvent event)
        Specified by:
        serviceRemoved in interface javax.jmdns.ServiceListener
      • serviceResolved

        public void serviceResolved​(javax.jmdns.ServiceEvent event)
        Specified by:
        serviceResolved in interface javax.jmdns.ServiceListener