From 256550b00c6a999f6fe870ab0370442fb30a2402 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Witkowski?= Date: Fri, 28 Jul 2017 13:19:56 +0200 Subject: [PATCH] #5701 Fixed resetting environment after merge. (#5753) --- .../beakerx/kernel/commands/MagicCommand.java | 24 +++++++++++-------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/kernel/base/src/main/java/com/twosigma/beakerx/kernel/commands/MagicCommand.java b/kernel/base/src/main/java/com/twosigma/beakerx/kernel/commands/MagicCommand.java index a3ad08c079..f40a117716 100644 --- a/kernel/base/src/main/java/com/twosigma/beakerx/kernel/commands/MagicCommand.java +++ b/kernel/base/src/main/java/com/twosigma/beakerx/kernel/commands/MagicCommand.java @@ -207,20 +207,24 @@ private MagicCommandItem sendErrorMessage(Message message, String messageText, i } private Collection addJars(String path) { - Map addedJars = Maps.newHashMap(); + List addedJarsName = Lists.newLinkedList(); + if (doesPathContainsWildCards(path)) { - Map collect = getPaths(path).keySet().stream() - .filter( - currentPath -> kernel.addJarToClasspath(new PathToJar(currentPath.toString()))) - .collect(Collectors.toMap(o -> o, Path::toString)); - addedJars.putAll(collect); + List pathsToJars = getPaths(path).keySet().stream() + .map(currentPath -> new PathToJar(currentPath.toString())) + .collect(Collectors.toList()); + + List addedPaths = kernel.addJarsToClasspath(pathsToJars); + addedJarsName.addAll(addedPaths.stream().map(Path::toString).collect(Collectors.toList())); + } else { Path currentPath = Paths.get(path); if (this.kernel.addJarToClasspath(new PathToJar(path))) { - addedJars.put(currentPath, currentPath.getFileName().toString()); + addedJarsName.add(currentPath.getFileName().toString()); } } - return addedJars.values(); + + return addedJarsName; } private Boolean containsSingleWildcardSymbol(String path) { @@ -232,8 +236,8 @@ private Map getPaths(String pathWithWildcard) { try { return Files.list(Paths.get(pathWithoutWildcards)) - .filter(path -> path.toString().toLowerCase().endsWith(".jar")) - .collect(Collectors.toMap(p -> p, o -> o.getFileName().toString())); + .filter(path -> path.toString().toLowerCase().endsWith(".jar")) + .collect(Collectors.toMap(p -> p, o -> o.getFileName().toString())); } catch (IOException e) { throw new IllegalStateException("Cannot find any jars files in selected path");