def METHOD_NAME(self, file_path: AnyPath) -> None:
    if isinstance(file_path, str):
        file_path = Path(file_path)
    if has_magic(str(file_path)) and not isinstance(file_path, zipfile.Path):
        for e in glob(str(file_path), recursive=True):
            self.METHOD_NAME(Path(e))
    else:
        with file_path.open() as file_handle:
            entries = json.load(file_handle)
        if not isinstance(entries, list):
            raise ValueError
        for entry in entries:
            self._add_entry(entry)