mirror of
				https://github.com/owncloud/android-library.git
				synced 2025-10-31 02:17:41 +00:00 
			
		
		
		
	Keep working on uploads
This commit is contained in:
		
							parent
							
								
									bdd6a1be0c
								
							
						
					
					
						commit
						f3a080e9a8
					
				
							
								
								
									
										1
									
								
								sample_client/assets/oc_sample.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								sample_client/assets/oc_sample.txt
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1 @@ | |||||||
|  | Testing ownCloud uploads | ||||||
| @ -41,7 +41,6 @@ import android.widget.Toast; | |||||||
| import com.owncloud.android.lib.common.OwnCloudClient; | import com.owncloud.android.lib.common.OwnCloudClient; | ||||||
| import com.owncloud.android.lib.common.OwnCloudClientFactory; | import com.owncloud.android.lib.common.OwnCloudClientFactory; | ||||||
| import com.owncloud.android.lib.common.authentication.OwnCloudCredentialsFactory; | import com.owncloud.android.lib.common.authentication.OwnCloudCredentialsFactory; | ||||||
| import com.owncloud.android.lib.common.network.FileRequestEntity; |  | ||||||
| import com.owncloud.android.lib.common.network.OnDatatransferProgressListener; | import com.owncloud.android.lib.common.network.OnDatatransferProgressListener; | ||||||
| import com.owncloud.android.lib.common.operations.OnRemoteOperationListener; | import com.owncloud.android.lib.common.operations.OnRemoteOperationListener; | ||||||
| import com.owncloud.android.lib.common.operations.RemoteOperation; | import com.owncloud.android.lib.common.operations.RemoteOperation; | ||||||
| @ -53,7 +52,6 @@ import com.owncloud.android.lib.resources.files.RemoteFile; | |||||||
| import com.owncloud.android.lib.resources.files.RemoveRemoteFileOperation; | import com.owncloud.android.lib.resources.files.RemoveRemoteFileOperation; | ||||||
| import com.owncloud.android.lib.resources.files.UploadRemoteFileOperation; | import com.owncloud.android.lib.resources.files.UploadRemoteFileOperation; | ||||||
| 
 | 
 | ||||||
| import org.apache.commons.httpclient.methods.RequestEntity; |  | ||||||
| import org.json.JSONException; | import org.json.JSONException; | ||||||
| import org.json.JSONObject; | import org.json.JSONObject; | ||||||
| 
 | 
 | ||||||
| @ -102,7 +100,12 @@ public class MainActivity extends Activity implements OnRemoteOperationListener, | |||||||
| 
 | 
 | ||||||
| 	private static final String OC_TOTAL_LENGTH_HEADER = "OC-Total-Length"; | 	private static final String OC_TOTAL_LENGTH_HEADER = "OC-Total-Length"; | ||||||
| 	private static final String OC_X_OC_MTIME_HEADER = "X-OC-Mtime"; | 	private static final String OC_X_OC_MTIME_HEADER = "X-OC-Mtime"; | ||||||
| 	private static final String IF_MATCH_HEADER = "If-Match"; |     private static final String AUTHORIZATION_HEADER = "Authorization"; | ||||||
|  |     private static final String USER_AGENT_HEADER = "User-Agent"; | ||||||
|  |     private static final String CONTENT_TYPE_HEADER = "Content-Type"; | ||||||
|  | 
 | ||||||
|  | 	private static final String USER_AGENT_VALUE = "Mozilla/5.0 (Android) ownCloud-android/2.7.0"; | ||||||
|  | 	private static final String CONTENT_TYPE_VALUE = "multipart/form-data"; | ||||||
| 
 | 
 | ||||||
| 	private OkHttpClient mOkHttpClient; | 	private OkHttpClient mOkHttpClient; | ||||||
| 
 | 
 | ||||||
| @ -263,7 +266,8 @@ public class MainActivity extends Activity implements OnRemoteOperationListener, | |||||||
| 
 | 
 | ||||||
| 		final Request request = new Request.Builder() | 		final Request request = new Request.Builder() | ||||||
| 				.url(URL + NEW_WEBDAV_PATH + USERNAME) | 				.url(URL + NEW_WEBDAV_PATH + USERNAME) | ||||||
| 				.addHeader("Authorization", mCredentials) | 				.addHeader(AUTHORIZATION_HEADER, mCredentials) | ||||||
|  | 				.addHeader(USER_AGENT_HEADER, USER_AGENT_VALUE) | ||||||
| 				.method("PROPFIND", null) | 				.method("PROPFIND", null) | ||||||
| 				.build(); | 				.build(); | ||||||
| 
 | 
 | ||||||
