Apache Celix  2.4.0
Apache Celix is a framework for C, C++14 and C++17 to develop dynamic modular software applications using component and in-process service-oriented programming.
celix_dm_info.h
Go to the documentation of this file.
1 /*
2  * Licensed to the Apache Software Foundation (ASF) under one
3  * or more contributor license agreements. See the NOTICE file
4  * distributed with this work for additional information
5  * regarding copyright ownership. The ASF licenses this file
6  * to you under the Apache License, Version 2.0 (the
7  * "License"); you may not use this file except in compliance
8  * with the License. You may obtain a copy of the License at
9  *
10  * http://www.apache.org/licenses/LICENSE-2.0
11  *
12  * Unless required by applicable law or agreed to in writing,
13  * software distributed under the License is distributed on an
14  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15  * KIND, either express or implied. See the License for the
16  * specific language governing permissions and limitations
17  * under the License.
18  */
19 
20 #ifndef CELIX_DM_INFO_H_
21 #define CELIX_DM_INFO_H_
22 
23 #include <stdbool.h>
24 
25 #include "celix_array_list.h"
26 #include "celix_properties.h"
27 
28 #ifdef __cplusplus
29 extern "C" {
30 #endif
31 
32 
34  char* name;
35  celix_properties_t *properties;
36 };
40 
42  char *serviceName;
43  char *filter;
44  char *versionRange;
45  bool available;
46  bool required;
47  size_t count;
48 };
52 
54  long bundleId;
56  char* id;
57  char* name;
58  bool active;
59  char* state;
62  celix_array_list_t *interfaces; // type dm_interface_info_t*
63  celix_array_list_t *dependency_list; // type dm_service_dependency_info_t*
64 };
68 
70  long bndId;
72  celix_array_list_t *components; // type dm_component_info_t*
73 };
77 
78 
79 #ifdef __cplusplus
80 }
81 #endif
82 
83 #endif //CELIX_DM_INFO_H_
celix_dm_interface_info_struct::properties
celix_properties_t * properties
Definition: celix_dm_info.h:35
celix_dm_component_info_struct::nrOfTimesResumed
size_t nrOfTimesResumed
Definition: celix_dm_info.h:61
celix_dm_component_info_struct::state
char * state
Definition: celix_dm_info.h:59
celix_dm_component_info_struct::id
char * id
Definition: celix_dm_info.h:56
celix_dm_service_dependency_info_struct
Definition: celix_dm_info.h:41
celix_dm_component_info_struct::dependency_list
celix_array_list_t * dependency_list
Definition: celix_dm_info.h:63
dm_service_dependency_info_pt
struct celix_dm_service_dependency_info_struct * dm_service_dependency_info_pt
Definition: celix_dm_info.h:49
celix_dm_interface_info_struct::name
char * name
Definition: celix_dm_info.h:34
celix_dm_component_info_struct::active
bool active
Definition: celix_dm_info.h:58
dm_dependency_manager_info_pt
struct celix_dm_dependency_manager_info_struct * dm_dependency_manager_info_pt
Definition: celix_dm_info.h:74
dm_interface_info_pt
struct celix_dm_interface_info_struct * dm_interface_info_pt
Definition: celix_dm_info.h:37
celix_dm_service_dependency_info_struct::serviceName
char * serviceName
Definition: celix_dm_info.h:42
celix_dm_component_info_struct::bundleId
long bundleId
Definition: celix_dm_info.h:54
celix_dm_service_dependency_info_struct::count
size_t count
Definition: celix_dm_info.h:47
celix_dm_dependency_manager_info_struct::components
celix_array_list_t * components
Definition: celix_dm_info.h:72
dm_component_info_pt
struct celix_dm_component_info_struct * dm_component_info_pt
Definition: celix_dm_info.h:65
celix_dm_component_info_struct::bundleSymbolicName
char * bundleSymbolicName
Definition: celix_dm_info.h:55
celix_dm_service_dependency_info_struct::required
bool required
Definition: celix_dm_info.h:46
celix_dm_component_info_struct::interfaces
celix_array_list_t * interfaces
Definition: celix_dm_info.h:62
celix_dm_service_dependency_info_struct::filter
char * filter
Definition: celix_dm_info.h:43
celix_dm_dependency_manager_info_struct
Definition: celix_dm_info.h:69
celix_dm_component_info_struct::nrOfTimesStarted
size_t nrOfTimesStarted
Definition: celix_dm_info.h:60
celix_dm_service_dependency_info_struct::available
bool available
Definition: celix_dm_info.h:45
celix_dm_component_info_struct
Definition: celix_dm_info.h:53
celix_dm_dependency_manager_info_struct::bndSymbolicName
char * bndSymbolicName
Definition: celix_dm_info.h:71
celix_dm_dependency_manager_info_struct::bndId
long bndId
Definition: celix_dm_info.h:70
celix_dm_component_info_struct::name
char * name
Definition: celix_dm_info.h:57
celix_dm_service_dependency_info_struct::versionRange
char * versionRange
Definition: celix_dm_info.h:44
celix_dm_interface_info_struct
Definition: celix_dm_info.h:33