Skip to content
This repository has been archived by the owner on Nov 9, 2017. It is now read-only.

Commit

Permalink
Replace all uses of Seam's FacesMessages.
Browse files Browse the repository at this point in the history
Use Zanata's own FacesMessages class instead.
  • Loading branch information
Carlos A. Munoz authored and seanf committed Jan 21, 2015
1 parent e239f21 commit 8cad539
Show file tree
Hide file tree
Showing 22 changed files with 249 additions and 139 deletions.
Expand Up @@ -5,13 +5,13 @@
import org.hibernate.validator.constraints.Email;
import org.hibernate.validator.constraints.NotEmpty;
import org.jboss.seam.annotations.In;
import org.jboss.seam.faces.FacesMessages;
import org.jboss.seam.security.management.JpaIdentityStore;
import org.zanata.dao.AccountDAO;
import org.zanata.dao.PersonDAO;
import org.zanata.model.HAccount;
import org.zanata.model.HPerson;
import org.zanata.security.ZanataIdentity;
import org.zanata.ui.faces.FacesMessages;

/**
* @author Patrick Huang
Expand All @@ -27,6 +27,9 @@ public abstract class AbstractProfileAction {
@In
ZanataIdentity identity;

@In("jsfMessages")
private FacesMessages facesMessages;

@In(required = false, value = JpaIdentityStore.AUTHENTICATED_USER)
HAccount authenticatedAccount;

Expand All @@ -41,7 +44,7 @@ protected void validateEmail(String email) {

if (person != null && !person.getAccount().equals(authenticatedAccount)) {
valid = false;
FacesMessages.instance().addToControl("email",
facesMessages.addToControl("email",
"This email address is already taken");
}
}
Expand All @@ -51,7 +54,7 @@ protected void validateUsername(String username) {

if (account != null && !account.equals(authenticatedAccount)) {
valid = false;
FacesMessages.instance().addToControl("username",
facesMessages.addToControl("username",
"This username is already taken");
}
}
Expand Down
Expand Up @@ -20,7 +20,7 @@
*/
package org.zanata.action;

import static org.jboss.seam.international.StatusMessage.Severity.ERROR;
import static javax.faces.application.FacesMessage.SEVERITY_ERROR;

import java.io.Serializable;

Expand All @@ -33,17 +33,15 @@
import org.jboss.seam.annotations.Out;
import org.jboss.seam.annotations.Scope;
import org.jboss.seam.contexts.Contexts;
import org.jboss.seam.faces.FacesMessages;
import org.jboss.seam.security.management.JpaIdentityStore;
import org.zanata.dao.AccountDAO;
import org.zanata.model.HAccount;
import org.zanata.security.AuthenticationManager;
import org.zanata.security.AuthenticationType;
import org.zanata.security.ZanataCredentials;
import org.zanata.security.openid.OpenIdAuthCallback;
import org.zanata.security.openid.OpenIdAuthenticationResult;
import org.zanata.security.openid.OpenIdProviderType;
import org.zanata.service.RegisterService;
import org.zanata.ui.faces.FacesMessages;
import org.zanata.util.ServiceLocator;

