blob: 22350d177f7daec79a989c2e39225b4d4962b152 [file] [log] [blame]
// Copyright 2018 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
package org.chromium.chrome.browser.browserservices;
import org.chromium.base.annotations.JNINamespace;
import org.chromium.chrome.browser.tab.Tab;
import org.chromium.content_public.browser.WebContents;
/**
* An interface and classes to record User Keyed Metrics relevant to Trusted Web Activities. This
* will allow us to concentrate on the use cases for the most used TWAs.
*/
public abstract class UkmRecorder {
/**
* Records a TWA has been opened in given tab.
*/
abstract void recordTwaOpened(Tab tab);
/**
* The actual recorder.
*/
@JNINamespace("browserservices")
static class Bridge extends UkmRecorder {
@Override
public void recordTwaOpened(Tab tab) {
nativeRecordOpen(tab.getWebContents());
}
}
private static native void nativeRecordOpen(WebContents webContents);
}