public boolean equals(Object obj) { return (obj instanceof ServiceInfo) && getQualifiedName().equals(((ServiceInfo) obj).getQualifiedName()); }
public int hashCode() { return getQualifiedName().hashCode(); }
public String toString() { StringBuffer buf = new StringBuffer(); buf.append("service["); buf.append(getQualifiedName()); buf.append(','); buf.append(getAddress()); buf.append(':'); buf.append(port); buf.append(','); buf.append(getNiceTextString()); buf.append(']'); return buf.toString(); } }
@Override public void unregisterService(ServiceInfo info) { synchronized (_services) { for (JmDNS mDNS : _knownMDNS.values()) { mDNS.unregisterService(info); } ((ServiceInfoImpl) info).setDelegate(null); _services.remove(info.getQualifiedName()); } }
@Override public void unregisterService(ServiceInfo info) { synchronized (_services) { for (JmDNS mDNS : _knownMDNS.values()) { mDNS.unregisterService(info); } ((ServiceInfoImpl) info).setDelegate(null); _services.remove(info.getQualifiedName()); } }
@Override public void textValueUpdated(ServiceInfo target, byte[] value) { synchronized (_services) { for (JmDNS mDNS : _knownMDNS.values()) { ServiceInfo info = ((JmDNSImpl) mDNS).getServices().get(target.getQualifiedName()); if (info != null) { info.setText(value); } else { logger.warning("We have a mDNS that does not know about the service info being updated."); } } } }
@Override public void textValueUpdated(ServiceInfo target, byte[] value) { synchronized (_services) { for (JmDNS mDNS : _knownMDNS.values()) { ServiceInfo info = ((JmDNSImpl) mDNS).getServices().get(target.getQualifiedName()); if (info != null) { info.setText(value); } else { logger.warning("We have a mDNS that does not know about the service info being updated."); } } } }
@Override public void unregisterService(ServiceInfo info) { synchronized (_services) { for (JmDNS mDNS : _knownMDNS.values()) { mDNS.unregisterService(info); } ((ServiceInfoImpl) info).setDelegate(null); _services.remove(info.getQualifiedName()); } }
@Override public void textValueUpdated(ServiceInfo target, byte[] value) { synchronized (_services) { for (JmDNS mDNS : _knownMDNS.values()) { ServiceInfo info = ((JmDNSImpl) mDNS).getServices().get(target.getQualifiedName()); if (info != null) { info.setText(value); } else { logger.warning("We have a mDNS that does not know about the service info being updated."); } } } }
public Canceler(ServiceInfo info, Object lock) { this.infos = new ServiceInfo[]{info}; this.lock = lock; addListener(info, new DNSQuestion(info.getQualifiedName(), DNSConstants.TYPE_ANY, DNSConstants.CLASS_IN)); }
@Override public void registerService(ServiceInfo info) throws IOException { // This is really complex. We need to clone the service info for each DNS but then we loose the ability to update it. synchronized (_services) { for (JmDNS mDNS : _knownMDNS.values()) { mDNS.registerService(info.clone()); } ((ServiceInfoImpl) info).setDelegate(this); _services.put(info.getQualifiedName(), info); } }
@Override public void registerService(ServiceInfo info) throws IOException { // This is really complex. We need to clone the service info for each DNS but then we loose the ability to update it. synchronized (_services) { for (JmDNS mDNS : _knownMDNS.values()) { mDNS.registerService(info.clone()); } ((ServiceInfoImpl) info).setDelegate(this); _services.put(info.getQualifiedName(), info); } }
public ServiceInfoResolver(ServiceInfo info) { this.info = info; info.dns = JmDNS.this; addListener(info, new DNSQuestion(info.getQualifiedName(), DNSConstants.TYPE_ANY, DNSConstants.CLASS_IN)); }
@Override public void registerService(ServiceInfo info) throws IOException { // This is really complex. We need to clone the service info for each DNS but then we loose the ability to update it. synchronized (_services) { for (JmDNS mDNS : _knownMDNS.values()) { mDNS.registerService(info.clone()); } ((ServiceInfoImpl) info).setDelegate(this); _services.put(info.getQualifiedName(), info); } }
@Override public void unregisterService(ServiceInfo info) { // We need to get the list out of the synchronized block to prevent dead locks final JmDNS[] dnsArray = this.getDNS(); synchronized (_services) { _services.remove(info.getQualifiedName()); for (JmDNS mDNS : dnsArray) { mDNS.unregisterService(info); } ((ServiceInfoImpl) info).setDelegate(null); } }
@Override protected DNSOutgoing addAnswers(DNSOutgoing out) throws IOException { DNSOutgoing newOut = out; long now = System.currentTimeMillis(); for (ServiceInfo info : this.getDns().getServices().values()) { newOut = this.addAnswer(newOut, new DNSRecord.Pointer(info.getType(), DNSRecordClass.CLASS_IN, DNSRecordClass.NOT_UNIQUE, DNSConstants.DNS_TTL, info.getQualifiedName()), now); // newOut = this.addAnswer(newOut, new DNSRecord.Service(info.getQualifiedName(), DNSRecordClass.CLASS_IN, DNSRecordClass.NOT_UNIQUE, DNSConstants.DNS_TTL, info.getPriority(), info.getWeight(), info.getPort(), // this.getDns().getLocalHost().getName()), now); } return newOut; }
@Override protected DNSOutgoing addAnswers(DNSOutgoing out) throws IOException { DNSOutgoing newOut = out; long now = System.currentTimeMillis(); for (ServiceInfo info : this.getDns().getServices().values()) { newOut = this.addAnswer(newOut, new DNSRecord.Pointer(info.getType(), DNSRecordClass.CLASS_IN, DNSRecordClass.NOT_UNIQUE, DNSConstants.DNS_TTL, info.getQualifiedName()), now); // newOut = this.addAnswer(newOut, new DNSRecord.Service(info.getQualifiedName(), DNSRecordClass.CLASS_IN, DNSRecordClass.NOT_UNIQUE, DNSConstants.DNS_TTL, info.getPriority(), info.getWeight(), info.getPort(), // this.getDns().getLocalHost().getName()), now); } return newOut; }
@Override protected DNSOutgoing addAnswers(DNSOutgoing out) throws IOException { DNSOutgoing newOut = out; long now = System.currentTimeMillis(); for (ServiceInfo info : this.getDns().getServices().values()) { newOut = this.addAnswer(newOut, new DNSRecord.Pointer(info.getType(), DNSRecordClass.CLASS_IN, DNSRecordClass.NOT_UNIQUE, DNSConstants.DNS_TTL, info.getQualifiedName()), now); // newOut = this.addAnswer(newOut, new DNSRecord.Service(info.getQualifiedName(), DNSRecordClass.CLASS_IN, DNSRecordClass.NOT_UNIQUE, DNSConstants.DNS_TTL, info.getPriority(), info.getWeight(), info.getPort(), // this.getDns().getLocalHost().getName()), now); } return newOut; }
@Override protected DNSOutgoing addAnswers(DNSOutgoing out) throws IOException { DNSOutgoing newOut = out; long now = System.currentTimeMillis(); for (ServiceInfo info : this.getDns().getServices().values()) { newOut = this.addAnswer(newOut, new DNSRecord.Pointer(info.getType(), DNSRecordClass.CLASS_IN, DNSRecordClass.NOT_UNIQUE, DNSConstants.DNS_TTL, info.getQualifiedName()), now); // newOut = this.addAnswer(newOut, new DNSRecord.Service(info.getQualifiedName(), DNSRecordClass.CLASS_IN, DNSRecordClass.NOT_UNIQUE, DNSConstants.DNS_TTL, info.getPriority(), info.getWeight(), info.getPort(), // this.getDns().getLocalHost().getName()), now); } return newOut; }
@Override public void registerService(ServiceInfo info) throws IOException { // We need to get the list out of the synchronized block to prevent dead locks final JmDNS[] dnsArray = this.getDNS(); // This is really complex. We need to clone the service info for each DNS but then we loose the ability to update it. synchronized (_services) { for (JmDNS mDNS : dnsArray) { mDNS.registerService(info.clone()); } ((ServiceInfoImpl) info).setDelegate(this); _services.put(info.getQualifiedName(), info); } }