| 784 | } |
| 785 | |
| 786 | private void move(String src, String dest, final CallbackContext callback) { |
| 787 | final ContentResolver contentResolver = this.context.getContentResolver(); |
| 788 | final String splittedStr[] = src.split(SEPARATOR, 2); |
| 789 | final String rootUri = splittedStr[0]; |
| 790 | final String srcId = splittedStr[1]; |
| 791 | final String destId = dest.split(SEPARATOR, 2)[1]; |
| 792 | |
| 793 | cordova |
| 794 | .getThreadPool() |
| 795 | .execute( |
| 796 | new Runnable() { |
| 797 | @Override |
| 798 | public void run() { |
| 799 | try { |
| 800 | Uri newUri = copy(rootUri, srcId, destId); |
| 801 | if (newUri == null) callback.error("Unable to copy " + src); |
| 802 | else { |
| 803 | DocumentsContract.deleteDocument( |
| 804 | contentResolver, |
| 805 | getUri(rootUri, srcId) |
| 806 | ); |
| 807 | callback.success( |
| 808 | rootUri + SEPARATOR + DocumentsContract.getDocumentId(newUri) |
| 809 | ); |
| 810 | } |
| 811 | } catch (Exception e) { |
| 812 | callback.error(e.toString()); |
| 813 | } |
| 814 | } |
| 815 | } |
| 816 | ); |
| 817 | } |
| 818 | |
| 819 | private void copy(String src, String dest, final CallbackContext callback) { |
| 820 | final String splittedStr[] = src.split(SEPARATOR, 2); |