Project Facade Source Code 
Syntax
/**
*
*/
package com.sap.nwce.ra.sedm.ejb.service;
import java.util.List;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.NamedQuery;
import javax.persistence.PersistenceContext;
import javax.persistence.Query;
import com.sap.nwce.ra.sedm.ejb.entity.Employee;
import com.sap.nwce.ra.sedm.ejb.entity.Project;
/**
* @author I030736
*
*/
@Stateless
public class ProjectFacadeBean implements ProjectFacadeLocal {
@PersistenceContext(unitName = "ems/EJB3_simpl_EDM_DEMO_PU")
protected EntityManager em;
public List<Project> findProjects(String nameDescrPtrn){
Query q = ("".equals(nameDescrPtrn)) ?
em.createNamedQuery( "Project.getAll" ) :
em.createNamedQuery( "Project.findByNameOrDescPart" ) ;
if ( ! "".equals(nameDescrPtrn)){
q.setParameter("namepart", "%" + nameDescrPtrn + "%");
q.setParameter("namepart1", "%" + nameDescrPtrn + "%");
}
return q.getResultList();
}
public List<Employee> findEmployees(String nameDescrPtrn){
Query q = ("".equals(nameDescrPtrn)) ?
em.createNamedQuery( "Employee.getAll" ) :
em.createNamedQuery( "Employee.findByNamePart" ) ;
if ( ! "".equals(nameDescrPtrn)){
q.setParameter("namepart", "%" + nameDescrPtrn + "%");
q.setParameter("namepart1", "%" + nameDescrPtrn + "%");
}
return q.getResultList();
}
public void saveProject(Project proj){
em.merge(proj);
}
public void saveEmployee(Employee empl){
em.merge(empl);
}
public Project getProjectById(int id){
Query q = em.createNamedQuery( "Project.getByProjectID" );
q.setParameter("prjId", id);
return (Project) q.getSingleResult();
}
public Employee getEmployeeById(int id){
Query q = em.createNamedQuery( "Employee.getById" );
q.setParameter("id", id);
return (Employee) q.getSingleResult();
}
}