From 1e065580ac07df747d421e46090a23de81cd02c1 Mon Sep 17 00:00:00 2001 From: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com> Date: Thu, 2 Nov 2023 11:02:00 +0100 Subject: [PATCH] Loki: Remove duplicated methods in languageProvider (#77456) Loki: Remove fuplicated methods in languageProvider --- .../datasource/loki/LanguageProvider.ts | 21 ------------------- .../loki/components/LokiCheatSheet.tsx | 2 +- .../loki/components/LokiLabelBrowser.test.tsx | 2 +- .../loki/components/LokiLabelBrowser.tsx | 2 +- .../CompletionDataProvider.test.ts | 4 ++-- .../CompletionDataProvider.ts | 4 ++-- 6 files changed, 7 insertions(+), 28 deletions(-) diff --git a/public/app/plugins/datasource/loki/LanguageProvider.ts b/public/app/plugins/datasource/loki/LanguageProvider.ts index 070ec781161..960dfcbfa89 100644 --- a/public/app/plugins/datasource/loki/LanguageProvider.ts +++ b/public/app/plugins/datasource/loki/LanguageProvider.ts @@ -96,20 +96,6 @@ export default class LokiLanguageProvider extends LanguageProvider { }; } - /** - * Wrapper method over fetchSeriesLabels to retrieve series labels and handle errors. - * @todo remove this in favor of fetchSeriesLabels as we already in this.request do the same thing - */ - async getSeriesLabels(selector: string) { - try { - return await this.fetchSeriesLabels(selector); - } catch (error) { - // TODO: better error handling - console.error(error); - return undefined; - } - } - /** * Fetch all label keys * This asynchronous function returns all available label keys from the data source. @@ -186,13 +172,6 @@ export default class LokiLanguageProvider extends LanguageProvider { return nanoseconds ? Math.floor(nanoseconds / NS_IN_MS / 1000 / 60 / 5) : 0; } - /** - * @todo remove this in favor of fetchLabelValues as it is the same thing - */ - async getLabelValues(key: string): Promise { - return await this.fetchLabelValues(key); - } - /** * Fetch label values * diff --git a/public/app/plugins/datasource/loki/components/LokiCheatSheet.tsx b/public/app/plugins/datasource/loki/components/LokiCheatSheet.tsx index b6c75f526a4..0f7a0b99dd1 100644 --- a/public/app/plugins/datasource/loki/components/LokiCheatSheet.tsx +++ b/public/app/plugins/datasource/loki/components/LokiCheatSheet.tsx @@ -62,7 +62,7 @@ export default class LokiCheatSheet extends PureComponent labels.includes(l)); if (preferredLabel) { - const values = await provider.getLabelValues(preferredLabel); + const values = await provider.fetchLabelValues(preferredLabel); const userExamples = shuffle(values) .slice(0, EXAMPLES_LIMIT) .map((value) => `{${preferredLabel}="${value}"}`); diff --git a/public/app/plugins/datasource/loki/components/LokiLabelBrowser.test.tsx b/public/app/plugins/datasource/loki/components/LokiLabelBrowser.test.tsx index fc158203f65..5090172f64e 100644 --- a/public/app/plugins/datasource/loki/components/LokiLabelBrowser.test.tsx +++ b/public/app/plugins/datasource/loki/components/LokiLabelBrowser.test.tsx @@ -85,7 +85,7 @@ describe('LokiLabelBrowser', () => { const setupProps = (): BrowserProps => { const mockLanguageProvider = { start: () => Promise.resolve(), - getLabelValues: (name: string) => { + fetchLabelValues: (name: string) => { switch (name) { case 'label1': return ['value1-1', 'value1-2']; diff --git a/public/app/plugins/datasource/loki/components/LokiLabelBrowser.tsx b/public/app/plugins/datasource/loki/components/LokiLabelBrowser.tsx index 936255b4a90..2c32e36549d 100644 --- a/public/app/plugins/datasource/loki/components/LokiLabelBrowser.tsx +++ b/public/app/plugins/datasource/loki/components/LokiLabelBrowser.tsx @@ -350,7 +350,7 @@ export class UnthemedLokiLabelBrowser extends React.Component { completionProvider = new CompletionDataProvider(languageProvider, historyRef); jest.spyOn(languageProvider, 'getLabelKeys').mockReturnValue(labelKeys); - jest.spyOn(languageProvider, 'getLabelValues').mockResolvedValue(labelValues); - jest.spyOn(languageProvider, 'getSeriesLabels').mockResolvedValue(seriesLabels); + jest.spyOn(languageProvider, 'fetchLabelValues').mockResolvedValue(labelValues); + jest.spyOn(languageProvider, 'fetchSeriesLabels').mockResolvedValue(seriesLabels); jest.spyOn(languageProvider, 'getParserAndLabelKeys').mockResolvedValue(parserAndLabelKeys); }); diff --git a/public/app/plugins/datasource/loki/components/monaco-query-field/monaco-completion-provider/CompletionDataProvider.ts b/public/app/plugins/datasource/loki/components/monaco-query-field/monaco-completion-provider/CompletionDataProvider.ts index 03064d5a74a..f8934ff1fc2 100644 --- a/public/app/plugins/datasource/loki/components/monaco-query-field/monaco-completion-provider/CompletionDataProvider.ts +++ b/public/app/plugins/datasource/loki/components/monaco-query-field/monaco-completion-provider/CompletionDataProvider.ts @@ -51,7 +51,7 @@ export class CompletionDataProvider { async getLabelValues(labelName: string, otherLabels: Label[]) { if (otherLabels.length === 0) { // if there is no filtering, we have to use a special endpoint - return await this.languageProvider.getLabelValues(labelName); + return await this.languageProvider.fetchLabelValues(labelName); } const data = await this.getSeriesLabels(otherLabels); @@ -90,6 +90,6 @@ export class CompletionDataProvider { } async getSeriesLabels(labels: Label[]) { - return await this.languageProvider.getSeriesLabels(this.buildSelector(labels)).then((data) => data ?? {}); + return await this.languageProvider.fetchSeriesLabels(this.buildSelector(labels)).then((data) => data ?? {}); } }