use of com.oracle.coherence.plugin.visualvm.tablemodel.model.RamJournalData in project coherence-visualvm by oracle.
the class AbstractDataRetrieverTest method testElasticData.
/**
* Test the retrieval of RamJournalData and FlashJournalData via the VisualVMModel.
* Note: Called from testCacheData().
*/
public void testElasticData() throws Exception {
final int RAM_INSERT_COUNT = 1000;
final int FLASH_INSERT_COUNT = 2000;
final int DATA_SIZE = 1000;
List<Map.Entry<Object, Data>> ramJournalData;
List<Map.Entry<Object, Data>> flashJournalData;
// refresh the statistics
VisualVMModel model = getModel();
RequestSender requestSender = getRequestSender();
model.refreshStatistics(requestSender);
ramJournalData = model.getData(VisualVMModel.DataType.RAMJOURNAL);
setCurrentDataType(VisualVMModel.DataType.RAMJOURNAL);
// should have two entries from federation
assertTrue("RamJournalData should be empty but size is " + (ramJournalData == null ? null : ramJournalData.size()), ramJournalData == null || ramJournalData.size() == 2);
setClientProperties();
ExtensibleConfigurableCacheFactory eccf = getECCF();
NamedCache nc = eccf.ensureCache(RAM_CACHE, null);
populateRandomData(nc, RAM_INSERT_COUNT, DATA_SIZE);
assertTrue(nc.size() == RAM_INSERT_COUNT);
waitForRefresh();
model.refreshStatistics(requestSender);
ramJournalData = model.getData(VisualVMModel.DataType.RAMJOURNAL);
validateData(VisualVMModel.DataType.RAMJOURNAL, ramJournalData, 2);
Map.Entry<Object, Data> entryRamJournal1 = ramJournalData.get(0);
assertTrue(entryRamJournal1 != null && ((Integer) entryRamJournal1.getValue().getColumn(RamJournalData.NODE_ID)) != 0);
NamedCache nc2 = eccf.ensureCache(FLASH_CACHE, null);
populateRandomData(nc2, FLASH_INSERT_COUNT, DATA_SIZE);
assertThat(nc2.size(), is(FLASH_INSERT_COUNT));
waitForRefresh();
model.refreshStatistics(getRequestSender());
flashJournalData = model.getData(VisualVMModel.DataType.FLASHJOURNAL);
setCurrentDataType(VisualVMModel.DataType.FLASHJOURNAL);
validateData(VisualVMModel.DataType.FLASHJOURNAL, flashJournalData, 2);
Map.Entry<Object, Data> entryFlashJournal1 = flashJournalData.get(0);
assertTrue(entryFlashJournal1 != null && ((Integer) entryFlashJournal1.getValue().getColumn(RamJournalData.NODE_ID)) != 0);
}
use of com.oracle.coherence.plugin.visualvm.tablemodel.model.RamJournalData in project coherence-visualvm by oracle.
the class VisualVMModel method init.
// ---- helper methods --------------------------------------------------
/**
* Initialize anything for this instance of the model.
*/
private void init() {
m_nRefreshTime = getRefreshTime();
m_fLogJMXQueryTimes = isLogQueryTimes();
String sReporterDisabled = System.getProperty(PROP_REPORTER_DISABLED);
// version >= 12.1.3
if ("true".equalsIgnoreCase(sReporterDisabled)) {
setReporterAvailable(false);
}
// force update on first time
m_ldtLastUpdate = System.currentTimeMillis() - m_nRefreshTime - 1L;
// populate mapCollectedData which contains an entry for each type
m_mapCollectedData = new HashMap<DataType, List<Entry<Object, Data>>>();
for (DataType type : DataType.values()) {
m_mapCollectedData.put(type, null);
}
// intialize the data retrievers map
f_mapDataRetrievers.put(CacheData.class, new CacheData());
f_mapDataRetrievers.put(ClusterData.class, new ClusterData());
f_mapDataRetrievers.put(MemberData.class, new MemberData());
f_mapDataRetrievers.put(ServiceData.class, new ServiceData());
f_mapDataRetrievers.put(ServiceMemberData.class, new ServiceMemberData());
f_mapDataRetrievers.put(ProxyData.class, new ProxyData());
f_mapDataRetrievers.put(MachineData.class, new MachineData());
f_mapDataRetrievers.put(CacheDetailData.class, new CacheDetailData());
f_mapDataRetrievers.put(CacheFrontDetailData.class, new CacheFrontDetailData());
f_mapDataRetrievers.put(TopicData.class, new TopicData());
f_mapDataRetrievers.put(PersistenceData.class, new PersistenceData());
f_mapDataRetrievers.put(PersistenceNotificationsData.class, new PersistenceNotificationsData());
f_mapDataRetrievers.put(CacheStorageManagerData.class, new CacheStorageManagerData());
f_mapDataRetrievers.put(HttpSessionData.class, new HttpSessionData());
f_mapDataRetrievers.put(FederationDestinationData.class, new FederationDestinationData());
f_mapDataRetrievers.put(FederationDestinationDetailsData.class, new FederationDestinationDetailsData());
f_mapDataRetrievers.put(FederationOriginData.class, new FederationOriginData());
f_mapDataRetrievers.put(FederationOriginDetailsData.class, new FederationOriginDetailsData());
f_mapDataRetrievers.put(RamJournalData.class, new RamJournalData());
f_mapDataRetrievers.put(FlashJournalData.class, new FlashJournalData());
f_mapDataRetrievers.put(JCacheConfigurationData.class, new JCacheConfigurationData());
f_mapDataRetrievers.put(JCacheStatisticsData.class, new JCacheStatisticsData());
f_mapDataRetrievers.put(HttpProxyData.class, new HttpProxyData());
f_mapDataRetrievers.put(HttpProxyMemberData.class, new HttpProxyMemberData());
f_mapDataRetrievers.put(HotCacheData.class, new HotCacheData());
f_mapDataRetrievers.put(HotCachePerCacheData.class, new HotCachePerCacheData());
f_mapDataRetrievers.put(NodeStorageData.class, new NodeStorageData());
f_mapDataRetrievers.put(ExecutorData.class, new ExecutorData());
f_mapDataRetrievers.put(GrpcProxyData.class, new GrpcProxyData());
// Loop through each data retriever and initialize the map of
// report XML. Doing it this way we load it only once
Iterator<Map.Entry<Class, DataRetriever>> iter = f_mapDataRetrievers.entrySet().iterator();
while (iter.hasNext()) {
Map.Entry<Class, DataRetriever> entry = iter.next();
String sReport = entry.getValue().getReporterReport();
if (sReport != null) {
String sReportXML = getReportXML(sReport);
if (sReportXML != null) {
f_mapReportXML.put(entry.getKey(), sReportXML);
}
}
}
}
Aggregations