Author: karthick
Date: Wed Feb 18 23:53:27 2009
New Revision: 745695
URL: http://svn.apache.org/viewvc?rev=745695&view=rev
Log:
Given that JPA query result sets are read-only, let's try to not modify them.
Modified:
ode/branches/APACHE_ODE_1.X/dao-jpa/src/main/java/org/apache/ode/dao/jpa/CorrelatorDAOImpl.java
Modified:
ode/branches/APACHE_ODE_1.X/dao-jpa/src/main/java/org/apache/ode/dao/jpa/CorrelatorDAOImpl.java
URL:
http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/dao-jpa/src/main/java/org/apache/ode/dao/jpa/CorrelatorDAOImpl.java?rev=745695&r1=745694&r2=745695&view=diff
==============================================================================
---
ode/branches/APACHE_ODE_1.X/dao-jpa/src/main/java/org/apache/ode/dao/jpa/CorrelatorDAOImpl.java
(original)
+++
ode/branches/APACHE_ODE_1.X/dao-jpa/src/main/java/org/apache/ode/dao/jpa/CorrelatorDAOImpl.java
Wed Feb 18 23:53:27 2009
@@ -96,27 +96,22 @@
qry.setParameter("s" + i, subSets.get(i).toCanonicalString());
}
- List<MessageRouteDAO> routes = (List<MessageRouteDAO>)
qry.getResultList();
- if (routes.size() > 0) {
- List<MessageRouteDAO> nonRoutes = new
ArrayList<MessageRouteDAO>();
+ List<MessageRouteDAO> candidateRoutes = (List<MessageRouteDAO>)
qry.getResultList();
+ if (candidateRoutes.size() > 0) {
+ List<MessageRouteDAO> matchingRoutes = new
ArrayList<MessageRouteDAO>();
boolean routed = false;
- for (int i = 0; i < routes.size(); i++) {
- MessageRouteDAO route = routes.get(i);
+ for (int i = 0; i < candidateRoutes.size(); i++) {
+ MessageRouteDAO route = candidateRoutes.get(i);
if ("all".equals(route.getRoute())) {
- // don't try to remove this route
+ matchingRoutes.add(route);
} else {
- if (routed) {
- nonRoutes.add(route);
- } else {
- // don't try to remove this route
+ if (!routed) {
+ matchingRoutes.add(route);
}
routed = true;
}
}
- if (!nonRoutes.isEmpty()) {
- routes.removeAll(nonRoutes);
- }
- return routes;
+ return matchingRoutes;
} else {
return null;
}