Loading src/com/owncloud/android/lib/common/operations/RemoteOperationResult.java +4 −6 Original line number Diff line number Diff line Loading @@ -42,7 +42,6 @@ import org.apache.commons.httpclient.HttpException; import org.apache.commons.httpclient.HttpStatus; import org.apache.jackrabbit.webdav.DavException; import org.json.JSONException; import org.xmlpull.v1.XmlPullParserException; import android.accounts.Account; import android.accounts.AccountsException; Loading @@ -50,7 +49,6 @@ import android.accounts.AccountsException; import com.owncloud.android.lib.common.accounts.AccountUtils.AccountNotFoundException; import com.owncloud.android.lib.common.network.CertificateCombinedException; import com.owncloud.android.lib.common.utils.Log_OC; import com.owncloud.android.lib.resources.shares.ShareXMLParser; /** Loading @@ -64,9 +62,9 @@ import com.owncloud.android.lib.resources.shares.ShareXMLParser; public class RemoteOperationResult implements Serializable { /** Generated - should be refreshed every time the class changes!! */; private static final long serialVersionUID = -9003837206000993465L; private static final long serialVersionUID = -4184015692120731701L; private static final String TAG = "RemoteOperationResult"; private static final String TAG = RemoteOperationResult.class.getSimpleName(); public enum ResultCode { OK, Loading src/com/owncloud/android/lib/resources/files/ChunkedUploadRemoteFileOperation.java +11 −6 Original line number Diff line number Diff line Loading @@ -61,17 +61,21 @@ public class ChunkedUploadRemoteFileOperation extends UploadRemoteFileOperation raf = new RandomAccessFile(file, "r"); channel = raf.getChannel(); mEntity = new ChunkFromFileChannelRequestEntity(channel, mMimeType, CHUNK_SIZE, file); //((ProgressiveDataTransferer)mEntity).addDatatransferProgressListeners(getDataTransferListeners()); //((ProgressiveDataTransferer)mEntity). // addDatatransferProgressListeners(getDataTransferListeners()); synchronized (mDataTransferListeners) { ((ProgressiveDataTransferer)mEntity).addDatatransferProgressListeners(mDataTransferListeners); ((ProgressiveDataTransferer)mEntity) .addDatatransferProgressListeners(mDataTransferListeners); } long offset = 0; String uriPrefix = client.getWebdavUri() + WebdavUtils.encodePath(mRemotePath) + "-chunking-" + Math.abs((new Random()).nextInt(9000)+1000) + "-" ; String uriPrefix = client.getWebdavUri() + WebdavUtils.encodePath(mRemotePath) + "-chunking-" + Math.abs((new Random()).nextInt(9000)+1000) + "-" ; long chunkCount = (long) Math.ceil((double)file.length() / CHUNK_SIZE); for (int chunkIndex = 0; chunkIndex < chunkCount ; chunkIndex++, offset += CHUNK_SIZE) { if (mPutMethod != null) { mPutMethod.releaseConnection(); // let the connection available for other methods mPutMethod.releaseConnection(); // let the connection available // for other methods } mPutMethod = new PutMethod(uriPrefix + chunkCount + "-" + chunkIndex); mPutMethod.addRequestHeader(OC_CHUNKED_HEADER, OC_CHUNKED_HEADER); Loading @@ -80,7 +84,8 @@ public class ChunkedUploadRemoteFileOperation extends UploadRemoteFileOperation mPutMethod.setRequestEntity(mEntity); status = client.executeMethod(mPutMethod); client.exhaustResponse(mPutMethod.getResponseBodyAsStream()); Log_OC.d(TAG, "Upload of " + mLocalPath + " to " + mRemotePath + ", chunk index " + chunkIndex + ", count " + chunkCount + ", HTTP result status " + status); Log_OC.d(TAG, "Upload of " + mLocalPath + " to " + mRemotePath + ", chunk index " + chunkIndex + ", count " + chunkCount + ", HTTP result status " + status); if (!isSuccess(status)) break; } Loading src/com/owncloud/android/lib/resources/files/MoveRemoteFileOperation.java +13 −9 Original line number Diff line number Diff line Loading @@ -39,6 +39,7 @@ import com.owncloud.android.lib.common.network.WebdavUtils; import com.owncloud.android.lib.common.operations.RemoteOperation; import com.owncloud.android.lib.common.operations.RemoteOperationResult; import com.owncloud.android.lib.common.operations.RemoteOperationResult.ResultCode; import com.owncloud.android.lib.common.utils.Log_OC; /** Loading Loading @@ -129,8 +130,11 @@ public class MoveRemoteFileOperation extends RemoteOperation { /// for other errors that could be explicitly handled, check first: /// http://www.webdav.org/specs/rfc4918.html#rfc.section.9.9.4 } else if (status == 400) { result = new RemoteOperationResult(move.succeeded(), move.getResponseBodyAsString(), status); Log_OC.d(TAG, move.getResponseBodyAsString()); } else { result = new RemoteOperationResult( isSuccess(status), // move.succeeded()? trustful? status, Loading src/com/owncloud/android/lib/resources/files/RenameRemoteFileOperation.java +12 −8 Original line number Diff line number Diff line Loading @@ -94,12 +94,10 @@ public class RenameRemoteFileOperation extends RemoteOperation { if (noInvalidChars) { try { if (mNewName.equals(mOldName)) { return new RemoteOperationResult(ResultCode.OK); } // check if a file with the new name already exists if (client.existsFile(mNewRemotePath)) { return new RemoteOperationResult(ResultCode.INVALID_OVERWRITE); Loading @@ -110,11 +108,17 @@ public class RenameRemoteFileOperation extends RemoteOperation { client.getWebdavUri() + WebdavUtils.encodePath(mNewRemotePath)); int status = client.executeMethod(move, RENAME_READ_TIMEOUT, RENAME_CONNECTION_TIMEOUT); if (status == 400) { result = new RemoteOperationResult(move.succeeded(), move.getResponseBodyAsString(), status); Log_OC.d(TAG, move.getResponseBodyAsString()); } else { move.getResponseBodyAsString(); // exhaust response, although not interesting result = new RemoteOperationResult(move.succeeded(), status, move.getResponseHeaders()); result = new RemoteOperationResult(move.succeeded(), status, move.getResponseHeaders()); Log_OC.i(TAG, "Rename " + mOldRemotePath + " to " + mNewRemotePath + ": " + result.getLogMessage()); } } catch (Exception e) { result = new RemoteOperationResult(e); Log_OC.e(TAG, "Rename " + mOldRemotePath + " to " + Loading src/com/owncloud/android/lib/resources/files/UploadRemoteFileOperation.java +11 −4 Original line number Diff line number Diff line Loading @@ -43,6 +43,7 @@ import com.owncloud.android.lib.common.network.WebdavUtils; import com.owncloud.android.lib.common.operations.OperationCancelledException; import com.owncloud.android.lib.common.operations.RemoteOperation; import com.owncloud.android.lib.common.operations.RemoteOperationResult; import com.owncloud.android.lib.common.utils.Log_OC; /** * Remote operation performing the upload of a remote file to the ownCloud server. Loading @@ -53,6 +54,8 @@ import com.owncloud.android.lib.common.operations.RemoteOperationResult; public class UploadRemoteFileOperation extends RemoteOperation { private static final String TAG = UploadRemoteFileOperation.class.getSimpleName(); protected static final String OC_TOTAL_LENGTH_HEADER = "OC-Total-Length"; protected String mLocalPath; Loading Loading @@ -87,10 +90,14 @@ public class UploadRemoteFileOperation extends RemoteOperation { } int status = uploadFile(client); if (status == 400) { result = new RemoteOperationResult(isSuccess(status), mPutMethod.getResponseBodyAsString(), status); Log_OC.d(TAG, mPutMethod.getResponseBodyAsString()); } else { result = new RemoteOperationResult(isSuccess(status), status, (mPutMethod != null ? mPutMethod.getResponseHeaders() : null)); } } catch (Exception e) { // TODO something cleaner with cancellations if (mCancellationRequested.get()) { Loading Loading
src/com/owncloud/android/lib/common/operations/RemoteOperationResult.java +4 −6 Original line number Diff line number Diff line Loading @@ -42,7 +42,6 @@ import org.apache.commons.httpclient.HttpException; import org.apache.commons.httpclient.HttpStatus; import org.apache.jackrabbit.webdav.DavException; import org.json.JSONException; import org.xmlpull.v1.XmlPullParserException; import android.accounts.Account; import android.accounts.AccountsException; Loading @@ -50,7 +49,6 @@ import android.accounts.AccountsException; import com.owncloud.android.lib.common.accounts.AccountUtils.AccountNotFoundException; import com.owncloud.android.lib.common.network.CertificateCombinedException; import com.owncloud.android.lib.common.utils.Log_OC; import com.owncloud.android.lib.resources.shares.ShareXMLParser; /** Loading @@ -64,9 +62,9 @@ import com.owncloud.android.lib.resources.shares.ShareXMLParser; public class RemoteOperationResult implements Serializable { /** Generated - should be refreshed every time the class changes!! */; private static final long serialVersionUID = -9003837206000993465L; private static final long serialVersionUID = -4184015692120731701L; private static final String TAG = "RemoteOperationResult"; private static final String TAG = RemoteOperationResult.class.getSimpleName(); public enum ResultCode { OK, Loading
src/com/owncloud/android/lib/resources/files/ChunkedUploadRemoteFileOperation.java +11 −6 Original line number Diff line number Diff line Loading @@ -61,17 +61,21 @@ public class ChunkedUploadRemoteFileOperation extends UploadRemoteFileOperation raf = new RandomAccessFile(file, "r"); channel = raf.getChannel(); mEntity = new ChunkFromFileChannelRequestEntity(channel, mMimeType, CHUNK_SIZE, file); //((ProgressiveDataTransferer)mEntity).addDatatransferProgressListeners(getDataTransferListeners()); //((ProgressiveDataTransferer)mEntity). // addDatatransferProgressListeners(getDataTransferListeners()); synchronized (mDataTransferListeners) { ((ProgressiveDataTransferer)mEntity).addDatatransferProgressListeners(mDataTransferListeners); ((ProgressiveDataTransferer)mEntity) .addDatatransferProgressListeners(mDataTransferListeners); } long offset = 0; String uriPrefix = client.getWebdavUri() + WebdavUtils.encodePath(mRemotePath) + "-chunking-" + Math.abs((new Random()).nextInt(9000)+1000) + "-" ; String uriPrefix = client.getWebdavUri() + WebdavUtils.encodePath(mRemotePath) + "-chunking-" + Math.abs((new Random()).nextInt(9000)+1000) + "-" ; long chunkCount = (long) Math.ceil((double)file.length() / CHUNK_SIZE); for (int chunkIndex = 0; chunkIndex < chunkCount ; chunkIndex++, offset += CHUNK_SIZE) { if (mPutMethod != null) { mPutMethod.releaseConnection(); // let the connection available for other methods mPutMethod.releaseConnection(); // let the connection available // for other methods } mPutMethod = new PutMethod(uriPrefix + chunkCount + "-" + chunkIndex); mPutMethod.addRequestHeader(OC_CHUNKED_HEADER, OC_CHUNKED_HEADER); Loading @@ -80,7 +84,8 @@ public class ChunkedUploadRemoteFileOperation extends UploadRemoteFileOperation mPutMethod.setRequestEntity(mEntity); status = client.executeMethod(mPutMethod); client.exhaustResponse(mPutMethod.getResponseBodyAsStream()); Log_OC.d(TAG, "Upload of " + mLocalPath + " to " + mRemotePath + ", chunk index " + chunkIndex + ", count " + chunkCount + ", HTTP result status " + status); Log_OC.d(TAG, "Upload of " + mLocalPath + " to " + mRemotePath + ", chunk index " + chunkIndex + ", count " + chunkCount + ", HTTP result status " + status); if (!isSuccess(status)) break; } Loading
src/com/owncloud/android/lib/resources/files/MoveRemoteFileOperation.java +13 −9 Original line number Diff line number Diff line Loading @@ -39,6 +39,7 @@ import com.owncloud.android.lib.common.network.WebdavUtils; import com.owncloud.android.lib.common.operations.RemoteOperation; import com.owncloud.android.lib.common.operations.RemoteOperationResult; import com.owncloud.android.lib.common.operations.RemoteOperationResult.ResultCode; import com.owncloud.android.lib.common.utils.Log_OC; /** Loading Loading @@ -129,8 +130,11 @@ public class MoveRemoteFileOperation extends RemoteOperation { /// for other errors that could be explicitly handled, check first: /// http://www.webdav.org/specs/rfc4918.html#rfc.section.9.9.4 } else if (status == 400) { result = new RemoteOperationResult(move.succeeded(), move.getResponseBodyAsString(), status); Log_OC.d(TAG, move.getResponseBodyAsString()); } else { result = new RemoteOperationResult( isSuccess(status), // move.succeeded()? trustful? status, Loading
src/com/owncloud/android/lib/resources/files/RenameRemoteFileOperation.java +12 −8 Original line number Diff line number Diff line Loading @@ -94,12 +94,10 @@ public class RenameRemoteFileOperation extends RemoteOperation { if (noInvalidChars) { try { if (mNewName.equals(mOldName)) { return new RemoteOperationResult(ResultCode.OK); } // check if a file with the new name already exists if (client.existsFile(mNewRemotePath)) { return new RemoteOperationResult(ResultCode.INVALID_OVERWRITE); Loading @@ -110,11 +108,17 @@ public class RenameRemoteFileOperation extends RemoteOperation { client.getWebdavUri() + WebdavUtils.encodePath(mNewRemotePath)); int status = client.executeMethod(move, RENAME_READ_TIMEOUT, RENAME_CONNECTION_TIMEOUT); if (status == 400) { result = new RemoteOperationResult(move.succeeded(), move.getResponseBodyAsString(), status); Log_OC.d(TAG, move.getResponseBodyAsString()); } else { move.getResponseBodyAsString(); // exhaust response, although not interesting result = new RemoteOperationResult(move.succeeded(), status, move.getResponseHeaders()); result = new RemoteOperationResult(move.succeeded(), status, move.getResponseHeaders()); Log_OC.i(TAG, "Rename " + mOldRemotePath + " to " + mNewRemotePath + ": " + result.getLogMessage()); } } catch (Exception e) { result = new RemoteOperationResult(e); Log_OC.e(TAG, "Rename " + mOldRemotePath + " to " + Loading
src/com/owncloud/android/lib/resources/files/UploadRemoteFileOperation.java +11 −4 Original line number Diff line number Diff line Loading @@ -43,6 +43,7 @@ import com.owncloud.android.lib.common.network.WebdavUtils; import com.owncloud.android.lib.common.operations.OperationCancelledException; import com.owncloud.android.lib.common.operations.RemoteOperation; import com.owncloud.android.lib.common.operations.RemoteOperationResult; import com.owncloud.android.lib.common.utils.Log_OC; /** * Remote operation performing the upload of a remote file to the ownCloud server. Loading @@ -53,6 +54,8 @@ import com.owncloud.android.lib.common.operations.RemoteOperationResult; public class UploadRemoteFileOperation extends RemoteOperation { private static final String TAG = UploadRemoteFileOperation.class.getSimpleName(); protected static final String OC_TOTAL_LENGTH_HEADER = "OC-Total-Length"; protected String mLocalPath; Loading Loading @@ -87,10 +90,14 @@ public class UploadRemoteFileOperation extends RemoteOperation { } int status = uploadFile(client); if (status == 400) { result = new RemoteOperationResult(isSuccess(status), mPutMethod.getResponseBodyAsString(), status); Log_OC.d(TAG, mPutMethod.getResponseBodyAsString()); } else { result = new RemoteOperationResult(isSuccess(status), status, (mPutMethod != null ? mPutMethod.getResponseHeaders() : null)); } } catch (Exception e) { // TODO something cleaner with cancellations if (mCancellationRequested.get()) { Loading