FileDocCategorySizeDatePackage
FileCacheMonitorTask.javaAPI DocGlassfish v2 API9108Fri May 04 22:25:18 BST 2007com.sun.enterprise.cli.commands.monitor

FileCacheMonitorTask

public class FileCacheMonitorTask extends MonitorTask

Fields Summary
private final String
displayFormat
Constructors Summary
public FileCacheMonitorTask(ServerRootMonitor srm, String filter, Timer timer, boolean verbose, File fileName)


             
                                     
         
    
        super(srm, filter, timer, verbose, fileName);
        final String fileCacheTitle = localStrings.getString("commands.monitor.file_cache_monitoring_title");
        final String title = String.format("%1$55s", fileCacheTitle);
        CLILogger.getInstance().printMessage(title);
        displayHeader();        
    
Methods Summary
private voiddisplayData(FileCacheStats fcs)

        final String data = String.format(displayFormat,
                                          fcs.getCountContentHits().getCount(),
                                          fcs.getCountContentMisses().getCount(),
                                          fcs.getCountEntries().getCount(),
                                          fcs.getCountHits().getCount(),
                                          fcs.getCountInfoHits().getCount(),
                                          fcs.getCountInfoMisses().getCount(),
                                          fcs.getCountMisses().getCount(),
                                          fcs.getCountOpenEntries().getCount(),
                                          fcs.getFlagEnabled().getCount(),
                                          fcs.getMaxEntries().getCount(),
                                          fcs.getMaxHeapCacheSize().getCount(),
                                          fcs.getMaxMmapCacheSize().getCount(),
                                          fcs.getMaxOpenEntries().getCount(),
                                          fcs.getSecondsMaxAge().getCount(),
                                          fcs.getSizeHeapCache().getCount(),
                                          fcs.getSizeMmapCache().getCount());
        CLILogger.getInstance().printMessage(data);
        if (fileName != null)
        {
            final String fileData = String.format("%1$s,%2$s,%3$s,%4$s,%5$s,%6$s,%7$s,%8$s,%9$s,"+
                                                  "%10$s,%11$s,%12$s,%13$s,%14$s,%15$s,%16$s",
                                                  fcs.getCountContentHits().getCount(),
                                                  fcs.getCountContentMisses().getCount(),
                                                  fcs.getCountEntries().getCount(),
                                                  fcs.getCountHits().getCount(),
                                                  fcs.getCountInfoHits().getCount(),
                                                  fcs.getCountInfoMisses().getCount(),
                                                  fcs.getCountMisses().getCount(),
                                                  fcs.getCountOpenEntries().getCount(),
                                                  fcs.getFlagEnabled().getCount(),
                                                  fcs.getMaxEntries().getCount(),
                                                  fcs.getMaxHeapCacheSize().getCount(),
                                                  fcs.getMaxMmapCacheSize().getCount(),
                                                  fcs.getMaxOpenEntries().getCount(),
                                                  fcs.getSecondsMaxAge().getCount(),
                                                  fcs.getSizeHeapCache().getCount(),
                                                  fcs.getSizeMmapCache().getCount());
            writeToFile(fileData);
        }
    
public voiddisplayDetails()

        final String details = localStrings.getString("commands.monitor.file_cache_detail");
        CLILogger.getInstance().printMessage(details);
    
private voiddisplayHeader()

        final String cch = localStrings.getString("commands.monitor.cch");
        final String ccm = localStrings.getString("commands.monitor.ccm");
        final String ce = localStrings.getString("commands.monitor.ce");
        final String ch = localStrings.getString("commands.monitor.ch");
        final String cih = localStrings.getString("commands.monitor.cih");
        final String cim = localStrings.getString("commands.monitor.cim");
        final String cm = localStrings.getString("commands.monitor.cm");
        final String coe = localStrings.getString("commands.monitor.coe");
        final String fe = localStrings.getString("commands.monitor.fe");
        final String me = localStrings.getString("commands.monitor.me");
        final String mhcs = localStrings.getString("commands.monitor.mhcs");
        final String mmcs = localStrings.getString("commands.monitor.mmcs");
        final String moe = localStrings.getString("commands.monitor.moe");
        final String sma = localStrings.getString("commands.monitor.sma");
        final String shc = localStrings.getString("commands.monitor.shc");
        final String smc = localStrings.getString("commands.monitor.smc");
        
        final String header = String.format(displayFormat,
                                            cch,ccm,ce,ch,cih,cim,cm,coe,fe,me,mhcs,
                                            mmcs,moe,sma,shc,smc);
        CLILogger.getInstance().printMessage(header);
        if (fileName != null)
        {
            writeToFile(localStrings.getString("commands.monitor.file_cache_write_to_file"));
        }
    
public voidrun()

        if (srm == null) {
            super.cancelMonitorTask();
            return;
        }
        

        final HTTPServiceMonitor httpserviceMonitor = srm.getHTTPServiceMonitor();
        if (httpserviceMonitor == null) {
            cancelMonitorTask();
            return;
        }
        

        final FileCacheMonitor fileCacheMonitor = httpserviceMonitor.getFileCacheMonitor();
        if (fileCacheMonitor == null) {
            cancelMonitorTask();
            return;
        }
        
        
        final FileCacheStats fileCacheStats = fileCacheMonitor.getFileCacheStats();
        
        if (verbose && counter == NUM_ROWS)
        {
            displayHeader();
            counter = 0;  //reset to 0
        }
        displayData(fileCacheStats);
        if (verbose) counter++;