diff --git a/build.gradle b/build.gradle
index 64b3f1dd..2d95ce9b 100644
--- a/build.gradle
+++ b/build.gradle
@@ -15,6 +15,7 @@ repositories {
dependencies {
compile 'org.apache.jackrabbit:jackrabbit-webdav:2.12.4'
+ compile 'com.squareup.okhttp3:okhttp:3.9.1'
}
android {
diff --git a/sample_client/res/layout/main.xml b/sample_client/res/layout/main.xml
index c011ce78..e9140c82 100644
--- a/sample_client/res/layout/main.xml
+++ b/sample_client/res/layout/main.xml
@@ -31,11 +31,22 @@
+ android:onClick="onClickHandler"
+ android:text="@string/refresh"/>
+
+
ownCloud Sample Client
Refresh
+ Check server
Upload
Delete remote file
Download
diff --git a/sample_client/src/com/owncloud/android/lib/sampleclient/MainActivity.java b/sample_client/src/com/owncloud/android/lib/sampleclient/MainActivity.java
index 3cb43f72..79accbe8 100644
--- a/sample_client/src/com/owncloud/android/lib/sampleclient/MainActivity.java
+++ b/sample_client/src/com/owncloud/android/lib/sampleclient/MainActivity.java
@@ -24,28 +24,6 @@
package com.owncloud.android.lib.sampleclient;
-import java.io.File;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import com.owncloud.android.lib.common.network.OnDatatransferProgressListener;
-import com.owncloud.android.lib.common.OwnCloudClientFactory;
-import com.owncloud.android.lib.common.OwnCloudClient;
-import com.owncloud.android.lib.common.authentication.OwnCloudCredentialsFactory;
-import com.owncloud.android.lib.common.operations.OnRemoteOperationListener;
-import com.owncloud.android.lib.resources.files.RemoteFile;
-import com.owncloud.android.lib.common.operations.RemoteOperation;
-import com.owncloud.android.lib.common.operations.RemoteOperationResult;
-import com.owncloud.android.lib.resources.files.DownloadRemoteFileOperation;
-import com.owncloud.android.lib.resources.files.ReadRemoteFolderOperation;
-import com.owncloud.android.lib.resources.files.RemoveRemoteFileOperation;
-import com.owncloud.android.lib.resources.files.UploadRemoteFileOperation;
-import com.owncloud.android.lib.resources.files.FileUtils;
-
import android.app.Activity;
import android.content.res.AssetManager;
import android.graphics.drawable.BitmapDrawable;
@@ -58,6 +36,36 @@ import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;
+import com.owncloud.android.lib.common.OwnCloudClient;
+import com.owncloud.android.lib.common.OwnCloudClientFactory;
+import com.owncloud.android.lib.common.authentication.OwnCloudCredentialsFactory;
+import com.owncloud.android.lib.common.network.OnDatatransferProgressListener;
+import com.owncloud.android.lib.common.operations.OnRemoteOperationListener;
+import com.owncloud.android.lib.common.operations.RemoteOperation;
+import com.owncloud.android.lib.common.operations.RemoteOperationResult;
+import com.owncloud.android.lib.resources.files.DownloadRemoteFileOperation;
+import com.owncloud.android.lib.resources.files.FileUtils;
+import com.owncloud.android.lib.resources.files.ReadRemoteFolderOperation;
+import com.owncloud.android.lib.resources.files.RemoteFile;
+import com.owncloud.android.lib.resources.files.RemoveRemoteFileOperation;
+import com.owncloud.android.lib.resources.files.UploadRemoteFileOperation;
+
+import java.io.File;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+
+import okhttp3.Call;
+import okhttp3.Callback;
+import okhttp3.Credentials;
+import okhttp3.Headers;
+import okhttp3.OkHttpClient;
+import okhttp3.Request;
+import okhttp3.Response;
+
public class MainActivity extends Activity implements OnRemoteOperationListener, OnDatatransferProgressListener {
private static String LOG_TAG = MainActivity.class.getCanonicalName();
@@ -127,6 +135,9 @@ public class MainActivity extends Activity implements OnRemoteOperationListener,
public void onClickHandler(View button) {
switch (button.getId()) {
+ case R.id.button_check_server:
+ startCheck();
+ break;
case R.id.button_refresh:
startRefresh();
break;
@@ -146,11 +157,65 @@ public class MainActivity extends Activity implements OnRemoteOperationListener,
Toast.makeText(this, R.string.youre_doing_it_wrong, Toast.LENGTH_SHORT).show();
}
}
+
+ private void startCheck() {
+
+ OkHttpClient client = new OkHttpClient();
+
+ Request request = new Request.Builder()
+ .url("")
+ .get()
+ .build();
+
+ client.newCall(request).enqueue(new Callback() {
+ @Override public void onFailure(Call call, IOException e) {
+ e.printStackTrace();
+ }
+
+ @Override public void onResponse(Call call, Response response) throws IOException {
+ if (!response.isSuccessful()) throw new IOException("Unexpected code " + response);
+
+ Headers responseHeaders = response.headers();
+ for (int i = 0, size = responseHeaders.size(); i < size; i++) {
+ System.out.println(responseHeaders.name(i) + ": " + responseHeaders.value(i));
+ }
+
+ System.out.println(response.body().string());
+ }
+ });
+ }
private void startRefresh() {
- ReadRemoteFolderOperation refreshOperation = new ReadRemoteFolderOperation(FileUtils.PATH_SEPARATOR);
- refreshOperation.execute(mClient, this, mHandler);
- }
+// ReadRemoteFolderOperation refreshOperation = new ReadRemoteFolderOperation(FileUtils.PATH_SEPARATOR);
+// refreshOperation.execute(mClient, this, mHandler);
+
+ OkHttpClient client = new OkHttpClient();
+
+ String credentials = Credentials.basic("", "");
+
+ Request request = new Request.Builder()
+ .url("")
+ .addHeader("Authorization", credentials)
+ .method("PROPFIND", null)
+ .build();
+
+ client.newCall(request).enqueue(new Callback() {
+ @Override public void onFailure(Call call, IOException e) {
+ e.printStackTrace();
+ }
+
+ @Override public void onResponse(Call call, Response response) throws IOException {
+ if (!response.isSuccessful()) throw new IOException("Unexpected code " + response);
+
+ Headers responseHeaders = response.headers();
+ for (int i = 0, size = responseHeaders.size(); i < size; i++) {
+ System.out.println(responseHeaders.name(i) + ": " + responseHeaders.value(i));
+ }
+
+ System.out.println(response.body().string());
+ }
+ });
+ }
private void startUpload() {
File upFolder = new File(getCacheDir(), getString(R.string.upload_folder_path));