diff options
| author | Markus Alexander Kuppe | 2010-07-15 12:23:46 +0000 |
|---|---|---|
| committer | Markus Alexander Kuppe | 2010-07-15 12:23:46 +0000 |
| commit | 1476a25326195bddd89cbae2cc057a01699ef1d8 (patch) | |
| tree | 71271a5e25a7849c47e5f6adeba9bbcdd4e16b9b | |
| parent | 61979c00b92d40cb2b7506c83284e977e16834dc (diff) | |
| download | org.eclipse.ecf-1476a25326195bddd89cbae2cc057a01699ef1d8.tar.gz org.eclipse.ecf-1476a25326195bddd89cbae2cc057a01699ef1d8.tar.xz org.eclipse.ecf-1476a25326195bddd89cbae2cc057a01699ef1d8.zip | |
NEW - bug 319878: [Discovery] Add time to live (TTL) to IServiceInfo
https://bugs.eclipse.org/bugs/show_bug.cgi?id=319878
3 files changed, 5 insertions, 6 deletions
diff --git a/providers/bundles/org.eclipse.ecf.provider.dnssd/META-INF/MANIFEST.MF b/providers/bundles/org.eclipse.ecf.provider.dnssd/META-INF/MANIFEST.MF index e5acee706..f845a3629 100644 --- a/providers/bundles/org.eclipse.ecf.provider.dnssd/META-INF/MANIFEST.MF +++ b/providers/bundles/org.eclipse.ecf.provider.dnssd/META-INF/MANIFEST.MF @@ -13,7 +13,7 @@ Import-Package: org.eclipse.core.runtime;version="3.4.0", org.eclipse.ecf.core.provider, org.eclipse.ecf.core.security, org.eclipse.ecf.core.util;version="3.0.0", - org.eclipse.ecf.discovery;version="3.0.0", + org.eclipse.ecf.discovery;version="4.0.0", org.eclipse.ecf.discovery.identity;version="3.0.0", org.osgi.framework;version="1.5.0", org.osgi.service.cm;version="1.2.0";resolution:=optional, diff --git a/providers/bundles/org.eclipse.ecf.provider.dnssd/src/org/eclipse/ecf/provider/dnssd/DnsSdDiscoveryAdvertiser.java b/providers/bundles/org.eclipse.ecf.provider.dnssd/src/org/eclipse/ecf/provider/dnssd/DnsSdDiscoveryAdvertiser.java index 709f0531c..5f0c76277 100644 --- a/providers/bundles/org.eclipse.ecf.provider.dnssd/src/org/eclipse/ecf/provider/dnssd/DnsSdDiscoveryAdvertiser.java +++ b/providers/bundles/org.eclipse.ecf.provider.dnssd/src/org/eclipse/ecf/provider/dnssd/DnsSdDiscoveryAdvertiser.java @@ -57,8 +57,7 @@ public class DnsSdDiscoveryAdvertiser extends DnsSdDiscoveryContainerAdapter { Name name = Name.fromString("_" + serviceTypeID.getServices()[0] + "._" + serviceTypeID.getProtocols()[0], zone); - //TODO make TTL configurable per serviceinfo instance or via config admin - int ttl = 3600; + long ttl = serviceInfo.getTTL(); int priority = serviceInfo.getPriority(); int port = serviceInfo.getLocation().getPort(); String target = serviceInfo.getLocation().getHost(); @@ -109,8 +108,7 @@ public class DnsSdDiscoveryAdvertiser extends DnsSdDiscoveryContainerAdapter { Name name = Name.fromString("_" + serviceTypeID.getServices()[0] + "._" + serviceTypeID.getProtocols()[0], zone); - //TODO make TTL configurable per serviceinfo instance or via config admin - int ttl = 3600; + long ttl = serviceInfo.getTTL(); int priority = serviceInfo.getPriority(); int port = serviceInfo.getLocation().getPort(); String target = serviceInfo.getLocation().getHost(); diff --git a/providers/bundles/org.eclipse.ecf.provider.dnssd/src/org/eclipse/ecf/provider/dnssd/DnsSdDiscoveryLocator.java b/providers/bundles/org.eclipse.ecf.provider.dnssd/src/org/eclipse/ecf/provider/dnssd/DnsSdDiscoveryLocator.java index 901a9949f..b0c9f8fea 100644 --- a/providers/bundles/org.eclipse.ecf.provider.dnssd/src/org/eclipse/ecf/provider/dnssd/DnsSdDiscoveryLocator.java +++ b/providers/bundles/org.eclipse.ecf.provider.dnssd/src/org/eclipse/ecf/provider/dnssd/DnsSdDiscoveryLocator.java @@ -171,6 +171,7 @@ public class DnsSdDiscoveryLocator extends DnsSdDiscoveryContainerAdapter { List infos = new ArrayList(); for (Iterator iterator = srvQueryResult.iterator(); iterator.hasNext();) { SRVRecord srvRecord = (SRVRecord) iterator.next(); + long ttl = srvRecord.getTTL(); int priority = srvRecord.getPriority(); int weight = srvRecord.getWeight(); int port = srvRecord.getPort(); @@ -199,7 +200,7 @@ public class DnsSdDiscoveryLocator extends DnsSdDiscoveryContainerAdapter { String proto = props.getProperty(DNS_SD_PTCL) == null ? aServiceTypeID.getProtocols()[0] : props.getProperty(DNS_SD_PTCL); URI uri = URI.create(proto + "://" + host + ":" + port + (path == null ? "" : path)); - IServiceInfo info =new ServiceInfo(uri, host, aServiceTypeID, priority, weight, new ServiceProperties(props)); + IServiceInfo info =new ServiceInfo(uri, host, aServiceTypeID, priority, weight, new ServiceProperties(props), ttl); infos.add(info); } return infos; |
