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
24 import com.hack23.cia.service.api.action.admin.SendEmailRequest;
25 import com.hack23.cia.service.api.action.common.ServiceResponse;
26 import com.hack23.cia.service.api.action.common.ServiceResponse.ServiceResult;
27 import com.hack23.cia.web.impl.ui.application.views.common.viewnames.UserViews;
28 import com.vaadin.ui.Button.ClickEvent;
29 import com.vaadin.ui.Button.ClickListener;
30 import com.vaadin.ui.Notification;
31 import com.vaadin.ui.UI;
32
33
34
35
36 public final class SendEmailClickListener implements ClickListener {
37
38
39 private static final String SEND_EMAIL_FAILURE = "SendEmail {} failure";
40
41
42 private static final String ERROR_MESSAGE = "Error message";
43
44
45 private static final String SEND_EMAIL_FAILEDFAILED = "Send email failed";
46
47
48 private static final String LOG_MSG_SEND_EMAIL = "SendEmail {}";
49
50
51 private static final long serialVersionUID = 1L;
52
53
54 private static final Logger LOGGER = LoggerFactory.getLogger(SendEmailClickListener.class);
55
56
57 private final SendEmailRequest sendEmailRequest;
58
59
60
61
62
63
64
65 public SendEmailClickListener(final SendEmailRequest sendEmailRequest) {
66 this.sendEmailRequest = sendEmailRequest;
67 }
68
69 @Override
70 public void buttonClick(final ClickEvent event) {
71 final ServiceResponse response = ApplicationMangerAccess.getApplicationManager().service(sendEmailRequest);
72 if (ServiceResult.SUCCESS == response.getResult()) {
73 LOGGER.info(LOG_MSG_SEND_EMAIL,sendEmailRequest.getEmail());
74 UI.getCurrent().getNavigator().navigateTo(UserViews.USERHOME_VIEW_NAME);
75 } else {
76 Notification.show(SEND_EMAIL_FAILEDFAILED,
77 ERROR_MESSAGE,
78 Notification.Type.WARNING_MESSAGE);
79 LOGGER.info(SEND_EMAIL_FAILURE,sendEmailRequest.getEmail());
80 }
81 }
82 }