diff --git a/src/com/owncloud/android/lib/resources/shares/OCShare.java b/src/com/owncloud/android/lib/resources/shares/OCShare.java index de250368..b9aae451 100644 --- a/src/com/owncloud/android/lib/resources/shares/OCShare.java +++ b/src/com/owncloud/android/lib/resources/shares/OCShare.java @@ -40,11 +40,13 @@ import com.owncloud.android.lib.resources.files.FileUtils; * */ public class OCShare implements Parcelable, Serializable { - - /** Generated - should be refreshed every time the class changes!! */ - private static final long serialVersionUID = 4124975224281327921L; - 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(); public static final int DEFAULT_PERMISSION = -1; public static final int READ_PERMISSION_FLAG = 1; @@ -53,24 +55,33 @@ public class OCShare implements Parcelable, Serializable { public static final int DELETE_PERMISSION_FLAG = 8; public static final int SHARE_PERMISSION_FLAG = 16; public static final int MAXIMUM_PERMISSIONS_FOR_FILE = - READ_PERMISSION_FLAG + - UPDATE_PERMISSION_FLAG + - SHARE_PERMISSION_FLAG + READ_PERMISSION_FLAG + + UPDATE_PERMISSION_FLAG + + SHARE_PERMISSION_FLAG ; public static final int MAXIMUM_PERMISSIONS_FOR_FOLDER = - MAXIMUM_PERMISSIONS_FOR_FILE + - CREATE_PERMISSION_FLAG + - DELETE_PERMISSION_FLAG + MAXIMUM_PERMISSIONS_FOR_FILE + + CREATE_PERMISSION_FLAG + + DELETE_PERMISSION_FLAG ; - public static final int FEDERATED_PERMISSIONS_FOR_FILE = - READ_PERMISSION_FLAG + - UPDATE_PERMISSION_FLAG + public static final int FEDERATED_PERMISSIONS_FOR_FILE_UP_TO_OC9 = + READ_PERMISSION_FLAG + + UPDATE_PERMISSION_FLAG ; - public static final int FEDERATED_PERMISSIONS_FOR_FOLDER = - READ_PERMISSION_FLAG + - UPDATE_PERMISSION_FLAG + - CREATE_PERMISSION_FLAG + - DELETE_PERMISSION_FLAG + public static final int FEDERATED_PERMISSIONS_FOR_FILE_AFTER_OC9 = + READ_PERMISSION_FLAG + + UPDATE_PERMISSION_FLAG + + SHARE_PERMISSION_FLAG + ; + public static final int FEDERATED_PERMISSIONS_FOR_FOLDER_UP_TO_OC9 = + READ_PERMISSION_FLAG + + UPDATE_PERMISSION_FLAG + + CREATE_PERMISSION_FLAG + + DELETE_PERMISSION_FLAG + ; + public static final int FEDERATED_PERMISSIONS_FOR_FOLDER_AFTER_OC9 = + FEDERATED_PERMISSIONS_FOR_FOLDER_UP_TO_OC9 + + SHARE_PERMISSION_FLAG ; private long mId; diff --git a/src/com/owncloud/android/lib/resources/status/OwnCloudVersion.java b/src/com/owncloud/android/lib/resources/status/OwnCloudVersion.java index 1b9f8546..5b59b08f 100644 --- a/src/com/owncloud/android/lib/resources/status/OwnCloudVersion.java +++ b/src/com/owncloud/android/lib/resources/status/OwnCloudVersion.java @@ -50,9 +50,11 @@ public class OwnCloudVersion implements Comparable { public static final int VERSION_8 = 0x08000000; // 8.0 public static final int MINIMUM_VERSION_CAPABILITIES_API = 0x08010000; // 8.1 - + + private static final int MINIMUM_VERSION_WITH_NOT_RESHAREABLE_FEDERATED = 0x09010000; // 9.1 + private static final int MAX_DOTS = 3; - + // format is in version // 0xAABBCCDD // for version AA.BB.CC.DD @@ -156,4 +158,8 @@ public class OwnCloudVersion implements Comparable { public boolean isVersionWithCapabilitiesAPI(){ return (mVersion>= MINIMUM_VERSION_CAPABILITIES_API); } + + public boolean isNotReshareableFederatedSupported() { + return (mVersion >= MINIMUM_VERSION_WITH_NOT_RESHAREABLE_FEDERATED); + } }