def METHOD_NAME(self, src_paths) -> List[str]:
    # Prepare the SQLFluff command to run.
    command = copy.deepcopy(self.driver.command)
    if self.options:
        for arg in self.options.split():
            command.append(arg)
    for src_path in src_paths:
        if src_path.endswith(".sql") and os.path.exists(src_path):
            command.append(src_path.encode(sys.getfilesystemencoding()))
    with tempfile.NamedTemporaryFile(
        prefix="sqlfluff-", suffix=".json", delete=False
    ) as f:
        f.close()
        try:
            # Write output to a temporary file. This avoids issues where
            # extraneous SQLFluff or dbt output results in the JSON output
            # being invalid.
            command += ["--write-output", f.name]
            # Run SQLFluff.
            printable_command = " ".join(
                [
                    c.decode(sys.getfilesystemencoding())
                    if isinstance(c, bytes)
                    else c
                    for c in command
                ]
            )
            logger.warning(f"{printable_command}")
            execute(command, self.driver.exit_codes)
            return [pathlib.Path(f.name).read_text()]
        finally:
            os.remove(f.name)