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

Merge branch 'develop' into release-1.5.4

This commit is contained in:
David A. Velasco 2014-02-07 12:03:06 +01:00
commit d673c0a20f
2 changed files with 24 additions and 11 deletions

View File

@ -24,6 +24,8 @@
package com.owncloud.android.lib.operations.common; package com.owncloud.android.lib.operations.common;
import java.io.Serializable;
import com.owncloud.android.lib.utils.FileUtils; import com.owncloud.android.lib.utils.FileUtils;
import android.os.Parcel; import android.os.Parcel;
@ -37,9 +39,12 @@ import android.util.Log;
* @author masensio * @author masensio
* *
*/ */
public class OCShare implements Parcelable{ public class OCShare implements Parcelable, Serializable {
private static final String TAG = OCShare.class.getSimpleName(); /** Generated - should be refreshed every time the class changes!! */
private static final long serialVersionUID = 4124975224281327921L;
private static final String TAG = OCShare.class.getSimpleName();
private long mId; private long mId;
private long mFileSource; private long mFileSource;
@ -52,7 +57,7 @@ public class OCShare implements Parcelable{
private long mExpirationDate; private long mExpirationDate;
private String mToken; private String mToken;
private String mSharedWithDisplayName; private String mSharedWithDisplayName;
private boolean mIsDirectory; private boolean mIsFolder;
private long mUserId; private long mUserId;
private long mIdRemoteShared; private long mIdRemoteShared;
private String mShareLink; private String mShareLink;
@ -86,7 +91,7 @@ public class OCShare implements Parcelable{
mExpirationDate = 0; mExpirationDate = 0;
mToken = null; mToken = null;
mSharedWithDisplayName = null; mSharedWithDisplayName = null;
mIsDirectory = false; mIsFolder = false;
mUserId = -1; mUserId = -1;
mIdRemoteShared = -1; mIdRemoteShared = -1;
mShareLink = null; mShareLink = null;
@ -182,12 +187,12 @@ public class OCShare implements Parcelable{
this.mSharedWithDisplayName = sharedWithDisplayName; this.mSharedWithDisplayName = sharedWithDisplayName;
} }
public boolean isDirectory() { public boolean isFolder() {
return mIsDirectory; return mIsFolder;
} }
public void setIsDirectory(boolean isDirectory) { public void setIsFolder(boolean isFolder) {
this.mIsDirectory = isDirectory; this.mIsFolder = isFolder;
} }
public long getUserId() { public long getUserId() {
@ -255,7 +260,7 @@ public class OCShare implements Parcelable{
mExpirationDate = source.readLong(); mExpirationDate = source.readLong();
mToken = source.readString(); mToken = source.readString();
mSharedWithDisplayName = source.readString(); mSharedWithDisplayName = source.readString();
mIsDirectory = source.readInt() == 0; mIsFolder = source.readInt() == 0;
mUserId = source.readLong(); mUserId = source.readLong();
mIdRemoteShared = source.readLong(); mIdRemoteShared = source.readLong();
mShareLink = source.readString(); mShareLink = source.readString();
@ -281,7 +286,7 @@ public class OCShare implements Parcelable{
dest.writeLong(mExpirationDate); dest.writeLong(mExpirationDate);
dest.writeString(mToken); dest.writeString(mToken);
dest.writeString(mSharedWithDisplayName); dest.writeString(mSharedWithDisplayName);
dest.writeInt(mIsDirectory ? 1 : 0); dest.writeInt(mIsFolder ? 1 : 0);
dest.writeLong(mUserId); dest.writeLong(mUserId);
dest.writeLong(mIdRemoteShared); dest.writeLong(mIdRemoteShared);
dest.writeString(mShareLink); dest.writeString(mShareLink);

View File

@ -275,7 +275,8 @@ public class ShareXMLParser {
share.setIdRemoteShared(Integer.parseInt(readNode(parser, NODE_ID))); share.setIdRemoteShared(Integer.parseInt(readNode(parser, NODE_ID)));
} else if (name.equalsIgnoreCase(NODE_ITEM_TYPE)) { } else if (name.equalsIgnoreCase(NODE_ITEM_TYPE)) {
share.setIsDirectory(readNode(parser, NODE_ITEM_TYPE).equalsIgnoreCase(TYPE_FOLDER)); share.setIsFolder(readNode(parser, NODE_ITEM_TYPE).equalsIgnoreCase(TYPE_FOLDER));
fixPathForFolder(share);
} else if (name.equalsIgnoreCase(NODE_ITEM_SOURCE)) { } else if (name.equalsIgnoreCase(NODE_ITEM_SOURCE)) {
share.setItemSource(Long.parseLong(readNode(parser, NODE_ITEM_SOURCE))); share.setItemSource(Long.parseLong(readNode(parser, NODE_ITEM_SOURCE)));
@ -295,6 +296,7 @@ public class ShareXMLParser {
} else if (name.equalsIgnoreCase(NODE_PATH)) { } else if (name.equalsIgnoreCase(NODE_PATH)) {
share.setPath(readNode(parser, NODE_PATH)); share.setPath(readNode(parser, NODE_PATH));
fixPathForFolder(share);
} else if (name.equalsIgnoreCase(NODE_PERMISSIONS)) { } else if (name.equalsIgnoreCase(NODE_PERMISSIONS)) {
share.setPermissions(Integer.parseInt(readNode(parser, NODE_PERMISSIONS))); share.setPermissions(Integer.parseInt(readNode(parser, NODE_PERMISSIONS)));
@ -327,6 +329,12 @@ public class ShareXMLParser {
return share; return share;
} }
private void fixPathForFolder(OCShare share) {
if (share.isFolder() && share.getPath() != null && share.getPath().length() > 0 && !share.getPath().endsWith(FileUtils.PATH_SEPARATOR)) {
share.setPath(share.getPath() + FileUtils.PATH_SEPARATOR);
}
}
/** /**
* Parse a node, to obtain its text. Needs readText method * Parse a node, to obtain its text. Needs readText method
* @param parser * @param parser