Author: slaws
Date: Fri Feb 26 14:44:14 2010
New Revision: 916695

URL: http://svn.apache.org/viewvc?rev=916695&view=rev
Log:
Pass security context into getURLMapping() so that appropriate scheme/port are 
chosen when no concrete url is provided by the binding.

Modified:
    
tuscany/sca-java-2.x/trunk/modules/binding-ws-runtime-axis2/src/main/java/org/apache/tuscany/sca/binding/ws/axis2/Axis2ServiceBindingProvider.java
    
tuscany/sca-java-2.x/trunk/modules/host-http/src/main/java/org/apache/tuscany/sca/host/http/DefaultServletHostExtensionPoint.java
    
tuscany/sca-java-2.x/trunk/modules/host-http/src/main/java/org/apache/tuscany/sca/host/http/ExtensibleServletHost.java
    
tuscany/sca-java-2.x/trunk/modules/host-http/src/main/java/org/apache/tuscany/sca/host/http/ServletHost.java
    
tuscany/sca-java-2.x/trunk/modules/host-jetty/src/main/java/org/apache/tuscany/sca/http/jetty/JettyServer.java
    
tuscany/sca-java-2.x/trunk/modules/host-webapp/src/main/java/org/apache/tuscany/sca/host/webapp/WebAppServletHost.java

Modified: 
tuscany/sca-java-2.x/trunk/modules/binding-ws-runtime-axis2/src/main/java/org/apache/tuscany/sca/binding/ws/axis2/Axis2ServiceBindingProvider.java
URL: 
http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/binding-ws-runtime-axis2/src/main/java/org/apache/tuscany/sca/binding/ws/axis2/Axis2ServiceBindingProvider.java?rev=916695&r1=916694&r2=916695&view=diff
==============================================================================
--- 
tuscany/sca-java-2.x/trunk/modules/binding-ws-runtime-axis2/src/main/java/org/apache/tuscany/sca/binding/ws/axis2/Axis2ServiceBindingProvider.java
 (original)
+++ 
tuscany/sca-java-2.x/trunk/modules/binding-ws-runtime-axis2/src/main/java/org/apache/tuscany/sca/binding/ws/axis2/Axis2ServiceBindingProvider.java
 Fri Feb 26 14:44:14 2010
@@ -118,8 +118,15 @@
         // of external policy attachment
         isRampartRequired = PolicyHelper.isIntentRequired(wsBinding, 
Constants.AUTHENTICATION_INTENT) ||
                             PolicyHelper.isIntentRequired(wsBinding, 
Constants.CONFIDENTIALITY_INTENT) ||
-                            PolicyHelper.isIntentRequired(wsBinding, 
Constants.INTEGRITY_INTENT);          
-            
+                            PolicyHelper.isIntentRequired(wsBinding, 
Constants.INTEGRITY_INTENT);                  
+        
+        
+        // Apply the configuration from any other policies
+        
+        for (PolicyProvider pp : endpoint.getPolicyProviders()) {
+            pp.configureBinding(this);
+        }  
+
         // Update port addresses with runtime information
         // We can safely assume there is only one port here because you 
configure
         // a binding in the following ways: 
@@ -138,22 +145,16 @@
         
         endpointURI = Axis2EngineIntegration.getPortAddress(wsdlPort);
         
-        if (!endpointURI.startsWith("jms:")) {
+        if (endpointURI.startsWith("jms:")) {
+            isJMSRequired = true;
+        } else {
             if (servletHost == null) {
                 throw new ServiceRuntimeException("No Servlet host is avaible 
for HTTP web services");
             }
-            endpointURI = servletHost.getURLMapping(endpointURI).toString();
-        } else {
-            isJMSRequired = true;
-        }
-        Axis2EngineIntegration.setPortAddress(wsdlPort, endpointURI);          
+            endpointURI = servletHost.getURLMapping(endpointURI, 
httpSecurityContext).toString();
+        } 
         
-        
-        // Apply the configuration from any other policies
-        
-        for (PolicyProvider pp : endpoint.getPolicyProviders()) {
-            pp.configureBinding(this);
-        }
+        Axis2EngineIntegration.setPortAddress(wsdlPort, endpointURI);  
         
         // Apply the configuration from the mayProvides intents        
         
@@ -161,13 +162,13 @@
             // TODO - do we need to go back to configurator?
         }
         
