1
0
mirror of https://github.com/owncloud/android-library.git synced 2025-06-07 16:06:08 +00:00

OC-2772: Detect FILE_NOT_FOUND error in CreateShare

This commit is contained in:
masensio 2014-02-03 09:25:48 +01:00
parent 781e738347
commit 09b1c3c15a
2 changed files with 26 additions and 10 deletions

View File

@ -129,6 +129,7 @@ public class CreateShareRemoteOperation extends RemoteOperation {
InputStream is = new ByteArrayInputStream(response.getBytes());
ShareXMLParser xmlParser = new ShareXMLParser();
mShares = xmlParser.parseXMLResponse(is);
if (xmlParser.isSuccess()) {
if (mShares != null) {
Log.d(TAG, "Shares: " + mShares.size());
result = new RemoteOperationResult(ResultCode.OK);
@ -138,6 +139,9 @@ public class CreateShareRemoteOperation extends RemoteOperation {
}
result.setData(sharesObjects);
}
} else if (xmlParser.isFilNotFound()){
result = new RemoteOperationResult(ResultCode.FILE_NOT_FOUND);
}
} else {
result = new RemoteOperationResult(false, status, post.getResponseHeaders());

View File

@ -81,6 +81,9 @@ public class ShareXMLParser {
private static final String TYPE_FOLDER = "folder";
private static final int SUCCESS = 100;
private static final int FAILURE = 403;
private static final int FILE_NOT_FOUND = 404;
private String mStatus;
private int mStatusCode;
@ -101,10 +104,19 @@ public class ShareXMLParser {
public void setStatusCode(int statusCode) {
this.mStatusCode = statusCode;
}
// Constructor
public ShareXMLParser() {
mStatusCode = 100;
}
public boolean isSuccess() {
return mStatusCode == SUCCESS;
}
public boolean isFailure() {
return mStatusCode == FAILURE;
}
public boolean isFilNotFound() {
return mStatusCode == FILE_NOT_FOUND;
}
/**