use of com.att.aro.core.bestpractice.pojo.MinificationResult in project VideoOptimzer by attdevsupport.
the class BpDetailItem method refresh.
@Override
public void refresh(AROTraceData model) {
List<AbstractBestPracticeResult> bpResults = model.getBestPracticeResults();
for (AbstractBestPracticeResult bpr : bpResults) {
if (bpr.getBestPracticeType().equals(this.bpType)) {
resultsTextLabel.setText(bpr.getResultText());
imageLabel.setIcon(loadImageIcon(bpr));
if (bpr.getResultType().equals(BPResultType.CONFIG_REQUIRED)) {
addConfigIconActions();
} else {
imageLabel.setToolTipText("");
if (imageLabel.getMouseListeners() != null && imageLabel.getMouseListeners().length > 1) {
imageLabel.setCursor(Cursor.getDefaultCursor());
}
}
BestPracticeType resultType = bpr.getBestPracticeType();
switch(resultType) {
case FILE_COMPRESSION:
if (bpr.getResultType() == BPResultType.NONE)
((BpFileCompressionTablePanel) resultsTablePanel).setData(Collections.emptyList());
else
((BpFileCompressionTablePanel) resultsTablePanel).setData(((FileCompressionResult) bpr).getResults());
return;
case DUPLICATE_CONTENT:
if (bpr.getResultType() == BPResultType.NONE)
((BpFileDuplicateContentTablePanel) resultsTablePanel).setData(Collections.emptyList());
else
((BpFileDuplicateContentTablePanel) resultsTablePanel).setData(((DuplicateContentResult) bpr).getDuplicateContentList());
return;
case IMAGE_SIZE:
if (bpr.getResultType() == BPResultType.NONE || bpr.getResultType() == BPResultType.NO_DATA)
((BpFileImageSizeTablePanel) resultsTablePanel).setData(Collections.emptyList());
else
((BpFileImageSizeTablePanel) resultsTablePanel).setData(((ImageSizeResult) bpr).getResults());
return;
case IMAGE_MDATA:
if (bpr.getResultType() == BPResultType.NONE || bpr.getResultType() == BPResultType.NO_DATA)
((BpFileImageMDataTablePanel) imgMdataResultsTablePanel).setData(Collections.emptyList());
else
((BpFileImageMDataTablePanel) imgMdataResultsTablePanel).setData(((ImageMdtaResult) bpr).getResults());
return;
case IMAGE_CMPRS:
if (bpr.getResultType() == BPResultType.NONE || bpr.getResultType() == BPResultType.NO_DATA)
((BpFileImageCompressionTablePanel) imageCompressionResultsTablePanel).setData(Collections.emptyList());
else
((BpFileImageCompressionTablePanel) imageCompressionResultsTablePanel).setData(((ImageCompressionResult) bpr).getResults());
return;
case IMAGE_FORMAT:
if (bpr.getResultType() == BPResultType.NONE || bpr.getResultType() == BPResultType.NO_DATA)
((BpFileImageFormatTablePanel) imageFormatResultsTablePanel).setData(Collections.emptyList());
else
((BpFileImageFormatTablePanel) imageFormatResultsTablePanel).setData(((ImageFormatResult) bpr).getResults());
return;
case IMAGE_COMPARE:
if (bpr.getResultType() == BPResultType.NONE || bpr.getResultType() == BPResultType.NO_DATA) {
((BpFileImageComparisionTablePanel) imageComparisonResultsTablePanel).setData(Collections.emptyList());
} else {
((BpFileImageComparisionTablePanel) imageComparisonResultsTablePanel).setData(((ImageComparatorResult) bpr).getResults());
}
return;
case MINIFICATION:
if (bpr.getResultType() == BPResultType.NONE)
((BpFileMinificationTablePanel) resultsTablePanel).setData(Collections.emptyList());
else
((BpFileMinificationTablePanel) resultsTablePanel).setData(((MinificationResult) bpr).getMinificationEntryList());
return;
case SPRITEIMAGE:
if (bpr.getResultType() == BPResultType.NONE)
((BpFileSpriteImagesTablePanel) resultsTablePanel).setData(Collections.emptyList());
else
((BpFileSpriteImagesTablePanel) resultsTablePanel).setData(((SpriteImageResult) bpr).getAnalysisResults());
return;
case HTTP_4XX_5XX:
if (bpr.getResultType() == BPResultType.NONE)
((BpConnectionsHttp4xx5xxTablePanel) resultsTablePanel).setData(Collections.emptyList());
else
((BpConnectionsHttp4xx5xxTablePanel) resultsTablePanel).setData(((Http4xx5xxResult) bpr).getHttpResCodelist());
return;
case HTTP_3XX_CODE:
if (bpr.getResultType() == BPResultType.NONE)
((BpConnectionsHttp3xxTablePanel) resultsTablePanel).setData(Collections.emptyList());
else
((BpConnectionsHttp3xxTablePanel) resultsTablePanel).setData(((Http3xxCodeResult) bpr).getHttp3xxResCode());
return;
case ASYNC_CHECK:
if (bpr.getResultType() == BPResultType.NONE)
((BpHtmlAsyncLoadTablePanel) resultsTablePanel).setData(Collections.emptyList());
else {
List<AsyncCheckEntry> res = ((AsyncCheckInScriptResult) bpr).getResults();
((BpHtmlAsyncLoadTablePanel) resultsTablePanel).setData(res);
}
return;
case FILE_ORDER:
if (bpr.getResultType() == BPResultType.NONE)
((BpHtmlFileOrderTablePanel) resultsTablePanel).setData(Collections.emptyList());
else
((BpHtmlFileOrderTablePanel) resultsTablePanel).setData(((FileOrderResult) bpr).getResults());
return;
case DISPLAY_NONE_IN_CSS:
if (bpr.getResultType() == BPResultType.NONE)
((BpHtmlDisplayNoneInCSSTablePanel) resultsTablePanel).setData(Collections.emptyList());
else
((BpHtmlDisplayNoneInCSSTablePanel) resultsTablePanel).setData(((DisplayNoneInCSSResult) bpr).getResults());
return;
case UNNECESSARY_CONNECTIONS:
if (bpr.getResultType() == BPResultType.NONE)
((BpConnectionsUnnecessaryTablePanel) resultsTablePanel).setData(Collections.emptyList());
else
((BpConnectionsUnnecessaryTablePanel) resultsTablePanel).setData(((UnnecessaryConnectionResult) bpr).getTightlyCoupledBurstsDetails());
return;
case HTTPS_USAGE:
if (bpr.getResultType() == BPResultType.NONE)
((BpSecurityHttpsUsageTablePanel) resultsTablePanel).setData(Collections.emptyList());
else
((BpSecurityHttpsUsageTablePanel) resultsTablePanel).setData(((HttpsUsageResult) bpr).getResults());
return;
case TRANSMISSION_PRIVATE_DATA:
if (bpr.getResultType() == BPResultType.NONE) {
((BpSecurityTransmissionPrivateDataTablePanel) resultsTablePanel).setData(Collections.emptyList());
buttonPrivateData.setEnabled(false);
} else {
((BpSecurityTransmissionPrivateDataTablePanel) resultsTablePanel).setData(((TransmissionPrivateDataResult) bpr).getResults());
buttonPrivateData.setEnabled(true);
}
return;
case UNSECURE_SSL_VERSION:
if (bpr.getResultType() == BPResultType.NONE)
((BpSecurityUnsecureSSLVersionTablePanel) resultsTablePanel).setData(Collections.emptyList());
else
((BpSecurityUnsecureSSLVersionTablePanel) resultsTablePanel).setData(((UnsecureSSLVersionResult) bpr).getResults());
return;
case FORWARD_SECRECY:
if (bpr.getResultType() == BPResultType.NONE)
((BpSecurityForwardSecrecyTablePanel) resultsTablePanel).setData(Collections.emptyList());
else
((BpSecurityForwardSecrecyTablePanel) resultsTablePanel).setData(((ForwardSecrecyResult) bpr).getResults());
return;
case SIMUL_CONN:
if (bpr.getResultType() == BPResultType.NONE)
((BPConnectionsSimultnsTablePanel) resultsTablePanel).setData(Collections.emptyList());
else
((BPConnectionsSimultnsTablePanel) resultsTablePanel).setData(((SimultnsConnectionResult) bpr).getResults());
return;
case MULTI_SIMULCONN:
if (bpr.getResultType() == BPResultType.NONE)
((BPConnectionsSimultnsTablePanel) resultsTablePanel).setData(Collections.emptyList());
else
((BPConnectionsSimultnsTablePanel) resultsTablePanel).setData(((MultiSimultnsConnectionResult) bpr).getResults());
return;
case VIDEO_STALL:
if (bpr.getResultType() == BPResultType.NONE || bpr.getResultType() == BPResultType.NO_DATA) {
((BPVideoStallTablePanel) resultsTablePanel).setData(Collections.emptyList());
} else {
((BPVideoStallTablePanel) resultsTablePanel).setData(((VideoStallResult) bpr).getResults());
}
return;
case STARTUP_DELAY:
StartupDelayComparisonPanel startupDelayPanel = (StartupDelayComparisonPanel) resultsChartPanel;
List<VideoStartup> results = Collections.emptyList();
if (bpr.getResultType() != BPResultType.NONE) {
results = ((VideoStartUpDelayResult) bpr).getResults();
}
startupDelayPanel.setData(results);
return;
case VIDEO_ABR_LADDER:
VideoAdaptiveBitrateLadderPanel adaptiveBitrateLadderPanel = (VideoAdaptiveBitrateLadderPanel) resultsChartPanel;
if (bpr.getResultType() == BPResultType.NONE || bpr.getResultType() == BPResultType.NO_DATA) {
adaptiveBitrateLadderPanel.setData(Collections.emptyList());
((BPAdaptiveBitrateTablePanel) resultsTablePanel).setData(Collections.emptyList());
} else {
adaptiveBitrateLadderPanel.setData(((VideoAdaptiveBitrateLadderResult) bpr).getResults());
((BPAdaptiveBitrateTablePanel) resultsTablePanel).setData(((VideoAdaptiveBitrateLadderResult) bpr).getResults());
}
return;
case VIDEO_CONCURRENT_SESSION:
if (bpr.getResultType() == BPResultType.NONE || bpr.getResultType() == BPResultType.NO_DATA) {
((BPVideoConcurrentSessionTablePanel) resultsTablePanel).setData(Collections.emptyList());
} else {
((BPVideoConcurrentSessionTablePanel) resultsTablePanel).setData(((VideoConcurrentSessionResult) bpr).getResults());
}
return;
case NETWORK_COMPARISON:
if (bpr.getResultType() == BPResultType.NONE || bpr.getResultType() == BPResultType.NO_DATA) {
((BPNetworkComparisonTablePanel) resultsTablePanel).setData(Collections.emptyList());
} else {
((BPNetworkComparisonTablePanel) resultsTablePanel).setData(((VideoNetworkComparisonResult) bpr).getResults());
}
return;
default:
return;
}
}
}
}
use of com.att.aro.core.bestpractice.pojo.MinificationResult in project VideoOptimzer by attdevsupport.
the class MinificationImpl method runTest.
@Override
public AbstractBestPracticeResult runTest(PacketAnalyzerResult tracedata) {
htmlCompressor = null;
MinificationResult result = new MinificationResult();
initHtmlCompressor();
List<MinificationEntry> minificationEntryList = new ArrayList<MinificationEntry>();
String contentType = null;
int totalSavingInBytes = 0;
int totalBytes = 0;
final ExecutorService executorService = Executors.newFixedThreadPool(50);
Collection<Worker> workers = new ArrayList<Worker>();
for (Session session : tracedata.getSessionlist()) {
HttpRequestResponseInfo lastRequestObj = null;
for (HttpRequestResponseInfo req : session.getRequestResponseInfo()) {
if (req.getDirection() == HttpDirection.REQUEST) {
lastRequestObj = req;
}
contentType = req.getContentType();
if (req.getDirection() == HttpDirection.RESPONSE && req.getContentLength() > 0 && contentType != null) {
workers.add(new Worker(contentType, req, lastRequestObj, session));
// if (reqhelper.isJavaScript(contentType)) {
// entry = calculateSavingMinifiedJavascript(req, lastRequestObj, session);
// } else if (reqhelper.isCss(contentType)) {
// workers.add(new Worker(req, lastRequestObj, session));
// // Future<MinificationEntry> res1 = executorService.submit(new Worker(req, lastRequestObj, session);
// // entry = calculateSavingMinifiedCss(req, lastRequestObj, session);
// } else if (reqhelper.isHtml(contentType)) {
// entry = calculateSavingMinifiedHtml(req, lastRequestObj, session);
// } else if (reqhelper.isJSON(contentType)) {
// entry = calculateSavingMinifiedJson(req, lastRequestObj, session);
// }
// if (entry != null) {
// totalSavingInBytes += entry.getSavingsSizeInByte();
// minificationEntryList.add(entry);
// }
}
}
}
try {
List<Future<MinificationEntry>> list = executorService.invokeAll(workers);
for (Future<MinificationEntry> future : list) {
if (future != null && future.get() != null) {
totalSavingInBytes += future.get().getSavingsSizeInByte();
totalBytes += future.get().getOriginalSizeInByte();
minificationEntryList.add(future.get());
}
}
} catch (InterruptedException | ExecutionException ee) {
LOGGER.error(ee.getMessage(), ee);
}
executorService.shutdown();
int savingInKb = totalSavingInBytes / 1024;
result.setTotalSavingsInKb(savingInKb);
result.setTotalSavingsInByte(totalSavingInBytes);
result.setMinificationEntryList(minificationEntryList);
int numberOfFiles = minificationEntryList.size();
String text = "";
if (minificationEntryList.isEmpty()) {
result.setResultType(BPResultType.PASS);
text = MessageFormat.format(textResultPass, numberOfFiles, savingInKb);
result.setResultText(text);
result.setResultExcelText(BPResultType.PASS.getDescription());
} else if (savingInKb < 1) {
result.setResultType(BPResultType.FAIL);
text = MessageFormat.format(textResultFail, ApplicationConfig.getInstance().getAppShortName(), numberOfFiles);
result.setResultText(text);
result.setResultExcelText(MessageFormat.format(textExcelResultsFail, BPResultType.FAIL.getDescription(), numberOfFiles));
} else {
result.setResultType(BPResultType.FAIL);
String percentageSaving = String.valueOf(Math.round(((double) totalSavingInBytes / totalBytes) * 100));
text = MessageFormat.format(textResults, ApplicationConfig.getInstance().getAppShortName(), numberOfFiles, savingInKb, percentageSaving);
result.setResultText(text);
result.setResultExcelText(MessageFormat.format(textExcelResults, BPResultType.FAIL.getDescription(), numberOfFiles, savingInKb, percentageSaving));
}
result.setAboutText(aboutText);
result.setDetailTitle(detailTitle);
result.setLearnMoreUrl(learnMoreUrl);
result.setOverviewTitle(overviewTitle);
result.setExportAllNumberOfMinifyFiles(exportAllNumberOfMinifyFiles);
return result;
}
Aggregations