Support chunked data upload in iOS
Cronet currently accumulates all the upload data from the stream
and sends it on NSStreamEventEndEncountered when using NSMutableURLRequest to post data from a stream.
This CL implements a chunked data uploader to support this
functionality.
Related discuss:
https://groups.google.com/a/chromium.org/forum/#!topic/net-dev/I02k_dEiq1g
R=kapishnikov@chromium.org
Bug: 755463
Cq-Include-Trybots: master.tryserver.chromium.android:android_cronet_tester;master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs
Change-Id: I74aef03f4ffeee8847cd08c870e3d6825a99ccfd
Reviewed-on: https://chromium-review.googlesource.com/813445
Commit-Queue: Andrei Kapishnikov <kapishnikov@chromium.org>
Reviewed-by: Andrei Kapishnikov <kapishnikov@chromium.org>
Reviewed-by: Mark Cogan <marq@chromium.org>
Cr-Commit-Position: refs/heads/master@{#535023}
diff --git a/ios/net/BUILD.gn b/ios/net/BUILD.gn
index 797bbee..28b8845 100644
--- a/ios/net/BUILD.gn
+++ b/ios/net/BUILD.gn
@@ -31,6 +31,8 @@
configs += [ "//build/config/compiler:enable_arc" ]
sources = [
+ "chunked_data_stream_uploader.cc",
+ "chunked_data_stream_uploader.h",
"clients/crn_network_client_protocol.h",
"cookies/cookie_cache.cc",
"cookies/cookie_cache.h",
@@ -109,6 +111,7 @@
]
sources = [
+ "chunked_data_stream_uploader_unittest.cc",
"cookies/cookie_cache_unittest.cc",
"cookies/cookie_creation_time_manager_unittest.mm",
"cookies/cookie_store_ios_persistent_unittest.mm",