BaseRepository
@hyperledger/identus-sdk v7.0.0
@hyperledger/identus-sdk / overview / BaseRepository
Abstract Class: BaseRepository<T>
Defined in: src/pluto/repositories/builders/BaseRepository.ts:14
BaseRepository
Encapsulate the functionality for interacting with the Store
Extended by
Type Parameters
| Type Parameter | 
|---|
| TextendsModel | 
Constructors
Constructor
new BaseRepository<
T>(store:Store,name:string):BaseRepository<T>
Defined in: src/pluto/repositories/builders/BaseRepository.ts:20
Parameters
| Parameter | Type | 
|---|---|
| store | Store | 
| name | string | 
Returns
BaseRepository<T>
Methods
delete()
delete(
uuid:string):Promise<void>
Defined in: src/pluto/repositories/builders/BaseRepository.ts:52
Parameters
| Parameter | Type | 
|---|---|
| uuid | string | 
Returns
Promise<void>
getModels()
getModels(
query?:Query<T>):Promise<T[]>
Defined in: src/pluto/repositories/builders/BaseRepository.ts:86
Search the Store for Models
Parameters
| Parameter | Type | Description | 
|---|---|---|
| query? | Query<T> | a Query object, a set of values and operators defining the query | 
Returns
Promise<T[]>
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:T):Promise<T>
Defined in: src/pluto/repositories/builders/BaseRepository.ts:32
Persist the Model in the Store.
Parameters
| Parameter | Type | Description | 
|---|---|---|
| model | T | 
Returns
Promise<T>
Throws
Domain.PlutoError.StoreInsertError if insert fails
update()
update(
model:T):Promise<void>
Defined in: src/pluto/repositories/builders/BaseRepository.ts:43
Parameters
| Parameter | Type | 
|---|---|
| model | T | 
Returns
Promise<void>