/** * Add a default dependency if the project does not define any dependency. */ protected void addDefaultDependency() { Dependency root = new Dependency(); root.setId(DEFAULT_STARTER); root.asSpringBootStarter(""); this.resolvedDependencies.add(root); }
private Dependency determineWebDependency(InitializrMetadata metadata) { Dependency web = metadata.getDependencies().get("web"); if (web != null) { return web; } return Dependency.withId("web").asSpringBootStarter("web"); }
/** * Update this request once it has been resolved with the specified * {@link InitializrMetadata}. * @param metadata the initializr metadata */ protected void afterResolution(InitializrMetadata metadata) { if ("war".equals(getPackaging())) { if (!hasWebFacet()) { // Need to be able to bootstrap the web app this.resolvedDependencies.add(determineWebDependency(metadata)); this.facets.add("web"); } // Add the tomcat starter in provided scope Dependency tomcat = new Dependency().asSpringBootStarter("tomcat"); tomcat.setScope(Dependency.SCOPE_PROVIDED); this.resolvedDependencies.add(tomcat); } if (this.resolvedDependencies.stream().noneMatch(Dependency::isStarter)) { // There"s no starter so we add the default one addDefaultDependency(); } }
@Test void createRootSpringBootStarter() { Dependency d = new Dependency(); d.asSpringBootStarter(""); assertThat(d.getGroupId()).isEqualTo("org.springframework.boot"); assertThat(d.getArtifactId()).isEqualTo("spring-boot-starter"); }
public PomAssert hasSpringBootStarterTomcat() { return hasDependency( Dependency.withId("tomcat", "provided").asSpringBootStarter("tomcat")); }
public PomAssert hasSpringBootStarterTest() { return hasDependency( Dependency.withId("test", "test").asSpringBootStarter("test")); }
private static void assertBootStarter(Dependency actual, String name) { Dependency expected = new Dependency(); expected.asSpringBootStarter(name); assertDependency(actual, expected.getGroupId(), expected.getArtifactId(), expected.getVersion()); assertThat(actual.getId()).isEqualTo(name); }