1 /** 2 * The contents of this file are subject to the Mozilla Public License Version 1.1 3 * (the "License"); you may not use this file except in compliance with the License. 4 * You may obtain a copy of the License at http://www.mozilla.org/MPL/ 5 * Software distributed under the License is distributed on an "AS IS" basis, 6 * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the 7 * specific language governing rights and limitations under the License. 8 * 9 * The Original Code is "CreateAMessage.java". Description: 10 * "Example Code" 11 * 12 * The Initial Developer of the Original Code is University Health Network. Copyright (C) 13 * 2001. All Rights Reserved. 14 * 15 * Contributor(s): James Agnew 16 * 17 * Alternatively, the contents of this file may be used under the terms of the 18 * GNU General Public License (the �GPL�), in which case the provisions of the GPL are 19 * applicable instead of those above. If you wish to allow use of your version of this 20 * file only under the terms of the GPL and not to allow others to use your version 21 * of this file under the MPL, indicate your decision by deleting the provisions above 22 * and replace them with the notice and other provisions required by the GPL License. 23 * If you do not delete the provisions above, a recipient may use your version of 24 * this file under either the MPL or the GPL. 25 * 26 */ 27 package ca.uhn.hl7v2.examples; 28 29 import ca.uhn.hl7v2.DefaultHapiContext; 30 import ca.uhn.hl7v2.HL7Exception; 31 import ca.uhn.hl7v2.HapiContext; 32 import ca.uhn.hl7v2.model.v24.message.ADT_A01; 33 import ca.uhn.hl7v2.model.v24.segment.MSH; 34 import ca.uhn.hl7v2.model.v24.segment.PID; 35 import ca.uhn.hl7v2.parser.Parser; 36 37 /** 38 * Example transmitting a message 39 * 40 * @author <a href="mailto:jamesagnew@sourceforge.net">James Agnew</a> 41 * @version $Revision: 1.4 $ updated on $Date: 2009-10-03 15:29:05 $ by $Author: jamesagnew $ 42 */ 43 public class CreateAMessage 44 { 45 46 /** 47 * @param args 48 * @throws HL7Exception 49 */ 50 public static void main(String[] args) throws Exception { 51 52 ADT_A01sage/ADT_A01.html#ADT_A01">ADT_A01 adt = new ADT_A01(); 53 adt.initQuickstart("ADT", "A01", "P"); 54 55 // Populate the MSH Segment 56 MSH mshSegment = adt.getMSH(); 57 mshSegment.getSendingApplication().getNamespaceID().setValue("TestSendingSystem"); 58 mshSegment.getSequenceNumber().setValue("123"); 59 60 // Populate the PID Segment 61 PID pid = adt.getPID(); 62 pid.getPatientName(0).getFamilyName().getSurname().setValue("Doe"); 63 pid.getPatientName(0).getGivenName().setValue("John"); 64 pid.getPatientIdentifierList(0).getID().setValue("123456"); 65 66 /* 67 * In a real situation, of course, many more segments and fields would be populated 68 */ 69 70 // Now, let's encode the message and look at the output 71 HapiContext context = new DefaultHapiContext(); 72 Parser parser = context.getPipeParser(); 73 String encodedMessage = parser.encode(adt); 74 System.out.println("Printing ER7 Encoded Message:"); 75 System.out.println(encodedMessage); 76 77 /* 78 * Prints: 79 * 80 * MSH|^~\&|TestSendingSystem||||200701011539||ADT^A01^ADT A01||||123 81 * PID|||123456||Doe^John 82 */ 83 84 // Next, let's use the XML parser to encode as XML 85 parser = context.getXMLParser(); 86 encodedMessage = parser.encode(adt); 87 System.out.println("Printing XML Encoded Message:"); 88 System.out.println(encodedMessage); 89 90 /* 91 * Prints: 92 * 93 * <?xml version="1.0" encoding="UTF-8"?> 94 <ADT_A01 xmlns="urn:hl7-org:v2xml"> 95 <MSH> 96 <MSH.1>|</MSH.1> 97 <MSH.2>^~\&</MSH.2> 98 <MSH.3> 99 <HD.1>TestSendingSystem</HD.1> 100 </MSH.3> 101 <MSH.7> 102 <TS.1>200701011539</TS.1> 103 </MSH.7> 104 <MSH.9> 105 <MSG.1>ADT</MSG.1> 106 <MSG.2>A01</MSG.2> 107 <MSG.3>ADT A01</MSG.3> 108 </MSH.9> 109 <MSH.13>123</MSH.13> 110 </MSH> 111 <PID> 112 <PID.3> 113 <CX.1>123456</CX.1> 114 </PID.3> 115 <PID.5> 116 <XPN.1> 117 <FN.1>Doe</FN.1> 118 </XPN.1> 119 <XPN.2>John</XPN.2> 120 </PID.5> 121 </PID> 122 </ADT_A01> 123 */ 124 125 } 126 127 }