Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 8 additions & 8 deletions src/com/owncloud/android/datamodel/FileDataStorageManager.java
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@
import com.owncloud.android.lib.resources.status.OCCapability;
import com.owncloud.android.utils.FileStorageUtils;
import com.owncloud.android.utils.MimeType;
import com.owncloud.android.utils.MimeTypeUtil;

import java.io.File;
import java.io.FileInputStream;
Expand Down Expand Up @@ -161,7 +162,7 @@ public Vector<OCFile> getFolderImages(OCFile folder, boolean onlyOnDevice) {
OCFile current = null;
for (int i=0; i<tmp.size(); i++) {
current = tmp.get(i);
if (current.isImage()) {
if (MimeTypeUtil.isImage(current)) {
ret.add(current);
}
}
Expand Down Expand Up @@ -1689,31 +1690,31 @@ public void deleteFileInMediaScan(String path) {
ContentResolver contentResolver = getContentResolver();

if (contentResolver != null) {
if (mimetypeString.startsWith("image/")) {
if (MimeTypeUtil.isImage(mimetypeString)) {
// Images
contentResolver.delete(MediaStore.Images.Media.EXTERNAL_CONTENT_URI,
MediaStore.Images.Media.DATA + "=?", new String[]{path});
} else if (mimetypeString.startsWith("audio/")) {
} else if (MimeTypeUtil.isAudio(mimetypeString)) {
// Audio
contentResolver.delete(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI,
MediaStore.Audio.Media.DATA + "=?", new String[]{path});
} else if (mimetypeString.startsWith("video/")) {
} else if (MimeTypeUtil.isVideo(mimetypeString)) {
// Video
contentResolver.delete(MediaStore.Video.Media.EXTERNAL_CONTENT_URI,
MediaStore.Video.Media.DATA + "=?", new String[]{path});
}
} else {
ContentProviderClient contentProviderClient = getContentProviderClient();
try {
if (mimetypeString.startsWith("image/")) {
if (MimeTypeUtil.isImage(mimetypeString)) {
// Images
contentProviderClient.delete(MediaStore.Images.Media.EXTERNAL_CONTENT_URI,
MediaStore.Images.Media.DATA + "=?", new String[]{path});
} else if (mimetypeString.startsWith("audio/")) {
} else if (MimeTypeUtil.isAudio(mimetypeString)) {
// Audio
contentProviderClient.delete(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI,
MediaStore.Audio.Media.DATA + "=?", new String[]{path});
} else if (mimetypeString.startsWith("video/")) {
} else if (MimeTypeUtil.isVideo(mimetypeString)) {
// Video
contentProviderClient.delete(MediaStore.Video.Media.EXTERNAL_CONTENT_URI,
MediaStore.Video.Media.DATA + "=?", new String[]{path});
Expand All @@ -1722,7 +1723,6 @@ public void deleteFileInMediaScan(String path) {
Log_OC.e(TAG, "Exception deleting media file in MediaStore " + e.getMessage());
}
}

}

public void saveConflict(OCFile file, String etagInConflict) {
Expand Down
48 changes: 0 additions & 48 deletions src/com/owncloud/android/datamodel/OCFile.java
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,6 @@
import android.net.Uri;
import android.os.Parcel;
import android.os.Parcelable;
import android.webkit.MimeTypeMap;

import com.owncloud.android.lib.common.utils.Log_OC;
import com.owncloud.android.utils.MimeType;
Expand Down Expand Up @@ -562,53 +561,6 @@ public long getLocalModificationTimestamp() {
return 0;
}

/**
* @return 'True' if the file contains audio
*/
public boolean isAudio() {
return (mMimeType != null && mMimeType.startsWith("audio/"));
}

/**
* @return 'True' if the file contains video
*/
public boolean isVideo() {
return (mMimeType != null && mMimeType.startsWith("video/"));
}

/**
* @return 'True' if the file contains an image
*/
public boolean isImage() {
String mimeType;
if (mMimeType != null) {
mimeType = mMimeType;
} else {
mimeType = getMimeTypeFromName();
}

return (mimeType.startsWith("image/") && !mimeType.contains("djvu"));
}

/**
* @return 'True' if the file is simple text (e.g. not application-dependent, like .doc or .docx)
*/
public boolean isText() {
return ((mMimeType != null && mMimeType.startsWith("text/")) ||
getMimeTypeFromName().startsWith("text/"));
}

public String getMimeTypeFromName() {
String extension = "";
int pos = mRemotePath.lastIndexOf('.');
if (pos >= 0) {
extension = mRemotePath.substring(pos + 1);
}
String result = MimeTypeMap.getSingleton().
getMimeTypeFromExtension(extension.toLowerCase());
return (result != null) ? result : "";
}

/**
* @return 'True' if the file is hidden
*/
Expand Down
18 changes: 4 additions & 14 deletions src/com/owncloud/android/datamodel/ThumbnailsCacheManager.java
Original file line number Diff line number Diff line change
Expand Up @@ -21,15 +21,6 @@

package com.owncloud.android.datamodel;

import java.io.File;
import java.io.InputStream;
import java.lang.ref.WeakReference;
import java.net.FileNameMap;
import java.net.URLConnection;

import org.apache.commons.httpclient.HttpStatus;
import org.apache.commons.httpclient.methods.GetMethod;

import android.accounts.Account;
import android.content.res.Resources;
import android.graphics.Bitmap;
Expand All @@ -39,7 +30,6 @@
import android.graphics.Paint;
import android.graphics.drawable.BitmapDrawable;
import android.graphics.drawable.Drawable;
import android.media.Image;
import android.media.ThumbnailUtils;
import android.net.Uri;
import android.os.AsyncTask;
Expand All @@ -56,16 +46,16 @@
import com.owncloud.android.lib.resources.status.OwnCloudVersion;
import com.owncloud.android.ui.adapter.DiskLruImageCache;
import com.owncloud.android.utils.BitmapUtils;
import com.owncloud.android.utils.DisplayUtils;
import com.owncloud.android.utils.DisplayUtils.AvatarGenerationListener;
import com.owncloud.android.utils.FileStorageUtils;
import com.owncloud.android.utils.MimeTypeUtil;

import org.apache.commons.httpclient.HttpStatus;
import org.apache.commons.httpclient.methods.GetMethod;

import java.io.File;
import java.io.InputStream;
import java.lang.ref.WeakReference;
import com.owncloud.android.utils.FileStorageUtils;

/**
* Manager for concurrent access to thumbnails cache.
Expand Down Expand Up @@ -212,7 +202,7 @@ protected Bitmap doInBackground(Object... params) {
if (mFile instanceof OCFile) {
thumbnail = doOCFileInBackground();

if (((OCFile) mFile).isVideo() && thumbnail != null){
if (MimeTypeUtil.isVideo((OCFile) mFile) && thumbnail != null) {
thumbnail = addVideoOverlay(thumbnail);
}
} else if (mFile instanceof File) {
Expand All @@ -221,7 +211,7 @@ protected Bitmap doInBackground(Object... params) {
String url = ((File) mFile).getAbsolutePath();
String mMimeType = FileStorageUtils.getMimeTypeFromName(url);

if (mMimeType != null && mMimeType.startsWith("video/") && thumbnail != null){
if (MimeTypeUtil.isVideo(mMimeType) && thumbnail != null) {
thumbnail = addVideoOverlay(thumbnail);
}
//} else { do nothing
Expand Down
4 changes: 2 additions & 2 deletions src/com/owncloud/android/db/OCUpload.java
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@
import com.owncloud.android.files.services.FileUploader;
import com.owncloud.android.lib.common.utils.Log_OC;
import com.owncloud.android.operations.UploadFileOperation;
import com.owncloud.android.utils.MimetypeIconUtil;
import com.owncloud.android.utils.MimeTypeUtil;

import java.io.File;

Expand Down Expand Up @@ -235,7 +235,7 @@ public void setFileSize(long fileSize) {
* @return the mimeType
*/
public String getMimeType() {
return MimetypeIconUtil.getBestMimeTypeByFilename(mLocalPath);
return MimeTypeUtil.getBestMimeTypeByFilename(mLocalPath);
}

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@
import com.owncloud.android.lib.resources.shares.OCShare;
import com.owncloud.android.syncadapter.FileSyncAdapter;
import com.owncloud.android.utils.FileStorageUtils;
import com.owncloud.android.utils.MimeTypeUtil;

import java.util.ArrayList;
import java.util.HashMap;
Expand Down Expand Up @@ -404,7 +405,7 @@ private void synchronizeData(ArrayList<Object> folderAndFiles, OwnCloudClient cl
updatedFile.setEtag(localFile.getEtag());
if (updatedFile.isFolder()) {
updatedFile.setFileLength(remoteFile.getFileLength());
} else if (mRemoteFolderChanged && remoteFile.isImage() &&
} else if (mRemoteFolderChanged && MimeTypeUtil.isImage(remoteFile) &&
remoteFile.getModificationTimestamp() !=
localFile.getModificationTimestamp()) {
updatedFile.setNeedsUpdateThumbnail(true);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,19 +20,11 @@

package com.owncloud.android.operations;

import java.io.File;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Vector;

import android.accounts.Account;
import android.content.Context;
import android.content.Intent;
import android.util.Log;


import com.owncloud.android.datamodel.FileDataStorageManager;
import com.owncloud.android.datamodel.OCFile;
import com.owncloud.android.files.services.FileDownloader;
Expand All @@ -47,7 +39,14 @@
import com.owncloud.android.operations.common.SyncOperation;
import com.owncloud.android.services.OperationsService;
import com.owncloud.android.utils.FileStorageUtils;
import com.owncloud.android.utils.MimeTypeUtil;

import java.io.File;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Vector;
import java.util.concurrent.atomic.AtomicBoolean;


Expand Down Expand Up @@ -329,7 +328,7 @@ private void synchronizeData(ArrayList<Object> folderAndFiles, OwnCloudClient cl
if (updatedFile.isFolder()) {
updatedFile.setFileLength(localFile.getFileLength());
// TODO move operations about size of folders to FileContentProvider
} else if (mRemoteFolderChanged && remoteFile.isImage() &&
} else if (mRemoteFolderChanged && MimeTypeUtil.isImage(remoteFile) &&
remoteFile.getModificationTimestamp() !=
localFile.getModificationTimestamp()) {
updatedFile.setNeedsUpdateThumbnail(true);
Expand Down
4 changes: 2 additions & 2 deletions src/com/owncloud/android/operations/UploadFileOperation.java
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@
import com.owncloud.android.utils.ConnectivityUtils;
import com.owncloud.android.utils.FileStorageUtils;
import com.owncloud.android.utils.MimeType;
import com.owncloud.android.utils.MimetypeIconUtil;
import com.owncloud.android.utils.MimeTypeUtil;
import com.owncloud.android.utils.UriUtils;

import org.apache.commons.httpclient.HttpStatus;
Expand Down Expand Up @@ -80,7 +80,7 @@ public static OCFile obtainNewOCFileToUpload(String remotePath, String localPath

// MIME type
if (mimeType == null || mimeType.length() <= 0) {
mimeType = MimetypeIconUtil.getBestMimeTypeByFilename(localPath);
mimeType = MimeTypeUtil.getBestMimeTypeByFilename(localPath);
}

OCFile newFile = new OCFile(remotePath);
Expand Down
4 changes: 2 additions & 2 deletions src/com/owncloud/android/ui/activity/UploadListActivity.java
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@
import com.owncloud.android.lib.common.utils.Log_OC;
import com.owncloud.android.operations.CheckCurrentCredentialsOperation;
import com.owncloud.android.ui.fragment.UploadListFragment;
import com.owncloud.android.utils.MimetypeIconUtil;
import com.owncloud.android.utils.MimeTypeUtil;

import java.io.File;

Expand Down Expand Up @@ -161,7 +161,7 @@ public boolean onUploadItemClick(OCUpload file) {
private void openFileWithDefault(String localPath) {
Intent myIntent = new Intent(android.content.Intent.ACTION_VIEW);
File file = new File(localPath);
String mimetype = MimetypeIconUtil.getBestMimeTypeByFilename(localPath);
String mimetype = MimeTypeUtil.getBestMimeTypeByFilename(localPath);
if ("application/octet-stream".equals(mimetype)) {
mimetype = "*/*";
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -48,9 +48,8 @@
import com.owncloud.android.lib.common.network.OnDatatransferProgressListener;
import com.owncloud.android.lib.common.utils.Log_OC;
import com.owncloud.android.ui.activity.FileActivity;
import com.owncloud.android.utils.BitmapUtils;
import com.owncloud.android.utils.DisplayUtils;
import com.owncloud.android.utils.MimetypeIconUtil;
import com.owncloud.android.utils.MimeTypeUtil;

import java.io.File;
import java.lang.ref.WeakReference;
Expand Down Expand Up @@ -408,7 +407,7 @@ public void onClick(View v) {
);

// TODO this code is duplicated; refactor to a common place
if ((fakeFileToCheatThumbnailsCacheManagerInterface.isImage()
if ((MimeTypeUtil.isImage(fakeFileToCheatThumbnailsCacheManagerInterface)
&& fakeFileToCheatThumbnailsCacheManagerInterface.getRemoteId() != null &&
upload.getUploadStatus() == UploadStatus.UPLOAD_SUCCEEDED)) {
// Thumbnail in Cache?
Expand All @@ -425,7 +424,7 @@ public void onClick(View v) {
fileIcon, mParentActivity.getStorageManager(), mParentActivity.getAccount()
);
if (thumbnail == null) {
if (fakeFileToCheatThumbnailsCacheManagerInterface.isVideo()) {
if (MimeTypeUtil.isVideo(fakeFileToCheatThumbnailsCacheManagerInterface)) {
thumbnail = ThumbnailsCacheManager.mDefaultVideo;
} else {
thumbnail = ThumbnailsCacheManager.mDefaultImg;
Expand All @@ -448,7 +447,7 @@ public void onClick(View v) {
}


} else if (fakeFileToCheatThumbnailsCacheManagerInterface.isImage()) {
} else if (MimeTypeUtil.isImage(fakeFileToCheatThumbnailsCacheManagerInterface)) {
File file = new File(upload.getLocalPath());
// Thumbnail in Cache?
Bitmap thumbnail = ThumbnailsCacheManager.getBitmapFromDiskCache(
Expand All @@ -461,7 +460,7 @@ public void onClick(View v) {
final ThumbnailsCacheManager.ThumbnailGenerationTask task =
new ThumbnailsCacheManager.ThumbnailGenerationTask(fileIcon);
if (thumbnail == null) {
if (BitmapUtils.isVideo(file)) {
if (MimeTypeUtil.isVideo(file)) {
thumbnail = ThumbnailsCacheManager.mDefaultVideo;
} else {
thumbnail = ThumbnailsCacheManager.mDefaultImg;
Expand All @@ -484,7 +483,7 @@ public void onClick(View v) {
.getColor(R.color.background_color));
}
} else {
fileIcon.setImageResource(MimetypeIconUtil.getFileTypeIconId(
fileIcon.setImageResource(MimeTypeUtil.getFileTypeIconId(
upload.getMimeType(),
fileName
));
Expand Down
Loading