Removes DataFrameSource arguments from Http2Adapter methods and implementations.

Also adds a compatibility method to ease the transition while callers are updated.

PiperOrigin-RevId: 700011707
diff --git a/quiche/http2/adapter/adapter_impl_comparison_test.cc b/quiche/http2/adapter/adapter_impl_comparison_test.cc
index 11fe362..1713bd8 100644
--- a/quiche/http2/adapter/adapter_impl_comparison_test.cc
+++ b/quiche/http2/adapter/adapter_impl_comparison_test.cc
@@ -64,7 +64,7 @@
   const int kConnectionWindowIncrease = 192 * 1024;
 
   const int32_t nghttp2_stream_id =
-      nghttp2_adapter->SubmitRequest(request_headers, nullptr, true, nullptr);
+      nghttp2_adapter->SubmitRequest(request_headers, true, nullptr);
 
   // Both the connection and stream flow control windows are increased.
   nghttp2_adapter->SubmitWindowUpdate(0, kConnectionWindowIncrease);
@@ -77,7 +77,7 @@
             nghttp2_window);
 
   const int32_t oghttp2_stream_id =
-      oghttp2_adapter->SubmitRequest(request_headers, nullptr, true, nullptr);
+      oghttp2_adapter->SubmitRequest(request_headers, true, nullptr);
   // Both the connection and stream flow control windows are increased.
   oghttp2_adapter->SubmitWindowUpdate(0, kConnectionWindowIncrease);
   oghttp2_adapter->SubmitWindowUpdate(oghttp2_stream_id,
diff --git a/quiche/http2/adapter/http2_adapter.h b/quiche/http2/adapter/http2_adapter.h
index d4dccca..339bdf7 100644
--- a/quiche/http2/adapter/http2_adapter.h
+++ b/quiche/http2/adapter/http2_adapter.h
@@ -122,16 +122,25 @@
   // be nullptr if the request does not have a body. If |end_stream| is true,
   // the adapter will set the fin bit on the request HEADERS frame.
   virtual int32_t SubmitRequest(absl::Span<const Header> headers,
-                                std::unique_ptr<DataFrameSource> data_source,
                                 bool end_stream, void* user_data) = 0;
+  // Deprecated
+  int32_t SubmitRequest(absl::Span<const Header> headers,
+                        nullptr_t /*data_source*/, bool end_stream,
+                        void* user_data) {
+    return SubmitRequest(headers, end_stream, user_data);
+  }
 
   // Returns 0 on success. |data_source| may be nullptr if the response does not
   // have a body. If |end_stream| is true, the adapter will set the fin bit on
   // the response HEADERS frame.
   virtual int SubmitResponse(Http2StreamId stream_id,
                              absl::Span<const Header> headers,
-                             std::unique_ptr<DataFrameSource> data_source,
                              bool end_stream) = 0;
+  // Deprecated
+  int SubmitResponse(Http2StreamId stream_id, absl::Span<const Header> headers,
+                     nullptr_t /*data_source*/, bool end_stream) {
+    return SubmitResponse(stream_id, headers, end_stream);
+  }
 
   // Queues trailers to be sent after any outstanding data on the stream with ID
   // |stream_id|. Returns 0 on success.
diff --git a/quiche/http2/adapter/nghttp2_adapter.cc b/quiche/http2/adapter/nghttp2_adapter.cc
index fd889c4..6e9aaa5 100644
--- a/quiche/http2/adapter/nghttp2_adapter.cc
+++ b/quiche/http2/adapter/nghttp2_adapter.cc
@@ -300,11 +300,8 @@
   }
 }
 