+        if (isMTOMRequired) {
+            new 
Axis2MTOMPolicyProvider(endpoint).configureBinding(configContext);
+        }
+        
         if (isJMSRequired){
             // TODO - do we need to go back to configurator?
         }  
-        
-        if (isMTOMRequired) {
-            new 
Axis2MTOMPolicyProvider(endpoint).configureBinding(configContext);
-        }     
     }
     
     private static final String DEFAULT_QUEUE_CONNECTION_FACTORY = 
"TuscanyQueueConnectionFactory";

Modified: 
tuscany/sca-java-2.x/trunk/modules/host-http/src/main/java/org/apache/tuscany/sca/host/http/DefaultServletHostExtensionPoint.java
URL: 
http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/host-http/src/main/java/org/apache/tuscany/sca/host/http/DefaultServletHostExtensionPoint.java?rev=916695&r1=916694&r2=916695&view=diff
==============================================================================
--- 
tuscany/sca-java-2.x/trunk/modules/host-http/src/main/java/org/apache/tuscany/sca/host/http/DefaultServletHostExtensionPoint.java
 (original)
+++ 
tuscany/sca-java-2.x/trunk/modules/host-http/src/main/java/org/apache/tuscany/sca/host/http/DefaultServletHostExtensionPoint.java
 Fri Feb 26 14:44:14 2010
@@ -153,8 +153,8 @@
             return getServletHost().getServletMapping(uri);
         }
 
