001/**
002 * Copyright 2005-2017 The Kuali Foundation
003 *
004 * Licensed under the Educational Community License, Version 2.0 (the "License");
005 * you may not use this file except in compliance with the License.
006 * You may obtain a copy of the License at
007 *
008 * http://www.opensource.org/licenses/ecl2.php
009 *
010 * Unless required by applicable law or agreed to in writing, software
011 * distributed under the License is distributed on an "AS IS" BASIS,
012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
013 * See the License for the specific language governing permissions and
014 * limitations under the License.
015 */
016package org.kuali.rice.krad.demo.uif.form;
017
018import java.io.Serializable;
019import java.security.GeneralSecurityException;
020import java.util.ArrayList;
021import java.util.Arrays;
022import java.util.Collections;
023import java.util.List;
024
025import edu.sampleu.travel.dataobject.TravelAuthorizationDocument;
026import edu.sampleu.travel.dataobject.TravelDestination;
027
028import org.apache.commons.lang.StringUtils;
029import org.kuali.rice.core.api.CoreApiServiceLocator;
030import org.kuali.rice.core.api.criteria.QueryByCriteria;
031import org.kuali.rice.core.api.encryption.EncryptionService;
032import org.kuali.rice.core.api.util.tree.Node;
033import org.kuali.rice.core.api.util.tree.Tree;
034import org.kuali.rice.kew.api.document.search.DocumentSearchCriteria;
035import org.kuali.rice.kew.api.document.search.DocumentSearchResult;
036import org.kuali.rice.kew.api.exception.WorkflowException;
037import org.kuali.rice.kew.docsearch.service.DocumentSearchService;
038import org.kuali.rice.kim.api.identity.Person;
039import org.kuali.rice.kim.api.services.KimApiServiceLocator;
040import org.kuali.rice.krad.demo.travel.dataobject.TravelAccount;
041import org.kuali.rice.krad.document.Document;
042import org.kuali.rice.krad.file.FileMetaBlob;
043import org.kuali.rice.krad.service.KRADServiceLocator;
044import org.kuali.rice.krad.service.KRADServiceLocatorWeb;
045import org.kuali.rice.krad.web.bind.RequestAccessible;
046import org.kuali.rice.krad.web.form.UifFormBase;
047
048/**
049 * Basic form for the KRAD sample application
050 *
051 * @author Kuali Rice Team (rice.collab@kuali.org)
052 */
053public class KradSampleAppForm extends UifFormBase implements Serializable {
054    private static final long serialVersionUID = -7525378097732916418L;
055    private String themeName;
056    private String exampleShown;
057    private String currentExampleIndex;
058
059    //Fields separated by demonstration type below:
060
061    //InputField
062
063    // RequestAccessible is needed on inputField1 for a breadcrumbs demo
064    @RequestAccessible
065    private String inputField1;
066    private String inputField2;
067    private String inputField3;
068    private String inputField4;
069    private String inputField5;
070    private String inputField6;
071    private String inputField7;
072    private String inputField8;
073    private String inputField9;
074    private String inputField10;
075    private String inputField11;
076    private String inputField12;
077    private String inputField13;
078    private String inputField14;
079    private String inputField15;
080    private String inputField16;
081    private String inputField17;
082    private String inputField18;
083    private String inputField19;
084    private String inputField20;
085    private String inputField21;
086    private String inputField22;
087    private String inputField23;
088    private String inputField24;
089    private String inputField25;
090    private String inputField26;
091    private String inputField27;
092    private String inputField28;
093    private String inputField29;
094    private String inputField30;
095
096    private boolean booleanField1 = false;
097    private boolean booleanField2 = false;
098    private boolean booleanField3 = false;
099
100    private List<String> checkboxesField1;
101    private List<String> checkboxesField2;
102    private List<String> checkboxesField3;
103    private List<String> checkboxesField4;
104    private List<String> checkboxesField5;
105
106    private List<String> multiSelectField1;
107
108    private String testPersonId;
109    private Person testPerson;
110
111    private String testGroupId;
112
113    private String testPrincipalId1 = "eric";
114    private String testPrincipalId2 = "erin";
115    private String testPrincipalId3= "test1";
116    private String testPrincipalId4= "edna";
117    private String testPrincipalName1 = "eric";
118    private String testPrincipalName2 = "erin";
119    private String testPrincipalName3 = "test1";
120    private String testPrincipalName4 = "edna";
121
122    private String testGroupId1 = "2005";
123    private String testGroupId2 = "2001";
124    private String testGroupId3 = "2000";
125    private String testGroupId4 = "2005";
126    private String testGroupId5 = "2005";
127    private String testGroupNamespaceCode1 = "KUALI";
128    private String testGroupNamespaceCode2 = "KUALI";
129    private String testGroupNamespaceCode3 = "KR-WKFLW";
130    private String testGroupNamespaceCode4 = "KUALI";
131    private String testGroupNamespaceCode5 = "KUALI";
132    private String testGroupName1 = "Group1";
133    private String testGroupName2 = "TestGroup1";
134    private String testGroupName3 = "NotificationAdmin";
135    private String testGroupName4 = "Group1";
136    private String testGroupName5 = "Group1";
137
138    private String testRoleId1 = "KRSAP10005";
139    private String testRoleId2 = "KR1000";
140    private String testRoleId3 = "67";
141    private String testRoleId4 = "KR1000";
142    private String testRoleId5 = "KR1000";
143    private String testRoleNamespaceCode1 = "KR-SAP";
144    private String testRoleNamespaceCode2 = "KUALI";
145    private String testRoleNamespaceCode3 = "KR-WKFLW";
146    private String testRoleNamespaceCode4 = "KUALI";
147    private String testRoleNamespaceCode5 = "KUALI";
148    private String testRoleName1 = "Travel Approver";
149    private String testRoleName2 = "GuestRole";
150    private String testRoleName3 = "Router";
151    private String testRoleName4 = "GuestRole";
152    private String testRoleName5 = "GuestRole";
153
154    private UITestObject uiTestObject1;
155    private UITestObject uiTestObject2;
156
157    //DataField
158    private String dataField1 = "1001";
159    private String dataField2;
160    private String dataField3 = "My Inline Book Title";
161    private String dataField4;
162    private String dataField5 = "Book Title";
163    private String dataField6 = "My Book Title";
164    private String dataField7 = "Option 3";
165    private String dataField8 = "My Second Book Title";
166    private String dataField9 = "Book Author";
167    private String dataField10 = "Book Category";
168    private String dataField11 = "My Third Book Title";
169    private String dataField12 = "A Book Title";
170
171    //MessageField
172    private String messageField1;
173    private String richMessageField = "[color=green][b]Message[/b][/color]";
174
175    // Collections
176    private List<UITestObject> collection1 = new ArrayList<UITestObject>();
177    private List<UITestObject> collection1_2 = new ArrayList<UITestObject>();
178    private List<UITestObject> collection1_3 = new ArrayList<UITestObject>();
179    private List<UITestObject> collection1_4 = new ArrayList<UITestObject>();
180    private List<UITestObject> collection1_5 = new ArrayList<UITestObject>();
181    private List<UITestObject> collection1_6 = new ArrayList<UITestObject>();
182    private List<UITestObject> collection1_7 = new ArrayList<UITestObject>();
183    private List<UITestObject> collection1_8 = new ArrayList<UITestObject>();
184    private List<UITestObject> collection1_9 = new ArrayList<UITestObject>();
185    private List<UITestObject> collection1_10 = new ArrayList<UITestObject>();
186    private List<UITestObject> collection2 = new ArrayList<UITestObject>();
187    private List<UITestObject> collection3 = new ArrayList<UITestObject>();
188    private List<UITestObject> collection4 = new ArrayList<UITestObject>();
189    private List<UITestObject> collection5 = new ArrayList<UITestObject>();
190    private List<UITestObject> collection6 = new ArrayList<UITestObject>();
191    private List<UITestObject> collection7 = new ArrayList<UITestObject>();
192
193    private List<UIInactivatableTestObject> inactivatableCollection = new ArrayList<UIInactivatableTestObject>();
194
195    private List<UITestObject> groupedCollection1 = new ArrayList<UITestObject>();
196    private List<UITestObject> groupedCollection2 = new ArrayList<UITestObject>();
197    private List<UITestObject> groupedCollection3 = new ArrayList<UITestObject>();
198    private List<UITestObject> doubleGroupedCollection = new ArrayList<UITestObject>();
199
200    private List<UITestObject> emptyCollection = new ArrayList<UITestObject>();
201    private List<UITestObject> emptyCollection1 = new ArrayList<UITestObject>();
202    private List<UITestObject> emptyCollection2 = new ArrayList<UITestObject>();
203
204    private List<UITestObject> names = new ArrayList<UITestObject>();
205
206    private Tree<String, String> tree1 = new Tree<String, String>();
207    private Tree<UITestObject, String> tree2 = new Tree<UITestObject, String>();
208
209    private List<UITestObject> subList = new ArrayList<UITestObject>();
210
211    private String fakeTotal = "123(server value)";
212
213    // ProgressBar
214    private String barStep = "4";
215    private int barPercent = 40;
216
217    //preset fields
218    private List<String> optionListSelection = Arrays.asList("2", "4");
219
220    private String codeSample = ""
221            + "        if ((testPerson == null) || !StringUtils.equals(testPerson.getPrincipalId(), getTestPersonId())) {\n"
222            + "            testPerson = KimApiServiceLocator.getPersonService().getPerson(getTestPersonId());\n"
223            + "\n"
224            + "            if (testPerson == null) {\n"
225            + "                try {\n"
226            + "                    testPerson = KimApiServiceLocator.getPersonService().getPersonImplementationClass().newInstance();\n"
227            + "                } catch (Exception e) {\n"
228            + "                    throw new RuntimeException(e);\n"
229            + "                }\n"
230            + "            }\n"
231            + "        }";
232
233    private String documentNumber;
234
235    private String travelAccountAttributeName;
236
237    private List<TravelAccount> travelAccounts = new ArrayList<TravelAccount>();
238
239    private List<FileMetaBlob> files = new ArrayList<FileMetaBlob>();
240    private List<FileMetaBlob> files1 = new ArrayList<FileMetaBlob>();
241    private List<FileMetaBlob> files2 = new ArrayList<FileMetaBlob>();
242    private List<FileMetaBlob> files3 = new ArrayList<FileMetaBlob>();
243
244    public KradSampleAppForm() {
245        super();
246
247        // added to test multiselect control
248        this.multiSelectField1 = new ArrayList();
249        this.multiSelectField1.add("2");
250        this.multiSelectField1.add("4");
251
252        uiTestObject1 = new UITestObject("Foo", "FooBar", "FooBear", "FooRacket");
253        uiTestObject2 = new UITestObject("Foo2", "FooBar2", "FooBear2", "FooRacket2");
254        // add some sub objects
255        List<UITestObject> sl = new ArrayList<>();
256        for (int x = 0; x<3; ++x) {
257            sl.add(new UITestObject("sl1_f1_" + x, "sl1_f2_" + x, "sl1_f3_" + x, "sl1_f4_" + x));
258        }
259        uiTestObject1.setSubList(sl);
260        sl = new ArrayList<>();
261        for (int x = 0; x<3; ++x) {
262            sl.add(new UITestObject("sl2_f1_" + x, "sl2_f2_" + x, "sl2_f3_" + x, "sl2_f4_" + x));
263        }
264        uiTestObject2.setSubList(sl);
265
266        messageField1 = "fruits";
267
268        getCollection1().add(new UITestObject("13", "14", "15", "16", "17", "18"));
269        getCollection1().add(new UITestObject("19", "20", "21", "22", "23", "24"));
270        getCollection1().add(new UITestObject("7", "8", "9", "10", "11", "12"));
271        getCollection1().add(new UITestObject("1", "2", "3", "4", "5", "6"));
272        getCollection1().add(new UITestObject("13", "14", "15", "16", "17", "18"));
273        getCollection1().add(new UITestObject("19", "20", "21", "22", "23", "24"));
274        getCollection1().add(new UITestObject("213", "143", "151", "126", "137", "164"));
275        getCollection1().add(new UITestObject("133", "144", "155", "166", "177", "188"));
276        getCollection1().add(new UITestObject("25", "14", "15", "15", "17", "17"));
277        getCollection1().add(new UITestObject("1", "5", "5", "4", "6", "6"));
278        getCollection1().add(new UITestObject("5", "5", "5", "5", "5", "5"));
279        getCollection1().add(new UITestObject("5", "7", "3", "1", "9", "11"));
280        getCollection1().add(new UITestObject("13", "14", "15", "16", "17", "18"));
281        getCollection1().add(new UITestObject("19", "20", "21", "22", "23", "24"));
282        getCollection1().add(new UITestObject("7", "8", "9", "10", "11", "12"));
283        getCollection1().add(new UITestObject("1", "2", "3", "4", "5", "6"));
284        getCollection1().add(new UITestObject("13", "14", "15", "16", "17", "18"));
285        getCollection1().add(new UITestObject("19", "20", "21", "22", "23", "24"));
286        getCollection1().add(new UITestObject("213", "143", "151", "126", "137", "164"));
287        getCollection1().add(new UITestObject("133", "144", "155", "166", "177", "188"));
288        getCollection1().add(new UITestObject("25", "14", "15", "15", "17", "17"));
289        getCollection1().add(new UITestObject("1", "5", "5", "4", "6", "6"));
290        getCollection1().add(new UITestObject("5", "5", "5", "5", "5", "5"));
291        getCollection1().add(new UITestObject("5", "7", "3", "1", "9", "11"));
292        getCollection1().add(new UITestObject("13", "14", "15", "16", "17", "18"));
293        getCollection1().add(new UITestObject("19", "20", "21", "22", "23", "24"));
294        getCollection1().add(new UITestObject("7", "8", "9", "10", "11", "12"));
295        getCollection1().add(new UITestObject("1", "2", "3", "4", "5", "6"));
296        getCollection1().add(new UITestObject("13", "14", "15", "16", "17", "18"));
297        getCollection1().add(new UITestObject("19", "20", "21", "22", "23", "24"));
298        getCollection1().add(new UITestObject("213", "143", "151", "126", "137", "164"));
299        getCollection1().add(new UITestObject("133", "144", "155", "166", "177", "188"));
300        getCollection1().add(new UITestObject("25", "14", "15", "15", "17", "17"));
301        getCollection1().add(new UITestObject("1", "5", "5", "4", "6", "6"));
302        getCollection1().add(new UITestObject("5", "5", "5", "5", "5", "5"));
303        getCollection1().add(new UITestObject("5", "7", "3", "1", "9", "11"));
304
305        // populate checkboxesField5 to test bindToForm
306        this.checkboxesField5 = new ArrayList<>();
307        for (UITestObject to : this.getCollection1()) {
308            this.checkboxesField5.add("check" + to.getField3());
309        }
310
311        collection1_2.addAll(collection1);
312        collection1_3.addAll(collection1);
313        collection1_4.addAll(collection1);
314        collection1_5.addAll(collection1);
315        collection1_6.addAll(collection1);
316        collection1_7.addAll(collection1);
317        collection1_8.addAll(collection1);
318        collection1_9.addAll(collection1);
319        collection1_10.addAll(collection1);
320
321        getCollection2().add(new UITestObject("A", "B", "C", "D"));
322        getCollection2().add(new UITestObject("1", "2", "3", "4"));
323        getCollection2().add(new UITestObject("W", "X", "Y", "Z"));
324        collection2.add(new UITestObject("a", "b", "c", "d"));
325        collection2.add(new UITestObject("a", "s", "d", "f"));
326
327        collection3.add(new UITestObject("A", "B", "C", "D"));
328        collection3.get(0).getSubList().add(new UITestObject("A", "B", "C", "D"));
329        collection3.get(0).getSubList().add(new UITestObject("1", "2", "3", "4"));
330        collection3.get(0).getSubList().add(new UITestObject("W", "X", "Y", "Z"));
331        collection3.add(new UITestObject("1", "2", "3", "4"));
332        collection3.get(1).getSubList().add(new UITestObject("A", "B", "C", "D"));
333        collection3.get(1).getSubList().add(new UITestObject("1", "2", "3", "4"));
334        collection3.add(new UITestObject("W", "X", "Y", "Z"));
335        collection3.get(2).getSubList().add(new UITestObject("W", "X", "Y", "Z"));
336
337        collection4.add(new UITestObject("A", "B", "C", "D"));
338        collection4.get(0).getSubList().add(new UITestObject("A", "B", "C", "D"));
339        collection4.get(0).getSubList().add(new UITestObject("1", "2", "3", "4"));
340        collection4.get(0).getSubList().add(new UITestObject("W", "X", "Y", "Z"));
341        collection4.add(new UITestObject("1", "2", "3", "4"));
342        collection4.get(1).getSubList().add(new UITestObject("a", "b", "C", "D"));
343        collection4.get(1).getSubList().add(new UITestObject("a", "s", "D", "F"));
344
345        //triple nesting
346        collection5.add(new UITestObject("a", "a", "a", "a"));
347        collection5.get(0).getSubList().add(new UITestObject("A", "B", "C", "D"));
348        collection5.get(0).getSubList().get(0).getSubList().add(new UITestObject("a3", "3", "3", "3"));
349        collection5.get(0).getSubList().get(0).getSubList().add(new UITestObject("a3", "3", "3", "3"));
350        collection5.get(0).getSubList().add(new UITestObject("1", "2", "3", "4"));
351        collection5.get(0).getSubList().get(1).getSubList().add(new UITestObject("b3", "3", "3", "3"));
352        collection5.get(0).getSubList().get(1).getSubList().add(new UITestObject("b3", "3", "3", "3"));
353        collection5.get(0).getSubList().get(1).getSubList().add(new UITestObject("b3", "3", "3", "3"));
354        collection5.add(new UITestObject("b", "b", "b", "b"));
355        collection5.get(1).getSubList().add(new UITestObject("a", "b", "C", "D"));
356        collection5.get(1).getSubList().get(0).getSubList().add(new UITestObject("a23", "3", "3", "3"));
357        collection5.get(1).getSubList().get(0).getSubList().add(new UITestObject("a23", "3", "3", "3"));
358        collection5.get(1).getSubList().add(new UITestObject("a", "s", "D", "F"));
359        collection5.get(1).getSubList().get(1).getSubList().add(new UITestObject("b23", "3", "3", "3"));
360        collection5.get(1).getSubList().get(1).getSubList().add(new UITestObject("b23", "3", "3", "3"));
361
362        collection6.add(new UITestObject("1", "2", "3", "4"));
363        collection6.add(new UITestObject("5", "6", "7", "8"));
364        collection6.add(new UITestObject("9", "10", "11", "12"));
365
366        collection7.add(new UITestObject("A", "B", "C", "D"));
367        collection7.get(0).getSubList().add(new UITestObject("A", "B", "C", "D"));
368        collection7.get(0).getSubList().add(new UITestObject("1", "2", "3", "7"));
369        collection7.get(0).getSubList().add(new UITestObject("W", "X", "Y", "Z"));
370        collection7.add(new UITestObject("1", "2", "3", "7"));
371        collection7.get(1).getSubList().add(new UITestObject("a", "b", "C", "D"));
372        collection7.get(1).getSubList().add(new UITestObject("a", "s", "D", "F"));
373
374        inactivatableCollection.add(new UIInactivatableTestObject("A", "100", "200", "300", true));
375        inactivatableCollection.add(new UIInactivatableTestObject("B", "100", "200", "300", true));
376        inactivatableCollection.add(new UIInactivatableTestObject("b3", "3", "3", "3", false));
377        inactivatableCollection.add(new UIInactivatableTestObject("a", "b", "C", "D", true));
378        inactivatableCollection.add(new UIInactivatableTestObject("W", "X", "Y", "Z", false));
379        inactivatableCollection.add(new UIInactivatableTestObject("a", "s", "d", "f", true));
380        inactivatableCollection.add(new UIInactivatableTestObject("Fall", "2002", "AAA123", "3", false));
381
382        // groupedCollection1
383        groupedCollection1.add(new UITestObject("A", "100", "200", "300"));
384        groupedCollection1.add(new UITestObject("A", "101", "200", "300"));
385        groupedCollection1.add(new UITestObject("A", "102", "200", "300"));
386        groupedCollection1.add(new UITestObject("A", "103", "200", "300"));
387        groupedCollection1.add(new UITestObject("A", "104", "200", "300"));
388        groupedCollection1.add(new UITestObject("B", "100", "200", "300"));
389        groupedCollection1.add(new UITestObject("B", "101", "200", "300"));
390        groupedCollection1.add(new UITestObject("B", "102", "200", "300"));
391        groupedCollection1.add(new UITestObject("C", "100", "200", "300"));
392        groupedCollection1.add(new UITestObject("C", "101", "200", "300"));
393        groupedCollection1.add(new UITestObject("C", "102", "200", "300"));
394        groupedCollection1.add(new UITestObject("C", "103", "200", "300"));
395
396        // groupedCollection2
397        groupedCollection2.addAll(groupedCollection1);
398        groupedCollection2.add(new UITestObject("D", "100", "200", "300"));
399        groupedCollection2.add(new UITestObject("D", "101", "200", "300"));
400        groupedCollection2.add(new UITestObject("D", "102", "200", "300"));
401        groupedCollection2.add(new UITestObject("D", "103", "200", "300"));
402        groupedCollection2.add(new UITestObject("D", "100", "200", "300"));
403        groupedCollection2.add(new UITestObject("D", "101", "200", "300"));
404        groupedCollection2.add(new UITestObject("D", "102", "200", "300"));
405        groupedCollection2.add(new UITestObject("D", "103", "200", "300"));
406        groupedCollection2.add(new UITestObject("D", "100", "200", "300"));
407        groupedCollection2.add(new UITestObject("D", "101", "200", "300"));
408        groupedCollection2.add(new UITestObject("D", "102", "200", "300"));
409        groupedCollection2.add(new UITestObject("D", "103", "200", "300"));
410        groupedCollection2.add(new UITestObject("D", "100", "200", "300"));
411        groupedCollection2.add(new UITestObject("D", "101", "200", "300"));
412        groupedCollection2.add(new UITestObject("D", "102", "200", "300"));
413        groupedCollection2.add(new UITestObject("D", "103", "200", "300"));
414        groupedCollection2.add(new UITestObject("D", "100", "200", "300"));
415        groupedCollection2.add(new UITestObject("D", "101", "200", "300"));
416        groupedCollection2.add(new UITestObject("D", "102", "200", "300"));
417        groupedCollection2.add(new UITestObject("D", "103", "200", "300"));
418        groupedCollection2.add(new UITestObject("D", "100", "200", "300"));
419        groupedCollection2.add(new UITestObject("D", "101", "200", "300"));
420        groupedCollection2.add(new UITestObject("D", "102", "200", "300"));
421        groupedCollection2.add(new UITestObject("D", "103", "200", "300"));
422
423        // groupedCollection3
424        groupedCollection3.addAll(groupedCollection2);
425
426        // doubleGroupedCollection
427        doubleGroupedCollection.add(new UITestObject("Fall", "2001", "AAA123", "2"));
428        doubleGroupedCollection.add(new UITestObject("Fall", "2001", "BBB123", "3"));
429        doubleGroupedCollection.add(new UITestObject("Fall", "2001", "CCC123", "4"));
430        doubleGroupedCollection.add(new UITestObject("Fall", "2001", "DDD123", "3"));
431        doubleGroupedCollection.add(new UITestObject("Fall", "2002", "AAA123", "3"));
432        doubleGroupedCollection.add(new UITestObject("Fall", "2002", "BBB123", "2"));
433        doubleGroupedCollection.add(new UITestObject("Fall", "2002", "CCC123", "3"));
434        doubleGroupedCollection.add(new UITestObject("Fall", "2003", "AAA123", "3"));
435        doubleGroupedCollection.add(new UITestObject("Fall", "2003", "CCC123", "3"));
436        doubleGroupedCollection.add(new UITestObject("Spring", "2001", "AAA123", "3"));
437        doubleGroupedCollection.add(new UITestObject("Spring", "2001", "BBB123", "3"));
438        doubleGroupedCollection.add(new UITestObject("Spring", "2001", "CCC123", "3"));
439        doubleGroupedCollection.add(new UITestObject("Spring", "2002", "AAA123", "4"));
440        doubleGroupedCollection.add(new UITestObject("Spring", "2002", "BBB123", "4"));
441        doubleGroupedCollection.add(new UITestObject("Spring", "2002", "CCC123", "2"));
442        doubleGroupedCollection.add(new UITestObject("Spring", "2003", "AAA123", "4"));
443        doubleGroupedCollection.add(new UITestObject("Spring", "2003", "BBB123", "3"));
444        doubleGroupedCollection.add(new UITestObject("Spring", "2003", "CCC123", "3"));
445        doubleGroupedCollection.add(new UITestObject("Spring", "2003", "DDD123", "2"));
446
447        names.add(new UITestObject("1", "Jack", "Buck", ""));
448        names.add(new UITestObject("2", "Joe", "", ""));
449        names.add(new UITestObject("3", "John", "Wayne", ""));
450        names.add(new UITestObject("4", "Jim", "", ""));
451
452        // build tree1 variable
453        { // scope for name hiding purposes
454            Node<String, String> item1 = new Node<String, String>("Item 1", "Item 1");
455            item1.addChild(new Node<String, String>("SubItem A", "SubItem A"));
456            item1.addChild(new Node<String, String>("SubItem B", "SubItem B"));
457
458            Node<String, String> item2 = new Node<String, String>("Item 2", "Item 2");
459            item2.addChild(new Node<String, String>("SubItem A", "SubItem A"));
460            Node<String, String> sub2B = new Node<String, String>("SubItem B", "SubItem B");
461            sub2B.addChild(new Node<String, String>("Item B-1", "Item B-1"));
462            sub2B.addChild(new Node<String, String>("Item B-2", "Item B-2"));
463            sub2B.addChild(new Node<String, String>("Item B-3", "Item B-3"));
464            item2.addChild(sub2B);
465            item2.addChild(new Node<String, String>("SubItem C", "SubItem C"));
466
467            Node<String, String> item3 = new Node<String, String>("Item 3", "Item 3");
468            item3.addChild(new Node<String, String>("SubItem A", "SubItem A"));
469            item3.addChild(new Node<String, String>("SubItem B", "SubItem B"));
470            item3.addChild(new Node<String, String>("SubItem C", "SubItem C"));
471            item3.addChild(new Node<String, String>("SubItem D", "SubItem D"));
472
473            Node<String, String> root = new Node<String, String>("Root", "Root");
474            root.addChild(item1);
475            root.addChild(item2);
476            root.addChild(item3);
477
478            tree1.setRootElement(root);
479        }
480
481        // build tree2 variable
482        { // scope for name hiding purposes
483            Node<UITestObject, String> item1 = new Node<UITestObject, String>(new UITestObject("1-A", "1-B", "1-C", "1-D"), "Item 1");
484            item1.addChild(new Node<UITestObject, String>(new UITestObject("1SA-A", "1SA-B", "1SA-C", "1SA-D"), "SubItem A"));
485            item1.addChild(new Node<UITestObject, String>(new UITestObject("1SB-A", "1SB-B", "1SB-C", "1SB-D"), "SubItem B"));
486
487            Node<UITestObject, String> item2 = new Node<UITestObject, String>(new UITestObject("2-A", "2-B", "2-C", "2-D"), "Item 2");
488            item2.addChild(new Node<UITestObject, String>(new UITestObject("SA-a", "SA-b", "SA-c", "SA-d"), "SubItem A"));
489            Node<UITestObject, String> sub2B = new Node<UITestObject, String>(new UITestObject("SB-a", "SB-b", "SB-c", "SB-d"), "SubItem B");
490            sub2B.addChild(new Node<UITestObject, String>(new UITestObject("AA", "BB", "CC", "DD"), "Item B-1"));
491            sub2B.addChild(new Node<UITestObject, String>(new UITestObject("Aa", "Bb", "Cc", "Dd"), "Item B-2"));
492            sub2B.addChild(new Node<UITestObject, String>(new UITestObject("aA", "bB", "cC", "dD"), "Item B-3"));
493            item2.addChild(sub2B);
494            item2.addChild(new Node<UITestObject, String>(new UITestObject("SC-a", "SC-b", "SC-c", "SC-d"), "SubItem C"));
495
496            Node<UITestObject, String> item3 = new Node<UITestObject, String>(new UITestObject("3-A", "3-B", "3-C", "3-D"), "Item 3");
497            item3.addChild(new Node<UITestObject, String>(new UITestObject("A", "B", "C", "D"), "SubItem A"));
498            item3.addChild(new Node<UITestObject, String>(new UITestObject("1", "2", "3", "4"), "SubItem B"));
499            item3.addChild(new Node<UITestObject, String>(new UITestObject("w", "x", "y", "z"), "SubItem C"));
500            item3.addChild(new Node<UITestObject, String>(new UITestObject("!", "@", "#", "$"), "SubItem D"));
501
502            Node<UITestObject, String> root = new Node<UITestObject, String>(new UITestObject("foo", "bar", "baz", "roo"), "Root");
503            root.addChild(item1);
504            root.addChild(item2);
505            root.addChild(item3);
506
507            tree2.setRootElement(root);
508        }
509        
510        List<DocumentSearchResult> results = Collections.emptyList();
511        try {
512                        DocumentSearchCriteria.Builder builder = DocumentSearchCriteria.Builder.create();
513                        builder.setDocumentTypeName("TravelAuthorization");
514            DocumentSearchService documentSearchService = org.kuali.rice.kew.service.KEWServiceLocator.getDocumentSearchService();
515            if (documentSearchService != null) {
516                results = documentSearchService.lookupDocuments(null, builder.build()).getSearchResults();
517            }
518        } catch (NoClassDefFoundError e) {
519                results = Collections.emptyList();
520        }
521
522        if (results.isEmpty()) {
523                if (KRADServiceLocatorWeb.getDocumentService() != null) {
524                    try {
525                        Document newDocument = KRADServiceLocatorWeb.getDocumentService().getNewDocument(TravelAuthorizationDocument.class);
526                        newDocument.getDocumentHeader().setDocumentDescription("Test");
527        
528                        TravelAuthorizationDocument newTravelAuthorizationDocument = (TravelAuthorizationDocument) newDocument;
529                        newTravelAuthorizationDocument.setCellPhoneNumber("555-555-5555");
530        
531                        QueryByCriteria query = QueryByCriteria.Builder.create().build();
532                        List<TravelDestination> travelDestinations = KRADServiceLocator.getDataObjectService().findMatching(TravelDestination.class, query).getResults();
533                        if (!travelDestinations.isEmpty()) {
534                            newTravelAuthorizationDocument.setTripDestinationId(travelDestinations.get(0).getTravelDestinationId());
535                        }
536
537                        Document document = KRADServiceLocatorWeb.getDocumentService().saveDocument(newTravelAuthorizationDocument);
538                        setDocumentNumber(document.getDocumentNumber());
539                    } catch (WorkflowException we) {
540                        // ignore
541                    }
542                }
543        } else {
544            DocumentSearchResult result = results.get(0);
545            setDocumentNumber(result.getDocument().getDocumentId());
546        }
547    }
548
549    /**
550     * Theme by name (id) currently used for the component library view
551     *
552     * @return
553     */
554    public String getThemeName() {
555        return themeName;
556    }
557
558    /**
559     * @param themeName
560     */
561    public void setThemeName(String themeName) {
562        this.themeName = themeName;
563    }
564
565    /**
566     * Backing property for the large example dropdown since on is required.  Stores dropdown selection
567     *
568     * @return
569     */
570    public String getExampleShown() {
571        return exampleShown;
572    }
573
574    /**
575     * Large example selection
576     *
577     * @param exampleShown
578     */
579    public void setExampleShown(String exampleShown) {
580        this.exampleShown = exampleShown;
581    }
582
583    /**
584     * Index of the current example, used to reselect between submit actions
585     *
586     * @return
587     */
588    public String getCurrentExampleIndex() {
589        return currentExampleIndex;
590    }
591
592    /**
593     * Index of the current example
594     *
595     * @param currentExampleIndex
596     */
597    public void setCurrentExampleIndex(String currentExampleIndex) {
598        this.currentExampleIndex = currentExampleIndex;
599    }
600
601    /**
602     * Below are basic getters and setters for this data object - no javadoc needed *
603     */
604
605    public String getDataField1() {
606        return dataField1;
607    }
608
609    public void setDataField1(String dataField1) {
610        this.dataField1 = dataField1;
611    }
612
613    public String getDataField2() {
614        return dataField2;
615    }
616
617    public void setDataField2(String dataField2) {
618        this.dataField2 = dataField2;
619    }
620
621    public String getDataField3() {
622        return dataField3;
623    }
624
625    public void setDataField3(String dataField3) {
626        this.dataField3 = dataField3;
627    }
628
629    public String getDataField4() {
630        return dataField4;
631    }
632
633    public void setDataField4(String dataField4) {
634        this.dataField4 = dataField4;
635    }
636
637    public String getDataField5() {
638        return dataField5;
639    }
640
641    public void setDataField5(String dataField5) {
642        this.dataField5 = dataField5;
643    }
644
645    public String getDataField6() {
646        return dataField6;
647    }
648
649    public void setDataField6(String dataField6) {
650        this.dataField6 = dataField6;
651    }
652
653    public String getDataField7() {
654        return dataField7;
655    }
656
657    public void setDataField7(String dataField7) {
658        this.dataField7 = dataField7;
659    }
660
661    public String getDataField8() {
662        return dataField8;
663    }
664
665    public void setDataField8(String dataField8) {
666        this.dataField8 = dataField8;
667    }
668
669    public String getDataField9() {
670        return dataField9;
671    }
672
673    public void setDataField9(String dataField9) {
674        this.dataField9 = dataField9;
675    }
676
677    public String getDataField10() {
678        return dataField10;
679    }
680
681    public void setDataField10(String dataField10) {
682        this.dataField10 = dataField10;
683    }
684
685    public String getDataField11() {
686        return dataField11;
687    }
688
689    public void setDataField11(String dataField11) {
690        this.dataField11 = dataField11;
691    }
692
693    public String getDataField12() {
694        return dataField12;
695    }
696
697    public void setDataField12(String dataField12) {
698        this.dataField12 = dataField12;
699    }
700
701    public String getInputField1() {
702        return inputField1;
703    }
704
705    public void setInputField1(String inputField1) {
706        this.inputField1 = inputField1;
707    }
708
709    public String getInputField2() {
710        return inputField2;
711    }
712
713    public void setInputField2(String inputField2) {
714        this.inputField2 = inputField2;
715    }
716
717    public String getInputField3() {
718        return inputField3;
719    }
720
721    public void setInputField3(String inputField3) {
722        this.inputField3 = inputField3;
723    }
724
725    public String getInputField4() {
726        return inputField4;
727    }
728
729    public void setInputField4(String inputField4) {
730        this.inputField4 = inputField4;
731    }
732
733    public String getInputField5() {
734        return inputField5;
735    }
736
737    public void setInputField5(String inputField5) {
738        this.inputField5 = inputField5;
739    }
740
741    public String getInputField6() {
742        return inputField6;
743    }
744
745    public void setInputField6(String inputField6) {
746        this.inputField6 = inputField6;
747    }
748
749    public String getInputField7() {
750        return inputField7;
751    }
752
753    public void setInputField7(String inputField7) {
754        this.inputField7 = inputField7;
755    }
756
757    public String getInputField8() {
758        return inputField8;
759    }
760
761    public void setInputField8(String inputField8) {
762        this.inputField8 = inputField8;
763    }
764
765    public String getInputField9() {
766        return inputField9;
767    }
768
769    public void setInputField9(String inputField9) {
770        this.inputField9 = inputField9;
771    }
772
773    public String getInputField10() {
774        return inputField10;
775    }
776
777    public void setInputField10(String inputField10) {
778        this.inputField10 = inputField10;
779    }
780
781    public String getInputField11() {
782        return inputField11;
783    }
784
785    public void setInputField11(String inputField11) {
786        this.inputField11 = inputField11;
787    }
788
789    public String getInputField12() {
790        return inputField12;
791    }
792
793    public void setInputField12(String inputField12) {
794        this.inputField12 = inputField12;
795    }
796
797    public String getInputField13() {
798        return inputField13;
799    }
800
801    public void setInputField13(String inputField13) {
802        this.inputField13 = inputField13;
803    }
804
805    public String getInputField14() {
806        return inputField14;
807    }
808
809    public void setInputField14(String inputField14) {
810        this.inputField14 = inputField14;
811    }
812
813    public String getInputField15() {
814        return inputField15;
815    }
816
817    public void setInputField15(String inputField15) {
818        this.inputField15 = inputField15;
819    }
820
821    public String getInputField16() {
822        return inputField16;
823    }
824
825    public void setInputField16(String inputField16) {
826        this.inputField16 = inputField16;
827    }
828
829    public String getInputField17() {
830        return inputField17;
831    }
832
833    public void setInputField17(String inputField17) {
834        this.inputField17 = inputField17;
835    }
836
837    public String getInputField18() {
838        return inputField18;
839    }
840
841    public void setInputField18(String inputField18) {
842        this.inputField18 = inputField18;
843    }
844
845    public String getInputField19() {
846        return inputField19;
847    }
848
849    public void setInputField19(String inputField19) {
850        this.inputField19 = inputField19;
851    }
852
853    public String getInputField20() {
854        return inputField20;
855    }
856
857    public void setInputField20(String inputField20) {
858        this.inputField20 = inputField20;
859    }
860
861    public String getInputField21() {
862        return inputField21;
863    }
864
865    public void setInputField21(String inputField21) {
866        this.inputField21 = inputField21;
867    }
868
869    public String getInputField22() {
870        return inputField22;
871    }
872
873    public void setInputField22(String inputField22) {
874        this.inputField22 = inputField22;
875    }
876
877    public String getInputField23() {
878        return inputField23;
879    }
880
881    public void setInputField23(String inputField23) {
882        this.inputField23 = inputField23;
883    }
884
885    public String getInputField24() {
886        return inputField24;
887    }
888
889    public void setInputField24(String inputField24) {
890        this.inputField24 = inputField24;
891    }
892
893    public String getInputField25() {
894        return inputField25;
895    }
896
897    public void setInputField25(String inputField25) {
898        this.inputField25 = inputField25;
899    }
900
901    public String getInputField26() {
902        return inputField26;
903    }
904
905    public void setInputField26(String inputField26) {
906        this.inputField26 = inputField26;
907    }
908
909    public String getInputField27() {
910        return inputField27;
911    }
912
913    public void setInputField27(String inputField27) {
914        this.inputField27 = inputField27;
915    }
916
917    public String getInputField28() {
918        return inputField28;
919    }
920
921    public void setInputField28(String inputField28) {
922        this.inputField28 = inputField28;
923    }
924
925    public String getInputField29() {
926        return inputField29;
927    }
928
929    public void setInputField29(String inputField29) {
930        this.inputField29 = inputField29;
931    }
932
933    public String getInputField30() {
934        return inputField30;
935    }
936
937    public void setInputField30(String inputField30) {
938        this.inputField30 = inputField30;
939    }
940
941    public String getMessageField1() {
942        return messageField1;
943    }
944
945    public void setMessageField1(String messageField1) {
946        this.messageField1 = messageField1;
947    }
948
949    public String getTestPersonId() {
950        return testPersonId;
951    }
952
953    public void setTestPersonId(String testPersonId) {
954        this.testPersonId = testPersonId;
955    }
956
957    public Person getTestPerson() {
958        if ((testPerson == null) || !StringUtils.equals(testPerson.getPrincipalId(), getTestPersonId())) {
959            testPerson = KimApiServiceLocator.getPersonService().getPerson(getTestPersonId());
960
961            if (testPerson == null) {
962                try {
963                    testPerson = KimApiServiceLocator.getPersonService().getPersonImplementationClass().newInstance();
964                } catch (Exception e) {
965                    throw new RuntimeException(e);
966                }
967            }
968        }
969
970        return testPerson;
971    }
972
973    public void setTestPerson(Person testPerson) {
974        this.testPerson = testPerson;
975    }
976
977    public String getTestGroupId() {
978        return testGroupId;
979    }
980
981    public void setTestGroupId(String testGroupId) {
982        this.testGroupId = testGroupId;
983    }
984
985    public String getTestPrincipalId1() {
986        return testPrincipalId1;
987    }
988
989    public void setTestPrincipalId1(String testPrincipalId1) {
990        this.testPrincipalId1 = testPrincipalId1;
991    }
992
993    public String getTestPrincipalId2() {
994        return testPrincipalId2;
995    }
996
997    public void setTestPrincipalId2(String testPrincipalId2) {
998        this.testPrincipalId2 = testPrincipalId2;
999    }
1000
1001    public String getTestPrincipalId3() {
1002        return testPrincipalId3;
1003    }
1004
1005    public void setTestPrincipalId3(String testPrincipalId3) {
1006        this.testPrincipalId3 = testPrincipalId3;
1007    }
1008
1009    public String getTestPrincipalId4() {
1010        return testPrincipalId4;
1011    }
1012
1013    public void setTestPrincipalId4(String testPrincipalId4) {
1014        this.testPrincipalId4 = testPrincipalId4;
1015    }
1016
1017    public String getTestPrincipalName1() {
1018        return testPrincipalName1;
1019    }
1020
1021    public void setTestPrincipalName1(String testPrincipalName1) {
1022        this.testPrincipalName1 = testPrincipalName1;
1023    }
1024
1025    public String getTestPrincipalName2() {
1026        return testPrincipalName2;
1027    }
1028
1029    public void setTestPrincipalName2(String testPrincipalName2) {
1030        this.testPrincipalName2 = testPrincipalName2;
1031    }
1032
1033    public String getTestPrincipalName3() {
1034        return testPrincipalName3;
1035    }
1036
1037    public void setTestPrincipalName3(String testPrincipalName3) {
1038        this.testPrincipalName3 = testPrincipalName3;
1039    }
1040
1041    public String getTestPrincipalName4() {
1042        return testPrincipalName4;
1043    }
1044
1045    public void setTestPrincipalName4(String testPrincipalName4) {
1046        this.testPrincipalName4 = testPrincipalName4;
1047    }
1048
1049    public String getTestGroupId1() {
1050        return testGroupId1;
1051    }
1052
1053    public void setTestGroupId1(String testGroupId1) {
1054        this.testGroupId1 = testGroupId1;
1055    }
1056
1057    public String getTestGroupId2() {
1058        return testGroupId2;
1059    }
1060
1061    public void setTestGroupId2(String testGroupId2) {
1062        this.testGroupId2 = testGroupId2;
1063    }
1064
1065    public String getTestGroupId3() {
1066        return testGroupId3;
1067    }
1068
1069    public void setTestGroupId3(String testGroupId3) {
1070        this.testGroupId3 = testGroupId3;
1071    }
1072
1073    public String getTestGroupId4() {
1074        return testGroupId4;
1075    }
1076
1077    public void setTestGroupId4(String testGroupId4) {
1078        this.testGroupId4 = testGroupId4;
1079    }
1080
1081    public String getTestGroupId5() {
1082        return testGroupId5;
1083    }
1084
1085    public void setTestGroupId5(String testGroupId5) {
1086        this.testGroupId5 = testGroupId5;
1087    }
1088
1089    public String getTestGroupNamespaceCode1() {
1090        return testGroupNamespaceCode1;
1091    }
1092
1093    public void setTestGroupNamespaceCode1(String testGroupNamespaceCode1) {
1094        this.testGroupNamespaceCode1 = testGroupNamespaceCode1;
1095    }
1096
1097    public String getTestGroupNamespaceCode2() {
1098        return testGroupNamespaceCode2;
1099    }
1100
1101    public void setTestGroupNamespaceCode2(String testGroupNamespaceCode2) {
1102        this.testGroupNamespaceCode2 = testGroupNamespaceCode2;
1103    }
1104
1105    public String getTestGroupNamespaceCode3() {
1106        return testGroupNamespaceCode3;
1107    }
1108
1109    public void setTestGroupNamespaceCode3(String testGroupNamespaceCode3) {
1110        this.testGroupNamespaceCode3 = testGroupNamespaceCode3;
1111    }
1112
1113    public String getTestGroupNamespaceCode4() {
1114        return testGroupNamespaceCode4;
1115    }
1116
1117    public void setTestGroupNamespaceCode4(String testGroupNamespaceCode4) {
1118        this.testGroupNamespaceCode4 = testGroupNamespaceCode4;
1119    }
1120
1121    public String getTestGroupNamespaceCode5() {
1122        return testGroupNamespaceCode5;
1123    }
1124
1125    public void setTestGroupNamespaceCode5(String testGroupNamespaceCode5) {
1126        this.testGroupNamespaceCode5 = testGroupNamespaceCode5;
1127    }
1128
1129    public String getTestGroupName1() {
1130        return testGroupName1;
1131    }
1132
1133    public void setTestGroupName1(String testGroupName1) {
1134        this.testGroupName1 = testGroupName1;
1135    }
1136
1137    public String getTestGroupName2() {
1138        return testGroupName2;
1139    }
1140
1141    public void setTestGroupName2(String testGroupName2) {
1142        this.testGroupName2 = testGroupName2;
1143    }
1144
1145    public String getTestGroupName3() {
1146        return testGroupName3;
1147    }
1148
1149    public void setTestGroupName3(String testGroupName3) {
1150        this.testGroupName3 = testGroupName3;
1151    }
1152
1153    public String getTestGroupName4() {
1154        return testGroupName4;
1155    }
1156
1157    public void setTestGroupName4(String testGroupName4) {
1158        this.testGroupName4 = testGroupName4;
1159    }
1160
1161    public String getTestGroupName5() {
1162        return testGroupName5;
1163    }
1164
1165    public void setTestGroupName5(String testGroupName5) {
1166        this.testGroupName5 = testGroupName5;
1167    }
1168
1169    public String getTestRoleId1() {
1170        return testRoleId1;
1171    }
1172
1173    public void setTestRoleId1(String testRoleId1) {
1174        this.testRoleId1 = testRoleId1;
1175    }
1176
1177    public String getTestRoleId2() {
1178        return testRoleId2;
1179    }
1180
1181    public void setTestRoleId2(String testRoleId2) {
1182        this.testRoleId2 = testRoleId2;
1183    }
1184
1185    public String getTestRoleId3() {
1186        return testRoleId3;
1187    }
1188
1189    public void setTestRoleId3(String testRoleId3) {
1190        this.testRoleId3 = testRoleId3;
1191    }
1192
1193    public String getTestRoleId4() {
1194        return testRoleId4;
1195    }
1196
1197    public void setTestRoleId4(String testRoleId4) {
1198        this.testRoleId4 = testRoleId4;
1199    }
1200
1201    public String getTestRoleId5() {
1202        return testRoleId5;
1203    }
1204
1205    public void setTestRoleId5(String testRoleId5) {
1206        this.testRoleId5 = testRoleId5;
1207    }
1208
1209    public String getTestRoleNamespaceCode1() {
1210        return testRoleNamespaceCode1;
1211    }
1212
1213    public void setTestRoleNamespaceCode1(String testRoleNamespaceCode1) {
1214        this.testRoleNamespaceCode1 = testRoleNamespaceCode1;
1215    }
1216
1217    public String getTestRoleNamespaceCode2() {
1218        return testRoleNamespaceCode2;
1219    }
1220
1221    public void setTestRoleNamespaceCode2(String testRoleNamespaceCode2) {
1222        this.testRoleNamespaceCode2 = testRoleNamespaceCode2;
1223    }
1224
1225    public String getTestRoleNamespaceCode3() {
1226        return testRoleNamespaceCode3;
1227    }
1228
1229    public void setTestRoleNamespaceCode3(String testRoleNamespaceCode3) {
1230        this.testRoleNamespaceCode3 = testRoleNamespaceCode3;
1231    }
1232
1233    public String getTestRoleNamespaceCode4() {
1234        return testRoleNamespaceCode4;
1235    }
1236
1237    public void setTestRoleNamespaceCode4(String testRoleNamespaceCode4) {
1238        this.testRoleNamespaceCode4 = testRoleNamespaceCode4;
1239    }
1240
1241    public String getTestRoleNamespaceCode5() {
1242        return testRoleNamespaceCode5;
1243    }
1244
1245    public void setTestRoleNamespaceCode5(String testRoleNamespaceCode5) {
1246        this.testRoleNamespaceCode5 = testRoleNamespaceCode5;
1247    }
1248
1249    public String getTestRoleName1() {
1250        return testRoleName1;
1251    }
1252
1253    public void setTestRoleName1(String testRoleName1) {
1254        this.testRoleName1 = testRoleName1;
1255    }
1256
1257    public String getTestRoleName2() {
1258        return testRoleName2;
1259    }
1260
1261    public void setTestRoleName2(String testRoleName2) {
1262        this.testRoleName2 = testRoleName2;
1263    }
1264
1265    public String getTestRoleName3() {
1266        return testRoleName3;
1267    }
1268
1269    public void setTestRoleName3(String testRoleName3) {
1270        this.testRoleName3 = testRoleName3;
1271    }
1272
1273    public String getTestRoleName4() {
1274        return testRoleName4;
1275    }
1276
1277    public void setTestRoleName4(String testRoleName4) {
1278        this.testRoleName4 = testRoleName4;
1279    }
1280
1281    public String getTestRoleName5() {
1282        return testRoleName5;
1283    }
1284
1285    public void setTestRoleName5(String testRoleName5) {
1286        this.testRoleName5 = testRoleName5;
1287    }
1288
1289    public List<UITestObject> getCollection1() {
1290        return collection1;
1291    }
1292
1293    public void setCollection1(List<UITestObject> collection1) {
1294        this.collection1 = collection1;
1295    }
1296
1297    public List<UITestObject> getCollection1_2() {
1298        return collection1_2;
1299    }
1300
1301    public void setCollection1_2(List<UITestObject> collection1_2) {
1302        this.collection1_2 = collection1_2;
1303    }
1304
1305    public List<UITestObject> getCollection1_3() {
1306        return collection1_3;
1307    }
1308
1309    public void setCollection1_3(List<UITestObject> collection1_3) {
1310        this.collection1_3 = collection1_3;
1311    }
1312
1313    public List<UITestObject> getCollection1_4() {
1314        return collection1_4;
1315    }
1316
1317    public void setCollection1_4(List<UITestObject> collection1_4) {
1318        this.collection1_4 = collection1_4;
1319    }
1320
1321    public List<UITestObject> getCollection1_5() {
1322        return collection1_5;
1323    }
1324
1325    public void setCollection1_5(List<UITestObject> collection1_5) {
1326        this.collection1_5 = collection1_5;
1327    }
1328
1329    public List<UITestObject> getCollection1_6() {
1330        return collection1_6;
1331    }
1332
1333    public void setCollection1_6(List<UITestObject> collection1_6) {
1334        this.collection1_6 = collection1_6;
1335    }
1336
1337    public List<UITestObject> getCollection1_7() {
1338        return collection1_7;
1339    }
1340
1341    public void setCollection1_7(List<UITestObject> collection1_7) {
1342        this.collection1_7 = collection1_7;
1343    }
1344
1345    public List<UITestObject> getCollection1_8() {
1346        return collection1_8;
1347    }
1348
1349    public void setCollection1_8(List<UITestObject> collection1_8) {
1350        this.collection1_8 = collection1_8;
1351    }
1352
1353    public List<UITestObject> getCollection1_9() {
1354        return collection1_9;
1355    }
1356
1357    public void setCollection1_9(List<UITestObject> collection1_9) {
1358        this.collection1_9 = collection1_9;
1359    }
1360
1361    public List<UITestObject> getCollection1_10() {
1362        return collection1_10;
1363    }
1364
1365    public void setCollection1_10(List<UITestObject> collection1_10) {
1366        this.collection1_10 = collection1_10;
1367    }
1368
1369    public List<UITestObject> getCollection2() {
1370        return collection2;
1371    }
1372
1373    public void setCollection2(List<UITestObject> collection2) {
1374        this.collection2 = collection2;
1375    }
1376
1377    public List<UITestObject> getCollection3() {
1378        return collection3;
1379    }
1380
1381    public void setCollection3(List<UITestObject> collection3) {
1382        this.collection3 = collection3;
1383    }
1384
1385    public List<UITestObject> getCollection4() {
1386        return collection4;
1387    }
1388
1389    public void setCollection4(List<UITestObject> collection4) {
1390        this.collection4 = collection4;
1391    }
1392
1393    public List<UITestObject> getCollection5() {
1394        return collection5;
1395    }
1396
1397    public void setCollection5(List<UITestObject> collection5) {
1398        this.collection5 = collection5;
1399    }
1400
1401    public List<UITestObject> getCollection6() {
1402        return collection6;
1403    }
1404
1405    public void setCollection6(List<UITestObject> collection6) {
1406        this.collection6 = collection6;
1407    }
1408
1409    public List<UITestObject> getCollection7() {
1410        return collection7;
1411    }
1412
1413    public void setCollection7(List<UITestObject> collection7) {
1414        this.collection7 = collection7;
1415    }
1416
1417    public List<UIInactivatableTestObject> getInactivatableCollection() {
1418        return inactivatableCollection;
1419    }
1420
1421    public void setInactivatableCollection(List<UIInactivatableTestObject> inactivatableCollection) {
1422        this.inactivatableCollection = inactivatableCollection;
1423    }
1424
1425    public List<UITestObject> getGroupedCollection1() {
1426        return groupedCollection1;
1427    }
1428
1429    public void setGroupedCollection1(List<UITestObject> groupedCollection1) {
1430        this.groupedCollection1 = groupedCollection1;
1431    }
1432
1433    public List<UITestObject> getGroupedCollection2() {
1434        return groupedCollection2;
1435    }
1436
1437    public void setGroupedCollection2(List<UITestObject> groupedCollection2) {
1438        this.groupedCollection2 = groupedCollection2;
1439    }
1440
1441    public List<UITestObject> getGroupedCollection3() {
1442        return groupedCollection3;
1443    }
1444
1445    public void setGroupedCollection3(List<UITestObject> groupedCollection3) {
1446        this.groupedCollection3 = groupedCollection3;
1447    }
1448
1449    public List<UITestObject> getDoubleGroupedCollection() {
1450        return doubleGroupedCollection;
1451    }
1452
1453    public void setDoubleGroupedCollection(List<UITestObject> doubleGroupedCollection) {
1454        this.doubleGroupedCollection = doubleGroupedCollection;
1455    }
1456
1457    public List<UITestObject> getNames() {
1458        return names;
1459    }
1460
1461    public void setNames(List<UITestObject> names) {
1462        this.names = names;
1463    }
1464
1465    public List<UITestObject> getEmptyCollection() {
1466        return emptyCollection;
1467    }
1468
1469    public void setEmptyCollection(List<UITestObject> emptyCollection) {
1470        this.emptyCollection = emptyCollection;
1471    }
1472
1473    public List<UITestObject> getEmptyCollection1() {
1474        return emptyCollection1;
1475    }
1476
1477    public void setEmptyCollection1(List<UITestObject> emptyCollection1) {
1478        this.emptyCollection1 = emptyCollection1;
1479    }
1480
1481    public List<UITestObject> getEmptyCollection2() {
1482        return emptyCollection2;
1483    }
1484
1485    public void setEmptyCollection2(List<UITestObject> emptyCollection2) {
1486        this.emptyCollection2 = emptyCollection2;
1487    }
1488
1489    public String getFakeTotal() {
1490        return fakeTotal;
1491    }
1492
1493    public void setFakeTotal(String fakeTotal) {
1494        this.fakeTotal = fakeTotal;
1495    }
1496
1497    public String getBarStep() {
1498        return barStep;
1499    }
1500
1501    public void setBarStep(String barStep) {
1502        this.barStep = barStep;
1503    }
1504
1505    public int getBarPercent() {
1506        return barPercent;
1507    }
1508
1509    public void setBarPercent(int barPercent) {
1510        this.barPercent = barPercent;
1511    }
1512
1513    public String getRichMessageField() {
1514        return richMessageField;
1515    }
1516
1517    public void setRichMessageField(String richMessageField) {
1518        this.richMessageField = richMessageField;
1519    }
1520
1521    public List<String> getCheckboxesField1() {
1522        return checkboxesField1;
1523    }
1524
1525    public void setCheckboxesField1(List<String> checkboxesField1) {
1526        this.checkboxesField1 = checkboxesField1;
1527    }
1528
1529    public List<String> getCheckboxesField2() {
1530        return checkboxesField2;
1531    }
1532
1533    public void setCheckboxesField2(List<String> checkboxesField2) {
1534        this.checkboxesField2 = checkboxesField2;
1535    }
1536
1537    public List<String> getCheckboxesField3() {
1538        return checkboxesField3;
1539    }
1540
1541    public void setCheckboxesField3(List<String> checkboxesField3) {
1542        this.checkboxesField3 = checkboxesField3;
1543    }
1544
1545    public List<String> getCheckboxesField5() {
1546        return checkboxesField5;
1547    }
1548
1549    public void setCheckboxesField5(List<String> checkboxesField5) {
1550        this.checkboxesField5 = checkboxesField5;
1551    }
1552
1553    public List<String> getCheckboxesField4() {
1554        return checkboxesField4;
1555    }
1556
1557    public void setCheckboxesField4(List<String> checkboxesField4) {
1558        this.checkboxesField4 = checkboxesField4;
1559    }
1560
1561    public List<String> getMultiSelectField1() {
1562        return multiSelectField1;
1563    }
1564
1565    public void setMultiSelectField1(List<String> multiSelectField1) {
1566        this.multiSelectField1 = multiSelectField1;
1567    }
1568
1569    public boolean isBooleanField1() {
1570        return booleanField1;
1571    }
1572
1573    public void setBooleanField1(boolean booleanField1) {
1574        this.booleanField1 = booleanField1;
1575    }
1576
1577    public boolean isBooleanField2() {
1578        return booleanField2;
1579    }
1580
1581    public void setBooleanField2(boolean booleanField2) {
1582        this.booleanField2 = booleanField2;
1583    }
1584
1585    public boolean isBooleanField3() {
1586        return booleanField3;
1587    }
1588
1589    public void setBooleanField3(boolean booleanField3) {
1590        this.booleanField3 = booleanField3;
1591    }
1592
1593    /**
1594     * @return the tree1
1595     */
1596    public Tree<String, String> getTree1() {
1597        return this.tree1;
1598    }
1599
1600    /**
1601     * @param tree1 the tree1 to set
1602     */
1603    public void setTree1(Tree<String, String> tree1) {
1604        this.tree1 = tree1;
1605    }
1606
1607    /**
1608     * @return the tree2
1609     */
1610    public Tree<UITestObject, String> getTree2() {
1611        return tree2;
1612    }
1613
1614    /**
1615     * @param tree2 the tree2 to set
1616     */
1617    public void setTree2(Tree<UITestObject, String> tree2) {
1618        this.tree2 = tree2;
1619    }
1620
1621    /**
1622     * @param subList the subList to set
1623     */
1624    public void setSubList(List<UITestObject> subList) {
1625        this.subList = subList;
1626    }
1627
1628    /**
1629     * @return the subList
1630     */
1631    public List<UITestObject> getSubList() {
1632        return subList;
1633    }
1634
1635    public List<String> getOptionListSelection() {
1636        return optionListSelection;
1637    }
1638
1639    public void setOptionListSelection(List<String> optionListSelection) {
1640        this.optionListSelection = optionListSelection;
1641    }
1642
1643    public String getCodeSample() {
1644        return codeSample;
1645    }
1646
1647    public void setCodeSample(String codeSample) {
1648        this.codeSample = codeSample;
1649    }
1650
1651    public String getDocumentNumber() {
1652        return documentNumber;
1653    }
1654
1655    public void setDocumentNumber(String documentNumber) {
1656        this.documentNumber = documentNumber;
1657    }
1658
1659    public String getTravelAccountAttributeName() {
1660        if (travelAccountAttributeName == null) {
1661            return "subsidizedPercent";
1662        }
1663        return travelAccountAttributeName;
1664    }
1665
1666    public void setTravelAccountAttributeName(String travelAccountAttributeName) {
1667        this.travelAccountAttributeName = travelAccountAttributeName;
1668    }
1669
1670    public List<TravelAccount> getTravelAccounts() {
1671        return travelAccounts;
1672    }
1673
1674    public void setTravelAccounts(List<TravelAccount> travelAccounts) {
1675        this.travelAccounts = travelAccounts;
1676    }
1677
1678    public List<FileMetaBlob> getFiles() {
1679        return files;
1680    }
1681
1682    public void setFiles(List<FileMetaBlob> files) {
1683        this.files = files;
1684    }
1685
1686    public List<FileMetaBlob> getFiles1() {
1687        return files1;
1688    }
1689
1690    public void setFiles1(List<FileMetaBlob> files1) {
1691        this.files1 = files1;
1692    }
1693
1694    public List<FileMetaBlob> getFiles2() {
1695        return files2;
1696    }
1697
1698    public void setFiles2(List<FileMetaBlob> files2) {
1699        this.files2 = files2;
1700    }
1701
1702    public List<FileMetaBlob> getFiles3() {
1703        return files3;
1704    }
1705
1706    public void setFiles3(List<FileMetaBlob> files3) {
1707        this.files3 = files3;
1708    }
1709
1710    public String getEncryptedValue(String value) {
1711        try {
1712            return CoreApiServiceLocator.getEncryptionService().encrypt(value);
1713        } catch (GeneralSecurityException gse) {
1714            // Fail silently
1715        }
1716
1717        return StringUtils.EMPTY;
1718    }
1719
1720    public UITestObject getUiTestObject1() {
1721        return uiTestObject1;
1722    }
1723
1724    public void setUiTestObject1(UITestObject uiTestObject1) {
1725        this.uiTestObject1 = uiTestObject1;
1726    }
1727
1728    public UITestObject getUiTestObject2() {
1729        return uiTestObject2;
1730    }
1731
1732    public void setUiTestObject2(UITestObject uiTestObject2) {
1733        this.uiTestObject2 = uiTestObject2;
1734    }
1735}