@@ -12,11 +12,11 @@ module.exports = function (db, name) {
1212 function embed ( resource , e ) {
1313 e && [ ] . concat ( e )
1414 . forEach ( function ( externalResource ) {
15- if ( db . object [ externalResource ] ) {
15+ if ( db . get ( externalResource ) . value ) {
1616 var query = { }
1717 var singularResource = pluralize . singular ( name )
1818 query [ singularResource + 'Id' ] = resource . id
19- resource [ externalResource ] = db ( externalResource ) . where ( query )
19+ resource [ externalResource ] = db . get ( externalResource ) . filter ( query ) . value ( )
2020 }
2121 } )
2222 }
@@ -26,9 +26,9 @@ module.exports = function (db, name) {
2626 e && [ ] . concat ( e )
2727 . forEach ( function ( innerResource ) {
2828 var plural = pluralize ( innerResource )
29- if ( db . object [ plural ] ) {
29+ if ( db . get ( plural ) . value ( ) ) {
3030 var prop = innerResource + 'Id'
31- resource [ innerResource ] = db ( plural ) . getById ( resource [ prop ] )
31+ resource [ innerResource ] = db . get ( plural ) . getById ( resource [ prop ] ) . value ( )
3232 }
3333 } )
3434 }
@@ -42,7 +42,7 @@ module.exports = function (db, name) {
4242 function list ( req , res , next ) {
4343
4444 // Resource chain
45- var chain = db ( name ) . chain ( )
45+ var chain = db . get ( name )
4646
4747 // Remove q, _start, _end, ... from req.query to avoid filtering using those
4848 // parameters
@@ -66,7 +66,7 @@ module.exports = function (db, name) {
6666 // Automatically delete query parameters that can't be found
6767 // in the database
6868 Object . keys ( req . query ) . forEach ( function ( query ) {
69- var arr = db ( name ) . value ( )
69+ var arr = db . get ( name ) . value ( )
7070 for ( var i in arr ) {
7171 if (
7272 _ . has ( arr [ i ] , query ) ||
@@ -183,7 +183,7 @@ module.exports = function (db, name) {
183183 var _embed = req . query . _embed
184184 var _expand = req . query . _expand
185185 var id = utils . toNative ( req . params . id )
186- var resource = db ( name ) . getById ( id )
186+ var resource = db . get ( name ) . getById ( id ) . value ( )
187187
188188 if ( resource ) {
189189 // Clone resource to avoid making changes to the underlying object
@@ -209,8 +209,9 @@ module.exports = function (db, name) {
209209 req . body [ key ] = utils . toNative ( req . body [ key ] )
210210 }
211211
212- var resource = db ( name )
212+ var resource = db . get ( name )
213213 . insert ( req . body )
214+ . value ( )
214215
215216 res . status ( 201 )
216217 res . locals . data = resource
@@ -225,10 +226,13 @@ module.exports = function (db, name) {
225226 }
226227
227228 var id = utils . toNative ( req . params . id )
229+ var chain = db . get ( name )
228230
229- var resource = req . method === 'PATCH' ?
230- db ( name ) . updateById ( id , req . body ) :
231- db ( name ) . replaceById ( id , req . body )
231+ chain = req . method === 'PATCH' ?
232+ chain . updateById ( id , req . body ) :
233+ chain . replaceById ( id , req . body )
234+
235+ var resource = chain . value ( )
232236
233237 if ( resource ) {
234238 res . locals . data = resource
@@ -239,13 +243,13 @@ module.exports = function (db, name) {
239243
240244 // DELETE /name/:id
241245 function destroy ( req , res , next ) {
242- var resource = db ( name ) . removeById ( utils . toNative ( req . params . id ) )
246+ var resource = db . get ( name ) . removeById ( utils . toNative ( req . params . id ) ) . value ( )
243247
244248 // Remove dependents documents
245- var removable = db . _ . getRemovable ( db . object )
249+ var removable = db . _ . getRemovable ( db . state ( ) )
246250
247251 _ . each ( removable , function ( item ) {
248- db ( item . name ) . removeById ( item . id )
252+ db . get ( item . name ) . removeById ( item . id ) . value ( )
249253 } )
250254
251255 if ( resource ) {
0 commit comments