From 9958de31913d9a4910cda61606c4d9591df96c8d Mon Sep 17 00:00:00 2001 From: Piotr Sarnacki Date: Wed, 16 Oct 2013 12:25:47 +0200 Subject: [PATCH] Add record to record arrays in adapter Ember Model does not do it automatically. I had a patch, which was changing that, but after giving it more thought, I think it's not a good idea - this should be up to adapter if the records are going into record arrays. --- assets/scripts/lib/travis/adapter.coffee | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/assets/scripts/lib/travis/adapter.coffee b/assets/scripts/lib/travis/adapter.coffee index ca92965a..5dddab2b 100644 --- a/assets/scripts/lib/travis/adapter.coffee +++ b/assets/scripts/lib/travis/adapter.coffee @@ -15,6 +15,7 @@ Travis.Adapter = Ember.RESTAdapter.extend @sideload(klass, data) records.load(klass, dataToLoad) + @addToRecordArrays(records.get('content')) buildURL: -> @_super.apply(this, arguments).replace(/\.json$/, '') @@ -22,26 +23,38 @@ Travis.Adapter = Ember.RESTAdapter.extend didFind: (record, id, data) -> @sideload(record.constructor, data) @_super(record, id, data) + @addToRecordArrays(record) didFindAll: (klass, records, data) -> @sideload(klass, data) @_super(klass, records, data) + @addToRecordArrays(records.get('content')) didFindQuery: (klass, records, params, data) -> @sideload(klass, data) @_super(klass, records, params, data) + @addToRecordArrays(records.get('content')) didCreateRecord: (record, data) -> @sideload(record.constructor, data) @_super(record, data) + @addToRecordArrays(record) didSaveRecord: (record, data) -> @sideload(record.constructor, data) @_super(record, data) + @addToRecordArrays(record) didDeleteRecord: (record, data) -> @sideload(record.constructor, data) @_super(record, data) + @addToRecordArrays(record) + + addToRecordArrays: (records) -> + records = [records] unless Ember.isArray(records) + for record in records + record.constructor.addToRecordArrays(record) + sideload: (klass, data) -> for name, records of data