5. EPMO Open Source Coordination Office Redaction File Detail Report

Produced by Araxis Merge on 4/4/2019 2:57:42 PM Central Daylight Time. See www.araxis.com for information about Merge. This report uses XHTML and CSS2, and is best viewed with a modern standards-compliant browser. For optimum results when printing this report, use landscape orientation and enable printing of background images and colours in your browser.

5.1 Files compared

# Location File Last Modified
1 C:\AraxisMergeCompare\Pri_un\VHIE_VDIF\RegistryHub\CustomClasses HS.Local.VA.HS.Registry.Setup.cls Tue Apr 2 18:50:40 2019 UTC
2 C:\AraxisMergeCompare\Pri_re\eHealth Exchange Enhancements Phase 2-redacted\VHIE_VDIF\RegistryHub\CustomClasses HS.Local.VA.HS.Registry.Setup.cls Thu Apr 4 17:44:18 2019 UTC

5.2 Comparison summary

Description Between
Files 1 and 2
Text Blocks Lines
Unchanged 3 1548
Changed 2 6
Inserted 0 0
Removed 0 0

5.3 Comparison options

Whitespace
Character case Differences in character case are significant
Line endings Differences in line endings (CR and LF characters) are ignored
CR/LF characters Not shown in the comparison detail

5.4 Active regular expressions

No regular expressions were active.

