Produced by Araxis Merge on 10/3/2017 11:15:45 AM 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.
| # | Location | File | Last Modified |
|---|---|---|---|
| 1 | ehmp.zip\ehmp\ehmp\product\production\soap-handler\src\test\java\us\vistacore\vxsync\mvi | SimpleServer.java | Tue Dec 15 14:05:18 2015 UTC |
| 2 | ehmp.zip\ehmp\ehmp\product\production\soap-handler\src\test\java\us\vistacore\vxsync\mvi | SimpleServer.java | Mon Oct 2 19:57:07 2017 UTC |
| Description | Between Files 1 and 2 |
|
|---|---|---|
| Text Blocks | Lines | |
| Unchanged | 2 | 306 |
| Changed | 1 | 2 |
| Inserted | 0 | 0 |
| Removed | 0 | 0 |
| 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 |
No regular expressions were active.
| 1 | package us .vistacore .vxsync.mv i; | |
| 2 | ||
| 3 | import jav a.io.*; | |
| 4 | import jav a.net.Serv erSocket; | |
| 5 | import jav a.net.Sock et; | |
| 6 | import jav a.security .KeyStore; | |
| 7 | ||
| 8 | import jav ax.net.ssl .KeyManage rFactory; | |
| 9 | import jav ax.net.ssl .SSLContex t; | |
| 10 | import jav ax.net.ssl .SSLServer Socket; | |
| 11 | import jav ax.net.ssl .SSLServer SocketFact ory; | |
| 12 | ||
| 13 | public cla ss SimpleS erver { | |
| 14 | ||
| 15 | pr ivate stat ic String ksPass = " welcome"; | |
| 16 | pr ivate stat ic String ctPass = " helloworld "; | |
| 17 | pr ivate stat ic String trustPass = "changei t"; | |
| 18 | pr ivate stat ic String keystore = "~/Projec ts/vistaco re/ehmp/pr oduct/prod uction/soa p-handler/ src/test/r esources/s erverKeyst ore.jks"; | |
| 19 | pr ivate stat ic String truststore = "~/Proj ects/vista core/ehmp/ product/pr oduction/s oap-handle r/src/test /resources /serverTru ststore.jk s"; | |
| 20 | pr ivate stat ic int por tNum = 999 9; | |
| 21 | ||
| 22 | pu blic stati c void mai n(String[] args) { | |
| 23 | Serv erSocket s s; | |
| 24 | Syst em.setProp erty("java x.net.ssl. keyStore", keystore) ; | |
| 25 | Syst em.setProp erty("java x.net.ssl. keyStorePa ssword", n ew String( ksPass)); | |
| 26 | Syst em.setProp erty("java x.net.ssl. trustStore ", trustst ore); | |
| 27 | Syst em.setProp erty("java x.net.ssl. trustStore Password", new Strin g(trustPas s)); | |
| 28 | try { | |
| 29 | ss = s etupConnec tion(); | |
| 30 | while (true) { | |
| 31 | try { | |
| 32 | System.out .println(" Listening for connec tions on p ort " + po rtNum); | |
| 33 | Socket soc k = ss.acc ept(); | |
| 34 | System.out .println(" Received c onnection" ); | |
| 35 | // printStrea m(sock.get InputStrea m()); | |
| 36 | OutputStre am os = so ck.getOutp utStream() ; | |
| 37 | System.out .println(" Responding to client "); | |
| 38 | os.write(r esponse.ge tBytes()); | |
| 39 | sock.close (); | |
| 40 | } catch (Exception e) { | |
| 41 | e.printSta ckTrace(); | |
| 42 | } | |
| 43 | } | |
| 44 | } ca tch (Excep tion e1) { | |
| 45 | e1.pri ntStackTra ce(); | |
| 46 | } | |
| 47 | } | |
| 48 | ||
| 49 | pr ivate stat ic void pr intStream( InputStrea m stream) throws IOE xception { | |
| 50 | int i = 0; | |
| 51 | int bytesRead = stream.r ead(); | |
| 52 | whil e(bytesRea d >= 0 && i < 1265) { | |
| 53 | System .out.print ((char)byt esRead); | |
| 54 | bytesR ead = stre am.read(); | |
| 55 | i++; | |
| 56 | } | |
| 57 | Syst em.out.pri ntln(""); | |
| 58 | } | |
| 59 | ||
| 60 | pr ivate stat ic SSLServ erSocket s etupConnec tion() thr ows Except ion { | |
| 61 | Syst em.out.pri ntln("Sett ing up SSL certs"); | |
| 62 | KeyS tore ks = KeyStore.g etInstance ("JKS"); | |
| 63 | ks.l oad(new Fi leInputStr eam(keysto re), ksPas s.toCharAr ray()); | |
| 64 | KeyM anagerFact ory kmf = KeyManager Factory.ge tInstance( "SunX509") ; | |
| 65 | kmf. init(ks, c tPass.toCh arArray()) ; | |
| 66 | ||
| 67 | SSLC ontext sec ureSocket = SSLConte xt.getInst ance("TLS" ); | |
| 68 | secu reSocket.i nit(kmf.ge tKeyManage rs(), null , null); | |
| 69 | SSLS erverSocke tFactory s sf = secur eSocket.ge tServerSoc ketFactory (); | |
| 70 | SSLS erverSocke t ss = (SS LServerSoc ket) ssf.c reateServe rSocket(po rtNum); | |
| 71 | ss.s etNeedClie ntAuth(fal se); | |
| 72 | ||
| 73 | retu rn ss; | |
| 74 | } | |
| 75 | ||
| 76 | pr ivate stat ic String response = "<soapenv :Envelope xmlns:soap env=\"http ://schemas .xmlsoap.o rg/soap/en velope/\" xmlns:vaww =\"http:// URL . DNS \">"+ | |
| 77 | "<soapenv :Header/>" + | |
| 78 | "<soapenv :Body>" + | |
| 79 | "<vaww :PRPA_IN20 1310UV02>" + | |
| 80 | "<id r oot=\"2.16 .840.1.113 883.4.349\ " extensio n=\"WS1407 1712363313 9177699503 8\"/>" + | |
| 81 | "<creati onTime val ue=\"20140 717123633\ "/>" + | |
| 82 | "<versio nCode code =\"3.0\"/> "+ | |
| 83 | "<intera ctionId ro ot=\"2.16. 840.1.1138 83.1.6\" e xtension=\ "PRPA_IN20 1310UV02\" />"+ | |
| 84 | "<proces singCode c ode=\"T\"/ >" + | |
| 85 | "<proces singModeCo de code=\" T\"/>"+ | |
| 86 | "<accept AckCode co de=\"NE\"/ >"+ | |
| 87 | "<receiv er typeCod e=\"RCV\"> "+ | |
| 88 | "<de vice class Code=\"DEV \" determi nerCode=\" INSTANCE\" >"+ | |
| 89 | "<id root= \"PSIM_TOO LS\" exten sion=\"200 EHMP\"/>"+ | |
| 90 | "</d evice>"+ | |
| 91 | "</recei ver>"+ | |
| 92 | "<sender typeCode= \"SND\">"+ | |
| 93 | "<de vice class Code=\"DEV \" determi nerCode=\" INSTANCE\" >"+ | |
| 94 | "<id root= \"2.16.840 .1.113883. 4.349\" ex tension=\" 200M\"/>"+ | |
| 95 | "</d evice>"+ | |
| 96 | "</sende r>"+ | |
| 97 | "<acknow ledgement> "+ | |
| 98 | "<ty peCode cod e=\"AA\"/> "+ | |
| 99 | "<ta rgetMessag e>"+ | |
| 100 | "<id root= \"2.16.840 .1.113883. 4.349\" ex tension=\" MCID-YOUR_ IDENTIFIER _001\"/>"+ | |
| 101 | "</t argetMessa ge>"+ | |
| 102 | "</ackno wledgement >"+ | |
| 103 | "<contro lActProces s classCod e=\"CACT\" moodCode= \"EVN\">"+ | |
| 104 | "<co de code=\" PRPA_TE201 310UV02\"/ >"+ | |
| 105 | "<su bject type Code=\"SUB J\">"+ | |
| 106 | "<registra tionEvent classCode= \"REG\" mo odCode=\"E VN\">"+ | |
| 107 | "<id n ullFlavor= \"NA\"/>"+ | |
| 108 | "<stat usCode cod e=\"active \"/>"+ | |
| 109 | "<subj ect1 typeC ode=\"SBJ\ ">"+ | |
| 110 | "< patient cl assCode=\" PAT\">"+ | |
| 111 | "<id roo t=\"2.16.8 40.1.11388 3.4.1\" ex tension=\" 666000615^ PI^200SSA^ USSSA^A\"/ >"+ | |
| 112 | "<id roo t=\"2.16.8 40.1.11388 3.4.349\" extension= \"100622^P I^C877^USV HA\"/>"+ | |
| 113 | "<id roo t=\"2.16.8 40.1.11388 3.4.349\" extension= \"00010003 1^PI^200ES R^USVHA^H\ "/>"+ | |
| 114 | "<id roo t=\"2.16.8 40.1.11388 3.4.349\" extension= \"00010003 1^PI^200ES R^USVHA^PC E\"/>"+ | |
| 115 | "<id roo t=\"2.16.8 40.1.11388 3.4.349\" extension= \"50000001 23V015819^ NI^200M^US VHA^P\"/>" + | |
| 116 | "<status Code code= \"active\" />"+ | |
| 117 | "<patien tPerson cl assCode=\" PSN\" dete rminerCode =\"INSTANC E\">"+ | |
| 118 | "<na me nullFla vor=\"NA\" />"+ | |
| 119 | "</patie ntPerson>" + | |
| 120 | "< /patient>" + | |
| 121 | "</sub ject1>"+ | |
| 122 | "<cust odian type Code=\"CST \">"+ | |
| 123 | "< assignedEn tity class Code=\"ASS IGNED\">"+ | |
| 124 | "<id roo t=\"2.16.8 40.1.11388 3.4.349\"/ >"+ | |
| 125 | "< /assignedE ntity>"+ | |
| 126 | "</cus todian>"+ | |
| 127 | "<repl acementOf typeCode=\ "RPLC\">"+ | |
| 128 | "< priorRegis tration cl assCode=\" REG\" mood Code=\"EVN \">"+ | |
| 129 | "<id roo t=\"2.16.8 40.1.11388 3.4.349\" extension= \"50000001 23V015819^ NI^200M^US VHA^D\"/>" + | |
| 130 | "< /priorRegi stration>" + | |
| 131 | "</rep lacementOf >"+ | |
| 132 | "</registr ationEvent >"+ | |
| 133 | "</s ubject>"+ | |
| 134 | "<qu eryAck>"+ | |
| 135 | "<queryId root=\"1.2 .840.11435 0.1.13.999 99.4567.34 \" extensi on=\"MCID- YOUR_IDENT IFIER_001\ "/>"+ | |
| 136 | "<queryRes ponseCode code=\"OK\ "/>"+ | |
| 137 | "</q ueryAck>"+ | |
| 138 | "<qu eryByParam eter>"+ | |
| 139 | "<queryId root=\"1.2 .840.11435 0.1.13.999 99.4567.34 \" extensi on=\"MCID- YOUR_IDENT IFIER_001\ "/>"+ | |
| 140 | "<statusCo de code=\" new\"/>"+ | |
| 141 | "<response PriorityCo de code=\" I\"/>"+ | |
| 142 | "<paramete rList>"+ | |
| 143 | "<pati entIdentif ier>"+ | |
| 144 | "< value root =\"2.16.84 0.1.113883 .4.349\" e xtension=\ "500000012 3V015819^N I^200M^USV HA\"/>"+ | |
| 145 | "< semanticsT ext>Patien t.Id</sema nticsText> "+ | |
| 146 | "</pat ientIdenti fier>"+ | |
| 147 | "</paramet erList>"+ | |
| 148 | "</q ueryByPara meter>"+ | |
| 149 | "</contr olActProce ss>"+ | |
| 150 | ||
| 151 | "</vaw w:PRPA_IN2 01310UV02> "+ | |
| 152 | "</soapen v:Body>"+ | |
| 153 | "< /soapenv:E nvelope>"; | |
| 154 | } |
Araxis Merge (but not the data content of this report) is Copyright © 1993-2016 Araxis Ltd (www.araxis.com). All rights reserved.