import java.text.MessageFormat;
import java.util.List;
import javax.ejb.Stateless;
-import javax.persistence.NoResultException;
import javax.persistence.Query;
-import org.mxchange.jcontactsbusiness.exceptions.employee.CompanyEmployeeNotFoundException;
import org.mxchange.addressbook.database.BaseAddressbookDatabaseBean;
/**
* @author Roland Häder<roland@mxchange.org>
*/
@Stateless (name = "employee", description = "A general statless bean for handling company employees")
-public class AddressbookCompanyEmployeeSessionBean extends BaseAddressbookDatabaseBean implements CompanyEmployeeSessionBeanRemote {
+public class AddressbookEmployeeSessionBean extends BaseAddressbookDatabaseBean implements EmployeeSessionBeanRemote {
/**
* Serial number
/**
* Default constructor
*/
- public AddressbookCompanyEmployeeSessionBean () {
+ public AddressbookEmployeeSessionBean () {
super();
}
@Override
@SuppressWarnings ("unchecked")
- public List<Employee> allCompanyEmployees () {
+ public List<Employable> allEmployees () {
// Trace message
- this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.allCompanyEmployees(): CALLED!", this.getClass().getSimpleName())); //NOI18N
+ this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.allEmployees(): CALLED!", this.getClass().getSimpleName())); //NOI18N
// Get named query
final Query query = this.getEntityManager().createNamedQuery("AllCompanyEmployees"); //NOI18N
// Get list form it
- final List<Employee> employees = query.getResultList();
+ final List<Employable> employees = query.getResultList();
// Trace message
- this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.allCompanyEmployees(): employees.size()={1} - EXIT!", this.getClass().getSimpleName(), employees.size())); //NOI18N
+ this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.allEmployees(): employees.size()={1} - EXIT!", this.getClass().getSimpleName(), employees.size())); //NOI18N
// Return it
return employees;
}
- @Override
- public Employee findCompanyEmployeeById (final Long employeeId) throws CompanyEmployeeNotFoundException {
- // Trace message
- this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.findCompanyEmployeeById(): employeeId={1} - CALLED!", this.getClass().getSimpleName(), employeeId)); //NOI18N
-
- // Is the employee id valid?
- if (null == employeeId) {
- // Throw NPE
- throw new NullPointerException("employeeId is null"); //NOI18N
- } else if (employeeId < 1) {
- // Not valid
- throw new IllegalArgumentException(MessageFormat.format("employeeId={0} is not valid", employeeId)); //NOI18N
- }
-
- // Now get named query
- final Query query = this.getEntityManager().createNamedQuery("SearchCompanyEmployeeById"); //NOI18N
-
- // Set parameter
- query.setParameter("employeeId", employeeId); //NOI18N
-
- // Declare instance
- final Employee employee;
-
- // Try to find a result
- try {
- // Find a single result
- employee = (Employee) query.getSingleResult();
-
- // Log trace message
- this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.findCompanyEmployeeById: Found employee={1}", this.getClass().getSimpleName(), employee)); //NOI18N
- } catch (final NoResultException ex) {
- // No result found
- throw new CompanyEmployeeNotFoundException(employeeId, ex);
- }
-
- // Log trace message
- this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.findCompanyEmployeeById: employee={1} - EXIT!", this.getClass().getSimpleName(), employee)); //NOI18N
-
- // Return found instance
- return employee;
- }
-
}