View Javadoc
1   /*
2    * This class is an auto-generated source file for a HAPI
3    * HL7 v2.x standard structure class.
4    *
5    * For more information, visit: http://hl7api.sourceforge.net/
6    * 
7    * The contents of this file are subject to the Mozilla Public License Version 1.1 
8    * (the "License"); you may not use this file except in compliance with the License. 
9    * You may obtain a copy of the License at http://www.mozilla.org/MPL/ 
10   * Software distributed under the License is distributed on an "AS IS" basis, 
11   * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the 
12   * specific language governing rights and limitations under the License. 
13   * 
14   * The Original Code is "XTN.java".  Description:
15   * "Composite class XTN"
16   * 
17   * The Initial Developer of the Original Code is University Health Network. Copyright (C) 
18   * 2013.  All Rights Reserved.
19   * 
20   * Contributor(s): ______________________________________. 
21   * 
22   * Alternatively, the contents of this file may be used under the terms of the 
23   * GNU General Public License (the  "GPL"), in which case the provisions of the GPL are 
24   * applicable instead of those above.  If you wish to allow use of your version of this 
25   * file only under the terms of the GPL and not to allow others to use your version 
26   * of this file under the MPL, indicate your decision by deleting  the provisions above 
27   * and replace  them with the notice and other provisions required by the GPL License.  
28   * If you do not delete the provisions above, a recipient may use your version of 
29   * this file under either the MPL or the GPL. 
30   * 
31   */
32  
33  package ca.uhn.hl7v2.model.v23.datatype;
34  
35  import ca.uhn.hl7v2.model.DataTypeException;
36  import ca.uhn.hl7v2.model.Message;
37  import ca.uhn.hl7v2.model.Type;
38  import ca.uhn.hl7v2.model.AbstractComposite;
39  
40  
41  /**
42   * <p>Represents an HL7 XTN (extended telecommunication number) data type. 
43   * This type consists of the following components:</p>
44   * <ul>
45   * <li>[(999)] 999-9999 [X99999][C any text] (TN)
46   * <li>telecommunication use code (ID)
47   * <li>telecommunication equipment type (ID) (ID)
48   * <li>Email address (ST)
49   * <li>Country Code (NM)
50   * <li>Area/city code (NM)
51   * <li>Phone number (NM)
52   * <li>Extension (NM)
53   * <li>any text (ST)
54   * </ul>
55   */
56  @SuppressWarnings("unused")
57  public class XTN extends AbstractComposite {
58  
59      private Type[] data;
60  
61      /** 
62       * Creates a new XTN type
63       */
64      public XTN(Message message) {
65          super(message);
66          init();
67      }
68  
69      private void init() {
70          data = new Type[9];    
71          data[0] = new TN(getMessage());
72          data[1] = new ID(getMessage(), 0);
73          data[2] = new ID(getMessage(), 0);
74          data[3] = new ST(getMessage());
75          data[4] = new NM(getMessage());
76          data[5] = new NM(getMessage());
77          data[6] = new NM(getMessage());
78          data[7] = new NM(getMessage());
79          data[8] = new ST(getMessage());
80      }
81  
82  
83      /**
84       * Returns an array containing the data elements.
85       */
86      public Type[] getComponents() { 
87          return this.data; 
88      }
89  
90      /**
91       * Returns an individual data component.
92       *
93       * @param number The component number (0-indexed)
94       * @throws DataTypeException if the given element number is out of range.
95       */
96      public Type getComponent(int number) throws DataTypeException { 
97  
98          try { 
99              return this.data[number]; 
100         } catch (ArrayIndexOutOfBoundsException e) { 
101             throw new DataTypeException("Element " + number + " doesn't exist (Type " + getClass().getName() + " has only " + this.data.length + " components)"); 
102         } 
103     } 
104 
105 
106     /**
107      * Returns [(999)] 999-9999 [X99999][C any text] (component 1).  This is a convenience method that saves you from 
108      * casting and handling an exception.
109      */
110     public TN get9999999X99999CAnyText() {
111        return getTyped(0, TN.class);
112     }
113 
114     
115     /**
116      * Returns [(999)] 999-9999 [X99999][C any text] (component 1).  This is a convenience method that saves you from 
117      * casting and handling an exception.
118      */
119     public TN getXtn1_9999999X99999CAnyText() {
120        return getTyped(0, TN.class);
121     }
122 
123 
124     /**
125      * Returns telecommunication use code (component 2).  This is a convenience method that saves you from 
126      * casting and handling an exception.
127      */
128     public ID getTelecommunicationUseCode() {
129        return getTyped(1, ID.class);
130     }
131 
132     
133     /**
134      * Returns telecommunication use code (component 2).  This is a convenience method that saves you from 
135      * casting and handling an exception.
136      */
137     public ID getXtn2_TelecommunicationUseCode() {
138        return getTyped(1, ID.class);
139     }
140 
141 
142     /**
143      * Returns telecommunication equipment type (ID) (component 3).  This is a convenience method that saves you from 
144      * casting and handling an exception.
145      */
146     public ID getTelecommunicationEquipmentType() {
147        return getTyped(2, ID.class);
148     }
149 
150     
151     /**
152      * Returns telecommunication equipment type (ID) (component 3).  This is a convenience method that saves you from 
153      * casting and handling an exception.
154      */
155     public ID getXtn3_TelecommunicationEquipmentType() {
156        return getTyped(2, ID.class);
157     }
158 
159 
160     /**
161      * Returns Email address (component 4).  This is a convenience method that saves you from 
162      * casting and handling an exception.
163      */
164     public ST getEmailAddress() {
165        return getTyped(3, ST.class);
166     }
167 
168     
169     /**
170      * Returns Email address (component 4).  This is a convenience method that saves you from 
171      * casting and handling an exception.
172      */
173     public ST getXtn4_EmailAddress() {
174        return getTyped(3, ST.class);
175     }
176 
177 
178     /**
179      * Returns Country Code (component 5).  This is a convenience method that saves you from 
180      * casting and handling an exception.
181      */
182     public NM getCountryCode() {
183        return getTyped(4, NM.class);
184     }
185 
186     
187     /**
188      * Returns Country Code (component 5).  This is a convenience method that saves you from 
189      * casting and handling an exception.
190      */
191     public NM getXtn5_CountryCode() {
192        return getTyped(4, NM.class);
193     }
194 
195 
196     /**
197      * Returns Area/city code (component 6).  This is a convenience method that saves you from 
198      * casting and handling an exception.
199      */
200     public NM getAreaCityCode() {
201        return getTyped(5, NM.class);
202     }
203 
204     
205     /**
206      * Returns Area/city code (component 6).  This is a convenience method that saves you from 
207      * casting and handling an exception.
208      */
209     public NM getXtn6_AreaCityCode() {
210        return getTyped(5, NM.class);
211     }
212 
213 
214     /**
215      * Returns Phone number (component 7).  This is a convenience method that saves you from 
216      * casting and handling an exception.
217      */
218     public NM getPhoneNumber() {
219        return getTyped(6, NM.class);
220     }
221 
222     
223     /**
224      * Returns Phone number (component 7).  This is a convenience method that saves you from 
225      * casting and handling an exception.
226      */
227     public NM getXtn7_PhoneNumber() {
228        return getTyped(6, NM.class);
229     }
230 
231 
232     /**
233      * Returns Extension (component 8).  This is a convenience method that saves you from 
234      * casting and handling an exception.
235      */
236     public NM getExtension() {
237        return getTyped(7, NM.class);
238     }
239 
240     
241     /**
242      * Returns Extension (component 8).  This is a convenience method that saves you from 
243      * casting and handling an exception.
244      */
245     public NM getXtn8_Extension() {
246        return getTyped(7, NM.class);
247     }
248 
249 
250     /**
251      * Returns any text (component 9).  This is a convenience method that saves you from 
252      * casting and handling an exception.
253      */
254     public ST getAnyText() {
255        return getTyped(8, ST.class);
256     }
257 
258     
259     /**
260      * Returns any text (component 9).  This is a convenience method that saves you from 
261      * casting and handling an exception.
262      */
263     public ST getXtn9_AnyText() {
264        return getTyped(8, ST.class);
265     }
266 
267 
268 
269 }
270