Search in sources :

Example 1 with SpriteImageResult

use of com.att.aro.core.bestpractice.pojo.SpriteImageResult 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;
            }
        }
    }
}
Also used : AsyncCheckEntry(com.att.aro.core.bestpractice.pojo.AsyncCheckEntry) UnsecureSSLVersionResult(com.att.aro.core.bestpractice.pojo.UnsecureSSLVersionResult) ImageFormatResult(com.att.aro.core.bestpractice.pojo.ImageFormatResult) AbstractBestPracticeResult(com.att.aro.core.bestpractice.pojo.AbstractBestPracticeResult) BestPracticeType(com.att.aro.core.bestpractice.pojo.BestPracticeType) ImageSizeResult(com.att.aro.core.bestpractice.pojo.ImageSizeResult) DisplayNoneInCSSResult(com.att.aro.core.bestpractice.pojo.DisplayNoneInCSSResult) UnnecessaryConnectionResult(com.att.aro.core.bestpractice.pojo.UnnecessaryConnectionResult) MultiSimultnsConnectionResult(com.att.aro.core.bestpractice.pojo.MultiSimultnsConnectionResult) SimultnsConnectionResult(com.att.aro.core.bestpractice.pojo.SimultnsConnectionResult) VideoStartup(com.att.aro.core.videoanalysis.pojo.VideoStartup) Http3xxCodeResult(com.att.aro.core.bestpractice.pojo.Http3xxCodeResult) HttpsUsageResult(com.att.aro.core.bestpractice.pojo.HttpsUsageResult) MinificationResult(com.att.aro.core.bestpractice.pojo.MinificationResult) SpriteImageResult(com.att.aro.core.bestpractice.pojo.SpriteImageResult) ForwardSecrecyResult(com.att.aro.core.bestpractice.pojo.ForwardSecrecyResult) FileOrderResult(com.att.aro.core.bestpractice.pojo.FileOrderResult) AsyncCheckInScriptResult(com.att.aro.core.bestpractice.pojo.AsyncCheckInScriptResult) FileCompressionResult(com.att.aro.core.bestpractice.pojo.FileCompressionResult) DuplicateContentResult(com.att.aro.core.bestpractice.pojo.DuplicateContentResult) Http4xx5xxResult(com.att.aro.core.bestpractice.pojo.Http4xx5xxResult) MultiSimultnsConnectionResult(com.att.aro.core.bestpractice.pojo.MultiSimultnsConnectionResult) ImageCompressionResult(com.att.aro.core.bestpractice.pojo.ImageCompressionResult) ImageMdtaResult(com.att.aro.core.bestpractice.pojo.ImageMdtaResult)

Example 2 with SpriteImageResult

use of com.att.aro.core.bestpractice.pojo.SpriteImageResult in project VideoOptimzer by attdevsupport.

the class SpriteImageImpl method runTest.

