diff options
Diffstat (limited to 'src/beans/CategoryManager.java')
| -rw-r--r-- | src/beans/CategoryManager.java | 187 |
1 files changed, 134 insertions, 53 deletions
diff --git a/src/beans/CategoryManager.java b/src/beans/CategoryManager.java index 005b399..cfa8bba 100644 --- a/src/beans/CategoryManager.java +++ b/src/beans/CategoryManager.java @@ -24,66 +24,147 @@ import jpa.EntityManagerFactorySingleton; @ManagedBean(name = "CategoryManager") @SessionScoped -public class CategoryManager -{ - private Category current; +public class CategoryManager { + private Category current; - public Category getCurrent() - { - return current; - } + public Category getCurrent() { + return current; + } - public void setCurrent(Category current) - { - this.current = current; - } + public void setCurrent(Category current) { + this.current = current; + } - public Collection getCategories() - { - EntityManager manager = EntityManagerFactorySingleton.getInstance() - .getEntityManagerFactory().createEntityManager(); + public Collection getCategories() { + EntityManager manager = EntityManagerFactorySingleton.getInstance().getEntityManagerFactory() + .createEntityManager(); - Collection categories = manager.createQuery("SELECT c FROM Category c ") - .getResultList(); - manager.close(); + Collection categories = manager.createQuery("SELECT c FROM Category c ").getResultList(); + manager.close(); - return categories; - } + return categories; + } - public void select(javax.faces.event.ActionEvent actionEvent) - { - FacesContext facesContext = FacesContext.getCurrentInstance(); - Map params = facesContext.getExternalContext().getRequestParameterMap(); - Integer selectedId = Integer.valueOf((String) params.get("selectedId")); - // System.out.println(selectedId); + public void select(javax.faces.event.ActionEvent actionEvent) { + FacesContext facesContext = FacesContext.getCurrentInstance(); + Map params = facesContext.getExternalContext().getRequestParameterMap(); + Integer selectedId = Integer.valueOf((String) params.get("selectedId")); + // System.out.println(selectedId); - EntityManager manager = EntityManagerFactorySingleton.getInstance() - .getEntityManagerFactory().createEntityManager(); + EntityManager manager = EntityManagerFactorySingleton.getInstance().getEntityManagerFactory() + .createEntityManager(); - EntityTransaction tx = manager.getTransaction(); - tx.begin(); - try - { - current = manager.find(Category.class, selectedId); - // System.out.println(current.getName()); - tx.commit(); - } - catch (Exception ex) - { - ex.printStackTrace(System.err); - tx.rollback(); - } + EntityTransaction tx = manager.getTransaction(); + tx.begin(); + try { + current = manager.find(Category.class, selectedId); + // System.out.println(current.getName()); + tx.commit(); + } catch (Exception ex) { + ex.printStackTrace(System.err); + tx.rollback(); + } - FacesContext context = FacesContext.getCurrentInstance(); - try - { - context.getExternalContext().redirect("products.jsf"); - } - catch (IOException e) - { - e.printStackTrace(); - } - context.responseComplete(); - manager.close(); - } + FacesContext context = FacesContext.getCurrentInstance(); + try { + context.getExternalContext().redirect("products.jsf"); + } catch (IOException e) { + e.printStackTrace(); + } + context.responseComplete(); + manager.close(); + } + + public void edit(javax.faces.event.ActionEvent actionEvent) { + FacesContext context = FacesContext.getCurrentInstance(); + Map<String, String> params = context.getExternalContext().getRequestParameterMap(); + Integer selectedId = Integer.valueOf((String) params.get("selectedId")); + // System.out.println(selectedId); + + EntityManager manager = EntityManagerFactorySingleton.getInstance().getEntityManagerFactory() + .createEntityManager(); + + EntityTransaction tx = manager.getTransaction(); + tx.begin(); + try { + current = manager.find(Category.class, selectedId); + // System.out.println(current.getName()); + tx.commit(); + } catch (Exception ex) { + ex.printStackTrace(System.err); + tx.rollback(); + } + + try { + context.getExternalContext().redirect("category.jsf"); + } catch (IOException e) { + e.printStackTrace(); + } + context.responseComplete(); + } + + public void deleteCurrentCategory(javax.faces.event.ActionEvent actionEvent) { + FacesContext context = FacesContext.getCurrentInstance(); + + EntityManager manager = EntityManagerFactorySingleton.getInstance().getEntityManagerFactory() + .createEntityManager(); + EntityTransaction tx = manager.getTransaction(); + tx.begin(); + try { + current = manager.find(Category.class, current.getId()); + manager.remove(current); + current = null; + + tx.commit(); + } catch (Exception ex) { + ex.printStackTrace(System.err); + if (tx.isActive()) + tx.rollback(); + } + + try { + context.getExternalContext().redirect("categories.jsf"); + } catch (IOException e) { + e.printStackTrace(); + } + context.responseComplete(); + } + + public void createCategory() { + current = new Category(); + + FacesContext context = FacesContext.getCurrentInstance(); + + try { + context.getExternalContext().redirect("category.jsf"); + } catch (IOException e) { + e.printStackTrace(); + } + context.responseComplete(); + } + + public void saveCategory() { + EntityManager manager = EntityManagerFactorySingleton.getInstance().getEntityManagerFactory() + .createEntityManager(); + + EntityTransaction tx = manager.getTransaction(); + try { + tx.begin(); + current = manager.merge(current); + + tx.commit(); + } catch (Exception ex) { + ex.printStackTrace(System.err); + tx.rollback(); + } + + FacesContext context = FacesContext.getCurrentInstance(); + + try { + context.getExternalContext().redirect("categories.jsf"); + } catch (IOException e) { + e.printStackTrace(); + } + context.responseComplete(); + } } |
