You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@celix.apache.org by bp...@apache.org on 2014/12/17 14:47:18 UTC

svn commit: r1646237 - in /celix/trunk/dependency_manager_2: CMakeLists.txt private/src/dm_component_impl.c public/include/dm_component.h public/include/dm_dependency_manager.h

Author: bpetri
Date: Wed Dec 17 13:47:18 2014
New Revision: 1646237

URL: http://svn.apache.org/r1646237
Log:
Added basic implementation for dm_activator_base and dm_dependency_manager

Modified:
    celix/trunk/dependency_manager_2/CMakeLists.txt
    celix/trunk/dependency_manager_2/private/src/dm_component_impl.c
    celix/trunk/dependency_manager_2/public/include/dm_component.h
    celix/trunk/dependency_manager_2/public/include/dm_dependency_manager.h

Modified: celix/trunk/dependency_manager_2/CMakeLists.txt
URL: http://svn.apache.org/viewvc/celix/trunk/dependency_manager_2/CMakeLists.txt?rev=1646237&r1=1646236&r2=1646237&view=diff
==============================================================================
--- celix/trunk/dependency_manager_2/CMakeLists.txt (original)
+++ celix/trunk/dependency_manager_2/CMakeLists.txt Wed Dec 17 13:47:18 2014
@@ -36,7 +36,7 @@ if (DEPENDENCY_MANAGER2)
     )
     
     add_library(dependency_manager2 STATIC 
-    	private/src/dm_component_impl)
+    	private/src/dm_activator_base private/src/dm_component_impl private/src/dm_dependency_manager_impl)
    	include_directories("public/include")
    	include_directories("private/include")
     include_directories("${PROJECT_SOURCE_DIR}/utils/public/include")

Modified: celix/trunk/dependency_manager_2/private/src/dm_component_impl.c
URL: http://svn.apache.org/viewvc/celix/trunk/dependency_manager_2/private/src/dm_component_impl.c?rev=1646237&r1=1646236&r2=1646237&view=diff
==============================================================================
--- celix/trunk/dependency_manager_2/private/src/dm_component_impl.c (original)
+++ celix/trunk/dependency_manager_2/private/src/dm_component_impl.c Wed Dec 17 13:47:18 2014
@@ -65,8 +65,8 @@ static celix_status_t component_handleCh
 static celix_status_t component_startDependencies(dm_component_pt component, array_list_pt dependencies);
 
 static celix_status_t component_addTask(dm_component_pt component, array_list_pt dependencies);
-static celix_status_t component_startTask(dm_component_pt component, dm_service_dependency_pt dependency);
-static celix_status_t component_stopTask(dm_component_pt component, dm_service_dependency_pt dependency);
+static celix_status_t component_startTask(dm_component_pt component, void* data);
+static celix_status_t component_stopTask(dm_component_pt component, void* data);
 static celix_status_t component_removeTask(dm_component_pt component, dm_service_dependency_pt dependency);
 
 celix_status_t component_create(bundle_context_pt context, dm_dependency_manager_pt manager, dm_component_pt *component) {
@@ -171,15 +171,15 @@ celix_status_t component_removeTask(dm_c
     return status;
 }
 
-celix_status_t component_start(dm_component_pt component, dm_service_dependency_pt dependency) {
+celix_status_t component_start(dm_component_pt component) {
     celix_status_t status = CELIX_SUCCESS;
 
-    executor_executeTask(component->executor, component, component_startTask, dependency);
+    executor_executeTask(component->executor, component, component_startTask, NULL);
 
     return status;
 }
 
-celix_status_t component_startTask(dm_component_pt component, dm_service_dependency_pt dependency) {
+celix_status_t component_startTask(dm_component_pt component, void* data) {
     celix_status_t status = CELIX_SUCCESS;
 
     component->isStarted = true;
@@ -188,15 +188,15 @@ celix_status_t component_startTask(dm_co
     return status;
 }
 
-celix_status_t component_stop(dm_component_pt component, dm_service_dependency_pt dependency) {
+celix_status_t component_stop(dm_component_pt component) {
     celix_status_t status = CELIX_SUCCESS;
 
-    executor_executeTask(component->executor, component, component_stopTask, dependency);
+    executor_executeTask(component->executor, component, component_stopTask, NULL);
 
     return status;
 }
 
-celix_status_t component_stopTask(dm_component_pt component, dm_service_dependency_pt dependency) {
+celix_status_t component_stopTask(dm_component_pt component, void* data) {
     celix_status_t status = CELIX_SUCCESS;
 
     component->isStarted = false;

Modified: celix/trunk/dependency_manager_2/public/include/dm_component.h
URL: http://svn.apache.org/viewvc/celix/trunk/dependency_manager_2/public/include/dm_component.h?rev=1646237&r1=1646236&r2=1646237&view=diff
==============================================================================
--- celix/trunk/dependency_manager_2/public/include/dm_component.h (original)
+++ celix/trunk/dependency_manager_2/public/include/dm_component.h Wed Dec 17 13:47:18 2014
@@ -30,5 +30,7 @@
 typedef struct dm_component *dm_component_pt;
 
 
+celix_status_t component_start(dm_component_pt component);
+celix_status_t component_stop(dm_component_pt component);
 
 #endif /* COMPONENT_H_ */

Modified: celix/trunk/dependency_manager_2/public/include/dm_dependency_manager.h
URL: http://svn.apache.org/viewvc/celix/trunk/dependency_manager_2/public/include/dm_dependency_manager.h?rev=1646237&r1=1646236&r2=1646237&view=diff
==============================================================================
--- celix/trunk/dependency_manager_2/public/include/dm_dependency_manager.h (original)
+++ celix/trunk/dependency_manager_2/public/include/dm_dependency_manager.h Wed Dec 17 13:47:18 2014
@@ -27,8 +27,18 @@
 #ifndef DM_DEPENDENCY_MANAGER_H_
 #define DM_DEPENDENCY_MANAGER_H_
 
+#include "bundle_context.h"
+#include "celix_errno.h"
+#include "array_list.h"
+#include "dm_component.h"
+
 typedef struct dm_dependency_manager *dm_dependency_manager_pt;
 
+celix_status_t dependencyManager_create(bundle_context_pt context, dm_dependency_manager_pt *manager);
+celix_status_t dependencyManager_destroy(dm_dependency_manager_pt *manager);
 
+celix_status_t dependencyManager_add(dm_dependency_manager_pt manager, dm_component_pt component);
+celix_status_t dependencyManager_remove(dm_dependency_manager_pt manager, dm_component_pt component);
+celix_status_t dependencyManager_getComponents(dm_dependency_manager_pt manager, array_list_pt* components);
 
 #endif /* DM_DEPENDENCY_MANAGER_H_ */