You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-commits@jackrabbit.apache.org by st...@apache.org on 2017/02/06 16:39:35 UTC
svn commit: r1781924 -
/jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/observation/ConsolidatedListenerMBeanImpl.java
Author: stefanegli
Date: Mon Feb 6 16:39:35 2017
New Revision: 1781924
URL: http://svn.apache.org/viewvc?rev=1781924&view=rev
Log:
OAK-5594 : added paths column to leaderboard
Modified:
jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/observation/ConsolidatedListenerMBeanImpl.java
Modified: jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/observation/ConsolidatedListenerMBeanImpl.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/observation/ConsolidatedListenerMBeanImpl.java?rev=1781924&r1=1781923&r2=1781924&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/observation/ConsolidatedListenerMBeanImpl.java (original)
+++ jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/observation/ConsolidatedListenerMBeanImpl.java Mon Feb 6 16:39:35 2017
@@ -150,8 +150,17 @@ public class ConsolidatedListenerMBeanIm
"Leaderboard", LeaderBoardData.TYPE, new String[]{"index"});
tds = new TabularDataSupport(tt);
List<LeaderBoardData> leaderBoard = Lists.newArrayList();
- for (EventListenerMBean mbean : eventListeners.values()) {
- leaderBoard.add(new LeaderBoardData(++id, mbean));
+ for (Map.Entry<ObjectName, EventListenerMBean> e : eventListeners.entrySet()){
+ String listenerId = getListenerId(e.getKey());
+ EventListenerMBean mbean = e.getValue();
+ FilterConfigMBean filterConfigMBean = null;
+ for (Map.Entry<ObjectName, FilterConfigMBean> ef : filterConfigs.entrySet()){
+ if (Objects.equal(getListenerId(ef.getKey()), listenerId)){
+ filterConfigMBean = ef.getValue();
+ break;
+ }
+ }
+ leaderBoard.add(new LeaderBoardData(++id, mbean, filterConfigMBean));
}
sort(leaderBoard);
for (LeaderBoardData data : leaderBoard) {
@@ -491,6 +500,7 @@ public class ConsolidatedListenerMBeanIm
static final String[] FIELD_NAMES = new String[] {
"index",
"className",
+ "paths",
"processingTime",
"delivered",
"eventConsumerTimeRatio",
@@ -502,6 +512,7 @@ public class ConsolidatedListenerMBeanIm
static final OpenType[] FIELD_TYPES = new OpenType[]{
SimpleType.INTEGER,
SimpleType.STRING,
+ SimpleType.STRING,
SimpleType.LONG,
SimpleType.LONG,
SimpleType.DOUBLE,
@@ -523,31 +534,35 @@ public class ConsolidatedListenerMBeanIm
}
private final EventListenerMBean mbean;
+ private final FilterConfigMBean filterConfigMBean;
private final CompositeData producerTime;
private final CompositeData consumerTime;
private final int index;
- public LeaderBoardData(int i, EventListenerMBean mbean) {
- this(i, mbean, mbean.getEventProducerTime(), mbean.getEventConsumerTime());
+ public LeaderBoardData(int i, EventListenerMBean mbean, FilterConfigMBean filterConfigMBean) {
+ this(i, mbean, filterConfigMBean, mbean.getEventProducerTime(), mbean.getEventConsumerTime());
}
private LeaderBoardData(int i, EventListenerMBean mbean,
+ FilterConfigMBean filterConfigMBean,
CompositeData producerTime,
CompositeData consumerTime) {
this.index = i;
this.mbean = mbean;
+ this.filterConfigMBean = filterConfigMBean;
this.producerTime = producerTime;
this.consumerTime = consumerTime;
}
LeaderBoardData withIndex(int i) {
- return new LeaderBoardData(i, mbean, producerTime, consumerTime);
+ return new LeaderBoardData(i, mbean, filterConfigMBean, producerTime, consumerTime);
}
CompositeDataSupport toCompositeData() {
Object[] values = new Object[]{
index,
mbean.getClassName(),
+ filterConfigMBean == null ? "n/a" : Arrays.toString(filterConfigMBean.getPaths()),
getProcessingTime(),
mbean.getEventsDelivered(),
mbean.getEventConsumerTimeRatio(),