Examples of HeavyReport


Examples of com.dianping.cat.home.heavy.entity.HeavyReport

  @Inject
  protected ReportServiceManager m_reportService;

  @Override
  public boolean buildDailyTask(String name, String domain, Date period) {
    HeavyReport heavyReport = queryHourlyReportsByDuration(name, domain, period, TaskHelper.tomorrowZero(period));
    DailyReport report = new DailyReport();

    report.setContent("");
    report.setCreationDate(new Date());
    report.setDomain(domain);
View Full Code Here

Examples of com.dianping.cat.home.heavy.entity.HeavyReport

    return m_reportService.insertDailyReport(report, binaryContent);
  }

  @Override
  public boolean buildHourlyTask(String name, String domain, Date start) {
    HeavyReport heavyReport = new HeavyReport(Constants.CAT);
    MatrixReportVisitor visitor = new MatrixReportVisitor().setReport(heavyReport);
    Date end = new Date(start.getTime() + TimeHelper.ONE_HOUR);
    Set<String> domains = m_reportService.queryAllDomainNames(start, end, MatrixAnalyzer.ID);

    heavyReport.setStartTime(start);
    heavyReport.setEndTime(end);
    for (String domainName : domains) {
      if (validateDomain(domainName)) {
        MatrixReport matrixReport = m_reportService.queryMatrixReport(domainName, start, end);

        visitor.visitMatrixReport(matrixReport);
View Full Code Here

Examples of com.dianping.cat.home.heavy.entity.HeavyReport

    return m_reportService.insertHourlyReport(report, binaryContent);
  }

  @Override
  public boolean buildMonthlyTask(String name, String domain, Date period) {
    HeavyReport heavyReport = queryDailyReportsByDuration(domain, period, TaskHelper.nextMonthStart(period));
    MonthlyReport report = new MonthlyReport();

    report.setContent("");
    report.setCreationDate(new Date());
    report.setDomain(domain);
View Full Code Here

Examples of com.dianping.cat.home.heavy.entity.HeavyReport

    return m_reportService.insertMonthlyReport(report, binaryContent);
  }

  @Override
  public boolean buildWeeklyTask(String name, String domain, Date period) {
    HeavyReport heavyReport = queryDailyReportsByDuration(domain, period, new Date(period.getTime()
          + TimeHelper.ONE_WEEK));
    WeeklyReport report = new WeeklyReport();

    report.setContent("");
    report.setCreationDate(new Date());
View Full Code Here

Examples of com.dianping.cat.home.heavy.entity.HeavyReport

  }

  private HeavyReport queryDailyReportsByDuration(String domain, Date start, Date end) {
    long startTime = start.getTime();
    long endTime = end.getTime();
    HeavyReportMerger merger = new HeavyReportMerger(new HeavyReport(domain));

    for (; startTime < endTime; startTime += TimeHelper.ONE_DAY) {
      try {
        HeavyReport reportModel = m_reportService.queryHeavyReport(domain, new Date(startTime), new Date(startTime
              + TimeHelper.ONE_DAY));
        reportModel.accept(merger);
      } catch (Exception e) {
        Cat.logError(e);
      }
    }
    HeavyReport heavyReport = merger.getHeavyReport();
    heavyReport.setStartTime(start);
    heavyReport.setEndTime(end);
    return heavyReport;
  }
View Full Code Here

Examples of com.dianping.cat.home.heavy.entity.HeavyReport

  }

  private HeavyReport queryHourlyReportsByDuration(String name, String domain, Date period, Date endDate) {
    long startTime = period.getTime();
    long endTime = endDate.getTime();
    HeavyReportMerger merger = new HeavyReportMerger(new HeavyReport(domain));

    for (; startTime < endTime; startTime = startTime + TimeHelper.ONE_HOUR) {
      Date date = new Date(startTime);
      HeavyReport reportModel = m_reportService.queryHeavyReport(domain, date, new Date(date.getTime()
            + TimeHelper.ONE_HOUR));

      reportModel.accept(merger);
    }
    com.dianping.cat.home.heavy.entity.HeavyReport heavyReport = merger.getHeavyReport();

    return heavyReport;
  }
View Full Code Here

Examples of com.dianping.cat.home.heavy.entity.HeavyReport

    }
    model.setBugReport(bugReport);
  }

  private void buildHeavyInfo(Model model, Payload payload) {
    HeavyReport heavyReport = queryHeavyReport(payload);

    model.setHeavyReport(heavyReport);
    buildSortedHeavyInfo(model, heavyReport);
  }
View Full Code Here

Examples of com.dianping.cat.home.heavy.entity.HeavyReport

  @Test
  public void testMerge() throws Exception {
    String oldXml = Files.forIO().readFrom(getClass().getResourceAsStream("old.xml"), "utf-8");
    String newXml = Files.forIO().readFrom(getClass().getResourceAsStream("new.xml"), "utf-8");
    HeavyReport reportOld = DefaultSaxParser.parse(oldXml);
    HeavyReport reportNew = DefaultSaxParser.parse(newXml);
    String expected = Files.forIO().readFrom(getClass().getResourceAsStream("result.xml"), "utf-8");
    HeavyReportMerger merger = new HeavyReportMerger(new HeavyReport(reportOld.getDomain()));

    reportOld.accept(merger);
    reportNew.accept(merger);

    Assert.assertEquals("Check the merge result!", expected.replace("\r", ""), merger.getHeavyReport().toString()
          .replace("\r", ""));
    Assert.assertEquals("Source report is changed!", newXml.replace("\r", ""), reportNew.toString().replace("\r", ""));

  }
View Full Code Here

Examples of com.dianping.cat.home.heavy.entity.HeavyReport

public class HeavyReportService extends AbstractReportService<HeavyReport> {

  @Override
  public HeavyReport makeReport(String domain, Date start, Date end) {
    HeavyReport report = new HeavyReport(domain);

    report.setStartTime(start);
    report.setEndTime(end);
    return report;
  }
View Full Code Here

Examples of com.dianping.cat.home.heavy.entity.HeavyReport

    return report;
  }

  @Override
  public HeavyReport queryDailyReport(String domain, Date start, Date end) {
    HeavyReportMerger merger = new HeavyReportMerger(new HeavyReport(domain));
    long startTime = start.getTime();
    long endTime = end.getTime();
    String name = Constants.REPORT_HEAVY;

    for (; startTime < endTime; startTime = startTime + TimeHelper.ONE_DAY) {
      try {
        DailyReport report = m_dailyReportDao.findByDomainNamePeriod(domain, name, new Date(startTime),
              DailyReportEntity.READSET_FULL);
        String xml = report.getContent();

        if (xml != null && xml.length() > 0) {
          HeavyReport reportModel = com.dianping.cat.home.heavy.transform.DefaultSaxParser.parse(xml);
          reportModel.accept(merger);
        } else {
          HeavyReport reportModel = queryFromDailyBinary(report.getId(), domain);
          reportModel.accept(merger);
        }
      } catch (DalNotFoundException e) {
        //ignore
      } catch (Exception e) {
        Cat.logError(e);
      }
    }
    HeavyReport heavyReport = merger.getHeavyReport();

    heavyReport.setStartTime(start);
    heavyReport.setEndTime(end);
    return heavyReport;
  }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.