UserMB.java 2.25 KB
package fi.insomnia.intra.web;

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.LoggerFactory;

import fi.insomnia.intra.db.User;
import fi.insomnia.intra.utilbeans.UserDaoBeanLocal;

@ManagedBean(name = "user")
@SessionScoped
public class UserMB {
    @EJB
    private UserDaoBeanLocal userBean;
    private String search;
    private PagingStatus status;
    private org.slf4j.Logger logger = LoggerFactory.getLogger(UserMB.class);
    private ListDataModel<User> items;
    private User item;

    public ListDataModel<User> getItems() {
	if (items == null) {
	    if (status == null) {
		status = new PagingStatus(20);
	    }
	    List<User> list = null;
	    if (search == null || search.isEmpty()) {
		list = userBean.getItems(status);
	    } else {
		list = userBean.getSearchItems(search, status);
	    }

	    setItems(new ListDataModel<User>(list));
	    // results = userBean.searchUser(search);
	}
	return items;
    }

    public String getDetail() {
	setItem(items.getRowData());
	return "detail";
    }

    public String nextpage() {
	items = null;
	status.next();
	return "userlist";
    }

    public String prevpage() {
	items = null;
	status.prev();
	return "userlist";
    }

    public String getBeanMessage() {

	userBean.indexDatabase();
	return "FOobar123123";
    }

    public void setStatus(PagingStatus status) {
	this.status = status;
    }

    public PagingStatus getStatus() {
	if (status == null) {
	    getItems();
	}
	return status;
    }

    public void setItems(ListDataModel<User> items) {
	this.items = items;
    }

    public void setItem(User item) {
	this.item = item;
    }

    public User getItem() {
	return item;
    }

    public void setSearch(String search) {
	if (search == null) {
	    return;
	}
	search = search.trim();
	if (this.search == null || !this.search.equals(search)) {
	    items = null;
	    status = null;
	}
	this.search = search;
    }

    public String getSearch() {
	return search;
    }

    public String reloadUser() {
	item = userBean.get(item.getId());
	return "detail";
    }

    public String back() {
	item = null;
	status = null;
	items = null;
	search = null;
	return "userlist";
    }

}