     timeSinceTouch = timestamp() - promise.timestamp
     timeSinceTouch < config.cacheExpiry
 
+  ###*
+  @protected
+  @method up.proxy.get
+  ###
   get = (request) ->
     key = cacheKey(request)
     if promise = cache[key]

        promise
    else
      u.debug("Cache miss for %o (%o)", request.url, request)
#      $('body').css('background-color': 'yellow')
      undefined
      
  set = (request, promise) ->
    trim()
    key = cacheKey(request)
    promise.timestamp = timestamp()
    cache[key] = promise
    promise
    
  remove = (request) ->
    key = cacheKey(request)
    delete cache[key]
    
  clear = ->
    cache = {}
  

    clearTimeout(delayTimer)
    delayTimer = null

  ###*
  @protected
  @method up.proxy.preload
  @return
    A promise that will be resolved when the request was loaded and cached
  ###
  preload = (link, options) ->
    options = u.options()
    ensureIsIdempotent(options)
