GenericEntityController.java 840 Bytes
package fi.insomnia.intra.web;

import java.util.List;

import javax.ejb.EJB;

import fi.insomnia.intra.dao.IPagingStatus;
import fi.insomnia.intra.db.BaseEntity;
import fi.insomnia.intra.utilbeans.GenericItemDAOBean;
import fi.insomnia.intra.utilbeans.UserPropertiesBeanLocal;

public abstract class GenericEntityController<T extends BaseEntity> {

    @EJB
    private UserPropertiesBeanLocal propertiesbean;
    private List<T> items;

    protected abstract GenericItemDAOBean<T> getItemBean();

    public GenericEntityController() {

    }

    public List<T> getItems() {
	if (items == null) {
	    items = getItemBean().getItems(getPagingStatus());
	}
	return items;
    }

    protected abstract IPagingStatus getPagingStatus();

   
    public UserPropertiesBeanLocal getPropertiesbean() {
	return propertiesbean;
    }

   

 
}