diff options
author | tobiasKaminsky <tobias@kaminsky.me> | 2017-11-13 18:34:16 +0300 |
---|---|---|
committer | AndyScherzinger <info@andy-scherzinger.de> | 2018-06-23 16:59:38 +0300 |
commit | 3da708e360c690cceea866a511006fa455c921de (patch) | |
tree | e5dff1339beb7e1d4196b5d0c6d421b0ea25ed94 | |
parent | 99b1b54b543996736c68c37c5ae0baef4e15625e (diff) |
wip FNSfns
-rw-r--r-- | src/com/owncloud/android/lib/resources/files/FullNextSearchFileSearchOperation.java | 21 |
1 files changed, 18 insertions, 3 deletions
diff --git a/src/com/owncloud/android/lib/resources/files/FullNextSearchFileSearchOperation.java b/src/com/owncloud/android/lib/resources/files/FullNextSearchFileSearchOperation.java index 545a2902..d54d777f 100644 --- a/src/com/owncloud/android/lib/resources/files/FullNextSearchFileSearchOperation.java +++ b/src/com/owncloud/android/lib/resources/files/FullNextSearchFileSearchOperation.java @@ -68,16 +68,31 @@ public class FullNextSearchFileSearchOperation extends RemoteOperation { JsonArray jsonDataArray = (JsonArray) jsonObject.getAsJsonArray("result").getAsJsonArray().get(0) .getAsJsonObject().get("documents"); - HashMap<Integer, ArrayList<String>> results = new HashMap<>(); + HashMap<RemoteFile, ArrayList<String>> results = new HashMap<>(); for (JsonElement element: jsonDataArray) { - Integer id = element.getAsJsonObject().get("id").getAsInt(); + JsonObject object = element.getAsJsonObject(); + JsonObject more = object.get("more").getAsJsonObject(); + RemoteFile file = new RemoteFile(more.get("path").getAsString()); + file.setRemoteId(more.get("webdav").getAsString()); + file.setCreationTimestamp(more.get("timestamp").getAsLong() * 1000); + file.setMimeType(more.get("mimetype").getAsString()); + file.setModifiedTimestamp(more.get("modified_timestamp").getAsLong() * 1000); + file.setEtag(more.get("etag").getAsString()); + file.setPermissions(more.get("permissions").getAsString()); + if (more.get("mimetype").getAsString().equalsIgnoreCase("DIR")) { + file.setSize(more.get("size").getAsLong()); + } else { + file.setLength(more.get("size").getAsLong()); + } + file.setFavorite(more.get("favorite").getAsBoolean()); + ArrayList<String> excerpts = new ArrayList<>(); for (JsonElement excerpt: element.getAsJsonObject().get("excerpts").getAsJsonArray()) { excerpts.add(excerpt.getAsString()); } - results.put(id, excerpts); + results.put(file, excerpts); } result = new RemoteOperationResult(true, status, getMethod.getResponseHeaders()); ArrayList<Object> list = new ArrayList<>(); |