1
2
3
4
5 package com.hack23.cia.service.impl.admin;
6
7 import java.util.Date;
8
9 import com.hack23.cia.model.application.dto.common.UserSessionDTO;
10 import com.hack23.cia.model.application.impl.admin.MonitorActionEvent;
11 import com.hack23.cia.model.application.impl.common.ActionEvent;
12 import com.hack23.cia.model.application.impl.common.UserSession;
13 import com.hack23.cia.service.api.admin.MonitorRequest;
14 import com.hack23.cia.service.api.admin.MonitorResponse;
15 import com.hack23.cia.service.api.common.ServiceResponse;
16 import com.hack23.cia.service.impl.common.UserSessionService;
17
18 /***
19 * The Class MonitorRequestService.
20 */
21 public class MonitorRequestService extends
22 AbstractAdminRequestService<MonitorRequest> {
23
24 /***
25 * Instantiates a new monitor request service.
26 *
27 * @param userSessionService the user session service
28 * @param adminService the admin service
29 */
30 public MonitorRequestService(final UserSessionService userSessionService,
31 final AdminService adminService) {
32 super(userSessionService, adminService);
33 }
34
35
36
37
38
39
40
41
42
43 @Override
44 public final ActionEvent createActionEvent(final MonitorRequest request,
45 final UserSession userSession) {
46 return new MonitorActionEvent(new Date(), userSession, request
47 .getOperation());
48 }
49
50
51
52
53
54
55 @SuppressWarnings("unchecked")
56 @Override
57 public final Class getSupportedService() {
58 return MonitorRequest.class;
59 }
60
61
62
63
64
65
66
67 @Override
68 public final ServiceResponse handleServiceRequest(
69 final MonitorRequest request, final UserSessionDTO userSession) {
70 MonitorResponse monitorResponse = null;
71 switch (request.getOperation()) {
72 case RecentActions:
73 monitorResponse = new MonitorResponse(userSession, this
74 .getAdminService().getRecentActionsGraph());
75 break;
76 case ResponseTime:
77 monitorResponse = new MonitorResponse(userSession, this
78 .getAdminService().createResponseTimeGraph());
79 break;
80 default:
81 break;
82 }
83
84 return monitorResponse;
85 }
86 }