1 package org.kuali.kpme.edo.checklist;
2
3 import org.kuali.kpme.edo.api.checklist.EdoChecklistItem;
4 import org.kuali.kpme.edo.api.checklist.EdoChecklistItemContract;
5 import org.kuali.rice.core.api.mo.ModelObjectUtils;
6 import org.kuali.rice.krad.bo.PersistableBusinessObjectBase;
7
8 import com.google.common.collect.ImmutableList;
9 import com.google.common.collect.ImmutableMap;
10
11
12
13
14
15
16
17
18
19 public class EdoChecklistItemBo extends PersistableBusinessObjectBase implements EdoChecklistItemContract {
20
21 private static final long serialVersionUID = -3737008004782110416L;
22
23 static class KeyFields {
24 private static final String EDO_CHECKLIST_SECTION_ID = "edoChecklistSectionId";
25 private static final String EDO_CHECKLIST_ITEM_NAME = "checklistItemName";
26 }
27
28 private String edoChecklistItemId;
29 private String edoChecklistSectionId;
30 private String checklistItemName;
31 private String itemDescription;
32 private boolean required;
33 private int checklistItemOrdinal;
34
35 public static final ImmutableList<String> BUSINESS_KEYS = new ImmutableList.Builder<String>()
36 .add(KeyFields.EDO_CHECKLIST_SECTION_ID)
37 .add(KeyFields.EDO_CHECKLIST_ITEM_NAME)
38 .build();
39
40 public String getId() {
41 return getEdoChecklistItemId();
42 }
43
44 public void setId(String edoChecklistItemId) {
45 setEdoChecklistItemId(edoChecklistItemId);
46 }
47
48 public ImmutableMap<String, Object> getBusinessKeyValuesMap() {
49 return new ImmutableMap.Builder<String, Object>()
50 .put(KeyFields.EDO_CHECKLIST_SECTION_ID, this.getEdoChecklistSectionId())
51 .put(KeyFields.EDO_CHECKLIST_ITEM_NAME, this.getChecklistItemName())
52 .build();
53 }
54
55 public String getEdoChecklistItemId() {
56 return edoChecklistItemId;
57 }
58
59 public void setEdoChecklistItemId(String edoChecklistItemId) {
60 this.edoChecklistItemId = edoChecklistItemId;
61 }
62
63 public String getEdoChecklistSectionId() {
64 return edoChecklistSectionId;
65 }
66
67 public void setEdoChecklistSectionId(String edoChecklistSectionId) {
68 this.edoChecklistSectionId = edoChecklistSectionId;
69 }
70
71 public String getChecklistItemName() {
72 return checklistItemName;
73 }
74
75 public void setChecklistItemName(String checklistItemName) {
76 this.checklistItemName = checklistItemName;
77 }
78
79 public String getItemDescription() {
80 return itemDescription;
81 }
82
83 public void setItemDescription(String itemDescription) {
84 this.itemDescription = itemDescription;
85 }
86
87 public boolean isRequired() {
88 return required;
89 }
90
91 public void setRequired(boolean required) {
92 this.required = required;
93 }
94
95 public int getChecklistItemOrdinal() {
96 return checklistItemOrdinal;
97 }
98
99 public void setChecklistItemOrdinal(int checklistItemOrdinal) {
100 this.checklistItemOrdinal = checklistItemOrdinal;
101 }
102
103 public static EdoChecklistItemBo from(EdoChecklistItem im) {
104 if (im == null) {
105 return null;
106 }
107 EdoChecklistItemBo ecli = new EdoChecklistItemBo();
108 ecli.setEdoChecklistItemId(im.getEdoChecklistItemId());
109 ecli.setEdoChecklistSectionId(im.getEdoChecklistSectionId());
110 ecli.setChecklistItemName(im.getChecklistItemName());
111 ecli.setItemDescription(im.getItemDescription());
112 ecli.setChecklistItemOrdinal(im.getChecklistItemOrdinal());
113 ecli.setVersionNumber(im.getVersionNumber());
114 ecli.setObjectId(im.getObjectId());
115 return ecli;
116 }
117
118 public static EdoChecklistItem to(EdoChecklistItemBo bo) {
119 if (bo == null) {
120 return null;
121 }
122 return EdoChecklistItem.Builder.create(bo).build();
123 }
124
125 public static final ModelObjectUtils.Transformer<EdoChecklistItemBo, EdoChecklistItem> toImmutable = new ModelObjectUtils.Transformer<EdoChecklistItemBo, EdoChecklistItem>() {
126 public EdoChecklistItem transform(EdoChecklistItemBo input) {
127 return EdoChecklistItemBo.to(input);
128 };
129 };
130
131 public static final ModelObjectUtils.Transformer<EdoChecklistItem, EdoChecklistItemBo> toBo = new ModelObjectUtils.Transformer<EdoChecklistItem, EdoChecklistItemBo>() {
132 public EdoChecklistItemBo transform(EdoChecklistItem input) {
133 return EdoChecklistItemBo.from(input);
134 };
135 };
136 }