public static CompositeType getCompositeType() throws JMException { if (COMPOSITE_TYPE != null) { return COMPOSITE_TYPE; } OpenType<?>[] indexTypes = new OpenType<?>[] { // 0 - 4 SimpleType.LONG, // SimpleType.STRING, // SimpleType.STRING, // SimpleType.LONG, // SimpleType.LONG, // // 5 - 9 SimpleType.LONG, // SimpleType.DATE, // SimpleType.LONG, // JMXUtils.getThrowableCompositeType(), // SimpleType.LONG, // // // 10 - 14 SimpleType.LONG, // SimpleType.DATE, // SimpleType.LONG, // SimpleType.LONG, // SimpleType.LONG, // // // 15 - 19 SimpleType.LONG, // SimpleType.STRING, // SimpleType.STRING, // SimpleType.STRING, // SimpleType.STRING, // // // 20 - 24 SimpleType.STRING, // SimpleType.DATE, // SimpleType.STRING, // SimpleType.LONG, // SimpleType.STRING, // // 25 - 29 new ArrayType<Long>(SimpleType.LONG, true), // SimpleType.STRING, // SimpleType.LONG, // SimpleType.LONG, // new ArrayType<Long>(SimpleType.LONG, true), // // 30 - 34 new ArrayType<Long>(SimpleType.LONG, true), // new ArrayType<Long>(SimpleType.LONG, true), // SimpleType.LONG, // SimpleType.LONG, // SimpleType.LONG, // // 35 - SimpleType.LONG, // SimpleType.LONG, // SimpleType.LONG, // SimpleType.LONG, // SimpleType.LONG, // }; String[] indexNames = { // 0 - 4 "ID", // "DataSource", // "SQL", // "ExecuteCount", // "ErrorCount", // // 5 - 9 "TotalTime", // "LastTime", // "MaxTimespan", // "LastError", // "EffectedRowCount", // // 10 - 14 "FetchRowCount", // "MaxTimespanOccurTime", // "BatchSizeMax", // "BatchSizeTotal", // "ConcurrentMax", // // 15 - 19 "RunningCount", // "Name", // "File", // "LastErrorMessage", // "LastErrorClass", // // 20 - 24 "LastErrorStackTrace", // "LastErrorTime", // "DbType", // "InTransactionCount", // "URL", // // 25 - 29 "Histogram", // "LastSlowParameters", // "ResultSetHoldTime", // "ExecuteAndResultSetHoldTime", // "FetchRowCountHistogram", // // 30 - 34 "EffectedRowCountHistogram", // "ExecuteAndResultHoldTimeHistogram", // "EffectedRowCountMax", // "FetchRowCountMax", // "ClobOpenCount", // 35 - "BlobOpenCount", // "ReadStringLength", // "ReadBytesLength", // "InputStreamOpenCount", // "ReaderOpenCount", // // }; String[] indexDescriptions = indexNames; COMPOSITE_TYPE = new CompositeType( "SqlStatistic", "Sql Statistic", indexNames, indexDescriptions, indexTypes); return COMPOSITE_TYPE; }