HttpAuthHandler.java revision a7f0ed46208bf1658624e22dc061e20e97d30481
19066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/*
29066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Copyright (C) 2006 The Android Open Source Project
39066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project *
49066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Licensed under the Apache License, Version 2.0 (the "License");
59066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * you may not use this file except in compliance with the License.
69066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * You may obtain a copy of the License at
79066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project *
89066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project *      http://www.apache.org/licenses/LICENSE-2.0
99066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project *
109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Unless required by applicable law or agreed to in writing, software
119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * distributed under the License is distributed on an "AS IS" BASIS,
129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * See the License for the specific language governing permissions and
149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * limitations under the License.
159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */
169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectpackage android.webkit;
189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.os.Handler;
209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/**
2210229b24d061b02b2620ac59dc986c540efd3741Iain Merrick * HTTP authentication request that must be handled by the user interface.
2310229b24d061b02b2620ac59dc986c540efd3741Iain Merrick * WebView creates the object and hands it to the current {@link WebViewClient},
2410229b24d061b02b2620ac59dc986c540efd3741Iain Merrick * which must call either {@link #proceed(String, String)} or {@link #cancel()}.
259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */
269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectpublic class HttpAuthHandler extends Handler {
279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    /**
2910229b24d061b02b2620ac59dc986c540efd3741Iain Merrick     * Package-private constructor needed for API compatibility.
309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project     */
3110229b24d061b02b2620ac59dc986c540efd3741Iain Merrick    HttpAuthHandler() {
329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    /**
359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project     * @return True if we can use user credentials on record
369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project     * (ie, if we did not fail trying to use them last time)
379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project     */
389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public boolean useHttpAuthUsernamePassword() {
399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return false;
409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    /**
4310229b24d061b02b2620ac59dc986c540efd3741Iain Merrick     * Cancel the authorization request.
449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project     */
4510229b24d061b02b2620ac59dc986c540efd3741Iain Merrick    public void cancel() {
469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
47c6a90a59b342114d760d899e09d8def672b49ca8Steve Block
48c6a90a59b342114d760d899e09d8def672b49ca8Steve Block    /**
4910229b24d061b02b2620ac59dc986c540efd3741Iain Merrick     * Proceed with the authorization with the given credentials.
50c6a90a59b342114d760d899e09d8def672b49ca8Steve Block     */
5110229b24d061b02b2620ac59dc986c540efd3741Iain Merrick    public void proceed(String username, String password) {
52c6a90a59b342114d760d899e09d8def672b49ca8Steve Block    }
53a7f0ed46208bf1658624e22dc061e20e97d30481Ben Murdoch
54a7f0ed46208bf1658624e22dc061e20e97d30481Ben Murdoch    /**
55a7f0ed46208bf1658624e22dc061e20e97d30481Ben Murdoch     * return true if the prompt dialog should be suppressed.
56a7f0ed46208bf1658624e22dc061e20e97d30481Ben Murdoch     * @hide
57a7f0ed46208bf1658624e22dc061e20e97d30481Ben Murdoch     */
58a7f0ed46208bf1658624e22dc061e20e97d30481Ben Murdoch    public boolean suppressDialog() {
59a7f0ed46208bf1658624e22dc061e20e97d30481Ben Murdoch        return false;
60a7f0ed46208bf1658624e22dc061e20e97d30481Ben Murdoch    }
619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project}
62