Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarkus Alexander Kuppe2010-06-14 11:13:07 +0000
committerMarkus Alexander Kuppe2010-06-14 11:13:07 +0000
commitac57f2cfc63837ae5f7bdc420cb77cacbc1fffa4 (patch)
treea12c30dd2b979e2117849860bedeeeeb5c598441
parentb621f4bdff344211fcc728a3bfa65700bcc6c831 (diff)
downloadorg.eclipse.ecf-ac57f2cfc63837ae5f7bdc420cb77cacbc1fffa4.tar.gz
org.eclipse.ecf-ac57f2cfc63837ae5f7bdc420cb77cacbc1fffa4.tar.xz
org.eclipse.ecf-ac57f2cfc63837ae5f7bdc420cb77cacbc1fffa4.zip
WIP - bug 314998: [Discovery][DNS-SD] Make provider configurable with Configuration Admin https://bugs.eclipse.org/bugs/show_bug.cgi?id=314998
-rw-r--r--providers/bundles/org.eclipse.ecf.provider.dnssd/src/org/eclipse/ecf/provider/dnssd/Activator.java5
-rw-r--r--providers/bundles/org.eclipse.ecf.provider.dnssd/src/org/eclipse/ecf/provider/dnssd/DnsSdDisocoveryLocator.java10
-rw-r--r--providers/bundles/org.eclipse.ecf.provider.dnssd/src/org/eclipse/ecf/provider/dnssd/IDnsSdDiscoveryConstants.java24
3 files changed, 32 insertions, 7 deletions
diff --git a/providers/bundles/org.eclipse.ecf.provider.dnssd/src/org/eclipse/ecf/provider/dnssd/Activator.java b/providers/bundles/org.eclipse.ecf.provider.dnssd/src/org/eclipse/ecf/provider/dnssd/Activator.java
index 9542d18bf..d2698baa7 100644
--- a/providers/bundles/org.eclipse.ecf.provider.dnssd/src/org/eclipse/ecf/provider/dnssd/Activator.java
+++ b/providers/bundles/org.eclipse.ecf.provider.dnssd/src/org/eclipse/ecf/provider/dnssd/Activator.java
@@ -118,13 +118,12 @@ public class Activator implements BundleActivator, ManagedServiceFactory {
DnsSdDisocoveryLocator locator = new DnsSdDisocoveryLocator();
DnsSdServiceTypeID targetID = new DnsSdServiceTypeID();
try {
- //TODO use properties and define consts
- final String[] searchPaths = (String[]) properties.get("searchPath");
+ final String[] searchPaths = (String[]) properties.get(IDnsSdDiscoveryConstants.CA_SEARCH_PATH);
if(searchPaths != null) {
targetID.setSearchPath(searchPaths);
}
- final String resolver = (String) properties.get("resolver");
+ final String resolver = (String) properties.get(IDnsSdDiscoveryConstants.CA_RESOLVER);
if(resolver != null) {
locator.setResolver(resolver);
}
diff --git a/providers/bundles/org.eclipse.ecf.provider.dnssd/src/org/eclipse/ecf/provider/dnssd/DnsSdDisocoveryLocator.java b/providers/bundles/org.eclipse.ecf.provider.dnssd/src/org/eclipse/ecf/provider/dnssd/DnsSdDisocoveryLocator.java
index bb4a3e07c..0b7601b14 100644
--- a/providers/bundles/org.eclipse.ecf.provider.dnssd/src/org/eclipse/ecf/provider/dnssd/DnsSdDisocoveryLocator.java
+++ b/providers/bundles/org.eclipse.ecf.provider.dnssd/src/org/eclipse/ecf/provider/dnssd/DnsSdDisocoveryLocator.java
@@ -270,10 +270,12 @@ public class DnsSdDisocoveryLocator extends AbstractDiscoveryContainerAdapter {
}
// instantiate a default resolver
- try {
- resolver = new SimpleResolver();
- } catch (UnknownHostException e) {
- throw new ContainerConnectException(e);
+ if(resolver == null) {
+ try {
+ resolver = new SimpleResolver();
+ } catch (UnknownHostException e) {
+ throw new ContainerConnectException(e);
+ }
}
// read browsing domains for the given targetID/searchpath and merge with existing
diff --git a/providers/bundles/org.eclipse.ecf.provider.dnssd/src/org/eclipse/ecf/provider/dnssd/IDnsSdDiscoveryConstants.java b/providers/bundles/org.eclipse.ecf.provider.dnssd/src/org/eclipse/ecf/provider/dnssd/IDnsSdDiscoveryConstants.java
new file mode 100644
index 000000000..72d8d29d5
--- /dev/null
+++ b/providers/bundles/org.eclipse.ecf.provider.dnssd/src/org/eclipse/ecf/provider/dnssd/IDnsSdDiscoveryConstants.java
@@ -0,0 +1,24 @@
+/*******************************************************************************
+ * Copyright (c) 2010 Markus Alexander Kuppe.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Markus Alexander Kuppe (ecf-dev_eclipse.org <at> lemmster <dot> de) - initial API and implementation
+ ******************************************************************************/
+package org.eclipse.ecf.provider.dnssd;
+
+public interface IDnsSdDiscoveryConstants {
+
+ /**
+ * Config admin key to define the default search path
+ */
+ public final String CA_SEARCH_PATH = "searchPath";
+ /**
+ * Config admin key to define the default resolver
+ */
+ public final String CA_RESOLVER = "resolver";
+
+}

Back to the top