From 149f63985306473a4b1edb051b4dca505a437571 Mon Sep 17 00:00:00 2001 From: sainthkh Date: Tue, 24 Sep 2019 10:27:37 +0900 Subject: [PATCH 01/12] Removed @ts-ignore --- src/legacy/server/index_patterns/index.ts | 1 - src/legacy/server/index_patterns/service/lib/es_api.ts | 1 - src/legacy/server/index_patterns/service/lib/index.ts | 2 -- 3 files changed, 4 deletions(-) diff --git a/src/legacy/server/index_patterns/index.ts b/src/legacy/server/index_patterns/index.ts index eea8a4a998e2d..adf121dbec666 100644 --- a/src/legacy/server/index_patterns/index.ts +++ b/src/legacy/server/index_patterns/index.ts @@ -17,7 +17,6 @@ * under the License. */ -// @ts-ignore no types export { indexPatternsMixin } from './mixin'; export { IndexPatternsService, FieldDescriptor } from './service'; export { IndexPatternsServiceFactory } from './mixin'; diff --git a/src/legacy/server/index_patterns/service/lib/es_api.ts b/src/legacy/server/index_patterns/service/lib/es_api.ts index 63c1824784dbd..92b64fafddd66 100644 --- a/src/legacy/server/index_patterns/service/lib/es_api.ts +++ b/src/legacy/server/index_patterns/service/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/index.ts b/src/legacy/server/index_patterns/service/lib/index.ts index cd239b3753aa3..5fe3c93763c2d 100644 --- a/src/legacy/server/index_patterns/service/lib/index.ts +++ b/src/legacy/server/index_patterns/service/lib/index.ts @@ -18,7 +18,5 @@ */ export { getFieldCapabilities } from './field_capabilities'; -// @ts-ignore export { resolveTimePattern } from './resolve_time_pattern'; -// @ts-ignore export { createNoMatchingIndicesError } from './errors'; From 6e851ad5420e4d777fc021cbf2e991ecf6bc9a18 Mon Sep 17 00:00:00 2001 From: sainthkh Date: Tue, 24 Sep 2019 11:20:31 +0900 Subject: [PATCH 02/12] Moved files to plugins/data/server. --- src/legacy/server/index_patterns/index.ts | 5 ++++- src/legacy/server/index_patterns/mixin.ts | 5 +---- src/plugins/data/server/index.ts | 1 + .../data/server/index_patterns/index.ts | 20 +++++++++++++++++++ .../data}/server/index_patterns/routes.ts | 2 +- .../server/index_patterns/service/index.ts | 0 .../service/index_patterns_service.ts | 0 .../index_patterns/service/lib/errors.ts | 0 .../index_patterns/service/lib/es_api.test.js | 0 .../index_patterns/service/lib/es_api.ts | 0 .../__fixtures__/es_field_caps_response.json | 0 .../field_capabilities.test.js | 0 .../field_capabilities/field_capabilities.ts | 0 .../field_caps_response.test.js | 2 +- .../field_capabilities/field_caps_response.ts | 4 ++-- .../service/lib/field_capabilities/index.ts | 0 .../lib/field_capabilities/overrides.ts | 0 .../should_read_field_from_doc_values.ts | 0 .../index_patterns/service/lib/index.ts | 0 .../service/lib/resolve_time_pattern.test.js | 0 .../service/lib/resolve_time_pattern.ts | 0 .../lib/time_pattern_to_wildcard.test.ts | 0 .../service/lib/time_pattern_to_wildcard.ts | 0 23 files changed, 30 insertions(+), 9 deletions(-) create mode 100644 src/plugins/data/server/index_patterns/index.ts rename src/{legacy => plugins/data}/server/index_patterns/routes.ts (99%) rename src/{legacy => plugins/data}/server/index_patterns/service/index.ts (100%) rename src/{legacy => plugins/data}/server/index_patterns/service/index_patterns_service.ts (100%) rename src/{legacy => plugins/data}/server/index_patterns/service/lib/errors.ts (100%) rename src/{legacy => plugins/data}/server/index_patterns/service/lib/es_api.test.js (100%) rename src/{legacy => plugins/data}/server/index_patterns/service/lib/es_api.ts (100%) rename src/{legacy => plugins/data}/server/index_patterns/service/lib/field_capabilities/__fixtures__/es_field_caps_response.json (100%) rename src/{legacy => plugins/data}/server/index_patterns/service/lib/field_capabilities/field_capabilities.test.js (100%) rename src/{legacy => plugins/data}/server/index_patterns/service/lib/field_capabilities/field_capabilities.ts (100%) rename src/{legacy => plugins/data}/server/index_patterns/service/lib/field_capabilities/field_caps_response.test.js (98%) rename src/{legacy => plugins/data}/server/index_patterns/service/lib/field_capabilities/field_caps_response.ts (98%) rename src/{legacy => plugins/data}/server/index_patterns/service/lib/field_capabilities/index.ts (100%) rename src/{legacy => plugins/data}/server/index_patterns/service/lib/field_capabilities/overrides.ts (100%) rename src/{legacy => plugins/data}/server/index_patterns/service/lib/field_capabilities/should_read_field_from_doc_values.ts (100%) rename src/{legacy => plugins/data}/server/index_patterns/service/lib/index.ts (100%) rename src/{legacy => plugins/data}/server/index_patterns/service/lib/resolve_time_pattern.test.js (100%) rename src/{legacy => plugins/data}/server/index_patterns/service/lib/resolve_time_pattern.ts (100%) rename src/{legacy => plugins/data}/server/index_patterns/service/lib/time_pattern_to_wildcard.test.ts (100%) rename src/{legacy => plugins/data}/server/index_patterns/service/lib/time_pattern_to_wildcard.ts (100%) diff --git a/src/legacy/server/index_patterns/index.ts b/src/legacy/server/index_patterns/index.ts index adf121dbec666..cae5f3445b07b 100644 --- a/src/legacy/server/index_patterns/index.ts +++ b/src/legacy/server/index_patterns/index.ts @@ -18,5 +18,8 @@ */ export { indexPatternsMixin } from './mixin'; -export { IndexPatternsService, FieldDescriptor } from './service'; +export { + IndexPatternsService, + FieldDescriptor, +} from '../../../plugins/data/server/index_patterns/service'; export { IndexPatternsServiceFactory } from './mixin'; diff --git a/src/legacy/server/index_patterns/mixin.ts b/src/legacy/server/index_patterns/mixin.ts index 914bdc01063b9..fba450d87b15c 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 { IndexPatternsService } from '../../../plugins/data/server'; import KbnServer from '../kbn_server'; import { APICaller } from '../../../core/server'; import { Legacy } from '../../../../kibana'; -import { registerRoutes } from './routes'; export function indexPatternsMixin(kbnServer: KbnServer, server: Legacy.Server) { /** @@ -47,8 +46,6 @@ 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: { diff --git a/src/plugins/data/server/index.ts b/src/plugins/data/server/index.ts index 60734f25b46a3..29f1ecfe96f1f 100644 --- a/src/plugins/data/server/index.ts +++ b/src/plugins/data/server/index.ts @@ -25,3 +25,4 @@ export function plugin(initializerContext: PluginInitializerContext) { } export { DataServerPlugin as Plugin }; +export { IndexPatternsService, FieldDescriptor } from './index_patterns'; 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..a10da702773f2 --- /dev/null +++ b/src/plugins/data/server/index_patterns/index.ts @@ -0,0 +1,20 @@ +/* + * 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 { IndexPatternsService, FieldDescriptor } from './service'; diff --git a/src/legacy/server/index_patterns/routes.ts b/src/plugins/data/server/index_patterns/routes.ts similarity index 99% rename from src/legacy/server/index_patterns/routes.ts rename to src/plugins/data/server/index_patterns/routes.ts index 4fceae48fc587..296e735aaafe2 100644 --- a/src/legacy/server/index_patterns/routes.ts +++ b/src/plugins/data/server/index_patterns/routes.ts @@ -24,7 +24,7 @@ import { KibanaRequest, RequestHandlerContext, APICaller, -} from '../../../core/server'; +} from '../../../../core/server'; import { IndexPatternsService } from './service'; export function registerRoutes(core: InternalCoreSetup) { diff --git a/src/legacy/server/index_patterns/service/index.ts b/src/plugins/data/server/index_patterns/service/index.ts similarity index 100% rename from src/legacy/server/index_patterns/service/index.ts rename to src/plugins/data/server/index_patterns/service/index.ts diff --git a/src/legacy/server/index_patterns/service/index_patterns_service.ts b/src/plugins/data/server/index_patterns/service/index_patterns_service.ts similarity index 100% rename from src/legacy/server/index_patterns/service/index_patterns_service.ts rename to src/plugins/data/server/index_patterns/service/index_patterns_service.ts diff --git a/src/legacy/server/index_patterns/service/lib/errors.ts b/src/plugins/data/server/index_patterns/service/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/service/lib/errors.ts diff --git a/src/legacy/server/index_patterns/service/lib/es_api.test.js b/src/plugins/data/server/index_patterns/service/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/service/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/service/lib/es_api.ts similarity index 100% rename from src/legacy/server/index_patterns/service/lib/es_api.ts rename to src/plugins/data/server/index_patterns/service/lib/es_api.ts 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/service/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/service/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/service/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/service/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/service/lib/field_capabilities/field_capabilities.ts similarity index 100% rename from src/legacy/server/index_patterns/service/lib/field_capabilities/field_capabilities.ts rename to src/plugins/data/server/index_patterns/service/lib/field_capabilities/field_capabilities.ts diff --git a/src/legacy/server/index_patterns/service/lib/field_capabilities/field_caps_response.test.js b/src/plugins/data/server/index_patterns/service/lib/field_capabilities/field_caps_response.test.js similarity index 98% rename from src/legacy/server/index_patterns/service/lib/field_capabilities/field_caps_response.test.js rename to src/plugins/data/server/index_patterns/service/lib/field_capabilities/field_caps_response.test.js index dfdafeea3cd78..8627ac05822ee 100644 --- a/src/legacy/server/index_patterns/service/lib/field_capabilities/field_caps_response.test.js +++ b/src/plugins/data/server/index_patterns/service/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 '../../../../../../../legacy/utils'; 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/service/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/service/lib/field_capabilities/field_caps_response.ts index cb67d7c79cfac..4a4b1cc1978bc 100644 --- a/src/legacy/server/index_patterns/service/lib/field_capabilities/field_caps_response.ts +++ b/src/plugins/data/server/index_patterns/service/lib/field_capabilities/field_caps_response.ts @@ -18,9 +18,9 @@ */ import { uniq } from 'lodash'; -import { FieldDescriptor } from '../..'; +import { castEsToKbnFieldTypeName } from '../../../../../../../legacy/utils'; import { shouldReadFieldFromDocValues } from './should_read_field_from_doc_values'; -import { castEsToKbnFieldTypeName } from '../../../../../../plugins/data/common'; +import { FieldDescriptor } from '../..'; 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/service/lib/field_capabilities/index.ts similarity index 100% rename from src/legacy/server/index_patterns/service/lib/field_capabilities/index.ts rename to src/plugins/data/server/index_patterns/service/lib/field_capabilities/index.ts diff --git a/src/legacy/server/index_patterns/service/lib/field_capabilities/overrides.ts b/src/plugins/data/server/index_patterns/service/lib/field_capabilities/overrides.ts similarity index 100% rename from src/legacy/server/index_patterns/service/lib/field_capabilities/overrides.ts rename to src/plugins/data/server/index_patterns/service/lib/field_capabilities/overrides.ts 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/service/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/service/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/service/lib/index.ts similarity index 100% rename from src/legacy/server/index_patterns/service/lib/index.ts rename to src/plugins/data/server/index_patterns/service/lib/index.ts diff --git a/src/legacy/server/index_patterns/service/lib/resolve_time_pattern.test.js b/src/plugins/data/server/index_patterns/service/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/service/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/service/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/service/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/service/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/service/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/service/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/service/lib/time_pattern_to_wildcard.ts From 062ce3202a858249914224615188506c63748ecd Mon Sep 17 00:00:00 2001 From: sainthkh Date: Tue, 24 Sep 2019 13:10:51 +0900 Subject: [PATCH 03/12] Renamed IndexPatternsService to IndexPatternsFetcher and created new IndexPatternsService --- src/fixtures/logstash_fields.js | 2 +- .../server/lib/get_index_pattern_service.js | 4 +-- src/legacy/server/index_patterns/index.ts | 4 +-- src/legacy/server/index_patterns/mixin.ts | 6 ++-- src/plugins/data/server/index.ts | 6 +++- .../{service => fetcher}/index.ts | 3 +- .../index_patterns_fetcher.ts} | 2 +- .../{service => fetcher}/lib/errors.ts | 0 .../{service => fetcher}/lib/es_api.test.js | 0 .../{service => fetcher}/lib/es_api.ts | 0 .../__fixtures__/es_field_caps_response.json | 0 .../field_capabilities.test.js | 0 .../field_capabilities/field_capabilities.ts | 2 +- .../field_caps_response.test.js | 0 .../field_capabilities/field_caps_response.ts | 2 +- .../lib/field_capabilities/index.ts | 1 + .../lib/field_capabilities/overrides.ts | 2 +- .../should_read_field_from_doc_values.ts | 0 .../{service => fetcher}/lib/index.ts | 2 +- .../lib/resolve_time_pattern.test.js | 0 .../lib/resolve_time_pattern.ts | 0 .../lib/time_pattern_to_wildcard.test.ts | 0 .../lib/time_pattern_to_wildcard.ts | 0 .../data/server/index_patterns/index.ts | 3 +- .../index_patterns/index_patterns_service.ts | 34 +++++++++++++++++++ .../data/server/index_patterns/routes.ts | 18 +++++----- src/plugins/data/server/plugin.ts | 12 ++++++- .../apis/index_patterns/es_errors/errors.js | 2 +- .../plugins/lens/server/routes/index_stats.ts | 7 ++-- 29 files changed, 80 insertions(+), 32 deletions(-) rename src/plugins/data/server/index_patterns/{service => fetcher}/index.ts (89%) rename src/plugins/data/server/index_patterns/{service/index_patterns_service.ts => fetcher/index_patterns_fetcher.ts} (98%) rename src/plugins/data/server/index_patterns/{service => fetcher}/lib/errors.ts (100%) rename src/plugins/data/server/index_patterns/{service => fetcher}/lib/es_api.test.js (100%) rename src/plugins/data/server/index_patterns/{service => fetcher}/lib/es_api.ts (100%) rename src/plugins/data/server/index_patterns/{service => fetcher}/lib/field_capabilities/__fixtures__/es_field_caps_response.json (100%) rename src/plugins/data/server/index_patterns/{service => fetcher}/lib/field_capabilities/field_capabilities.test.js (100%) rename src/plugins/data/server/index_patterns/{service => fetcher}/lib/field_capabilities/field_capabilities.ts (97%) rename src/plugins/data/server/index_patterns/{service => fetcher}/lib/field_capabilities/field_caps_response.test.js (100%) rename src/plugins/data/server/index_patterns/{service => fetcher}/lib/field_capabilities/field_caps_response.ts (99%) rename src/plugins/data/server/index_patterns/{service => fetcher}/lib/field_capabilities/index.ts (91%) rename src/plugins/data/server/index_patterns/{service => fetcher}/lib/field_capabilities/overrides.ts (95%) rename src/plugins/data/server/index_patterns/{service => fetcher}/lib/field_capabilities/should_read_field_from_doc_values.ts (100%) rename src/plugins/data/server/index_patterns/{service => fetcher}/lib/index.ts (90%) rename src/plugins/data/server/index_patterns/{service => fetcher}/lib/resolve_time_pattern.test.js (100%) rename src/plugins/data/server/index_patterns/{service => fetcher}/lib/resolve_time_pattern.ts (100%) rename src/plugins/data/server/index_patterns/{service => fetcher}/lib/time_pattern_to_wildcard.test.ts (100%) rename src/plugins/data/server/index_patterns/{service => fetcher}/lib/time_pattern_to_wildcard.ts (100%) create mode 100644 src/plugins/data/server/index_patterns/index_patterns_service.ts diff --git a/src/fixtures/logstash_fields.js b/src/fixtures/logstash_fields.js index 8299604d3a28c..f3fafc98a5bf4 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/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 cae5f3445b07b..75d0038cf9023 100644 --- a/src/legacy/server/index_patterns/index.ts +++ b/src/legacy/server/index_patterns/index.ts @@ -19,7 +19,7 @@ export { indexPatternsMixin } from './mixin'; export { - IndexPatternsService, + IndexPatternsFetcher, FieldDescriptor, -} from '../../../plugins/data/server/index_patterns/service'; +} 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 fba450d87b15c..7e1b7d4befb1f 100644 --- a/src/legacy/server/index_patterns/mixin.ts +++ b/src/legacy/server/index_patterns/mixin.ts @@ -17,7 +17,7 @@ * under the License. */ -import { IndexPatternsService } from '../../../plugins/data/server'; +import { IndexPatternsFetcher } from '../../../plugins/data/server'; import KbnServer from '../kbn_server'; import { APICaller } from '../../../core/server'; import { Legacy } from '../../../../kibana'; @@ -30,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,4 +50,4 @@ export function indexPatternsMixin(kbnServer: KbnServer, server: Legacy.Server) export type IndexPatternsServiceFactory = (args: { callCluster: (endpoint: string, clientParams: any, options: any) => Promise; -}) => IndexPatternsService; +}) => IndexPatternsFetcher; diff --git a/src/plugins/data/server/index.ts b/src/plugins/data/server/index.ts index 29f1ecfe96f1f..d1e96cbcf7c5c 100644 --- a/src/plugins/data/server/index.ts +++ b/src/plugins/data/server/index.ts @@ -25,4 +25,8 @@ export function plugin(initializerContext: PluginInitializerContext) { } export { DataServerPlugin as Plugin }; -export { IndexPatternsService, FieldDescriptor } from './index_patterns'; +export { + IndexPatternsFetcher, + FieldDescriptor, + shouldReadFieldFromDocValues, +} from './index_patterns'; diff --git a/src/plugins/data/server/index_patterns/service/index.ts b/src/plugins/data/server/index_patterns/fetcher/index.ts similarity index 89% rename from src/plugins/data/server/index_patterns/service/index.ts rename to src/plugins/data/server/index_patterns/fetcher/index.ts index 496c4ba7b5b6f..19306696885db 100644 --- a/src/plugins/data/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/plugins/data/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/plugins/data/server/index_patterns/service/index_patterns_service.ts rename to src/plugins/data/server/index_patterns/fetcher/index_patterns_fetcher.ts index 6c32d99ad83f9..96613e993a99a 100644 --- a/src/plugins/data/server/index_patterns/service/index_patterns_service.ts +++ b/src/plugins/data/server/index_patterns/fetcher/index_patterns_fetcher.ts @@ -32,7 +32,7 @@ export interface FieldDescriptor { subType?: string; } -export class IndexPatternsService { +export class IndexPatternsFetcher { private _callDataCluster: APICaller; constructor(callDataCluster: APICaller) { diff --git a/src/plugins/data/server/index_patterns/service/lib/errors.ts b/src/plugins/data/server/index_patterns/fetcher/lib/errors.ts similarity index 100% rename from src/plugins/data/server/index_patterns/service/lib/errors.ts rename to src/plugins/data/server/index_patterns/fetcher/lib/errors.ts diff --git a/src/plugins/data/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/plugins/data/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/plugins/data/server/index_patterns/service/lib/es_api.ts b/src/plugins/data/server/index_patterns/fetcher/lib/es_api.ts similarity index 100% rename from src/plugins/data/server/index_patterns/service/lib/es_api.ts rename to src/plugins/data/server/index_patterns/fetcher/lib/es_api.ts diff --git a/src/plugins/data/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/plugins/data/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/plugins/data/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/plugins/data/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/plugins/data/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/plugins/data/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/plugins/data/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/plugins/data/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 100% rename from src/plugins/data/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 diff --git a/src/plugins/data/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 99% rename from src/plugins/data/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 4a4b1cc1978bc..4b0fe66cfd941 100644 --- a/src/plugins/data/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 @@ -20,7 +20,7 @@ import { uniq } from 'lodash'; import { castEsToKbnFieldTypeName } from '../../../../../../../legacy/utils'; import { shouldReadFieldFromDocValues } from './should_read_field_from_doc_values'; -import { FieldDescriptor } from '../..'; +import { FieldDescriptor } from '../../../fetcher'; interface FieldCapObject { type: string; diff --git a/src/plugins/data/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/plugins/data/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/plugins/data/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/plugins/data/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/plugins/data/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/plugins/data/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/plugins/data/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/plugins/data/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/plugins/data/server/index_patterns/service/lib/index.ts b/src/plugins/data/server/index_patterns/fetcher/lib/index.ts similarity index 90% rename from src/plugins/data/server/index_patterns/service/lib/index.ts rename to src/plugins/data/server/index_patterns/fetcher/lib/index.ts index 5fe3c93763c2d..20e74d2b1a579 100644 --- a/src/plugins/data/server/index_patterns/service/lib/index.ts +++ b/src/plugins/data/server/index_patterns/fetcher/lib/index.ts @@ -17,6 +17,6 @@ * under the License. */ -export { getFieldCapabilities } from './field_capabilities'; +export { getFieldCapabilities, shouldReadFieldFromDocValues } from './field_capabilities'; export { resolveTimePattern } from './resolve_time_pattern'; export { createNoMatchingIndicesError } from './errors'; diff --git a/src/plugins/data/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/plugins/data/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/plugins/data/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/plugins/data/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/plugins/data/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/plugins/data/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/plugins/data/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/plugins/data/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 index a10da702773f2..6937fa22c4e5d 100644 --- a/src/plugins/data/server/index_patterns/index.ts +++ b/src/plugins/data/server/index_patterns/index.ts @@ -17,4 +17,5 @@ * under the License. */ -export { IndexPatternsService, FieldDescriptor } from './service'; +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..37a3efc8ab8b9 --- /dev/null +++ b/src/plugins/data/server/index_patterns/index_patterns_service.ts @@ -0,0 +1,34 @@ +/* + * 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 { registerRoutes } from './routes'; + +interface SetupDependencies { + http: CoreSetup['http']; + elasticsearch: CoreSetup['elasticsearch']; +} + +export class IndexPatternsService { + public setup({ http, elasticsearch }: SetupDependencies) { + registerRoutes(http, elasticsearch); + } + + public start() {} +} diff --git a/src/plugins/data/server/index_patterns/routes.ts b/src/plugins/data/server/index_patterns/routes.ts index 296e735aaafe2..32fb4635f536c 100644 --- a/src/plugins/data/server/index_patterns/routes.ts +++ b/src/plugins/data/server/index_patterns/routes.ts @@ -20,19 +20,19 @@ import { first } from 'rxjs/operators'; import { schema } from '@kbn/config-schema'; import { - InternalCoreSetup, KibanaRequest, RequestHandlerContext, APICaller, + CoreSetup, } from '../../../../core/server'; -import { IndexPatternsService } from './service'; +import { IndexPatternsFetcher } from './fetcher'; -export function registerRoutes(core: InternalCoreSetup) { - 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 getIndexPatternsFetcher = async (request: KibanaRequest): Promise => { + const client = await elasticsearch.dataClient$.pipe(first()).toPromise(); const callCluster: APICaller = (endpoint, params, options) => 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[]) => { @@ -45,7 +45,7 @@ export function registerRoutes(core: InternalCoreSetup) { return parsedFields; }; - const router = core.http.createRouter('/api/index_patterns'); + const router = http.createRouter(); router.get( { path: '/_fields_for_wildcard', @@ -59,7 +59,7 @@ export function registerRoutes(core: InternalCoreSetup) { }, }, async (context: RequestHandlerContext, request: any, response: any) => { - const indexPatterns = await getIndexPatternsService(request); + const indexPatterns = await getIndexPatternsFetcher(request); const { pattern, meta_fields: metaFields } = request.query; let parsedFields: string[] = []; @@ -102,7 +102,7 @@ export function registerRoutes(core: InternalCoreSetup) { }, }, async (context: RequestHandlerContext, request: any, response: any) => { - const indexPatterns = await getIndexPatternsService(request); + const indexPatterns = await getIndexPatternsFetcher(request); const { pattern, interval, look_back: lookBack, meta_fields: metaFields } = request.query; let parsedFields: string[] = []; diff --git a/src/plugins/data/server/plugin.ts b/src/plugins/data/server/plugin.ts index 3aa04c7a5be7a..6ed5c87f3cf5d 100644 --- a/src/plugins/data/server/plugin.ts +++ b/src/plugins/data/server/plugin.ts @@ -18,10 +18,20 @@ */ import { PluginInitializerContext, CoreSetup, CoreStart, Plugin } from '../../../core/server'; +import { IndexPatternsService } from './index_patterns'; export class DataServerPlugin implements Plugin { + private readonly indexPatterns = new IndexPatternsService(); + constructor(initializerContext: PluginInitializerContext) {} - public setup(core: CoreSetup) {} + + public setup(core: CoreSetup) { + this.indexPatterns.setup({ + http: core.http, + elasticsearch: core.elasticsearch, + }); + } + public start(core: CoreStart) {} public stop() {} } 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/lens/server/routes/index_stats.ts b/x-pack/legacy/plugins/lens/server/routes/index_stats.ts index d746de0a2878a..c7a16100ee510 100644 --- a/x-pack/legacy/plugins/lens/server/routes/index_stats.ts +++ b/x-pack/legacy/plugins/lens/server/routes/index_stats.ts @@ -9,10 +9,7 @@ import { get } from 'lodash'; import { schema } from '@kbn/config-schema'; import { SearchResponse } from 'elasticsearch'; import { CoreSetup } from 'src/core/server'; -import { - IndexPatternsService, - FieldDescriptor, -} from '../../../../../../src/legacy/server/index_patterns/service'; +import { IndexPatternsFetcher, FieldDescriptor } from '../../../../../../src/plugins/data/server'; type Document = Record; @@ -45,7 +42,7 @@ export async function initStatsRoute(setup: CoreSetup) { async (context, req, res) => { const requestClient = context.core.elasticsearch.dataClient; - const indexPatternsService = new IndexPatternsService(requestClient.callAsCurrentUser); + const indexPatternsService = new IndexPatternsFetcher(requestClient.callAsCurrentUser); const { fromDate, toDate, timeZone, timeFieldName, fields, size } = req.body; From 6a8444f74055badcbe5e118cab8845edcbc3b603 Mon Sep 17 00:00:00 2001 From: sainthkh Date: Tue, 24 Sep 2019 17:21:53 +0900 Subject: [PATCH 04/12] Set routerPath. --- src/plugins/data/server/index_patterns/routes.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/plugins/data/server/index_patterns/routes.ts b/src/plugins/data/server/index_patterns/routes.ts index 32fb4635f536c..a0ec6fd5fc7b8 100644 --- a/src/plugins/data/server/index_patterns/routes.ts +++ b/src/plugins/data/server/index_patterns/routes.ts @@ -46,6 +46,8 @@ export function registerRoutes(http: CoreSetup['http'], elasticsearch: CoreSetup }; const router = http.createRouter(); + router.routerPath = '/api/index_patterns'; + router.get( { path: '/_fields_for_wildcard', From c68382506d9aba178b606d0514ea51851dc3d804 Mon Sep 17 00:00:00 2001 From: sainthkh Date: Tue, 24 Sep 2019 17:32:52 +0900 Subject: [PATCH 05/12] Fixed type error. --- src/legacy/server/kbn_server.d.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/legacy/server/kbn_server.d.ts b/src/legacy/server/kbn_server.d.ts index 126cb8f8b9475..b7b0b24fafe6d 100644 --- a/src/legacy/server/kbn_server.d.ts +++ b/src/legacy/server/kbn_server.d.ts @@ -124,5 +124,6 @@ export default class KbnServer { export { Server, Request, ResponseToolkit } from 'hapi'; // Re-export commonly accessed api types. -export { IndexPatternsService } from './index_patterns'; +// For backword compatibility. +export { IndexPatternsFetcher as IndexPatternsService } from './index_patterns'; export { SavedObjectsService, SavedObjectsClient } from 'src/core/server'; From 738860e2a1c3f1e6fd254cf2c137cda22d3a776d Mon Sep 17 00:00:00 2001 From: sainthkh Date: Wed, 25 Sep 2019 07:52:47 +0900 Subject: [PATCH 06/12] Changed beats_management _fields_for_wildcard request with data/public/legacy api. --- .../index_patterns/index_patterns/index_patterns.ts | 10 +++++++++- .../public/lib/adapters/elasticsearch/rest.ts | 10 +++++----- .../beats_management/public/lib/compose/kibana.ts | 2 +- 3 files changed, 15 insertions(+), 7 deletions(-) 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 d4435b6bdd66c..318eeff24cda3 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(); @@ -94,6 +94,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/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), From 5315f22450250c3a58c61269a22bd5dd35612e2e Mon Sep 17 00:00:00 2001 From: sainthkh Date: Fri, 27 Sep 2019 11:51:22 +0900 Subject: [PATCH 07/12] Fixed changed paths. --- .../fetcher/lib/field_capabilities/field_caps_response.test.js | 2 +- .../fetcher/lib/field_capabilities/field_caps_response.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/plugins/data/server/index_patterns/fetcher/lib/field_capabilities/field_caps_response.test.js b/src/plugins/data/server/index_patterns/fetcher/lib/field_capabilities/field_caps_response.test.js index 8627ac05822ee..7a430cff70696 100644 --- a/src/plugins/data/server/index_patterns/fetcher/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 '../../../../../../../legacy/utils'; +import { getKbnFieldType } from '../../../../../common'; import { readFieldCapsResponse } from './field_caps_response'; import esResponse from './__fixtures__/es_field_caps_response.json'; diff --git a/src/plugins/data/server/index_patterns/fetcher/lib/field_capabilities/field_caps_response.ts b/src/plugins/data/server/index_patterns/fetcher/lib/field_capabilities/field_caps_response.ts index 4b0fe66cfd941..cd3303021ee08 100644 --- a/src/plugins/data/server/index_patterns/fetcher/lib/field_capabilities/field_caps_response.ts +++ b/src/plugins/data/server/index_patterns/fetcher/lib/field_capabilities/field_caps_response.ts @@ -18,7 +18,7 @@ */ import { uniq } from 'lodash'; -import { castEsToKbnFieldTypeName } from '../../../../../../../legacy/utils'; +import { castEsToKbnFieldTypeName } from '../../../../../common'; import { shouldReadFieldFromDocValues } from './should_read_field_from_doc_values'; import { FieldDescriptor } from '../../../fetcher'; From c42fc81389037252c2669de913a277c3a33cd4c2 Mon Sep 17 00:00:00 2001 From: sainthkh Date: Tue, 29 Oct 2019 10:23:32 +0900 Subject: [PATCH 08/12] Fixes crashes after merge. --- src/plugins/data/server/index_patterns/routes.ts | 6 +++--- .../legacy/plugins/lens/server/routes/existing_fields.ts | 9 +++------ 2 files changed, 6 insertions(+), 9 deletions(-) diff --git a/src/plugins/data/server/index_patterns/routes.ts b/src/plugins/data/server/index_patterns/routes.ts index defa801304ce8..7975e923e219b 100644 --- a/src/plugins/data/server/index_patterns/routes.ts +++ b/src/plugins/data/server/index_patterns/routes.ts @@ -28,9 +28,9 @@ import { } from '../../../../core/server'; import { IndexPatternsFetcher } from './fetcher'; -export function registerRoutes(core: CoreSetup) { +export function registerRoutes(http: CoreSetup['http'], elasticsearch: CoreSetup['elasticsearch']) { const getIndexPatternsService = async (request: KibanaRequest): Promise => { - const client = await core.elasticsearch.dataClient$.pipe(first()).toPromise(); + const client = await elasticsearch.dataClient$.pipe(first()).toPromise(); const callCluster: APICaller = ( endpoint: string, params?: Record, @@ -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/x-pack/legacy/plugins/lens/server/routes/existing_fields.ts b/x-pack/legacy/plugins/lens/server/routes/existing_fields.ts index ed9de067fdc48..450fbd0ad9974 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'], From 39901dbef5cdf766673920271a99d14de670e4d5 Mon Sep 17 00:00:00 2001 From: sainthkh Date: Tue, 29 Oct 2019 10:25:46 +0900 Subject: [PATCH 09/12] Updated path for clarity. --- .../fetcher/lib/field_capabilities/field_caps_response.test.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/plugins/data/server/index_patterns/fetcher/lib/field_capabilities/field_caps_response.test.js b/src/plugins/data/server/index_patterns/fetcher/lib/field_capabilities/field_caps_response.test.js index 7a430cff70696..dc7fef6d6136e 100644 --- a/src/plugins/data/server/index_patterns/fetcher/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 '../../../../../common'; +import { getKbnFieldType } from '../../../../../../data/common'; import { readFieldCapsResponse } from './field_caps_response'; import esResponse from './__fixtures__/es_field_caps_response.json'; From 0f0f4a5580116fe68c79d5e12474de633d4b9b9d Mon Sep 17 00:00:00 2001 From: sainthkh Date: Tue, 29 Oct 2019 10:32:15 +0900 Subject: [PATCH 10/12] Applied Plugin interface to service. --- .../server/index_patterns/index_patterns_service.ts | 10 +++------- src/plugins/data/server/plugin.ts | 5 +---- 2 files changed, 4 insertions(+), 11 deletions(-) diff --git a/src/plugins/data/server/index_patterns/index_patterns_service.ts b/src/plugins/data/server/index_patterns/index_patterns_service.ts index 37a3efc8ab8b9..30d199c0e522e 100644 --- a/src/plugins/data/server/index_patterns/index_patterns_service.ts +++ b/src/plugins/data/server/index_patterns/index_patterns_service.ts @@ -18,15 +18,11 @@ */ import { CoreSetup } from 'kibana/server'; +import { Plugin } from '../../../../core/server'; import { registerRoutes } from './routes'; -interface SetupDependencies { - http: CoreSetup['http']; - elasticsearch: CoreSetup['elasticsearch']; -} - -export class IndexPatternsService { - public setup({ http, elasticsearch }: SetupDependencies) { +export class IndexPatternsService implements Plugin { + public setup({ http, elasticsearch }: CoreSetup) { registerRoutes(http, elasticsearch); } diff --git a/src/plugins/data/server/plugin.ts b/src/plugins/data/server/plugin.ts index b1dd54f52f7a3..e81250e653ebd 100644 --- a/src/plugins/data/server/plugin.ts +++ b/src/plugins/data/server/plugin.ts @@ -32,10 +32,7 @@ export class DataServerPlugin implements Plugin { this.searchService = new SearchService(initializerContext); } public setup(core: CoreSetup) { - this.indexPatterns.setup({ - http: core.http, - elasticsearch: core.elasticsearch, - }); + this.indexPatterns.setup(core); return { search: this.searchService.setup(core), }; From 1f477a55438428df6b8b900d6308551eb9402e0f Mon Sep 17 00:00:00 2001 From: sainthkh Date: Wed, 30 Oct 2019 08:53:26 +0900 Subject: [PATCH 11/12] Fixed test failure caused by non camel case local variable name. --- x-pack/legacy/plugins/lens/server/routes/existing_fields.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) 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 450fbd0ad9974..31edb45b5de55 100644 --- a/x-pack/legacy/plugins/lens/server/routes/existing_fields.ts +++ b/x-pack/legacy/plugins/lens/server/routes/existing_fields.ts @@ -39,11 +39,11 @@ export async function existingFieldsRoute(setup: CoreSetup) { async (context, req, res) => { const { indexPatternTitle } = req.params; const requestClient = context.core.elasticsearch.dataClient; - const IndexPatternsFetcher = new IndexPatternsFetcher(requestClient.callAsCurrentUser); + const indexPatternsFetcher = new IndexPatternsFetcher(requestClient.callAsCurrentUser); const { fromDate, toDate, timeFieldName } = req.query; try { - const fields = await IndexPatternsFetcher.getFieldsForWildcard({ + const fields = await indexPatternsFetcher.getFieldsForWildcard({ pattern: indexPatternTitle, // TODO: Pull this from kibana advanced settings metaFields: ['_source', '_id', '_type', '_index', '_score'], From 392e408c0d551a7839224cee3f4e2dbef6394434 Mon Sep 17 00:00:00 2001 From: sainthkh Date: Fri, 1 Nov 2019 07:24:16 +0900 Subject: [PATCH 12/12] Fixed import to IndexPatternsService to IndexPatternsFetcher. --- .../apm/server/lib/index_pattern/getKueryBarIndexPattern.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) 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 });