FELIX-5177: use type-safe configuration dependency.

git-svn-id: https://svn.apache.org/repos/asf/felix/trunk@1728611 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/dependencymanager/org.apache.felix.dependencymanager.samples/src/org/apache/felix/dependencymanager/samples/dictionary/api/Activator.java b/dependencymanager/org.apache.felix.dependencymanager.samples/src/org/apache/felix/dependencymanager/samples/dictionary/api/Activator.java
index 011da46..c4cc264 100644
--- a/dependencymanager/org.apache.felix.dependencymanager.samples/src/org/apache/felix/dependencymanager/samples/dictionary/api/Activator.java
+++ b/dependencymanager/org.apache.felix.dependencymanager.samples/src/org/apache/felix/dependencymanager/samples/dictionary/api/Activator.java
@@ -41,7 +41,7 @@
         // Create the Dictionary Aspect
         dm.add(createAspectService(DictionaryService.class, "(lang=en)", 10)
             .setImplementation(DictionaryAspect.class)
-            .add(createConfigurationDependency().setPid(DictionaryAspectConfiguration.class.getName()))
+            .add(createConfigurationDependency().setPid(DictionaryAspectConfiguration.class.getName()).setCallback("updated", DictionaryConfiguration.class))
             .add(createServiceDependency().setService(LogService.class))); // NullObject
         
         // Create the SpellChecker component
diff --git a/dependencymanager/org.apache.felix.dependencymanager.samples/src/org/apache/felix/dependencymanager/samples/dictionary/api/DictionaryAspect.java b/dependencymanager/org.apache.felix.dependencymanager.samples/src/org/apache/felix/dependencymanager/samples/dictionary/api/DictionaryAspect.java
index 7ae8a76..3e491f3 100644
--- a/dependencymanager/org.apache.felix.dependencymanager.samples/src/org/apache/felix/dependencymanager/samples/dictionary/api/DictionaryAspect.java
+++ b/dependencymanager/org.apache.felix.dependencymanager.samples/src/org/apache/felix/dependencymanager/samples/dictionary/api/DictionaryAspect.java
@@ -11,13 +11,10 @@
  */
 package org.apache.felix.dependencymanager.samples.dictionary.api;
 
-import java.util.Dictionary;
 import java.util.concurrent.CopyOnWriteArrayList;
 
 import org.osgi.service.log.LogService;
 
-import aQute.bnd.annotation.metatype.Configurable;
-
 /**
  * This aspect applies to the English DictionaryService, and allows to decorate it with some
  * custom English words, which are configurable from WebConsole.
@@ -46,12 +43,10 @@
      * Defines a configuration dependency for retrieving our english custom words (by default,
      * our PID is our full class name).
      */
-    protected void updated(Dictionary<String, ?> config) {
+    protected void updated(DictionaryConfiguration config) {
         if (config != null) {
-            // We use the bnd "Configurable" helper in order to get an implementation for our DictionaryConfiguration interface.
-            DictionaryConfiguration cnf = Configurable.createConfigurable(DictionaryConfiguration.class, config);
             m_words.clear();
-            for (String word : cnf.words()) {
+            for (String word : config.words()) {
                 m_words.add(word);
             }
         }