mirror of
https://github.com/owncloud/android-library.git
synced 2025-06-07 07:56:19 +00:00
Removing quotas from webdav properties in regular propfinds
This commit is contained in:
parent
c2f32b2a82
commit
c53475da37
@ -24,13 +24,36 @@
|
|||||||
package com.owncloud.android.lib.common.http.methods.webdav
|
package com.owncloud.android.lib.common.http.methods.webdav
|
||||||
|
|
||||||
import at.bitfire.dav4jvm.Property
|
import at.bitfire.dav4jvm.Property
|
||||||
import at.bitfire.dav4jvm.PropertyUtils.getAllPropSet
|
|
||||||
import at.bitfire.dav4jvm.PropertyUtils.getQuotaPropset
|
import at.bitfire.dav4jvm.PropertyUtils.getQuotaPropset
|
||||||
|
import at.bitfire.dav4jvm.property.CreationDate
|
||||||
|
import at.bitfire.dav4jvm.property.DisplayName
|
||||||
|
import at.bitfire.dav4jvm.property.GetContentLength
|
||||||
|
import at.bitfire.dav4jvm.property.GetContentType
|
||||||
|
import at.bitfire.dav4jvm.property.GetETag
|
||||||
|
import at.bitfire.dav4jvm.property.GetLastModified
|
||||||
|
import at.bitfire.dav4jvm.property.OCId
|
||||||
|
import at.bitfire.dav4jvm.property.OCPermissions
|
||||||
|
import at.bitfire.dav4jvm.property.OCPrivatelink
|
||||||
|
import at.bitfire.dav4jvm.property.OCSize
|
||||||
|
import at.bitfire.dav4jvm.property.ResourceType
|
||||||
import com.owncloud.android.lib.common.http.methods.webdav.properties.OCShareTypes
|
import com.owncloud.android.lib.common.http.methods.webdav.properties.OCShareTypes
|
||||||
|
|
||||||
object DavUtils {
|
object DavUtils {
|
||||||
@JvmStatic val allPropset: Array<Property.Name>
|
@JvmStatic val allPropSet: Array<Property.Name>
|
||||||
get() = getAllPropSet().plus(OCShareTypes.NAME)
|
get() = arrayOf(
|
||||||
|
DisplayName.NAME,
|
||||||
|
GetContentType.NAME,
|
||||||
|
ResourceType.NAME,
|
||||||
|
GetContentLength.NAME,
|
||||||
|
GetLastModified.NAME,
|
||||||
|
CreationDate.NAME,
|
||||||
|
GetETag.NAME,
|
||||||
|
OCPermissions.NAME,
|
||||||
|
OCId.NAME,
|
||||||
|
OCSize.NAME,
|
||||||
|
OCPrivatelink.NAME,
|
||||||
|
OCShareTypes.NAME,
|
||||||
|
)
|
||||||
|
|
||||||
val quotaPropSet: Array<Property.Name>
|
val quotaPropSet: Array<Property.Name>
|
||||||
get() = getQuotaPropset()
|
get() = getQuotaPropset()
|
||||||
|
@ -25,7 +25,7 @@ package com.owncloud.android.lib.resources.files
|
|||||||
|
|
||||||
import com.owncloud.android.lib.common.OwnCloudClient
|
import com.owncloud.android.lib.common.OwnCloudClient
|
||||||
import com.owncloud.android.lib.common.http.HttpConstants
|
import com.owncloud.android.lib.common.http.HttpConstants
|
||||||
import com.owncloud.android.lib.common.http.methods.webdav.DavUtils.allPropset
|
import com.owncloud.android.lib.common.http.methods.webdav.DavUtils.allPropSet
|
||||||
import com.owncloud.android.lib.common.http.methods.webdav.PropfindMethod
|
import com.owncloud.android.lib.common.http.methods.webdav.PropfindMethod
|
||||||
import com.owncloud.android.lib.common.network.WebdavUtils
|
import com.owncloud.android.lib.common.network.WebdavUtils
|
||||||
import com.owncloud.android.lib.common.operations.RemoteOperation
|
import com.owncloud.android.lib.common.operations.RemoteOperation
|
||||||
@ -59,7 +59,7 @@ class CheckPathExistenceRemoteOperation(
|
|||||||
val stringUrl = baseStringUrl + WebdavUtils.encodePath(remotePath)
|
val stringUrl = baseStringUrl + WebdavUtils.encodePath(remotePath)
|
||||||
|
|
||||||
return try {
|
return try {
|
||||||
val propFindMethod = PropfindMethod(URL(stringUrl), 0, allPropset).apply {
|
val propFindMethod = PropfindMethod(URL(stringUrl), 0, allPropSet).apply {
|
||||||
setReadTimeout(TIMEOUT.toLong(), TimeUnit.SECONDS)
|
setReadTimeout(TIMEOUT.toLong(), TimeUnit.SECONDS)
|
||||||
setConnectionTimeout(TIMEOUT.toLong(), TimeUnit.SECONDS)
|
setConnectionTimeout(TIMEOUT.toLong(), TimeUnit.SECONDS)
|
||||||
}
|
}
|
||||||
|
@ -44,7 +44,7 @@ class GetBaseUrlRemoteOperation : RemoteOperation<String?>() {
|
|||||||
return try {
|
return try {
|
||||||
val stringUrl = client.baseFilesWebDavUri.toString()
|
val stringUrl = client.baseFilesWebDavUri.toString()
|
||||||
|
|
||||||
val propFindMethod = PropfindMethod(URL(stringUrl), 0, DavUtils.allPropset).apply {
|
val propFindMethod = PropfindMethod(URL(stringUrl), 0, DavUtils.allPropSet).apply {
|
||||||
setReadTimeout(TIMEOUT, TimeUnit.SECONDS)
|
setReadTimeout(TIMEOUT, TimeUnit.SECONDS)
|
||||||
setConnectionTimeout(TIMEOUT, TimeUnit.SECONDS)
|
setConnectionTimeout(TIMEOUT, TimeUnit.SECONDS)
|
||||||
}
|
}
|
||||||
|
@ -62,7 +62,7 @@ class ReadRemoteFileOperation(
|
|||||||
val propFind = PropfindMethod(
|
val propFind = PropfindMethod(
|
||||||
url = getFinalWebDavUrl(),
|
url = getFinalWebDavUrl(),
|
||||||
depth = DEPTH_0,
|
depth = DEPTH_0,
|
||||||
propertiesToRequest = DavUtils.allPropset
|
propertiesToRequest = DavUtils.allPropSet
|
||||||
).apply {
|
).apply {
|
||||||
setReadTimeout(SYNC_READ_TIMEOUT, TimeUnit.SECONDS)
|
setReadTimeout(SYNC_READ_TIMEOUT, TimeUnit.SECONDS)
|
||||||
setConnectionTimeout(SYNC_CONNECTION_TIMEOUT, TimeUnit.SECONDS)
|
setConnectionTimeout(SYNC_CONNECTION_TIMEOUT, TimeUnit.SECONDS)
|
||||||
|
@ -64,7 +64,7 @@ class ReadRemoteFolderOperation(
|
|||||||
val propfindMethod = PropfindMethod(
|
val propfindMethod = PropfindMethod(
|
||||||
getFinalWebDavUrl(),
|
getFinalWebDavUrl(),
|
||||||
DavConstants.DEPTH_1,
|
DavConstants.DEPTH_1,
|
||||||
DavUtils.allPropset
|
DavUtils.allPropSet
|
||||||
)
|
)
|
||||||
|
|
||||||
val status = client.executeHttpMethod(propfindMethod)
|
val status = client.executeHttpMethod(propfindMethod)
|
||||||
|
@ -39,8 +39,6 @@ import at.bitfire.dav4jvm.property.OCId
|
|||||||
import at.bitfire.dav4jvm.property.OCPermissions
|
import at.bitfire.dav4jvm.property.OCPermissions
|
||||||
import at.bitfire.dav4jvm.property.OCPrivatelink
|
import at.bitfire.dav4jvm.property.OCPrivatelink
|
||||||
import at.bitfire.dav4jvm.property.OCSize
|
import at.bitfire.dav4jvm.property.OCSize
|
||||||
import at.bitfire.dav4jvm.property.QuotaAvailableBytes
|
|
||||||
import at.bitfire.dav4jvm.property.QuotaUsedBytes
|
|
||||||
import com.owncloud.android.lib.common.OwnCloudClient
|
import com.owncloud.android.lib.common.OwnCloudClient
|
||||||
import com.owncloud.android.lib.common.http.HttpConstants
|
import com.owncloud.android.lib.common.http.HttpConstants
|
||||||
import com.owncloud.android.lib.common.http.methods.webdav.properties.OCShareTypes
|
import com.owncloud.android.lib.common.http.methods.webdav.properties.OCShareTypes
|
||||||
@ -51,7 +49,6 @@ import kotlinx.parcelize.Parcelize
|
|||||||
import okhttp3.HttpUrl
|
import okhttp3.HttpUrl
|
||||||
import timber.log.Timber
|
import timber.log.Timber
|
||||||
import java.io.File
|
import java.io.File
|
||||||
import java.math.BigDecimal
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Contains the data of a Remote File from a WebDavEntry
|
* Contains the data of a Remote File from a WebDavEntry
|
||||||
@ -73,8 +70,6 @@ data class RemoteFile(
|
|||||||
var permissions: String? = null,
|
var permissions: String? = null,
|
||||||
var remoteId: String? = null,
|
var remoteId: String? = null,
|
||||||
var size: Long = 0,
|
var size: Long = 0,
|
||||||
var quotaUsedBytes: BigDecimal? = null,
|
|
||||||
var quotaAvailableBytes: BigDecimal? = null,
|
|
||||||
var privateLink: String? = null,
|
var privateLink: String? = null,
|
||||||
var owner: String,
|
var owner: String,
|
||||||
var sharedByLink: Boolean = false,
|
var sharedByLink: Boolean = false,
|
||||||
@ -137,12 +132,6 @@ data class RemoteFile(
|
|||||||
is OCSize -> {
|
is OCSize -> {
|
||||||
remoteFile.size = property.size
|
remoteFile.size = property.size
|
||||||
}
|
}
|
||||||
is QuotaUsedBytes -> {
|
|
||||||
remoteFile.quotaUsedBytes = BigDecimal.valueOf(property.quotaUsedBytes)
|
|
||||||
}
|
|
||||||
is QuotaAvailableBytes -> {
|
|
||||||
remoteFile.quotaAvailableBytes = BigDecimal.valueOf(property.quotaAvailableBytes)
|
|
||||||
}
|
|
||||||
is OCPrivatelink -> {
|
is OCPrivatelink -> {
|
||||||
remoteFile.privateLink = property.link
|
remoteFile.privateLink = property.link
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user