Source
Creating a Source
import { SoapMongo, MongoSource } from '@soapjs/soap-node-mongo';
const soapMongo = await SoapMongo.create(mongoConfig);
const source = new MongoSource(soapMongo, 'characters');import { DatabaseContext } from '@soapjs/soap';
const context = new DatabaseContext(source, new CharacterMapper(), soapMongo.sessions);
const repo = new CharacterRepositoryMongo(context);The Source contract
interface Source<DocumentType> {
find(query?): Promise<DocumentType[]>;
count(query?): Promise<number>;
aggregate<T>(query): Promise<T[]>;
insert(query): Promise<DocumentType[]>;
update(query): Promise<UpdateStats>;
remove(query): Promise<RemoveStats>;
native<ResultType>(query): Promise<ResultType>; // since @soapjs/soap 0.10 / soap-node-mongo 0.7
}Read/write split
Last updated