Add GetTransportParametersOffer method for DatagramTransportInterface

This change adds missing GetTransportParametersOffer, which is required for datagram transport setup. We have exactly the same method in MediaTransportInterface. It's possible to add a separate interface, which will be used in both Media and Datagram transports, but I do not want to overcomplicate it now until we know more about future of media and datagram transports.


Bug: webrtc:9719
Change-Id: I8b6c9ebc9522acba75f74da2e18e4bb1eb0d1e4c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/137861
Commit-Queue: Anton Sukhanov <sukhanov@webrtc.org>
Reviewed-by: Bjorn Mellem <mellem@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28011}
This commit is contained in:
Anton Sukhanov
2019-05-20 18:09:42 -07:00
committed by Commit Bot
parent 04a3cc1ad9
commit c701dec22b

View File

@ -16,6 +16,7 @@
#include <string>
#include <utility>
#include "absl/types/optional.h"
#include "api/array_view.h"
#include "api/congestion_control_interface.h"
#include "api/media_transport_interface.h"
@ -93,6 +94,18 @@ class DatagramTransportInterface {
// SetDataTransportSink(nullptr) before the data transport is destroyed or
// before new sink is set.
virtual void SetDatagramSink(DatagramSinkInterface* sink) = 0;
// Retrieves callers config (i.e. media transport offer) that should be passed
// to the callee, before the call is connected. Such config is opaque to SDP
// (sdp just passes it through). The config is a binary blob, so SDP may
// choose to use base64 to serialize it (or any other approach that guarantees
// that the binary blob goes through). This should only be called for the
// caller's perspective.
//
// TODO(sukhanov): Make pure virtual.
virtual absl::optional<std::string> GetTransportParametersOffer() const {
return absl::nullopt;
}
};
} // namespace webrtc