Index: chrome/browser/safe_browsing/incident_reporting/incident.h |
diff --git a/chrome/browser/safe_browsing/incident_reporting/incident.h b/chrome/browser/safe_browsing/incident_reporting/incident.h |
index 2fa84c9cfb8bf8fef20a249baaae7c2b50c50518..761816d636d86e28a4af694724e159ec09b69778 100644 |
--- a/chrome/browser/safe_browsing/incident_reporting/incident.h |
+++ b/chrome/browser/safe_browsing/incident_reporting/incident.h |
@@ -27,8 +27,16 @@ enum class IncidentType : int32_t { |
OMNIBOX_INTERACTION = 4, |
VARIATIONS_SEED_SIGNATURE = 5, |
RESOURCE_REQUEST = 6, |
+ SUSPICIOUS_MODULE = 7, |
// Values for new incident types go here. |
- NUM_TYPES = 7 |
+ NUM_TYPES = 8 |
+}; |
+ |
+// The level of consent required by the incident to be associated with a |
+// profile. |
+enum class MinimumProfileConsent { |
+ SAFE_BROWSING_ENABLED = 0, |
+ SAFE_BROWSING_EXTENDED_REPORTING_ENABLED = 1, |
}; |
// An abstract incident. Subclasses provide type-specific functionality to |
@@ -51,6 +59,10 @@ class Incident { |
// Returns the incident's payload. |
virtual scoped_ptr<ClientIncidentReport_IncidentData> TakePayload(); |
+ // Returns the minimum level of consent required for reporting of the |
+ // incident. |
+ virtual MinimumProfileConsent GetMinimumProfileConsent() const; |
+ |
protected: |
// Constructs the payload with an empty protobuf, setting its incident time to |
// the current time. |