EmailPage.java
package org.ferris.tweial.console.email;
import java.util.Set;
import javax.enterprise.event.Observes;
import javax.inject.Inject;
import javax.validation.ConstraintViolation;
import org.apache.log4j.Logger;
import org.ferris.tweial.console.io.Console;
import org.ferris.tweial.console.text.i18n.LocalizedString;
import org.ferris.tweial.console.text.i18n.LocalizedStringKey;
import org.ferris.tweial.console.view.page.AbstractPage;
import org.jboss.weld.experimental.Priority;
/**
* This is the console view for email related information.
*
* @author Michael Remijan mjremijan@yahoo.com @mjremijan
*/
public class EmailPage extends AbstractPage {
@Inject
protected Console console;
@Inject
protected Logger log;
@Inject
@LocalizedStringKey("EmailPage.DataSourceMissing")
protected LocalizedString dataSourceMissing;
@Inject
@LocalizedStringKey("EmailPage.AccountDataMissing")
protected LocalizedString accountDataMissing;
@Inject
@LocalizedStringKey("EmailPage.Heading")
protected LocalizedString heading;
public void viewDataSourceMissing(String description) {
log.info("Email account configuration file is missing");
console.h1(heading);
console.p(dataSourceMissing, description);
}
public void viewEmailAccountMissing(Set<ConstraintViolation<EmailAccount>> violations) {
log.info("Email account data is missing");
console.h1(heading);
console.p(accountDataMissing);
console.print(violations);
}
public void render(
@Observes @Priority(EmailSendPriority.PRINT_EMAIL_MESSAGE)
EmailSendEvent evnt
) {
log.info("Email message:");
log.info(evnt.getMessage());
console.p(new LocalizedString("See log file for email message"));
}
}