diff options
| author | The Android Open Source Project <initial-contribution@android.com> | 2009-03-03 18:28:45 -0800 |
|---|---|---|
| committer | The Android Open Source Project <initial-contribution@android.com> | 2009-03-03 18:28:45 -0800 |
| commit | d83a98f4ce9cfa908f5c54bbd70f03eec07e7553 (patch) | |
| tree | 4b825dc642cb6eb9a060e54bf8d69288fbee4904 /core/java/android/webkit/ContentLoader.java | |
| parent | 076357b8567458d4b6dfdcf839ef751634cd2bfb (diff) | |
auto import from //depot/cupcake/@135843
Diffstat (limited to 'core/java/android/webkit/ContentLoader.java')
| -rw-r--r-- | core/java/android/webkit/ContentLoader.java | 123 |
1 files changed, 0 insertions, 123 deletions
diff --git a/core/java/android/webkit/ContentLoader.java b/core/java/android/webkit/ContentLoader.java deleted file mode 100644 index fb01c8c6e85b..000000000000 --- a/core/java/android/webkit/ContentLoader.java +++ /dev/null @@ -1,123 +0,0 @@ -/* - * Copyright (C) 2008 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package android.webkit; - -import android.content.Context; -import android.net.http.EventHandler; -import android.net.http.Headers; -import android.net.Uri; - -import java.io.File; -import java.io.FileInputStream; - -/** - * This class is a concrete implementation of StreamLoader that loads - * "content:" URIs - */ -class ContentLoader extends StreamLoader { - - private String mUrl; - private Context mContext; - private String mContentType; - - /** - * Construct a ContentLoader with the specified content URI - * - * @param rawUrl "content:" url pointing to content to be loaded. This url - * is the same url passed in to the WebView. - * @param loadListener LoadListener to pass the content to - * @param context Context to use to access the asset. - */ - ContentLoader(String rawUrl, LoadListener loadListener, Context context) { - super(loadListener); - mContext = context; - - /* strip off mimetype */ - int mimeIndex = rawUrl.lastIndexOf('?'); - if (mimeIndex != -1) { - mUrl = rawUrl.substring(0, mimeIndex); - mContentType = rawUrl.substring(mimeIndex + 1); - } else { - mUrl = rawUrl; - } - - } - - @Override - protected boolean setupStreamAndSendStatus() { - Uri uri = Uri.parse(mUrl); - if (uri == null) { - mHandler.error( - EventHandler.FILE_NOT_FOUND_ERROR, - mContext.getString( - com.android.internal.R.string.httpErrorBadUrl) + - " " + mUrl); - return false; - } - - try { - mDataStream = mContext.getContentResolver().openInputStream(uri); - mHandler.status(1, 1, 0, "OK"); - } catch (java.io.FileNotFoundException ex) { - mHandler.error( - EventHandler.FILE_NOT_FOUND_ERROR, - mContext.getString( - com.android.internal.R.string.httpErrorFileNotFound) + - " " + ex.getMessage()); - return false; - - } catch (java.io.IOException ex) { - mHandler.error( - EventHandler.FILE_ERROR, - mContext.getString( - com.android.internal.R.string.httpErrorFileNotFound) + - " " + ex.getMessage()); - return false; - } catch (RuntimeException ex) { - // readExceptionWithFileNotFoundExceptionFromParcel in DatabaseUtils - // can throw a serial of RuntimeException. Catch them all here. - mHandler.error( - EventHandler.FILE_ERROR, - mContext.getString( - com.android.internal.R.string.httpErrorFileNotFound) + - " " + ex.getMessage()); - return false; - } - return true; - } - - @Override - protected void buildHeaders(Headers headers) { - if (mContentType != null) { - headers.setContentType("text/html"); - } - } - - /** - * Construct a ContentLoader and instruct it to start loading. - * - * @param url "content:" url pointing to content to be loaded - * @param loadListener LoadListener to pass the content to - * @param context Context to use to access the asset. - */ - public static void requestUrl(String url, LoadListener loadListener, - Context context) { - ContentLoader loader = new ContentLoader(url, loadListener, context); - loader.load(); - } - -} |
