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 Wed, Jan 30, 2019 16:19-0500 for FHIR v4.0.0
033
034import org.hl7.fhir.exceptions.FHIRException;
035
036public enum EndpointConnectionType {
037
038  /**
039   * IHE Cross Community Patient Discovery Profile (XCPD) -
040   * http://wiki.ihe.net/index.php/Cross-Community_Patient_Discovery
041   */
042  IHEXCPD,
043  /**
044   * IHE Cross Community Access Profile (XCA) -
045   * http://wiki.ihe.net/index.php/Cross-Community_Access
046   */
047  IHEXCA,
048  /**
049   * IHE Cross-Enterprise Document Reliable Exchange (XDR) -
050   * http://wiki.ihe.net/index.php/Cross-enterprise_Document_Reliable_Interchange
051   */
052  IHEXDR,
053  /**
054   * IHE Cross-Enterprise Document Sharing (XDS) -
055   * http://wiki.ihe.net/index.php/Cross-Enterprise_Document_Sharing
056   */
057  IHEXDS,
058  /**
059   * IHE Invoke Image Display (IID) -
060   * http://wiki.ihe.net/index.php/Invoke_Image_Display
061   */
062  IHEIID,
063  /**
064   * DICOMweb RESTful Image Retrieve -
065   * http://dicom.nema.org/medical/dicom/current/output/chtml/part18/sect_6.5.html
066   */
067  DICOMWADORS,
068  /**
069   * DICOMweb RESTful Image query -
070   * http://dicom.nema.org/medical/dicom/current/output/chtml/part18/sect_6.7.html
071   */
072  DICOMQIDORS,
073  /**
074   * DICOMweb RESTful image sending and storage -
075   * http://dicom.nema.org/medical/dicom/current/output/chtml/part18/sect_6.6.html
076   */
077  DICOMSTOWRS,
078  /**
079   * DICOMweb Image Retrieve -
080   * http://dicom.nema.org/dicom/2013/output/chtml/part18/sect_6.3.html
081   */
082  DICOMWADOURI,
083  /**
084   * Interact with the server interface using FHIR's RESTful interface. For
085   * details on its version/capabilities you should connect the value in
086   * Endpoint.address and retrieve the FHIR CapabilityStatement.
087   */
088  HL7FHIRREST,
089  /**
090   * Use the servers FHIR Messaging interface. Details can be found on the
091   * messaging.html page in the FHIR Specification. The FHIR server's base address
092   * is specified in the Endpoint.address property.
093   */
094  HL7FHIRMSG,
095  /**
096   * HL7v2 messages over an LLP TCP connection
097   */
098  HL7V2MLLP,
099  /**
100   * Email delivery using a digital certificate to encrypt the content using the
101   * public key, receiver must have the private key to decrypt the content
102   */
103  SECUREEMAIL,
104  /**
105   * Direct Project information - http://wiki.directproject.org/
106   */
107  DIRECTPROJECT,
108  /**
109   * added to help the parsers
110   */
111  NULL;
112
113  public static EndpointConnectionType fromCode(String codeString) throws FHIRException {
114    if (codeString == null || "".equals(codeString))
115      return null;
116    if ("ihe-xcpd".equals(codeString))
117      return IHEXCPD;
118    if ("ihe-xca".equals(codeString))
119      return IHEXCA;
120    if ("ihe-xdr".equals(codeString))
121      return IHEXDR;
122    if ("ihe-xds".equals(codeString))
123      return IHEXDS;
124    if ("ihe-iid".equals(codeString))
125      return IHEIID;
126    if ("dicom-wado-rs".equals(codeString))
127      return DICOMWADORS;
128    if ("dicom-qido-rs".equals(codeString))
129      return DICOMQIDORS;
130    if ("dicom-stow-rs".equals(codeString))
131      return DICOMSTOWRS;
132    if ("dicom-wado-uri".equals(codeString))
133      return DICOMWADOURI;
134    if ("hl7-fhir-rest".equals(codeString))
135      return HL7FHIRREST;
136    if ("hl7-fhir-msg".equals(codeString))
137      return HL7FHIRMSG;
138    if ("hl7v2-mllp".equals(codeString))
139      return HL7V2MLLP;
140    if ("secure-email".equals(codeString))
141      return SECUREEMAIL;
142    if ("direct-project".equals(codeString))
143      return DIRECTPROJECT;
144    throw new FHIRException("Unknown EndpointConnectionType code '" + codeString + "'");
145  }
146
147  public String toCode() {
148    switch (this) {
149    case IHEXCPD:
150      return "ihe-xcpd";
151    case IHEXCA:
152      return "ihe-xca";
153    case IHEXDR:
154      return "ihe-xdr";
155    case IHEXDS:
156      return "ihe-xds";
157    case IHEIID:
158      return "ihe-iid";
159    case DICOMWADORS:
160      return "dicom-wado-rs";
161    case DICOMQIDORS:
162      return "dicom-qido-rs";
163    case DICOMSTOWRS:
164      return "dicom-stow-rs";
165    case DICOMWADOURI:
166      return "dicom-wado-uri";
167    case HL7FHIRREST:
168      return "hl7-fhir-rest";
169    case HL7FHIRMSG:
170      return "hl7-fhir-msg";
171    case HL7V2MLLP:
172      return "hl7v2-mllp";
173    case SECUREEMAIL:
174      return "secure-email";
175    case DIRECTPROJECT:
176      return "direct-project";
177    case NULL:
178      return null;
179    default:
180      return "?";
181    }
182  }
183
184  public String getSystem() {
185    return "http://terminology.hl7.org/CodeSystem/endpoint-connection-type";
186  }
187
188  public String getDefinition() {
189    switch (this) {
190    case IHEXCPD:
191      return "IHE Cross Community Patient Discovery Profile (XCPD) - http://wiki.ihe.net/index.php/Cross-Community_Patient_Discovery";
192    case IHEXCA:
193      return "IHE Cross Community Access Profile (XCA) - http://wiki.ihe.net/index.php/Cross-Community_Access";
194    case IHEXDR:
195      return "IHE Cross-Enterprise Document Reliable Exchange (XDR) - http://wiki.ihe.net/index.php/Cross-enterprise_Document_Reliable_Interchange";
196    case IHEXDS:
197      return "IHE Cross-Enterprise Document Sharing (XDS) - http://wiki.ihe.net/index.php/Cross-Enterprise_Document_Sharing";
198    case IHEIID:
199      return "IHE Invoke Image Display (IID) - http://wiki.ihe.net/index.php/Invoke_Image_Display";
200    case DICOMWADORS:
201      return "DICOMweb RESTful Image Retrieve - http://dicom.nema.org/medical/dicom/current/output/chtml/part18/sect_6.5.html";
202    case DICOMQIDORS:
203      return "DICOMweb RESTful Image query - http://dicom.nema.org/medical/dicom/current/output/chtml/part18/sect_6.7.html";
204    case DICOMSTOWRS:
205      return "DICOMweb RESTful image sending and storage - http://dicom.nema.org/medical/dicom/current/output/chtml/part18/sect_6.6.html";
206    case DICOMWADOURI:
207      return "DICOMweb Image Retrieve - http://dicom.nema.org/dicom/2013/output/chtml/part18/sect_6.3.html";
208    case HL7FHIRREST:
209      return "Interact with the server interface using FHIR's RESTful interface. For details on its version/capabilities you should connect the value in Endpoint.address and retrieve the FHIR CapabilityStatement.";
210    case HL7FHIRMSG:
211      return "Use the servers FHIR Messaging interface. Details can be found on the messaging.html page in the FHIR Specification. The FHIR server's base address is specified in the Endpoint.address property.";
212    case HL7V2MLLP:
213      return "HL7v2 messages over an LLP TCP connection";
214    case SECUREEMAIL:
215      return "Email delivery using a digital certificate to encrypt the content using the public key, receiver must have the private key to decrypt the content";
216    case DIRECTPROJECT:
217      return "Direct Project information - http://wiki.directproject.org/";
218    case NULL:
219      return null;
220    default:
221      return "?";
222    }
223  }
224
225  public String getDisplay() {
226    switch (this) {
227    case IHEXCPD:
228      return "IHE XCPD";
229    case IHEXCA:
230      return "IHE XCA";
231    case IHEXDR:
232      return "IHE XDR";
233    case IHEXDS:
234      return "IHE XDS";
235    case IHEIID:
236      return "IHE IID";
237    case DICOMWADORS:
238      return "DICOM WADO-RS";
239    case DICOMQIDORS:
240      return "DICOM QIDO-RS";
241    case DICOMSTOWRS:
242      return "DICOM STOW-RS";
243    case DICOMWADOURI:
244      return "DICOM WADO-URI";
245    case HL7FHIRREST:
246      return "HL7 FHIR";
247    case HL7FHIRMSG:
248      return "HL7 FHIR Messaging";
249    case HL7V2MLLP:
250      return "HL7 v2 MLLP";
251    case SECUREEMAIL:
252      return "Secure email";
253    case DIRECTPROJECT:
254      return "Direct Project";
255    case NULL:
256      return null;
257    default:
258      return "?";
259    }
260  }
261
262}