001package org.hl7.fhir.convertors.conv10_50.resources10_50; 002 003import org.hl7.fhir.convertors.context.ConversionContext10_50; 004import org.hl7.fhir.convertors.conv10_50.datatypes10_50.Reference10_50; 005import org.hl7.fhir.convertors.conv10_50.datatypes10_50.complextypes10_50.CodeableConcept10_50; 006import org.hl7.fhir.convertors.conv10_50.datatypes10_50.complextypes10_50.Identifier10_50; 007import org.hl7.fhir.convertors.conv10_50.datatypes10_50.primitivetypes10_50.Instant10_50; 008import org.hl7.fhir.exceptions.FHIRException; 009 010public class DeviceMetric10_50 { 011 012 public static org.hl7.fhir.dstu2.model.DeviceMetric convertDeviceMetric(org.hl7.fhir.r5.model.DeviceMetric src) throws FHIRException { 013 if (src == null || src.isEmpty()) 014 return null; 015 org.hl7.fhir.dstu2.model.DeviceMetric tgt = new org.hl7.fhir.dstu2.model.DeviceMetric(); 016 ConversionContext10_50.INSTANCE.getVersionConvertor_10_50().copyDomainResource(src, tgt); 017 if (src.hasType()) 018 tgt.setType(CodeableConcept10_50.convertCodeableConcept(src.getType())); 019 if (src.hasIdentifier()) 020 tgt.setIdentifier(Identifier10_50.convertIdentifier(src.getIdentifierFirstRep())); 021 if (src.hasUnit()) 022 tgt.setUnit(CodeableConcept10_50.convertCodeableConcept(src.getUnit())); 023 if (src.hasDevice()) 024 tgt.setSource(Reference10_50.convertReference(src.getDevice())); 025// if (src.hasDevice()) 026// tgt.setParent(Reference10_50.convertReference(src.getDevice())); 027 if (src.hasOperationalStatus()) 028 tgt.setOperationalStatusElement(convertDeviceMetricOperationalStatus(src.getOperationalStatusElement())); 029 if (src.hasColor()) 030 tgt.setColorElement(convertDeviceMetricColor(src.getColorElement())); 031 if (src.hasCategory()) 032 tgt.setCategoryElement(convertDeviceMetricCategory(src.getCategoryElement())); 033// if (src.hasMeasurementPeriod()) 034// tgt.setMeasurementPeriod(Timing10_50.convertTiming(src.getMeasurementPeriod())); 035 for (org.hl7.fhir.r5.model.DeviceMetric.DeviceMetricCalibrationComponent t : src.getCalibration()) 036 tgt.addCalibration(convertDeviceMetricCalibrationComponent(t)); 037 return tgt; 038 } 039 040 public static org.hl7.fhir.r5.model.DeviceMetric convertDeviceMetric(org.hl7.fhir.dstu2.model.DeviceMetric src) throws FHIRException { 041 if (src == null || src.isEmpty()) 042 return null; 043 org.hl7.fhir.r5.model.DeviceMetric tgt = new org.hl7.fhir.r5.model.DeviceMetric(); 044 ConversionContext10_50.INSTANCE.getVersionConvertor_10_50().copyDomainResource(src, tgt); 045 if (src.hasType()) 046 tgt.setType(CodeableConcept10_50.convertCodeableConcept(src.getType())); 047 if (src.hasIdentifier()) 048 tgt.addIdentifier(Identifier10_50.convertIdentifier(src.getIdentifier())); 049 if (src.hasUnit()) 050 tgt.setUnit(CodeableConcept10_50.convertCodeableConcept(src.getUnit())); 051 if (src.hasSource()) 052 tgt.setDevice(Reference10_50.convertReference(src.getSource())); 053 if (src.hasParent()) 054 tgt.setDevice(Reference10_50.convertReference(src.getParent())); 055 if (src.hasOperationalStatus()) 056 tgt.setOperationalStatusElement(convertDeviceMetricOperationalStatus(src.getOperationalStatusElement())); 057 if (src.hasColor()) 058 tgt.setColorElement(convertDeviceMetricColor(src.getColorElement())); 059 if (src.hasCategory()) 060 tgt.setCategoryElement(convertDeviceMetricCategory(src.getCategoryElement())); 061// if (src.hasMeasurementPeriod()) 062// tgt.setMeasurementPeriod(Timing10_50.convertTiming(src.getMeasurementPeriod())); 063 for (org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricCalibrationComponent t : src.getCalibration()) 064 tgt.addCalibration(convertDeviceMetricCalibrationComponent(t)); 065 return tgt; 066 } 067 068 public static org.hl7.fhir.r5.model.DeviceMetric.DeviceMetricCalibrationComponent convertDeviceMetricCalibrationComponent(org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricCalibrationComponent src) throws FHIRException { 069 if (src == null || src.isEmpty()) 070 return null; 071 org.hl7.fhir.r5.model.DeviceMetric.DeviceMetricCalibrationComponent tgt = new org.hl7.fhir.r5.model.DeviceMetric.DeviceMetricCalibrationComponent(); 072 ConversionContext10_50.INSTANCE.getVersionConvertor_10_50().copyBackboneElement(src,tgt); 073 if (src.hasType()) 074 tgt.setTypeElement(convertDeviceMetricCalibrationType(src.getTypeElement())); 075 if (src.hasState()) 076 tgt.setStateElement(convertDeviceMetricCalibrationState(src.getStateElement())); 077 if (src.hasTimeElement()) 078 tgt.setTimeElement(Instant10_50.convertInstant(src.getTimeElement())); 079 return tgt; 080 } 081 082 public static org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricCalibrationComponent convertDeviceMetricCalibrationComponent(org.hl7.fhir.r5.model.DeviceMetric.DeviceMetricCalibrationComponent src) throws FHIRException { 083 if (src == null || src.isEmpty()) 084 return null; 085 org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricCalibrationComponent tgt = new org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricCalibrationComponent(); 086 ConversionContext10_50.INSTANCE.getVersionConvertor_10_50().copyBackboneElement(src,tgt); 087 if (src.hasType()) 088 tgt.setTypeElement(convertDeviceMetricCalibrationType(src.getTypeElement())); 089 if (src.hasState()) 090 tgt.setStateElement(convertDeviceMetricCalibrationState(src.getStateElement())); 091 if (src.hasTimeElement()) 092 tgt.setTimeElement(Instant10_50.convertInstant(src.getTimeElement())); 093 return tgt; 094 } 095 096 static public org.hl7.fhir.dstu2.model.Enumeration<org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricCalibrationState> convertDeviceMetricCalibrationState(org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.DeviceMetric.DeviceMetricCalibrationState> src) throws FHIRException { 097 if (src == null || src.isEmpty()) 098 return null; 099 org.hl7.fhir.dstu2.model.Enumeration<org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricCalibrationState> tgt = new org.hl7.fhir.dstu2.model.Enumeration<>(new org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricCalibrationStateEnumFactory()); 100 ConversionContext10_50.INSTANCE.getVersionConvertor_10_50().copyElement(src, tgt); 101 switch (src.getValue()) { 102 case NOTCALIBRATED: 103 tgt.setValue(org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricCalibrationState.NOTCALIBRATED); 104 break; 105 case CALIBRATIONREQUIRED: 106 tgt.setValue(org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricCalibrationState.CALIBRATIONREQUIRED); 107 break; 108 case CALIBRATED: 109 tgt.setValue(org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricCalibrationState.CALIBRATED); 110 break; 111 case UNSPECIFIED: 112 tgt.setValue(org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricCalibrationState.UNSPECIFIED); 113 break; 114 default: 115 tgt.setValue(org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricCalibrationState.NULL); 116 break; 117 } 118 return tgt; 119 } 120 121 static public org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.DeviceMetric.DeviceMetricCalibrationState> convertDeviceMetricCalibrationState(org.hl7.fhir.dstu2.model.Enumeration<org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricCalibrationState> src) throws FHIRException { 122 if (src == null || src.isEmpty()) 123 return null; 124 org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.DeviceMetric.DeviceMetricCalibrationState> tgt = new org.hl7.fhir.r5.model.Enumeration<>(new org.hl7.fhir.r5.model.DeviceMetric.DeviceMetricCalibrationStateEnumFactory()); 125 ConversionContext10_50.INSTANCE.getVersionConvertor_10_50().copyElement(src, tgt); 126 switch (src.getValue()) { 127 case NOTCALIBRATED: 128 tgt.setValue(org.hl7.fhir.r5.model.DeviceMetric.DeviceMetricCalibrationState.NOTCALIBRATED); 129 break; 130 case CALIBRATIONREQUIRED: 131 tgt.setValue(org.hl7.fhir.r5.model.DeviceMetric.DeviceMetricCalibrationState.CALIBRATIONREQUIRED); 132 break; 133 case CALIBRATED: 134 tgt.setValue(org.hl7.fhir.r5.model.DeviceMetric.DeviceMetricCalibrationState.CALIBRATED); 135 break; 136 case UNSPECIFIED: 137 tgt.setValue(org.hl7.fhir.r5.model.DeviceMetric.DeviceMetricCalibrationState.UNSPECIFIED); 138 break; 139 default: 140 tgt.setValue(org.hl7.fhir.r5.model.DeviceMetric.DeviceMetricCalibrationState.NULL); 141 break; 142 } 143 return tgt; 144 } 145 146 static public org.hl7.fhir.dstu2.model.Enumeration<org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricCalibrationType> convertDeviceMetricCalibrationType(org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.DeviceMetric.DeviceMetricCalibrationType> src) throws FHIRException { 147 if (src == null || src.isEmpty()) 148 return null; 149 org.hl7.fhir.dstu2.model.Enumeration<org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricCalibrationType> tgt = new org.hl7.fhir.dstu2.model.Enumeration<>(new org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricCalibrationTypeEnumFactory()); 150 ConversionContext10_50.INSTANCE.getVersionConvertor_10_50().copyElement(src, tgt); 151 switch (src.getValue()) { 152 case UNSPECIFIED: 153 tgt.setValue(org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricCalibrationType.UNSPECIFIED); 154 break; 155 case OFFSET: 156 tgt.setValue(org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricCalibrationType.OFFSET); 157 break; 158 case GAIN: 159 tgt.setValue(org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricCalibrationType.GAIN); 160 break; 161 case TWOPOINT: 162 tgt.setValue(org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricCalibrationType.TWOPOINT); 163 break; 164 default: 165 tgt.setValue(org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricCalibrationType.NULL); 166 break; 167 } 168 return tgt; 169 } 170 171 static public org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.DeviceMetric.DeviceMetricCalibrationType> convertDeviceMetricCalibrationType(org.hl7.fhir.dstu2.model.Enumeration<org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricCalibrationType> src) throws FHIRException { 172 if (src == null || src.isEmpty()) 173 return null; 174 org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.DeviceMetric.DeviceMetricCalibrationType> tgt = new org.hl7.fhir.r5.model.Enumeration<>(new org.hl7.fhir.r5.model.DeviceMetric.DeviceMetricCalibrationTypeEnumFactory()); 175 ConversionContext10_50.INSTANCE.getVersionConvertor_10_50().copyElement(src, tgt); 176 switch (src.getValue()) { 177 case UNSPECIFIED: 178 tgt.setValue(org.hl7.fhir.r5.model.DeviceMetric.DeviceMetricCalibrationType.UNSPECIFIED); 179 break; 180 case OFFSET: 181 tgt.setValue(org.hl7.fhir.r5.model.DeviceMetric.DeviceMetricCalibrationType.OFFSET); 182 break; 183 case GAIN: 184 tgt.setValue(org.hl7.fhir.r5.model.DeviceMetric.DeviceMetricCalibrationType.GAIN); 185 break; 186 case TWOPOINT: 187 tgt.setValue(org.hl7.fhir.r5.model.DeviceMetric.DeviceMetricCalibrationType.TWOPOINT); 188 break; 189 default: 190 tgt.setValue(org.hl7.fhir.r5.model.DeviceMetric.DeviceMetricCalibrationType.NULL); 191 break; 192 } 193 return tgt; 194 } 195 196 static public org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.DeviceMetric.DeviceMetricCategory> convertDeviceMetricCategory(org.hl7.fhir.dstu2.model.Enumeration<org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricCategory> src) throws FHIRException { 197 if (src == null || src.isEmpty()) 198 return null; 199 org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.DeviceMetric.DeviceMetricCategory> tgt = new org.hl7.fhir.r5.model.Enumeration<>(new org.hl7.fhir.r5.model.DeviceMetric.DeviceMetricCategoryEnumFactory()); 200 ConversionContext10_50.INSTANCE.getVersionConvertor_10_50().copyElement(src, tgt); 201 switch (src.getValue()) { 202 case MEASUREMENT: 203 tgt.setValue(org.hl7.fhir.r5.model.DeviceMetric.DeviceMetricCategory.MEASUREMENT); 204 break; 205 case SETTING: 206 tgt.setValue(org.hl7.fhir.r5.model.DeviceMetric.DeviceMetricCategory.SETTING); 207 break; 208 case CALCULATION: 209 tgt.setValue(org.hl7.fhir.r5.model.DeviceMetric.DeviceMetricCategory.CALCULATION); 210 break; 211 case UNSPECIFIED: 212 tgt.setValue(org.hl7.fhir.r5.model.DeviceMetric.DeviceMetricCategory.UNSPECIFIED); 213 break; 214 default: 215 tgt.setValue(org.hl7.fhir.r5.model.DeviceMetric.DeviceMetricCategory.NULL); 216 break; 217 } 218 return tgt; 219 } 220 221 static public org.hl7.fhir.dstu2.model.Enumeration<org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricCategory> convertDeviceMetricCategory(org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.DeviceMetric.DeviceMetricCategory> src) throws FHIRException { 222 if (src == null || src.isEmpty()) 223 return null; 224 org.hl7.fhir.dstu2.model.Enumeration<org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricCategory> tgt = new org.hl7.fhir.dstu2.model.Enumeration<>(new org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricCategoryEnumFactory()); 225 ConversionContext10_50.INSTANCE.getVersionConvertor_10_50().copyElement(src, tgt); 226 switch (src.getValue()) { 227 case MEASUREMENT: 228 tgt.setValue(org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricCategory.MEASUREMENT); 229 break; 230 case SETTING: 231 tgt.setValue(org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricCategory.SETTING); 232 break; 233 case CALCULATION: 234 tgt.setValue(org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricCategory.CALCULATION); 235 break; 236 case UNSPECIFIED: 237 tgt.setValue(org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricCategory.UNSPECIFIED); 238 break; 239 default: 240 tgt.setValue(org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricCategory.NULL); 241 break; 242 } 243 return tgt; 244 } 245 246 static public org.hl7.fhir.r5.model.CodeType convertDeviceMetricColor(org.hl7.fhir.dstu2.model.Enumeration<org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricColor> src) throws FHIRException { 247 if (src == null || src.isEmpty()) 248 return null; 249 org.hl7.fhir.r5.model.CodeType tgt = new org.hl7.fhir.r5.model.CodeType(); 250 ConversionContext10_50.INSTANCE.getVersionConvertor_10_50().copyElement(src, tgt); 251 tgt.setValue(src.asStringValue()); 252 return tgt; 253 } 254 255 static public org.hl7.fhir.dstu2.model.Enumeration<org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricColor> convertDeviceMetricColor(org.hl7.fhir.r5.model.CodeType src) throws FHIRException { 256 if (src == null || src.isEmpty()) 257 return null; 258 org.hl7.fhir.dstu2.model.Enumeration<org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricColor> tgt = new org.hl7.fhir.dstu2.model.Enumeration<>(new org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricColorEnumFactory()); 259 ConversionContext10_50.INSTANCE.getVersionConvertor_10_50().copyElement(src, tgt); 260 switch (src.getValue()) { 261 case "black": 262 tgt.setValue(org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricColor.BLACK); 263 break; 264 case "red": 265 tgt.setValue(org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricColor.RED); 266 break; 267 case "green": 268 tgt.setValue(org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricColor.GREEN); 269 break; 270 case "yellow": 271 tgt.setValue(org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricColor.YELLOW); 272 break; 273 case "blue": 274 tgt.setValue(org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricColor.BLUE); 275 break; 276 case "magenta": 277 tgt.setValue(org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricColor.MAGENTA); 278 break; 279 case "cyan": 280 tgt.setValue(org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricColor.CYAN); 281 break; 282 case "white": 283 tgt.setValue(org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricColor.WHITE); 284 break; 285 default: 286 tgt.setValue(org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricColor.NULL); 287 break; 288 } 289 return tgt; 290 } 291 292 static public org.hl7.fhir.dstu2.model.Enumeration<org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricOperationalStatus> convertDeviceMetricOperationalStatus(org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.DeviceMetric.DeviceMetricOperationalStatus> src) throws FHIRException { 293 if (src == null || src.isEmpty()) 294 return null; 295 org.hl7.fhir.dstu2.model.Enumeration<org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricOperationalStatus> tgt = new org.hl7.fhir.dstu2.model.Enumeration<>(new org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricOperationalStatusEnumFactory()); 296 ConversionContext10_50.INSTANCE.getVersionConvertor_10_50().copyElement(src, tgt); 297 switch (src.getValue()) { 298 case ON: 299 tgt.setValue(org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricOperationalStatus.ON); 300 break; 301 case OFF: 302 tgt.setValue(org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricOperationalStatus.OFF); 303 break; 304 case STANDBY: 305 tgt.setValue(org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricOperationalStatus.STANDBY); 306 break; 307 default: 308 tgt.setValue(org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricOperationalStatus.NULL); 309 break; 310 } 311 return tgt; 312 } 313 314 static public org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.DeviceMetric.DeviceMetricOperationalStatus> convertDeviceMetricOperationalStatus(org.hl7.fhir.dstu2.model.Enumeration<org.hl7.fhir.dstu2.model.DeviceMetric.DeviceMetricOperationalStatus> src) throws FHIRException { 315 if (src == null || src.isEmpty()) 316 return null; 317 org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.DeviceMetric.DeviceMetricOperationalStatus> tgt = new org.hl7.fhir.r5.model.Enumeration<>(new org.hl7.fhir.r5.model.DeviceMetric.DeviceMetricOperationalStatusEnumFactory()); 318 ConversionContext10_50.INSTANCE.getVersionConvertor_10_50().copyElement(src, tgt); 319 switch (src.getValue()) { 320 case ON: 321 tgt.setValue(org.hl7.fhir.r5.model.DeviceMetric.DeviceMetricOperationalStatus.ON); 322 break; 323 case OFF: 324 tgt.setValue(org.hl7.fhir.r5.model.DeviceMetric.DeviceMetricOperationalStatus.OFF); 325 break; 326 case STANDBY: 327 tgt.setValue(org.hl7.fhir.r5.model.DeviceMetric.DeviceMetricOperationalStatus.STANDBY); 328 break; 329 default: 330 tgt.setValue(org.hl7.fhir.r5.model.DeviceMetric.DeviceMetricOperationalStatus.NULL); 331 break; 332 } 333 return tgt; 334 } 335}