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
Returns
ElasticsearchDriver
Methods
bulk()
> bulk(indexName, documents): Promise<void>
Defined in: search-elasticsearch/src/index.ts:201
Parameters
indexName
string
documents
Returns
Promise<void>
Implementation of
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
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
index()
> index(indexName, document): Promise<void>
Defined in: search-elasticsearch/src/index.ts:197
Parameters
indexName
string
document
Returns
Promise<void>
Implementation of
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
Returns
Promise<void>
Implementation of
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
search()
> search(indexName, query): Promise<SearchResult>
Defined in: search-elasticsearch/src/index.ts:254
Parameters
indexName
string
query
Returns
Promise<SearchResult>