Code cleanup: specify directories inside the cache directory at FileUtils.java

This commit is contained in:
Jimmy Shih
2013-10-09 13:41:39 -07:00
parent 5ee710b7c5
commit 120c965e32
5 changed files with 19 additions and 8 deletions
@@ -83,6 +83,7 @@ public class TrackDetailActivity extends AbstractSendToGoogleActivity implements
private static final String CURRENT_TAB_TAG_KEY = "current_tab_tag_key";
private static final String PHOTO_URI_KEY = "photo_uri_key";
private static final String HAS_PHOTO_KEY = "has_photo_key";
private static final String JPEG_EXTENSION = "jpeg";
// The following are set in onCreate
private boolean hasCamera;
@@ -399,7 +400,7 @@ public class TrackDetailActivity extends AbstractSendToGoogleActivity implements
FileUtils.ensureDirectoryExists(dir);
String fileName = SimpleDateFormat.getDateTimeInstance().format(new Date());
File file = new File(dir, FileUtils.buildUniqueFileName(dir, fileName, "jpeg"));
File file = new File(dir, FileUtils.buildUniqueFileName(dir, fileName, JPEG_EXTENSION));
photoUri = Uri.fromFile(file);
intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE).putExtra(
@@ -17,6 +17,7 @@
package com.google.android.apps.mytracks.content;
import com.google.android.apps.mytracks.io.sync.SyncUtils;
import com.google.android.apps.mytracks.util.FileUtils;
import com.google.android.apps.mytracks.util.PreferencesUtils;
import com.google.android.maps.mytracks.R;
import com.google.common.annotations.VisibleForTesting;
@@ -435,8 +436,8 @@ public class MyTracksProvider extends ContentProvider {
}
throw new FileNotFoundException(uri.getPath());
} finally {
File[] files = getContext().getCacheDir().listFiles();
for (File file : files) {
File dir = new File(getContext().getCacheDir(), FileUtils.PLAY_TRACKS_DIR);
for (File file : dir.listFiles()) {
file.delete();
}
}
@@ -81,7 +81,7 @@ public class SaveActivity extends Activity {
return;
}
File directory = playTrack ? getCacheDir()
File directory = playTrack ? new File(getCacheDir(), FileUtils.PLAY_TRACKS_DIR)
: new File(FileUtils.getPath(trackFileFormat.getExtension()));
if (!FileUtils.ensureDirectoryExists(directory)) {
Toast.makeText(this, R.string.external_storage_not_writable, Toast.LENGTH_LONG).show();
@@ -90,12 +90,12 @@ public class SaveActivity extends Activity {
}
if (playTrack) {
for (File file : getCacheDir().listFiles()) {
for (File file : directory.listFiles()) {
file.delete();
}
}
directoryDisplayName = playTrack ? getCacheDir().getName()
directoryDisplayName = playTrack ? directory.getName()
: FileUtils.getPathDisplayName(trackFileFormat.getExtension());
Object retained = getLastNonConfigurationInstance();
@@ -101,7 +101,6 @@ public class SyncUtils {
private static final String TAG = SyncUtils.class.getSimpleName();
private static final String SYNC_AUTHORITY = "com.google.android.maps.mytracks";
private static final String TEMP_DIR = "temp";
private SyncUtils() {}
@@ -454,7 +453,7 @@ public class SyncUtils {
Context context, MyTracksProviderUtils myTracksProviderUtils, Track track, boolean useKmz)
throws FileNotFoundException {
String extension = useKmz ? KmzTrackExporter.KMZ_EXTENSION : TrackFileFormat.KML.getExtension();
java.io.File directory = new java.io.File(context.getCacheDir(), TEMP_DIR);
java.io.File directory = new java.io.File(context.getCacheDir(), FileUtils.TEMP_FILES_DIR);
if (!FileUtils.ensureDirectoryExists(directory)) {
Log.d(TAG, "Unable to create " + directory.getAbsolutePath());
@@ -53,6 +53,16 @@ public class FileUtils {
@VisibleForTesting
static final int MAX_FAT32_PATH_LENGTH = 260;
/**
* The play tracks directory under the My Tracks cache directory.
*/
public static final String PLAY_TRACKS_DIR = "temp";
/**
* The temp files directory under the My Tracks cache directory.
*/
public static final String TEMP_FILES_DIR = "temp_files";
/**
* Returns true if the external storage is available.
*/