try {
String report = payload.getReport();
String domain = payload.getDomain();
ModelPeriod period = payload.getPeriod();
ModelRequest request = null;
if ("logview".equals(report)) {
request = new ModelRequest(domain, MessageId.parse(payload.getMessageId()).getTimestamp());
} else {
request = new ModelRequest(domain, period.getStartTime());
}
ModelResponse<?> response = null;
if (TransactionAnalyzer.ID.equals(report)) {
response = m_transactionService.invoke(request);
} else if (EventAnalyzer.ID.equals(report)) {
response = m_eventService.invoke(request);
} else if (ProblemAnalyzer.ID.equals(report)) {
response = m_problemService.invoke(request);
} else if ("logview".equals(report)) {
String messageId = payload.getMessageId();
MessageId id = MessageId.parse(messageId);
request.setProperty("messageId", messageId);
request.setProperty("waterfall", String.valueOf(payload.isWaterfall()));
if (id.getVersion() != 1) {
response = m_messageService.invoke(request);
}
} else if (HeartbeatAnalyzer.ID.equals(report)) {