| @ -309,8 +313,6 @@ public class MainActivity extends Activity implements OnRemoteOperationListener, | |||||||
| 		Long timeStampLong = fileToUpload.lastModified()/1000; | 		Long timeStampLong = fileToUpload.lastModified()/1000; | ||||||
| 		String timeStamp = timeStampLong.toString(); | 		String timeStamp = timeStampLong.toString(); | ||||||
| 
 | 
 | ||||||
| 		RequestEntity entity  = new FileRequestEntity(fileToUpload, mimeType); |  | ||||||
| 
 |  | ||||||
| //		Let's first use OKHttp with the new endpoint without depending on our library operations | //		Let's first use OKHttp with the new endpoint without depending on our library operations | ||||||
| 
 | 
 | ||||||
| //    	UploadRemoteFileOperation uploadOperation = new UploadRemoteFileOperation(fileToUpload.getAbsolutePath(), remotePath, mimeType, timeStamp); | //    	UploadRemoteFileOperation uploadOperation = new UploadRemoteFileOperation(fileToUpload.getAbsolutePath(), remotePath, mimeType, timeStamp); | ||||||
| @ -319,19 +321,22 @@ public class MainActivity extends Activity implements OnRemoteOperationListener, | |||||||
| 
 | 
 | ||||||
| 		if (!validServerAddress()) return; | 		if (!validServerAddress()) return; | ||||||
| 
 | 
 | ||||||
| 		RequestBody requestBody = new MultipartBody.Builder().setType(MultipartBody.FORM) | 		RequestBody requestBody = new MultipartBody.Builder() | ||||||
| 				.addFormDataPart("testImage", fileToUpload.getName(), RequestBody.create(mediaType, fileToUpload)) | 				.setType(MultipartBody.FORM) | ||||||
|  | 				.addFormDataPart("data", fileToUpload.getName(), RequestBody.create(mediaType, fileToUpload)) | ||||||
|  |                 .addFormDataPart("name", fileToUpload.getName()) | ||||||
| 				.build(); | 				.build(); | ||||||
| 
 | 
 | ||||||
| 		final Request request = new Request.Builder() | 		final Request request = new Request.Builder() | ||||||
| 				.url(URL + NEW_WEBDAV_PATH + USERNAME + remotePath) | 				.url(URL + NEW_WEBDAV_PATH + USERNAME + remotePath) | ||||||
| 				.addHeader("Authorization", mCredentials) | 				.addHeader(AUTHORIZATION_HEADER, mCredentials) | ||||||
|  | 				.addHeader(USER_AGENT_HEADER, USER_AGENT_VALUE) | ||||||
|  |                 .addHeader(CONTENT_TYPE_HEADER, CONTENT_TYPE_VALUE) | ||||||
| 				.addHeader(OC_TOTAL_LENGTH_HEADER, String.valueOf(fileToUpload.length())) | 				.addHeader(OC_TOTAL_LENGTH_HEADER, String.valueOf(fileToUpload.length())) | ||||||
| 				.addHeader(OC_X_OC_MTIME_HEADER, timeStamp) | 				.addHeader(OC_X_OC_MTIME_HEADER, timeStamp) | ||||||
| 				.put(requestBody) | 				.put(requestBody) | ||||||
| 				.build(); | 				.build(); | ||||||
| 
 | 
 | ||||||
| 
 |  | ||||||
| 		mOkHttpClient.newCall(request).enqueue(new Callback() { | 		mOkHttpClient.newCall(request).enqueue(new Callback() { | ||||||
| 
 | 
 | ||||||
| 			@Override public void onResponse(Call call, final Response response) throws IOException { | 			@Override public void onResponse(Call call, final Response response) throws IOException { | ||||||
| @ -346,7 +351,7 @@ public class MainActivity extends Activity implements OnRemoteOperationListener, | |||||||
| 
 | 
 | ||||||
| 					final String putResult = response.body().string(); | 					final String putResult = response.body().string(); | ||||||
| 
 | 
 | ||||||
| 					showSuccessfulMessage(putResult); | 					showSuccessfulMessage("Successful upload"); | ||||||
| 				} | 				} | ||||||
| 			} | 			} | ||||||
| 
 | 
 | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user