5.5 Comparison detail

  1   Include HS .Common
  2  
  3   /// PREREQ
  4   /// 
  5   ///   1. H ealthShare  kit insta lled
  6   ///   2. C ustom clas ses are lo aded and c ompiled in to HSCUSTO M
  7   ///   3. C ustom XSLT  is copied  into appr opriate lo cations
  8   /// 
  9   /// INSTAL L
  10   /// 
  11   ///   zn " HSCUSTOM"
  12   ///   Do # #class(Cus tom.Regsit rySetup).I nstall()
  13   /// 
  14   /// UNINST ALL
  15   /// 
  16   ///   zn " HSLIB"
  17   ///   Do # #class(HS. Util.Insta ller).UnIn stallAll()
  18   /// 
  19   Class HS.L ocal.VA.HS .Registry. Setup Exte nds %Regis teredObjec t
  20   {
  21  
  22   ClassMetho d Install( )
  23   {
  24           Tr y {
  25                    Do . .Validate( )
  26                    Do . .BaseSyste m()
  27                    Do . .MapCustom Package()
  28                    Do . .CodedEntr ies()
  29                    Do . .InfoTypes ()
  30                    Do . .OIDs()
  31                    Do . .ConfigReg istry()
  32                    Do . .FacilityR egistry()
  33                    Do . .ServiceRe gistry()
  34                    Do . .XMLSummar y()
  35                    Do . .Delivery( )
  36                    Do . .Productio ns()
  37           }
  38           Ca tch ex {
  39                    Do e x.OutputTo Device()
  40           }
  41   }
  42  
  43   /// Instal l a base H S environm ent
  44   /// 
  45   ClassMetho d BaseSyst em()
  46   {
  47           If  $$$WriteP rog Write  !,"HS.Loca l.VA.HS.Re gistry.Set up:BaseSys tem - Inst alling Hea lthShare"
  48  
  49           Se t options( "HubAuditP roduction" )=1
  50           Se t options( "OnDemand" )=1
  51           Se t options( "Push")=1
  52           Se t options( "Trace")=1
  53           Se t options( "XDSb.Push ")=1
  54           Se t options( "XDSb.Regi stry")=1
  55           Se t options( "XDSb.Repo sitory")=1
  56           $$ $ThrowOnEr ror(##clas s(HS.Local .VA.HS.Reg istry.Inst aller).Ins tall(.opti ons))
  57  
  58           If  $$$WriteP rog Write  !,"HS.Loca l.VA.HS.Re gistry.Set up:BaseSys tem - succ ess"
  59   }
  60  
  61   /// Run af ter HS any  gateway i nstall to  ensure cus tom code i s visible  to all com ponents
  62   /// 
  63   ClassMetho d MapCusto mPackage()
  64   {
  65           If  $$$WriteP rog Write  !,"HS.Loca l.VA.HS.Re gistry.Set up:MapCust omPackage  - Mapping  custom pac kage to al l gateways "
  66  
  67           Ne w $namespa ce
  68           Se t $namespa ce = "HSCU STOM"
  69           Se t ns="" Fo r { Set ns =$o(^%SYS( "HealthSha re","Insta nces",ns))  Quit:ns=" "
  70                    If $ $$WritePro g Write !, ?4,ns
  71                    Do # #class(HS. Util.Syste mAPI).AddC lassMappin gs(ns,"Cus tom","HSCU STOM")
  72                    Do # #class(HS. Util.Syste mAPI).Acti vateConfig uration(ns )
  73           }
  74  
  75           If  $$$WriteP rog Write  !,"HS.Loca l.VA.HS.Re gistry.Set up:MapCust omPackage  - success"
  76   }
  77  
  78   /// Setup  coded entr ies requir ed by XDS  registry m etadata va lidation
  79   ///  
  80   ClassMetho d CodedEnt ries()
  81   {
  82           If  $$$WriteP rog Write  !,"HS.Loca l.VA.HS.Re gistry.Set up:CodedEn tries - ad ding LOINC  codes for  XDS"
  83  
  84           Ne w $namespa ce
  85           Se t $namespa ce = "HSRE GISTRY"
  86  
  87           #;  LOINC cod es
  88           Se t oid = "2 .16.840.1. 113883.6.1 "
  89           Se t codes("3 4133-9") =  "Patient  Summary"
  90           Se t codes("1 1506-3") =  "Encounte r Summary"
  91           Se t codes("2 8570-0") =  "Provider -Unspecifi ed Procedu re Note"
  92           Se t codes("1 1488-4") =  "Consult  Note"
  93           Se t codes("1 8842-5") =  "Discharg e Summary"
  94           Se t codes("3 4117-2") =  "History  and Physic al"
  95           Se t codes("2 7898-6") =  "Patholog y Study"
  96           Se t codes("1 8733-6") =  "Progress  Note"
  97           Se t codes("1 8733-6") =  "Progress  Note"
  98           Se t codes("1 8726-0") =  "Radiolog y Study"
  99           Se t codes("2 9752-3") =  "Perioper ative Repo rt"
  100           Fo r type = " contentTyp eCode","cl assCode"," typeCode"  {
  101                    If $ $$WritePro g Write !, ?4,type
  102                    Set  code="" Fo r { Set co de = $O(co des(code), 1,desc) Qu it:code=""
  103                             If $$$ WriteProg  Write !,?8 ,oid," ",c ode," ",de sc
  104                             $$$Thr owOnError( ##class(HS .IHE.Coded Entry).Cre ate(type,o id,code,de sc))  
  105                    }
  106           }
  107           
  108           If  $$$WriteP rog Write  !,"HS.Loca l.VA.HS.Re gistry.Set up:CodedEn tries - su ccess"
  109   }
  110  
  111   /// Prepop ulate "see n" documen t subtypes  so they c an be spec ified in p ush filter
  112   /// 
  113   ClassMetho d InfoType s()
  114   {
  115           Ne w $namespa ce
  116           Se t $namespa ce = "HSRE GISTRY"
  117           
  118           If  $$$WriteP rog Write  !,"HS.Loca l.VA.HS.Re gistry.Set up:InfoTyp es - addin g document  types"
  119           
  120           #;  document  type codes  used for  push
  121           Fo r type="CP ","CR","DS ","HP","LR ","PN","RA ","SR","PR OGRESS NOT E" {
  122                    If $ $$WritePro g Write !, ?4,"DOC.", type
  123                    Set  ^HS.InfoTy pesSub("DO C."_type)= ""
  124           }
  125           
  126           If  $$$WriteP rog Write  !,"HS.Loca l.VA.HS.Re gistry.Set up:InfoTyp es - succe ss"
  127   }
  128  
  129   /// Setup  OIDs
  130   /// 
  131   ClassMetho d OIDs()
  132   {
  133           Ne w $namespa ce
  134           Se t $namespa ce = "HSRE GISTRY"
  135           
  136           If  $$$WriteP rog Write  !,"HS.Loca l.VA.HS.Re gistry.Set up:OIDs -  adding OID s"
  137  
  138           If  $$$WriteP rog Write  !,?4,"USVH A - 2.16.8 40.1.11388 3.4.349"
  139           $$ $ThrowOnEr ror(##clas s(HS.Data. OIDMap).Fi leOID("USV HA","CodeS ystem","2. 16.840.1.1 13883.4.34 9","Depart ment of Ve terans Aff airs","Ass igningAuth ority"))
  140  
  141           If  $$$WriteP rog Write  !,?4,"VA -  2.16.840. 1.113883.4 .349.1"
  142           $$ $ThrowOnEr ror(##clas s(HS.Data. OIDMap).Fi leOID("VA" ,"HomeComm unity","2. 16.840.1.1 13883.4.34 9.1","Depa rtment of  Veterans A ffairs","A ssigningAu thority"))
  143           
  144           ;  need to ad d OIDs for  each Edge .  Modify  below line s to accom odate Edge s connecte d to your  Access Gat eway
  145           If  $$$WriteP rog Write  !,"HS.Loca l.VA.HS.Re gistry.Set up:OIDs -  adding OID s for each  Edge"
  146           If  $$$WriteP rog Write  !,?4,"Edge s - 1.2.99 99999"
  147           $$ $ThrowOnEr ror(##clas s(HS.Data. OIDMap).Fi leOID("983 ","Facilit y","2.16.8 40.1.11388 3.4.349.98 3","Cheyen ne Veteran s Affairs  Hospital", "Assigning Authority" ))
  148           $$ $ThrowOnEr ror(##clas s(HS.Data. OIDMap).Fi leOID("984 ","Facilit y","2.16.8 40.1.11388 3.4.349.98 4","Dayton  Veterans  Affairs Ho spital","A ssigningAu thority"))
  149           
  150           ;  OIDs for o ur reposit ories.
  151           $$ $ThrowOnEr ror(##clas s(HS.Data. OIDMap).Fi leOID("HSA CCCDA", "R epository" , "2.16.84 0.1.113883 .4.349.1.1 ", "On-Dem and Reposi tory"))
  152           $$ $ThrowOnEr ror(##clas s(HS.Data. OIDMap).Fi leOID("HSR EPOSITORY" , "Reposit ory", "2.1 6.840.1.11 3883.4.349 .1.2", "St able Repos itory"))
  153           
  154           If  $$$WriteP rog Write  !,"HS.Loca l.VA.HS.Re gistry.Set up:OIDs -  success"
  155   }
  156  
  157   /// Setup  configurat ion regist ry items
  158   /// 
  159   ClassMetho d ConfigRe gistry()
  160   {
  161           Ne w $namespa ce
  162           Se t $namespa ce = "HSRE GISTRY"
  163           
  164           If  $$$WriteP rog Write  !,"HS.Loca l.VA.HS.Re gistry.Set up:ConfigR egistry -  updating c onfigurati on registr y"
  165  
  166           #;  IHE domai
  167           Se t data("\I HE\Affinit yDomain")  = "VA"
  168           Se t data("\I HE\HomeCom munity") =  "VA"
  169  
  170           #;  used by C DA transfo rms to pop ulate cust odian
  171           Se t data("\G eneral\IHE Version")  = "1"
  172           Se t data("\H omeCommuni ty\Address \City") =  "Washingto n"
  173           Se t data("\H omeCommuni ty\Address \Country")  = "USA"
  174           Se t data("\H omeCommuni ty\Address \State") =  "DC"
  175           Se t data("\H omeCommuni ty\Address \StreetLin e1") = "81 0 Vermont  Avenue, NW "
  176           Se t data("\H omeCommuni ty\Address \Zip") = " 20420"
  177           Se t data("\H omeCommuni ty\Telecom \Workphone ") = "(123 ) 456-7890 "
  178           
  179           #;  TODO - wh at should  this be fo r the VA p atient/enc ounter doc , the C62  does not u se it
  180           Se t data("\L egalAuthen ticator\Ad dress\City ") = "Wash ington"
  181           Se t data("\L egalAuthen ticator\Ad dress\Coun try") = "U SA"
  182           Se t data("\L egalAuthen ticator\Ad dress\Stat e") = "DC"
  183           Se t data("\L egalAuthen ticator\Ad dress\Stre etLine1")  = "810 Ver mont Avenu e, NW"
  184           Se t data("\L egalAuthen ticator\Ad dress\Zip" ) = "20420 "
  185           Se t data("\L egalAuthen ticator\Na me\Family" ) = "Inter Systems"
  186           Se t data("\L egalAuthen ticator\Na me\Given")  = "Health Share"
  187           Se t data("\L egalAuthen ticator\Te lecom\Work phone") =  "(123) 456 -7890"
  188           
  189           Se t key="" F or { Set k ey = $o(da ta(key),1, value) Qui t:key=""
  190                    If $ $$WritePro g Write !, ?4,key," =  ",value
  191                    $$$T hrowOnErro r(##class( HS.Registr y.Config). AddUpdateK eyValue(ke y,value))
  192           }
  193  
  194           If  $$$WriteP rog Write  !,"HS.Loca l.VA.HS.Re gistry.Set up:ConfigR egistry -  success"
  195   }
  196  
  197   /// Setup  Facilties
  198   /// 
  199   ClassMetho d Facility Registry()
  200   {
  201           ne w $namespa ce
  202           se t $namespa ce = "HSRE GISTRY"
  203           
  204           If  $$$WriteP rog Write  !,"HS.Loca l.VA.HS.Re gistry.Set up:Faciilt yRegistry  - start"
  205           
  206           se t fr = ##c lass(HS.Fa cility.Con fig).%New( )
  207           se t fr.Facil ityCode =  "EF"
  208           se t fr.Name  = "EF"
  209           se t fr.Descr iption = " Enterprise  Facility"
  210           se t fr.Tier  = "1"
  211           $$ $ThrowOnEr ror(fr.%Sa ve())
  212           If  $$$WriteP rog Write  !,"HS.Loca l.VA.HS.Re gistry.Set up:Service Registry -  success"
  213   }
  214  
  215   /// Setup  service Re gistry
  216   /// 
  217   ClassMetho d ServiceR egistry()
  218   {
  219           Ne w $namespa ce
  220           Se t $namespa ce = "HSRE GISTRY"
  221           
  222           If  $$$WriteP rog Write  !,"HS.Loca l.VA.HS.Re gistry.Set up:Service Registry -  start"
  223  
  224           #;  HS.Util.I nstaller.K it.IHE.XDS b.Registry  marks the  wrong ser vice as th e XDSb.Que ry device,
  225           #;  which is  interferin g with the  "End Poin t" drop do wn in push  system de livery pol icy setup
  226           #d im service  as HS.Reg istry.Serv ice.SOAP
  227           If  $$$WriteP rog Write  !,?4,"Fixi ng XDSb.Re gistry ser vice..."
  228           Se t service  = ##class( HS.Registr y.Service. SOAP).EndP ointForNam eType("XDS b.Registry ","SOAP",. sc) $$$Thr owOnError( sc)
  229           Se t service. DeviceFunc tion = ""
  230           Se t service. Push = 1
  231           $$ $ThrowOnEr ror(servic e.%Save())
  232           If  $$$WriteP rog Write  !,?4,"Fixi ng XDSb.Qu ery servic e..."
  233           Se t service  = ##class( HS.Registr y.Service. SOAP).EndP ointForNam eType("XDS b.Query"," SOAP",.sc)  $$$ThrowO nError(sc)
  234           Se t service. DeviceFunc tion = "XD Sb.Query"
  235           Se t service. Push = 0
  236           $$ $ThrowOnEr ror(servic e.%Save())
  237           
  238           se t service  = ##class( HS.Registr y.Service. SOAP).%New ()
  239           se t service. Name = "MV I.PDQv3.Co nsumer"
  240           se t service. Host = "MO CK-HOST"
  241           se t service. Port = "80 82"
  242           se t service. URL = "/ps im_webserv ice/IdMWeb Service"
  243           SE T service. SOAPVersio n = "1.1"
  244           $$ $ThrowOnEr ror(servic e.%Save())         
  245           
  246           se t service  = ##class( HS.Registr y.Service. SOAP).%New ()
  247           se t service. Name = "VA .ESR"
  248           se t service. Host = "MO CK-HOST"
  249           se t service. Port = "80 81"
  250           se t service. URL = "/es r-ws/sprin g-ws/getEE Summary/ee Summary"
  251           SE T service. SOAPVersio n = "1.1"
  252           $$ $ThrowOnEr ror(servic e.%Save())
  253  
  254           se t service  = ##class( HS.Registr y.Service. SOAP).%New ()
  255           se t service. Name = "VA .CTService "
  256           se t service. Host = "MO CK-HOST"
  257           se t service. Port = "80 84"
  258           se t service. URL = "/st s.webservi ce/ctServi ce"
  259           se t service. SOAPVersio n = "1.1"
  260           $$ $ThrowOnEr ror(servic e.%Save())
  261  
  262           If  $$$WriteP rog Write  "OK"
  263  
  264           If  $$$WriteP rog Write  !,"HS.Loca l.VA.HS.Re gistry.Set up:Service Registry -  success"
  265   }
  266  
  267   /// Setup  XML Summar ies
  268   /// 
  269   ClassMetho d XMLSumma ry()
  270   {
  271           Ne w $namespa ce
  272           Se t $namespa ce = "HSRE GISTRY"
  273           
  274           If  $$$WriteP rog Write  !,"HS.Loca l.VA.HS.Re gistry.Set up:XMLSumm ary - addi ng XML sum maries"
  275  
  276           Se t items($i (items),"C ode") = "Z -CCDA-Pati ent"
  277           Se t items(it ems,"Descr iption") =  "VA Custo m Patient  Summary (C CDA)"
  278           Se t items(it ems,"SDAVe rsion") =  3
  279           Se t items(it ems,"Forma tCode") =  "urn:hl7-o rg:sdwg:cc da-structu redBody:1. 1"
  280           Se t items(it ems,"Forma tScheme")  = "1.3.6.1 .4.1.19376 .1.2.3"
  281           Se t items(it ems,"Secti onTypes")  = $LB("PAT ","ADV","A LG","APT", "DXG","ENC ","PRB","H IS","LAB", "OBS","RAD ","PRC","P EX","MED", "VXU","DOC ")
  282           
  283           Se t items($i (items),"C ode") = "Z -CCDA-Enco unter"
  284           Se t items(it ems,"Descr iption") =  "VA Custo m Encounte r Summary  (CCDA)"
  285           Se t items(it ems,"SDAVe rsion") =  3
  286           Se t items(it ems,"Forma tCode") =  "urn:hl7-o rg:sdwg:cc da-structu redBody:2. 1"
  287           Se t items(it ems,"Forma tScheme")  = "1.3.6.1 .4.1.19376 .1.2.3"
  288           Se t items(it ems,"Secti onTypes")  = $LB("PAT ","ADV","A LG","APT", "DXG","ENC ","PRB","H IS","LAB", "OBS","RAD ","PRC","P EX","MED", "VXU","DOC ")
  289  
  290           Se t items($i (items),"C ode") = "Z -C62"
  291           Se t items(it ems,"Descr iption") =  "VA Custo m Unstruct ured Docum ent (C62)"
  292           Se t items(it ems,"SDAVe rsion") =  3
  293           Se t items(it ems,"Forma tCode") =  "urn:ihe:i ti:xds-sd: text:2008"
  294           Se t items(it ems,"Forma tScheme")  = "1.3.6.1 .4.1.19376 .1.2.3"
  295           Se t items(it ems,"Secti onTypes")  = $LB("PAT ","ENC","D OC")
  296           
  297           Se t items($i (items),"C ode") = "Z -VA-CCDAv2 1-CCD"
  298           Se t items(it ems,"Descr iption") =  "VA Custo m Patient  Summary (C CDA) v2.1"
  299           Se t items(it ems,"SDAVe rsion") =  3
  300           Se t items(it ems,"Forma tCode") =  "urn:hl7-o rg:sdwg:cc da-structu redBody:2. 1"
  301           Se t items(it ems,"Forma tScheme")  = "1.3.6.1 .4.1.19376 .1.2.3"
  302           Se t items(it ems,"Secti onTypes")  = $LB("PAT ","ADV","A LG","APT", "DXG","ENC ","PRB","H IS","LAB", "OBS","RAD ","PRC","P EX","MED", "VXU","DOC ")
  303           
  304           Se t items($i (items),"C ode") = "Z -C32v25"
  305           Se t items(it ems,"Descr iption") =  "VA Custo m Continui ty of Care  Document  (CCD, HITS P C32)"
  306           Se t items(it ems,"SDAVe rsion") =  3
  307           Se t items(it ems,"Forma tCode") =  "urn:ihe:p cc:xphr:20 07"
  308           Se t items(it ems,"Forma tScheme")  = "IHE PCC "
  309           Se t items(it ems,"Secti onTypes")  = $LB("PAT ","ALG","E NC","PRB", "LAB","OBS ","PRC","M ED","VXU", "DOC")
  310           
  311           Se t items($i (items),"C ode") = "Z -MHV-CCDA- CCD"
  312           Se t items(it ems,"Descr iption") =  "VA Custo m MyHealth  eVet Cust om Patient  Summary ( CCDA)"
  313           Se t items(it ems,"SDAVe rsion") =  3
  314           Se t items(it ems,"Forma tCode") =  "urn:hl7-o rg:sdwg:cc da-structu redBody:1. 1"
  315           Se t items(it ems,"Forma tScheme")  = "1.3.6.1 .4.1.19376 .1.2.3"
  316           Se t items(it ems,"Secti onTypes")  = $LB("PAT ","ADV","A LG","APT", "DXG","ENC ","PRB","H IS","LAB", "OBS","RAD ","PRC","P EX","MED", "VXU","DOC ")
  317           
  318           Se t items($i (items),"C ode") = "Z -MHV-CCDAv 21-CCD"
  319           Se t items(it ems,"Descr iption") =  "VA Custo m MyHealth  eVet Cust om Patient  Summary ( CCDA) v2.1 "
  320           Se t items(it ems,"SDAVe rsion") =  3
  321           Se t items(it ems,"Forma tCode") =  "urn:hl7-o rg:sdwg:cc da-structu redBody:2. 1"
  322           Se t items(it ems,"Forma tScheme")  = "1.3.6.1 .4.1.19376 .1.2.3"
  323           Se t items(it ems,"Secti onTypes")  = $LB("PAT ","ADV","A LG","APT", "DXG","ENC ","PRB","H IS","LAB", "OBS","RAD ","PRC","P EX","MED", "VXU","DOC ")
  324           
  325           Fo r i = 1:1: items {
  326                    If $ $$WritePro g Write !, ?4,items(i ,"Code")
  327                    Set  item = ##c lass(HS.Re ports.Pati ent.XMLSum maryType). %New()
  328                    Set  item.Code  = $G(items (i,"Code") )
  329                    Set  item.Descr iption = $ G(items(i, "Descripti on"))
  330                    Set  item.Resou rceRequire d = $G(ite ms(i,"Reso urceRequir ed"))
  331                    Set  item.SDAVe rsion = $G (items(i," SDAVersion "))
  332                    Set  item.Forma tCode = $G (items(i," FormatCode "))
  333                    Set  item.Forma tScheme =  $G(items(i ,"FormatSc heme"))
  334                    For  j=1:1:$LL( items(i,"S ectionType s")) { 
  335                             Do ite m.SectionT ypes.Inser t($LI(item s(i,"Secti onTypes"), j))
  336                    }
  337                    $$$T hrowOnErro r(##class( HS.Util.Hu bServices) .InvokeHub Service("H S.Hub.HSWS .WebServic es","HS.Hu b.HSWS.Web ServicesCl ient","Add EditXMLSum maryType", .sc,item))
  338                    $$$T hrowOnErro r(sc)
  339           }
  340           
  341           If  $$$WriteP rog Write  !,"HS.Loca l.VA.HS.Re gistry.Set up:XMLSumm ary - succ ess"
  342   }
  343  
  344   /// Setup  delivery f or on-dema nds
  345   /// 
  346   ClassMetho d Delivery ()
  347   {
  348           Ne w $namespa ce
  349           Se t $namespa ce = "HSRE GISTRY"
  350           
  351           Do  ##class(H S.Push.Sub scription. SystemPoli cy).%Delet eExtent()
  352           Do  ##class(H S.Push.Del ivery.Syst emPolicy). %DeleteExt ent()
  353           Do  ##class(H S.Push.Reg istry.Reci pient).%De leteExtent ()
  354           Do  ##class(H S.Push.Del iveryOptio n).%Delete Extent()
  355           Do  ##class(H S.Push.Tra nsformatio n).%Delete Extent()
  356           
  357           If  $$$WriteP rog Write  !,"HS.Loca l.VA.HS.Re gistry.Set up:XMLSumm ary - star t"
  358           
  359           If  $$$WriteP rog Write  !,?4,"Push  Transform s"
  360           
  361           Se t transfor m = ##clas s(HS.Push. WebService s.Containe rs.Transfo rmation).% New()
  362           Se t transfor m.Name                 = "CCDA P atient Sum mary"
  363           Se t transfor m.ContentS cope        = "MPI"
  364           Se t transfor m.Transfor mationType  = "XSLT"
  365           Se t transfor m.XSLTFile Spec        = "Z-CCDA -Patient"
  366           Se t txPatien tCCDA = $$ addTransfo rm(transfo rm)
  367           
  368           ;  Add for ea ch on-dema nd documen t format y ou need
  369           Se t transfor m = ##clas s(HS.Push. WebService s.Containe rs.Transfo rmation).% New()
  370           Se t transfor m.Name                 = "CCDA v 2.1 Patien t Summary"
  371           Se t transfor m.ContentS cope        = "MPI"
  372           Se t transfor m.Transfor mationType  = "XSLT"
  373           Se t transfor m.XSLTFile Spec        = "Z-VA-C CDAv21-CCD "
  374           Se t txPatien tCCDA21 =  $$addTrans form(trans form)
  375           
  376           Se t transfor m = ##clas s(HS.Push. WebService s.Containe rs.Transfo rmation).% New()
  377           Se t transfor m.Name                 = "MHV CC DA Patient  Summary"
  378           Se t transfor m.ContentS cope        = "MPI"
  379           Se t transfor m.Transfor mationType  = "XSLT"
  380           Se t transfor m.XSLTFile Spec        = "Z-MHV- CCDA-CCD"
  381           Se t txPatien tMHVCCDA =  $$addTran sform(tran sform)
  382           
  383           Se t transfor m = ##clas s(HS.Push. WebService s.Containe rs.Transfo rmation).% New()
  384           Se t transfor m.Name                 = "MHV CC DA v2.1 Pa tient Summ ary"
  385           Se t transfor m.ContentS cope        = "MPI"
  386           Se t transfor m.Transfor mationType  = "XSLT"
  387           Se t transfor m.XSLTFile Spec        = "Z-MHV- CCDAv21-CC D"
  388           Se t txPatien tMHVCCDA21  = $$addTr ansform(tr ansform)
  389           
  390           Se t transfor m = ##clas s(HS.Push. WebService s.Containe rs.Transfo rmation).% New()
  391           Se t transfor m.Name                 = "C32 Pa tient Summ ary"
  392           Se t transfor m.ContentS cope        = "MPI"
  393           Se t transfor m.Transfor mationType  = "XSLT"
  394           Se t transfor m.XSLTFile Spec        = "Z-C32v 25"
  395           Se t txPatien tC32 = $$a ddTransfor m(transfor m)
  396           
  397           Se t transfor m = ##clas s(HS.Push. WebService s.Containe rs.Transfo rmation).% New()
  398           Se t transfor m.Name                 = "CCDA E ncounter S ummary"
  399           Se t transfor m.ContentS cope        = "Enc"
  400           Se t transfor m.Transfor mationType  = "XSLT"
  401           Se t transfor m.XSLTFile Spec        = "Z-CCDA -Encounter "
  402           Se t txEncoun ter = $$ad dTransform (transform )
  403           
  404           Se t transfor m = ##clas s(HS.Push. WebService s.Containe rs.Transfo rmation).% New()
  405           Se t transfor m.Name                 = "C62 Un structured  Document"
  406           Se t transfor m.ContentS cope        = "Enc"
  407           Se t transfor m.Transfor mationType  = "XSLT"
  408           Se t transfor m.XSLTFile Spec        = "Z-C62"
  409           Se t txDocume nt = $$add Transform( transform)
  410           
  411           If  $$$WriteP rog Write  !,?4,"Deli very Optio ns"
  412           
  413           Se t option =  ##class(H S.Push.Web Services.C ontainers. DeliveryOp tion).%New ()
  414           Se t option.N ame               = " XDSb OnDem and"
  415           Se t option.D eliveryTyp e      = " XDSb.OnDem and"
  416           Se t option.D eliveryOpe ration = " HS.IHE.XDS b.Push.Ope rations"
  417           Se t optOnDem and = $$ad dOption(op tion)
  418  
  419           If  $$$WriteP rog Write  !,?4,"Rece iving Syst em"
  420           
  421           Se t system =  ##class(H S.Push.Web Services.C ontainers. Recipient) .%New()
  422           Se t system.N ame         = "Defaul t"
  423           Se t system.D escription  = "Intern al push (e .g. XDSb o n-demand r egistratio n)"
  424           Se t system.A ctive       = 1
  425           Se t sysDefau lt = $$add System(sys tem)
  426           
  427           Se t policy =  ##class(H S.Push.Web Services.C ontainers. DeliveryPo licy).%New ()
  428           Se t policy.R ecipientTy pe  = "sys tem"
  429           Se t policy.R egistryId      = sysD efault
  430           Se t policy.N ame            = "Reg ister OnDe mand"
  431           Se t policy.D eliveryOpt ion = optO nDemand
  432           Se t policy.T ransformat ion = txPa tientCCDA2 1
  433           ;S et policy. AccessGate way  = ..g etGatewayI D("HSACCES S")
  434           Se t policy.E ndPoint        = ..ge tServiceID ("XDSb.Reg istry")
  435           Se t polOnDem and = $$ad dPolicy(po licy)
  436           
  437           Se t subscrip tion = ##c lass(HS.Pu sh.WebServ ices.Conta iners.Subs criptionPo licy).%New ()
  438           Se t subscrip tion.Recip ientType      = "syst em"
  439           Se t subscrip tion.Regis tryId         = sysDe fault
  440           Se t subscrip tion.Name                = "OnDe mand Patie nt Summary "
  441           Se t subscrip tion.Subsc riptionBas is = "A"   //All
  442           Se t subscrip tion.Deliv eryPolicy     = polOn Demand
  443           Se t subscrip tion.Trans formation     = txPat ientCCDA
  444           Se t subscrip tion.Subje ct            = "Pati ent Summar y"
  445           Se t subscrip tion.Effec tiveDate      = +$H
  446           Se t subscrip tion.Expir ationDate     = ""
  447           Se t subPatie nt = $$add Subscripti on(subscri ption)
  448           
  449           ;  add subscr iption for  each regi stered doc ument/form at
  450           Se t subscrip tion = ##c lass(HS.Pu sh.WebServ ices.Conta iners.Subs criptionPo licy).%New ()
  451           Se t subscrip tion.Recip ientType      = "syst em"
  452           Se t subscrip tion.Regis tryId         = sysDe fault
  453           Se t subscrip tion.Name                = "OnDe mand v2.1  Patient Su mmary"
  454           Se t subscrip tion.Subsc riptionBas is = "A"   //All
  455           Se t subscrip tion.Deliv eryPolicy     = polOn Demand
  456           Se t subscrip tion.Trans formation     = txPat ientCCDA21
  457           Se t subscrip tion.Subje ct            = "Pati ent Summar y 2.1"
  458           Se t subscrip tion.Effec tiveDate      = +$H
  459           Se t subscrip tion.Expir ationDate     = ""
  460           Se t subPatie nt = $$add Subscripti on(subscri ption)
  461           
  462           ;S et subscri ption = ## class(HS.P ush.WebSer vices.Cont ainers.Sub scriptionP olicy).%Ne w()
  463           ;S et subscri ption.Reci pientType      = "sys tem"
  464           ;S et subscri ption.Regi stryId         = sysD efault
  465           ;S et subscri ption.Name                = "MHV  OnDemand  Patient Su mmary"
  466           ;S et subscri ption.Subs criptionBa sis = "A"   //All
  467           ;S et subscri ption.Deli veryPolicy     = polO nDemand
  468           ;S et subscri ption.Tran sformation     = txPa tientMHVCC DA
  469           ;S et subscri ption.Subj ect            = "MHV  Patient S ummary"
  470           ;S et subscri ption.Effe ctiveDate      = +$H
  471           ;S et subscri ption.Expi rationDate     = ""
  472           ;S et subPati ent = $$ad dSubscript ion(subscr iption)
  473           
  474           ;S et subscri ption = ## class(HS.P ush.WebSer vices.Cont ainers.Sub scriptionP olicy).%Ne w()
  475           ;S et subscri ption.Reci pientType      = "sys tem"
  476           ;S et subscri ption.Regi stryId         = sysD efault
  477           ;S et subscri ption.Name                = "MHV  OnDemand  v2.1 Patie nt Summary "
  478           ;S et subscri ption.Subs criptionBa sis = "A"   //All
  479           ;S et subscri ption.Deli veryPolicy     = polO nDemand
  480           ;S et subscri ption.Tran sformation     = txPa tientMHVCC DA21
  481           ;S et subscri ption.Subj ect            = "MHV  Patient S ummary 2.1 "
  482           ;S et subscri ption.Effe ctiveDate      = +$H
  483           ;S et subscri ption.Expi rationDate     = ""
  484           ;S et subPati ent = $$ad dSubscript ion(subscr iption)
  485           
  486           Se t subscrip tion = ##c lass(HS.Pu sh.WebServ ices.Conta iners.Subs criptionPo licy).%New ()
  487           Se t subscrip tion.Recip ientType      = "syst em"
  488           Se t subscrip tion.Regis tryId         = sysDe fault
  489           Se t subscrip tion.Name                = "OnDe mand Patie nt C32"
  490           Se t subscrip tion.Subsc riptionBas is = "A"   //All
  491           Se t subscrip tion.Deliv eryPolicy     = polOn Demand
  492           Se t subscrip tion.Trans formation     = txPat ientC32
  493           Se t subscrip tion.Subje ct            = "Pati ent Summar y"
  494           Se t subscrip tion.Effec tiveDate      = +$H
  495           Se t subscrip tion.Expir ationDate     = ""
  496           Se t subPatie nt = $$add Subscripti on(subscri ption)
  497  
  498           Se t subscrip tion = ##c lass(HS.Pu sh.WebServ ices.Conta iners.Subs criptionPo licy).%New ()
  499           Se t subscrip tion.Recip ientType      = "syst em"
  500           Se t subscrip tion.Regis tryId         = sysDe fault
  501           Se t subscrip tion.Name                = "OnDe mand Encou nter Summa ry"
  502           Se t subscrip tion.Subsc riptionBas is = "I"   //Info Typ e
  503           Se t subscrip tion.Deliv eryPolicy     = polOn Demand
  504           Se t subscrip tion.Trans formation     = txEnc ounter
  505           Se t subscrip tion.Subje ct            = "Enco unter Summ ary"
  506           Se t subscrip tion.Effec tiveDate      = +$H
  507           Se t subscrip tion.Expir ationDate     = ""
  508           Se t subEncou nter = $$a ddSubscrip tion(subsc ription)
  509           Do  addSearch Terms(subE ncounter,s ubscriptio n.Subscrip tionBasis, $LB("ENC") )
  510  
  511           Se t subscrip tion = ##c lass(HS.Pu sh.WebServ ices.Conta iners.Subs criptionPo licy).%New ()
  512           Se t subscrip tion.Recip ientType      = "syst em"
  513           Se t subscrip tion.Regis tryId         = sysDe fault
  514           Se t subscrip tion.Name                = "OnDe mand Unstr uctured Do cument"
  515           Se t subscrip tion.Subsc riptionBas is = "I"   //Info Typ e
  516           Se t subscrip tion.Deliv eryPolicy     = polOn Demand
  517           Se t subscrip tion.Trans formation     = txDoc ument
  518           Se t subscrip tion.Subje ct            = "Unst ructured D ocument"
  519           Se t subscrip tion.Effec tiveDate      = +$H
  520           Se t subscrip tion.Expir ationDate     = ""
  521           Se t subDocum ent = $$ad dSubscript ion(subscr iption)
  522           Do  addSearch Terms(subD ocument,su bscription .Subscript ionBasis,$ LB("DOC.CP ","DOC.CR" ,"DOC.DS", "DOC.HP"," DOC.LR","D OC.PN","DO C.RA","DOC .SR","DOC. PROGRESS N OTE"))
  523           
  524           
  525           If  $$$WriteP rog Write  !,"HS.Loca l.VA.HS.Re gistry.Set up:XMLSumm ary - succ ess"
  526           Qu it
  527           
  528   addTransfo rm(transfo rm)
  529           If  $$$WriteP rog Write  !,?8,trans form.Name
  530           $$ $ThrowOnEr ror(##clas s(HS.Util. HubService s).InvokeH ubService( "HS.Push.W ebServices ","HS.Push .WebServic esClient", "AddEditTr ansformati on",.respo nse,transf orm))
  531           $$ $ThrowOnEr ror(respon se.Status)
  532           Qu it respons e.ID
  533   addOption( option)
  534           If  $$$WriteP rog Write  !,?8,optio n.Name
  535           $$ $ThrowOnEr ror(##clas s(HS.Util. HubService s).InvokeH ubService( "HS.Push.W ebServices ","HS.Push .WebServic esClient", "AddEditDe liveryOpti on",.respo nse,option ))
  536           $$ $ThrowOnEr ror(respon se.Status)
  537           Qu it respons e.ID
  538   addSystem( system)
  539           If  $$$WriteP rog Write  !,?8,syste m.Name
  540           $$ $ThrowOnEr ror(##clas s(HS.Util. HubService s).InvokeH ubService( "HS.Push.W ebServices ","HS.Push .WebServic esClient", "AddEditRe ceivingSys tem",.resp onse,syste m))
  541           $$ $ThrowOnEr ror(respon se.Status)
  542           Qu it respons e.ID
  543   addPolicy( policy)
  544           If  $$$WriteP rog Write  !,?12,"Del ivery Poli cy: ",poli cy.Name
  545           $$ $ThrowOnEr ror(##clas s(HS.Util. HubService s).InvokeH ubService( "HS.Push.W ebServices ","HS.Push .WebServic esClient", "AddEditDe liveryPoli cy",.respo nse,policy ))
  546           $$ $ThrowOnEr ror(respon se.Status)
  547           Qu it respons e.ID
  548   addSubscri ption(subs cription)
  549           If  $$$WriteP rog Write  !,?12,"Sub scription:  ",subscri ption.Name
  550           $$ $ThrowOnEr ror(##clas s(HS.Util. HubService s).InvokeH ubService( "HS.Push.W ebServices ","HS.Push .WebServic esClient", "AddEditSu bscription Policy",.r esponse,su bscription ))
  551           $$ $ThrowOnEr ror(respon se.Status)
  552           Qu it respons e.ID
  553   addSearchT erms(polic y,basis,li st)
  554           Se t terms =  ##class(HS .Push.WebS ervices.Co ntainers.L istTermIte ms).%New()
  555           Se t terms.Po licyId           = po licy
  556           Se t terms.Su bscription Basis = "I "
  557           Fo r i=1:1:$L L(list) {
  558                    Do t erms.Terms .Insert($L I(list,i))
  559                    If $ $$WritePro g Write !, ?16,"Term:  ",$LI(lis t,i)
  560           }
  561           $$ $ThrowOnEr ror(##clas s(HS.Util. HubService s).InvokeH ubService( "HS.Push.W ebServices ","HS.Push .WebServic esClient", "AddEditSe archTerms" ,.sc,terms ))
  562           $$ $ThrowOnEr ror(sc)
  563           Qu it
  564   }
  565  
  566   /// Update  productio ns
  567   /// 
  568   ClassMetho d Producti ons()
  569   {
  570           Ne w $namespa ce
  571           Se t $namespa ce = "HSLI B"
  572           
  573           If  $$$WriteP rog Write  !,"HS.Loca l.VA.HS.Re gistry.Set up:Product ions - sta rt"
  574           
  575           $$ $ThrowOnEr ror(##clas s(HS.Direc tor).StopA ll())
  576           
  577           ;F or ns = "H SREGISTRY" ,"HSACCESS " {
  578           ;        Set  $namespace  = ns
  579           ;        If $ $$WritePro g Write !, "HS.Local. VA.HS.Regi stry.Setup :Productio ns - ",$na mespace
  580           ;        $$$T hrowOnErro r(##class( HS.Util.In staller.Ki t.Base).Pr oductionMo ds(,"xdata ://Custom. Setup:"_$n amespace,1 ))               
  581           ;        If n s="HSACCES S" {
  582           ;                 $$$Thr owOnError( ##class(HS .Util.Inst aller.Kit. Base).Remo veProducti onItems(ns ,"xdata:// Custom.Set up:"_$name space_"Rem ove"))
  583           ;        }
  584           ;}
  585           
  586  
  587           Se t $namespa ce = "HSRE GISTRY"
  588           If  $$$WriteP rog Write  !,"HS.Loca l.VA.HS.Re gistry.Set up:Product ions - ",$ namespace
  589           $$ $ThrowOnEr ror(##clas s(HS.Util. Installer. Kit.Base). Production Mods(,"xda ta://HS.Lo cal.VA.HS. Registry.S etup:"_$na mespace,1) )              
  590  
  591           Se t $namespa ce = "HSLI B"
  592           $$ $ThrowOnEr ror(##clas s(HS.Direc tor).Start All())
  593           
  594           If  $$$WriteP rog Write  !,"HS.Loca l.VA.HS.Re gistry.Set up:Product ions - suc cess"
  595   }
  596  
  597   /// Valida te install
  598   /// - did  the custom  code get  loaded int o HSCUSTOM ?
  599   /// - did  the custom  xslt get  moved into  the right  locations
  600   /// - TODO : is the l icense val id and cov er the nec essary fun ctions
  601   /// 
  602   ClassMetho d Validate ()
  603   {
  604           Ne w $namespa ce
  605           Se t $namespa ce = "HSCU STOM"
  606           
  607           If  $$$WriteP rog Write  !,"HS.Loca l.VA.HS.Re gistry.Set up:Validat e - start"
  608  
  609           If  $$$WriteP rog Write  !,?4,"Cust om code"
  610           ;S et classes ("Custom.G ateway.Acc ess.QueryP rocess") =  ""
  611           Se t classes( "HS.Local. VA.HS.Regi stry.HS.IH E.XDSb.OnD emand.Oper ations") =  ""
  612           ;S et classes ("Custom.I HE.XDSb.On Demand.Pro cess") = " "
  613           Se t classes( "HS.Local. VA.HS.Regi stry.Insta ller") = " "
  614           Se t class=""  For { Set  class = $ o(classes( class)) Qu it:class=" "
  615                    If $ $$WritePro g Write !, ?8,class
  616                    If ' ##class(%D ictionary. CompiledCl ass).%Exis tsId(class ) $$$Throw Status($$$ ERROR(5001 ,"Class no t found: " _class))
  617           }
  618           
  619           If  $$$WriteP rog Write  !,?4,"Cust om XSLT"
  620           Se t install  = $SYSTEM. Util.Insta llDirector y()
  621           Se t files($i (files)) =  "/csp/xsl t/SDA3/MPI /Custom/SD A-to-AddUp dateHub.xs l"
  622           Se t files($i (files)) =  "/csp/xsl t/IHE/XDSb /Version1/ Custom/Pro cessReques t-to-Deliv eryRequest .xsl"
  623           ;S et files($ i(files))  = "/csp/xs lt/SDA3/Su mmaries/XM L/Custom/S DA-to-XMLS ummaryScan -Z-C62.xsl "
  624           ;S et files($ i(files))  = "/csp/xs lt/SDA3/Su mmaries/XM L/Custom/S DA-to-XMLS ummaryScan -Z-CCDA-En counter.xs l"
  625           ;S et files($ i(files))  = "/csp/xs lt/SDA3/Su mmaries/XM L/Custom/S DA-to-XMLS ummaryScan -Z-CCDA-Pa tient.xsl"
  626           ;S et files($ i(files))  = "/csp/xs lt/SDA3/Cu stom/Utili ty.xsl"
  627           ;S et files($ i(files))  = "/csp/xs lt/SDA3/Cu stom/SDA-t o-Z-C62.xs l"
  628           ;S et files($ i(files))  = "/csp/xs lt/SDA3/Cu stom/SDA-t o-Z-CCDA-E ncounter.x sl"
  629           ;S et files($ i(files))  = "/csp/xs lt/SDA3/Cu stom/cda.x sl"
  630           ;S et files($ i(files))  = "/csp/xs lt/SDA3/Cu stom/cda_p lain.css"
  631           
  632           Se t i="" For  { Set i=$ o(files(i) ,1,file) Q uit:i=""
  633                    If $ $$WritePro g Write !, ?8,file
  634                    Set  full = ##c lass(%File ).Normaliz eFilename( install_"/ "_file)
  635                    If ' ##class(%F ile).Exist s(full) $$ $ThrowStat us($$$ERRO R(5001,"Fi le not fou nd: "_full ))
  636           }
  637           
  638           If  $$$WriteP rog Write  !,"HS.Loca l.VA.HS.Re gistry.Set up:Validat e - succes s"
  639   }
  640  
  641   /// conver t namespac e into HS. Gateway.Co nfig ID
  642   ClassMetho d getGatew ayID(names pace) As % String
  643   {
  644           Se t pattern  = "%:"_nam espace
  645           Se t rs = ##c lass(%SQL. Statement) .%ExecDire ct(,"SELEC T ID,Name  From HS_Ga teway.Conf ig WHERE N ame LIKE ? ",pattern)
  646           If  rs.%Next( ) Quit rs. ID
  647           $$ $ThrowStat us($$$ERRO R(5001,"Ga teway not  found: "_n amespace))
  648   }
  649  
  650   /// conver t service  indo HS.Re gistry.Ser vice.SOAP  ID
  651   ClassMetho d getServi ceID(servi ceName) As  %String
  652   {
  653           Qu it ##class (HS.Regist ry.Service .SOAP).IDF orNameType (serviceNa me,"SOAP")
  654   }
  655  
  656   /// Setup  customizat ion to ski p replace  if no crit ial info c hanged (eg  encounter  start/sto p date)
  657   /// 
  658   XData HSRE GISTRY
  659   {
  660   <Items>
  661   <Item Name ="VA.IHE.X DSb.OnDema nd.Operati ons" Categ ory="" Cla ssName="HS .Local.VA. HS.Registr y.HS.IHE.X DSb.OnDema nd.Operati ons" PoolS ize="1" En abled="tru e" Foregro und="false " Inactivi tyTimeout= "0" Commen t="" LogTr aceEvents= "false" Sc hedule="">
  662   <Setting T arget="Hos t" Name="I ssueOnDema ndReplacem ents">1</S etting>
  663   <Setting T arget="Hos t" Name="O nDemandRep ositoryNam e">HSACCCD A</Setting >
  664   </Item>
  665   <Item Name ="VA.Inact ivePatient Load.Proce ss" Catego ry="MVI" C lassName=" HS.Local.V A.HS.Regis try.Inacti vePatientL oad.Proces s" PoolSiz e="1" Enab led="true"  Foregroun d="false"  Comment=""  LogTraceE vents="fal se" Schedu le="">
  666     </Item>
  667     <Item Na me="VA.Ina ctivePatie ntLoad.Ope ration" Ca tegory="MV I" ClassNa me="HS.Loc al.VA.HS.R egistry.In activePati entLoad.Op eration" P oolSize="1 " Enabled= "true" For eground="f alse" Comm ent="" Log TraceEvent s="false"  Schedule=" ">
  668     </Item>
  669     <Item Na me="VA.HS. IHE.XDSb.R egistry.Op erations"  Category=" MVI" Class Name="HS.L ocal.VA.HS .Registry. HS.IHE.XDS b.Registry .Operation s" PoolSiz e="1" Enab led="true"  Foregroun d="false"  Comment=""  LogTraceE vents="fal se" Schedu le="">
  670       <Setti ng Target= "Host" Nam e="OnDeman dRepositor y">HSACCCD A</Setting >
  671       <Setti ng Target= "Host" Nam e="Inactiv ePatientTi meout">60< /Setting>
  672     </Item>
  673     <Item Na me="HS.IHE .XDSb.Regi stry.Servi ces" Categ ory="" Cla ssName="HS .IHE.XDSb. Registry.S ervices" P oolSize="0 " Enabled= "true" For eground="f alse" Comm ent="" Log TraceEvent s="false"  Schedule=" ">
  674       <Setti ng Target= "Host" Nam e="XDSbQue ryTarget"> HS.IHE.XDS b.Registry .Operation s</Setting >
  675     </Item>
  676   <Item Name ="HS.Hub.P ush.Evalua tor" Categ ory="" Cla ssName="HS .Hub.Push. Evaluator"  PoolSize= "1" Enable d="true" F oreground= "false" Co mment="" L ogTraceEve nts="false " Schedule ="">
  677   <Setting T arget="Hos t" Name="X DSbOnDeman dTarget">V A.IHE.XDSb .OnDemand. Operations </Setting>
  678   </Item>
  679     <Item Na me="VA.MVI .Operation s" Categor y="MVI" Cl assName="H S.Local.VA .HS.Regist ry.MVI.Ope rations" P oolSize="1 " Enabled= "true" For eground="f alse" Comm ent="" Log TraceEvent s="false"  Schedule=" ">
  680       <Setti ng Target= "Host" Nam e="TraceOp erations"> *ERRORSONL Y*</Settin g>
  681       <Setti ng Target= "Host" Nam e="Patient Search">VA .MVI.PDQv3 .Consumer. Operations </Setting>
  682       <Setti ng Target= "Host" Nam e="UseFaci lityAsDefa ultAA">1</ Setting>
  683       <Setti ng Target= "Host" Nam e="Archive IO">0</Set ting>
  684     </Item>
  685     <Item Na me="EnsLib .File.Pass throughSer vice" Cate gory="" Cl assName="E nsLib.File .Passthrou ghService"  PoolSize= "1" Enable d="false"  Foreground ="false" C omment=""  LogTraceEv ents="fals e" Schedul e="">
  686     </Item>
  687     <Item Na me="VA.MVI .PDQv3.Con sumer.Oper ations.DFN " Category ="MVI" Cla ssName="HS .Local.VA. HS.Registr y.HS.IHE.P DQv3.Consu mer.Operat ions" Pool Size="1" E nabled="tr ue" Foregr ound="fals e" Comment ="retrieve  with regi ster inter est" LogTr aceEvents= "false" Sc hedule="">
  688       <Setti ng Target= "Host" Nam e="Archive IO">1</Set ting>
  689       <Setti ng Target= "Host" Nam e="TraceOp erations"> *FULL*</Se tting>
  690     </Item>
  691     <Item Na me="VA.MVI .PDQv3.Con sumer.Oper ations" Ca tegory="MV I" ClassNa me="HS.Loc al.VA.HS.R egistry.HS .IHE.PDQv3 .Consumer. Operations " PoolSize ="1" Enabl ed="true"  Foreground ="false" C omment="pa tient sear ch" LogTra ceEvents=" false" Sch edule="">
  692       <Setti ng Target= "Host" Nam e="Archive IO">1</Set ting>
  693       <Setti ng Target= "Host" Nam e="Device" >200HSEP</ Setting>
  694       <Setti ng Target= "Host" Nam e="Service Name">MVI. PDQv3.Cons umer</Sett ing>
  695       <Setti ng Target= "Host" Nam e="TraceOp erations"> *FULL*</Se tting>
  696       <Setti ng Target= "Host" Nam e="Transfo rmPDQToPat ientSearch ">IHE/PDQ/ Version1/C ustom/vaPR PAIN201306 UVToPatien tSearchRes ponse.xsl< /Setting>
  697       <Setti ng Target= "Host" Nam e="Transfo rmPatientS earchToPDQ ">IHE/PDQ/ Version1/C ustom/vaPa tientSearc hToPRPAIN2 01305UV.xs l</Setting >
  698     </Item>
  699     <Item Na me="VA.HS. IHE.PIX.Co nsumer.Pro cess" Cate gory="MVI"  ClassName ="HS.Local .VA.HS.Reg istry.HS.I HE.PIX.Con sumer.Proc ess" PoolS ize="1" En abled="tru e" Foregro und="false " Comment= "" LogTrac eEvents="t rue" Sched ule="">
  700       <Setti ng Target= "Host" Nam e="TraceOp erations"> *FULL*</Se tting>
  701       <Setti ng Target= "Host" Nam e="HL7Proc essingID"> T</Setting >
  702       <Setti ng Target= "Host" Nam e="Partner Operation" >VA.MVI.AC K.Operatio n</Setting >
  703       <Setti ng Target= "Host" Nam e="VAStati on">200HSE P</Setting >
  704     </Item>
  705     <Item Na me="VA.ESR .Operation s" Categor y="MVI" Cl assName="H S.Local.VA .HS.Regist ry.ESR.Ope rations" P oolSize="1 " Enabled= "true" For eground="f alse" Comm ent="" Log TraceEvent s="true" S chedule="" >
  706       <Setti ng Target= "Host" Nam e="Service Name">VA.E SR</Settin g>
  707       <Setti ng Target= "Adapter"  Name="Cred entials">< /Setting>
  708       <Setti ng Target= "Adapter"  Name="SOAP Credential s"></Setti ng>
  709       <Setti ng Target= "Host" Nam e="Archive IO">1</Set ting>
  710     </Item>
  711     <Item Na me="VA.MVI .ACK.Opera tion" Cate gory="MVI"  ClassName ="EnsLib.H L7.Operati on.TCPOper ation" Poo lSize="1"  Enabled="t rue" Foreg round="fal se" Commen t="" LogTr aceEvents= "true" Sch edule="">
  712         <Setting T arget="Ada pter" Name ="IPAddres s">ecptest -dev. DNS             </Setting>
  713         <Setting T arget="Ada pter" Name ="Port"> PORT </Setting>
  714       <Setti ng Target= "Adapter"  Name="Conn ectTimeout ">20</Sett ing>
  715       <Setti ng Target= "Host" Nam e="Separat ors"><![CD ATA[^~|\&] ]></Settin g>
  716       <Setti ng Target= "Host" Nam e="Archive IO">1</Set ting>
  717       <Setti ng Target= "Adapter"  Name="Regi stryID"></ Setting>
  718       <Setti ng Target= "Adapter"  Name="Stay Connected" >120</Sett ing>
  719     </Item>
  720     <Item Na me="VA.HS. IHE.PIXv2. Consumer.S ervices" C ategory="M VI" ClassN ame="HS.Lo cal.VA.HS. Registry.H S.IHE.PIXv 2.Consumer .Services"  PoolSize= "1" Enable d="true" F oreground= "false" Co mment="" L ogTraceEve nts="true"  Schedule= "">
  721       <Setti ng Target= "Host" Nam e="Message SchemaCate gory">VA.M VI.2.5</Se tting>
  722       <Setti ng Target= "Host" Nam e="TargetC onfigNames ">VA.HS.IH E.PIX.Cons umer.Proce ss</Settin g>
  723       <Setti ng Target= "Host" Nam e="AckMode ">Immed</S etting>
  724       <Setti ng Target= "Adapter"  Name="Stay Connected" >-1</Setti ng>
  725       <Setti ng Target= "Adapter"  Name="JobP erConnecti on">1</Set ting>
  726         <Setting T arget="Ada pter" Name ="Port"> PORT </Setting>
  727       <Setti ng Target= "Host" Nam e="Archive IO">1</Set ting>
  728       <Setti ng Target= "Host" Nam e="LocalFa cilityAppl ication">@ :@</Settin g>
  729     </Item>
  730     <Item Na me="HS.IHE .XDSb.Regi stry.Opera tions" Cat egory="" C lassName=" HS.IHE.XDS b.Registry .Operation s" PoolSiz e="1" Enab led="true"  Foregroun d="false"  Comment=""  LogTraceE vents="fal se" Schedu le="">
  731       <Setti ng Target= "Host" Nam e="OnDeman dRepositor y">HSACCCD A</Setting >
  732     </Item>
  733   </Items>
  734   }
  735  
  736   /// Setup  customizat ion to wor k around d ocument fi lter bug ( and eventu ally suppo rt user su pplied par ameters vi a search-a nd-fetch)
  737   /// 
  738   XData HSAC CESS
  739   {
  740   <Items>
  741   <Item Name ="Custom.G ateway.Acc ess.QueryP rocess" Ca tegory=""  ClassName= "Custom.Ga teway.Acce ss.QueryPr ocess" Poo lSize="0"  Enabled="t rue" Foreg round="fal se" Inacti vityTimeou t="0" Comm ent="" Log TraceEvent s="false"  Schedule=" ">
  742   </Item>
  743   <Item Name ="Custom.I HE.XDSb.On Demand.Pro cess" Cate gory="" Cl assName="C ustom.IHE. XDSb.OnDem and.Proces s" PoolSiz e="0" Enab led="true"  Foregroun d="false"  Inactivity Timeout="0 " Comment= "" LogTrac eEvents="f alse" Sche dule="">
  744   <Setting T arget="Hos t" Name="Q ueryProces s">Custom. Gateway.Ac cess.Query Process</S etting>
  745   </Item>
  746   <Item Name ="HS.IHE.X DSb.Reposi tory.Servi ces" Categ ory="" Cla ssName="HS .IHE.XDSb. Repository .Services"  PoolSize= "0" Enable d="true" F oreground= "false" In activityTi meout="0"  Comment=""  LogTraceE vents="fal se" Schedu le="">
  747   <Setting T arget="Hos t" Name="X DSbRetriev eTarget">C ustom.IHE. XDSb.OnDem and.Proces s</Setting >
  748   </Item>
  749   </Items>
  750   }
  751  
  752   XData HSAC CESSRemove
  753   {
  754   <Items>
  755   <Item Name ='HS.Gatew ay.Access. QueryProce ss' ClassN ame='HS.Ga teway.Acce ss.QueryPr ocess'/>
  756   <Item Name ='HS.IHE.X DSb.OnDema nd.Process ' ClassNam e='HS.IHE. XDSb.OnDem and.Proces s'/>
  757   </Items>
  758   }
  759  
  760   ClassMetho d Reset()
  761   {
  762           Ne w $namespa ce
  763  
  764           Se t $namespa ce = "HSLI B"
  765           Do  ##class(H S.Director ).StopAll( )
  766           
  767           Se t $namespa ce = "HSRE GISTRY"
  768           Do  ##class(H S.Util.Ins taller.Hub ).Reset()
  769           
  770           Se t $namespa ce = "HSED GE1"
  771           Do  ##class(H S.Util.Ins taller.Edg eGateway). Reset()
  772  
  773           Se t $namespa ce = "HSLI B"
  774           Do  ##class(H S.Director ).StartAll ()
  775   }
  776  
  777   }