Index: chrome/android/java/src/org/chromium/chrome/browser/util/CompatibilityFileProvider.java |
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/util/CompatibilityFileProvider.java b/chrome/android/java/src/org/chromium/chrome/browser/util/CompatibilityFileProvider.java |
deleted file mode 100644 |
index c97ed83010f89f45d4a259d6ae4d84307724d57e..0000000000000000000000000000000000000000 |
--- a/chrome/android/java/src/org/chromium/chrome/browser/util/CompatibilityFileProvider.java |
+++ /dev/null |
@@ -1,70 +0,0 @@ |
-// Copyright 2015 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.chrome.browser.util; |
- |
-import android.database.Cursor; |
-import android.database.MatrixCursor; |
-import android.net.Uri; |
-import android.provider.MediaStore; |
-import android.support.v4.content.FileProvider; |
- |
-import java.util.Arrays; |
- |
-/** |
- * A FileProvider which works around a bad assumption that particular MediaStore columns exist by |
- * certain third party applications. |
- * http://crbug.com/467423. |
- */ |
-public class CompatibilityFileProvider extends FileProvider { |
- @Override |
- public Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs, |
- String sortOrder) { |
- Cursor source = super.query(uri, projection, selection, selectionArgs, sortOrder); |
- |
- String[] columnNames = source.getColumnNames(); |
- String[] newColumnNames = columnNamesWithData(columnNames); |
- if (columnNames == newColumnNames) return source; |
- |
- MatrixCursor cursor = new MatrixCursor(newColumnNames, source.getCount()); |
- |
- source.moveToPosition(-1); |
- while (source.moveToNext()) { |
- MatrixCursor.RowBuilder row = cursor.newRow(); |
- for (int i = 0; i < columnNames.length; i++) { |
- switch (source.getType(i)) { |
- case Cursor.FIELD_TYPE_INTEGER: |
- row.add(source.getInt(i)); |
- break; |
- case Cursor.FIELD_TYPE_FLOAT: |
- row.add(source.getFloat(i)); |
- break; |
- case Cursor.FIELD_TYPE_STRING: |
- row.add(source.getString(i)); |
- break; |
- case Cursor.FIELD_TYPE_BLOB: |
- row.add(source.getBlob(i)); |
- break; |
- case Cursor.FIELD_TYPE_NULL: |
- default: |
- row.add(null); |
- break; |
- } |
- } |
- } |
- |
- source.close(); |
- return cursor; |
- } |
- |
- private String[] columnNamesWithData(String[] columnNames) { |
- for (String columnName : columnNames) { |
- if (MediaStore.MediaColumns.DATA.equals(columnName)) return columnNames; |
- } |
- |
- String[] newColumnNames = Arrays.copyOf(columnNames, columnNames.length + 1); |
- newColumnNames[columnNames.length] = MediaStore.MediaColumns.DATA; |
- return newColumnNames; |
- } |
-} |