/** * Checks if the given <code>rawModel</code> is not null and does have * Mbeans (count can be 0, but not NULL). * * @param rawModel * @return true if valid, false otherwise */ private boolean isValid(JmxDatacollectionConfig rawModel) { return !(rawModel.getJmxCollectionList().isEmpty() || rawModel.getJmxCollectionList().get(0) == null || rawModel.getJmxCollectionList().get(0).getMbeans() == null); }
/** * Checks if the given <code>rawModel</code> is not null and does have * Mbeans (count can be 0, but not NULL). * * @param rawModel * @return true if valid, false otherwise */ private boolean isValid(JmxDatacollectionConfig rawModel) { return !(rawModel.getJmxCollectionList().isEmpty() || rawModel.getJmxCollectionList().get(0) == null || rawModel.getJmxCollectionList().get(0).getMbeans() == null); }
public Collection<Report> generateReportsByJmxDatacollectionConfig(JmxDatacollectionConfig inputConfig) { Collection<Report> reports = new ArrayList<>(); for (JmxCollection jmxCollection : inputConfig.getJmxCollectionList()) { logger.debug("jmxCollection: '{}'", jmxCollection.getName()); for (Mbean mbean : jmxCollection.getMbeans()) { reports.addAll(generateMbeanReportsByMBean(mbean)); reports.addAll(generateAttributeReportsByMBean(mbean)); reports.addAll(generateCompositeReportsByMBean(mbean)); reports.addAll(generateCompositeMemberReportsByMBean(mbean)); } } return reports; }
for (Mbean mbean : collection.getMbeans()) { groupMap.put(mbean.getName(), mbean);
public Collection<Report> generateReportsByJmxDatacollectionConfig(JmxDatacollectionConfig inputConfig) { Collection<Report> reports = new ArrayList<>(); for (JmxCollection jmxCollection : inputConfig.getJmxCollectionList()) { logger.debug("jmxCollection: '{}'", jmxCollection.getName()); for (Mbean mbean : jmxCollection.getMbeans()) { reports.addAll(generateMbeanReportsByMBean(mbean)); reports.addAll(generateAttributeReportsByMBean(mbean)); reports.addAll(generateCompositeReportsByMBean(mbean)); reports.addAll(generateCompositeMemberReportsByMBean(mbean)); } } return reports; }
public void updateDataSource(UiModel newModel) { reset(); mbeansContainer.updateDataSource(newModel.getRawModel().getJmxCollectionList().get(0).getMbeans()); mbeansTree.expandAllItems(); mbeansTree.select(mbeansContainer.firstItemId()); validate(); }
public void updateDataSource(UiModel newModel) { reset(); mbeansContainer.updateDataSource(newModel.getRawModel().getJmxCollectionList().get(0).getMbeans()); mbeansTree.expandAllItems(); mbeansTree.select(mbeansContainer.firstItemId()); validate(); }
for (Mbean eachMbean : jmxCollection.getMbeans()) { logger.debug("Collecting MBean (objectname={}, wildcard={})", eachMbean.getObjectname(), isWildcard(eachMbean.getObjectname()));
public static Map<String, List<Attrib>> getAttributeMap(JmxCollection collection, String aSysoid, String anAddress) { final Map<String, List<Attrib>> attributeMap = new HashMap<String, List<Attrib>>(); if (aSysoid == null) { LOG.debug("getMibObjectList: aSysoid parameter is NULL..."); return attributeMap; } if (collection == null) { return attributeMap; } for(Mbean mbean : collection.getMbeans()) { // Make sure to create a new ArrayList because we add to it below List<Attrib> list = new ArrayList<Attrib>(mbean.getAttribList()); for(CompAttrib compAttrib : mbean.getCompAttribList()) { for (CompMember compMember : compAttrib.getCompMemberList()) { Attrib attribWrapper = new Attrib(); attribWrapper.setName(compAttrib.getName() + "|" + compMember.getName()); attribWrapper.setAlias(compMember.getAlias()); attribWrapper.setType(compMember.getType()); list.add(attribWrapper); } } attributeMap.put(mbean.getObjectname(), list); } return attributeMap; }
for (Mbean eachMbean : jmxCollection.getMbeans()) { logger.debug("Collecting MBean (objectname={}, wildcard={})", eachMbean.getObjectname(), isWildcard(eachMbean.getObjectname()));
public static Map<String, BeanInfo> getMBeanInfo(JmxCollection collection) { final Map<String, BeanInfo> map = new HashMap<String, BeanInfo>(); if (collection == null) { return Collections.unmodifiableMap(map); } for (Mbean mbean : collection.getMbeans()) { BeanInfo beanInfo = new BeanInfo(); beanInfo.setMbeanName(mbean.getName()); beanInfo.setObjectName(mbean.getObjectname()); beanInfo.setKeyField(mbean.getKeyfield()); beanInfo.setExcludes(mbean.getExclude()); beanInfo.setKeyAlias(mbean.getKeyAlias()); List<String> attribNameList = new ArrayList<String>(); List<String> compAttribNameList = new ArrayList<String>(); for (CompAttrib myCa : mbean.getCompAttribList()) { for (CompMember myCm : myCa.getCompMemberList()) { attribNameList.add(myCa.getName() + "|" + myCm.getName()); compAttribNameList.add(myCa.getName() + "|" + myCm.getName()); } } for (Attrib myA : mbean.getAttribList()) { attribNameList.add(myA.getName()); } beanInfo.setAttributes(attribNameList); beanInfo.setCompositeAttributes(compAttribNameList); map.put(mbean.getObjectname(), beanInfo); } return Collections.unmodifiableMap(map); }
/** * The generated values for the JMX datacollection may not be correct. In detail the name/alias fields * of MBeans/Attribs/CompMembers/CompAttribs may be too long or not unique in the whole JMX datacollection. * In order to keep the usability up, this method allows to filter values retrieved from the * {@link javax.management.MBeanServerConnection} to fix naming issues. * * @param config The {@link JmxDatacollectionConfig} retrieved from the {@link javax.management.MBeanServerConnection}. */ private void applyFilters(JmxDatacollectionConfig config) { for (Mbean eachMbean : config.getJmxCollectionList().get(0).getMbeans()) { applyFilters(eachMbean); for (Attrib eachAttrib : eachMbean.getAttribList()) { applyFilters(eachAttrib); } for (CompAttrib eachCompAttrib : eachMbean.getCompAttribList()) { applyFilters(eachCompAttrib); for (CompMember eachCompMember : eachCompAttrib.getCompMemberList()) { applyFilters(eachCompMember); } } } } }
/** * The generated values for the JMX datacollection may not be correct. In detail the name/alias fields * of MBeans/Attribs/CompMembers/CompAttribs may be too long or not unique in the whole JMX datacollection. * In order to keep the usability up, this method allows to filter values retrieved from the * {@link javax.management.MBeanServerConnection} to fix naming issues. * * @param config The {@link JmxDatacollectionConfig} retrieved from the {@link javax.management.MBeanServerConnection}. */ private void applyFilters(JmxDatacollectionConfig config) { for (Mbean eachMbean : config.getJmxCollectionList().get(0).getMbeans()) { applyFilters(eachMbean); for (Attrib eachAttrib : eachMbean.getAttribList()) { applyFilters(eachAttrib); } for (CompAttrib eachCompAttrib : eachMbean.getCompAttribList()) { applyFilters(eachCompAttrib); for (CompMember eachCompMember : eachCompAttrib.getCompMemberList()) { applyFilters(eachCompMember); } } } } }
/** * Clones a whole JmxCollection. Makes a deep copy! * * @param input * @return */ private static JmxCollection clone(JmxCollection input) { JmxCollection output = new JmxCollection(); output.setMaxVarsPerPdu(input.getMaxVarsPerPdu()); output.setName(input.getName()); output.setRrd(clone(input.getRrd())); for (final Mbean mbean : input.getMbeans()) { output.addMbean(clone(mbean)); } return output; }
/** * Clones a whole JmxCollection. Makes a deep copy! * * @param input * @return */ private static JmxCollection clone(JmxCollection input) { JmxCollection output = new JmxCollection(); output.setMaxVarsPerPdu(input.getMaxVarsPerPdu()); output.setName(input.getName()); output.setRrd(clone(input.getRrd())); for (final Mbean mbean : input.getMbeans()) { output.addMbean(clone(mbean)); } return output; }
List<Mbean> exportBeans = clone.getJmxCollectionList().get(0).getMbeans(); exportBeans.clear(); Iterable<Mbean> selectedMbeans = selectionManager.getSelectedMbeans();
List<Mbean> exportBeans = clone.getJmxCollectionList().get(0).getMbeans(); exportBeans.clear(); Iterable<Mbean> selectedMbeans = selectionManager.getSelectedMbeans();