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 SubscriptionChannelType { 037 038 /** 039 * The channel is executed by making a post to the URI. If a payload is 040 * included, the URL is interpreted as the service base, and an update (PUT) is 041 * made. 042 */ 043 RESTHOOK, 044 /** 045 * The channel is executed by sending a packet across a web socket connection 046 * maintained by the client. The URL identifies the websocket, and the client 047 * binds to this URL. 048 */ 049 WEBSOCKET, 050 /** 051 * The channel is executed by sending an email to the email addressed in the URI 052 * (which must be a mailto:). 053 */ 054 EMAIL, 055 /** 056 * The channel is executed by sending an SMS message to the phone number 057 * identified in the URL (tel:). 058 */ 059 SMS, 060 /** 061 * The channel is executed by sending a message (e.g. a Bundle with a 062 * MessageHeader resource etc.) to the application identified in the URI. 063 */ 064 MESSAGE, 065 /** 066 * added to help the parsers 067 */ 068 NULL; 069 070 public static SubscriptionChannelType fromCode(String codeString) throws FHIRException { 071 if (codeString == null || "".equals(codeString)) 072 return null; 073 if ("rest-hook".equals(codeString)) 074 return RESTHOOK; 075 if ("websocket".equals(codeString)) 076 return WEBSOCKET; 077 if ("email".equals(codeString)) 078 return EMAIL; 079 if ("sms".equals(codeString)) 080 return SMS; 081 if ("message".equals(codeString)) 082 return MESSAGE; 083 throw new FHIRException("Unknown SubscriptionChannelType code '" + codeString + "'"); 084 } 085 086 public String toCode() { 087 switch (this) { 088 case RESTHOOK: 089 return "rest-hook"; 090 case WEBSOCKET: 091 return "websocket"; 092 case EMAIL: 093 return "email"; 094 case SMS: 095 return "sms"; 096 case MESSAGE: 097 return "message"; 098 case NULL: 099 return null; 100 default: 101 return "?"; 102 } 103 } 104 105 public String getSystem() { 106 return "http://hl7.org/fhir/subscription-channel-type"; 107 } 108 109 public String getDefinition() { 110 switch (this) { 111 case RESTHOOK: 112 return "The channel is executed by making a post to the URI. If a payload is included, the URL is interpreted as the service base, and an update (PUT) is made."; 113 case WEBSOCKET: 114 return "The channel is executed by sending a packet across a web socket connection maintained by the client. The URL identifies the websocket, and the client binds to this URL."; 115 case EMAIL: 116 return "The channel is executed by sending an email to the email addressed in the URI (which must be a mailto:)."; 117 case SMS: 118 return "The channel is executed by sending an SMS message to the phone number identified in the URL (tel:)."; 119 case MESSAGE: 120 return "The channel is executed by sending a message (e.g. a Bundle with a MessageHeader resource etc.) to the application identified in the URI."; 121 case NULL: 122 return null; 123 default: 124 return "?"; 125 } 126 } 127 128 public String getDisplay() { 129 switch (this) { 130 case RESTHOOK: 131 return "Rest Hook"; 132 case WEBSOCKET: 133 return "Websocket"; 134 case EMAIL: 135 return "Email"; 136 case SMS: 137 return "SMS"; 138 case MESSAGE: 139 return "Message"; 140 case NULL: 141 return null; 142 default: 143 return "?"; 144 } 145 } 146 147}