/**
Expand All @@ -58,6 +56,9 @@ public class AccountMergeAction implements Serializable {
@In(value = JpaIdentityStore.AUTHENTICATED_USER)
private HAccount authenticatedAccount;

@In("jsfMessages")
private FacesMessages facesMessages;

@In
private AuthenticationManager authenticationManager;

Expand Down Expand Up @@ -110,12 +111,12 @@ public void validateAccounts() {
// The account to merge in has been authenticated
if (obsoleteAccount != null) {
if (obsoleteAccount.getId() == null) {
FacesMessages.instance().add(ERROR,
facesMessages.addGlobal(SEVERITY_ERROR,
"Could not find an account for that user.");
valid = false;
} else if (authenticatedAccount.getId().equals(
obsoleteAccount.getId())) {
FacesMessages.instance().add(ERROR,
facesMessages.addGlobal(SEVERITY_ERROR,
"You are attempting to merge the same account.");
valid = false;
}
Expand All @@ -128,7 +129,7 @@ public void mergeAccounts() {
registerServiceImpl
.mergeAccounts(authenticatedAccount, obsoleteAccount);
obsoleteAccount = null; // reset the obsolete account
FacesMessages.instance().add("Your accounts have been merged.");
facesMessages.addGlobal("Your accounts have been merged.");
}

public void cancel() {
Expand Down
11 changes: 7 additions & 4 deletions zanata-war/src/main/java/org/zanata/action/ActivateAction.java
Expand Up @@ -30,20 +30,23 @@
import org.jboss.seam.annotations.In;
import org.jboss.seam.annotations.Name;
import org.jboss.seam.annotations.Scope;
import org.jboss.seam.faces.FacesMessages;
import org.jboss.seam.security.RunAsOperation;
import org.jboss.seam.security.management.IdentityManager;
import org.zanata.dao.AccountActivationKeyDAO;
import org.zanata.exception.KeyNotFoundException;
import org.zanata.exception.ActivationLinkExpiredException;
import org.zanata.model.HAccountActivationKey;
import org.zanata.ui.faces.FacesMessages;

@Name("activate")
@Scope(ScopeType.CONVERSATION)
public class ActivateAction implements Serializable {

private static final long serialVersionUID = -8079131168179421345L;

@In("jsfMessages")
private FacesMessages facesMessages;

@In
private AccountActivationKeyDAO accountActivationKeyDAO;

Expand Down Expand Up @@ -102,9 +105,9 @@ public void execute() {

accountActivationKeyDAO.makeTransient(key);

FacesMessages
.instance()
.add("Your account was successfully activated. You can now sign in.");
facesMessages
.addGlobal(
"Your account was successfully activated. You can now sign in.");

return "/account/login.xhtml";
}
Expand Down
19 changes: 11 additions & 8 deletions zanata-war/src/main/java/org/zanata/action/GlossaryAction.java
Expand Up @@ -15,8 +15,6 @@
import org.jboss.seam.annotations.In;
import org.jboss.seam.annotations.Name;
import org.jboss.seam.annotations.Scope;
import org.jboss.seam.faces.FacesMessages;
import org.jboss.seam.international.StatusMessage.Severity;
import org.zanata.common.LocaleId;
import org.zanata.dao.GlossaryDAO;
import org.zanata.dao.LocaleDAO;
Expand All @@ -27,6 +25,7 @@
import org.zanata.service.GlossaryFileService;
import org.zanata.ui.AbstractListFilter;
import org.zanata.ui.InMemoryListFilter;
import org.zanata.ui.faces.FacesMessages;
import org.zanata.util.ServiceLocator;
import com.google.common.collect.Lists;

Expand All @@ -35,6 +34,8 @@
import lombok.Setter;
import lombok.extern.slf4j.Slf4j;

import static javax.faces.application.FacesMessage.SEVERITY_ERROR;

@Name("glossaryAction")
@Scope(ScopeType.PAGE)
@Slf4j
Expand All @@ -53,6 +54,9 @@ public class GlossaryAction implements Serializable {
@In
private Messages msgs;

@In("jsfMessages")
private FacesMessages facesMessages;

@Getter
private GlossaryFileUploadHelper glossaryFileUpload =
new GlossaryFileUploadHelper();
Expand Down Expand Up @@ -83,8 +87,8 @@ public String deleteGlossary(String localeId) {
glossaryDAO.deleteAllEntries(new LocaleId(localeId));
log.info("Glossary deleted (" + localeId + "): " + rowCount);
}
FacesMessages.instance().add(Severity.INFO,
msgs.format("jsf.Glossary.deleted", rowCount, localeId));
facesMessages.addGlobal(msgs.format("jsf.Glossary.deleted", rowCount,
localeId));
return FacesContext.getCurrentInstance().getViewRoot().getViewId();
}

Expand All @@ -103,14 +107,13 @@ public String uploadFile() {
for (Glossary glossary : glossaries) {
glossaryFileServiceImpl.saveGlossary(glossary);
}
FacesMessages.instance().add(Severity.INFO,
"Glossary file {0} uploaded.",
facesMessages.addGlobal("Glossary file {0} uploaded.",
this.glossaryFileUpload.getFileName());
} catch (ZanataServiceException e) {
FacesMessages.instance().add(Severity.ERROR, e.getMessage(),
facesMessages.addGlobal(SEVERITY_ERROR, e.getMessage(),
this.glossaryFileUpload.getFileName());
} catch (ConstraintViolationException e) {
FacesMessages.instance().add(Severity.ERROR, "Invalid arguments");
facesMessages.addGlobal(SEVERITY_ERROR, "Invalid arguments");
}

// NB This needs to be done as for some reason seam is losing the
Expand Down
Expand Up @@ -10,7 +10,6 @@
import org.jboss.seam.annotations.Name;
import org.jboss.seam.annotations.Scope;
import org.jboss.seam.annotations.Transactional;
import org.jboss.seam.faces.FacesMessages;
import org.zanata.action.validator.NotDuplicateEmail;
import org.zanata.dao.AccountActivationKeyDAO;
import org.zanata.dao.AccountDAO;
Expand All @@ -23,6 +22,7 @@
import org.zanata.security.ZanataCredentials;
import org.zanata.security.ZanataOpenId;
import org.zanata.service.EmailService;
import org.zanata.ui.faces.FacesMessages;

@Name("inactiveAccountAction")
@Scope(ScopeType.PAGE)
Expand All @@ -42,6 +42,9 @@ public class InactiveAccountAction implements Serializable {
@In
private ZanataOpenId zanataOpenId;

@In("jsfMessages")
private FacesMessages facesMessages;

@In
private CredentialsDAO credentialsDAO;

Expand Down Expand Up @@ -78,7 +81,7 @@ public void sendActivationEmail() {
account.getPerson().getName(),
account.getPerson().getEmail(),
account.getAccountActivationKey().getKeyHash());
FacesMessages.instance().add(message);
facesMessages.addGlobal(message);
}

@Transactional
Expand All @@ -91,7 +94,7 @@ public String changeEmail() {
personDAO.flush();

account.getPerson().setEmail(email);
FacesMessages.instance().add("Email updated.");
facesMessages.addGlobal("Email updated.");

sendActivationEmail();
return "home";
Expand All @@ -101,15 +104,15 @@ public String changeEmail() {

private boolean validateEmail(String email) {
if (StringUtils.isEmpty(email)) {
FacesMessages.instance().addToControl("email",
facesMessages.addToControl("email",
"#{msgs['javax.faces.component.UIInput.REQUIRED']}");
return false;
}

HPerson person = personDAO.findByEmail(email);

if (person != null && !person.getAccount().equals(account)) {
FacesMessages.instance().addToControl("email",
facesMessages.addToControl("email",
"This email address is already taken");
return false;
}
Expand Down
18 changes: 11 additions & 7 deletions zanata-war/src/main/java/org/zanata/action/LanguageTeamAction.java
Expand Up @@ -34,8 +34,6 @@
import org.jboss.seam.annotations.Scope;
import org.jboss.seam.annotations.Transactional;
import org.jboss.seam.annotations.security.Restrict;
import org.jboss.seam.faces.FacesMessages;
import org.jboss.seam.international.StatusMessage.Severity;
import org.jboss.seam.security.management.JpaIdentityStore;
import org.zanata.common.LocaleId;
import org.zanata.dao.LocaleDAO;
Expand All @@ -51,8 +49,11 @@
import org.zanata.model.HPerson;
import org.zanata.service.LanguageTeamService;
import org.zanata.service.LocaleService;
import org.zanata.ui.faces.FacesMessages;
import org.zanata.util.Event;

import static javax.faces.application.FacesMessage.SEVERITY_ERROR;

@Name("languageTeamAction")
@Scope(ScopeType.PAGE)
@Slf4j
Expand Down Expand Up @@ -80,6 +81,9 @@ public class LanguageTeamAction implements Serializable {
@In
private Messages msgs;

@In("jsfMessages")
private FacesMessages facesMessages;

@In("event")
private Event<JoinedLanguageTeam> joinLanguageTeamEvent;

Expand Down Expand Up @@ -158,10 +162,10 @@ public void joinTribe() {
joinLanguageTeamEvent.fire(new JoinedLanguageTeam(authenticatedAccount.getUsername(), new LocaleId(language)));
log.info("{} joined tribe {}",
authenticatedAccount.getUsername(), this.language);
FacesMessages.instance().add(msgs.format("jsf.MemberOfTeam",
facesMessages.addGlobal(msgs.format("jsf.MemberOfTeam",
getLocale().retrieveNativeName()));
} catch (Exception e) {
FacesMessages.instance().add(Severity.ERROR, e.getMessage());
facesMessages.addGlobal(SEVERITY_ERROR, e.getMessage());
}
}

Expand All @@ -177,7 +181,7 @@ public void leaveTribe() {
leaveLanguageTeamEvent.fire(new LeftLanguageTeam(authenticatedAccount.getUsername(), new LocaleId(language)));
log.info("{} left tribe {}", authenticatedAccount.getUsername(),
this.language);
FacesMessages.instance().add(msgs.format("jsf.LeftTeam",
facesMessages.addGlobal(msgs.format("jsf.LeftTeam",
getLocale().retrieveNativeName()));
}

Expand Down Expand Up @@ -223,11 +227,11 @@ private void savePermission(HLocaleMember member, String permissionDesc,
this.localeDAO.flush();
HPerson person = member.getPerson();
if (isPermissionGranted) {
FacesMessages.instance().add(
facesMessages.addGlobal(
msgs.format("jsf.AddedAPermission",
person.getAccount().getUsername(), permissionDesc));
} else {
FacesMessages.instance().add(
facesMessages.addGlobal(
msgs.format("jsf.RemovedAPermission",
person.getAccount().getUsername(), permissionDesc));
}
Expand Down
Expand Up @@ -29,13 +29,13 @@
import org.jboss.seam.annotations.Name;
import org.jboss.seam.annotations.Scope;
import org.jboss.seam.annotations.Transactional;
import org.jboss.seam.faces.FacesMessages;
import org.zanata.ApplicationConfiguration;
import org.zanata.i18n.Messages;
import org.zanata.security.AuthenticationType;
import org.zanata.security.ZanataOpenId;
import org.zanata.service.EmailService;
import org.zanata.service.RegisterService;
import org.zanata.ui.faces.FacesMessages;

/**
* This action handles new user profile creation.
Expand All @@ -52,6 +52,10 @@ public class NewProfileAction extends AbstractProfileAction implements Serializa

@In
private EmailService emailServiceImpl;

@In("jsfMessages")
private FacesMessages facesMessages;

@In
Messages msgs;

Expand Down Expand Up @@ -103,7 +107,7 @@ public void createUser() {
String message =
emailServiceImpl.sendActivationEmail(this.name, this.email, key);
identity.unAuthenticate();
FacesMessages.instance().add(message);
facesMessages.addGlobal(message);
}

public void cancel() {
Expand Down

0 comments on commit 8cad539

Please sign in to comment.