Apache Celix  2.3.0
An implementation of the OSGi specification adapted to C and C++
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 
24 
25 #include <stdbool.h>
26 #include "celix_array_list.h"
27 #include "celix_properties.h"
28 
29 #ifdef __cplusplus
30 extern "C" {
31 #endif
32 
33 
35  char* name;
36  celix_properties_t *properties;
37 };
41 
43  char *serviceName;
44  char *filter;
45  char *versionRange;
46  bool available;
47  bool required;
48  size_t count;
49 };
53 
55  long bundleId;
57  char* id;
58  char* name;
59  bool active;
60  char* state;
63  celix_array_list_t *interfaces; // type dm_interface_info_t*
64  celix_array_list_t *dependency_list; // type dm_service_dependency_info_t*
65 };
69 
71  long bndId;
73  celix_array_list_t *components; // type dm_component_info_t*
74 };
78 
79 
80 #ifdef __cplusplus
81 }
82 #endif
83 
84 #endif //CELIX_DM_INFO_H_
celix_dm_interface_info_struct::properties
celix_properties_t * properties
Definition: celix_dm_info.h:36
celix_dm_component_info_struct::nrOfTimesResumed
size_t nrOfTimesResumed
Definition: celix_dm_info.h:62
celix_dm_component_info_struct::state
char * state
Definition: celix_dm_info.h:60
celix_dm_component_info_struct::id
char * id
Definition: celix_dm_info.h:57
celix_dm_service_dependency_info_struct
Definition: celix_dm_info.h:42
celix_dm_component_info_struct::dependency_list
celix_array_list_t * dependency_list
Definition: celix_dm_info.h:64
dm_service_dependency_info_pt
struct celix_dm_service_dependency_info_struct * dm_service_dependency_info_pt
Definition: celix_dm_info.h:50
celix_dm_interface_info_struct::name
char * name
Definition: celix_dm_info.h:35
celix_dm_component_info_struct::active
bool active
Definition: celix_dm_info.h:59
dm_dependency_manager_info_pt
struct celix_dm_dependency_manager_info_struct * dm_dependency_manager_info_pt
Definition: celix_dm_info.h:75
dm_interface_info_pt
struct celix_dm_interface_info_struct * dm_interface_info_pt
Definition: celix_dm_info.h:38
celix_dm_service_dependency_info_struct::serviceName
char * serviceName
Definition: celix_dm_info.h:43
celix_dm_component_info_struct::bundleId
long bundleId
Definition: celix_dm_info.h:55
celix_dm_service_dependency_info_struct::count
size_t count
Definition: celix_dm_info.h:48
celix_dm_dependency_manager_info_struct::components
celix_array_list_t * components
Definition: celix_dm_info.h:73
dm_component_info_pt
struct celix_dm_component_info_struct * dm_component_info_pt
Definition: celix_dm_info.h:66
celix_dm_component_info_struct::bundleSymbolicName
char * bundleSymbolicName
Definition: celix_dm_info.h:56
celix_dm_service_dependency_info_struct::required
bool required
Definition: celix_dm_info.h:47
celix_dm_component_info_struct::interfaces
celix_array_list_t * interfaces
Definition: celix_dm_info.h:63
celix_dm_service_dependency_info_struct::filter
char * filter
Definition: celix_dm_info.h:44
celix_dm_dependency_manager_info_struct
Definition: celix_dm_info.h:70
celix_dm_component_info_struct::nrOfTimesStarted
size_t nrOfTimesStarted
Definition: celix_dm_info.h:61
celix_dm_service_dependency_info_struct::available
bool available
Definition: celix_dm_info.h:46
celix_dm_component_info_struct
Definition: celix_dm_info.h:54
celix_dm_dependency_manager_info_struct::bndSymbolicName
char * bndSymbolicName
Definition: celix_dm_info.h:72
celix_dm_dependency_manager_info_struct::bndId
long bndId
Definition: celix_dm_info.h:71
celix_dm_component_info_struct::name
char * name
Definition: celix_dm_info.h:58
celix_dm_service_dependency_info_struct::versionRange
char * versionRange
Definition: celix_dm_info.h:45
celix_dm_interface_info_struct
Definition: celix_dm_info.h:34