fix(core): update

This commit is contained in:
Philipp Kunz 2021-11-12 19:02:29 +01:00
parent f50a61308c
commit 28d57efd9e
6 changed files with 15 additions and 14 deletions

View File

@ -13,7 +13,6 @@ stages:
- metadata - metadata
before_script: before_script:
- apt-get update && apt-get install -y libcurl3 libssl-dev openssl libssl1.0.0 mongodb
- npm install -g @shipzone/npmci - npm install -g @shipzone/npmci
# ==================== # ====================

View File

@ -60,4 +60,4 @@
"browserslist": [ "browserslist": [
"last 1 chrome versions" "last 1 chrome versions"
] ]
} }

View File

@ -202,7 +202,7 @@ tap.test('should store a new Truck', async () => {
tap.test('should use a cursor', async () => { tap.test('should use a cursor', async () => {
const cursor = await Truck.getCursor({}); const cursor = await Truck.getCursor({});
cursor.forEach(async truckArg => { cursor.forEach(async (truckArg) => {
console.log(truckArg.id); console.log(truckArg.id);
}); });
}); });

View File

@ -85,7 +85,7 @@ export function Manager<TManager extends IManager>(managerArg?: TManager | TDela
public static get manager() { public static get manager() {
let manager: TManager; let manager: TManager;
if (!managerArg) { if (!managerArg) {
manager = this.prototype.defaultManager manager = this.prototype.defaultManager;
} else if (managerArg['db']) { } else if (managerArg['db']) {
manager = managerArg as TManager; manager = managerArg as TManager;
} else { } else {
@ -96,7 +96,7 @@ export function Manager<TManager extends IManager>(managerArg?: TManager | TDela
public get manager() { public get manager() {
let manager: TManager; let manager: TManager;
if (!managerArg) { if (!managerArg) {
manager = this.defaultManager manager = this.defaultManager;
} else if (managerArg['db']) { } else if (managerArg['db']) {
manager = managerArg as TManager; manager = managerArg as TManager;
} else { } else {
@ -171,7 +171,7 @@ export class SmartdataCollection<T> {
/** /**
* finds an object in the DbCollection * finds an object in the DbCollection
*/ */
public async findOne(filterObject: any): Promise<any> { public async findOne(filterObject: any): Promise<any> {
await this.init(); await this.init();
const cursor = this.mongoDbCollection.find(filterObject); const cursor = this.mongoDbCollection.find(filterObject);
const result = await cursor.next(); const result = await cursor.next();

View File

@ -1,7 +1,7 @@
import * as plugins from './smartdata.plugins'; import * as plugins from './smartdata.plugins';
/** /**
* a wrapper for the native mongodb cursor. Exposes better * a wrapper for the native mongodb cursor. Exposes better
*/ */
export class SmartdataDbCursor<T = any> { export class SmartdataDbCursor<T = any> {
// STATIC // STATIC
@ -9,16 +9,16 @@ export class SmartdataDbCursor<T = any> {
// INSTANCE // INSTANCE
public mongodbCursor: plugins.mongodb.FindCursor<T>; public mongodbCursor: plugins.mongodb.FindCursor<T>;
constructor(cursorArg: plugins.mongodb.FindCursor<T>) { constructor(cursorArg: plugins.mongodb.FindCursor<T>) {
this.mongodbCursor = cursorArg this.mongodbCursor = cursorArg;
}; }
public async next(closeAtEnd = true) { public async next(closeAtEnd = true) {
const result = await this.mongodbCursor.next(); const result = await this.mongodbCursor.next();
if (!result && closeAtEnd) { if (!result && closeAtEnd) {
await this.close(); await this.close();
}; }
return result; return result;
}; }
public async forEach(forEachFuncArg: (itemArg: T) => Promise<any>, closeCursorAtEnd = true) { public async forEach(forEachFuncArg: (itemArg: T) => Promise<any>, closeCursorAtEnd = true) {
let currentValue: T; let currentValue: T;
@ -36,4 +36,4 @@ export class SmartdataDbCursor<T = any> {
public async close() { public async close() {
await this.mongodbCursor.close(); await this.mongodbCursor.close();
} }
} }

View File

@ -165,7 +165,9 @@ export class SmartDataDbDoc<T extends TImplements, TImplements, TManager extends
this: plugins.tsclass.typeFest.Class<T>, this: plugins.tsclass.typeFest.Class<T>,
filterArg: plugins.tsclass.typeFest.PartialDeep<T> filterArg: plugins.tsclass.typeFest.PartialDeep<T>
) { ) {
const cursor: SmartdataDbCursor<T> = await (this as any).collection.getCursor(convertFilterForMongoDb(filterArg)); const cursor: SmartdataDbCursor<T> = await (this as any).collection.getCursor(
convertFilterForMongoDb(filterArg)
);
return cursor; return cursor;
} }
@ -179,7 +181,7 @@ export class SmartDataDbDoc<T extends TImplements, TImplements, TManager extends
forEachFunction: (itemArg: T) => Promise<any> forEachFunction: (itemArg: T) => Promise<any>
) { ) {
const cursor: SmartdataDbCursor<T> = await (this as any).getCursor(filterArg); const cursor: SmartdataDbCursor<T> = await (this as any).getCursor(filterArg);
await cursor.forEach(forEachFunction) await cursor.forEach(forEachFunction);
} }
/** /**