001package org.hl7.fhir.r4.model.codesystems;
002
003/*-
004 * #%L
005 * org.hl7.fhir.r4
006 * %%
007 * Copyright (C) 2014 - 2019 Health Level 7
008 * %%
009 * Licensed under the Apache License, Version 2.0 (the "License");
010 * you may not use this file except in compliance with the License.
011 * You may obtain a copy of the License at
012 * 
013 *      http://www.apache.org/licenses/LICENSE-2.0
014 * 
015 * Unless required by applicable law or agreed to in writing, software
016 * distributed under the License is distributed on an "AS IS" BASIS,
017 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
018 * See the License for the specific language governing permissions and
019 * limitations under the License.
020 * #L%
021 */
022
023
024/*
025  Copyright (c) 2011+, HL7, Inc.
026  All rights reserved.
027  
028  Redistribution and use in source and binary forms, with or without modification, 
029  are permitted provided that the following conditions are met:
030  
031   * Redistributions of source code must retain the above copyright notice, this 
032     list of conditions and the following disclaimer.
033   * Redistributions in binary form must reproduce the above copyright notice, 
034     this list of conditions and the following disclaimer in the documentation 
035     and/or other materials provided with the distribution.
036   * Neither the name of HL7 nor the names of its contributors may be used to 
037     endorse or promote products derived from this software without specific 
038     prior written permission.
039  
040  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 
041  ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
042  WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 
043  IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 
044  INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 
045  NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 
046  PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 
047  WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 
048  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
049  POSSIBILITY OF SUCH DAMAGE.
050  
051*/
052
053// Generated on Wed, Jan 30, 2019 16:19-0500 for FHIR v4.0.0
054
055
056import org.hl7.fhir.exceptions.FHIRException;
057
058public enum V3GTSAbbreviation {
059
060        /**
061         * Every morning at institution specified times.
062         */
063        AM, 
064        /**
065         * At bedtime (institution specified time).
066         */
067        BED, 
068        /**
069         * Two times a day at institution specified time
070         */
071        BID, 
072        /**
073         * Regular business days (Monday to Friday excluding holidays)
074         */
075        JB, 
076        /**
077         * Regular weekends (Saturday and Sunday excluding holidays)
078         */
079        JE, 
080        /**
081         * Holidays
082         */
083        JH, 
084        /**
085         * Christian Holidays (Roman/Gregorian [Western] Tradition.)
086         */
087        _GTSABBREVIATIONHOLIDAYSCHRISTIANROMAN, 
088        /**
089         * Easter Sunday.  The Easter date is a rather complex calculation based on Astronomical tables describing full moon dates.  Details can be found at [http://www.assa.org.au/edm.html, and http://aa.usno.navy.mil/AA/faq/docs/easter.html].  Note that the Christian Orthodox Holidays are based on the Julian calendar.
090         */
091        JHCHREAS, 
092        /**
093         * Good Friday, is the Friday right before Easter Sunday.
094         */
095        JHCHRGFR, 
096        /**
097         * New Year's Day (January 1)
098         */
099        JHCHRNEW, 
100        /**
101         * Pentecost Sunday, is seven weeks after Easter (the 50th day of Easter).
102         */
103        JHCHRPEN, 
104        /**
105         * Christmas Eve (December 24)
106         */
107        JHCHRXME, 
108        /**
109         * Christmas Day (December 25)
110         */
111        JHCHRXMS, 
112        /**
113         * Description:The Netherlands National Holidays.
114         */
115        JHNNL, 
116        /**
117         * Description:Liberation day  (May 5 every five years)
118         */
119        JHNNLLD, 
120        /**
121         * Description:Queen's day (April 30)
122         */
123        JHNNLQD, 
124        /**
125         * Description:Sinterklaas (December 5)
126         */
127        JHNNLSK, 
128        /**
129         * United States National Holidays (public holidays for federal employees established by U.S. Federal law 5 U.S.C. 6103).
130         */
131        JHNUS, 
132        /**
133         * Columbus Day, the second Monday in October.
134         */
135        JHNUSCLM, 
136        /**
137         * Independence Day (4th of July)
138         */
139        JHNUSIND, 
140        /**
141         * Alternative Monday after 4th of July Weekend [5 U.S.C. 6103(b)].
142         */
143        JHNUSIND1, 
144        /**
145         * Alternative Friday before 4th of July Weekend [5 U.S.C. 6103(b)].
146         */
147        JHNUSIND5, 
148        /**
149         * Labor Day, the first Monday in September.
150         */
151        JHNUSLBR, 
152        /**
153         * Memorial Day, the last Monday in May.
154         */
155        JHNUSMEM, 
156        /**
157         * Friday before Memorial Day Weekend
158         */
159        JHNUSMEM5, 
160        /**
161         * Saturday of Memorial Day Weekend
162         */
163        JHNUSMEM6, 
164        /**
165         * Dr. Martin Luther King, Jr. Day, the third Monday in January.
166         */
167        JHNUSMLK, 
168        /**
169         * Washington's Birthday (Presidential Day) the third Monday in February.
170         */
171        JHNUSPRE, 
172        /**
173         * Thanksgiving Day, the fourth Thursday in November.
174         */
175        JHNUSTKS, 
176        /**
177         * Friday after Thanksgiving.
178         */
179        JHNUSTKS5, 
180        /**
181         * Veteran's Day, November 11.
182         */
183        JHNUSVET, 
184        /**
185         * Monthly at institution specified time.
186         */
187        MO, 
188        /**
189         * Every afternoon at institution specified times.
190         */
191        PM, 
192        /**
193         * Every hour at institution specified times.
194         */
195        Q1H, 
196        /**
197         * Every 2 hours at institution specified times.
198         */
199        Q2H, 
200        /**
201         * Every 3 hours at institution specified times.
202         */
203        Q3H, 
204        /**
205         * Every 4 hours at institution specified time
206         */
207        Q4H, 
208        /**
209         * Every 6 hours at institution specified time
210         */
211        Q6H, 
212        /**
213         * Every 8 hours at institution specified times.
214         */
215        Q8H, 
216        /**
217         * Every day at institution specified times.
218         */
219        QD, 
220        /**
221         * Four times a day at institution specified time
222         */
223        QID, 
224        /**
225         * Every other day at institution specified times.
226         */
227        QOD, 
228        /**
229         * Three times a day at institution specified time
230         */
231        TID, 
232        /**
233         * Weekly at institution specified time.
234         */
235        WK, 
236        /**
237         * added to help the parsers
238         */
239        NULL;
240        public static V3GTSAbbreviation fromCode(String codeString) throws FHIRException {
241            if (codeString == null || "".equals(codeString))
242                return null;
243        if ("AM".equals(codeString))
244          return AM;
245        if ("BED".equals(codeString))
246          return BED;
247        if ("BID".equals(codeString))
248          return BID;
249        if ("JB".equals(codeString))
250          return JB;
251        if ("JE".equals(codeString))
252          return JE;
253        if ("JH".equals(codeString))
254          return JH;
255        if ("_GTSAbbreviationHolidaysChristianRoman".equals(codeString))
256          return _GTSABBREVIATIONHOLIDAYSCHRISTIANROMAN;
257        if ("JHCHREAS".equals(codeString))
258          return JHCHREAS;
259        if ("JHCHRGFR".equals(codeString))
260          return JHCHRGFR;
261        if ("JHCHRNEW".equals(codeString))
262          return JHCHRNEW;
263        if ("JHCHRPEN".equals(codeString))
264          return JHCHRPEN;
265        if ("JHCHRXME".equals(codeString))
266          return JHCHRXME;
267        if ("JHCHRXMS".equals(codeString))
268          return JHCHRXMS;
269        if ("JHNNL".equals(codeString))
270          return JHNNL;
271        if ("JHNNLLD".equals(codeString))
272          return JHNNLLD;
273        if ("JHNNLQD".equals(codeString))
274          return JHNNLQD;
275        if ("JHNNLSK".equals(codeString))
276          return JHNNLSK;
277        if ("JHNUS".equals(codeString))
278          return JHNUS;
279        if ("JHNUSCLM".equals(codeString))
280          return JHNUSCLM;
281        if ("JHNUSIND".equals(codeString))
282          return JHNUSIND;
283        if ("JHNUSIND1".equals(codeString))
284          return JHNUSIND1;
285        if ("JHNUSIND5".equals(codeString))
286          return JHNUSIND5;
287        if ("JHNUSLBR".equals(codeString))
288          return JHNUSLBR;
289        if ("JHNUSMEM".equals(codeString))
290          return JHNUSMEM;
291        if ("JHNUSMEM5".equals(codeString))
292          return JHNUSMEM5;
293        if ("JHNUSMEM6".equals(codeString))
294          return JHNUSMEM6;
295        if ("JHNUSMLK".equals(codeString))
296          return JHNUSMLK;
297        if ("JHNUSPRE".equals(codeString))
298          return JHNUSPRE;
299        if ("JHNUSTKS".equals(codeString))
300          return JHNUSTKS;
301        if ("JHNUSTKS5".equals(codeString))
302          return JHNUSTKS5;
303        if ("JHNUSVET".equals(codeString))
304          return JHNUSVET;
305        if ("MO".equals(codeString))
306          return MO;
307        if ("PM".equals(codeString))
308          return PM;
309        if ("Q1H".equals(codeString))
310          return Q1H;
311        if ("Q2H".equals(codeString))
312          return Q2H;
313        if ("Q3H".equals(codeString))
314          return Q3H;
315        if ("Q4H".equals(codeString))
316          return Q4H;
317        if ("Q6H".equals(codeString))
318          return Q6H;
319        if ("Q8H".equals(codeString))
320          return Q8H;
321        if ("QD".equals(codeString))
322          return QD;
323        if ("QID".equals(codeString))
324          return QID;
325        if ("QOD".equals(codeString))
326          return QOD;
327        if ("TID".equals(codeString))
328          return TID;
329        if ("WK".equals(codeString))
330          return WK;
331        throw new FHIRException("Unknown V3GTSAbbreviation code '"+codeString+"'");
332        }
333        public String toCode() {
334          switch (this) {
335            case AM: return "AM";
336            case BED: return "BED";
337            case BID: return "BID";
338            case JB: return "JB";
339            case JE: return "JE";
340            case JH: return "JH";
341            case _GTSABBREVIATIONHOLIDAYSCHRISTIANROMAN: return "_GTSAbbreviationHolidaysChristianRoman";
342            case JHCHREAS: return "JHCHREAS";
343            case JHCHRGFR: return "JHCHRGFR";
344            case JHCHRNEW: return "JHCHRNEW";
345            case JHCHRPEN: return "JHCHRPEN";
346            case JHCHRXME: return "JHCHRXME";
347            case JHCHRXMS: return "JHCHRXMS";
348            case JHNNL: return "JHNNL";
349            case JHNNLLD: return "JHNNLLD";
350            case JHNNLQD: return "JHNNLQD";
351            case JHNNLSK: return "JHNNLSK";
352            case JHNUS: return "JHNUS";
353            case JHNUSCLM: return "JHNUSCLM";
354            case JHNUSIND: return "JHNUSIND";
355            case JHNUSIND1: return "JHNUSIND1";
356            case JHNUSIND5: return "JHNUSIND5";
357            case JHNUSLBR: return "JHNUSLBR";
358            case JHNUSMEM: return "JHNUSMEM";
359            case JHNUSMEM5: return "JHNUSMEM5";
360            case JHNUSMEM6: return "JHNUSMEM6";
361            case JHNUSMLK: return "JHNUSMLK";
362            case JHNUSPRE: return "JHNUSPRE";
363            case JHNUSTKS: return "JHNUSTKS";
364            case JHNUSTKS5: return "JHNUSTKS5";
365            case JHNUSVET: return "JHNUSVET";
366            case MO: return "MO";
367            case PM: return "PM";
368            case Q1H: return "Q1H";
369            case Q2H: return "Q2H";
370            case Q3H: return "Q3H";
371            case Q4H: return "Q4H";
372            case Q6H: return "Q6H";
373            case Q8H: return "Q8H";
374            case QD: return "QD";
375            case QID: return "QID";
376            case QOD: return "QOD";
377            case TID: return "TID";
378            case WK: return "WK";
379            default: return "?";
380          }
381        }
382        public String getSystem() {
383          return "http://terminology.hl7.org/CodeSystem/v3-GTSAbbreviation";
384        }
385        public String getDefinition() {
386          switch (this) {
387            case AM: return "Every morning at institution specified times.";
388            case BED: return "At bedtime (institution specified time).";
389            case BID: return "Two times a day at institution specified time";
390            case JB: return "Regular business days (Monday to Friday excluding holidays)";
391            case JE: return "Regular weekends (Saturday and Sunday excluding holidays)";
392            case JH: return "Holidays";
393            case _GTSABBREVIATIONHOLIDAYSCHRISTIANROMAN: return "Christian Holidays (Roman/Gregorian [Western] Tradition.)";
394            case JHCHREAS: return "Easter Sunday.  The Easter date is a rather complex calculation based on Astronomical tables describing full moon dates.  Details can be found at [http://www.assa.org.au/edm.html, and http://aa.usno.navy.mil/AA/faq/docs/easter.html].  Note that the Christian Orthodox Holidays are based on the Julian calendar.";
395            case JHCHRGFR: return "Good Friday, is the Friday right before Easter Sunday.";
396            case JHCHRNEW: return "New Year's Day (January 1)";
397            case JHCHRPEN: return "Pentecost Sunday, is seven weeks after Easter (the 50th day of Easter).";
398            case JHCHRXME: return "Christmas Eve (December 24)";
399            case JHCHRXMS: return "Christmas Day (December 25)";
400            case JHNNL: return "Description:The Netherlands National Holidays.";
401            case JHNNLLD: return "Description:Liberation day  (May 5 every five years)";
402            case JHNNLQD: return "Description:Queen's day (April 30)";
403            case JHNNLSK: return "Description:Sinterklaas (December 5)";
404            case JHNUS: return "United States National Holidays (public holidays for federal employees established by U.S. Federal law 5 U.S.C. 6103).";
405            case JHNUSCLM: return "Columbus Day, the second Monday in October.";
406            case JHNUSIND: return "Independence Day (4th of July)";
407            case JHNUSIND1: return "Alternative Monday after 4th of July Weekend [5 U.S.C. 6103(b)].";
408            case JHNUSIND5: return "Alternative Friday before 4th of July Weekend [5 U.S.C. 6103(b)].";
409            case JHNUSLBR: return "Labor Day, the first Monday in September.";
410            case JHNUSMEM: return "Memorial Day, the last Monday in May.";
411            case JHNUSMEM5: return "Friday before Memorial Day Weekend";
412            case JHNUSMEM6: return "Saturday of Memorial Day Weekend";
413            case JHNUSMLK: return "Dr. Martin Luther King, Jr. Day, the third Monday in January.";
414            case JHNUSPRE: return "Washington's Birthday (Presidential Day) the third Monday in February.";
415            case JHNUSTKS: return "Thanksgiving Day, the fourth Thursday in November.";
416            case JHNUSTKS5: return "Friday after Thanksgiving.";
417            case JHNUSVET: return "Veteran's Day, November 11.";
418            case MO: return "Monthly at institution specified time.";
419            case PM: return "Every afternoon at institution specified times.";
420            case Q1H: return "Every hour at institution specified times.";
421            case Q2H: return "Every 2 hours at institution specified times.";
422            case Q3H: return "Every 3 hours at institution specified times.";
423            case Q4H: return "Every 4 hours at institution specified time";
424            case Q6H: return "Every 6 hours at institution specified time";
425            case Q8H: return "Every 8 hours at institution specified times.";
426            case QD: return "Every day at institution specified times.";
427            case QID: return "Four times a day at institution specified time";
428            case QOD: return "Every other day at institution specified times.";
429            case TID: return "Three times a day at institution specified time";
430            case WK: return "Weekly at institution specified time.";
431            default: return "?";
432          }
433        }
434        public String getDisplay() {
435          switch (this) {
436            case AM: return "AM";
437            case BED: return "at bedtime";
438            case BID: return "BID";
439            case JB: return "JB";
440            case JE: return "JE";
441            case JH: return "GTSAbbreviationHolidays";
442            case _GTSABBREVIATIONHOLIDAYSCHRISTIANROMAN: return "GTSAbbreviationHolidaysChristianRoman";
443            case JHCHREAS: return "JHCHREAS";
444            case JHCHRGFR: return "JHCHRGFR";
445            case JHCHRNEW: return "JHCHRNEW";
446            case JHCHRPEN: return "JHCHRPEN";
447            case JHCHRXME: return "JHCHRXME";
448            case JHCHRXMS: return "JHCHRXMS";
449            case JHNNL: return "The Netherlands National Holidays";
450            case JHNNLLD: return "Liberation day (May 5 every five years)";
451            case JHNNLQD: return "Queen's day (April 30)";
452            case JHNNLSK: return "Sinterklaas (December 5)";
453            case JHNUS: return "GTSAbbreviationHolidaysUSNational";
454            case JHNUSCLM: return "JHNUSCLM";
455            case JHNUSIND: return "JHNUSIND";
456            case JHNUSIND1: return "JHNUSIND1";
457            case JHNUSIND5: return "JHNUSIND5";
458            case JHNUSLBR: return "JHNUSLBR";
459            case JHNUSMEM: return "JHNUSMEM";
460            case JHNUSMEM5: return "JHNUSMEM5";
461            case JHNUSMEM6: return "JHNUSMEM6";
462            case JHNUSMLK: return "JHNUSMLK";
463            case JHNUSPRE: return "JHNUSPRE";
464            case JHNUSTKS: return "JHNUSTKS";
465            case JHNUSTKS5: return "JHNUSTKS5";
466            case JHNUSVET: return "JHNUSVET";
467            case MO: return "monthly";
468            case PM: return "PM";
469            case Q1H: return "every hour";
470            case Q2H: return "every 2 hours";
471            case Q3H: return "every 3 hours";
472            case Q4H: return "Q4H";
473            case Q6H: return "Q6H";
474            case Q8H: return "every 8 hours";
475            case QD: return "QD";
476            case QID: return "QID";
477            case QOD: return "QOD";
478            case TID: return "TID";
479            case WK: return "weekly";
480            default: return "?";
481          }
482    }
483
484
485}
486