1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package com.hack23.cia.web.impl.ui.application.views.pageclicklistener;
20
21 import org.slf4j.Logger;
22 import org.slf4j.LoggerFactory;
23 import org.springframework.web.context.request.RequestContextHolder;
24
25 import com.ejt.vaadin.loginform.LoginForm.LoginEvent;
26 import com.ejt.vaadin.loginform.LoginForm.LoginListener;
27 import com.hack23.cia.service.api.action.application.LoginRequest;
28 import com.hack23.cia.service.api.action.application.LoginResponse;
29 import com.hack23.cia.service.api.action.common.ServiceResponse.ServiceResult;
30 import com.hack23.cia.web.impl.ui.application.views.common.viewnames.UserViews;
31 import com.vaadin.ui.Notification;
32 import com.vaadin.ui.UI;
33
34
35
36
37 public final class ApplicationLoginListener implements LoginListener {
38
39
40 private static final String LOG_MSG_LOGIN_REQUEST_FAILURE = "LoginRequest {} failure";
41
42
43 private static final String ERROR_MESSAGE = "Error message";
44
45
46 private static final String LOGIN_FAILED = "Login failed";
47
48
49 private static final String LOG_MSG_LOGIN_REQUEST = "LoginRequest {}";
50
51
52 private static final long serialVersionUID = 1L;
53
54
55 private static final Logger LOGGER = LoggerFactory.getLogger(ApplicationLoginListener.class);
56
57
58 private final LoginRequest loginRequest;
59
60
61
62
63
64
65
66 public ApplicationLoginListener(final LoginRequest loginRequest) {
67 this.loginRequest = loginRequest;
68 }
69
70
71 @Override
72 public void onLogin(final LoginEvent event) {
73 loginRequest.setEmail(event.getUserName());
74 loginRequest.setUserpassword(event.getPassword());
75 loginRequest.setSessionId(RequestContextHolder.currentRequestAttributes().getSessionId());
76
77 final LoginResponse response = (LoginResponse) ApplicationMangerAccess.getApplicationManager().service(loginRequest);
78 if (ServiceResult.SUCCESS == response.getResult()) {
79 LOGGER.info(LOG_MSG_LOGIN_REQUEST,event.getUserName());
80
81 UI.getCurrent().getNavigator().navigateTo(UserViews.USERHOME_VIEW_NAME);
82 } else {
83 Notification.show(LOGIN_FAILED,
84 ERROR_MESSAGE,
85 Notification.Type.WARNING_MESSAGE);
86 LOGGER.info(LOG_MSG_LOGIN_REQUEST_FAILURE,event.getUserName());
87 }
88
89 }
90 }