Sha256: 5342504fe7c821b464b30029c12d96c5909df071f080f868399c1b46a05cc80a
Contents?: true
Size: 923 Bytes
Versions: 6
Compression:
Stored size: 923 Bytes
Contents
#= require ./base class Ultimate.Backbone.Collection extends Backbone.Collection readyDeferred: null loaded: false loadedTimeStamp: null expireTime: Infinity constructor: (models, options = {}) -> Ultimate.Backbone.debug ".Collection.constructor()", @ @expireTime = options.expireTime if options.expireTime? super reset: (models, options) -> @loadedTimeStamp = new Date() @loaded = true super ready: (callback, fetchOptions) -> lifeTime = if @loadedTimeStamp then (new Date() - @loadedTimeStamp) else 0 if expired = lifeTime > @expireTime @readyDeferred = null if not @loaded or expired @readyDeferred ||= @fetch(fetchOptions) @readyDeferred.done => callback.apply @ else callback.apply @ abort: -> if @readyDeferred? if @readyDeferred.state() is 'pending' @readyDeferred.abort() @readyDeferred = null
Version data entries
6 entries across 6 versions & 1 rubygems