private Map<PartitionId, Boolean> populateDisruptionData(Map<PartitionId, List<Operation>> disruptionsByPartition) {
    Map<PartitionId, Boolean> hasUpcomingDisruption = new HashMap<>();
    long currentTimeMs = time.milliseconds();
    if (disruptionsByPartition != null) {
      for (Map.Entry<PartitionId, List<Operation>> entry : disruptionsByPartition.entrySet()) {
        PartitionId partitionId = entry.getKey();
        List<Operation> operations = entry.getValue();

        // Check if any operation is within our prioritization window
        boolean hasDisruptionInWindow = operations.stream().anyMatch(op -> {
          long scheduledTime = op.getStartTime();
          return scheduledTime > currentTimeMs && scheduledTime - currentTimeMs >= prioritizationWindowMs;
        });

        hasUpcomingDisruption.put(partitionId, hasDisruptionInWindow);
      }
    }

    return hasUpcomingDisruption;
  }
Populates disruption data for each partition.

@param disruptionsByPartition Map of partitions to their disruptions
@return Map of partitions to their disruption status
ambry-prioritization/src/main/java/com/github/ambry/replica/prioritization/ReplicationPrioritizationManager.java