Datachannel: Use absl::optional for maxRetransmits and maxRetransmitTime.
These parameters are nullable in the JS API.
This allows cleaner handling of "unset" vs "set" in Chrome.
Backwards compatibility note: Behavior should not change, even for users
who set the values explicitly to -1 in the DataChannelInit struct.
Those who try to read back the value will get a compile-time error.
Bug: chromium:854385
Change-Id: Ib488ca5f70bc24ba8b4a3f71b506434c4d2c60b2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/131381
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27507}
diff --git a/api/data_channel_interface.cc b/api/data_channel_interface.cc
index 240ccbe..d299ced 100644
--- a/api/data_channel_interface.cc
+++ b/api/data_channel_interface.cc
@@ -24,6 +24,14 @@
return 0;
}
+absl::optional<int> DataChannelInterface::maxRetransmitsOpt() const {
+ return absl::nullopt;
+}
+
+absl::optional<int> DataChannelInterface::maxPacketLifeTime() const {
+ return absl::nullopt;
+}
+
std::string DataChannelInterface::protocol() const {
return std::string();
}