public class JmmDNSImpl extends java.lang.Object implements JmmDNS, NetworkTopologyListener, ServiceInfoImpl.Delegate
JmmDNS.Factory| Constructor and Description |
|---|
JmmDNSImpl() |
| Modifier and Type | Method and Description |
|---|---|
void |
addNetworkTopologyListener(NetworkTopologyListener listener)
Listen to network changes.
|
void |
addServiceListener(java.lang.String type,
ServiceListener listener)
Listen for services of a given type.
|
void |
addServiceTypeListener(ServiceTypeListener listener)
Listen for service types.
|
void |
close() |
java.lang.String[] |
getHostNames()
Return the list HostName associated with this JmmDNS instance.
|
java.net.InetAddress[] |
getInterfaces()
Return the list of addresses of the interface to which this instance of JmmDNS is bound.
|
java.lang.String[] |
getNames()
Return the names of the JmDNS instances.
|
ServiceInfo[] |
getServiceInfos(java.lang.String type,
java.lang.String name)
Get service information.
|
ServiceInfo[] |
getServiceInfos(java.lang.String type,
java.lang.String name,
boolean persistent)
Get service information.
|
ServiceInfo[] |
getServiceInfos(java.lang.String type,
java.lang.String name,
boolean persistent,
long timeout)
Get service information.
|
ServiceInfo[] |
getServiceInfos(java.lang.String type,
java.lang.String name,
long timeout)
Get service information.
|
void |
inetAddressAdded(NetworkTopologyEvent event)
A network address has been added.
|
void |
inetAddressRemoved(NetworkTopologyEvent event)
A network address has been removed.
|
ServiceInfo[] |
list(java.lang.String type)
Returns a list of service infos of the specified type.
|
ServiceInfo[] |
list(java.lang.String type,
long timeout)
Returns a list of service infos of the specified type.
|
java.util.Map<java.lang.String,ServiceInfo[]> |
listBySubtype(java.lang.String type)
Returns a list of service infos of the specified type sorted by subtype.
|
java.util.Map<java.lang.String,ServiceInfo[]> |
listBySubtype(java.lang.String type,
long timeout)
Returns a list of service infos of the specified type sorted by subtype.
|
NetworkTopologyListener[] |
networkListeners()
Returns list of network change listeners
|
void |
registerService(ServiceInfo info)
Register a service.
|
void |
registerServiceType(java.lang.String type)
Register a service type.
|
void |
removeNetworkTopologyListener(NetworkTopologyListener listener)
Remove listener for network changes.
|
void |
removeServiceListener(java.lang.String type,
ServiceListener listener)
Remove listener for services of a given type.
|
void |
removeServiceTypeListener(ServiceTypeListener listener)
Remove listener for service types.
|
void |
requestServiceInfo(java.lang.String type,
java.lang.String name)
Request service information.
|
void |
requestServiceInfo(java.lang.String type,
java.lang.String name,
boolean persistent)
Request service information.
|
void |
requestServiceInfo(java.lang.String type,
java.lang.String name,
boolean persistent,
long timeout)
Request service information.
|
void |
requestServiceInfo(java.lang.String type,
java.lang.String name,
long timeout)
Request service information.
|
void |
textValueUpdated(ServiceInfo target,
byte[] value) |
void |
unregisterAllServices()
Unregister all services.
|
void |
unregisterService(ServiceInfo info)
Unregister a service.
|
public void close()
throws java.io.IOException
close in interface java.io.Closeableclose in interface java.lang.AutoCloseablejava.io.IOExceptionpublic java.lang.String[] getNames()
JmmDNSgetNames in interface JmmDNSJmDNS.getName()public java.lang.String[] getHostNames()
JmmDNSgetHostNames in interface JmmDNSJmDNS.getHostName()public java.net.InetAddress[] getInterfaces()
throws java.io.IOException
JmmDNSgetInterfaces in interface JmmDNSjava.io.IOExceptionJmDNS.getInterface()public ServiceInfo[] getServiceInfos(java.lang.String type, java.lang.String name)
JmmDNSgetServiceInfos in interface JmmDNStype - fully qualified service type, such as _http._tcp.local. .name - unqualified service name, such as foobar .JmDNS.getServiceInfo(java.lang.String, java.lang.String)public ServiceInfo[] getServiceInfos(java.lang.String type, java.lang.String name, long timeout)
JmmDNSgetServiceInfos in interface JmmDNStype - full qualified service type, such as _http._tcp.local. .name - unqualified service name, such as foobar .timeout - timeout in milliseconds. Typical timeout should be 5s.JmDNS.getServiceInfo(java.lang.String, java.lang.String, long)public ServiceInfo[] getServiceInfos(java.lang.String type, java.lang.String name, boolean persistent)
JmmDNSgetServiceInfos in interface JmmDNStype - full qualified service type, such as _http._tcp.local. .name - unqualified service name, such as foobar .persistent - if true ServiceListener.resolveService will be called whenever new new information is received.JmDNS.getServiceInfo(java.lang.String, java.lang.String, boolean)public ServiceInfo[] getServiceInfos(java.lang.String type, java.lang.String name, boolean persistent, long timeout)
JmmDNSgetServiceInfos in interface JmmDNStype - full qualified service type, such as _http._tcp.local. .name - unqualified service name, such as foobar .persistent - if true ServiceListener.resolveService will be called whenever new new information is received.timeout - timeout in milliseconds. Typical timeout should be 5s.JmDNS.getServiceInfo(java.lang.String, java.lang.String, boolean, long)public void requestServiceInfo(java.lang.String type,
java.lang.String name)
JmmDNSrequestServiceInfo in interface JmmDNStype - full qualified service type, such as _http._tcp.local. .name - unqualified service name, such as foobar .JmDNS.requestServiceInfo(java.lang.String, java.lang.String)public void requestServiceInfo(java.lang.String type,
java.lang.String name,
boolean persistent)
JmmDNSrequestServiceInfo in interface JmmDNStype - full qualified service type, such as _http._tcp.local. .name - unqualified service name, such as foobar .persistent - if true ServiceListener.resolveService will be called whenever new new information is received.JmDNS.requestServiceInfo(java.lang.String, java.lang.String, boolean)public void requestServiceInfo(java.lang.String type,
java.lang.String name,
long timeout)
JmmDNSrequestServiceInfo in interface JmmDNStype - full qualified service type, such as _http._tcp.local. .name - unqualified service name, such as foobar .timeout - timeout in millisecondsJmDNS.requestServiceInfo(java.lang.String, java.lang.String, long)public void requestServiceInfo(java.lang.String type,
java.lang.String name,
boolean persistent,
long timeout)
JmmDNSrequestServiceInfo in interface JmmDNStype - full qualified service type, such as _http._tcp.local. .name - unqualified service name, such as foobar .persistent - if true ServiceListener.resolveService will be called whenever new new information is received.timeout - timeout in millisecondsJmDNS.requestServiceInfo(java.lang.String, java.lang.String, boolean, long)public void addServiceTypeListener(ServiceTypeListener listener) throws java.io.IOException
JmmDNSaddServiceTypeListener in interface JmmDNSlistener - listener for service typesjava.io.IOExceptionJmDNS.addServiceTypeListener(javax.jmdns.ServiceTypeListener)public void removeServiceTypeListener(ServiceTypeListener listener)
JmmDNSremoveServiceTypeListener in interface JmmDNSlistener - listener for service typesJmDNS.removeServiceTypeListener(javax.jmdns.ServiceTypeListener)public void addServiceListener(java.lang.String type,
ServiceListener listener)
JmmDNS_http._tcp.local..addServiceListener in interface JmmDNStype - full qualified service type, such as _http._tcp.local..listener - listener for service updatesJmDNS.addServiceListener(java.lang.String, javax.jmdns.ServiceListener)public void removeServiceListener(java.lang.String type,
ServiceListener listener)
JmmDNSremoveServiceListener in interface JmmDNStype - full qualified service type, such as _http._tcp.local..listener - listener for service updatesJmDNS.removeServiceListener(java.lang.String, javax.jmdns.ServiceListener)public void textValueUpdated(ServiceInfo target, byte[] value)
textValueUpdated in interface ServiceInfoImpl.Delegatepublic void registerService(ServiceInfo info) throws java.io.IOException
JmmDNSregisterService in interface JmmDNSinfo - service info to registerjava.io.IOExceptionJmDNS.registerService(javax.jmdns.ServiceInfo)public void unregisterService(ServiceInfo info)
JmmDNSunregisterService in interface JmmDNSinfo - service info to removeJmDNS.unregisterService(javax.jmdns.ServiceInfo)public void unregisterAllServices()
JmmDNSunregisterAllServices in interface JmmDNSJmDNS.unregisterAllServices()public void registerServiceType(java.lang.String type)
JmmDNSregisterServiceType in interface JmmDNStype - full qualified service type, such as _http._tcp.local..JmDNS.registerServiceType(java.lang.String)public ServiceInfo[] list(java.lang.String type)
JmmDNSlist in interface JmmDNStype - Service type name, such as _http._tcp.local..JmDNS.list(java.lang.String)public ServiceInfo[] list(java.lang.String type, long timeout)
JmmDNSlist in interface JmmDNStype - Service type name, such as _http._tcp.local..timeout - timeout in milliseconds. Typical timeout should be 6s.JmDNS.list(java.lang.String, long)public java.util.Map<java.lang.String,ServiceInfo[]> listBySubtype(java.lang.String type)
JmmDNSlistBySubtype in interface JmmDNStype - Service type name, such as _http._tcp.local..JmDNS.listBySubtype(java.lang.String)public java.util.Map<java.lang.String,ServiceInfo[]> listBySubtype(java.lang.String type, long timeout)
JmmDNSlistBySubtype in interface JmmDNStype - Service type name, such as _http._tcp.local..timeout - timeout in milliseconds. Typical timeout should be 6s.JmDNS.listBySubtype(java.lang.String, long)public void addNetworkTopologyListener(NetworkTopologyListener listener)
JmmDNSaddNetworkTopologyListener in interface JmmDNSlistener - listener for network changespublic void removeNetworkTopologyListener(NetworkTopologyListener listener)
JmmDNSremoveNetworkTopologyListener in interface JmmDNSlistener - listener for network changespublic NetworkTopologyListener[] networkListeners()
JmmDNSnetworkListeners in interface JmmDNSpublic void inetAddressAdded(NetworkTopologyEvent event)
NetworkTopologyListenerinetAddressAdded in interface NetworkTopologyListenerevent - The NetworkTopologyEvent providing the name and fully qualified type of the service.public void inetAddressRemoved(NetworkTopologyEvent event)
NetworkTopologyListenerinetAddressRemoved in interface NetworkTopologyListenerevent - The NetworkTopologyEvent providing the name and fully qualified type of the service.