Clean up / improve client instantiation docs.
Signed-off-by: Eric Peterson <ericpeterson@spotify.com>
This commit is contained in:
@@ -0,0 +1,5 @@
|
||||
---
|
||||
'@backstage/plugin-search-backend-module-elasticsearch': patch
|
||||
---
|
||||
|
||||
Improved documentation on the `ElasticSearchSearchEngine.newClient()` method.
|
||||
@@ -133,7 +133,7 @@ used internally by the Elasticsearch engine plugin. For example:
|
||||
|
||||
```typescript
|
||||
import { isOpenSearchCompatible } from '@backstage/plugin-search-backend-module-elasticsearch';
|
||||
import { Client as ElasticClient } from '@elastic/elastic-search';
|
||||
import { Client as ElasticClient } from '@elastic/elasticsearch';
|
||||
import { Client as OpenSearchClient } from '@opensearch-project/opensearch';
|
||||
|
||||
const client = searchEngine.newClient(options => {
|
||||
|
||||
+15
-3
@@ -171,9 +171,21 @@ export class ElasticSearchSearchEngine implements SearchEngine {
|
||||
}
|
||||
|
||||
/**
|
||||
* Create a custom search client from the derived elastic search
|
||||
* configuration. This need not be the same client that the engine uses
|
||||
* internally.
|
||||
* Create a custom search client from the derived search client configuration.
|
||||
* This need not be the same client that the engine uses internally.
|
||||
*
|
||||
* @example Instantiate an instance of an Elasticsearch client.
|
||||
* ```ts
|
||||
* import { isOpenSearchCompatible } from '@backstage/plugin-search-backend-module-elasticsearch';
|
||||
* import { Client } from '@elastic/elasticsearch';
|
||||
*
|
||||
* const client = searchEngine.newClient<Client>(options => {
|
||||
* if (!isOpenSearchCompatible(options)) {
|
||||
* return new Client(options);
|
||||
* }
|
||||
* throw new Error('Incompatible options provided');
|
||||
* });
|
||||
* ```
|
||||
*/
|
||||
newClient<T>(create: (options: ElasticSearchClientOptions) => T): T {
|
||||
return create(this.elasticSearchClientOptions);
|
||||
|
||||
Reference in New Issue
Block a user