Reland "Remove old-style OnFailure callbacks"
This is a reland of 1a290e4495c8132e7ff2c44d78de5e1d7eefdb9e
after fixing the downstream projects.
Original change's description:
> Remove old-style OnFailure callbacks
>
> Also delete default implementation of new-style OnFailure,
> since it can't call the deprecated function.
>
> Deprecating the old-style OnFailure callback turned out to be impossible,
> since one can't have the new-style callback call the old-style one.
>
> Bug: chromium:589455
> Change-Id: Icf529ddb02d99ad9e205095d5a1fbeb0da91dd0e
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/146219
> Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
> Commit-Queue: Harald Alvestrand <hta@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#30570}
Bug: chromium:589455
Change-Id: I7227e3c6886c504043b019b621e45658cbd6fd53
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168941
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30583}
diff --git a/api/jsep.h b/api/jsep.h
index 86f4162..cf8aeb0 100644
--- a/api/jsep.h
+++ b/api/jsep.h
@@ -28,6 +28,7 @@
#include "absl/types/optional.h"
#include "api/rtc_error.h"
+#include "rtc_base/deprecation.h"
#include "rtc_base/ref_count.h"
#include "rtc_base/system/rtc_export.h"
@@ -222,11 +223,9 @@
// error code and a string.
// RTCError is non-copyable, so it must be passed using std::move.
// Earlier versions of the API used a string argument. This version
- // is deprecated; in order to let clients remove the old version, it has a
- // default implementation. If both versions are unimplemented, the
- // result will be a runtime error (stack overflow). This is intentional.
- virtual void OnFailure(RTCError error);
- virtual void OnFailure(const std::string& error);
+ // is removed; its functionality was the same as passing
+ // error.message.
+ virtual void OnFailure(RTCError error) = 0;
protected:
~CreateSessionDescriptionObserver() override = default;
@@ -237,9 +236,7 @@
public:
virtual void OnSuccess() = 0;
// See description in CreateSessionDescriptionObserver for OnFailure.
- virtual void OnFailure(RTCError error);
-
- virtual void OnFailure(const std::string& error);
+ virtual void OnFailure(RTCError error) = 0;
protected:
~SetSessionDescriptionObserver() override = default;