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

Read enforced_for capability

This commit is contained in:
davigonz 2019-02-19 10:15:00 +01:00 committed by David González Verdugo
parent 78e4d167d2
commit 249e25768b
2 changed files with 69 additions and 2 deletions

View File

@ -1,6 +1,7 @@
/* ownCloud Android Library is available under MIT license /* ownCloud Android Library is available under MIT license
* @author masensio * @author masensio
* @author Semih Serhat Karakaya <karakayasemi@itu.edu.tr> * @author Semih Serhat Karakaya <karakayasemi@itu.edu.tr>
* @author David González Verdugo
* Copyright (C) 2019 ownCloud GmbH. * Copyright (C) 2019 ownCloud GmbH.
* *
* Permission is hereby granted, free of charge, to any person obtaining a copy * Permission is hereby granted, free of charge, to any person obtaining a copy
@ -74,6 +75,7 @@ public class GetRemoteCapabilitiesOperation extends RemoteOperation<OCCapability
private static final String NODE_FILES_SHARING = "files_sharing"; private static final String NODE_FILES_SHARING = "files_sharing";
private static final String NODE_PUBLIC = "public"; private static final String NODE_PUBLIC = "public";
private static final String NODE_PASSWORD = "password"; private static final String NODE_PASSWORD = "password";
private static final String NODE_ENFORCED_FOR = "enforced_for";
private static final String NODE_EXPIRE_DATE = "expire_date"; private static final String NODE_EXPIRE_DATE = "expire_date";
private static final String NODE_USER = "user"; private static final String NODE_USER = "user";
private static final String NODE_FEDERATION = "federation"; private static final String NODE_FEDERATION = "federation";
@ -94,6 +96,9 @@ public class GetRemoteCapabilitiesOperation extends RemoteOperation<OCCapability
private static final String PROPERTY_API_ENABLED = "api_enabled"; private static final String PROPERTY_API_ENABLED = "api_enabled";
private static final String PROPERTY_ENABLED = "enabled"; private static final String PROPERTY_ENABLED = "enabled";
private static final String PROPERTY_ENFORCED = "enforced"; private static final String PROPERTY_ENFORCED = "enforced";
private static final String PROPERTY_ENFORCED_READ_ONLY = "read_only";
private static final String PROPERTY_ENFORCED_READ_WRITE = "read_write";
private static final String PROPERTY_ENFORCED_UPLOAD_ONLY = "upload_only";
private static final String PROPERTY_DAYS = "days"; private static final String PROPERTY_DAYS = "days";
private static final String PROPERTY_SEND_MAIL = "send_mail"; private static final String PROPERTY_SEND_MAIL = "send_mail";
private static final String PROPERTY_UPLOAD = "upload"; private static final String PROPERTY_UPLOAD = "upload";
@ -181,10 +186,38 @@ public class GetRemoteCapabilitiesOperation extends RemoteOperation<OCCapability
JSONObject respPublic = respFilesSharing.getJSONObject(NODE_PUBLIC); JSONObject respPublic = respFilesSharing.getJSONObject(NODE_PUBLIC);
capability.setFilesSharingPublicEnabled(CapabilityBooleanType.fromBooleanValue( capability.setFilesSharingPublicEnabled(CapabilityBooleanType.fromBooleanValue(
respPublic.getBoolean(PROPERTY_ENABLED))); respPublic.getBoolean(PROPERTY_ENABLED)));
if (respPublic.has(NODE_PASSWORD)) { if (respPublic.has(NODE_PASSWORD)) {
JSONObject respPassword = respPublic.getJSONObject(NODE_PASSWORD);
capability.setFilesSharingPublicPasswordEnforced( capability.setFilesSharingPublicPasswordEnforced(
CapabilityBooleanType.fromBooleanValue( CapabilityBooleanType.fromBooleanValue(
respPublic.getJSONObject(NODE_PASSWORD).getBoolean(PROPERTY_ENFORCED))); respPublic.getJSONObject(NODE_PASSWORD).
getBoolean(PROPERTY_ENFORCED)
)
);
if(respPassword.has(NODE_ENFORCED_FOR)) {
capability.setFilesSharingPublicPasswordEnforcedReadOnly(
CapabilityBooleanType.fromBooleanValue(
respPassword.getJSONObject(NODE_ENFORCED_FOR).
getBoolean(PROPERTY_ENFORCED_READ_ONLY)
)
);
capability.setFilesSharingPublicPasswordEnforcedReadWrite(
CapabilityBooleanType.fromBooleanValue(
respPassword.getJSONObject(NODE_ENFORCED_FOR).
getBoolean(PROPERTY_ENFORCED_READ_WRITE)
)
);
capability.setFilesSharingPublicPasswordEnforcedUploadOnly(
CapabilityBooleanType.fromBooleanValue(
respPassword.getJSONObject(NODE_ENFORCED_FOR).
getBoolean(PROPERTY_ENFORCED_UPLOAD_ONLY)
)
);
}
} }
if (respPublic.has(NODE_EXPIRE_DATE)) { if (respPublic.has(NODE_EXPIRE_DATE)) {
JSONObject respExpireDate = respPublic.getJSONObject(NODE_EXPIRE_DATE); JSONObject respExpireDate = respPublic.getJSONObject(NODE_EXPIRE_DATE);

View File

@ -1,6 +1,7 @@
/* ownCloud Android Library is available under MIT license /* ownCloud Android Library is available under MIT license
* @author masensio * @author masensio
* Copyright (C) 2016 ownCloud GmbH. * @author David González Verdugo
* Copyright (C) 2019 ownCloud GmbH.
* *
* Permission is hereby granted, free of charge, to any person obtaining a copy * Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal * of this software and associated documentation files (the "Software"), to deal
@ -49,6 +50,9 @@ public class OCCapability {
private CapabilityBooleanType mFilesSharingPublicEnabled; private CapabilityBooleanType mFilesSharingPublicEnabled;
private CapabilityBooleanType mFilesSharingPublicPasswordEnforced; private CapabilityBooleanType mFilesSharingPublicPasswordEnforced;
private CapabilityBooleanType mFilesSharingPublicPasswordEnforcedReadOnly;
private CapabilityBooleanType mFilesSharingPublicPasswordEnforcedReadWrite;
private CapabilityBooleanType mFilesSharingPublicPasswordEnforcedUploadOnly;
private CapabilityBooleanType mFilesSharingPublicExpireDateEnabled; private CapabilityBooleanType mFilesSharingPublicExpireDateEnabled;
private int mFilesSharingPublicExpireDateDays; private int mFilesSharingPublicExpireDateDays;
private CapabilityBooleanType mFilesSharingPublicExpireDateEnforced; private CapabilityBooleanType mFilesSharingPublicExpireDateEnforced;
@ -84,6 +88,9 @@ public class OCCapability {
mFilesSharingApiEnabled = CapabilityBooleanType.UNKNOWN; mFilesSharingApiEnabled = CapabilityBooleanType.UNKNOWN;
mFilesSharingPublicEnabled = CapabilityBooleanType.UNKNOWN; mFilesSharingPublicEnabled = CapabilityBooleanType.UNKNOWN;
mFilesSharingPublicPasswordEnforced = CapabilityBooleanType.UNKNOWN; mFilesSharingPublicPasswordEnforced = CapabilityBooleanType.UNKNOWN;
mFilesSharingPublicPasswordEnforcedReadOnly = CapabilityBooleanType.UNKNOWN;
mFilesSharingPublicPasswordEnforcedReadWrite = CapabilityBooleanType.UNKNOWN;
mFilesSharingPublicPasswordEnforcedUploadOnly = CapabilityBooleanType.UNKNOWN;
mFilesSharingPublicExpireDateEnabled = CapabilityBooleanType.UNKNOWN; mFilesSharingPublicExpireDateEnabled = CapabilityBooleanType.UNKNOWN;
mFilesSharingPublicExpireDateDays = 0; mFilesSharingPublicExpireDateDays = 0;
mFilesSharingPublicExpireDateEnforced = CapabilityBooleanType.UNKNOWN; mFilesSharingPublicExpireDateEnforced = CapabilityBooleanType.UNKNOWN;
@ -190,6 +197,33 @@ public class OCCapability {
this.mFilesSharingPublicPasswordEnforced = filesSharingPublicPasswordEnforced; this.mFilesSharingPublicPasswordEnforced = filesSharingPublicPasswordEnforced;
} }
public CapabilityBooleanType getFilesSharingPublicPasswordEnforcedReadOnly() {
return mFilesSharingPublicPasswordEnforcedReadOnly;
}
public void setFilesSharingPublicPasswordEnforcedReadOnly(
CapabilityBooleanType filesSharingPublicPasswordEnforcedReadOnly) {
this.mFilesSharingPublicPasswordEnforcedReadOnly = filesSharingPublicPasswordEnforcedReadOnly;
}
public CapabilityBooleanType getFilesSharingPublicPasswordEnforcedReadWrite() {
return mFilesSharingPublicPasswordEnforcedReadWrite;
}
public void setFilesSharingPublicPasswordEnforcedReadWrite(
CapabilityBooleanType filesSharingPublicPasswordEnforcedReadWrite) {
this.mFilesSharingPublicPasswordEnforcedReadWrite = filesSharingPublicPasswordEnforcedReadWrite;
}
public CapabilityBooleanType getFilesSharingPublicPasswordEnforcedUploadOnly() {
return mFilesSharingPublicPasswordEnforcedUploadOnly;
}
public void setFilesSharingPublicPasswordEnforcedUploadOnly(
CapabilityBooleanType filesSharingPublicPasswordEnforcedUploadOnly) {
this.mFilesSharingPublicPasswordEnforcedUploadOnly = filesSharingPublicPasswordEnforcedUploadOnly;
}
public CapabilityBooleanType getFilesSharingPublicExpireDateEnabled() { public CapabilityBooleanType getFilesSharingPublicExpireDateEnabled() {
return mFilesSharingPublicExpireDateEnabled; return mFilesSharingPublicExpireDateEnabled;
} }