Files
redash/client/app/services/databricks-data-source.js
2020-07-06 17:49:20 -03:00

29 lines
910 B
JavaScript

import { has } from "lodash";
import { axios } from "@/services/axios";
import DataSource from "@/services/data-source";
import { fetchDataFromJob } from "@/services/query-result";
export default {
...DataSource,
getDatabases: ({ id }, refresh = false) => {
const params = {};
if (refresh) {
params.refresh = true;
}
return axios
.get(`api/databricks/databases/${id}`, { params })
.then(data => (has(data, "job.id") ? fetchDataFromJob(data.job.id, 300).catch(() => []) : Promise.resolve([])));
},
getDatabaseTables: (data, databaseName, refresh = false) => {
const params = {};
if (refresh) {
params.refresh = true;
}
return axios
.get(`api/databricks/databases/${data.id}/${databaseName}/tables`, { params })
.then(data => (has(data, "job.id") ? fetchDataFromJob(data.job.id, 300).catch(() => []) : Promise.resolve([])));
},
};