diff --git a/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/ApplicationRunnerAutoConfiguration.java b/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/ApplicationRunnerAutoConfiguration.java index 07cd8792..afae4ea0 100644 --- a/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/ApplicationRunnerAutoConfiguration.java +++ b/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/ApplicationRunnerAutoConfiguration.java @@ -17,15 +17,15 @@ package org.springframework.shell.boot; import java.util.List; +import org.springframework.boot.autoconfigure.AutoConfiguration; import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; import org.springframework.boot.context.properties.EnableConfigurationProperties; import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; import org.springframework.shell.DefaultShellApplicationRunner; import org.springframework.shell.ShellApplicationRunner; import org.springframework.shell.ShellRunner; -@Configuration(proxyBeanMethods = false) +@AutoConfiguration @EnableConfigurationProperties(SpringShellProperties.class) public class ApplicationRunnerAutoConfiguration { 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 b9780372..05fdc339 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 @@ -19,16 +19,16 @@ import java.util.List; import java.util.stream.Collectors; import org.springframework.beans.factory.ObjectProvider; +import org.springframework.boot.autoconfigure.AutoConfiguration; import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; import org.springframework.shell.MethodTargetRegistrar; import org.springframework.shell.command.CommandCatalog; import org.springframework.shell.command.CommandCatalogCustomizer; import org.springframework.shell.command.CommandRegistration; import org.springframework.shell.command.CommandResolver; -@Configuration(proxyBeanMethods = false) +@AutoConfiguration public class CommandCatalogAutoConfiguration { @Bean diff --git a/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/CompleterAutoConfiguration.java b/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/CompleterAutoConfiguration.java index 2cd84499..433ddb5b 100644 --- a/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/CompleterAutoConfiguration.java +++ b/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/CompleterAutoConfiguration.java @@ -24,14 +24,14 @@ import org.jline.reader.LineReader; import org.jline.reader.ParsedLine; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.autoconfigure.AutoConfiguration; import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; import org.springframework.shell.CompletingParsedLine; import org.springframework.shell.CompletionContext; import org.springframework.shell.CompletionProposal; import org.springframework.shell.Shell; -@Configuration(proxyBeanMethods = false) +@AutoConfiguration public class CompleterAutoConfiguration { @Autowired diff --git a/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/ComponentFlowAutoConfiguration.java b/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/ComponentFlowAutoConfiguration.java index 02a28b60..04212785 100644 --- a/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/ComponentFlowAutoConfiguration.java +++ b/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/ComponentFlowAutoConfiguration.java @@ -18,6 +18,7 @@ package org.springframework.shell.boot; import org.jline.terminal.Terminal; import org.springframework.beans.factory.ObjectProvider; +import org.springframework.boot.autoconfigure.AutoConfiguration; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; @@ -35,7 +36,7 @@ import org.springframework.shell.style.TemplateExecutor; * * @author Janne Valkealahti */ -@Configuration(proxyBeanMethods = false) +@AutoConfiguration @ConditionalOnClass(ComponentFlow.class) public class ComponentFlowAutoConfiguration { diff --git a/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/ExitCodeAutoConfiguration.java b/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/ExitCodeAutoConfiguration.java index 8e22562e..3dfec741 100644 --- a/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/ExitCodeAutoConfiguration.java +++ b/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/ExitCodeAutoConfiguration.java @@ -21,10 +21,10 @@ import java.util.function.Function; import org.springframework.boot.ExitCodeExceptionMapper; import org.springframework.boot.ExitCodeGenerator; +import org.springframework.boot.autoconfigure.AutoConfiguration; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; import org.springframework.shell.command.CommandExecution; import org.springframework.shell.exit.ExitCodeExceptionProvider; import org.springframework.shell.exit.ExitCodeMappings; @@ -34,7 +34,7 @@ import org.springframework.shell.exit.ExitCodeMappings; * * @author Janne Valkealahti */ -@Configuration(proxyBeanMethods = false) +@AutoConfiguration public class ExitCodeAutoConfiguration { @Bean diff --git a/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/JLineAutoConfiguration.java b/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/JLineAutoConfiguration.java index 358789f2..cebcf3eb 100644 --- a/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/JLineAutoConfiguration.java +++ b/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/JLineAutoConfiguration.java @@ -17,11 +17,12 @@ package org.springframework.shell.boot; import org.jline.reader.impl.history.DefaultHistory; +import org.springframework.boot.autoconfigure.AutoConfiguration; import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; -@Configuration(proxyBeanMethods = false) +@AutoConfiguration public class JLineAutoConfiguration { @Configuration diff --git a/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/JLineShellAutoConfiguration.java b/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/JLineShellAutoConfiguration.java index b918a438..198d5a1d 100644 --- a/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/JLineShellAutoConfiguration.java +++ b/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/JLineShellAutoConfiguration.java @@ -25,9 +25,9 @@ import org.jline.utils.AttributedString; import org.jline.utils.AttributedStyle; import org.springframework.beans.factory.BeanCreationException; +import org.springframework.boot.autoconfigure.AutoConfiguration; import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; import org.springframework.shell.jline.ExtendedDefaultParser; import org.springframework.shell.jline.PromptProvider; @@ -37,7 +37,7 @@ import org.springframework.shell.jline.PromptProvider; * @author Eric Bottard * @author Florent Biville */ -@Configuration(proxyBeanMethods = false) +@AutoConfiguration public class JLineShellAutoConfiguration { @Bean(destroyMethod = "close") diff --git a/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/LineReaderAutoConfiguration.java b/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/LineReaderAutoConfiguration.java index 0890c7c2..bfba557d 100644 --- a/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/LineReaderAutoConfiguration.java +++ b/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/LineReaderAutoConfiguration.java @@ -33,16 +33,16 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Value; +import org.springframework.boot.autoconfigure.AutoConfiguration; import org.springframework.boot.context.properties.EnableConfigurationProperties; import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; import org.springframework.context.event.ContextClosedEvent; import org.springframework.context.event.EventListener; import org.springframework.shell.command.CommandCatalog; import org.springframework.shell.config.UserConfigPathProvider; import org.springframework.util.StringUtils; -@Configuration(proxyBeanMethods = false) +@AutoConfiguration @EnableConfigurationProperties(SpringShellProperties.class) public class LineReaderAutoConfiguration { diff --git a/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/ParameterResolverAutoConfiguration.java b/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/ParameterResolverAutoConfiguration.java index 01a1eb90..4ec18d23 100644 --- a/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/ParameterResolverAutoConfiguration.java +++ b/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/ParameterResolverAutoConfiguration.java @@ -18,8 +18,8 @@ package org.springframework.shell.boot; import java.util.ArrayList; import java.util.List; +import org.springframework.boot.autoconfigure.AutoConfiguration; import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; import org.springframework.messaging.handler.annotation.support.HeadersMethodArgumentResolver; import org.springframework.messaging.handler.invocation.HandlerMethodArgumentResolver; import org.springframework.shell.command.ArgumentHeaderMethodArgumentResolver; @@ -30,7 +30,7 @@ import org.springframework.shell.completion.RegistrationOptionsCompletionResolve import org.springframework.shell.config.ShellConversionServiceSupplier; import org.springframework.shell.standard.ShellOptionMethodArgumentResolver; -@Configuration(proxyBeanMethods = false) +@AutoConfiguration public class ParameterResolverAutoConfiguration { @Bean diff --git a/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/ShellContextAutoConfiguration.java b/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/ShellContextAutoConfiguration.java index 7755eaf7..8f58da80 100644 --- a/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/ShellContextAutoConfiguration.java +++ b/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/ShellContextAutoConfiguration.java @@ -1,11 +1,26 @@ +/* + * Copyright 2022 the original author or authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package org.springframework.shell.boot; +import org.springframework.boot.autoconfigure.AutoConfiguration; import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; import org.springframework.shell.context.DefaultShellContext; import org.springframework.shell.context.ShellContext; -@Configuration(proxyBeanMethods = false) +@AutoConfiguration public class ShellContextAutoConfiguration { @Bean diff --git a/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/ShellRunnerAutoConfiguration.java b/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/ShellRunnerAutoConfiguration.java index e8242ada..29346dcc 100644 --- a/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/ShellRunnerAutoConfiguration.java +++ b/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/ShellRunnerAutoConfiguration.java @@ -19,9 +19,9 @@ import org.jline.reader.LineReader; import org.jline.reader.Parser; import org.springframework.beans.factory.ObjectProvider; +import org.springframework.boot.autoconfigure.AutoConfiguration; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; import org.springframework.shell.Shell; import org.springframework.shell.context.ShellContext; import org.springframework.shell.jline.InteractiveShellRunner; @@ -29,7 +29,7 @@ import org.springframework.shell.jline.NonInteractiveShellRunner; import org.springframework.shell.jline.PromptProvider; import org.springframework.shell.jline.ScriptShellRunner; -@Configuration(proxyBeanMethods = false) +@AutoConfiguration public class ShellRunnerAutoConfiguration { private Shell shell; diff --git a/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/SpringShellAutoConfiguration.java b/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/SpringShellAutoConfiguration.java index aa2fb492..9d97957d 100644 --- a/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/SpringShellAutoConfiguration.java +++ b/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/SpringShellAutoConfiguration.java @@ -20,11 +20,11 @@ import java.util.Set; import org.jline.terminal.Terminal; +import org.springframework.boot.autoconfigure.AutoConfiguration; import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; import org.springframework.boot.convert.ApplicationConversionService; import org.springframework.context.ApplicationContext; import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Import; import org.springframework.core.convert.support.DefaultConversionService; import org.springframework.format.support.FormattingConversionService; @@ -41,7 +41,7 @@ import org.springframework.shell.result.ResultHandlerConfig; /** * Creates supporting beans for running the Shell */ -@Configuration(proxyBeanMethods = false) +@AutoConfiguration @Import(ResultHandlerConfig.class) public class SpringShellAutoConfiguration { diff --git a/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/StandardAPIAutoConfiguration.java b/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/StandardAPIAutoConfiguration.java index 5c4f91cf..d227907c 100644 --- a/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/StandardAPIAutoConfiguration.java +++ b/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/StandardAPIAutoConfiguration.java @@ -1,5 +1,5 @@ /* - * Copyright 2017 the original author or authors. + * Copyright 2017-2022 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -16,8 +16,8 @@ package org.springframework.shell.boot; +import org.springframework.boot.autoconfigure.AutoConfiguration; import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; import org.springframework.shell.MethodTargetRegistrar; import org.springframework.shell.command.CommandCatalog; import org.springframework.shell.standard.CommandValueProvider; @@ -31,7 +31,7 @@ import org.springframework.shell.standard.ValueProvider; * * @author Eric Bottard */ -@Configuration(proxyBeanMethods = false) +@AutoConfiguration public class StandardAPIAutoConfiguration { @Bean diff --git a/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/StandardCommandsAutoConfiguration.java b/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/StandardCommandsAutoConfiguration.java index 486623c1..7aec5430 100644 --- a/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/StandardCommandsAutoConfiguration.java +++ b/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/StandardCommandsAutoConfiguration.java @@ -19,6 +19,7 @@ package org.springframework.shell.boot; import org.jline.reader.Parser; import org.springframework.beans.factory.ObjectProvider; +import org.springframework.boot.autoconfigure.AutoConfiguration; import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; @@ -27,9 +28,8 @@ import org.springframework.boot.info.BuildProperties; import org.springframework.boot.info.GitProperties; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Conditional; -import org.springframework.context.annotation.Configuration; -import org.springframework.shell.boot.SpringShellProperties.VersionCommand; import org.springframework.shell.boot.SpringShellProperties.HelpCommand.GroupingMode; +import org.springframework.shell.boot.SpringShellProperties.VersionCommand; import org.springframework.shell.boot.condition.OnCompletionCommandCondition; import org.springframework.shell.result.ThrowableResultHandler; import org.springframework.shell.standard.commands.Clear; @@ -47,7 +47,7 @@ import org.springframework.shell.style.TemplateExecutor; * * @author Eric Bottard */ -@Configuration(proxyBeanMethods = false) +@AutoConfiguration @ConditionalOnClass({ Help.Command.class }) @EnableConfigurationProperties(SpringShellProperties.class) public class StandardCommandsAutoConfiguration { diff --git a/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/ThemingAutoConfiguration.java b/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/ThemingAutoConfiguration.java index 09c3d6a9..0736de39 100644 --- a/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/ThemingAutoConfiguration.java +++ b/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/ThemingAutoConfiguration.java @@ -16,10 +16,10 @@ package org.springframework.shell.boot; import org.springframework.beans.factory.ObjectProvider; +import org.springframework.boot.autoconfigure.AutoConfiguration; import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; import org.springframework.boot.context.properties.EnableConfigurationProperties; import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; import org.springframework.shell.style.TemplateExecutor; import org.springframework.shell.style.Theme; import org.springframework.shell.style.ThemeActive; @@ -28,7 +28,7 @@ import org.springframework.shell.style.ThemeResolver; import org.springframework.shell.style.ThemeSettings; import org.springframework.util.StringUtils; -@Configuration(proxyBeanMethods = false) +@AutoConfiguration @EnableConfigurationProperties(SpringShellProperties.class) public class ThemingAutoConfiguration { diff --git a/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/UserConfigAutoConfiguration.java b/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/UserConfigAutoConfiguration.java index 7f777567..6fe68b61 100644 --- a/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/UserConfigAutoConfiguration.java +++ b/spring-shell-autoconfigure/src/main/java/org/springframework/shell/boot/UserConfigAutoConfiguration.java @@ -19,14 +19,14 @@ import java.nio.file.Path; import java.nio.file.Paths; import java.util.function.Function; +import org.springframework.boot.autoconfigure.AutoConfiguration; import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; import org.springframework.boot.context.properties.EnableConfigurationProperties; import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; import org.springframework.shell.config.UserConfigPathProvider; import org.springframework.util.StringUtils; -@Configuration(proxyBeanMethods = false) +@AutoConfiguration @EnableConfigurationProperties(SpringShellProperties.class) public class UserConfigAutoConfiguration {