mirror of
https://github.com/owncloud/android-library.git
synced 2025-06-07 16:06:08 +00:00
Merge pull request #312 from owncloud/fix/parseFileItemSourceAsString
Parse file_source and item_source as string
This commit is contained in:
commit
c5e64bd7ac
@ -42,8 +42,8 @@ data class RemoteShare(
|
|||||||
var sharedWithAdditionalInfo: String = "",
|
var sharedWithAdditionalInfo: String = "",
|
||||||
var name: String = "",
|
var name: String = "",
|
||||||
var shareLink: String = "",
|
var shareLink: String = "",
|
||||||
var fileSource: Long = 0,
|
var fileSource: String = "0",
|
||||||
var itemSource: Long = 0,
|
var itemSource: String = "0",
|
||||||
var shareType: ShareType? = ShareType.UNKNOWN,
|
var shareType: ShareType? = ShareType.UNKNOWN,
|
||||||
var permissions: Int = DEFAULT_PERMISSION,
|
var permissions: Int = DEFAULT_PERMISSION,
|
||||||
var sharedDate: Long = INIT_SHARED_DATE,
|
var sharedDate: Long = INIT_SHARED_DATE,
|
||||||
|
@ -24,8 +24,6 @@
|
|||||||
|
|
||||||
package com.owncloud.android.lib.resources.shares;
|
package com.owncloud.android.lib.resources.shares;
|
||||||
|
|
||||||
import com.owncloud.android.lib.resources.status.OwnCloudVersion;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Contains Constants for Share Operation
|
* Contains Constants for Share Operation
|
||||||
*
|
*
|
||||||
|
@ -110,12 +110,16 @@ class ShareXMLParser {
|
|||||||
}
|
}
|
||||||
val name = parser.name
|
val name = parser.name
|
||||||
// read NODE_META and NODE_DATA
|
// read NODE_META and NODE_DATA
|
||||||
if (name.equals(NODE_META, ignoreCase = true)) {
|
when {
|
||||||
readMeta(parser)
|
name.equals(NODE_META, ignoreCase = true) -> {
|
||||||
} else if (name.equals(NODE_DATA, ignoreCase = true)) {
|
readMeta(parser)
|
||||||
shares = readData(parser)
|
}
|
||||||
} else {
|
name.equals(NODE_DATA, ignoreCase = true) -> {
|
||||||
skip(parser)
|
shares = readData(parser)
|
||||||
|
}
|
||||||
|
else -> {
|
||||||
|
skip(parser)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return shares
|
return shares
|
||||||
@ -136,17 +140,19 @@ class ShareXMLParser {
|
|||||||
}
|
}
|
||||||
val name = parser.name
|
val name = parser.name
|
||||||
|
|
||||||
if (name.equals(NODE_STATUS, ignoreCase = true)) {
|
when {
|
||||||
status = readNode(parser, NODE_STATUS)
|
name.equals(NODE_STATUS, ignoreCase = true) -> {
|
||||||
|
status = readNode(parser, NODE_STATUS)
|
||||||
} else if (name.equals(NODE_STATUS_CODE, ignoreCase = true)) {
|
}
|
||||||
statusCode = Integer.parseInt(readNode(parser, NODE_STATUS_CODE))
|
name.equals(NODE_STATUS_CODE, ignoreCase = true) -> {
|
||||||
|
statusCode = Integer.parseInt(readNode(parser, NODE_STATUS_CODE))
|
||||||
} else if (name.equals(NODE_MESSAGE, ignoreCase = true)) {
|
}
|
||||||
message = readNode(parser, NODE_MESSAGE)
|
name.equals(NODE_MESSAGE, ignoreCase = true) -> {
|
||||||
|
message = readNode(parser, NODE_MESSAGE)
|
||||||
} else {
|
}
|
||||||
skip(parser)
|
else -> {
|
||||||
|
skip(parser)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -169,27 +175,29 @@ class ShareXMLParser {
|
|||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
val name = parser.name
|
val name = parser.name
|
||||||
if (name.equals(NODE_ELEMENT, ignoreCase = true)) {
|
when {
|
||||||
readElement(parser, shares)
|
name.equals(NODE_ELEMENT, ignoreCase = true) -> {
|
||||||
|
readElement(parser, shares)
|
||||||
} else if (name.equals(NODE_ID, ignoreCase = true)) {// Parse Create XML Response
|
}
|
||||||
share = RemoteShare()
|
name.equals(NODE_ID, ignoreCase = true) -> {// Parse Create XML Response
|
||||||
val value = readNode(parser, NODE_ID)
|
share = RemoteShare()
|
||||||
share.id = Integer.parseInt(value).toLong()
|
val value = readNode(parser, NODE_ID)
|
||||||
|
share.id = Integer.parseInt(value).toLong()
|
||||||
} else if (name.equals(NODE_URL, ignoreCase = true)) {
|
}
|
||||||
// NOTE: this field is received in all the public shares from OC 9.0.0
|
name.equals(NODE_URL, ignoreCase = true) -> {
|
||||||
// in previous versions, it's received in the result of POST requests, but not
|
// NOTE: this field is received in all the public shares from OC 9.0.0
|
||||||
// in GET requests
|
// in previous versions, it's received in the result of POST requests, but not
|
||||||
share!!.shareType = ShareType.PUBLIC_LINK
|
// in GET requests
|
||||||
val value = readNode(parser, NODE_URL)
|
share!!.shareType = ShareType.PUBLIC_LINK
|
||||||
share.shareLink = value
|
val value = readNode(parser, NODE_URL)
|
||||||
|
share.shareLink = value
|
||||||
} else if (name.equals(NODE_TOKEN, ignoreCase = true)) {
|
}
|
||||||
share!!.token = readNode(parser, NODE_TOKEN)
|
name.equals(NODE_TOKEN, ignoreCase = true) -> {
|
||||||
|
share!!.token = readNode(parser, NODE_TOKEN)
|
||||||
} else {
|
}
|
||||||
skip(parser)
|
else -> {
|
||||||
|
skip(parser)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -240,7 +248,7 @@ class ShareXMLParser {
|
|||||||
}
|
}
|
||||||
|
|
||||||
name.equals(NODE_ITEM_SOURCE, ignoreCase = true) -> {
|
name.equals(NODE_ITEM_SOURCE, ignoreCase = true) -> {
|
||||||
remoteShare.itemSource = java.lang.Long.parseLong(readNode(parser, NODE_ITEM_SOURCE))
|
remoteShare.itemSource = readNode(parser, NODE_ITEM_SOURCE)
|
||||||
}
|
}
|
||||||
|
|
||||||
name.equals(NODE_PARENT, ignoreCase = true) -> {
|
name.equals(NODE_PARENT, ignoreCase = true) -> {
|
||||||
@ -257,7 +265,7 @@ class ShareXMLParser {
|
|||||||
}
|
}
|
||||||
|
|
||||||
name.equals(NODE_FILE_SOURCE, ignoreCase = true) -> {
|
name.equals(NODE_FILE_SOURCE, ignoreCase = true) -> {
|
||||||
remoteShare.fileSource = java.lang.Long.parseLong(readNode(parser, NODE_FILE_SOURCE))
|
remoteShare.fileSource = readNode(parser, NODE_FILE_SOURCE)
|
||||||
}
|
}
|
||||||
|
|
||||||
name.equals(NODE_PATH, ignoreCase = true) -> {
|
name.equals(NODE_PATH, ignoreCase = true) -> {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user