code: function(refresh_id, is_safe) {
  
  		// first, refresh ticket must be cleared, cause otherwise scope may stay dirty forever
  		this._refresh_ticket = null;
  
  		if (this._last_refresh_id == refresh_id) {
  
  			this._refresh_cycle_count++;
  			if (this._refresh_cycle_count > Lava.schema.system.REFRESH_INFINITE_LOOP_THRESHOLD && !is_safe) {
  
  				return true; // infinite loop exception
  
  			}
  
  		} else {
  
  			this._last_refresh_id = refresh_id;
  			this._refresh_cycle_count = 0;
  
  		}
  
  		this._doRefresh();
  		return false;
  
  	}
docs: Called by {@link Lava.ScopeManager} during refresh loop. You should not call this method directly.
  Warning: violates code style with multiple return statements.
  
  @param {number} refresh_id The id of current refresh loop
  @param {boolean} [is_safe] Internal switch used to control infinite refresh loop exceptions
  @returns {boolean} <kw>true</kw> in case of infinite loop, and <kw>false</kw> in case of normal refresh