AW: add boundary interfaces for new classes used in callbacks

This adds boundary interfaces for SafeBrowsingResponse and
WebResourceError, both of which are post-L classes added in
WebViewClient callbacks (onSafeBrowsingHit() and onReceivedError()).

Design doc: http://go/wv-support-library-callbacks

Bug: 781764
Test: N/A
Change-Id: Idcf1b4af21b197f951192b5a262f63ec0500debe
Reviewed-on: https://chromium-review.googlesource.com/982651
Reviewed-by: Richard Coles <[email protected]>
Commit-Queue: Nate Fischer <[email protected]>
Cr-Original-Commit-Position: refs/heads/master@{#546590}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: b73c062f19bf41d9f50c405302b9bdfe419b554d
diff --git a/BUILD.gn b/BUILD.gn
index 07c3cb6..6ce4cb1 100644
--- a/BUILD.gn
+++ b/BUILD.gn
@@ -7,12 +7,14 @@
 
 android_library("boundary_interface_java") {
   java_files = [
+    "src/org/chromium/support_lib_boundary/SafeBrowsingResponseBoundaryInterface.java",
     "src/org/chromium/support_lib_boundary/ServiceWorkerClientBoundaryInterface.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/SupportLibraryInfoBoundaryInterface.java",
     "src/org/chromium/support_lib_boundary/VisualStateCallbackBoundaryInterface.java",
+    "src/org/chromium/support_lib_boundary/WebResourceErrorBoundaryInterface.java",
     "src/org/chromium/support_lib_boundary/WebSettingsBoundaryInterface.java",
     "src/org/chromium/support_lib_boundary/WebViewClientBoundaryInterface.java",
     "src/org/chromium/support_lib_boundary/WebViewProviderBoundaryInterface.java",
diff --git a/src/org/chromium/support_lib_boundary/SafeBrowsingResponseBoundaryInterface.java b/src/org/chromium/support_lib_boundary/SafeBrowsingResponseBoundaryInterface.java
new file mode 100644
index 0000000..93a7a25
--- /dev/null
+++ b/src/org/chromium/support_lib_boundary/SafeBrowsingResponseBoundaryInterface.java
@@ -0,0 +1,14 @@
+// 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;
+
+/**
+ * Boundary interface for SafeBrowsingResponseCompat.
+ */
+public interface SafeBrowsingResponseBoundaryInterface {
+    public void showInterstitial(boolean allowReporting);
+    public void proceed(boolean report);
+    public void backToSafety(boolean report);
+}
diff --git a/src/org/chromium/support_lib_boundary/WebResourceErrorBoundaryInterface.java b/src/org/chromium/support_lib_boundary/WebResourceErrorBoundaryInterface.java
new file mode 100644
index 0000000..52db23c
--- /dev/null
+++ b/src/org/chromium/support_lib_boundary/WebResourceErrorBoundaryInterface.java
@@ -0,0 +1,13 @@
+// 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;
+
+/**
+ * Boundary interface for WebResourceErrorCompat.
+ */
+public interface WebResourceErrorBoundaryInterface {
+    public int getErrorCode();
+    public CharSequence getDescription();
+}