From 84cb5a73328e783d4f8a4d3542a1cb65d7527a22 Mon Sep 17 00:00:00 2001 From: cachescrubber <5127753+cachescrubber@users.noreply.github.com> Date: Thu, 6 Apr 2023 10:08:09 +0200 Subject: [PATCH] Pass ShellContext to CommandCatalog.of in CommandCatalogAutoConfiguration (#693) - Fixes #702 --- .../shell/boot/CommandCatalogAutoConfiguration.java | 6 ++++-- .../shell/boot/CommandCatalogAutoConfigurationTests.java | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/CommandCatalogAutoConfiguration.java b/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/CommandCatalogAutoConfiguration.java index fbef8199..d38620b1 100644 --- a/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/CommandCatalogAutoConfiguration.java +++ b/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/CommandCatalogAutoConfiguration.java @@ -34,6 +34,7 @@ import org.springframework.shell.command.CommandRegistration.BuilderSupplier; import org.springframework.shell.command.CommandRegistration.OptionNameModifier; import org.springframework.shell.command.support.OptionNameModifierSupport; import org.springframework.shell.command.CommandResolver; +import org.springframework.shell.context.ShellContext; @AutoConfiguration @EnableConfigurationProperties(SpringShellProperties.class) @@ -43,9 +44,10 @@ public class CommandCatalogAutoConfiguration { @ConditionalOnMissingBean(CommandCatalog.class) public CommandCatalog commandCatalog(ObjectProvider methodTargetRegistrars, ObjectProvider commandResolvers, - ObjectProvider commandCatalogCustomizers) { + ObjectProvider commandCatalogCustomizers, + ShellContext shellContext) { List resolvers = commandResolvers.orderedStream().collect(Collectors.toList()); - CommandCatalog catalog = CommandCatalog.of(resolvers, null); + CommandCatalog catalog = CommandCatalog.of(resolvers, shellContext); methodTargetRegistrars.orderedStream().forEach(resolver -> { resolver.register(catalog); }); diff --git a/spring-shell-autoconfigure/src/test/java/org/springframework/shell/boot/CommandCatalogAutoConfigurationTests.java b/spring-shell-autoconfigure/src/test/java/org/springframework/shell/boot/CommandCatalogAutoConfigurationTests.java index dd7bdb24..61a05d2b 100644 --- a/spring-shell-autoconfigure/src/test/java/org/springframework/shell/boot/CommandCatalogAutoConfigurationTests.java +++ b/spring-shell-autoconfigure/src/test/java/org/springframework/shell/boot/CommandCatalogAutoConfigurationTests.java @@ -36,7 +36,7 @@ import static org.assertj.core.api.Assertions.assertThat; public class CommandCatalogAutoConfigurationTests { private final ApplicationContextRunner contextRunner = new ApplicationContextRunner() - .withConfiguration(AutoConfigurations.of(CommandCatalogAutoConfiguration.class)); + .withConfiguration(AutoConfigurations.of(CommandCatalogAutoConfiguration.class, ShellContextAutoConfiguration.class)); @Test void defaultCommandCatalog() {