replaced by .editorconfig # ignore-this-changeset Differential Revision: https://phabricator.services.mozilla.com/D287843
63 lines
2.1 KiB
C++
63 lines
2.1 KiB
C++
/* 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/. */
|
|
|
|
#include "mozilla/dom/IntegrityViolationReportBody.h"
|
|
|
|
#include "mozilla/JSONWriter.h"
|
|
#include "mozilla/dom/BindingUtils.h"
|
|
#include "mozilla/dom/ReportingBinding.h"
|
|
|
|
namespace mozilla::dom {
|
|
|
|
IntegrityViolationReportBody::IntegrityViolationReportBody(
|
|
nsIGlobalObject* aGlobal, const nsACString& aDocumentURL,
|
|
const nsACString& aBlockedURL, const nsACString& aDestination,
|
|
const bool aReportOnly, const Nullable<IntegrityViolationReason> aReason)
|
|
: ReportBody(aGlobal),
|
|
mDocumentURL(aDocumentURL),
|
|
mBlockedURL(aBlockedURL),
|
|
mDestination(aDestination),
|
|
mReportOnly(aReportOnly),
|
|
mReason(aReason) {}
|
|
|
|
IntegrityViolationReportBody::~IntegrityViolationReportBody() = default;
|
|
|
|
JSObject* IntegrityViolationReportBody::WrapObject(
|
|
JSContext* aCx, JS::Handle<JSObject*> aGivenProto) {
|
|
return IntegrityViolationReportBody_Binding::Wrap(aCx, this, aGivenProto);
|
|
}
|
|
|
|
void IntegrityViolationReportBody::GetDocumentURL(nsACString& aURL) const {
|
|
aURL = mDocumentURL;
|
|
}
|
|
|
|
void IntegrityViolationReportBody::GetBlockedURL(nsACString& aURL) const {
|
|
aURL = mBlockedURL;
|
|
}
|
|
|
|
void IntegrityViolationReportBody::GetDestination(
|
|
nsACString& aDestination) const {
|
|
aDestination = mDestination;
|
|
}
|
|
|
|
bool IntegrityViolationReportBody::ReportOnly() const { return mReportOnly; }
|
|
|
|
Nullable<IntegrityViolationReason> IntegrityViolationReportBody::GetReason()
|
|
const {
|
|
return mReason;
|
|
}
|
|
|
|
void IntegrityViolationReportBody::ToJSON(JSONWriter& aJSONWriter) const {
|
|
aJSONWriter.StringProperty("documentURL", mDocumentURL);
|
|
aJSONWriter.StringProperty("blockedURL", mBlockedURL);
|
|
aJSONWriter.StringProperty("destination", mDestination);
|
|
aJSONWriter.BoolProperty("reportOnly", mReportOnly);
|
|
if (!mReason.IsNull()) {
|
|
nsAutoCString reason{GetEnumString(mReason.Value())};
|
|
aJSONWriter.StringProperty("reason", reason);
|
|
}
|
|
}
|
|
|
|
} // namespace mozilla::dom
|