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 OperationOutcome {
059
060        /**
061         * null
062         */
063        DELETEMULTIPLEMATCHES, 
064        /**
065         * null
066         */
067        MSGAUTHREQUIRED, 
068        /**
069         * null
070         */
071        MSGBADFORMAT, 
072        /**
073         * null
074         */
075        MSGBADSYNTAX, 
076        /**
077         * null
078         */
079        MSGCANTPARSECONTENT, 
080        /**
081         * null
082         */
083        MSGCANTPARSEROOT, 
084        /**
085         * null
086         */
087        MSGCREATED, 
088        /**
089         * null
090         */
091        MSGDATEFORMAT, 
092        /**
093         * null
094         */
095        MSGDELETED, 
096        /**
097         * null
098         */
099        MSGDELETEDDONE, 
100        /**
101         * null
102         */
103        MSGDELETEDID, 
104        /**
105         * null
106         */
107        MSGDUPLICATEID, 
108        /**
109         * null
110         */
111        MSGERRORPARSING, 
112        /**
113         * null
114         */
115        MSGIDINVALID, 
116        /**
117         * null
118         */
119        MSGIDTOOLONG, 
120        /**
121         * null
122         */
123        MSGINVALIDID, 
124        /**
125         * null
126         */
127        MSGJSONOBJECT, 
128        /**
129         * null
130         */
131        MSGLOCALFAIL, 
132        /**
133         * null
134         */
135        MSGNOEXIST, 
136        /**
137         * null
138         */
139        MSGNOMATCH, 
140        /**
141         * null
142         */
143        MSGNOMODULE, 
144        /**
145         * null
146         */
147        MSGNOSUMMARY, 
148        /**
149         * null
150         */
151        MSGOPNOTALLOWED, 
152        /**
153         * null
154         */
155        MSGPARAMCHAINED, 
156        /**
157         * null
158         */
159        MSGPARAMINVALID, 
160        /**
161         * null
162         */
163        MSGPARAMMODIFIERINVALID, 
164        /**
165         * null
166         */
167        MSGPARAMNOREPEAT, 
168        /**
169         * null
170         */
171        MSGPARAMUNKNOWN, 
172        /**
173         * null
174         */
175        MSGRESOURCEEXAMPLEPROTECTED, 
176        /**
177         * null
178         */
179        MSGRESOURCEIDFAIL, 
180        /**
181         * null
182         */
183        MSGRESOURCEIDMISMATCH, 
184        /**
185         * null
186         */
187        MSGRESOURCEIDMISSING, 
188        /**
189         * null
190         */
191        MSGRESOURCENOTALLOWED, 
192        /**
193         * null
194         */
195        MSGRESOURCEREQUIRED, 
196        /**
197         * null
198         */
199        MSGRESOURCETYPEMISMATCH, 
200        /**
201         * null
202         */
203        MSGSORTUNKNOWN, 
204        /**
205         * null
206         */
207        MSGTRANSACTIONDUPLICATEID, 
208        /**
209         * null
210         */
211        MSGTRANSACTIONMISSINGID, 
212        /**
213         * null
214         */
215        MSGUNHANDLEDNODETYPE, 
216        /**
217         * null
218         */
219        MSGUNKNOWNCONTENT, 
220        /**
221         * null
222         */
223        MSGUNKNOWNOPERATION, 
224        /**
225         * null
226         */
227        MSGUNKNOWNTYPE, 
228        /**
229         * null
230         */
231        MSGUPDATED, 
232        /**
233         * null
234         */
235        MSGVERSIONAWARE, 
236        /**
237         * null
238         */
239        MSGVERSIONAWARECONFLICT, 
240        /**
241         * null
242         */
243        MSGVERSIONAWAREURL, 
244        /**
245         * null
246         */
247        MSGWRONGNS, 
248        /**
249         * null
250         */
251        SEARCHMULTIPLE, 
252        /**
253         * null
254         */
255        SEARCHNONE, 
256        /**
257         * null
258         */
259        UPDATEMULTIPLEMATCHES, 
260        /**
261         * added to help the parsers
262         */
263        NULL;
264        public static OperationOutcome fromCode(String codeString) throws FHIRException {
265            if (codeString == null || "".equals(codeString))
266                return null;
267        if ("DELETE_MULTIPLE_MATCHES".equals(codeString))
268          return DELETEMULTIPLEMATCHES;
269        if ("MSG_AUTH_REQUIRED".equals(codeString))
270          return MSGAUTHREQUIRED;
271        if ("MSG_BAD_FORMAT".equals(codeString))
272          return MSGBADFORMAT;
273        if ("MSG_BAD_SYNTAX".equals(codeString))
274          return MSGBADSYNTAX;
275        if ("MSG_CANT_PARSE_CONTENT".equals(codeString))
276          return MSGCANTPARSECONTENT;
277        if ("MSG_CANT_PARSE_ROOT".equals(codeString))
278          return MSGCANTPARSEROOT;
279        if ("MSG_CREATED".equals(codeString))
280          return MSGCREATED;
281        if ("MSG_DATE_FORMAT".equals(codeString))
282          return MSGDATEFORMAT;
283        if ("MSG_DELETED".equals(codeString))
284          return MSGDELETED;
285        if ("MSG_DELETED_DONE".equals(codeString))
286          return MSGDELETEDDONE;
287        if ("MSG_DELETED_ID".equals(codeString))
288          return MSGDELETEDID;
289        if ("MSG_DUPLICATE_ID".equals(codeString))
290          return MSGDUPLICATEID;
291        if ("MSG_ERROR_PARSING".equals(codeString))
292          return MSGERRORPARSING;
293        if ("MSG_ID_INVALID".equals(codeString))
294          return MSGIDINVALID;
295        if ("MSG_ID_TOO_LONG".equals(codeString))
296          return MSGIDTOOLONG;
297        if ("MSG_INVALID_ID".equals(codeString))
298          return MSGINVALIDID;
299        if ("MSG_JSON_OBJECT".equals(codeString))
300          return MSGJSONOBJECT;
301        if ("MSG_LOCAL_FAIL".equals(codeString))
302          return MSGLOCALFAIL;
303        if ("MSG_NO_EXIST".equals(codeString))
304          return MSGNOEXIST;
305        if ("MSG_NO_MATCH".equals(codeString))
306          return MSGNOMATCH;
307        if ("MSG_NO_MODULE".equals(codeString))
308          return MSGNOMODULE;
309        if ("MSG_NO_SUMMARY".equals(codeString))
310          return MSGNOSUMMARY;
311        if ("MSG_OP_NOT_ALLOWED".equals(codeString))
312          return MSGOPNOTALLOWED;
313        if ("MSG_PARAM_CHAINED".equals(codeString))
314          return MSGPARAMCHAINED;
315        if ("MSG_PARAM_INVALID".equals(codeString))
316          return MSGPARAMINVALID;
317        if ("MSG_PARAM_MODIFIER_INVALID".equals(codeString))
318          return MSGPARAMMODIFIERINVALID;
319        if ("MSG_PARAM_NO_REPEAT".equals(codeString))
320          return MSGPARAMNOREPEAT;
321        if ("MSG_PARAM_UNKNOWN".equals(codeString))
322          return MSGPARAMUNKNOWN;
323        if ("MSG_RESOURCE_EXAMPLE_PROTECTED".equals(codeString))
324          return MSGRESOURCEEXAMPLEPROTECTED;
325        if ("MSG_RESOURCE_ID_FAIL".equals(codeString))
326          return MSGRESOURCEIDFAIL;
327        if ("MSG_RESOURCE_ID_MISMATCH".equals(codeString))
328          return MSGRESOURCEIDMISMATCH;
329        if ("MSG_RESOURCE_ID_MISSING".equals(codeString))
330          return MSGRESOURCEIDMISSING;
331        if ("MSG_RESOURCE_NOT_ALLOWED".equals(codeString))
332          return MSGRESOURCENOTALLOWED;
333        if ("MSG_RESOURCE_REQUIRED".equals(codeString))
334          return MSGRESOURCEREQUIRED;
335        if ("MSG_RESOURCE_TYPE_MISMATCH".equals(codeString))
336          return MSGRESOURCETYPEMISMATCH;
337        if ("MSG_SORT_UNKNOWN".equals(codeString))
338          return MSGSORTUNKNOWN;
339        if ("MSG_TRANSACTION_DUPLICATE_ID".equals(codeString))
340          return MSGTRANSACTIONDUPLICATEID;
341        if ("MSG_TRANSACTION_MISSING_ID".equals(codeString))
342          return MSGTRANSACTIONMISSINGID;
343        if ("MSG_UNHANDLED_NODE_TYPE".equals(codeString))
344          return MSGUNHANDLEDNODETYPE;
345        if ("MSG_UNKNOWN_CONTENT".equals(codeString))
346          return MSGUNKNOWNCONTENT;
347        if ("MSG_UNKNOWN_OPERATION".equals(codeString))
348          return MSGUNKNOWNOPERATION;
349        if ("MSG_UNKNOWN_TYPE".equals(codeString))
350          return MSGUNKNOWNTYPE;
351        if ("MSG_UPDATED".equals(codeString))
352          return MSGUPDATED;
353        if ("MSG_VERSION_AWARE".equals(codeString))
354          return MSGVERSIONAWARE;
355        if ("MSG_VERSION_AWARE_CONFLICT".equals(codeString))
356          return MSGVERSIONAWARECONFLICT;
357        if ("MSG_VERSION_AWARE_URL".equals(codeString))
358          return MSGVERSIONAWAREURL;
359        if ("MSG_WRONG_NS".equals(codeString))
360          return MSGWRONGNS;
361        if ("SEARCH_MULTIPLE".equals(codeString))
362          return SEARCHMULTIPLE;
363        if ("SEARCH_NONE".equals(codeString))
364          return SEARCHNONE;
365        if ("UPDATE_MULTIPLE_MATCHES".equals(codeString))
366          return UPDATEMULTIPLEMATCHES;
367        throw new FHIRException("Unknown OperationOutcome code '"+codeString+"'");
368        }
369        public String toCode() {
370          switch (this) {
371            case DELETEMULTIPLEMATCHES: return "DELETE_MULTIPLE_MATCHES";
372            case MSGAUTHREQUIRED: return "MSG_AUTH_REQUIRED";
373            case MSGBADFORMAT: return "MSG_BAD_FORMAT";
374            case MSGBADSYNTAX: return "MSG_BAD_SYNTAX";
375            case MSGCANTPARSECONTENT: return "MSG_CANT_PARSE_CONTENT";
376            case MSGCANTPARSEROOT: return "MSG_CANT_PARSE_ROOT";
377            case MSGCREATED: return "MSG_CREATED";
378            case MSGDATEFORMAT: return "MSG_DATE_FORMAT";
379            case MSGDELETED: return "MSG_DELETED";
380            case MSGDELETEDDONE: return "MSG_DELETED_DONE";
381            case MSGDELETEDID: return "MSG_DELETED_ID";
382            case MSGDUPLICATEID: return "MSG_DUPLICATE_ID";
383            case MSGERRORPARSING: return "MSG_ERROR_PARSING";
384            case MSGIDINVALID: return "MSG_ID_INVALID";
385            case MSGIDTOOLONG: return "MSG_ID_TOO_LONG";
386            case MSGINVALIDID: return "MSG_INVALID_ID";
387            case MSGJSONOBJECT: return "MSG_JSON_OBJECT";
388            case MSGLOCALFAIL: return "MSG_LOCAL_FAIL";
389            case MSGNOEXIST: return "MSG_NO_EXIST";
390            case MSGNOMATCH: return "MSG_NO_MATCH";
391            case MSGNOMODULE: return "MSG_NO_MODULE";
392            case MSGNOSUMMARY: return "MSG_NO_SUMMARY";
393            case MSGOPNOTALLOWED: return "MSG_OP_NOT_ALLOWED";
394            case MSGPARAMCHAINED: return "MSG_PARAM_CHAINED";
395            case MSGPARAMINVALID: return "MSG_PARAM_INVALID";
396            case MSGPARAMMODIFIERINVALID: return "MSG_PARAM_MODIFIER_INVALID";
397            case MSGPARAMNOREPEAT: return "MSG_PARAM_NO_REPEAT";
398            case MSGPARAMUNKNOWN: return "MSG_PARAM_UNKNOWN";
399            case MSGRESOURCEEXAMPLEPROTECTED: return "MSG_RESOURCE_EXAMPLE_PROTECTED";
400            case MSGRESOURCEIDFAIL: return "MSG_RESOURCE_ID_FAIL";
401            case MSGRESOURCEIDMISMATCH: return "MSG_RESOURCE_ID_MISMATCH";
402            case MSGRESOURCEIDMISSING: return "MSG_RESOURCE_ID_MISSING";
403            case MSGRESOURCENOTALLOWED: return "MSG_RESOURCE_NOT_ALLOWED";
404            case MSGRESOURCEREQUIRED: return "MSG_RESOURCE_REQUIRED";
405            case MSGRESOURCETYPEMISMATCH: return "MSG_RESOURCE_TYPE_MISMATCH";
406            case MSGSORTUNKNOWN: return "MSG_SORT_UNKNOWN";
407            case MSGTRANSACTIONDUPLICATEID: return "MSG_TRANSACTION_DUPLICATE_ID";
408            case MSGTRANSACTIONMISSINGID: return "MSG_TRANSACTION_MISSING_ID";
409            case MSGUNHANDLEDNODETYPE: return "MSG_UNHANDLED_NODE_TYPE";
410            case MSGUNKNOWNCONTENT: return "MSG_UNKNOWN_CONTENT";
411            case MSGUNKNOWNOPERATION: return "MSG_UNKNOWN_OPERATION";
412            case MSGUNKNOWNTYPE: return "MSG_UNKNOWN_TYPE";
413            case MSGUPDATED: return "MSG_UPDATED";
414            case MSGVERSIONAWARE: return "MSG_VERSION_AWARE";
415            case MSGVERSIONAWARECONFLICT: return "MSG_VERSION_AWARE_CONFLICT";
416            case MSGVERSIONAWAREURL: return "MSG_VERSION_AWARE_URL";
417            case MSGWRONGNS: return "MSG_WRONG_NS";
418            case SEARCHMULTIPLE: return "SEARCH_MULTIPLE";
419            case SEARCHNONE: return "SEARCH_NONE";
420            case UPDATEMULTIPLEMATCHES: return "UPDATE_MULTIPLE_MATCHES";
421            default: return "?";
422          }
423        }
424        public String getSystem() {
425          return "http://terminology.hl7.org/CodeSystem/operation-outcome";
426        }
427        public String getDefinition() {
428          switch (this) {
429            case DELETEMULTIPLEMATCHES: return "";
430            case MSGAUTHREQUIRED: return "";
431            case MSGBADFORMAT: return "";
432            case MSGBADSYNTAX: return "";
433            case MSGCANTPARSECONTENT: return "";
434            case MSGCANTPARSEROOT: return "";
435            case MSGCREATED: return "";
436            case MSGDATEFORMAT: return "";
437            case MSGDELETED: return "";
438            case MSGDELETEDDONE: return "";
439            case MSGDELETEDID: return "";
440            case MSGDUPLICATEID: return "";
441            case MSGERRORPARSING: return "";
442            case MSGIDINVALID: return "";
443            case MSGIDTOOLONG: return "";
444            case MSGINVALIDID: return "";
445            case MSGJSONOBJECT: return "";
446            case MSGLOCALFAIL: return "";
447            case MSGNOEXIST: return "";
448            case MSGNOMATCH: return "";
449            case MSGNOMODULE: return "";
450            case MSGNOSUMMARY: return "";
451            case MSGOPNOTALLOWED: return "";
452            case MSGPARAMCHAINED: return "";
453            case MSGPARAMINVALID: return "";
454            case MSGPARAMMODIFIERINVALID: return "";
455            case MSGPARAMNOREPEAT: return "";
456            case MSGPARAMUNKNOWN: return "";
457            case MSGRESOURCEEXAMPLEPROTECTED: return "";
458            case MSGRESOURCEIDFAIL: return "";
459            case MSGRESOURCEIDMISMATCH: return "";
460            case MSGRESOURCEIDMISSING: return "";
461            case MSGRESOURCENOTALLOWED: return "";
462            case MSGRESOURCEREQUIRED: return "";
463            case MSGRESOURCETYPEMISMATCH: return "";
464            case MSGSORTUNKNOWN: return "";
465            case MSGTRANSACTIONDUPLICATEID: return "";
466            case MSGTRANSACTIONMISSINGID: return "";
467            case MSGUNHANDLEDNODETYPE: return "";
468            case MSGUNKNOWNCONTENT: return "";
469            case MSGUNKNOWNOPERATION: return "";
470            case MSGUNKNOWNTYPE: return "";
471            case MSGUPDATED: return "";
472            case MSGVERSIONAWARE: return "";
473            case MSGVERSIONAWARECONFLICT: return "";
474            case MSGVERSIONAWAREURL: return "";
475            case MSGWRONGNS: return "";
476            case SEARCHMULTIPLE: return "";
477            case SEARCHNONE: return "";
478            case UPDATEMULTIPLEMATCHES: return "";
479            default: return "?";
480          }
481        }
482        public String getDisplay() {
483          switch (this) {
484            case DELETEMULTIPLEMATCHES: return "Error: Multiple matches exist for the conditional delete";
485            case MSGAUTHREQUIRED: return "You must authenticate before you can use this service";
486            case MSGBADFORMAT: return "Bad Syntax: \"%s\" must be a %s'";
487            case MSGBADSYNTAX: return "Bad Syntax in %s";
488            case MSGCANTPARSECONTENT: return "Unable to parse feed (entry content type = \"%s\")";
489            case MSGCANTPARSEROOT: return "Unable to parse feed (root element name = \"%s\")";
490            case MSGCREATED: return "New resource created";
491            case MSGDATEFORMAT: return "The Date value %s is not in the correct format (Xml Date Format required)";
492            case MSGDELETED: return "This resource has been deleted";
493            case MSGDELETEDDONE: return "Resource deleted";
494            case MSGDELETEDID: return "The resource \"%s\" has been deleted";
495            case MSGDUPLICATEID: return "Duplicate Id %s for resource type %s";
496            case MSGERRORPARSING: return "Error parsing resource Xml (%s)";
497            case MSGIDINVALID: return "Id \"%s\" has an invalid character \"%s\"";
498            case MSGIDTOOLONG: return "Id \"%s\" too long (length limit 36)";
499            case MSGINVALIDID: return "Id not accepted";
500            case MSGJSONOBJECT: return "Json Source for a resource should start with an object";
501            case MSGLOCALFAIL: return "Unable to resolve local reference to resource %s";
502            case MSGNOEXIST: return "Resource Id \"%s\" does not exist";
503            case MSGNOMATCH: return "No Resource found matching the query \"%s\"";
504            case MSGNOMODULE: return "No module could be found to handle the request \"%s\"";
505            case MSGNOSUMMARY: return "No Summary for this resource";
506            case MSGOPNOTALLOWED: return "Operation %s not allowed for resource %s (due to local configuration)";
507            case MSGPARAMCHAINED: return "Unknown chained parameter name \"%s\"";
508            case MSGPARAMINVALID: return "Parameter \"%s\" content is invalid";
509            case MSGPARAMMODIFIERINVALID: return "Parameter \"%s\" modifier is invalid";
510            case MSGPARAMNOREPEAT: return "Parameter \"%s\" is not allowed to repeat";
511            case MSGPARAMUNKNOWN: return "Parameter \"%s\" not understood";
512            case MSGRESOURCEEXAMPLEPROTECTED: return "Resources with identity \"example\" cannot be deleted (for testing/training purposes)";
513            case MSGRESOURCEIDFAIL: return "unable to allocate resource id";
514            case MSGRESOURCEIDMISMATCH: return "Resource Id Mismatch";
515            case MSGRESOURCEIDMISSING: return "Resource Id Missing";
516            case MSGRESOURCENOTALLOWED: return "Not allowed to submit a resource for this operation";
517            case MSGRESOURCEREQUIRED: return "A resource is required";
518            case MSGRESOURCETYPEMISMATCH: return "Resource Type Mismatch";
519            case MSGSORTUNKNOWN: return "Unknown sort parameter name \"%s\"";
520            case MSGTRANSACTIONDUPLICATEID: return "Duplicate Identifier in transaction: %s";
521            case MSGTRANSACTIONMISSINGID: return "Missing Identifier in transaction - an entry.id must be provided";
522            case MSGUNHANDLEDNODETYPE: return "Unhandled xml node type \"%s\"";
523            case MSGUNKNOWNCONTENT: return "Unknown Content (%s) at %s";
524            case MSGUNKNOWNOPERATION: return "unknown FHIR http operation";
525            case MSGUNKNOWNTYPE: return "Resource Type \"%s\" not recognised";
526            case MSGUPDATED: return "existing resource updated";
527            case MSGVERSIONAWARE: return "Version aware updates are required for this resource";
528            case MSGVERSIONAWARECONFLICT: return "Update Conflict (server current version = \"%s\", client version referenced = \"%s\")";
529            case MSGVERSIONAWAREURL: return "Version specific URL not recognised";
530            case MSGWRONGNS: return "This does not appear to be a FHIR element or resource (wrong namespace \"%s\")";
531            case SEARCHMULTIPLE: return "Error: Multiple matches exist for %s search parameters \"%s\"";
532            case SEARCHNONE: return "Error: no processable search found for %s search parameters \"%s\"";
533            case UPDATEMULTIPLEMATCHES: return "Error: Multiple matches exist for the conditional update";
534            default: return "?";
535          }
536    }
537
538
539}
540