Abstract Class: BaseRepository<K>
@hyperledger/identus-sdk v8.0.0
@hyperledger/identus-sdk / overview / BaseRepository
Abstract Class: BaseRepository<K>
Defined in: packages/lib/sdk/src/pluto/repositories/builders/BaseRepository.ts:14
BaseRepository
Encapsulate the functionality for interacting with the Store
Extended by
Type Parameters
| Type Parameter |
|---|
K extends TableName |
Constructors
Constructor
new BaseRepository<
K>(store:Store,name:K):BaseRepository<K>
Defined in: packages/lib/sdk/src/pluto/repositories/builders/BaseRepository.ts:20
Parameters
| Parameter | Type |
|---|---|
store | Store |
name | K |
Returns
BaseRepository<K>
Methods
delete()
delete(
uuid:string):Promise<void>
Defined in: packages/lib/sdk/src/pluto/repositories/builders/BaseRepository.ts:53
Parameters
| Parameter | Type |
|---|---|
uuid | string |
Returns
Promise<void>
getModels()
getModels(
query?:Query<CollectionSchemas[K]>):Promise<CollectionMap[K][]>
Defined in: packages/lib/sdk/src/pluto/repositories/builders/BaseRepository.ts:87
Search the Store for Models
Parameters
| Parameter | Type | Description |
|---|---|---|
query? | Query<CollectionSchemas[K]> | a Query object, a set of values and operators defining the query |
Returns
Promise<CollectionMap[K][]>
Array of matched Models
See
../types.ts
Examples
search for a model with uuid and name
repo.getModels({ selector: { uuid: "1", name: "eg" }})
search for models with uuid of 1 or 2
repo.getModels({ selector: { $or: [{ uuid: "1" }, { uuid: "2" }] }})
search for all models
repo.getModels()
Throws
Domain.Models if the query fails
insert()
insert(
model:CollectionMap[K]):Promise<CollectionMap[K]>
Defined in: packages/lib/sdk/src/pluto/repositories/builders/BaseRepository.ts:32
Persist the Model in the Store.
Parameters
| Parameter | Type | Description |
|---|---|---|
model | CollectionMap[K] | - |
Returns
Promise<CollectionMap[K]>
Throws
Domain.PlutoError.StoreInsertError if insert fails
update()
update(
model:CollectionMap[K]):Promise<void>
Defined in: packages/lib/sdk/src/pluto/repositories/builders/BaseRepository.ts:44
Parameters
| Parameter | Type |
|---|---|
model | CollectionMap[K] |
Returns
Promise<void>