package com.owncloud.android.files.services;
import java.io.File;
-import java.io.IOException;
import java.util.AbstractList;
import java.util.HashMap;
import java.util.Iterator;
import android.accounts.Account;
import android.accounts.AccountManager;
-import android.accounts.AccountsException;
import android.accounts.OnAccountsUpdateListener;
import android.app.NotificationManager;
import android.app.PendingIntent;
*/
public void uploadFile(String uploadKey) {
- Log_OC.v( "NOW " + TAG + ", thread " + Thread.currentThread().getName(),
- "Getting upload of " + uploadKey);
mCurrentUpload = mPendingUploads.get(uploadKey);
if (mCurrentUpload != null) {
/// perform the upload
if (grantResult.isSuccess()) {
- Log_OC.v( "NOW " + TAG + ", thread " + Thread.currentThread().getName(),
- "Executing upload of " + mCurrentUpload.getRemotePath());
OCFile parent = mStorageManager.getFileByPath(remoteParentPath);
mCurrentUpload.getFile().setParentId(parent.getFileId());
uploadResult = mCurrentUpload.execute(mUploadClient);
if (uploadResult.isSuccess()) {
saveUploadedFile();
+
+ } else if (uploadResult.getCode() == ResultCode.SYNC_CONFLICT) {
+ mStorageManager.saveConflict(mCurrentUpload.getFile(),
+ mCurrentUpload.getFile().getEtagInConflict());
}
} else {
uploadResult = grantResult;
uploadResult = new RemoteOperationResult(e);
} finally {
- Log_OC.v("NOW " + TAG + ", thread " + Thread.currentThread().getName(),
- "Removing payload " + mCurrentUpload.getRemotePath());
Pair<UploadFileOperation, String> removeResult;
if (mCurrentUpload.wasRenamed()) {
removeResult = mPendingUploads.removePayload(
if (oldFile.fileExists()) {
oldFile.setStoragePath(null);
mStorageManager.saveFile(oldFile);
- mStorageManager.saveConflict(oldFile, false);
+ mStorageManager.saveConflict(oldFile, null);
} // else: it was just an automatic renaming due to a name
// coincidence; nothing else is needed, the storagePath is right
}
file.setNeedsUpdateThumbnail(true);
mStorageManager.saveFile(file);
- mStorageManager.saveConflict(file, false);
+ mStorageManager.saveConflict(file, null);
+
+ mStorageManager.triggerMediaScan(file.getStoragePath());
+
}
private void updateOCFile(OCFile file, RemoteFile remoteFile) {