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