@Override
public AbstractBestPracticeResult runTest(PacketAnalyzerResult tracedata) {
    SpriteImageResult result = new SpriteImageResult();
    List<SpriteImageEntry> analysisResults = new ArrayList<SpriteImageEntry>();
    for (Session session : tracedata.getSessionlist()) {
        double lastTimeStamp = 0.0;
        HttpRequestResponseInfo lastReqRessInfo = null;
        HttpRequestResponseInfo secondReqRessInfo = null;
        boolean thirdOccurrenceTriggered = false;
        for (HttpRequestResponseInfo req : session.getRequestResponseInfo()) {
            if (req.getDirection() == HttpDirection.RESPONSE && req.getContentType() != null && req.getFirstDataPacket() != null && req.getContentType().contains("image/") && req.getContentLength() < IMAGE_SIZE_LIMIT) {
                PacketInfo pktInfo = req.getFirstDataPacket();
                if (lastTimeStamp == 0.0) {
                    lastTimeStamp = pktInfo.getTimeStamp();
                    lastReqRessInfo = req;
                    continue;
                } else {
                    if ((pktInfo.getTimeStamp() - lastTimeStamp) <= 5.0) {
                        if (!thirdOccurrenceTriggered) {
                            secondReqRessInfo = req;
                            thirdOccurrenceTriggered = true;
                            continue;
                        } else {
                            /* -At this stage 3 images found to be downloaded in 5 secs. store them.
								 * -fix for defect DE26829*/
                            analysisResults.add(new SpriteImageEntry(lastReqRessInfo));
                            analysisResults.add(new SpriteImageEntry(secondReqRessInfo));
                            analysisResults.add(new SpriteImageEntry(req));
                            /* -reset the variables to search more such images in this session
								 * -fix for defect DE26829 */
                            lastTimeStamp = 0.0;
                            lastReqRessInfo = null;
                            secondReqRessInfo = null;
                            thirdOccurrenceTriggered = false;
                        }
                    }
                    lastTimeStamp = pktInfo.getTimeStamp();
                    lastReqRessInfo = req;
                    secondReqRessInfo = null;
                    thirdOccurrenceTriggered = false;
                }
            }
        }
    }
    result.setAnalysisResults(analysisResults);
    String text = "";
    if (analysisResults.isEmpty()) {
        result.setResultType(BPResultType.PASS);
        text = MessageFormat.format(textResultPass, analysisResults.size());
        result.setResultText(text);
        result.setResultExcelText(BPResultType.PASS.getDescription());
    } else {
        result.setResultType(BPResultType.FAIL);
        text = MessageFormat.format(textResults, ApplicationConfig.getInstance().getAppShortName(), analysisResults.size());
        result.setResultText(text);
        result.setResultExcelText(MessageFormat.format(textExcelResults, BPResultType.FAIL.getDescription(), analysisResults.size()));
    }
    result.setAboutText(aboutText);
    result.setDetailTitle(detailTitle);
    result.setLearnMoreUrl(learnMoreUrl);
    result.setOverviewTitle(overviewTitle);
    result.setExportAllNumberOfSpriteFiles(exportAllNumberOfSpriteFiles);
    return result;
}
Also used : SpriteImageResult(com.att.aro.core.bestpractice.pojo.SpriteImageResult) HttpRequestResponseInfo(com.att.aro.core.packetanalysis.pojo.HttpRequestResponseInfo) ArrayList(java.util.ArrayList) PacketInfo(com.att.aro.core.packetanalysis.pojo.PacketInfo) SpriteImageEntry(com.att.aro.core.bestpractice.pojo.SpriteImageEntry) Session(com.att.aro.core.packetanalysis.pojo.Session)

Aggregations

SpriteImageResult (com.att.aro.core.bestpractice.pojo.SpriteImageResult)2 AbstractBestPracticeResult (com.att.aro.core.bestpractice.pojo.AbstractBestPracticeResult)1 AsyncCheckEntry (com.att.aro.core.bestpractice.pojo.AsyncCheckEntry)1 AsyncCheckInScriptResult (com.att.aro.core.bestpractice.pojo.AsyncCheckInScriptResult)1 BestPracticeType (com.att.aro.core.bestpractice.pojo.BestPracticeType)1 DisplayNoneInCSSResult (com.att.aro.core.bestpractice.pojo.DisplayNoneInCSSResult)1 DuplicateContentResult (com.att.aro.core.bestpractice.pojo.DuplicateContentResult)1 FileCompressionResult (com.att.aro.core.bestpractice.pojo.FileCompressionResult)1 FileOrderResult (com.att.aro.core.bestpractice.pojo.FileOrderResult)1 ForwardSecrecyResult (com.att.aro.core.bestpractice.pojo.ForwardSecrecyResult)1 Http3xxCodeResult (com.att.aro.core.bestpractice.pojo.Http3xxCodeResult)1 Http4xx5xxResult (com.att.aro.core.bestpractice.pojo.Http4xx5xxResult)1 HttpsUsageResult (com.att.aro.core.bestpractice.pojo.HttpsUsageResult)1 ImageCompressionResult (com.att.aro.core.bestpractice.pojo.ImageCompressionResult)1 ImageFormatResult (com.att.aro.core.bestpractice.pojo.ImageFormatResult)1 ImageMdtaResult (com.att.aro.core.bestpractice.pojo.ImageMdtaResult)1 ImageSizeResult (com.att.aro.core.bestpractice.pojo.ImageSizeResult)1 MinificationResult (com.att.aro.core.bestpractice.pojo.MinificationResult)1 MultiSimultnsConnectionResult (com.att.aro.core.bestpractice.pojo.MultiSimultnsConnectionResult)1 SimultnsConnectionResult (com.att.aro.core.bestpractice.pojo.SimultnsConnectionResult)1