You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@synapse.apache.org by in...@apache.org on 2010/03/17 06:59:52 UTC
svn commit: r924170 -
/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/aspects/statistics/StatisticsCollector.java
Author: indika
Date: Wed Mar 17 05:59:52 2010
New Revision: 924170
URL: http://svn.apache.org/viewvc?rev=924170&view=rev
Log:
fix an concurrent issue with StatisticsCollector
Modified:
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/aspects/statistics/StatisticsCollector.java
Modified: synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/aspects/statistics/StatisticsCollector.java
URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/aspects/statistics/StatisticsCollector.java?rev=924170&r1=924169&r2=924170&view=diff
==============================================================================
--- synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/aspects/statistics/StatisticsCollector.java (original)
+++ synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/aspects/statistics/StatisticsCollector.java Wed Mar 17 05:59:52 2010
@@ -25,6 +25,7 @@ import org.apache.synapse.commons.jmx.MB
import java.util.ArrayList;
import java.util.List;
+import java.util.concurrent.ConcurrentLinkedQueue;
/**
* Collects statistics and provides those collected data
@@ -34,7 +35,8 @@ public class StatisticsCollector {
private static final Log log = LogFactory.getLog(StatisticsCollector.class);
- private final List<StatisticsRecord> statisticsCollection = new ArrayList<StatisticsRecord>();
+ private final ConcurrentLinkedQueue<StatisticsRecord> statisticsCollection =
+ new ConcurrentLinkedQueue<StatisticsRecord>();
public StatisticsCollector() {
MBeanRegistrar.getInstance().registerMBean(new StatisticsView(this),
@@ -47,7 +49,7 @@ public class StatisticsCollector {
* @param statisticsRecord statistics record instance
*/
public void collect(StatisticsRecord statisticsRecord) {
- this.statisticsCollection.add(statisticsRecord);
+ this.statisticsCollection.offer(statisticsRecord);
}
/**