001package org.hl7.fhir.convertors.conv10_30.resources10_30; 002 003import org.hl7.fhir.convertors.context.ConversionContext10_30; 004import org.hl7.fhir.convertors.conv10_30.datatypes10_30.complextypes10_30.Coding10_30; 005import org.hl7.fhir.convertors.conv10_30.datatypes10_30.complextypes10_30.ContactPoint10_30; 006import org.hl7.fhir.convertors.conv10_30.datatypes10_30.primitivetypes10_30.Instant10_30; 007import org.hl7.fhir.convertors.conv10_30.datatypes10_30.primitivetypes10_30.String10_30; 008import org.hl7.fhir.convertors.conv10_30.datatypes10_30.primitivetypes10_30.Uri10_30; 009import org.hl7.fhir.exceptions.FHIRException; 010 011public class Subscription10_30 { 012 013 public static org.hl7.fhir.dstu3.model.Subscription convertSubscription(org.hl7.fhir.dstu2.model.Subscription src) throws FHIRException { 014 if (src == null || src.isEmpty()) 015 return null; 016 org.hl7.fhir.dstu3.model.Subscription tgt = new org.hl7.fhir.dstu3.model.Subscription(); 017 ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().copyDomainResource(src, tgt); 018 if (src.hasCriteriaElement()) 019 tgt.setCriteriaElement(String10_30.convertString(src.getCriteriaElement())); 020 for (org.hl7.fhir.dstu2.model.ContactPoint t : src.getContact()) 021 tgt.addContact(ContactPoint10_30.convertContactPoint(t)); 022 if (src.hasReasonElement()) 023 tgt.setReasonElement(String10_30.convertString(src.getReasonElement())); 024 if (src.hasStatus()) 025 tgt.setStatusElement(convertSubscriptionStatus(src.getStatusElement())); 026 if (src.hasErrorElement()) 027 tgt.setErrorElement(String10_30.convertString(src.getErrorElement())); 028 if (src.hasChannel()) 029 tgt.setChannel(convertSubscriptionChannelComponent(src.getChannel())); 030 if (src.hasEndElement()) 031 tgt.setEndElement(Instant10_30.convertInstant(src.getEndElement())); 032 for (org.hl7.fhir.dstu2.model.Coding t : src.getTag()) tgt.addTag(Coding10_30.convertCoding(t)); 033 return tgt; 034 } 035 036 public static org.hl7.fhir.dstu2.model.Subscription convertSubscription(org.hl7.fhir.dstu3.model.Subscription src) throws FHIRException { 037 if (src == null || src.isEmpty()) 038 return null; 039 org.hl7.fhir.dstu2.model.Subscription tgt = new org.hl7.fhir.dstu2.model.Subscription(); 040 ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().copyDomainResource(src, tgt); 041 if (src.hasCriteriaElement()) 042 tgt.setCriteriaElement(String10_30.convertString(src.getCriteriaElement())); 043 for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getContact()) 044 tgt.addContact(ContactPoint10_30.convertContactPoint(t)); 045 if (src.hasReasonElement()) 046 tgt.setReasonElement(String10_30.convertString(src.getReasonElement())); 047 if (src.hasStatus()) 048 tgt.setStatusElement(convertSubscriptionStatus(src.getStatusElement())); 049 if (src.hasErrorElement()) 050 tgt.setErrorElement(String10_30.convertString(src.getErrorElement())); 051 if (src.hasChannel()) 052 tgt.setChannel(convertSubscriptionChannelComponent(src.getChannel())); 053 if (src.hasEndElement()) 054 tgt.setEndElement(Instant10_30.convertInstant(src.getEndElement())); 055 for (org.hl7.fhir.dstu3.model.Coding t : src.getTag()) tgt.addTag(Coding10_30.convertCoding(t)); 056 return tgt; 057 } 058 059 public static org.hl7.fhir.dstu2.model.Subscription.SubscriptionChannelComponent convertSubscriptionChannelComponent(org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelComponent src) throws FHIRException { 060 if (src == null || src.isEmpty()) 061 return null; 062 org.hl7.fhir.dstu2.model.Subscription.SubscriptionChannelComponent tgt = new org.hl7.fhir.dstu2.model.Subscription.SubscriptionChannelComponent(); 063 ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().copyBackboneElement(src,tgt); 064 if (src.hasType()) 065 tgt.setTypeElement(convertSubscriptionChannelType(src.getTypeElement())); 066 if (src.hasEndpointElement()) 067 tgt.setEndpointElement(Uri10_30.convertUri(src.getEndpointElement())); 068 if (src.hasPayloadElement()) 069 tgt.setPayloadElement(String10_30.convertString(src.getPayloadElement())); 070 if (src.hasHeader()) 071 tgt.setHeaderElement(String10_30.convertString(src.getHeader().get(0))); 072 return tgt; 073 } 074 075 public static org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelComponent convertSubscriptionChannelComponent(org.hl7.fhir.dstu2.model.Subscription.SubscriptionChannelComponent src) throws FHIRException { 076 if (src == null || src.isEmpty()) 077 return null; 078 org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelComponent tgt = new org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelComponent(); 079 ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().copyBackboneElement(src,tgt); 080 if (src.hasType()) 081 tgt.setTypeElement(convertSubscriptionChannelType(src.getTypeElement())); 082 if (src.hasEndpointElement()) 083 tgt.setEndpointElement(Uri10_30.convertUri(src.getEndpointElement())); 084 if (src.hasPayloadElement()) 085 tgt.setPayloadElement(String10_30.convertString(src.getPayloadElement())); 086 tgt.addHeader(src.getHeader()); 087 return tgt; 088 } 089 090 static public org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelType> convertSubscriptionChannelType(org.hl7.fhir.dstu2.model.Enumeration<org.hl7.fhir.dstu2.model.Subscription.SubscriptionChannelType> src) throws FHIRException { 091 if (src == null || src.isEmpty()) 092 return null; 093 org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelType> tgt = new org.hl7.fhir.dstu3.model.Enumeration<>(new org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelTypeEnumFactory()); 094 ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().copyElement(src, tgt); 095 switch (src.getValue()) { 096 case RESTHOOK: 097 tgt.setValue(org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelType.RESTHOOK); 098 break; 099 case WEBSOCKET: 100 tgt.setValue(org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelType.WEBSOCKET); 101 break; 102 case EMAIL: 103 tgt.setValue(org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelType.EMAIL); 104 break; 105 case SMS: 106 tgt.setValue(org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelType.SMS); 107 break; 108 case MESSAGE: 109 tgt.setValue(org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelType.MESSAGE); 110 break; 111 default: 112 tgt.setValue(org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelType.NULL); 113 break; 114 } 115 return tgt; 116 } 117 118 static public org.hl7.fhir.dstu2.model.Enumeration<org.hl7.fhir.dstu2.model.Subscription.SubscriptionChannelType> convertSubscriptionChannelType(org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelType> src) throws FHIRException { 119 if (src == null || src.isEmpty()) 120 return null; 121 org.hl7.fhir.dstu2.model.Enumeration<org.hl7.fhir.dstu2.model.Subscription.SubscriptionChannelType> tgt = new org.hl7.fhir.dstu2.model.Enumeration<>(new org.hl7.fhir.dstu2.model.Subscription.SubscriptionChannelTypeEnumFactory()); 122 ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().copyElement(src, tgt); 123 switch (src.getValue()) { 124 case RESTHOOK: 125 tgt.setValue(org.hl7.fhir.dstu2.model.Subscription.SubscriptionChannelType.RESTHOOK); 126 break; 127 case WEBSOCKET: 128 tgt.setValue(org.hl7.fhir.dstu2.model.Subscription.SubscriptionChannelType.WEBSOCKET); 129 break; 130 case EMAIL: 131 tgt.setValue(org.hl7.fhir.dstu2.model.Subscription.SubscriptionChannelType.EMAIL); 132 break; 133 case SMS: 134 tgt.setValue(org.hl7.fhir.dstu2.model.Subscription.SubscriptionChannelType.SMS); 135 break; 136 case MESSAGE: 137 tgt.setValue(org.hl7.fhir.dstu2.model.Subscription.SubscriptionChannelType.MESSAGE); 138 break; 139 default: 140 tgt.setValue(org.hl7.fhir.dstu2.model.Subscription.SubscriptionChannelType.NULL); 141 break; 142 } 143 return tgt; 144 } 145 146 static public org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.Subscription.SubscriptionStatus> convertSubscriptionStatus(org.hl7.fhir.dstu2.model.Enumeration<org.hl7.fhir.dstu2.model.Subscription.SubscriptionStatus> src) throws FHIRException { 147 if (src == null || src.isEmpty()) 148 return null; 149 org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.Subscription.SubscriptionStatus> tgt = new org.hl7.fhir.dstu3.model.Enumeration<>(new org.hl7.fhir.dstu3.model.Subscription.SubscriptionStatusEnumFactory()); 150 ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().copyElement(src, tgt); 151 switch (src.getValue()) { 152 case REQUESTED: 153 tgt.setValue(org.hl7.fhir.dstu3.model.Subscription.SubscriptionStatus.REQUESTED); 154 break; 155 case ACTIVE: 156 tgt.setValue(org.hl7.fhir.dstu3.model.Subscription.SubscriptionStatus.ACTIVE); 157 break; 158 case ERROR: 159 tgt.setValue(org.hl7.fhir.dstu3.model.Subscription.SubscriptionStatus.ERROR); 160 break; 161 case OFF: 162 tgt.setValue(org.hl7.fhir.dstu3.model.Subscription.SubscriptionStatus.OFF); 163 break; 164 default: 165 tgt.setValue(org.hl7.fhir.dstu3.model.Subscription.SubscriptionStatus.NULL); 166 break; 167 } 168 return tgt; 169 } 170 171 static public org.hl7.fhir.dstu2.model.Enumeration<org.hl7.fhir.dstu2.model.Subscription.SubscriptionStatus> convertSubscriptionStatus(org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.Subscription.SubscriptionStatus> src) throws FHIRException { 172 if (src == null || src.isEmpty()) 173 return null; 174 org.hl7.fhir.dstu2.model.Enumeration<org.hl7.fhir.dstu2.model.Subscription.SubscriptionStatus> tgt = new org.hl7.fhir.dstu2.model.Enumeration<>(new org.hl7.fhir.dstu2.model.Subscription.SubscriptionStatusEnumFactory()); 175 ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().copyElement(src, tgt); 176 switch (src.getValue()) { 177 case REQUESTED: 178 tgt.setValue(org.hl7.fhir.dstu2.model.Subscription.SubscriptionStatus.REQUESTED); 179 break; 180 case ACTIVE: 181 tgt.setValue(org.hl7.fhir.dstu2.model.Subscription.SubscriptionStatus.ACTIVE); 182 break; 183 case ERROR: 184 tgt.setValue(org.hl7.fhir.dstu2.model.Subscription.SubscriptionStatus.ERROR); 185 break; 186 case OFF: 187 tgt.setValue(org.hl7.fhir.dstu2.model.Subscription.SubscriptionStatus.OFF); 188 break; 189 default: 190 tgt.setValue(org.hl7.fhir.dstu2.model.Subscription.SubscriptionStatus.NULL); 191 break; 192 } 193 return tgt; 194 } 195}