Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1787)

Unified Diff: content/public/android/java/src/org/chromium/content/browser/MediaResourceGetter.java

Issue 141533006: [Android] Move the java content/ package to content_public/ to start the split. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Small fixes and findbugs line update Created 6 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/public/android/java/src/org/chromium/content/browser/MediaResourceGetter.java
diff --git a/content/public/android/java/src/org/chromium/content/browser/MediaResourceGetter.java b/content/public/android/java/src/org/chromium/content/browser/MediaResourceGetter.java
deleted file mode 100644
index 5ea3df0d193d4a762239faae29e9b859b753eb16..0000000000000000000000000000000000000000
--- a/content/public/android/java/src/org/chromium/content/browser/MediaResourceGetter.java
+++ /dev/null
@@ -1,138 +0,0 @@
-// Copyright 2013 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.content.browser;
-
-import android.content.Context;
-import android.content.pm.PackageManager;
-import android.media.MediaMetadataRetriever;
-import android.net.ConnectivityManager;
-import android.net.NetworkInfo;
-import android.net.Uri;
-import android.text.TextUtils;
-import android.util.Log;
-
-import org.chromium.base.CalledByNative;
-import org.chromium.base.JNINamespace;
-import org.chromium.base.PathUtils;
-
-import java.io.File;
-import java.util.HashMap;
-
-/**
- * Java counterpart of android MediaResourceGetter.
- */
-@JNINamespace("content")
-class MediaResourceGetter {
-
- private static final String TAG = "MediaResourceGetter";
-
- private static class MediaMetadata {
- private final int mDurationInMilliseconds;
- private final int mWidth;
- private final int mHeight;
- private final boolean mSuccess;
-
- private MediaMetadata(int durationInMilliseconds, int width, int height, boolean success) {
- mDurationInMilliseconds = durationInMilliseconds;
- mWidth = width;
- mHeight = height;
- mSuccess = success;
- }
-
- @CalledByNative("MediaMetadata")
- private int getDurationInMilliseconds() { return mDurationInMilliseconds; }
-
- @CalledByNative("MediaMetadata")
- private int getWidth() { return mWidth; }
-
- @CalledByNative("MediaMetadata")
- private int getHeight() { return mHeight; }
-
- @CalledByNative("MediaMetadata")
- private boolean isSuccess() { return mSuccess; }
- }
-
- @CalledByNative
- private static MediaMetadata extractMediaMetadata(Context context, String url, String cookies,
- String userAgent) {
- int durationInMilliseconds = 0;
- int width = 0;
- int height = 0;
- boolean success = false;
- if ("GT-I9100".contentEquals(android.os.Build.MODEL)
- && android.os.Build.VERSION.SDK_INT < android.os.Build.VERSION_CODES.JELLY_BEAN) {
- return new MediaMetadata(0, 0, 0, success);
- }
- // TODO(qinmin): use ConnectionTypeObserver to listen to the network type change.
- ConnectivityManager mConnectivityManager =
- (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
- if (mConnectivityManager != null) {
- if (context.checkCallingOrSelfPermission(
- android.Manifest.permission.ACCESS_NETWORK_STATE) !=
- PackageManager.PERMISSION_GRANTED) {
- return new MediaMetadata(0, 0, 0, false);
- }
-
- NetworkInfo info = mConnectivityManager.getActiveNetworkInfo();
- if (info == null) {
- return new MediaMetadata(durationInMilliseconds, width, height, success);
- }
- switch (info.getType()) {
- case ConnectivityManager.TYPE_ETHERNET:
- case ConnectivityManager.TYPE_WIFI:
- break;
- case ConnectivityManager.TYPE_WIMAX:
- case ConnectivityManager.TYPE_MOBILE:
- default:
- return new MediaMetadata(durationInMilliseconds, width, height, success);
- }
- }
-
- MediaMetadataRetriever retriever = new MediaMetadataRetriever();
- try {
- Uri uri = Uri.parse(url);
- String scheme = uri.getScheme();
- if (scheme == null || scheme.equals("file")) {
- File file = new File(uri.getPath());
- String path = file.getAbsolutePath();
- if (file.exists() && (path.startsWith("/mnt/sdcard/") ||
- path.startsWith("/sdcard/") ||
- path.startsWith(PathUtils.getExternalStorageDirectory()) ||
- path.startsWith(context.getCacheDir().getAbsolutePath()))) {
- retriever.setDataSource(path);
- } else {
- return new MediaMetadata(durationInMilliseconds, width, height, success);
- }
- } else {
- HashMap<String, String> headersMap = new HashMap<String, String>();
- if (!TextUtils.isEmpty(cookies)) {
- headersMap.put("Cookie", cookies);
- }
- if (!TextUtils.isEmpty(userAgent)) {
- headersMap.put("User-Agent", userAgent);
- }
- retriever.setDataSource(url, headersMap);
- }
- String duration = retriever.extractMetadata(
- MediaMetadataRetriever.METADATA_KEY_DURATION);
- String videoWidth = retriever.extractMetadata(
- MediaMetadataRetriever.METADATA_KEY_VIDEO_WIDTH);
- String videoHeight = retriever.extractMetadata(
- MediaMetadataRetriever.METADATA_KEY_VIDEO_HEIGHT);
- if (duration == null || videoWidth == null || videoHeight == null) {
- return new MediaMetadata(durationInMilliseconds, width, height, success);
- }
- durationInMilliseconds = Integer.parseInt(duration);
- width = Integer.parseInt(videoWidth);
- height = Integer.parseInt(videoHeight);
- success = true;
- } catch (IllegalArgumentException e) {
- Log.e(TAG, "Invalid url: " + e);
- } catch (RuntimeException e) {
- Log.e(TAG, "Invalid url: " + e);
- }
- return new MediaMetadata(durationInMilliseconds, width, height, success);
- }
-}

Powered by Google App Engine
This is Rietveld 408576698