diff --git a/README.md b/README.md index 5ee887576..ccaa5119b 100644 --- a/README.md +++ b/README.md @@ -18,6 +18,9 @@ The project is very much Work In Progress and will be published on maven central # Release Notes BOAT is still under development and subject to change. +## 0.15.6 +* *Maven Plugin* + * Add example of use the additional properties like createApiComponent ## 0.15.5 * *Boat Lint* * Bumped version of Zally Linting Libraries that contain several vulnerability fixes diff --git a/boat-maven-plugin/README.md b/boat-maven-plugin/README.md index f8d287957..980e0b6e9 100644 --- a/boat-maven-plugin/README.md +++ b/boat-maven-plugin/README.md @@ -87,6 +87,15 @@ Same with `generate` but with opinionated defaults for Rest Template Client +### Sample usage with additional feature + + + ... + + createApiComponent=false + + + ## boat:generate-webclient-embedded Same with `generate` but with opinionated defaults for Web Client diff --git a/boat-scaffold/src/main/templates/boat-java/libraries/resttemplate/ApiClient.mustache b/boat-scaffold/src/main/templates/boat-java/libraries/resttemplate/ApiClient.mustache index cbb9232b3..3142dc70d 100644 --- a/boat-scaffold/src/main/templates/boat-java/libraries/resttemplate/ApiClient.mustache +++ b/boat-scaffold/src/main/templates/boat-java/libraries/resttemplate/ApiClient.mustache @@ -8,7 +8,6 @@ import com.fasterxml.jackson.dataformat.xml.ser.ToXmlGenerator; {{/withXml}} import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import org.springframework.beans.factory.annotation.Autowired; {{#restTemplateBeanName}} import org.springframework.beans.factory.annotation.Qualifier; {{/restTemplateBeanName}} @@ -31,7 +30,10 @@ import org.springframework.http.converter.HttpMessageConverter; import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter; import org.springframework.http.converter.xml.MappingJackson2XmlHttpMessageConverter; {{/withXml}} +{{#createApiComponent}} +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; +{{/createApiComponent}} import org.springframework.util.LinkedMultiValueMap; import org.springframework.util.MultiValueMap; import org.springframework.util.StringUtils; @@ -88,7 +90,9 @@ import {{invokerPackage}}.auth.OAuth; {{/authMethods}} {{>generatedAnnotation}} +{{#createApiComponent}} @Component("{{invokerPackage}}.ApiClient") +{{/createApiComponent}} public class ApiClient { public enum CollectionFormat { CSV(","), TSV("\t"), SSV(" "), PIPES("|"), MULTI(null); @@ -127,11 +131,15 @@ public class ApiClient { } {{/useDefaultApiClient}} {{#useJacksonConversion}} +{{#createApiComponent}} @Autowired +{{/createApiComponent}} private ObjectMapper objectMapper; {{/useJacksonConversion}} +{{#createApiComponent}} @Autowired +{{/createApiComponent}} public ApiClient({{#restTemplateBeanName}}@Qualifier("{{restTemplateBeanName}}") {{/restTemplateBeanName}}RestTemplate restTemplate) { this.restTemplate = restTemplate; init();