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

Reply via email to