1: package cz.cvut.x33eja.macosond.web.back;
2:
3: import cz.cvut.x33eja.macosond.business.music.AbilityLocal;
4: import cz.cvut.x33eja.macosond.persistence.entity.Ability;
5: import java.util.ArrayList;
6: import java.util.List;
7: import javax.ejb.EJB;
8: import javax.faces.model.DataModel;
9: import javax.faces.model.ListDataModel;
10: import javax.faces.model.SelectItem;
11:
12: 13: 14: 15:
16: public class AbilityBack
17: {
18: @EJB
19: private AbilityLocal abilityBean;
20: private Ability ability;
21: private DataModel abilityListModel;
22:
23: public AbilityBack()
24: {
25: super();
26: ability = new Ability();
27: }
28:
29: public AbilityLocal getAbilityBean()
30: {
31: return abilityBean;
32: }
33:
34: public void setAbilityBean(AbilityLocal abilityBean)
35: {
36: this.abilityBean = abilityBean;
37: }
38:
39: public Ability getAbility()
40: {
41: return ability;
42: }
43:
44: public void setAbility(Ability ability)
45: {
46: this.ability = ability;
47: }
48:
49: public List<Ability> getAbilityList()
50: {
51: return new ArrayList<Ability>(abilityBean.getAll());
52: }
53:
54: public DataModel getAbilityListModel()
55: {
56: abilityListModel = new ListDataModel(getAbilityList());
57: return abilityListModel;
58: }
59:
60: public void setAbilityListModel(DataModel abilityListModel)
61: {
62: this.abilityListModel = abilityListModel;
63: }
64:
65: public DataModel getAbilityListSelectItemModel()
66: {
67: List<Ability> abilities = getAbilityList();
68: ArrayList<SelectItem> output = new ArrayList<SelectItem>();
69: for (Ability a : abilities) {
70: output.add(new SelectItem(a, a.getName()));
71: }
72: return new ListDataModel(output);
73: }
74:
75: 76: 77:
78:
79: public String add()
80: {
81: abilityBean.add(ability);
82: return "list";
83: }
84:
85: public String edit()
86: {
87: ability = (Ability) abilityListModel.getRowData();
88: return "edit";
89: }
90:
91: public String saveChanges()
92: {
93: abilityBean.edit(ability);
94: return "list";
95: }
96:
97: public String delete()
98: {
99: abilityBean.delete((Ability) abilityListModel.getRowData());
100: return "list";
101: }
102:
103: }
104: