This is an automated email from the ASF dual-hosted git repository. remm pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/tomcat.git
The following commit(s) were added to refs/heads/main by this push: new d1f0c34b18 Pull up as default method since it avoids API compatibility issues d1f0c34b18 is described below commit d1f0c34b1831a1a11c9c7a3fc9d0455ca79857e0 Author: remm <r...@apache.org> AuthorDate: Wed Jun 28 21:03:13 2023 +0200 Pull up as default method since it avoids API compatibility issues --- java/org/apache/catalina/Context.java | 22 +++++++++++++++++++++- java/org/apache/catalina/core/StandardContext.java | 22 ---------------------- .../org/apache/catalina/startup/FailedContext.java | 4 ---- test/org/apache/tomcat/unittest/TesterContext.java | 4 ---- 4 files changed, 21 insertions(+), 31 deletions(-) diff --git a/java/org/apache/catalina/Context.java b/java/org/apache/catalina/Context.java index ddb29516b6..30f9f3016d 100644 --- a/java/org/apache/catalina/Context.java +++ b/java/org/apache/catalina/Context.java @@ -17,6 +17,8 @@ package org.apache.catalina; import java.io.IOException; +import java.io.InputStream; +import java.net.URISyntaxException; import java.net.URL; import java.util.Locale; import java.util.Map; @@ -39,6 +41,7 @@ import org.apache.tomcat.util.descriptor.web.FilterDef; import org.apache.tomcat.util.descriptor.web.FilterMap; import org.apache.tomcat.util.descriptor.web.LoginConfig; import org.apache.tomcat.util.descriptor.web.SecurityConstraint; +import org.apache.tomcat.util.file.ConfigFileLoader; import org.apache.tomcat.util.file.ConfigurationSource.Resource; import org.apache.tomcat.util.http.CookieProcessor; @@ -1982,5 +1985,22 @@ public interface Context extends Container, ContextBind { * @return the resource * @throws IOException if an error occurs or if the resource does not exist */ - Resource findConfigFileResource(String name) throws IOException; + default Resource findConfigFileResource(String name) throws IOException { + if (name.startsWith(WEBAPP_PROTOCOL)) { + String path = name.substring(WEBAPP_PROTOCOL.length()); + WebResource resource = getResources().getResource(path); + if (resource.canRead()) { + InputStream stream = resource.getInputStream(); + try { + return new Resource(stream, resource.getURL().toURI()); + } catch (URISyntaxException e) { + stream.close(); + } + } + return null; + } else { + return ConfigFileLoader.getSource().getResource(name); + } + } + } diff --git a/java/org/apache/catalina/core/StandardContext.java b/java/org/apache/catalina/core/StandardContext.java index b8c911a9c3..6476bf08c5 100644 --- a/java/org/apache/catalina/core/StandardContext.java +++ b/java/org/apache/catalina/core/StandardContext.java @@ -20,7 +20,6 @@ import java.io.File; import java.io.IOException; import java.io.InputStream; import java.net.MalformedURLException; -import java.net.URISyntaxException; import java.net.URL; import java.nio.charset.StandardCharsets; import java.util.ArrayDeque; @@ -128,8 +127,6 @@ import org.apache.tomcat.util.descriptor.web.LoginConfig; import org.apache.tomcat.util.descriptor.web.MessageDestination; import org.apache.tomcat.util.descriptor.web.SecurityCollection; import org.apache.tomcat.util.descriptor.web.SecurityConstraint; -import org.apache.tomcat.util.file.ConfigFileLoader; -import org.apache.tomcat.util.file.ConfigurationSource.Resource; import org.apache.tomcat.util.http.CookieProcessor; import org.apache.tomcat.util.http.Rfc6265CookieProcessor; import org.apache.tomcat.util.scan.StandardJarScanner; @@ -3500,25 +3497,6 @@ public class StandardContext extends ContainerBase implements Context, Notificat } - @Override - public Resource findConfigFileResource(String name) throws IOException { - if (name.startsWith(WEBAPP_PROTOCOL)) { - String path = name.substring(WEBAPP_PROTOCOL.length()); - WebResource resource = getResources().getResource(path); - if (resource.canRead()) { - InputStream stream = resource.getInputStream(); - try { - return new Resource(stream, resource.getURL().toURI()); - } catch (URISyntaxException e) { - stream.close(); - } - } - return null; - } else { - return ConfigFileLoader.getSource().getResource(name); - } - } - /** * Reload this web application, if reloading is supported. * <p> diff --git a/java/org/apache/catalina/startup/FailedContext.java b/java/org/apache/catalina/startup/FailedContext.java index 62ae2f35a8..71e9e76c27 100644 --- a/java/org/apache/catalina/startup/FailedContext.java +++ b/java/org/apache/catalina/startup/FailedContext.java @@ -18,7 +18,6 @@ package org.apache.catalina.startup; import java.beans.PropertyChangeListener; import java.io.File; -import java.io.IOException; import java.net.URL; import java.util.Locale; import java.util.Map; @@ -62,7 +61,6 @@ import org.apache.tomcat.util.descriptor.web.FilterDef; import org.apache.tomcat.util.descriptor.web.FilterMap; import org.apache.tomcat.util.descriptor.web.LoginConfig; import org.apache.tomcat.util.descriptor.web.SecurityConstraint; -import org.apache.tomcat.util.file.ConfigurationSource.Resource; import org.apache.tomcat.util.http.CookieProcessor; import org.apache.tomcat.util.res.StringManager; @@ -853,6 +851,4 @@ public class FailedContext extends LifecycleMBeanBase implements Context { @Override public void setParallelAnnotationScanning(boolean parallelAnnotationScanning) {} - @Override - public Resource findConfigFileResource(String name) throws IOException { return null; } } \ No newline at end of file diff --git a/test/org/apache/tomcat/unittest/TesterContext.java b/test/org/apache/tomcat/unittest/TesterContext.java index d906b60010..9c2e10754c 100644 --- a/test/org/apache/tomcat/unittest/TesterContext.java +++ b/test/org/apache/tomcat/unittest/TesterContext.java @@ -18,7 +18,6 @@ package org.apache.tomcat.unittest; import java.beans.PropertyChangeListener; import java.io.File; -import java.io.IOException; import java.net.URL; import java.util.ArrayList; import java.util.List; @@ -65,7 +64,6 @@ import org.apache.tomcat.util.descriptor.web.FilterDef; import org.apache.tomcat.util.descriptor.web.FilterMap; import org.apache.tomcat.util.descriptor.web.LoginConfig; import org.apache.tomcat.util.descriptor.web.SecurityConstraint; -import org.apache.tomcat.util.file.ConfigurationSource.Resource; import org.apache.tomcat.util.http.CookieProcessor; /** @@ -1323,6 +1321,4 @@ public class TesterContext implements Context { @Override public void setMetadataComplete(boolean metadataComplete) { /* NO-OP */ } - @Override - public Resource findConfigFileResource(String name) throws IOException { return null; } } --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org