Skip to content

Instantly share code, notes, and snippets.

@benpickles
Created August 17, 2010 09:16
Show Gist options
  • Save benpickles/529044 to your computer and use it in GitHub Desktop.
Save benpickles/529044 to your computer and use it in GitHub Desktop.
var localStoragePlusRest = function() {
var rest_args = Array.prototype.slice.call(arguments)
return function(klass) {
var local = Model.LocalStorage(klass)
var rest = Model.RestPersistence.apply(
Model.RestPersistence, rest_args)(klass)
return {
create: function(model, callback) {
local.create(model, jQuery.noop)
rest.create(model, callback)
},
destroy: function(model, callback) {
local.destroy(model, jQuery.noop)
rest.destroy(model, callback)
},
read: function(callback) {
var models
local.read(function(read) { models = read })
rest.read(function(read) {
read.unshift(models.length, 0)
models.splice.apply(models, read)
callback(models)
})
},
update: function(model, callback) {
local.update(model, jQuery.noop)
rest.update(model, callback)
}
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment