[1227] | 1 | /* SessionFactory.as */
|
---|
| 2 |
|
---|
| 3 | package 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 | }
|
---|