code: @Override
      public void changed(@NonNull DatabaseChange change) {
          synchronized (lock) {
              if (willUpdate) {
                  return; // Already a pending update scheduled
              }
  
              if (!observing) { return; }
  
              // Schedule an update, respecting the updateInterval:
              long updateDelay = lastUpdatedAt + DEFAULT_LIVE_QUERY_UPDATE_INTERVAL - System.currentTimeMillis();
              updateDelay = Math.max(0, Math.min(DEFAULT_LIVE_QUERY_UPDATE_INTERVAL, updateDelay));
              update(updateDelay);
          }
      }
docs: ---------------------------------------------