"""Returns dictionary of all global extra links."""
        from airflow import plugins_manager
        plugins_manager.initialize_extra_operators_links_plugins()
        if plugins_manager.global_operator_extra_links is None:
            raise AirflowException("Can't load operators")
        return {link.name: link for link in plugins_manager.global_operator_extra_links}
    @cached_property
    def extra_links(self) -> list[str]:
        return list(set(self.operator_extra_link_dict).union(self.global_operator_extra_link_dict))
    def get_extra_links(self, ti: TaskInstance, link_name: str) -> str | None:
        """For an operator, gets the URLs that the ``extra_links`` entry points to.
        :meta private:
        :raise ValueError: The error message of a ValueError will be passed on through to
            the fronted to show up as a tooltip on the disabled link.
        :param ti: The TaskInstance for the URL being searched for.
        :param link_name: The name of the link we're looking for the URL for. Should be
            one of the options specified in ``extra_links``.
        """
        link: BaseOperatorLink | None = self.operator_extra_link_dict.get(link_name)
        if not link:
            link = self.global_operator_extra_link_dict.get(link_name)
            if not link:
                return None
        parameters = inspect.signature(link.get_link).parameters
        old_signature = all(name != "ti_key" for name, p in parameters.items() if p.kind != p.VAR_KEYWORD)
        if old_signature:
            return link.get_link(self.unmap(None), ti.dag_run.logical_date)  
        return link.get_link(self.unmap(None), ti_key=ti.key)
    @cache
    def get_parse_time_mapped_ti_count(self) -> int: