1 22 package org.jboss.test.jca.statistics; 23 24 import javax.management.Attribute ; 25 import javax.management.MBeanServerConnection ; 26 import javax.management.ObjectName ; 27 28 import org.jboss.mx.util.ObjectNameFactory; 29 import org.jboss.resource.statistic.formatter.StatisticsFormatter; 30 31 37 public class StatisticsHelper 38 { 39 40 private static final String DEFAULT_FORMATTER = "org.jboss.resource.statistic.pool.JBossDefaultSubPoolStatisticFormatter"; 41 private static final String XML_FORMATTER = "org.jboss.resource.statistic.pool.JBossXmlSubPoolStatisticFormatter"; 42 43 private static final ObjectName POOL_NAME = ObjectNameFactory.create("jboss.jca:service=ManagedConnectionPool,name=StatsDS"); 44 private static final String ATTRIBUTE_NAME = "StatisticsFormatter"; 45 private static final String RAW_STATS_METHOD = "listStatistics"; 46 private static final String FORMATTED_STATS_METHOD = "listFormattedSubPoolStatistics"; 47 48 50 public static final int DEFAULT_MIN_SIZE = 0; 51 public static final int DEFAULT_MAX_SIZE = 20; 52 public static final int DEFAULT_BLOCK_TIMEOUT = 30000; 53 public static final int DEFAULT_IDLE_TIMEOUT = 15; 54 55 56 57 58 public static Object listRawStatistics(MBeanServerConnection server) throws Exception { 59 60 return server.invoke(POOL_NAME, RAW_STATS_METHOD, new Object [0], new String [0]); 61 62 } 63 64 public static void setStatisticsFormatter(MBeanServerConnection server, String formatter) throws Exception { 65 66 server.setAttribute(POOL_NAME, new Attribute (ATTRIBUTE_NAME, formatter)); 67 68 } 69 70 public static String getStatisticsFormatter(MBeanServerConnection server) throws Exception { 71 72 return (String )server.getAttribute(POOL_NAME, ATTRIBUTE_NAME); 73 74 } 75 76 public static String listFormattedStatistics(MBeanServerConnection server) throws Exception { 77 78 return (String )server.invoke(POOL_NAME, FORMATTED_STATS_METHOD, new Object [0], new String [0]); 79 80 } 81 82 public static StatisticsFormatter getDefaultFormatter() throws Exception { 83 84 Class clazz = Class.forName(DEFAULT_FORMATTER); 85 return (StatisticsFormatter)clazz.newInstance(); 86 87 } 88 } 89 | Popular Tags |