Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGreg Wilkins2010-11-07 18:37:19 -0500
committerGreg Wilkins2010-11-07 18:37:19 -0500
commit75d9d18b501b236dc16ebad733ade69125b55d10 (patch)
tree28118d47501ff8ae2541c5cb3a34a57c0919df18
parente6c26b383e078ebf333f5af3ac38f4e4dd495652 (diff)
downloadorg.eclipse.jetty.project-75d9d18b501b236dc16ebad733ade69125b55d10.tar.gz
org.eclipse.jetty.project-75d9d18b501b236dc16ebad733ade69125b55d10.tar.xz
org.eclipse.jetty.project-75d9d18b501b236dc16ebad733ade69125b55d10.zip
329642 Concurrent modification exception in Deployment Manager
git-svn-id: svn+ssh://dev.eclipse.org/svnroot/rt/org.eclipse.jetty/jetty/trunk@2473 7e9141cc-0065-0410-87d8-b60c137991c4
-rw-r--r--VERSION.txt1
-rw-r--r--jetty-deploy/src/main/java/org/eclipse/jetty/deploy/DeploymentManager.java25
2 files changed, 5 insertions, 21 deletions
diff --git a/VERSION.txt b/VERSION.txt
index 876cdab5cf..ac016b9565 100644
--- a/VERSION.txt
+++ b/VERSION.txt
@@ -12,6 +12,7 @@ jetty-7.2.1-SNAPSHOT
+ 328988 Idle saving of session values
+ 329180 Spin check for Selector to stop
+ 329410 Enforce XmlConfiguration properties as Map<String,String>
+ + 329642 Concurrent modification exception in Deployment Manager
+ JETTY-748 Prevent race close of socket by old acceptor threads
+ JETTY-1291 Extract query parameters even if POST content consumed
+ JETTY-1295 Contexts mixed up when hot-deploying on virtual hosts
diff --git a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/DeploymentManager.java b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/DeploymentManager.java
index 9c136a6a29..c2eee61184 100644
--- a/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/DeploymentManager.java
+++ b/jetty-deploy/src/main/java/org/eclipse/jetty/deploy/DeploymentManager.java
@@ -24,6 +24,8 @@ import java.util.LinkedList;
import java.util.List;
import java.util.ListIterator;
import java.util.Map;
+import java.util.Queue;
+import java.util.concurrent.ConcurrentLinkedQueue;
import org.eclipse.jetty.deploy.bindings.StandardDeployer;
import org.eclipse.jetty.deploy.bindings.StandardStarter;
@@ -110,7 +112,7 @@ public class DeploymentManager extends AbstractLifeCycle
private final List<AppProvider> _providers = new ArrayList<AppProvider>();
private final AppLifeCycle _lifecycle = new AppLifeCycle();
- private final List<AppEntry> _apps = new LinkedList<AppEntry>();
+ private final Queue<AppEntry> _apps = new ConcurrentLinkedQueue<AppEntry>();
private AttributesMap _contextAttributes = new AttributesMap();
private ContextHandlerCollection _contexts;
private boolean _useStandardBindings = true;
@@ -232,25 +234,6 @@ public class DeploymentManager extends AbstractLifeCycle
super.doStop();
}
- /*
- private AppEntry findAppByContextId(String contextId)
- {
- if (contextId == null)
- {
- return null;
- }
-
- for (AppEntry entry : _apps)
- {
- if (contextId.equals(entry.app.getContextId()))
- {
- return entry;
- }
- }
- return null;
- }
- */
-
private AppEntry findAppByOriginId(String originId)
{
if (originId == null)
@@ -405,7 +388,7 @@ public class DeploymentManager extends AbstractLifeCycle
*/
public void removeApp(App app)
{
- ListIterator<AppEntry> it = _apps.listIterator();
+ Iterator<AppEntry> it = _apps.iterator();
while (it.hasNext())
{
AppEntry entry = it.next();

Back to the top