Author: eglynn
Date: Fri Jun  1 08:37:03 2007
New Revision: 543509

URL: http://svn.apache.org/viewvc?view=rev&rev=543509
Log:
Restored ability to configure Jetty thread pool thresholds (broken in the port 
to Jetty6).

Added:
    
incubator/cxf/trunk/rt/transports/http-jetty/src/main/java/org/apache/cxf/transport/http_jetty/spring/
    
incubator/cxf/trunk/rt/transports/http-jetty/src/main/java/org/apache/cxf/transport/http_jetty/spring/ListenerBeanDefinitionParser.java
   (with props)
    
incubator/cxf/trunk/rt/transports/http-jetty/src/main/java/org/apache/cxf/transport/http_jetty/spring/NamespaceHandler.java
   (with props)
    
incubator/cxf/trunk/rt/transports/http-jetty/src/main/resources/META-INF/spring.handlers
   (with props)
Modified:
    
incubator/cxf/trunk/rt/transports/http-jetty/src/main/java/org/apache/cxf/transport/http_jetty/JettyHTTPServerEngine.java

Modified: 
incubator/cxf/trunk/rt/transports/http-jetty/src/main/java/org/apache/cxf/transport/http_jetty/JettyHTTPServerEngine.java
URL: 
http://svn.apache.org/viewvc/incubator/cxf/trunk/rt/transports/http-jetty/src/main/java/org/apache/cxf/transport/http_jetty/JettyHTTPServerEngine.java?view=diff&rev=543509&r1=543508&r2=543509
==============================================================================
--- 
incubator/cxf/trunk/rt/transports/http-jetty/src/main/java/org/apache/cxf/transport/http_jetty/JettyHTTPServerEngine.java
 (original)
+++ 
incubator/cxf/trunk/rt/transports/http-jetty/src/main/java/org/apache/cxf/transport/http_jetty/JettyHTTPServerEngine.java
 Fri Jun  1 08:37:03 2007
@@ -35,6 +35,7 @@
 import org.mortbay.jetty.Server;
 import org.mortbay.jetty.handler.ContextHandler;
 import org.mortbay.jetty.handler.ContextHandlerCollection;
+import org.mortbay.thread.BoundedThreadPool;
 
 
 
