Skip to content

Commit

Permalink
Improved converting paths from absolute to relative and vice versa
Browse files Browse the repository at this point in the history
  • Loading branch information
grzesiek2010 committed Nov 13, 2019
1 parent c36d1a2 commit b2a492b
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -33,5 +33,8 @@ public void getRelativeFilePathTest() {

assertEquals("/forms/selectext-media/itemsets.csv", FileUtils.getRelativeFilePath("/storage/emulated/0/odk/forms/selectext-media/itemsets.csv"));
assertEquals("/forms/selectext-media/itemsets.csv", FileUtils.getRelativeFilePath("/forms/selectext-media/itemsets.csv"));

assertEquals("/forms/selectext.xml", FileUtils.getRelativeFilePath("/storage/emulated/0/Android/data/org.odk.collect.android/files/forms/selectext.xml"));
assertEquals("/forms/selectext.xml", FileUtils.getRelativeFilePath("/forms/selectext.xml"));
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -697,13 +697,22 @@ public static String getAbsoluteFilePath(String filePath) {
if (filePath == null) {
return null;
}
if (filePath.startsWith("/storage/emulated/0/odk")) {
return Collect.ODK_ROOT + filePath.substring("/storage/emulated/0/odk".length());
}
return filePath.startsWith(Collect.ODK_ROOT) ? filePath : Collect.ODK_ROOT + filePath;
}

public static String getRelativeFilePath(String filePath) {
if (filePath == null) {
return null;
}
return filePath.startsWith(Collect.ODK_ROOT) ? filePath.substring(Collect.ODK_ROOT.length()) : filePath;
if (filePath.startsWith("/storage/emulated/0/odk")) {
return filePath.substring("/storage/emulated/0/odk".length());
}
if (filePath.startsWith("/storage/emulated/0/Android/data/org.odk.collect.android/files")) {
return filePath.substring("/storage/emulated/0/Android/data/org.odk.collect.android/files".length());
}
return filePath;
}
}

0 comments on commit b2a492b

Please sign in to comment.