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