diff --git a/autopipe/autopipe.py b/autopipe/autopipe.py index c73da84..0f1ce76 100644 --- a/autopipe/autopipe.py +++ b/autopipe/autopipe.py @@ -5,6 +5,7 @@ from autopipe import available_coordinators, ArgumentError class Autopipe: def __init__(self, coordinator, coordinator_args, log_level=logging.WARNING): logging.basicConfig(format="%(levelname)s: %(message)s", level=log_level) - if coordinator not in available_coordinators: + coordinator_class = next((i for i in available_coordinators if i.name() == coordinator), None) + if coordinator_class is None: raise ArgumentError(f"Invalid coordinator: {coordinator}", "coordinator") - self.coordinator = available_coordinators[coordinator](*coordinator_args) + self.coordinator = coordinator_class(*coordinator_args)