source: EDIS/trunk/java/tracking-ui-core/src/main/flex/gov/va/med/edp/factory/SessionFactory.as@ 1227

Last change on this file since 1227 was 1227, checked in by George Lilly, 13 years ago

initial load of EDIS 1.0

File size: 3.4 KB
Line 
1/* SessionFactory.as */
2
3package gov.va.med.edp.factory
4{
5 import gov.va.med.edp.util.Vista;
6 import gov.va.med.edp.vo.LookupStringVO;
7 import gov.va.med.edp.vo.LookupVO;
8 import gov.va.med.edp.vo.SessionVO;
9
10 import mx.collections.ArrayCollection;
11
12 public class SessionFactory
13 {
14 /*
15 expects XML node:
16 <anyRoot>
17 <user duz="99" site="99" siteNm="a name" area="99" areaName="a name" />
18 </anyRoot>
19 */
20 public static function buildSessionFromXML(xml:XML):SessionVO
21 {
22 //since this is the ONLY call that does not get added to the debug tool..tracing xml here for debug mode..
23 trace ("Session XML\n" + xml);
24 var sessionVO:SessionVO = new SessionVO();
25 sessionVO.duz = xml.user[0].@duz;
26 sessionVO.site = xml.user[0].@station;
27 sessionVO.siteName = xml.user[0].@siteNm;
28 sessionVO.area = xml.user[0].@area;
29 sessionVO.areaName = xml.user[0].@areaNm;
30 sessionVO.baseTime = new Date();
31 sessionVO.siteTimeFM = xml.user[0].@time;
32 sessionVO.siteTime = Vista.FMtoDate(sessionVO.siteTimeFM);
33
34 var timeOut:int = xml.user[0].@timeOut;
35 if (timeOut > 0) sessionVO.timeOut = timeOut;
36 var countDown:int = xml.user[0].@countDown;
37 if (countDown > 0) sessionVO.countDown = countDown;
38
39 sessionVO.canExport = (xml.user[0].@rptExport == "1")
40 sessionVO.showProviderReport = (xml.user[0].@rptProvider == "1");
41 sessionVO.showPatientCrossReferenceReport = (xml.user[0].@rptXRef == "1");
42 sessionVO.debugEnabled = (xml.user[0].@progMode == "1");
43
44 sessionVO.serverPackageVersion = xml.user[0].@version;
45
46 return sessionVO;
47 }
48
49 /*
50 expects XML node: <anyNode data="internalID" label="externalName" />
51 */
52 public static function buildLookupItemFromXML(xml:XML):LookupVO
53 {
54 var lookupVO:LookupVO = new LookupVO();
55 lookupVO.data = Number(xml.@data);
56 lookupVO.label = xml.@label;
57 lookupVO.abbr = xml.@abbr;
58 return lookupVO;
59 }
60
61 /*
62 expects xml to be:
63 <anyRoot>
64 <anyNode data="internalID" label="externalName" />
65 <anyNode data="internalID" label="externalName" />
66 ...
67 </anyRoot>
68 */
69
70 public static function buildLookupListFromXML(nodeList: XMLList): ArrayCollection
71 {
72 var lookupList:ArrayCollection = new ArrayCollection();
73 for each (var item: XML in nodeList) {
74 var lookupVO:LookupVO = buildLookupItemFromXML(item);
75 lookupList.addItem(lookupVO);
76 }
77 return lookupList;
78 }
79
80 public static function buildLookupStringListFromXML(nodeList: XMLList): ArrayCollection
81 {
82 var list: ArrayCollection = new ArrayCollection();
83 for each (var item: XML in nodeList) {
84 var lookupStringVO: LookupStringVO = new LookupStringVO();
85 lookupStringVO.data = item.@data;
86 lookupStringVO.label = item.@label;
87 lookupStringVO.reference = item.@ref;
88 list.addItem(lookupStringVO);
89 }
90 return list;
91 }
92 }
93}
Note: See TracBrowser for help on using the repository browser.