don't list META-INF, .ro and mimetype as resources Project: http://git-wip-us.apache.org/repos/asf/incubator-taverna-language/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-taverna-language/commit/509ae917 Tree: http://git-wip-us.apache.org/repos/asf/incubator-taverna-language/tree/509ae917 Diff: http://git-wip-us.apache.org/repos/asf/incubator-taverna-language/diff/509ae917
Branch: refs/heads/ucfpackage-robundle Commit: 509ae917aa8930e892566b4c8e907b270a7d4f1e Parents: 8f9dfdf Author: Stian Soiland-Reyes <[email protected]> Authored: Wed Dec 11 16:57:52 2013 +0000 Committer: Stian Soiland-Reyes <[email protected]> Committed: Thu Jul 2 15:06:27 2015 +0100 ---------------------------------------------------------------------- .../apache/taverna/scufl2/ucfpackage/UCFPackage.java | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-taverna-language/blob/509ae917/taverna-scufl2-ucfpackage/src/main/java/org/apache/taverna/scufl2/ucfpackage/UCFPackage.java ---------------------------------------------------------------------- diff --git a/taverna-scufl2-ucfpackage/src/main/java/org/apache/taverna/scufl2/ucfpackage/UCFPackage.java b/taverna-scufl2-ucfpackage/src/main/java/org/apache/taverna/scufl2/ucfpackage/UCFPackage.java index 6a89cb2..997856e 100644 --- a/taverna-scufl2-ucfpackage/src/main/java/org/apache/taverna/scufl2/ucfpackage/UCFPackage.java +++ b/taverna-scufl2-ucfpackage/src/main/java/org/apache/taverna/scufl2/ucfpackage/UCFPackage.java @@ -36,6 +36,7 @@ import java.nio.file.DirectoryStream; import java.nio.file.Files; import java.nio.file.Path; import java.util.ArrayList; +import java.util.Arrays; import java.util.HashMap; import java.util.Iterator; import java.util.List; @@ -332,6 +333,9 @@ public class UCFPackage implements Cloneable { public InputStream getResourceAsInputStream(String path) throws IOException { Path bundlePath = bundle.getRoot().resolve(path); + if (! Files.isReadable(bundlePath)) { + return null; + } return Files.newInputStream(bundlePath); } @@ -346,10 +350,17 @@ public class UCFPackage implements Cloneable { protected Map<String, ResourceEntry> listResources(String folderPath, boolean recursive) { Path bundlePath = bundle.getRoot().resolve(folderPath); - + List<Path> reserved = Arrays.asList(bundle.getRoot().resolve("META-INF"), + bundle.getRoot().resolve(".ro"), + bundle.getRoot().resolve("mimetype") + ); + HashMap<String, ResourceEntry> content = new HashMap<String, ResourceEntry>(); try (DirectoryStream<Path> ds = Files.newDirectoryStream(bundlePath)) { for (Path path : ds) { + if (reserved.contains(path)) { + continue; + } content.put(path.toString(), new ResourceEntry(path)); } } catch (IOException e) {
