This is an automated email from the ASF dual-hosted git repository. pengzheng pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/celix.git
commit 2683e8b83b776838c9a2c4eb80a0dbc2b6dad7a6 Merge: 1ff71f60 79e7dcef Author: PengZheng <[email protected]> AuthorDate: Tue Aug 1 10:41:15 2023 +0800 Merge pull request #591 from apache/feature/574-scope-based-resource-management [RFC] Scope-based Resource Management for Celix .../http_admin/gtest/src/http_websocket_tests.cc | 5 +- bundles/http_admin/gtest/src/sut_activator.c | 5 +- bundles/http_admin/http_admin/src/http_admin.c | 3 +- .../http_admin/http_admin/src/websocket_admin.c | 12 +- bundles/logging/log_admin/src/celix_log_admin.c | 5 +- .../log_helper/gtest/src/LogHelperTestSuite.cc | 5 + .../logging/log_helper/include/celix_log_helper.h | 3 + .../src/deprecated_log_writer_stdout_activator.c | 5 +- .../src/celix_syslog_writer_activator.c | 3 +- bundles/pubsub/integration/gtest/tst_activator.c | 11 +- .../integration/gtest/tst_endpoint_activator.c | 3 +- .../pubsub/pubsub_admin_tcp/src/pubsub_tcp_admin.c | 5 +- .../pubsub_admin_tcp/src/pubsub_tcp_handler.c | 3 +- .../src/pubsub_tcp_topic_receiver.c | 3 +- .../pubsub_admin_tcp/src/pubsub_tcp_topic_sender.c | 5 +- .../pubsub_admin_udp_mc/src/pubsub_udpmc_admin.c | 3 +- .../src/pubsub_udpmc_topic_sender.c | 7 +- .../src/pubsub_websocket_admin.c | 3 +- .../src/pubsub_websocket_topic_receiver.c | 7 +- .../src/pubsub_websocket_topic_sender.c | 9 +- .../pubsub/pubsub_admin_zmq/src/pubsub_zmq_admin.c | 5 +- .../pubsub_admin_zmq/src/pubsub_zmq_topic_sender.c | 5 +- .../pubsub_discovery/src/pubsub_discovery_impl.c | 3 +- .../src/pubsub_wire_protocol_impl.c | 23 +- .../src/pubsub_wire_protocol_impl.h | 2 +- .../src/pubsub_wire_v2_protocol_impl.c | 7 +- .../src/pubsub_avrobin_serializer_impl.c | 3 +- .../src/pubsub_json_serialization_provider.c | 3 +- .../src/pubsub_serializer_impl.c | 5 +- .../pubsub/pubsub_spi/src/pubsub_endpoint_match.c | 3 +- .../pubsub_spi/src/pubsub_interceptors_handler.c | 3 +- .../src/pubsub_topology_manager.c | 17 +- .../include/pubsub_serialization_provider.h | 3 +- .../src/pubsub_serialization_provider.c | 9 +- .../pubsub_utils/src/pubsub_serializer_handler.c | 3 +- .../src/endpoint_descriptor_common.h | 12 +- .../gtest/src/DiscoveryZeroconfWatcherTestSuite.cc | 13 + .../src/discovery_zeroconf_activator.c | 26 +- .../src/discovery_zeroconf_announcer.c | 73 ++--- .../src/discovery_zeroconf_announcer.h | 3 + .../src/discovery_zeroconf_watcher.c | 53 ++-- .../src/discovery_zeroconf_watcher.h | 3 + .../calculator_service/src/calculator_impl.c | 7 +- .../gtest/src/rsa_client_server_tests.cc | 27 +- .../gtest/src/rsa_tests.cc | 7 +- .../rsa_shm/gtest/CMakeLists.txt | 3 + .../gtest/src/RsaShmClientServerUnitTestSuite.cc | 51 ++++ .../rsa_shm/gtest/src/shm_pool_ei.cc | 29 ++ .../rsa_shm/gtest/src/shm_pool_ei.h | 32 ++ .../rsa_shm/src/rsa_shm_activator.c | 28 +- .../rsa_shm/src/rsa_shm_client.c | 326 +++++++++----------- .../rsa_shm/src/rsa_shm_client.h | 3 + .../rsa_shm/src/rsa_shm_export_registration.c | 96 +++--- .../rsa_shm/src/rsa_shm_export_registration.h | 3 + .../rsa_shm/src/rsa_shm_impl.c | 338 ++++++++------------- .../rsa_shm/src/rsa_shm_impl.h | 3 + .../rsa_shm/src/rsa_shm_import_registration.c | 46 +-- .../rsa_shm/src/rsa_shm_server.c | 47 ++- .../shm_pool/include/shm_cache.h | 3 + .../shm_pool/include/shm_pool.h | 36 ++- .../shm_pool/src/shm_cache.c | 26 +- .../rsa_common/src/endpoint_description.c | 22 +- .../rsa_common/src/remote_interceptors_handler.c | 3 +- .../rsa_rpc_json/src/rsa_json_rpc_activator.c | 24 +- .../rsa_rpc_json/src/rsa_json_rpc_endpoint_impl.c | 82 ++--- .../rsa_rpc_json/src/rsa_json_rpc_impl.c | 44 ++- .../rsa_rpc_json/src/rsa_json_rpc_impl.h | 3 + .../rsa_rpc_json/src/rsa_json_rpc_proxy_impl.c | 81 ++--- .../rsa_rpc_json/src/rsa_request_sender_tracker.c | 21 +- .../rsa_spi/include/endpoint_description.h | 3 + .../rsa_spi/include/remote_interceptors_handler.h | 3 + .../topology_manager/src/topology_manager.c | 10 +- bundles/shell/shell/src/bundle_command.c | 22 +- bundles/shell/shell/src/c_shell_activator.c | 3 +- bundles/shell/shell/src/query_command.c | 2 +- bundles/shell/shell/src/quit_command.c | 3 +- documents/README.md | 5 + documents/bundles.md | 4 +- documents/c_patterns.md | 91 ++++++ documents/components.md | 2 +- documents/services.md | 8 +- .../bundle_with_private_lib/src/activator.c | 3 +- .../dm_example/phase3/src/phase3_activator.c | 3 +- .../dm_example_cxx/phase1/src/Phase1Activator.cc | 5 +- .../log_service_example/src/activator.c | 5 +- .../component_with_provided_service_activator.c | 3 +- .../readme_c_examples/src/my_bundle_activator.c | 5 +- .../my_shell_command_provider_bundle_activator.c | 3 +- .../src/using_command_service_example.c | 7 +- .../src/using_command_service_example.c | 3 +- .../src/dynamic_consumer_example.c | 11 +- .../src/dynamic_provider_example.c | 5 +- .../src/simple_consumer_example.c | 7 +- .../track_tracker_example/src/activator.c | 5 +- .../conan_test_package/my_log_writer_activator.c | 3 +- .../conan_test_package/test_http_admin_activator.c | 10 +- libs/dependency_manager/src/dm_activator.c | 3 +- libs/dfi/gtest/src/dyn_avpr_function_tests.cpp | 17 +- libs/dfi/include/dyn_interface.h | 3 + libs/dfi/src/json_rpc.c | 3 +- libs/framework/CMakeLists.txt | 2 +- libs/framework/gtest/src/nop_activator.c | 5 +- libs/framework/include/celix_bundle_context.h | 32 ++ libs/framework/include_deprecated/bundle_context.h | 33 ++ libs/framework/src/bundle_archive.c | 15 +- libs/framework/src/bundle_revision.c | 3 +- libs/framework/src/celix_bundle_cache.c | 38 ++- libs/framework/src/celix_scheduled_event.c | 6 - libs/framework/src/celix_scheduled_event.h | 23 +- libs/framework/src/dm_dependency_manager_impl.c | 5 +- libs/framework/src/dm_service_dependency.c | 5 +- libs/framework/src/framework.c | 9 +- libs/framework/src/service_reference.c | 3 +- libs/utils/CMakeLists.txt | 4 +- libs/utils/gtest/CMakeLists.txt | 3 +- libs/utils/gtest/src/ArrayListTestSuite.cc | 5 + .../gtest/src/CelixUtilsAutoCleanupTestSuite.cc | 190 ++++++++++++ libs/utils/gtest/src/HashMapTestSuite.cc | 10 + libs/utils/gtest/src/ThreadsTestSuite.cc | 3 +- libs/utils/include/celix_array_list.h | 3 + libs/utils/include/celix_cleanup.h | 131 ++++++++ libs/utils/include/celix_compiler.h | 48 +++ libs/utils/include/celix_long_hash_map.h | 3 + libs/utils/include/celix_properties.h | 9 +- libs/utils/include/celix_stdlib_cleanup.h | 48 +++ libs/utils/include/celix_string_hash_map.h | 3 + libs/utils/include/celix_threads.h | 155 +++++++++- libs/utils/include/celix_unistd_cleanup.h | 40 +++ libs/utils/include/celix_version.h | 3 + libs/utils/private/test/properties_test.cpp | 4 + libs/utils/src/celix_cleanup.c | 20 ++ libs/utils/src/celix_log_utils.c | 3 +- libs/utils/src/celix_threads.c | 18 +- .../src/pubsub_nanomsg_admin.cc | 6 +- .../src/pubsub_nanomsg_admin.h | 5 +- .../src/pubsub_nanomsg_common.cc | 3 +- .../src/pubsub_nanomsg_topic_sender.cc | 3 +- .../src/pubsub_nanomsg_topic_sender.h | 5 +- 138 files changed, 1869 insertions(+), 1068 deletions(-)
