@Override
  public void fetchNextResponse(final long offset) throws Exception {
    generateNextTsFileResponse(offset).ifPresent(super::offer);

    // poll and clean previous response
    final CachedSubscriptionPollResponse previousResponse;
    if (Objects.isNull(previousResponse = poll())) {
      LOGGER.warn(
          "SubscriptionEventTsFileResponse {} is empty when fetching next response (broken invariant)",
          this);
    } else {
      previousResponse.closeMemoryBlock();
    }
  }
The {@code SubscriptionEventTsFileResponse} class extends {@link
SubscriptionEventExtendableResponse} to manage subscription responses related to time series
files. The actual payload can include {@link FileInitPayload}, {@link FilePiecePayload}, and
{@link FileSealPayload}, allowing for detailed control over file data streaming.
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/subscription/event/response/SubscriptionEventTsFileResponse.java