diff --git a/src/fixtures/logstash_fields.js b/src/fixtures/logstash_fields.js index 0ae6c62def0f7..ab96b69851b71 100644 --- a/src/fixtures/logstash_fields.js +++ b/src/fixtures/logstash_fields.js @@ -19,7 +19,7 @@ import { castEsToKbnFieldTypeName } from '../plugins/data/common'; // eslint-disable-next-line max-len -import { shouldReadFieldFromDocValues } from '../legacy/server/index_patterns/service/lib/field_capabilities/should_read_field_from_doc_values'; +import { shouldReadFieldFromDocValues } from '../plugins/data/server'; function stubbedLogstashFields() { return [ diff --git a/src/legacy/core_plugins/data/public/index_patterns/index_patterns/index_patterns.ts b/src/legacy/core_plugins/data/public/index_patterns/index_patterns/index_patterns.ts index d445e2e58cd54..4767b6d3a3ca7 100644 --- a/src/legacy/core_plugins/data/public/index_patterns/index_patterns/index_patterns.ts +++ b/src/legacy/core_plugins/data/public/index_patterns/index_patterns/index_patterns.ts @@ -29,7 +29,7 @@ import { fieldFormats } from 'ui/registry/field_formats'; import { createIndexPatternCache } from './_pattern_cache'; import { IndexPattern } from './index_pattern'; -import { IndexPatternsApiClient } from './index_patterns_api_client'; +import { IndexPatternsApiClient, GetFieldsOptions } from './index_patterns_api_client'; const indexPatternCache = createIndexPatternCache(); @@ -93,6 +93,14 @@ export class IndexPatterns { }); }; + getFieldsForTimePattern = (options: GetFieldsOptions = {}) => { + return this.apiClient.getFieldsForTimePattern(options); + }; + + getFieldsForWildcard = (options: GetFieldsOptions = {}) => { + return this.apiClient.getFieldsForWildcard(options); + }; + clearCache = (id?: string) => { this.savedObjectsCache = null; if (id) { diff --git a/src/legacy/core_plugins/vis_type_timeseries/server/lib/get_index_pattern_service.js b/src/legacy/core_plugins/vis_type_timeseries/server/lib/get_index_pattern_service.js index 0766e6a48765f..54e90ab7dd9b7 100644 --- a/src/legacy/core_plugins/vis_type_timeseries/server/lib/get_index_pattern_service.js +++ b/src/legacy/core_plugins/vis_type_timeseries/server/lib/get_index_pattern_service.js @@ -17,7 +17,7 @@ * under the License. */ -import { IndexPatternsService } from '../../../../server/index_patterns/service'; +import { IndexPatternsFetcher } from '../../../../../plugins/data/server/'; export const getIndexPatternService = { assign: 'indexPatternsService', method(req) { @@ -25,6 +25,6 @@ export const getIndexPatternService = { const callDataCluster = (...args) => { return dataCluster.callWithRequest(req, ...args); }; - return new IndexPatternsService(callDataCluster); + return new IndexPatternsFetcher(callDataCluster); }, }; diff --git a/src/legacy/server/index_patterns/index.ts b/src/legacy/server/index_patterns/index.ts index eea8a4a998e2d..75d0038cf9023 100644 --- a/src/legacy/server/index_patterns/index.ts +++ b/src/legacy/server/index_patterns/index.ts @@ -17,7 +17,9 @@ * under the License. */ -// @ts-ignore no types export { indexPatternsMixin } from './mixin'; -export { IndexPatternsService, FieldDescriptor } from './service'; +export { + IndexPatternsFetcher, + FieldDescriptor, +} from '../../../plugins/data/server/index_patterns/fetcher'; export { IndexPatternsServiceFactory } from './mixin'; diff --git a/src/legacy/server/index_patterns/mixin.ts b/src/legacy/server/index_patterns/mixin.ts index a7180d6a2d70e..6b04c3842007b 100644 --- a/src/legacy/server/index_patterns/mixin.ts +++ b/src/legacy/server/index_patterns/mixin.ts @@ -17,11 +17,10 @@ * under the License. */ -import { IndexPatternsService } from './service'; +import { IndexPatternsFetcher } from '../../../plugins/data/server'; import KbnServer from '../kbn_server'; import { APICaller, CallAPIOptions } from '../../../core/server'; import { Legacy } from '../../../../kibana'; -import { registerRoutes } from './routes'; export function indexPatternsMixin(kbnServer: KbnServer, server: Legacy.Server) { /** @@ -31,7 +30,7 @@ export function indexPatternsMixin(kbnServer: KbnServer, server: Legacy.Server) * @type {IndexPatternsService} */ server.decorate('server', 'indexPatternsServiceFactory', ({ callCluster }) => { - return new IndexPatternsService(callCluster); + return new IndexPatternsFetcher(callCluster); }); /** @@ -50,10 +49,8 @@ export function indexPatternsMixin(kbnServer: KbnServer, server: Legacy.Server) ) => callWithRequest(request, endpoint, params, options); return server.indexPatternsServiceFactory({ callCluster }); }); - - registerRoutes(kbnServer.newPlatform.setup.core); } export type IndexPatternsServiceFactory = (args: { callCluster: (endpoint: string, clientParams: any, options: any) => Promise; -}) => IndexPatternsService; +}) => IndexPatternsFetcher; diff --git a/src/legacy/server/kbn_server.d.ts b/src/legacy/server/kbn_server.d.ts index 8b0a30e456329..448a418abcb8a 100644 --- a/src/legacy/server/kbn_server.d.ts +++ b/src/legacy/server/kbn_server.d.ts @@ -150,5 +150,5 @@ export default class KbnServer { export { Server, Request, ResponseToolkit } from 'hapi'; // Re-export commonly accessed api types. -export { IndexPatternsService } from './index_patterns'; +export { IndexPatternsFetcher as IndexPatternsService } from './index_patterns'; export { SavedObjectsLegacyService, SavedObjectsClient } from 'src/core/server'; diff --git a/src/plugins/data/server/index.ts b/src/plugins/data/server/index.ts index df933167cee25..f0b6117b928cd 100644 --- a/src/plugins/data/server/index.ts +++ b/src/plugins/data/server/index.ts @@ -25,6 +25,11 @@ export function plugin(initializerContext: PluginInitializerContext) { } export { DataServerPlugin as Plugin }; +export { + IndexPatternsFetcher, + FieldDescriptor, + shouldReadFieldFromDocValues, +} from './index_patterns'; export * from './search'; diff --git a/src/legacy/server/index_patterns/service/index.ts b/src/plugins/data/server/index_patterns/fetcher/index.ts similarity index 89% rename from src/legacy/server/index_patterns/service/index.ts rename to src/plugins/data/server/index_patterns/fetcher/index.ts index 496c4ba7b5b6f..19306696885db 100644 --- a/src/legacy/server/index_patterns/service/index.ts +++ b/src/plugins/data/server/index_patterns/fetcher/index.ts @@ -17,4 +17,5 @@ * under the License. */ -export * from './index_patterns_service'; +export * from './index_patterns_fetcher'; +export { shouldReadFieldFromDocValues } from './lib'; diff --git a/src/legacy/server/index_patterns/service/index_patterns_service.ts b/src/plugins/data/server/index_patterns/fetcher/index_patterns_fetcher.ts similarity index 98% rename from src/legacy/server/index_patterns/service/index_patterns_service.ts rename to src/plugins/data/server/index_patterns/fetcher/index_patterns_fetcher.ts index 62cf51828a4cc..5f1493a49ab7d 100644 --- a/src/legacy/server/index_patterns/service/index_patterns_service.ts +++ b/src/plugins/data/server/index_patterns/fetcher/index_patterns_fetcher.ts @@ -36,7 +36,7 @@ interface FieldSubType { nested?: { path: string }; } -export class IndexPatternsService { +export class IndexPatternsFetcher { private _callDataCluster: APICaller; constructor(callDataCluster: APICaller) { diff --git a/src/legacy/server/index_patterns/service/lib/errors.ts b/src/plugins/data/server/index_patterns/fetcher/lib/errors.ts similarity index 100% rename from src/legacy/server/index_patterns/service/lib/errors.ts rename to src/plugins/data/server/index_patterns/fetcher/lib/errors.ts diff --git a/src/legacy/server/index_patterns/service/lib/es_api.test.js b/src/plugins/data/server/index_patterns/fetcher/lib/es_api.test.js similarity index 100% rename from src/legacy/server/index_patterns/service/lib/es_api.test.js rename to src/plugins/data/server/index_patterns/fetcher/lib/es_api.test.js diff --git a/src/legacy/server/index_patterns/service/lib/es_api.ts b/src/plugins/data/server/index_patterns/fetcher/lib/es_api.ts similarity index 99% rename from src/legacy/server/index_patterns/service/lib/es_api.ts rename to src/plugins/data/server/index_patterns/fetcher/lib/es_api.ts index 63c1824784dbd..92b64fafddd66 100644 --- a/src/legacy/server/index_patterns/service/lib/es_api.ts +++ b/src/plugins/data/server/index_patterns/fetcher/lib/es_api.ts @@ -18,7 +18,6 @@ */ import { APICaller } from 'src/core/server'; -// @ts-ignore import { convertEsError } from './errors'; import { FieldCapsResponse } from './field_capabilities'; diff --git a/src/legacy/server/index_patterns/service/lib/field_capabilities/__fixtures__/es_field_caps_response.json b/src/plugins/data/server/index_patterns/fetcher/lib/field_capabilities/__fixtures__/es_field_caps_response.json similarity index 100% rename from src/legacy/server/index_patterns/service/lib/field_capabilities/__fixtures__/es_field_caps_response.json rename to src/plugins/data/server/index_patterns/fetcher/lib/field_capabilities/__fixtures__/es_field_caps_response.json diff --git a/src/legacy/server/index_patterns/service/lib/field_capabilities/field_capabilities.test.js b/src/plugins/data/server/index_patterns/fetcher/lib/field_capabilities/field_capabilities.test.js similarity index 100% rename from src/legacy/server/index_patterns/service/lib/field_capabilities/field_capabilities.test.js rename to src/plugins/data/server/index_patterns/fetcher/lib/field_capabilities/field_capabilities.test.js diff --git a/src/legacy/server/index_patterns/service/lib/field_capabilities/field_capabilities.ts b/src/plugins/data/server/index_patterns/fetcher/lib/field_capabilities/field_capabilities.ts similarity index 97% rename from src/legacy/server/index_patterns/service/lib/field_capabilities/field_capabilities.ts rename to src/plugins/data/server/index_patterns/fetcher/lib/field_capabilities/field_capabilities.ts index 05e8d591f13a9..c275fb714088e 100644 --- a/src/legacy/server/index_patterns/service/lib/field_capabilities/field_capabilities.ts +++ b/src/plugins/data/server/index_patterns/fetcher/lib/field_capabilities/field_capabilities.ts @@ -23,7 +23,7 @@ import { APICaller } from 'src/core/server'; import { callFieldCapsApi } from '../es_api'; import { FieldCapsResponse, readFieldCapsResponse } from './field_caps_response'; import { mergeOverrides } from './overrides'; -import { FieldDescriptor } from '../../index_patterns_service'; +import { FieldDescriptor } from '../../index_patterns_fetcher'; export function concatIfUniq(arr: T[], value: T) { return arr.includes(value) ? arr : arr.concat(value); diff --git a/src/legacy/server/index_patterns/service/lib/field_capabilities/field_caps_response.test.js b/src/plugins/data/server/index_patterns/fetcher/lib/field_capabilities/field_caps_response.test.js similarity index 99% rename from src/legacy/server/index_patterns/service/lib/field_capabilities/field_caps_response.test.js rename to src/plugins/data/server/index_patterns/fetcher/lib/field_capabilities/field_caps_response.test.js index c0a5492aaba36..cf4af615b9577 100644 --- a/src/legacy/server/index_patterns/service/lib/field_capabilities/field_caps_response.test.js +++ b/src/plugins/data/server/index_patterns/fetcher/lib/field_capabilities/field_caps_response.test.js @@ -24,7 +24,7 @@ import sinon from 'sinon'; import * as shouldReadFieldFromDocValuesNS from './should_read_field_from_doc_values'; import { shouldReadFieldFromDocValues } from './should_read_field_from_doc_values'; -import { getKbnFieldType } from '../../../../../../plugins/data/common'; +import { getKbnFieldType } from '../../../../../../data/common'; import { readFieldCapsResponse } from './field_caps_response'; import esResponse from './__fixtures__/es_field_caps_response.json'; diff --git a/src/legacy/server/index_patterns/service/lib/field_capabilities/field_caps_response.ts b/src/plugins/data/server/index_patterns/fetcher/lib/field_capabilities/field_caps_response.ts similarity index 98% rename from src/legacy/server/index_patterns/service/lib/field_capabilities/field_caps_response.ts rename to src/plugins/data/server/index_patterns/fetcher/lib/field_capabilities/field_caps_response.ts index 19288014de297..06eb30db0b24b 100644 --- a/src/legacy/server/index_patterns/service/lib/field_capabilities/field_caps_response.ts +++ b/src/plugins/data/server/index_patterns/fetcher/lib/field_capabilities/field_caps_response.ts @@ -18,9 +18,9 @@ */ import { uniq } from 'lodash'; -import { FieldDescriptor } from '../..'; +import { castEsToKbnFieldTypeName } from '../../../../../common'; import { shouldReadFieldFromDocValues } from './should_read_field_from_doc_values'; -import { castEsToKbnFieldTypeName } from '../../../../../../plugins/data/common'; +import { FieldDescriptor } from '../../../fetcher'; interface FieldCapObject { type: string; diff --git a/src/legacy/server/index_patterns/service/lib/field_capabilities/index.ts b/src/plugins/data/server/index_patterns/fetcher/lib/field_capabilities/index.ts similarity index 91% rename from src/legacy/server/index_patterns/service/lib/field_capabilities/index.ts rename to src/plugins/data/server/index_patterns/fetcher/lib/field_capabilities/index.ts index 8ac4225557784..6a541aff56471 100644 --- a/src/legacy/server/index_patterns/service/lib/field_capabilities/index.ts +++ b/src/plugins/data/server/index_patterns/fetcher/lib/field_capabilities/index.ts @@ -19,3 +19,4 @@ export { getFieldCapabilities } from './field_capabilities'; export { FieldCapsResponse } from './field_caps_response'; +export { shouldReadFieldFromDocValues } from './should_read_field_from_doc_values'; diff --git a/src/legacy/server/index_patterns/service/lib/field_capabilities/overrides.ts b/src/plugins/data/server/index_patterns/fetcher/lib/field_capabilities/overrides.ts similarity index 95% rename from src/legacy/server/index_patterns/service/lib/field_capabilities/overrides.ts rename to src/plugins/data/server/index_patterns/fetcher/lib/field_capabilities/overrides.ts index 6310bf02e4430..518bfeccac01a 100644 --- a/src/legacy/server/index_patterns/service/lib/field_capabilities/overrides.ts +++ b/src/plugins/data/server/index_patterns/fetcher/lib/field_capabilities/overrides.ts @@ -18,7 +18,7 @@ */ import { merge } from 'lodash'; -import { FieldDescriptor } from '../../index_patterns_service'; +import { FieldDescriptor } from '../../index_patterns_fetcher'; const OVERRIDES: Record> = { _source: { type: '_source' }, diff --git a/src/legacy/server/index_patterns/service/lib/field_capabilities/should_read_field_from_doc_values.ts b/src/plugins/data/server/index_patterns/fetcher/lib/field_capabilities/should_read_field_from_doc_values.ts similarity index 100% rename from src/legacy/server/index_patterns/service/lib/field_capabilities/should_read_field_from_doc_values.ts rename to src/plugins/data/server/index_patterns/fetcher/lib/field_capabilities/should_read_field_from_doc_values.ts diff --git a/src/legacy/server/index_patterns/service/lib/index.ts b/src/plugins/data/server/index_patterns/fetcher/lib/index.ts similarity index 90% rename from src/legacy/server/index_patterns/service/lib/index.ts rename to src/plugins/data/server/index_patterns/fetcher/lib/index.ts index cd239b3753aa3..20e74d2b1a579 100644 --- a/src/legacy/server/index_patterns/service/lib/index.ts +++ b/src/plugins/data/server/index_patterns/fetcher/lib/index.ts @@ -17,8 +17,6 @@ * under the License. */ -export { getFieldCapabilities } from './field_capabilities'; -// @ts-ignore +export { getFieldCapabilities, shouldReadFieldFromDocValues } from './field_capabilities'; export { resolveTimePattern } from './resolve_time_pattern'; -// @ts-ignore export { createNoMatchingIndicesError } from './errors'; diff --git a/src/legacy/server/index_patterns/service/lib/resolve_time_pattern.test.js b/src/plugins/data/server/index_patterns/fetcher/lib/resolve_time_pattern.test.js similarity index 100% rename from src/legacy/server/index_patterns/service/lib/resolve_time_pattern.test.js rename to src/plugins/data/server/index_patterns/fetcher/lib/resolve_time_pattern.test.js diff --git a/src/legacy/server/index_patterns/service/lib/resolve_time_pattern.ts b/src/plugins/data/server/index_patterns/fetcher/lib/resolve_time_pattern.ts similarity index 100% rename from src/legacy/server/index_patterns/service/lib/resolve_time_pattern.ts rename to src/plugins/data/server/index_patterns/fetcher/lib/resolve_time_pattern.ts diff --git a/src/legacy/server/index_patterns/service/lib/time_pattern_to_wildcard.test.ts b/src/plugins/data/server/index_patterns/fetcher/lib/time_pattern_to_wildcard.test.ts similarity index 100% rename from src/legacy/server/index_patterns/service/lib/time_pattern_to_wildcard.test.ts rename to src/plugins/data/server/index_patterns/fetcher/lib/time_pattern_to_wildcard.test.ts diff --git a/src/legacy/server/index_patterns/service/lib/time_pattern_to_wildcard.ts b/src/plugins/data/server/index_patterns/fetcher/lib/time_pattern_to_wildcard.ts similarity index 100% rename from src/legacy/server/index_patterns/service/lib/time_pattern_to_wildcard.ts rename to src/plugins/data/server/index_patterns/fetcher/lib/time_pattern_to_wildcard.ts diff --git a/src/plugins/data/server/index_patterns/index.ts b/src/plugins/data/server/index_patterns/index.ts new file mode 100644 index 0000000000000..6937fa22c4e5d --- /dev/null +++ b/src/plugins/data/server/index_patterns/index.ts @@ -0,0 +1,21 @@ +/* + * Licensed to Elasticsearch B.V. under one or more contributor + * license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright + * ownership. Elasticsearch B.V. licenses this file to you under + * the Apache License, Version 2.0 (the "License"); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +export { IndexPatternsFetcher, FieldDescriptor, shouldReadFieldFromDocValues } from './fetcher'; +export { IndexPatternsService } from './index_patterns_service'; diff --git a/src/plugins/data/server/index_patterns/index_patterns_service.ts b/src/plugins/data/server/index_patterns/index_patterns_service.ts new file mode 100644 index 0000000000000..30d199c0e522e --- /dev/null +++ b/src/plugins/data/server/index_patterns/index_patterns_service.ts @@ -0,0 +1,30 @@ +/* + * Licensed to Elasticsearch B.V. under one or more contributor + * license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright + * ownership. Elasticsearch B.V. licenses this file to you under + * the Apache License, Version 2.0 (the "License"); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import { CoreSetup } from 'kibana/server'; +import { Plugin } from '../../../../core/server'; +import { registerRoutes } from './routes'; + +export class IndexPatternsService implements Plugin { + public setup({ http, elasticsearch }: CoreSetup) { + registerRoutes(http, elasticsearch); + } + + public start() {} +} diff --git a/src/legacy/server/index_patterns/routes.ts b/src/plugins/data/server/index_patterns/routes.ts similarity index 90% rename from src/legacy/server/index_patterns/routes.ts rename to src/plugins/data/server/index_patterns/routes.ts index fb78b94e0f77f..7975e923e219b 100644 --- a/src/legacy/server/index_patterns/routes.ts +++ b/src/plugins/data/server/index_patterns/routes.ts @@ -25,18 +25,18 @@ import { RequestHandlerContext, APICaller, CallAPIOptions, -} from '../../../core/server'; -import { IndexPatternsService } from './service'; +} from '../../../../core/server'; +import { IndexPatternsFetcher } from './fetcher'; -export function registerRoutes(core: CoreSetup) { - const getIndexPatternsService = async (request: KibanaRequest): Promise => { - const client = await core.elasticsearch.dataClient$.pipe(first()).toPromise(); +export function registerRoutes(http: CoreSetup['http'], elasticsearch: CoreSetup['elasticsearch']) { + const getIndexPatternsService = async (request: KibanaRequest): Promise => { + const client = await elasticsearch.dataClient$.pipe(first()).toPromise(); const callCluster: APICaller = ( endpoint: string, params?: Record, options?: CallAPIOptions ) => client.asScoped(request).callAsCurrentUser(endpoint, params, options); - return new Promise(resolve => resolve(new IndexPatternsService(callCluster))); + return new Promise(resolve => resolve(new IndexPatternsFetcher(callCluster))); }; const parseMetaFields = (metaFields: string | string[]) => { @@ -49,7 +49,7 @@ export function registerRoutes(core: CoreSetup) { return parsedFields; }; - const router = core.http.createRouter(); + const router = http.createRouter(); router.get( { path: '/api/index_patterns/_fields_for_wildcard', diff --git a/src/plugins/data/server/plugin.ts b/src/plugins/data/server/plugin.ts index 9cf08b0702e9e..e81250e653ebd 100644 --- a/src/plugins/data/server/plugin.ts +++ b/src/plugins/data/server/plugin.ts @@ -18,19 +18,21 @@ */ import { PluginInitializerContext, CoreSetup, CoreStart, Plugin } from '../../../core/server'; +import { IndexPatternsService } from './index_patterns'; import { ISearchSetup } from './search'; import { SearchService } from './search/search_service'; export interface DataPluginSetup { search: ISearchSetup; } - export class DataServerPlugin implements Plugin { private readonly searchService: SearchService; + private readonly indexPatterns = new IndexPatternsService(); constructor(initializerContext: PluginInitializerContext) { this.searchService = new SearchService(initializerContext); } public setup(core: CoreSetup) { + this.indexPatterns.setup(core); return { search: this.searchService.setup(core), }; diff --git a/test/api_integration/apis/index_patterns/es_errors/errors.js b/test/api_integration/apis/index_patterns/es_errors/errors.js index 7e04e3f7204d7..4e50b965211c2 100644 --- a/test/api_integration/apis/index_patterns/es_errors/errors.js +++ b/test/api_integration/apis/index_patterns/es_errors/errors.js @@ -26,7 +26,7 @@ import { createNoMatchingIndicesError, isNoMatchingIndicesError, convertEsError -} from '../../../../../src/legacy/server/index_patterns/service/lib/errors'; +} from '../../../../../src/plugins/data/server/index_patterns/fetcher/lib/errors'; import { getIndexNotFoundError, diff --git a/x-pack/legacy/plugins/apm/server/lib/index_pattern/getKueryBarIndexPattern.ts b/x-pack/legacy/plugins/apm/server/lib/index_pattern/getKueryBarIndexPattern.ts index 33d404009ae20..a5ba4573cfd58 100644 --- a/x-pack/legacy/plugins/apm/server/lib/index_pattern/getKueryBarIndexPattern.ts +++ b/x-pack/legacy/plugins/apm/server/lib/index_pattern/getKueryBarIndexPattern.ts @@ -7,7 +7,7 @@ import { Legacy } from 'kibana'; import { StaticIndexPattern } from 'ui/index_patterns'; import { APICaller } from 'src/core/server'; -import { IndexPatternsService } from '../../../../../../../src/legacy/server/index_patterns/service'; +import { IndexPatternsFetcher } from '../../../../../../../src/plugins/data/server'; import { Setup } from '../helpers/setup_request'; export const getKueryBarIndexPattern = async ({ @@ -21,7 +21,7 @@ export const getKueryBarIndexPattern = async ({ }) => { const { indices } = setup; - const indexPatternsService = new IndexPatternsService( + const indexPatternsFetcher = new IndexPatternsFetcher( (...rest: Parameters) => request.server.plugins.elasticsearch .getCluster('data') @@ -40,7 +40,7 @@ export const getKueryBarIndexPattern = async ({ const configuredIndices = indexNames.map(name => indicesMap[name]); - const fields = await indexPatternsService.getFieldsForWildcard({ + const fields = await indexPatternsFetcher.getFieldsForWildcard({ pattern: configuredIndices }); diff --git a/x-pack/legacy/plugins/beats_management/public/lib/adapters/elasticsearch/rest.ts b/x-pack/legacy/plugins/beats_management/public/lib/adapters/elasticsearch/rest.ts index d4a42ba662db4..526728bd77cac 100644 --- a/x-pack/legacy/plugins/beats_management/public/lib/adapters/elasticsearch/rest.ts +++ b/x-pack/legacy/plugins/beats_management/public/lib/adapters/elasticsearch/rest.ts @@ -7,16 +7,16 @@ import { fromKueryExpression, toElasticsearchQuery } from '@kbn/es-query'; import { isEmpty } from 'lodash'; import { npStart } from 'ui/new_platform'; -import { RestAPIAdapter } from '../rest_api/adapter_types'; import { ElasticsearchAdapter } from './adapter_types'; import { AutocompleteSuggestion } from '../../../../../../../../src/plugins/data/public'; +import { setup as data } from '../../../../../../../../src/legacy/core_plugins/data/public/legacy'; const getAutocompleteProvider = (language: string) => npStart.plugins.data.autocomplete.getProvider(language); export class RestElasticsearchAdapter implements ElasticsearchAdapter { private cachedIndexPattern: any = null; - constructor(private readonly api: RestAPIAdapter, private readonly indexPatternName: string) {} + constructor(private readonly indexPatternName: string) {} public isKueryValid(kuery: string): boolean { try { @@ -65,9 +65,9 @@ export class RestElasticsearchAdapter implements ElasticsearchAdapter { if (this.cachedIndexPattern) { return this.cachedIndexPattern; } - const res = await this.api.get( - `/api/index_patterns/_fields_for_wildcard?pattern=${this.indexPatternName}` - ); + const res = await data.indexPatterns.indexPatterns.getFieldsForWildcard({ + pattern: this.indexPatternName, + }); if (isEmpty(res.fields)) { return; } diff --git a/x-pack/legacy/plugins/beats_management/public/lib/compose/kibana.ts b/x-pack/legacy/plugins/beats_management/public/lib/compose/kibana.ts index 3d8ca51e006bf..2ebda89ba13fd 100644 --- a/x-pack/legacy/plugins/beats_management/public/lib/compose/kibana.ts +++ b/x-pack/legacy/plugins/beats_management/public/lib/compose/kibana.ts @@ -35,7 +35,7 @@ const onKibanaReady = chrome.dangerouslyGetActiveInjector; export function compose(): FrontendLibs { const api = new AxiosRestAPIAdapter(chrome.getXsrfToken(), chrome.getBasePath()); - const esAdapter = new RestElasticsearchAdapter(api, INDEX_NAMES.BEATS); + const esAdapter = new RestElasticsearchAdapter(INDEX_NAMES.BEATS); const elasticsearchLib = new ElasticsearchLib(esAdapter); const configBlocks = new ConfigBlocksLib( new RestConfigBlocksAdapter(api), diff --git a/x-pack/legacy/plugins/lens/server/routes/existing_fields.ts b/x-pack/legacy/plugins/lens/server/routes/existing_fields.ts index b6ff1e6ac757b..ad1af966983fb 100644 --- a/x-pack/legacy/plugins/lens/server/routes/existing_fields.ts +++ b/x-pack/legacy/plugins/lens/server/routes/existing_fields.ts @@ -11,10 +11,7 @@ import _ from 'lodash'; import { IScopedClusterClient } from 'src/core/server'; import { CoreSetup } from 'src/core/server'; import { BASE_API_URL } from '../../common'; -import { - FieldDescriptor, - IndexPatternsService, -} from '../../../../../../src/legacy/server/index_patterns/service'; +import { FieldDescriptor, IndexPatternsFetcher } from '../../../../../../src/plugins/data/server'; /** * The number of docs to sample to determine field empty status. @@ -42,11 +39,11 @@ export async function existingFieldsRoute(setup: CoreSetup) { async (context, req, res) => { const { indexPatternTitle } = req.params; const requestClient = context.core.elasticsearch.dataClient; - const indexPatternsService = new IndexPatternsService(requestClient.callAsCurrentUser); + const indexPatternsFetcher = new IndexPatternsFetcher(requestClient.callAsCurrentUser); const { fromDate, toDate, timeFieldName } = req.query; try { - const fields = await indexPatternsService.getFieldsForWildcard({ + const fields = await indexPatternsFetcher.getFieldsForWildcard({ pattern: indexPatternTitle, // TODO: Pull this from kibana advanced settings metaFields: ['_source', '_id', '_type', '_index', '_score'],