Skip to content

Commit

Permalink
add servlet processor dependency to servlet modules (#2494)
Browse files Browse the repository at this point in the history
  • Loading branch information
graemerocher committed Jun 5, 2024
1 parent 08f9b4f commit 6e7d043
Show file tree
Hide file tree
Showing 8 changed files with 72 additions and 9 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,7 @@ public final class MicronautDependencyUtils {
public static final String GROUP_ID_MICRONAUT_GROOVY = "io.micronaut.groovy";
public static final String GROUP_ID_IO_MICRONAUT_NEO4J = "io.micronaut.neo4j";
public static final String GROUP_ID_IO_MICRONAUT_OPENAPI = "io.micronaut.openapi";
public static final String GROUP_ID_IO_MICRONAUT_SERVLET = "io.micronaut.servlet";
public static final String GROUP_ID_IO_MICRONAUT_VALIDATION = "io.micronaut.validation";

public static final String GROUP_ID_MICRONAUT_PLATFORM = "io.micronaut.platform";
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
/*
* Copyright 2017-2024 original 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 io.micronaut.starter.feature.server;

import static io.micronaut.starter.build.dependencies.MicronautDependencyUtils.GROUP_ID_IO_MICRONAUT_SERVLET;

import io.micronaut.starter.application.generator.GeneratorContext;
import io.micronaut.starter.build.dependencies.MicronautDependencyUtils;

/**
* Base feature for all servlet impls.
*/
public abstract class AbstractServletFeature extends AbstractMicronautServerFeature {
@Override
public void apply(GeneratorContext generatorContext) {
generatorContext.addDependency(
MicronautDependencyUtils.annotationProcessor(generatorContext.getBuildTool(),
GROUP_ID_IO_MICRONAUT_SERVLET,
"micronaut-servlet-processor",
"micronaut.servlet.version"
)
);
super.apply(generatorContext);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@
import jakarta.inject.Singleton;

@Singleton
public class Jetty extends AbstractMicronautServerFeature {
public class Jetty extends AbstractServletFeature {

@Override
public String getName() {
Expand All @@ -42,7 +42,7 @@ public String getDescription() {

@Override
public String getMicronautDocumentation() {
return "https://micronaut-projects.github.io/micronaut-servlet/1.0.x/guide/index.html#jetty";
return "https://micronaut-projects.github.io/micronaut-servlet/latest/guide/index.html#jetty";
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@
import jakarta.inject.Singleton;

@Singleton
public class Tomcat extends AbstractMicronautServerFeature {
public class Tomcat extends AbstractServletFeature {

@Override
public String getName() {
Expand All @@ -42,7 +42,7 @@ public String getDescription() {

@Override
public String getMicronautDocumentation() {
return "https://micronaut-projects.github.io/micronaut-servlet/1.0.x/guide/index.html#tomcat";
return "https://micronaut-projects.github.io/micronaut-servlet/latest/guide/index.html#tomcat";
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@
import jakarta.inject.Singleton;

@Singleton
public class Undertow extends AbstractMicronautServerFeature {
public class Undertow extends AbstractServletFeature {

@Override
public String getName() {
Expand All @@ -42,7 +42,7 @@ public String getDescription() {

@Override
public String getMicronautDocumentation() {
return "https://micronaut-projects.github.io/micronaut-servlet/1.0.x/guide/index.html#undertow";
return "https://micronaut-projects.github.io/micronaut-servlet/latest/guide/index.html#undertow";
}

@Override
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,14 @@
package io.micronaut.starter.feature.server

import io.micronaut.starter.BeanContextSpec
import io.micronaut.starter.BuildBuilder
import io.micronaut.starter.build.BuildTestUtil
import io.micronaut.starter.build.BuildTestVerifier
import io.micronaut.starter.build.dependencies.Scope
import io.micronaut.starter.feature.aws.DynamoDb
import io.micronaut.starter.fixture.CommandOutputFixture
import io.micronaut.starter.options.BuildTool
import io.micronaut.starter.options.Language

class JettyTestSpec extends BeanContextSpec implements CommandOutputFixture {

Expand All @@ -12,7 +19,24 @@ class JettyTestSpec extends BeanContextSpec implements CommandOutputFixture {

then:
readme
readme.contains("https://micronaut-projects.github.io/micronaut-servlet/1.0.x/guide/index.html#jetty")
readme.contains("https://micronaut-projects.github.io/micronaut-servlet/latest/guide/index.html#jetty")
}

void 'test #buildTool jetty-server feature for language=#language'(Language language, BuildTool buildTool) {
when:
String template = new BuildBuilder(beanContext, buildTool)
.language(language)
.features(["jetty-server"])
.render()
BuildTestVerifier verifier = BuildTestUtil.verifier(buildTool, language, template)

then:
template.contains("runtime(\"jetty\")") || template.contains(">jetty</")

and: 'processor is applied'
verifier.hasAnnotationProcessor("io.micronaut.servlet", "micronaut-servlet-processor")

where:
[language, buildTool] << [Language.values().toList(), BuildTool.values()].combinations()
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ class TomcatSpec extends BeanContextSpec implements CommandOutputFixture {

then:
readme
readme.contains("https://micronaut-projects.github.io/micronaut-servlet/1.0.x/guide/index.html#tomcat")
readme.contains("https://micronaut-projects.github.io/micronaut-servlet/latest/guide/index.html#tomcat")
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ class UndertowSpec extends BeanContextSpec implements CommandOutputFixture {

then:
readme
readme.contains("https://micronaut-projects.github.io/micronaut-servlet/1.0.x/guide/index.html#undertow")
readme.contains("https://micronaut-projects.github.io/micronaut-servlet/latest/guide/index.html#undertow")
}

}

0 comments on commit 6e7d043

Please sign in to comment.