001/* 002 * This class is an auto-generated source file for a HAPI 003 * HL7 v2.x standard structure class. 004 * 005 * For more information, visit: http://hl7api.sourceforge.net/ 006 * 007 * The contents of this file are subject to the Mozilla Public License Version 1.1 008 * (the "License"); you may not use this file except in compliance with the License. 009 * You may obtain a copy of the License at http://www.mozilla.org/MPL/ 010 * Software distributed under the License is distributed on an "AS IS" basis, 011 * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the 012 * specific language governing rights and limitations under the License. 013 * 014 * The Original Code is "[file_name]". Description: 015 * "[one_line_description]" 016 * 017 * The Initial Developer of the Original Code is University Health Network. Copyright (C) 018 * 2012. All Rights Reserved. 019 * 020 * Contributor(s): ______________________________________. 021 * 022 * Alternatively, the contents of this file may be used under the terms of the 023 * GNU General Public License (the "GPL"), in which case the provisions of the GPL are 024 * applicable instead of those above. If you wish to allow use of your version of this 025 * file only under the terms of the GPL and not to allow others to use your version 026 * of this file under the MPL, indicate your decision by deleting the provisions above 027 * and replace them with the notice and other provisions required by the GPL License. 028 * If you do not delete the provisions above, a recipient may use your version of 029 * this file under either the MPL or the GPL. 030 * 031 */ 032 033 034package ca.uhn.hl7v2.model.v23.message; 035 036import ca.uhn.hl7v2.model.v23.group.*; 037import ca.uhn.hl7v2.model.v23.segment.*; 038 039import ca.uhn.hl7v2.HL7Exception; 040import ca.uhn.hl7v2.parser.ModelClassFactory; 041import ca.uhn.hl7v2.parser.DefaultModelClassFactory; 042import ca.uhn.hl7v2.model.*; 043 044 045/** 046 * <p>Represents a ADT_A37 message structure (see chapter ?). This structure contains the 047 * following elements: </p> 048 * <ul> 049 * <li>1: MSH (Message header segment) <b> </b> </li> 050 * <li>2: EVN (Event type) <b> </b> </li> 051 * <li>3: PID (Patient Identification) <b> </b> </li> 052 * <li>4: PD1 (Patient Demographic) <b>optional </b> </li> 053 * <li>5: PV1 (Patient visit) <b>optional </b> </li> 054 * <li>6: DB1 (Disability Segment) <b>optional repeating</b> </li> 055 * <li>7: PID (Patient Identification) <b> </b> </li> 056 * <li>8: PV1 (Patient visit) <b>optional </b> </li> 057 * <li>9: DB1 (Disability Segment) <b>optional repeating</b> </li> 058 * </ul> 059 */ 060//@SuppressWarnings("unused") 061public class ADT_A37 extends AbstractMessage { 062 063 /** 064 * Creates a new ADT_A37 message with DefaultModelClassFactory. 065 */ 066 public ADT_A37() { 067 this(new DefaultModelClassFactory()); 068 } 069 070 /** 071 * Creates a new ADT_A37 message with custom ModelClassFactory. 072 */ 073 public ADT_A37(ModelClassFactory factory) { 074 super(factory); 075 init(factory); 076 } 077 078 private void init(ModelClassFactory factory) { 079 try { 080 this.add(MSH.class, true, false); 081 this.add(EVN.class, true, false); 082 this.add(PID.class, true, false); 083 this.add(PD1.class, false, false); 084 this.add(PV1.class, false, false); 085 this.add(DB1.class, false, true); 086 this.add(PID.class, true, false); 087 this.add(PV1.class, false, false); 088 this.add(DB1.class, false, true); 089 } catch(HL7Exception e) { 090 log.error("Unexpected error creating ADT_A37 - this is probably a bug in the source code generator.", e); 091 } 092 } 093 094 095 /** 096 * Returns "2.3" 097 */ 098 public String getVersion() { 099 return "2.3"; 100 } 101 102 103 104 105 /** 106 * <p> 107 * Returns 108 * MSH (Message header segment) - creates it if necessary 109 * </p> 110 * 111 * 112 */ 113 public MSH getMSH() { 114 return getTyped("MSH", MSH.class); 115 } 116 117 118 119 120 121 /** 122 * <p> 123 * Returns 124 * EVN (Event type) - creates it if necessary 125 * </p> 126 * 127 * 128 */ 129 public EVN getEVN() { 130 return getTyped("EVN", EVN.class); 131 } 132 133 134 135 136 137 /** 138 * <p> 139 * Returns 140 * PID (Patient Identification) - creates it if necessary 141 * </p> 142 * 143 * 144 */ 145 public PID getPID() { 146 return getTyped("PID", PID.class); 147 } 148 149 150 151 152 153 /** 154 * <p> 155 * Returns 156 * PD1 (Patient Demographic) - creates it if necessary 157 * </p> 158 * 159 * 160 */ 161 public PD1 getPD1() { 162 return getTyped("PD1", PD1.class); 163 } 164 165 166 167 168 169 /** 170 * <p> 171 * Returns 172 * PV1 (Patient visit) - creates it if necessary 173 * </p> 174 * 175 * 176 */ 177 public PV1 getPV1() { 178 return getTyped("PV1", PV1.class); 179 } 180 181 182 183 184 185 /** 186 * <p> 187 * Returns 188 * the first repetition of 189 * DB1 (Disability Segment) - creates it if necessary 190 * </p> 191 * 192 * 193 */ 194 public DB1 getDB1() { 195 return getTyped("DB1", DB1.class); 196 } 197 198 199 /** 200 * <p> 201 * Returns a specific repetition of 202 * DB1 (Disability Segment) - creates it if necessary 203 * </p> 204 * 205 * 206 * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0) 207 * @throws HL7Exception if the repetition requested is more than one 208 * greater than the number of existing repetitions. 209 */ 210 public DB1 getDB1(int rep) { 211 return getTyped("DB1", rep, DB1.class); 212 } 213 214 /** 215 * <p> 216 * Returns the number of existing repetitions of DB1 217 * </p> 218 * 219 */ 220 public int getDB1Reps() { 221 return getReps("DB1"); 222 } 223 224 /** 225 * <p> 226 * Returns a non-modifiable List containing all current existing repetitions of DB1. 227 * <p> 228 * <p> 229 * Note that unlike {@link #getDB1()}, this method will not create any reps 230 * if none are already present, so an empty list may be returned. 231 * </p> 232 * 233 */ 234 public java.util.List<DB1> getDB1All() throws HL7Exception { 235 return getAllAsList("DB1", DB1.class); 236 } 237 238 /** 239 * <p> 240 * Inserts a specific repetition of DB1 (Disability Segment) 241 * </p> 242 * 243 * 244 * @see AbstractGroup#insertRepetition(Structure, int) 245 */ 246 public void insertDB1(DB1 structure, int rep) throws HL7Exception { 247 super.insertRepetition( "DB1", structure, rep); 248 } 249 250 251 /** 252 * <p> 253 * Inserts a specific repetition of DB1 (Disability Segment) 254 * </p> 255 * 256 * 257 * @see AbstractGroup#insertRepetition(Structure, int) 258 */ 259 public DB1 insertDB1(int rep) throws HL7Exception { 260 return (DB1)super.insertRepetition("DB1", rep); 261 } 262 263 264 /** 265 * <p> 266 * Removes a specific repetition of DB1 (Disability Segment) 267 * </p> 268 * 269 * 270 * @see AbstractGroup#removeRepetition(String, int) 271 */ 272 public DB1 removeDB1(int rep) throws HL7Exception { 273 return (DB1)super.removeRepetition("DB1", rep); 274 } 275 276 277 278 279 /** 280 * <p> 281 * Returns 282 * PID2 (Patient Identification) - creates it if necessary 283 * </p> 284 * 285 * 286 */ 287 public PID getPID2() { 288 return getTyped("PID2", PID.class); 289 } 290 291 292 293 294 295 /** 296 * <p> 297 * Returns 298 * PV12 (Patient visit) - creates it if necessary 299 * </p> 300 * 301 * 302 */ 303 public PV1 getPV12() { 304 return getTyped("PV12", PV1.class); 305 } 306 307 308 309 310 311 /** 312 * <p> 313 * Returns 314 * the first repetition of 315 * DB12 (Disability Segment) - creates it if necessary 316 * </p> 317 * 318 * 319 */ 320 public DB1 getDB12() { 321 return getTyped("DB12", DB1.class); 322 } 323 324 325 /** 326 * <p> 327 * Returns a specific repetition of 328 * DB12 (Disability Segment) - creates it if necessary 329 * </p> 330 * 331 * 332 * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0) 333 * @throws HL7Exception if the repetition requested is more than one 334 * greater than the number of existing repetitions. 335 */ 336 public DB1 getDB12(int rep) { 337 return getTyped("DB12", rep, DB1.class); 338 } 339 340 /** 341 * <p> 342 * Returns the number of existing repetitions of DB12 343 * </p> 344 * 345 */ 346 public int getDB12Reps() { 347 return getReps("DB12"); 348 } 349 350 /** 351 * <p> 352 * Returns a non-modifiable List containing all current existing repetitions of DB12. 353 * <p> 354 * <p> 355 * Note that unlike {@link #getDB12()}, this method will not create any reps 356 * if none are already present, so an empty list may be returned. 357 * </p> 358 * 359 */ 360 public java.util.List<DB1> getDB12All() throws HL7Exception { 361 return getAllAsList("DB12", DB1.class); 362 } 363 364 /** 365 * <p> 366 * Inserts a specific repetition of DB12 (Disability Segment) 367 * </p> 368 * 369 * 370 * @see AbstractGroup#insertRepetition(Structure, int) 371 */ 372 public void insertDB12(DB1 structure, int rep) throws HL7Exception { 373 super.insertRepetition( "DB12", structure, rep); 374 } 375 376 377 /** 378 * <p> 379 * Inserts a specific repetition of DB12 (Disability Segment) 380 * </p> 381 * 382 * 383 * @see AbstractGroup#insertRepetition(Structure, int) 384 */ 385 public DB1 insertDB12(int rep) throws HL7Exception { 386 return (DB1)super.insertRepetition("DB12", rep); 387 } 388 389 390 /** 391 * <p> 392 * Removes a specific repetition of DB12 (Disability Segment) 393 * </p> 394 * 395 * 396 * @see AbstractGroup#removeRepetition(String, int) 397 */ 398 public DB1 removeDB12(int rep) throws HL7Exception { 399 return (DB1)super.removeRepetition("DB12", rep); 400 } 401 402 403 404} 405