Author: markt Date: Mon Mar 25 14:20:35 2013 New Revision: 1460675 URL: http://svn.apache.org/r1460675 Log: Partial fix for https://issues.apache.org/bugzilla/show_bug.cgi?id=54734 Implement new method ServletContext#getgetVirtualServerName()
Modified: tomcat/trunk/java/javax/servlet/ServletContext.java tomcat/trunk/java/org/apache/catalina/core/ApplicationContext.java tomcat/trunk/java/org/apache/catalina/core/ApplicationContextFacade.java tomcat/trunk/java/org/apache/jasper/servlet/JspCServletContext.java Modified: tomcat/trunk/java/javax/servlet/ServletContext.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/javax/servlet/ServletContext.java?rev=1460675&r1=1460674&r2=1460675&view=diff ============================================================================== --- tomcat/trunk/java/javax/servlet/ServletContext.java (original) +++ tomcat/trunk/java/javax/servlet/ServletContext.java Mon Mar 25 14:20:35 2013 @@ -717,4 +717,10 @@ public interface ServletContext { * @since Servlet 3.0 TODO SERVLET3 - Add comments */ public void declareRoles(String... roleNames); + + /** + * Returns the primary name of the virtual host on which this context is + * deployed. The name may or may not be a valid host name. + */ + public String getVirtualServerName(); } Modified: tomcat/trunk/java/org/apache/catalina/core/ApplicationContext.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/core/ApplicationContext.java?rev=1460675&r1=1460674&r2=1460675&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/catalina/core/ApplicationContext.java (original) +++ tomcat/trunk/java/org/apache/catalina/core/ApplicationContext.java Mon Mar 25 14:20:35 2013 @@ -1437,6 +1437,13 @@ public class ApplicationContext } + @Override + public String getVirtualServerName() { + // Constructor will fail if context or its parent is null + return ((Host) context.getParent()).getName(); + } + + // -------------------------------------------------------- Package Methods protected StandardContext getContext() { return this.context; @@ -1506,6 +1513,4 @@ public class ApplicationContext mappingData = new MappingData(); } } - - } Modified: tomcat/trunk/java/org/apache/catalina/core/ApplicationContextFacade.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/core/ApplicationContextFacade.java?rev=1460675&r1=1460674&r2=1460675&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/catalina/core/ApplicationContextFacade.java (original) +++ tomcat/trunk/java/org/apache/catalina/core/ApplicationContextFacade.java Mon Mar 25 14:20:35 2013 @@ -756,6 +756,17 @@ public class ApplicationContextFacade im } } + + @Override + public String getVirtualServerName() { + if (SecurityUtil.isPackageProtectionEnabled()) { + return (String) doPrivileged("getVirtualServerName", null); + } else { + return context.getVirtualServerName(); + } + } + + /** * Use reflection to invoke the requested method. Cache the method object * to speed up the process @@ -882,5 +893,4 @@ public class ApplicationContextFacade im throw realException; } - } Modified: tomcat/trunk/java/org/apache/jasper/servlet/JspCServletContext.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/jasper/servlet/JspCServletContext.java?rev=1460675&r1=1460674&r2=1460675&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/jasper/servlet/JspCServletContext.java (original) +++ tomcat/trunk/java/org/apache/jasper/servlet/JspCServletContext.java Mon Mar 25 14:20:35 2013 @@ -655,4 +655,9 @@ public class JspCServletContext implemen return null; } + + @Override + public String getVirtualServerName() { + return null; + } } --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org