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 "CP.java".  Description:
15   * "Composite class CP"
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.v27.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 CP (Composite Price) data type. 
43   * This type consists of the following components:</p>
44   * <ul>
45   * <li>Price (MO)
46   * <li>Price Type (ID)
47   * <li>From Value (NM)
48   * <li>To Value (NM)
49   * <li>Range Units (CWE)
50   * <li>Range Type (ID)
51   * </ul>
52   */
53  @SuppressWarnings("unused")
54  public class CP extends AbstractComposite {
55  
56      private Type[] data;
57  
58      /** 
59       * Creates a new CP type
60       */
61      public CP(Message message) {
62          super(message);
63          init();
64      }
65  
66      private void init() {
67          data = new Type[6];    
68          data[0] = new MO(getMessage());
69          data[1] = new ID(getMessage(), 205);
70          data[2] = new NM(getMessage());
71          data[3] = new NM(getMessage());
72          data[4] = new CWE(getMessage());
73          data[5] = new ID(getMessage(), 298);
74      }
75  
76  
77      /**
78       * Returns an array containing the data elements.
79       */
80      public Type[] getComponents() { 
81          return this.data; 
82      }
83  
84      /**
85       * Returns an individual data component.
86       *
87       * @param number The component number (0-indexed)
88       * @throws DataTypeException if the given element number is out of range.
89       */
90      public Type getComponent(int number) throws DataTypeException { 
91  
92          try { 
93              return this.data[number]; 
94          } catch (ArrayIndexOutOfBoundsException e) { 
95              throw new DataTypeException("Element " + number + " doesn't exist (Type " + getClass().getName() + " has only " + this.data.length + " components)"); 
96          } 
97      } 
98  
99  
100     /**
101      * Returns Price (component 1).  This is a convenience method that saves you from 
102      * casting and handling an exception.
103      */
104     public MO getPrice() {
105        return getTyped(0, MO.class);
106     }
107 
108     
109     /**
110      * Returns Price (component 1).  This is a convenience method that saves you from 
111      * casting and handling an exception.
112      */
113     public MO getCp1_Price() {
114        return getTyped(0, MO.class);
115     }
116 
117 
118     /**
119      * Returns Price Type (component 2).  This is a convenience method that saves you from 
120      * casting and handling an exception.
121      */
122     public ID getPriceType() {
123        return getTyped(1, ID.class);
124     }
125 
126     
127     /**
128      * Returns Price Type (component 2).  This is a convenience method that saves you from 
129      * casting and handling an exception.
130      */
131     public ID getCp2_PriceType() {
132        return getTyped(1, ID.class);
133     }
134 
135 
136     /**
137      * Returns From Value (component 3).  This is a convenience method that saves you from 
138      * casting and handling an exception.
139      */
140     public NM getFromValue() {
141        return getTyped(2, NM.class);
142     }
143 
144     
145     /**
146      * Returns From Value (component 3).  This is a convenience method that saves you from 
147      * casting and handling an exception.
148      */
149     public NM getCp3_FromValue() {
150        return getTyped(2, NM.class);
151     }
152 
153 
154     /**
155      * Returns To Value (component 4).  This is a convenience method that saves you from 
156      * casting and handling an exception.
157      */
158     public NM getToValue() {
159        return getTyped(3, NM.class);
160     }
161 
162     
163     /**
164      * Returns To Value (component 4).  This is a convenience method that saves you from 
165      * casting and handling an exception.
166      */
167     public NM getCp4_ToValue() {
168        return getTyped(3, NM.class);
169     }
170 
171 
172     /**
173      * Returns Range Units (component 5).  This is a convenience method that saves you from 
174      * casting and handling an exception.
175      */
176     public CWE getRangeUnits() {
177        return getTyped(4, CWE.class);
178     }
179 
180     
181     /**
182      * Returns Range Units (component 5).  This is a convenience method that saves you from 
183      * casting and handling an exception.
184      */
185     public CWE getCp5_RangeUnits() {
186        return getTyped(4, CWE.class);
187     }
188 
189 
190     /**
191      * Returns Range Type (component 6).  This is a convenience method that saves you from 
192      * casting and handling an exception.
193      */
194     public ID getRangeType() {
195        return getTyped(5, ID.class);
196     }
197 
198     
199     /**
200      * Returns Range Type (component 6).  This is a convenience method that saves you from 
201      * casting and handling an exception.
202      */
203     public ID getCp6_RangeType() {
204        return getTyped(5, ID.class);
205     }
206 
207 
208 
209 }
210