Skip to content

feat(config): adopt KCENON integration flags from common_system#272

Merged
kcenon merged 3 commits into
mainfrom
feature/adopt-kcenon-integration-flags
Dec 22, 2025
Merged

feat(config): adopt KCENON integration flags from common_system#272
kcenon merged 3 commits into
mainfrom
feature/adopt-kcenon-integration-flags

Conversation

@kcenon

@kcenon kcenon commented Dec 22, 2025

Copy link
Copy Markdown
Owner

Summary

  • Add feature_flags.h header for unified feature detection in monitoring_system
  • Replace BUILD_WITH_COMMON_SYSTEM with KCENON_HAS_COMMON_SYSTEM across all source files
  • Include common_system's feature_flags.h for centralized flag management
  • Add legacy aliases (BUILD_WITH_COMMON_SYSTEM, MONITORING_USING_COMMON_INTERFACES) for backward compatibility

Changes

  • New file: include/kcenon/monitoring/config/feature_flags.h

    • Includes common_system's feature_flags.h when available
    • Defines KCENON_HAS_COMMON_SYSTEM based on header availability
    • Provides legacy aliases for migration period
  • Updated headers (8 files):

    • interfaces/event_bus_interface.h
    • interfaces/metric_collector_interface.h
    • concepts/monitoring_concepts.h
    • di/service_registration.h
    • adapters/common_monitor_adapter.h
    • adapters/common_system_adapter.h
  • Updated CMake:

    • CMakeLists.txt: Use KCENON_HAS_COMMON_SYSTEM=1 compile definition
    • examples/CMakeLists.txt: Use MONITORING_WITH_COMMON_SYSTEM variable
    • cmake/MonitoringLegacyOptions.cmake: Add documentation about new flag convention
  • Updated tests:

    • tests/test_service_registration.cpp: Use feature_flags.h and KCENON_HAS_COMMON_SYSTEM

Test plan

  • Library compiles successfully with the new flag convention
  • test_service_registration.cpp compiles with feature_flags.h
  • Legacy BUILD_WITH_COMMON_SYSTEM aliases work during migration period
  • Full test suite (blocked by unrelated existing test issues)

Closes #271

- Add feature_flags.h header for unified feature detection
- Replace BUILD_WITH_COMMON_SYSTEM with KCENON_HAS_COMMON_SYSTEM
- Include common_system's feature_flags.h for centralized flag management
- Add legacy aliases for backward compatibility during migration
- Update CMake compile definitions to use KCENON_HAS_COMMON_SYSTEM=1
- Update all header files to use #if KCENON_HAS_COMMON_SYSTEM pattern

This aligns monitoring_system with the unified KCENON_* integration
flag convention established in common_system.

Closes #271
Remove the deprecated file/line/function 5-argument log() method
overrides from mock logger classes. This API was removed from
common_system's ILogger interface in v3.0.0 (Issue #217) in favor
of the source_location-based API.

Affected mock classes:
- mock_logger in test_adapter_functionality.cpp
- simple_mock_logger in test_cross_system_integration.cpp
Updated both English and Korean CHANGELOG files to document the
removal of deprecated 5-argument log() method overrides from test
mock classes.
@kcenon kcenon merged commit 6a7051f into main Dec 22, 2025
21 checks passed
@kcenon kcenon deleted the feature/adopt-kcenon-integration-flags branch December 22, 2025 15:54
kcenon added a commit that referenced this pull request Apr 13, 2026
* feat(config): adopt KCENON integration flags from common_system

- Add feature_flags.h header for unified feature detection
- Replace BUILD_WITH_COMMON_SYSTEM with KCENON_HAS_COMMON_SYSTEM
- Include common_system's feature_flags.h for centralized flag management
- Add legacy aliases for backward compatibility during migration
- Update CMake compile definitions to use KCENON_HAS_COMMON_SYSTEM=1
- Update all header files to use #if KCENON_HAS_COMMON_SYSTEM pattern

This aligns monitoring_system with the unified KCENON_* integration
flag convention established in common_system.

Closes #271

* fix(tests): remove deprecated ILogger 5-arg log method overrides

Remove the deprecated file/line/function 5-argument log() method
overrides from mock logger classes. This API was removed from
common_system's ILogger interface in v3.0.0 (Issue #217) in favor
of the source_location-based API.

Affected mock classes:
- mock_logger in test_adapter_functionality.cpp
- simple_mock_logger in test_cross_system_integration.cpp

* docs(changelog): document deprecated ILogger API fix for PR #272

Updated both English and Korean CHANGELOG files to document the
removal of deprecated 5-argument log() method overrides from test
mock classes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Adopt KCENON integration flags

1 participant