code: def run(self, **kwargs: Any) -> dict[str, Any]:
      # caching is handled in query_context.get_df_payload
      # (also evals `force` property)
      cache_query_context = kwargs.get("cache", False)
      force_cached = kwargs.get("force_cached", False)
      try:
          payload = self._query_context.get_payload(
              cache_query_context=cache_query_context,
              force_cached=force_cached,
          )
      except CacheLoadError as ex:
          raise ChartDataCacheLoadError(ex.message) from ex
  
      # TODO: QueryContext should support SIP-40 style errors
      for query in payload["queries"]:
          if query.get("error"):
              raise ChartDataQueryFailedError(
                  _("Error: %(error)s", error=query["error"])
              )
  
      return_value = {
          "query_context": self._query_context,
          "queries": payload["queries"],
      }
      if cache_query_context:
          return_value.update(cache_key=payload["cache_key"])
  
      return return_value
  
file_path: superset/superset/commands/chart/data/get_data_command.py
imports: import logging
  from typing import Any
  from flask_babel import gettext
  from superset.commands.base import BaseCommand
  from superset.commands.chart.exceptions import ChartDataCacheLoadError, ChartDataQueryFailedError
  from superset.common.query_context import QueryContext
  from superset.exceptions import CacheLoadError
label_desc: Use image node_id 2 for calling the ChartDataCommand obj's underlying member method code with example usage: obj.run() and returns: return_value