@@ -302,6 +302,7 @@ function init (env, ctx, server) {
302302 // field_2: another_value
303303 // }
304304 // }
305+ // TODO: tests, data models
305306 socket . on ( 'dbAdd' , function dbAdd ( data , callback ) {
306307 console . log ( LOG_WS + 'dbAdd client ID: ' , socket . client . id , ' data: ' , data ) ;
307308 var collection = supportedCollections [ data . collection ] ;
@@ -405,20 +406,22 @@ function init (env, ctx, server) {
405406 }
406407 // if not found create new record
407408 console . log ( LOG_DEDUP + 'Adding new record' ) ;
408- ctx . store . collection ( collection ) . insert ( data . data , function insertResult ( err , doc ) {
409+ ctx . store . collection ( collection ) . insertOne ( data . data , function insertResult ( err , ops ) {
409410 if ( err != null && err . message ) {
410411 console . log ( 'treatments data insertion error: ' , err . message ) ;
411412 return ;
412413 }
413414
415+ var doc = data . data ;
416+ doc . _id = ops . insertedId ;
414417 ctx . bus . emit ( 'data-update' , {
415418 type : data . collection
416419 , op : 'update'
417- , changes : ctx . ddata . processRawDataForRuntime ( doc . ops )
420+ , changes : ctx . ddata . processRawDataForRuntime ( [ doc ] )
418421 } ) ;
419422
420423 if ( callback ) {
421- callback ( doc . ops ) ;
424+ callback ( [ doc ] ) ;
422425 }
423426 ctx . bus . emit ( 'data-received' ) ;
424427 } ) ;
@@ -453,38 +456,42 @@ function init (env, ctx, server) {
453456
454457 } ) ;
455458
456- ctx . store . collection ( collection ) . insert ( data . data , function insertResult ( err , doc ) {
459+ ctx . store . collection ( collection ) . insertOne ( data . data , function insertResult ( err , ops ) {
457460 if ( err != null && err . message ) {
458461 console . log ( 'devicestatus insertion error: ' , err . message ) ;
459462 return ;
460463 }
461464
465+ var doc = data . data ;
466+ doc . _id = ops . insertedId ;
462467 ctx . bus . emit ( 'data-update' , {
463468 type : 'devicestatus'
464469 , op : 'update'
465- , changes : ctx . ddata . processRawDataForRuntime ( doc . ops )
470+ , changes : ctx . ddata . processRawDataForRuntime ( [ doc ] )
466471 } ) ;
467472
468473 if ( callback ) {
469- callback ( doc . ops ) ;
474+ callback ( [ doc ] ) ;
470475 }
471476 ctx . bus . emit ( 'data-received' ) ;
472477 } ) ;
473478 } else {
474- ctx . store . collection ( collection ) . insert ( data . data , function insertResult ( err , doc ) {
479+ ctx . store . collection ( collection ) . insertOne ( data . data , function insertResult ( err , ops ) {
475480 if ( err != null && err . message ) {
476481 console . log ( data . collection + ' insertion error: ' , err . message ) ;
477482 return ;
478483 }
479484
485+ var doc = data . data ;
486+ doc . _id = ops . insertedId ;
480487 ctx . bus . emit ( 'data-update' , {
481488 type : data . collection
482489 , op : 'update'
483- , changes : ctx . ddata . processRawDataForRuntime ( doc . ops )
490+ , changes : ctx . ddata . processRawDataForRuntime ( [ doc ] )
484491 } ) ;
485492
486493 if ( callback ) {
487- callback ( doc . ops ) ;
494+ callback ( [ doc ] ) ;
488495 }
489496 ctx . bus . emit ( 'data-received' ) ;
490497 } ) ;
0 commit comments