fixed javadoc. Added Aspect support

git-svn-id: https://svn.apache.org/repos/asf/felix/trunk@907745 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/dependencymanager/runtime/src/main/java/org/apache/felix/dm/runtime/ComponentManager.java b/dependencymanager/runtime/src/main/java/org/apache/felix/dm/runtime/ComponentManager.java
index 5c0ab85..339d31a 100644
--- a/dependencymanager/runtime/src/main/java/org/apache/felix/dm/runtime/ComponentManager.java
+++ b/dependencymanager/runtime/src/main/java/org/apache/felix/dm/runtime/ComponentManager.java
@@ -41,7 +41,7 @@
 
 /**
  * This class parses service descriptors generated by the annotation bnd processor.
- * The descriptors are located under OSGI-INF/ directory. Such files are actually 
+ * The descriptors are located under OSGI-INF/dependencymanager directory. Such files are actually 
  * referenced by a specific "DependendencyManager-Component" manifest header.
  */
 public class ComponentManager implements SynchronousBundleListener
@@ -151,6 +151,10 @@
                         service = createService(b, dm, parser);
                         break;
 
+                    case AspectService:
+                        service = createAspectService(b, dm, parser);
+                        break;
+                        
                     case ServiceDependency:
                         checkServiceParsed(service);
                         service.add(createServiceDependency(b, dm, parser, false));
@@ -372,4 +376,22 @@
         cd.setCallback(callback);
         return cd;
     }
+
+    /**
+     * Creates an Aspect Service.
+     * @param b
+     * @param dm
+     * @param parser
+     * @return
+     */
+    private Service createAspectService(Bundle b, DependencyManager dm, DescriptorParser parser)
+        throws ClassNotFoundException
+    {
+        Class<?> serviceInterface = b.loadClass(parser.getString(DescriptorParam.service));
+        String serviceFilter = parser.getString(DescriptorParam.filter, null);
+        Class<?> aspectImplementation = b.loadClass(parser.getString(DescriptorParam.impl));
+        Dictionary<String, String> aspectProperties = parser.getDictionary(DescriptorParam.properties, null);
+        Service service = dm.createAspectService(serviceInterface, serviceFilter, aspectImplementation, aspectProperties);
+        return service;
+    }
 }