docs: private void handleUpdate(final TrackMetadataUpdate update) {
          if (update.metadata == null || update.metadata.trackType != CdjStatus.TrackType.REKORDBOX) {
              clearDeck(update);
          } else {
              // We can offer beat grid information for this device; check if we've already looked it up.
              final BeatGrid lastBeatGrid = hotCache.get(DeckReference.getDeckReference(update.player, 0));
              if (lastBeatGrid == null || !lastBeatGrid.dataReference.equals(update.metadata.trackReference)) {  // We have something new!
  
                  // First see if we can find the new preview in the hot cache
                  for (BeatGrid cached : hotCache.values()) {
                      if (cached.dataReference.equals(update.metadata.trackReference)) {  // Found a hot cue hit, use it.
                          updateBeatGrid(update, cached);
                          return;
                      }
                  }
  
                  // Not in the cache so try actually retrieving it.
                  if (activeRequests.add(update.player)) {  // We had to make sure we were not already asking for this track.
                      clearDeck(update);  // We won't know what it is until our request completes.
  
                      new Thread(new Runnable() {
                          @Override
                          public void run() {
                              try {
                                  BeatGrid grid = requestBeatGridInternal(update.metadata.trackReference, true);
                                  if (grid != null && grid.beatCount > 0) {
                                      updateBeatGrid(update, grid);
                                  }
                              } catch (Exception e) {
                                  logger.warn("Problem requesting beat grid from update" + update, e);
                              } finally {
                                  activeRequests.remove(update.player);
                              }
                          }
                      }, "Beat Grid request").start();
                  }
              }
          }
      }