-int32_t NgHttp2Adapter::SubmitRequest(
-    absl::Span<const Header> headers,
-    std::unique_ptr<DataFrameSource> data_source, bool end_stream,
-    void* stream_user_data) {
-  QUICHE_DCHECK(data_source == nullptr);
+int32_t NgHttp2Adapter::SubmitRequest(absl::Span<const Header> headers,
+                                      bool end_stream, void* stream_user_data) {
   auto nvs = GetNghttp2Nvs(headers);
   std::unique_ptr<nghttp2_data_provider> provider;
 
@@ -325,9 +322,7 @@
 
 int NgHttp2Adapter::SubmitResponse(Http2StreamId stream_id,
                                    absl::Span<const Header> headers,
-                                   std::unique_ptr<DataFrameSource> data_source,
                                    bool end_stream) {
-  QUICHE_DCHECK(data_source == nullptr);
   auto nvs = GetNghttp2Nvs(headers);
   std::unique_ptr<nghttp2_data_provider> provider;
   if (!end_stream) {
diff --git a/quiche/http2/adapter/nghttp2_adapter.h b/quiche/http2/adapter/nghttp2_adapter.h
index 69f5805..1fadd68 100644
--- a/quiche/http2/adapter/nghttp2_adapter.h
+++ b/quiche/http2/adapter/nghttp2_adapter.h
@@ -75,12 +75,14 @@
   void MarkDataConsumedForStream(Http2StreamId stream_id,
                                  size_t num_bytes) override;
 
+  // For the deprecated overload.
+  using Http2Adapter::SubmitRequest;
   int32_t SubmitRequest(absl::Span<const Header> headers,
-                        std::unique_ptr<DataFrameSource> data_source,
                         bool end_stream, void* user_data) override;
 
+  // For the deprecated overload.
+  using Http2Adapter::SubmitResponse;
   int SubmitResponse(Http2StreamId stream_id, absl::Span<const Header> headers,
-                     std::unique_ptr<DataFrameSource> data_source,
                      bool end_stream) override;
 
   int SubmitTrailer(Http2StreamId stream_id,
diff --git a/quiche/http2/adapter/oghttp2_adapter.cc b/quiche/http2/adapter/oghttp2_adapter.cc
index 9fb7e8c..321eca6 100644
--- a/quiche/http2/adapter/oghttp2_adapter.cc
+++ b/quiche/http2/adapter/oghttp2_adapter.cc
@@ -139,19 +139,14 @@
       stream_id, TranslateErrorCode(error_code)));
 }
 
-int32_t OgHttp2Adapter::SubmitRequest(
-    absl::Span<const Header> headers,
-    std::unique_ptr<DataFrameSource> data_source, bool end_stream,
-    void* user_data) {
-  QUICHE_DCHECK(data_source == nullptr);
+int32_t OgHttp2Adapter::SubmitRequest(absl::Span<const Header> headers,
+                                      bool end_stream, void* user_data) {
   return session_->SubmitRequest(headers, end_stream, user_data);
 }
 
 int OgHttp2Adapter::SubmitResponse(Http2StreamId stream_id,
                                    absl::Span<const Header> headers,
-                                   std::unique_ptr<DataFrameSource> data_source,
                                    bool end_stream) {
-  QUICHE_DCHECK(data_source == nullptr);
   return session_->SubmitResponse(stream_id, headers, end_stream);
 }
 
diff --git a/quiche/http2/adapter/oghttp2_adapter.h b/quiche/http2/adapter/oghttp2_adapter.h
index 400aa87..2af239f 100644
--- a/quiche/http2/adapter/oghttp2_adapter.h
+++ b/quiche/http2/adapter/oghttp2_adapter.h
@@ -53,11 +53,13 @@
   void MarkDataConsumedForStream(Http2StreamId stream_id,
                                  size_t num_bytes) override;
   void SubmitRst(Http2StreamId stream_id, Http2ErrorCode error_code) override;
+  // For the deprecated overload.
+  using Http2Adapter::SubmitRequest;
   int32_t SubmitRequest(absl::Span<const Header> headers,
-                        std::unique_ptr<DataFrameSource> data_source,
                         bool end_stream, void* user_data) override;
+  // For the deprecated overload.
+  using Http2Adapter::SubmitResponse;
   int SubmitResponse(Http2StreamId stream_id, absl::Span<const Header> headers,
-                     std::unique_ptr<DataFrameSource> data_source,
                      bool end_stream) override;
 
   int SubmitTrailer(Http2StreamId stream_id,