Skip to content

basalt / search-elasticsearch/src / ElasticsearchDriver

Class: ElasticsearchDriver ​

Defined in: search-elasticsearch/src/index.ts:85

Search backend contract. The core talks to this; drivers talk to the engine. Every operation is tenant-scoped: search must only ever return documents whose tenantId matches the query.

Implements ​

Constructors ​

Constructor ​

> new ElasticsearchDriver(options): ElasticsearchDriver

Defined in: search-elasticsearch/src/index.ts:93

Parameters ​

options ​

ElasticsearchDriverOptions

Returns ​

ElasticsearchDriver

Methods ​

bulk() ​

> bulk(indexName, documents): Promise<void>

Defined in: search-elasticsearch/src/index.ts:201

Parameters ​

indexName ​

string

documents ​

SearchDocument[]

Returns ​

Promise<void>

Implementation of ​

SearchDriver.bulk


clear() ​

> clear(indexName): Promise<void>

Defined in: search-elasticsearch/src/index.ts:221

Drops every document in the index — every tenant's. Used by a whole-index reindex({ all: true }) and by tests.

Parameters ​

indexName ​

string

Returns ​

Promise<void>

Implementation of ​

SearchDriver.clear


clearTenant() ​

> clearTenant(indexName, tenantId): Promise<void>

Defined in: search-elasticsearch/src/index.ts:229

_delete_by_query on the same term: { tenantId } every search is scoped by, so the documents removed are exactly the ones that tenant could find.

Parameters ​

indexName ​

string

tenantId ​

string

Returns ​

Promise<void>

Implementation of ​

SearchDriver.clearTenant


index() ​

> index(indexName, document): Promise<void>

Defined in: search-elasticsearch/src/index.ts:197

Parameters ​

indexName ​

string

document ​

SearchDocument

Returns ​

Promise<void>

Implementation of ​

SearchDriver.index


register() ​

> register(index): Promise<void>

Defined in: search-elasticsearch/src/index.ts:172

Optional: called once per index at boot with its config.

Parameters ​

index ​

IndexDefinition

Returns ​

Promise<void>

Implementation of ​

SearchDriver.register


remove() ​

> remove(indexName, tenantId, id): Promise<void>

Defined in: search-elasticsearch/src/index.ts:212

Parameters ​

indexName ​

string

tenantId ​

string

id ​

string

Returns ​

Promise<void>

Implementation of ​

SearchDriver.remove


> search(indexName, query): Promise<SearchResult>

Defined in: search-elasticsearch/src/index.ts:254

Parameters ​

indexName ​

string

query ​

SearchQuery

Returns ​

Promise<SearchResult>

Implementation of ​

SearchDriver.search

Released under the MIT License.