UserView.java 1.89 KB
package fi.insomnia.bortal.view;

import java.util.List;

import javax.ejb.EJB;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import javax.faces.model.ListDataModel;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import fi.insomnia.bortal.UserBeanLocal;
import fi.insomnia.bortal.model.User;

@ManagedBean(name = "userView")
@SessionScoped
public class UserView {

    @EJB
    private UserBeanLocal userBean;

    private static final Logger logger = LoggerFactory.getLogger(UserView.class);

    private User user;

    private ListDataModel<User> items;

    private String nick;

    private String password;

    public String edit() {
	setUser(items.getRowData());
	return "edit";
    }

    public String createUser() {
	logger.info("Saving user");
	// Luodaan uusi kÔøΩyttÔøΩjÔøΩ UserBeanin funktiolla createNewUser jolle
	// annetaan parametrina pakolliset tiedot ( nick ja salasana )
	// Paluuarvona saadaan uusi uljas kÔøΩyttÔøΩjÔøΩ-olio.
	setUser(userBean.createNewUser(nick, password));
	nick = "";
	password = "";
	if (getUser() == null) {
	    logger.warn("Could not create user. function returned null!");
	    return "fault";
	}

	return "edit";
    }

    public String saveUser() {
	userBean.mergeChanges(getUser());
	return "edit";
    }

    public ListDataModel<User> getUsers() {
	List<User> users = userBean.getUsers();
	items = new ListDataModel<User>(users);
	logger.info("Fetching users. Found {}", items.getRowCount());
	return items;
    }

    // Getters and setters...

    public String getNick() {
	return nick;
	
    }

    public void setNick(String nick) {
	this.nick = nick;
    }

    public String getPassword() {
	return password;
    }

    public void setPassword(String password) {
	this.password = password;
    }

    public void setUser(User user) {
	this.user = user;
    }

    public User getUser() {
	return user;
    }

}