Source code
Revision control
Copy as Markdown
Other Tools
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this file,
* You can obtain one at http://mozilla.org/MPL/2.0/. */
#ifndef RTCError_h_
#define RTCError_h_
#include "mozilla/dom/DOMException.h"
#include "mozilla/dom/Nullable.h"
#include "mozilla/dom/RTCErrorBinding.h"
namespace mozilla::dom {
class RTCError final : public DOMException {
public:
RTCError(const RTCErrorInit& aInit, const nsACString& aMessage);
JSObject* WrapObject(JSContext* aCx,
JS::Handle<JSObject*> aGivenProto) override;
static already_AddRefed<RTCError> Constructor(const GlobalObject& aGlobal,
const RTCErrorInit& aInit,
const nsACString& aMessage);
RTCErrorDetailType ErrorDetail() const { return mErrorDetail; }
Nullable<int32_t> GetSdpLineNumber() const { return mSdpLineNumber; }
Nullable<int32_t> GetSctpCauseCode() const { return mSctpCauseCode; }
Nullable<uint32_t> GetReceivedAlert() const { return mReceivedAlert; }
Nullable<uint32_t> GetSentAlert() const { return mSentAlert; }
private:
virtual ~RTCError() = default;
RTCErrorDetailType mErrorDetail;
Nullable<int32_t> mSdpLineNumber;
Nullable<int32_t> mSctpCauseCode;
Nullable<uint32_t> mReceivedAlert;
Nullable<uint32_t> mSentAlert;
};
} // namespace mozilla::dom
#endif // RTCError_h_