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

Unified Diff: base/android/java/src/org/chromium/base/ResourceExtractor.java

Issue 2369683002: Revert of Move language pak files to assets. (Closed)
Patch Set: Created 4 years, 3 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: base/android/java/src/org/chromium/base/ResourceExtractor.java
diff --git a/base/android/java/src/org/chromium/base/ResourceExtractor.java b/base/android/java/src/org/chromium/base/ResourceExtractor.java
index 602d23a84ec5627ad3ce4ae884b61db7cd327d3b..26db654f5a781154e68de96973942f9edd6ea9ab 100644
--- a/base/android/java/src/org/chromium/base/ResourceExtractor.java
+++ b/base/android/java/src/org/chromium/base/ResourceExtractor.java
@@ -36,7 +36,22 @@
private static final String V8_SNAPSHOT_DATA_FILENAME = "snapshot_blob.bin";
private static final String APP_VERSION_PREF = "org.chromium.base.ResourceExtractor.Version";
- private static String[] sResourcesToExtract = new String[0];
+ private static ResourceEntry[] sResourcesToExtract = new ResourceEntry[0];
+
+ /**
+ * Holds information about a res/raw file (e.g. locale .pak files).
+ */
+ public static final class ResourceEntry {
+ public final int resourceId;
+ public final String pathWithinApk;
+ public final String extractedFileName;
+
+ public ResourceEntry(int resourceId, String pathWithinApk, String extractedFileName) {
+ this.resourceId = resourceId;
+ this.pathWithinApk = pathWithinApk;
+ this.extractedFileName = extractedFileName;
+ }
+ }
private class ExtractTask extends AsyncTask<Void, Void, Void> {
private static final int BUFFER_SIZE = 16 * 1024;
@@ -92,15 +107,16 @@
TraceEvent.begin("WalkAssets");
byte[] buffer = new byte[BUFFER_SIZE];
try {
- for (String resource : sResourcesToExtract) {
- File output = new File(outputDir, resource);
+ for (ResourceEntry entry : sResourcesToExtract) {
+ File output = new File(outputDir, entry.extractedFileName);
// TODO(agrieve): It would be better to check that .length == expectedLength.
// http://crbug.com/606413
if (output.length() != 0) {
continue;
}
TraceEvent.begin("ExtractResource");
- InputStream inputStream = mContext.getAssets().open(resource);
+ InputStream inputStream = mContext.getResources().openRawResource(
+ entry.resourceId);
try {
extractResourceHelper(inputStream, output, buffer);
} finally {
@@ -178,10 +194,10 @@
* and moved to {@link #getOutputDir()}.
*/
@SuppressFBWarnings("EI_EXPOSE_STATIC_REP2")
- public static void setResourcesToExtract(String[] resources) {
+ public static void setResourcesToExtract(ResourceEntry[] entries) {
assert (sInstance == null || sInstance.mExtractTask == null)
: "Must be called before startExtractingResources is called";
- sResourcesToExtract = resources;
+ sResourcesToExtract = entries;
}
private ResourceExtractor(Context context) {

Powered by Google App Engine
This is Rietveld 408576698