1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 package org.xwalk.core.internal;
7 import org.chromium.base.CalledByNative;
8 import org.chromium.base.JNINamespace;
11 * It's for http auth handling.
14 @JNINamespace("xwalk")
15 public class XWalkHttpAuthHandler {
17 private long mNativeXWalkHttpAuthHandler;
18 private final boolean mFirstAttempt;
20 public void proceed(String username, String password) {
21 if (mNativeXWalkHttpAuthHandler != 0) {
22 nativeProceed(mNativeXWalkHttpAuthHandler, username, password);
23 mNativeXWalkHttpAuthHandler = 0;
27 public void cancel() {
28 if (mNativeXWalkHttpAuthHandler != 0) {
29 nativeCancel(mNativeXWalkHttpAuthHandler);
30 mNativeXWalkHttpAuthHandler = 0;
34 public boolean isFirstAttempt() {
39 public static XWalkHttpAuthHandler create(long nativeXWalkAuthHandler, boolean firstAttempt) {
40 return new XWalkHttpAuthHandler(nativeXWalkAuthHandler, firstAttempt);
43 private XWalkHttpAuthHandler(long nativeXWalkHttpAuthHandler, boolean firstAttempt) {
44 mNativeXWalkHttpAuthHandler = nativeXWalkHttpAuthHandler;
45 mFirstAttempt = firstAttempt;
49 void handlerDestroyed() {
50 mNativeXWalkHttpAuthHandler = 0;
53 private native void nativeProceed(long nativeXWalkHttpAuthHandler,
54 String username, String password);
55 private native void nativeCancel(long nativeXWalkHttpAuthHandler);