Skip to content

Select Component

Methods that make it easy to choose components solely through configuration settings.

def selectComponent(
    config: CoreConfig | dict[str, Any],
    component_type: str,
    name: Optional[str] = None
) -> CoreComponent:
    """Select a single component"""


def selectComponents(
    configs: list[CoreConfig | dict[str, Any]],
    component_type: str,
    names: Optional[list[str | None]] = None
) -> list[CoreComponent]:
    """Select multiple components"""

Usage

from detectmatelibrary.detectors.random_detector import RandomDetectorConfig

import detectmatelibrary.helper.select_component as selc

configs = [
    {
        "detectors": {
            "a": {"method_type": "random_detector"}
        }
    },
    RandomDetectorConfig(),
]
names = ["a", "b"]

components = selc.selectComponents(
    configs=configs, names=names, component_type="detectors"
)
print(len(components))  # 2