Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(67)

Unified Diff: components/translate/core/browser/translate_ranker.h

Issue 2697703004: Allow TranslateRanker to override decisions taken by heuristics. (Closed)
Patch Set: Make ShouldSuppressBubbleUI easier to read. Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: components/translate/core/browser/translate_ranker.h
diff --git a/components/translate/core/browser/translate_ranker.h b/components/translate/core/browser/translate_ranker.h
index b10c303a2d646ddd6ccad29549faec61465a5307..3b095383b4d4880468e094dac0c6e23c4e2dac0f 100644
--- a/components/translate/core/browser/translate_ranker.h
+++ b/components/translate/core/browser/translate_ranker.h
@@ -28,37 +28,44 @@ class TranslateRanker : public KeyedService {
public:
TranslateRanker() = default;
- // Returns true if translate events logging is enabled.
- virtual bool IsLoggingEnabled() = 0;
-
- // Returns true if enforcement is enabled.
- virtual bool IsEnforcementEnabled() = 0;
-
- // Returns true if querying is enabled. Enabling enforcement will
- // automatically enable Query.
- virtual bool IsQueryEnabled() = 0;
-
// Returns the version id for the ranker model.
- virtual int GetModelVersion() const = 0;
+ virtual uint32_t GetModelVersion() const = 0;
// Returns true if executing the ranker model in the translation prompt
// context described by |translate_prefs|, |src_lang|, |dst_lang| and possibly
// other global browser context attributes suggests that the user should be
// prompted as to whether translation should be performed.
- virtual bool ShouldOfferTranslation(const TranslatePrefs& translate_prefs,
- const std::string& src_lang,
- const std::string& dst_lang) = 0;
-
- // Caches the translate event.
- virtual void AddTranslateEvent(
- const metrics::TranslateEventProto& translate_event,
- const GURL& url) = 0;
+ // TODO(hamelphi): Take only the proto as input and extract features from it.
+ virtual bool ShouldOfferTranslation(
+ const TranslatePrefs& translate_prefs,
+ const std::string& src_lang,
+ const std::string& dst_lang,
+ metrics::TranslateEventProto* translate_event) = 0;
// Transfers cached translate events to the given vector pointer and clears
// the cache.
virtual void FlushTranslateEvents(
std::vector<metrics::TranslateEventProto>* events) = 0;
+ // Record |translate_event| with the given |event_type| and |url|.
+ // |event_type| must be one of the values defined by
+ // metrics::TranslateEventProto::EventType.
+ virtual void RecordTranslateEvent(
+ int event_type,
+ const GURL& url,
+ metrics::TranslateEventProto* translate_event) = 0;
+
+ // If override is enabled, will return true and add |event_type| to
+ // |translate_event.decision_overrides()|. If override is disabled,
+ // returns false and finalize and record |translate_event| with
+ // |event_type| as |translate_event.event_type()|. |event_type|
+ // must be one of the values defined by
+ // metrics::TranslateEventProto::EventType.
+ virtual bool ShouldOverrideDecision(
+ int event_type,
+ const GURL& url,
+ metrics::TranslateEventProto* translate_event) = 0;
+
private:
DISALLOW_COPY_AND_ASSIGN(TranslateRanker);
};

Powered by Google App Engine
This is Rietveld 408576698