@Override public TabularData getConnectionList() throws JMException { CompositeType rowType = JdbcConnectionStat.Entry.getCompositeType(); String[] indexNames = rowType.keySet().toArray(new String[rowType.keySet().size()]); TabularType tabularType = new TabularType("ConnectionListStatistic", "ConnectionListStatistic", rowType, indexNames); TabularData data = new TabularDataSupport(tabularType); for (Map.Entry<Long, JdbcConnectionStat.Entry> entry : getConnections().entrySet()) { data.put(entry.getValue().getCompositeData()); } return data; }
protected TabularDataSupport createTabularData(ActiveMQMessage m, TabularType type, Class valueType) throws IOException, OpenDataException { TabularDataSupport answer = new TabularDataSupport(type); Set<Map.Entry<String,Object>> entries = m.getProperties().entrySet(); for (Map.Entry<String, Object> entry : entries) { Object value = entry.getValue(); if (value instanceof UTF8Buffer && valueType.equals(String.class)) { String actual = value.toString(); CompositeDataSupport compositeData = createTabularRowValue(type, entry.getKey(), actual); answer.put(compositeData); } if (valueType.isInstance(value)) { CompositeDataSupport compositeData = createTabularRowValue(type, entry.getKey(), value); answer.put(compositeData); } } return answer; }
@Override public TabularData getAllJobs() throws Exception { OpenTypeFactory factory = OpenTypeSupport.getFactory(Job.class); CompositeType ct = factory.getCompositeType(); TabularType tt = new TabularType("Scheduled Jobs", "Scheduled Jobs", ct, new String[] { "jobId" }); TabularDataSupport rc = new TabularDataSupport(tt); List<Job> jobs = this.jobScheduler.getAllJobs(); for (Job job : jobs) { rc.put(new CompositeDataSupport(ct, factory.getFields(job))); } return rc; }
private Object getTableData(TabularType tabularType) throws MBeanException { TabularDataSupport tableData = new TabularDataSupport(tabularType); for (String[] rowData : TABLE_DATA) { try { tableData.put(new CompositeDataSupport(tabularType.getRowType(), COLUMN_NAMES, rowData)); } catch (OpenDataException exc) { throw new MBeanException(exc, "Error creating table data"); } } return tableData; }
public TabularData getSlowConsumers() throws OpenDataException { OpenTypeSupport.OpenTypeFactory factory = OpenTypeSupport.getFactory(SlowConsumerEntry.class); CompositeType ct = factory.getCompositeType(); TabularType tt = new TabularType("SlowConsumers", "Table of current slow Consumers", ct, new String[] {"subscription" }); TabularDataSupport rc = new TabularDataSupport(tt); int index = 0; Map<Subscription, SlowConsumerEntry> slowConsumers = strategy.getSlowConsumers(); for (Map.Entry<Subscription, SlowConsumerEntry> entry : slowConsumers.entrySet()) { entry.getValue().setSubscription(broker.getSubscriberObjectName(entry.getKey())); rc.put(OpenTypeSupport.convert(entry.getValue())); } return rc; }
public TabularData getMissingPersistentMembersJMX() throws AdminException { try { Set<PersistentID> members = super.getMissingPersistentMembers(); TabularData results = new TabularDataSupport(PERSISTENT_ID_TABLE_TYPE); int index = 0; for (PersistentID id : members) { CompositeData idData = new CompositeDataSupport(PERSISTENT_ID_TYPE, PERSISTENT_ID_FIELDS, new Object[] {id.getHost().toString(), id.getDirectory(), id.getUUID().toString()}); results.put(idData); index++; } return results; } catch (OpenDataException e) { logger.warn("Exception occurred while getting missing persistent members.", e); throw new AdminException(e); } }
String[] indexNames = rowType.keySet().toArray(new String[rowType.keySet().size()]); TabularType tabularType = new TabularType("SqlListStatistic", "SqlListStatistic", rowType, indexNames); TabularData data = new TabularDataSupport(tabularType); data.put(new CompositeDataSupport(JdbcSqlStat.getCompositeType(), map)); data.put(new CompositeDataSupport(JdbcSqlStat.getCompositeType(), map)); data.put(new CompositeDataSupport(JdbcSqlStat.getCompositeType(), map));
@Override public TabularData health() throws Exception { OpenTypeSupport.OpenTypeFactory factory = OpenTypeSupport.getFactory(HealthStatus.class); CompositeType ct = factory.getCompositeType(); TabularType tt = new TabularType("HealthStatus", "HealthStatus", ct, new String[] { "healthId", "level", "message", "resource" }); TabularDataSupport rc = new TabularDataSupport(tt); List<HealthStatus> list = healthList(); for (HealthStatus healthStatus : list) { rc.put(new CompositeDataSupport(ct, factory.getFields(healthStatus))); } return rc; }
private TabularData convertToTabularTypeFromMap(TabularType pType, JSONObject pValue) { CompositeType rowType = pType.getRowType(); // A TabularData is requested for mapping a map for the call to an MXBean // as described in http://download.oracle.com/javase/6/docs/api/javax/management/MXBean.html // This means, we will convert a JSONObject to the required format TabularDataSupport tabularData = new TabularDataSupport(pType); @SuppressWarnings("unchecked") Map<String, String> jsonObj = (Map<String,String>) pValue; for(Map.Entry<String, String> entry : jsonObj.entrySet()) { Map<String, Object> map = new HashMap<String, Object>(); map.put("key", getDispatcher().convertToObject(rowType.getType("key"), entry.getKey())); map.put("value", getDispatcher().convertToObject(rowType.getType("value"), entry.getValue())); try { CompositeData compositeData = new CompositeDataSupport(rowType, map); tabularData.put(compositeData); } catch (OpenDataException e) { throw new IllegalArgumentException(e.getMessage(),e); } } return tabularData; }
public static TabularData toTabularData(Iterable<Status> statuses) { try { TabularDataSupport tab = new TabularDataSupport( new TabularType("Statuses", "List of statuses", ITEM_TYPES, new String[] {ITEM_ID})); for (Status status : statuses) { tab.put(status.toCompositeData()); } return tab; } catch (OpenDataException e) { // should never happen throw new IllegalStateException(e); } }
@Override public TabularData getSqlList() throws JMException { Map<String, JdbcSqlStat> sqlStatMap = this.getSqlStatMap(); CompositeType rowType = JdbcSqlStat.getCompositeType(); String[] indexNames = rowType.keySet().toArray(new String[rowType.keySet().size()]); TabularType tabularType = new TabularType("SqlListStatistic", "SqlListStatistic", rowType, indexNames); TabularData data = new TabularDataSupport(tabularType); for (Map.Entry<String, JdbcSqlStat> entry : sqlStatMap.entrySet()) { data.put(entry.getValue().getCompositeData()); } return data; }
private TabularData convertTabularDataFromFullRepresentation(JSONObject pValue, TabularType pType) { JSONAware jsonVal; jsonVal = (JSONAware) pValue.get("values"); if (!(jsonVal instanceof JSONArray)) { throw new IllegalArgumentException("Values for tabular data of type " + pType + " must given as JSON array, not " + jsonVal.getClass()); } TabularDataSupport tabularData = new TabularDataSupport(pType); for (Object val : (JSONArray) jsonVal) { if (!(val instanceof JSONObject)) { throw new IllegalArgumentException("Tabular-Data values must be given as JSON objects, not " + val.getClass()); } tabularData.put((CompositeData) getDispatcher().convertToObject(pType.getRowType(), val)); } return tabularData; }
@Override Object toNonNullOpenValue(Object value) throws OpenDataException { final Map<Object, Object> valueMap = (Map<Object, Object>) value; if (valueMap instanceof SortedMap) { Comparator comparator = ((SortedMap) valueMap).comparator(); if (comparator != null) { final String msg = "Cannot convert SortedMap with non-null comparator: " + comparator; IllegalArgumentException iae = new IllegalArgumentException(msg); OpenDataException ode = new OpenDataException(msg); ode.initCause(iae); throw ode; } } final TabularType tabularType = (TabularType) getOpenType(); final TabularData table = new TabularDataSupport(tabularType); final CompositeType rowType = tabularType.getRowType(); for (Map.Entry entry : valueMap.entrySet()) { final Object openKey = keyConverter.toOpenValue(entry.getKey()); final Object openValue = valueConverter.toOpenValue(entry.getValue()); final CompositeData row; row = new CompositeDataSupport(rowType, keyValueArray, new Object[] {openKey, openValue}); table.put(row); } return table; }
String[] indexNames = rowType.keySet().toArray(new String[rowType.keySet().size()]); TabularType tabularType = new TabularType("SqlListStatistic", "SqlListStatistic", rowType, indexNames); TabularData data = new TabularDataSupport(tabularType); data.put(new CompositeDataSupport(JdbcSqlStat.getCompositeType(), map)); data.put(new CompositeDataSupport(JdbcSqlStat.getCompositeType(), map)); data.put(new CompositeDataSupport(JdbcSqlStat.getCompositeType(), map));
public TabularData browseAsTable(SubscriptionView view) throws OpenDataException { OpenTypeFactory factory = OpenTypeSupport.getFactory(ActiveMQMessage.class); Message[] messages = getSubscriberMessages(view); CompositeType ct = factory.getCompositeType(); TabularType tt = new TabularType("MessageList", "MessageList", ct, new String[] {"JMSMessageID"}); TabularDataSupport rc = new TabularDataSupport(tt); for (int i = 0; i < messages.length; i++) { rc.put(new CompositeDataSupport(ct, factory.getFields(messages[i]))); } return rc; }
static TabularData getConfigElementTable(Map<String, String> config) throws OpenDataException { TabularDataSupport table = new TabularDataSupport(FEATURE_CONFIG_ELEMENT_TABLE); for (Map.Entry<String, String> entry : config.entrySet()) { String[] itemNames = FeaturesServiceMBean.FEATURE_CONFIG_ELEMENT; Object[] itemValues = {entry.getKey(), entry.getValue()}; CompositeData element = new CompositeDataSupport(FEATURE_CONFIG_ELEMENT, itemNames, itemValues); table.put(element); } return table; }
public static TabularData toTabularData(Iterable<Status> statuses) { try { TabularDataSupport tab = new TabularDataSupport( new TabularType("Statuses", "List of statuses", ITEM_TYPES, new String[] {ITEM_ID})); for (Status status : statuses) { tab.put(status.toCompositeData()); } return tab; } catch (OpenDataException e) { // should never happen throw new IllegalStateException(e); } }
public TabularData getDataSourceList() throws JMException { CompositeType rowType = getDruidDataSourceCompositeType(); String[] indexNames = rowType.keySet().toArray(new String[rowType.keySet().size()]); TabularType tabularType = new TabularType("DruidDataSourceStat", "DruidDataSourceStat", rowType, indexNames); TabularData data = new TabularDataSupport(tabularType); final Set<Object> dataSources = getInstances().keySet(); for (Object dataSource : dataSources) { data.put(getCompositeData(dataSource)); } return data; }
public static TabularData tableFrom(Collection<JmxRepository> repositories) { TabularDataSupport table = new TabularDataSupport(REPOSITORY_TABLE); for (JmxRepository repository : repositories) { table.put(repository.asCompositeData()); } return table; }
public TabularData getMissingPersistentMembersJMX() throws AdminException { try { Set<PersistentID> members = super.getMissingPersistentMembers(); TabularData results = new TabularDataSupport(PERSISTENT_ID_TABLE_TYPE); int index = 0; for(PersistentID id : members) { CompositeData idData = new CompositeDataSupport(PERSISTENT_ID_TYPE, PERSISTENT_ID_FIELDS, new Object[] {id.getHost().toString(), id.getDirectory(), id.getUUID().toString()}); results.put(idData); index++; } return results; } catch( OpenDataException e) { logger.warn("Exception occurred while getting missing persistent members.", e); throw new AdminException(e); } }