From 2d860f8e9a5edda07c1bbb85427b2ee9cd8f43f6 Mon Sep 17 00:00:00 2001 From: dvoraka Date: Fri, 29 Mar 2019 01:30:47 +0100 Subject: [PATCH] #64 Prepare file-based configuration --- build.gradle | 2 +- .../main/java/dvoraka/archbuilder/App.java | 4 ++ .../archbuilder/BuilderProperties.java | 42 +++++++++++++++++++ .../src/main/resources/application.properties | 3 ++ 4 files changed, 50 insertions(+), 1 deletion(-) create mode 100644 builder/src/main/java/dvoraka/archbuilder/BuilderProperties.java diff --git a/build.gradle b/build.gradle index 609a8d3..ef28f37 100644 --- a/build.gradle +++ b/build.gradle @@ -106,7 +106,7 @@ subprojects { } editorconfig { - excludes = ['**/gradlew.bat'] + excludes = ['**/gradlew.bat', '**/out/'] } check.dependsOn integrationTest diff --git a/builder/src/main/java/dvoraka/archbuilder/App.java b/builder/src/main/java/dvoraka/archbuilder/App.java index 941c29f..800f2b9 100644 --- a/builder/src/main/java/dvoraka/archbuilder/App.java +++ b/builder/src/main/java/dvoraka/archbuilder/App.java @@ -15,6 +15,7 @@ import org.springframework.boot.CommandLineRunner; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.boot.context.properties.EnableConfigurationProperties; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Profile; @@ -24,12 +25,15 @@ * Template testing. */ @SpringBootApplication +@EnableConfigurationProperties(BuilderProperties.class) public class App { @Autowired private Generator mainGenerator; @Autowired private SpringConfigGenerator configGenerator; + @Autowired + private BuilderProperties properties; public static void main(String[] args) { diff --git a/builder/src/main/java/dvoraka/archbuilder/BuilderProperties.java b/builder/src/main/java/dvoraka/archbuilder/BuilderProperties.java new file mode 100644 index 0000000..307be5a --- /dev/null +++ b/builder/src/main/java/dvoraka/archbuilder/BuilderProperties.java @@ -0,0 +1,42 @@ +package dvoraka.archbuilder; + +import org.springframework.boot.context.properties.ConfigurationProperties; + +@ConfigurationProperties(prefix = "builder") +public class BuilderProperties { + + private String defaultString = "Default"; + + private Service service = new Service(); + + + public String getDefaultString() { + return defaultString; + } + + public void setDefaultString(String defaultString) { + this.defaultString = defaultString; + } + + public Service getService() { + return service; + } + + public void setService(Service service) { + this.service = service; + } + + public static class Service { + + private String name; + + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + } +} diff --git a/builder/src/main/resources/application.properties b/builder/src/main/resources/application.properties index b060ec0..6b170c9 100644 --- a/builder/src/main/resources/application.properties +++ b/builder/src/main/resources/application.properties @@ -4,3 +4,6 @@ spring.main.web-application-type=none # Logging logging.level.root=info logging.level.dvoraka.archbuilder=debug +# builder +builder.defaultString=Default +builder.service.name=Budget