-        public URL getURLMapping(String uri) {
-            return getServletHost().getURLMapping(uri);
+        public URL getURLMapping(String uri, SecurityContext securityContext) {
+            return getServletHost().getURLMapping(uri, securityContext);
         }
 
         public Servlet removeServletMapping(String uri) throws 
ServletMappingException {

Modified: 
tuscany/sca-java-2.x/trunk/modules/host-http/src/main/java/org/apache/tuscany/sca/host/http/ExtensibleServletHost.java
URL: 
http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/host-http/src/main/java/org/apache/tuscany/sca/host/http/ExtensibleServletHost.java?rev=916695&r1=916694&r2=916695&view=diff
==============================================================================
--- 
tuscany/sca-java-2.x/trunk/modules/host-http/src/main/java/org/apache/tuscany/sca/host/http/ExtensibleServletHost.java
 (original)
+++ 
tuscany/sca-java-2.x/trunk/modules/host-http/src/main/java/org/apache/tuscany/sca/host/http/ExtensibleServletHost.java
 Fri Feb 26 14:44:14 2010
@@ -119,12 +119,12 @@
         return getDefaultServletHost().getContextPath();
     }
     
-    public URL getURLMapping(String uri) {
+    public URL getURLMapping(String uri, SecurityContext securityContext) {
         if (servletHosts.getServletHosts().isEmpty()) {
             throw new ServletMappingException("No servlet host available");
         }
 
-        return getDefaultServletHost().getURLMapping(uri);
+        return getDefaultServletHost().getURLMapping(uri, securityContext);
     }
 
     public void setContextPath(String path) {

Modified: 
tuscany/sca-java-2.x/trunk/modules/host-http/src/main/java/org/apache/tuscany/sca/host/http/ServletHost.java
URL: 
http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/host-http/src/main/java/org/apache/tuscany/sca/host/http/ServletHost.java?rev=916695&r1=916694&r2=916695&view=diff
==============================================================================
--- 
tuscany/sca-java-2.x/trunk/modules/host-http/src/main/java/org/apache/tuscany/sca/host/http/ServletHost.java
 (original)
+++ 
tuscany/sca-java-2.x/trunk/modules/host-http/src/main/java/org/apache/tuscany/sca/host/http/ServletHost.java
 Fri Feb 26 14:44:14 2010
@@ -120,7 +120,7 @@
      * Returns the complete URL mapped to the specified URI. 
      * @return the URL mapped to the specified URI
      */
-    URL getURLMapping(String uri);
+    URL getURLMapping(String uri, SecurityContext securityContext);
 
     /**
      * Set an attribute in the application ServletContext 

Modified: 
tuscany/sca-java-2.x/trunk/modules/host-jetty/src/main/java/org/apache/tuscany/sca/http/jetty/JettyServer.java
URL: 
http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/host-jetty/src/main/java/org/apache/tuscany/sca/http/jetty/JettyServer.java?rev=916695&r1=916694&r2=916695&view=diff
==============================================================================
--- 
tuscany/sca-java-2.x/trunk/modules/host-jetty/src/main/java/org/apache/tuscany/sca/http/jetty/JettyServer.java
 (original)
+++ 
tuscany/sca-java-2.x/trunk/modules/host-jetty/src/main/java/org/apache/tuscany/sca/http/jetty/JettyServer.java
 Fri Feb 26 14:44:14 2010
@@ -81,9 +81,11 @@
     private boolean sendServerVersion;
     private WorkScheduler workScheduler;
     
+    // TODO - this static seems to be set by the JSORPC binding unit test
+    //        doesn't look to be a great way of doing things
     public static int portDefault = 8080;
     private int defaultPort = portDefault;
-    private int defaultSSLPort = 443;
+    private int defaultSSLPort = 8443;
 
     /**
      * Represents a port and the server that serves it.
@@ -331,18 +333,28 @@
         logger.info("Added Servlet mapping: " + addedURL);
     }
 
-    public URL getURLMapping(String suri) throws ServletMappingException {
+    public URL getURLMapping(String suri, SecurityContext securityContext) 
throws ServletMappingException {
         URI uri = URI.create(suri);
-
+        
         // Get the URI scheme and port
-        String scheme = uri.getScheme();
-        if (scheme == null) {
-            scheme = "http";
+        String scheme = null;
+        if(securityContext != null && securityContext.isSSLEnabled()) {
+            scheme = "https";
+        } else {
+            scheme = uri.getScheme();
+            if (scheme == null) {
+                scheme = "http";
+            }            
         }
+        
         int portNumber = uri.getPort();
         if (portNumber == -1) {
-            portNumber = defaultPort;
-        }
+            if ("http".equals(scheme)) {
+                portNumber = defaultPort;
+            } else {
+                portNumber = defaultSSLPort;
+            }
+        }        
 
         // Get the host
         String host;

Modified: 
tuscany/sca-java-2.x/trunk/modules/host-webapp/src/main/java/org/apache/tuscany/sca/host/webapp/WebAppServletHost.java
URL: 
http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/host-webapp/src/main/java/org/apache/tuscany/sca/host/webapp/WebAppServletHost.java?rev=916695&r1=916694&r2=916695&view=diff
==============================================================================
--- 
tuscany/sca-java-2.x/trunk/modules/host-webapp/src/main/java/org/apache/tuscany/sca/host/webapp/WebAppServletHost.java
 (original)
+++ 
tuscany/sca-java-2.x/trunk/modules/host-webapp/src/main/java/org/apache/tuscany/sca/host/webapp/WebAppServletHost.java
 Fri Feb 26 14:44:14 2010
@@ -133,7 +133,7 @@
         return servlet;
     }
 
-    public URL getURLMapping(String suri) throws ServletMappingException {
+    public URL getURLMapping(String suri, SecurityContext securityContext) 
throws ServletMappingException {
         URI uri = URI.create(suri);
 
         // Get the URI scheme and port


Reply via email to