Combine application and resources layers into a single layer
Closes gh-20562
This commit is contained in:
@@ -24,13 +24,8 @@ package org.springframework.boot.loader.tools;
|
||||
*/
|
||||
class ImplicitLayerResolver extends StandardLayers {
|
||||
|
||||
private static final String[] RESOURCE_LOCATIONS = { "META-INF/resources/", "resources/", "static/", "public/" };
|
||||
|
||||
@Override
|
||||
public Layer getLayer(String name) {
|
||||
if (!isClassFile(name) && isInResourceLocation(name)) {
|
||||
return RESOURCES;
|
||||
}
|
||||
return APPLICATION;
|
||||
}
|
||||
|
||||
@@ -42,17 +37,4 @@ class ImplicitLayerResolver extends StandardLayers {
|
||||
return DEPENDENCIES;
|
||||
}
|
||||
|
||||
private boolean isClassFile(String name) {
|
||||
return name.endsWith(".class");
|
||||
}
|
||||
|
||||
private boolean isInResourceLocation(String name) {
|
||||
for (String resourceLocation : RESOURCE_LOCATIONS) {
|
||||
if (name.startsWith(resourceLocation)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -26,7 +26,6 @@ import java.util.List;
|
||||
* <ol>
|
||||
* <li>"dependencies" - For non snapshot dependencies</li>
|
||||
* <li>"snapshot-dependencies" - For snapshot dependencies</li>
|
||||
* <li>"resources" - For static resources such as HTML files</li>
|
||||
* <li>"application" - For application classes and resources</li>
|
||||
* </ol>
|
||||
*
|
||||
@@ -46,11 +45,6 @@ public abstract class StandardLayers implements Layers {
|
||||
*/
|
||||
public static final Layer SNAPSHOT_DEPENDENCIES = new Layer("snapshot-dependencies");
|
||||
|
||||
/**
|
||||
* The resources layer.
|
||||
*/
|
||||
public static final Layer RESOURCES = new Layer("resources");
|
||||
|
||||
/**
|
||||
* The application layer.
|
||||
*/
|
||||
@@ -61,7 +55,6 @@ public abstract class StandardLayers implements Layers {
|
||||
List<Layer> layers = new ArrayList<>();
|
||||
layers.add(DEPENDENCIES);
|
||||
layers.add(SNAPSHOT_DEPENDENCIES);
|
||||
layers.add(RESOURCES);
|
||||
layers.add(APPLICATION);
|
||||
LAYERS = Collections.unmodifiableList(layers);
|
||||
}
|
||||
|
||||
@@ -35,15 +35,15 @@ class ImplicitLayerResolverTests {
|
||||
@Test
|
||||
void iteratorReturnsLayers() {
|
||||
assertThat(this.layers).containsExactly(StandardLayers.DEPENDENCIES, StandardLayers.SNAPSHOT_DEPENDENCIES,
|
||||
StandardLayers.RESOURCES, StandardLayers.APPLICATION);
|
||||
StandardLayers.APPLICATION);
|
||||
}
|
||||
|
||||
@Test
|
||||
void getLayerWhenNameInResourceLocationReturnsResourceLayer() {
|
||||
assertThat(this.layers.getLayer("META-INF/resources/logo.gif")).isEqualTo(StandardLayers.RESOURCES);
|
||||
assertThat(this.layers.getLayer("resources/logo.gif")).isEqualTo(StandardLayers.RESOURCES);
|
||||
assertThat(this.layers.getLayer("static/logo.gif")).isEqualTo(StandardLayers.RESOURCES);
|
||||
assertThat(this.layers.getLayer("public/logo.gif")).isEqualTo(StandardLayers.RESOURCES);
|
||||
void getLayerWhenNameInResourceLocationReturnsApplicationLayer() {
|
||||
assertThat(this.layers.getLayer("META-INF/resources/logo.gif")).isEqualTo(StandardLayers.APPLICATION);
|
||||
assertThat(this.layers.getLayer("resources/logo.gif")).isEqualTo(StandardLayers.APPLICATION);
|
||||
assertThat(this.layers.getLayer("static/logo.gif")).isEqualTo(StandardLayers.APPLICATION);
|
||||
assertThat(this.layers.getLayer("public/logo.gif")).isEqualTo(StandardLayers.APPLICATION);
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
Reference in New Issue
Block a user