@@ -141,12 +142,6 @@
             connector = connectorFactory.createConnector(port);
             //REVISITION for setup the connector's threadPool
             /*
-            if (getListener().isSetMinThreads()) {
-                listener.setMinThreads(getListener().getMinThreads());
-            }
-            if (getListener().isSetMaxThreads()) {
-                listener.setMaxThreads(getListener().getMaxThreads());         
   
-            }
             if (getListener().isSetMaxIdleTimeMs()) {
                 
listener.setMaxIdleTimeMs(getListener().getMaxIdleTimeMs().intValue());
             }
@@ -161,6 +156,16 @@
             server.addHandler(contexts);
             try {
                 server.start();
+                if (connector.getThreadPool() instanceof BoundedThreadPool
+                    && isSetListener()) {
+                    BoundedThreadPool pool = 
(BoundedThreadPool)connector.getThreadPool();
+                    if (getListener().isSetMinThreads()) {
+                        pool.setMinThreads(getListener().getMinThreads());
+                    }
+                    if (getListener().isSetMaxThreads()) {
+                        pool.setMaxThreads(getListener().getMaxThreads());
+                    }
+                }
             } catch (Exception e) {
                 e.printStackTrace();
                 //problem starting server

Added: 
incubator/cxf/trunk/rt/transports/http-jetty/src/main/java/org/apache/cxf/transport/http_jetty/spring/ListenerBeanDefinitionParser.java
URL: 
http://svn.apache.org/viewvc/incubator/cxf/trunk/rt/transports/http-jetty/src/main/java/org/apache/cxf/transport/http_jetty/spring/ListenerBeanDefinitionParser.java?view=auto&rev=543509
==============================================================================
--- 
incubator/cxf/trunk/rt/transports/http-jetty/src/main/java/org/apache/cxf/transport/http_jetty/spring/ListenerBeanDefinitionParser.java
 (added)
+++ 
incubator/cxf/trunk/rt/transports/http-jetty/src/main/java/org/apache/cxf/transport/http_jetty/spring/ListenerBeanDefinitionParser.java
 Fri Jun  1 08:37:03 2007
@@ -0,0 +1,48 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.cxf.transport.http_jetty.spring;
+
+import javax.xml.namespace.QName;
+
+import org.w3c.dom.Element;
+import org.apache.cxf.configuration.spring.AbstractBeanDefinitionParser;
+import org.apache.cxf.transport.http_jetty.JettyHTTPServerEngine;
+
+import org.springframework.beans.factory.support.BeanDefinitionBuilder;
+
+public class ListenerBeanDefinitionParser  extends 
AbstractBeanDefinitionParser {
+     
+    private static final String HTTP_NS = 
"http://cxf.apache.org/transports/http/configuration";;
+    
+    @Override
+    protected Class getBeanClass(Element arg0) {
+        return JettyHTTPServerEngine.class;
+    }
+    
+    @Override
+    public void doParse(Element element, BeanDefinitionBuilder bean) {
+        bean.setAbstract(true);
+        mapElementToJaxbProperty(element, bean, new QName(HTTP_NS, 
"listener"), "listener");
+    }
+
+    @Override
+    protected String getJaxbPackage() {
+        return "org.apache.cxf.transports.http.configuration";
+    }
+}

Propchange: 
incubator/cxf/trunk/rt/transports/http-jetty/src/main/java/org/apache/cxf/transport/http_jetty/spring/ListenerBeanDefinitionParser.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: 
incubator/cxf/trunk/rt/transports/http-jetty/src/main/java/org/apache/cxf/transport/http_jetty/spring/NamespaceHandler.java
URL: 
http://svn.apache.org/viewvc/incubator/cxf/trunk/rt/transports/http-jetty/src/main/java/org/apache/cxf/transport/http_jetty/spring/NamespaceHandler.java?view=auto&rev=543509
==============================================================================
--- 
incubator/cxf/trunk/rt/transports/http-jetty/src/main/java/org/apache/cxf/transport/http_jetty/spring/NamespaceHandler.java
 (added)
+++ 
incubator/cxf/trunk/rt/transports/http-jetty/src/main/java/org/apache/cxf/transport/http_jetty/spring/NamespaceHandler.java
 Fri Jun  1 08:37:03 2007
@@ -0,0 +1,28 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.cxf.transport.http_jetty.spring;
+
+import org.springframework.beans.factory.xml.NamespaceHandlerSupport;
+
+public class NamespaceHandler extends NamespaceHandlerSupport {
+    public void init() {
+        registerBeanDefinitionParser("listener", 
+                                     new ListenerBeanDefinitionParser());      
  
+    }
+}

Propchange: 
incubator/cxf/trunk/rt/transports/http-jetty/src/main/java/org/apache/cxf/transport/http_jetty/spring/NamespaceHandler.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: 
incubator/cxf/trunk/rt/transports/http-jetty/src/main/resources/META-INF/spring.handlers
URL: 
http://svn.apache.org/viewvc/incubator/cxf/trunk/rt/transports/http-jetty/src/main/resources/META-INF/spring.handlers?view=auto&rev=543509
==============================================================================
--- 
incubator/cxf/trunk/rt/transports/http-jetty/src/main/resources/META-INF/spring.handlers
 (added)
+++ 
incubator/cxf/trunk/rt/transports/http-jetty/src/main/resources/META-INF/spring.handlers
 Fri Jun  1 08:37:03 2007
@@ -0,0 +1 @@
+http\://cxf.apache.org/transport/http/listener=org.apache.cxf.transport.http_jetty.spring.NamespaceHandler

Propchange: 
incubator/cxf/trunk/rt/transports/http-jetty/src/main/resources/META-INF/spring.handlers
------------------------------------------------------------------------------
    svn:executable = *


Reply via email to