summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFirst-name Last-name <amalova@google.com>2018-09-25 14:22:37 +0000
committerCommit Bot <commit-bot@chromium.org>2018-09-25 14:22:37 +0000
commita3b89bdb34877bb0ea90aaa0d207969ad943d4fc (patch)
tree3b4c03331c638a271203e0be344ebbf7878f872c
parentda360f3ff1a7319365bdf438268b6bf9d1abf6e2 (diff)
downloadwebview_support_interfaces-a3b89bdb34877bb0ea90aaa0d207969ad943d4fc.tar.gz
[WebView Support Library] Support TracingController API.
Add boundary interface and support lib glue for TracingController. Introduce a new class which adapts common code between framework and support library API and forward calls to the Chromium internal implementation of TracingController. Bug: 821792 Change-Id: I032cb57d61c5bd2fc8012e4d3f85f68ce22742d0 Reviewed-on: https://chromium-review.googlesource.com/1225874 Commit-Queue: Anna Malova <amalova@chromium.org> Reviewed-by: Nate Fischer <ntfschr@chromium.org> Reviewed-by: Tobias Sargeant <tobiasjs@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#593921} Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src Cr-Mirrored-Commit: 4c3cd553d6401aa479cdaa32913a3f5d3e883933
-rw-r--r--BUILD.gn1
-rw-r--r--src/org/chromium/support_lib_boundary/TracingControllerBoundaryInterface.java21
-rw-r--r--src/org/chromium/support_lib_boundary/WebViewProviderFactoryBoundaryInterface.java1
-rw-r--r--src/org/chromium/support_lib_boundary/util/Features.java6
4 files changed, 29 insertions, 0 deletions
diff --git a/BUILD.gn b/BUILD.gn
index 7c49831..c43edc3 100644
--- a/BUILD.gn
+++ b/BUILD.gn
@@ -14,6 +14,7 @@ android_library("boundary_interface_java") {
"src/org/chromium/support_lib_boundary/ServiceWorkerControllerBoundaryInterface.java",
"src/org/chromium/support_lib_boundary/ServiceWorkerWebSettingsBoundaryInterface.java",
"src/org/chromium/support_lib_boundary/StaticsBoundaryInterface.java",
+ "src/org/chromium/support_lib_boundary/TracingControllerBoundaryInterface.java",
"src/org/chromium/support_lib_boundary/VisualStateCallbackBoundaryInterface.java",
"src/org/chromium/support_lib_boundary/WebMessageBoundaryInterface.java",
"src/org/chromium/support_lib_boundary/WebMessageCallbackBoundaryInterface.java",
diff --git a/src/org/chromium/support_lib_boundary/TracingControllerBoundaryInterface.java b/src/org/chromium/support_lib_boundary/TracingControllerBoundaryInterface.java
new file mode 100644
index 0000000..84b7a1e
--- /dev/null
+++ b/src/org/chromium/support_lib_boundary/TracingControllerBoundaryInterface.java
@@ -0,0 +1,21 @@
+// 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.support_lib_boundary;
+
+import java.io.OutputStream;
+import java.util.Collection;
+import java.util.concurrent.Executor;
+
+/**
+ * Boundary interface for TracingController.
+ */
+public interface TracingControllerBoundaryInterface {
+ boolean isTracing();
+
+ void start(int predefinedCategories, Collection<String> customIncludedCategories, int mode)
+ throws IllegalStateException, IllegalArgumentException;
+
+ boolean stop(OutputStream outputStream, Executor executor);
+} \ No newline at end of file
diff --git a/src/org/chromium/support_lib_boundary/WebViewProviderFactoryBoundaryInterface.java b/src/org/chromium/support_lib_boundary/WebViewProviderFactoryBoundaryInterface.java
index 380bf42..b971ed6 100644
--- a/src/org/chromium/support_lib_boundary/WebViewProviderFactoryBoundaryInterface.java
+++ b/src/org/chromium/support_lib_boundary/WebViewProviderFactoryBoundaryInterface.java
@@ -16,4 +16,5 @@ public interface WebViewProviderFactoryBoundaryInterface {
/* StaticsAdapter */ InvocationHandler getStatics();
String[] getSupportedFeatures();
/* SupportLibraryServiceWorkerController */ InvocationHandler getServiceWorkerController();
+ /* SupportLibraryTracingController */ InvocationHandler getTracingController();
}
diff --git a/src/org/chromium/support_lib_boundary/util/Features.java b/src/org/chromium/support_lib_boundary/util/Features.java
index 1d6611d..705e068 100644
--- a/src/org/chromium/support_lib_boundary/util/Features.java
+++ b/src/org/chromium/support_lib_boundary/util/Features.java
@@ -134,4 +134,10 @@ public class Features {
// WebViewRenderer.terminate
public static final String WEB_VIEW_RENDERER_TERMINATE = "WEB_VIEW_RENDERER_TERMINATE";
+
+ // TracingController.getInstance
+ // TracingController.isTracing
+ // TracingController.start
+ // TracingController.stop
+ public static final String TRACING_CONTROLLER_BASIC_USAGE = "TRACING_CONTROLLER_BASIC_USAGE";
}